From a105ad67c34740073e01a13f38720369c3564f15 Mon Sep 17 00:00:00 2001 From: Peter Willendrup Date: Thu, 16 Apr 2026 18:46:41 +0200 Subject: [PATCH 01/43] Draft adapted mcdoc that produces .md and .tex outputs --- tools/Python/mcdoc/mcdoc.py | 775 ++++++++++++++++++++++++++++++++---- 1 file changed, 702 insertions(+), 73 deletions(-) diff --git a/tools/Python/mcdoc/mcdoc.py b/tools/Python/mcdoc/mcdoc.py index dd381e409..fabc83267 100644 --- a/tools/Python/mcdoc/mcdoc.py +++ b/tools/Python/mcdoc/mcdoc.py @@ -1,13 +1,18 @@ #!/usr/bin/env python3 # -*- coding: utf-8 -*- ''' -Generates html docpages from mccode instrument and component files. +Generates html (and optionally Markdown and LaTeX) docpages from mccode +instrument and component files. -A docpage is generated for every instrument and component file, and an +A docpage is generated for every instrument and component file, and an overview page is written and browsed. Default option Read installed docpage. -Specify a directory to add local results, and a search term for filtered or +Specify a directory to add local results, and a search term for filtered or specific file results. + +HTML output is always written. Use --md / -M to additionally emit Markdown +and --tex / -T to additionally emit LaTeX. Use --all-formats / -A to emit +all three formats at once. ''' import logging import argparse @@ -21,12 +26,88 @@ sys.path.append(os.path.join(os.path.dirname(__file__), '..')) from mccodelib import utils, mccode_config -def get_html_filepath(filepath): - ''' transform from .anything to .html ''' - h = pathlib.Path(os.path.splitext(filepath)[0] + '.html') - h = pathlib.Path(str(h).replace(mccode_config.directories['resourcedir'], mccode_config.directories['docdir'])) +# ------------------------------------------------------------------ +# Output format helpers +# ------------------------------------------------------------------ + +# file extension -> "friendly" name used in log messages +FORMAT_EXTENSIONS = { + 'html': 'html', + 'md': 'md', + 'tex': 'tex', +} + + +def get_doc_filepath(filepath, ext='html'): + ''' transform from .anything to ., swapping resourcedir -> docdir ''' + h = pathlib.Path(os.path.splitext(filepath)[0] + '.' + ext) + h = pathlib.Path(str(h).replace(mccode_config.directories['resourcedir'], + mccode_config.directories['docdir'])) return h + +def get_html_filepath(filepath): + ''' transform from .anything to .html (kept for backwards compatibility) ''' + return get_doc_filepath(filepath, 'html') + + +# ------------------------------------------------------------------ +# Markdown / LaTeX escaping helpers +# ------------------------------------------------------------------ + +def _md_cell(s): + ''' Escape a value so it is safe inside a Markdown table cell. ''' + if s is None: + return '' + s = str(s) + # collapse newlines -> single space; escape pipes + s = s.replace('\r', ' ').replace('\n', ' ').replace('|', r'\|') + return s.strip() + + +def _md_text(s): + ''' Light sanitation for body text (no table-cell escaping). ''' + if s is None: + return '' + return str(s) + + +def _tex(s): + ''' Escape a value for LaTeX text mode. ''' + if s is None: + return '' + s = str(s) + # Replace backslash first via a sentinel so later replacements don't + # re-escape our own escape characters. + s = s.replace('\\', '\x00') + replacements = [ + ('&', r'\&'), + ('%', r'\%'), + ('$', r'\$'), + ('#', r'\#'), + ('_', r'\_'), + ('{', r'\{'), + ('}', r'\}'), + ('~', r'\textasciitilde{}'), + ('^', r'\textasciicircum{}'), + ('<', r'\textless{}'), + ('>', r'\textgreater{}'), + ] + for a, b in replacements: + s = s.replace(a, b) + s = s.replace('\x00', r'\textbackslash{}') + return s + + +def _mccode_label(): + ''' Returns ('McStas' or 'McXtrace') depending on the active flavour. ''' + return 'McXtrace' if mccode_config.get_mccode_prefix() == 'mx' else 'McStas' + + +# ================================================================== +# HTML overview writer (unchanged) +# ================================================================== + class OverviewDocWriter: ''' Creates the mcdoc overview html page. ''' def __init__(self, comp_info_lst, instr_info_lst, comp_info_local_lst, instr_info_local_lst, mccode_libdir, mccode_docdir): @@ -37,14 +118,14 @@ def __init__(self, comp_info_lst, instr_info_lst, comp_info_local_lst, instr_inf self.mccode_libdir = mccode_libdir self.mccode_docdir = mccode_docdir self.text = '' - + def create(self): ''' action code for create overview page! ''' i_lst = self.instr_info_lst c_loc_lst = self.comp_info_local_lst i_loc_lst = self.instr_info_local_lst t = self.tab_line - + # create comp tables #'%TAB_LINES_SOURCES%', '%TAB_LINES_OPTICS%', '%TAB_LINES_SAMPLES%', '%TAB_LINES_MONITORS%', '%TAB_LINES_MISC%', '%TAB_LINES_OBSOLETE%', # Sources @@ -97,7 +178,7 @@ def create(self): obsolete_tab = '' for c in obsolete_lst: obsolete_tab = obsolete_tab + t % (get_html_filepath(c.filepath), c.name, c.origin, c.author, c.filepath, 'comp', c.short_descr) + '\n' - + # create instr examples table ex_tab = '' for i in i_lst: @@ -107,7 +188,7 @@ def create(self): local_comp_tab = '' for c in c_loc_lst: local_comp_tab = local_comp_tab + t % (get_html_filepath(c.filepath), c.name, c.origin, c.author, c.filepath, 'comp', c.short_descr) + '\n' - + local_instr_tab = '' for i in i_loc_lst: local_instr_tab = local_instr_tab + t % (get_html_filepath(i.filepath), i.name, i.origin, i.author, i.filepath, 'instr', i.short_descr) + '\n' @@ -163,7 +244,7 @@ def create(self): self.text = text return self.text - + tab_header = ''' Name @@ -379,34 +460,215 @@ def create(self): ''' + +# ================================================================== +# Markdown / LaTeX overview writers +# ================================================================== + +_OVERVIEW_SECTIONS = [ + ('sources', 'Sources', 'sources'), + ('optics', 'Optics', 'optics'), + ('samples', 'Samples', 'samples'), + ('monitors', 'Detectors and monitors', 'monitors'), + ('union', 'Union components', 'union'), + ('sasmodels', 'SASmodels components', 'sasmodels'), + ('astrox', 'AstroX components', 'astrox'), + ('misc', 'Misc', 'misc'), + ('contrib', 'Contributed components', 'contrib'), + ('obsolete', 'Obsolete (avoid usage whenever possible)', 'obsolete'), +] + + +class OverviewMdDocWriter: + ''' Markdown version of OverviewDocWriter. ''' + def __init__(self, comp_info_lst, instr_info_lst, comp_info_local_lst, instr_info_local_lst, mccode_libdir, mccode_docdir): + self.comp_info_lst = comp_info_lst + self.instr_info_lst = instr_info_lst + self.comp_info_local_lst = comp_info_local_lst + self.instr_info_local_lst = instr_info_local_lst + self.mccode_libdir = mccode_libdir + self.mccode_docdir = mccode_docdir + self.text = '' + + @staticmethod + def _table_header(): + return ('| Name | Origin | Author(s) | Source code | Description |\n' + '|------|--------|-----------|-------------|-------------|') + + @staticmethod + def _row(o): + docfile = str(get_doc_filepath(o.filepath, 'md')) + return '| [%s](%s) | %s | %s | [%s](%s) | %s |' % ( + _md_cell(o.name), docfile, + _md_cell(o.origin), + _md_cell(o.author), + _md_cell(os.path.basename(o.filepath)), o.filepath, + _md_cell(o.short_descr)) + + def _section(self, title, items): + out = ['## %s' % title, '', self._table_header()] + for o in items: + out.append(self._row(o)) + out.append('') + return '\n'.join(out) + + def create(self): + flavour = _mccode_label() + is_mx = mccode_config.get_mccode_prefix() == 'mx' + + lines = [] + lines.append('# Components and Instruments from the Library for *%s*' % flavour) + lines.append('') + lines.append('Generated for %s %s.' % (mccode_config.configuration["MCCODE"], + mccode_config.configuration["MCCODE_VERSION"])) + lines.append('') + + # Per-category sections + for (cat, title, _anchor) in _OVERVIEW_SECTIONS: + if cat == 'astrox' and not is_mx: + continue + items = [c for c in self.comp_info_lst if c.category == cat] + lines.append(self._section(title, items)) + + # Instrument examples + lines.append(self._section('Instrument Examples', self.instr_info_lst)) + + # Local results + if self.comp_info_local_lst: + lines.append(self._section('Local components', self.comp_info_local_lst)) + if self.instr_info_local_lst: + lines.append(self._section('Local instruments', self.instr_info_local_lst)) + + lines.append('---') + lines.append('') + lines.append('- Library dir: `%s`' % self.mccode_libdir) + lines.append('- Doc dir: `%s`' % self.mccode_docdir) + lines.append('- [%s web site](http://www.%s.org/)' % (flavour, flavour.lower())) + lines.append('') + + self.text = '\n'.join(lines) + return self.text + + +class OverviewLatexDocWriter: + ''' LaTeX version of OverviewDocWriter. ''' + def __init__(self, comp_info_lst, instr_info_lst, comp_info_local_lst, instr_info_local_lst, mccode_libdir, mccode_docdir): + self.comp_info_lst = comp_info_lst + self.instr_info_lst = instr_info_lst + self.comp_info_local_lst = comp_info_local_lst + self.instr_info_local_lst = instr_info_local_lst + self.mccode_libdir = mccode_libdir + self.mccode_docdir = mccode_docdir + self.text = '' + + @staticmethod + def _row(o): + docfile = str(get_doc_filepath(o.filepath, 'tex')) + return '\\href{%s}{\\texttt{%s}} & %s & %s & \\href{run:%s}{\\texttt{%s}} & %s \\\\' % ( + docfile, + _tex(o.name), + _tex(o.origin), + _tex(o.author), + o.filepath, + _tex(os.path.basename(o.filepath)), + _tex(o.short_descr)) + + def _section(self, title, items): + out = [] + out.append(r'\section*{%s}' % _tex(title)) + out.append(r'\begin{longtable}{p{0.24\textwidth}p{0.10\textwidth}p{0.14\textwidth}p{0.20\textwidth}p{0.28\textwidth}}') + out.append(r'\toprule') + out.append(r'\textbf{Name} & \textbf{Origin} & \textbf{Author(s)} & \textbf{Source code} & \textbf{Description} \\') + out.append(r'\midrule') + out.append(r'\endhead') + for o in items: + out.append(self._row(o)) + out.append(r'\bottomrule') + out.append(r'\end{longtable}') + out.append('') + return '\n'.join(out) + + def create(self): + flavour = _mccode_label() + is_mx = mccode_config.get_mccode_prefix() == 'mx' + + out = [] + out.append(r'\documentclass[11pt,a4paper]{article}') + out.append(r'\usepackage[utf8]{inputenc}') + out.append(r'\usepackage[T1]{fontenc}') + out.append(r'\usepackage{hyperref}') + out.append(r'\usepackage{longtable}') + out.append(r'\usepackage{booktabs}') + out.append(r'\usepackage{array}') + out.append(r'\title{Components and Instruments from the Library for \emph{%s}}' % _tex(flavour)) + out.append(r'\author{%s %s}' % (_tex(mccode_config.configuration["MCCODE"]), + _tex(mccode_config.configuration["MCCODE_VERSION"]))) + out.append(r'\date{}') + out.append(r'\begin{document}') + out.append(r'\maketitle') + out.append(r'\tableofcontents') + out.append('') + + for (cat, title, _anchor) in _OVERVIEW_SECTIONS: + if cat == 'astrox' and not is_mx: + continue + items = [c for c in self.comp_info_lst if c.category == cat] + out.append(self._section(title, items)) + + out.append(self._section('Instrument Examples', self.instr_info_lst)) + + if self.comp_info_local_lst: + out.append(self._section('Local components', self.comp_info_local_lst)) + if self.instr_info_local_lst: + out.append(self._section('Local instruments', self.instr_info_local_lst)) + + out.append(r'\vspace{1em}') + out.append(r'\noindent\rule{\textwidth}{0.4pt}') + out.append(r'\begin{flushright}\small Generated for %s %s.\end{flushright}' % ( + _tex(mccode_config.configuration["MCCODE"]), + _tex(mccode_config.configuration["MCCODE_VERSION"]))) + out.append(r'\end{document}') + + self.text = '\n'.join(out) + return self.text + + +# ================================================================== +# Parsers +# ================================================================== + class InstrParser: ''' parses an instr or comp file, extracting all relevant information into python ''' def __init__(self, filename): self.filename = filename self.info = None self.has_parsed = False - + def stub(self): ''' fallback parsing ''' self.info = utils.InstrCompHeaderInfo() self.has_parsed = True return self.info - + def parse(self): ''' parses the given file ''' f = open(self.filename) logging.debug('parsing file "%s"' % self.filename) - + header = utils.read_header(f) info = utils.parse_header(header) info.site = utils.get_instr_site_fromtxt(header) dfine = utils.read_define_instr(f) info.name, info.params = utils.parse_define_instr(dfine) - + self.info = info return self.info +# ================================================================== +# HTML per-file writers (unchanged) +# ================================================================== + class InstrDocWriter: ''' create html doc text by means of a instr parser ''' def __init__(self, info): @@ -443,7 +705,7 @@ def create(self): unit = [pd[1] for pd in i.params_docs if p[1] == pd[0]] unit = unit[0] if len(unit) > 0 else '' defval = p[2] if p[2] != None else '' - doc = [pd[2] for pd in i.params_docs if p[1] == pd[0]] # TODO: rewrite to speed up + doc = [pd[2] for pd in i.params_docs if p[1] == pd[0]] # TODO: rewrite to speed up doc = doc[0] if len(doc) > 0 else '' if defval == '': doc_rows = doc_rows + '\n' + self.par_str_boldface % (p[1], unit, doc, defval) @@ -453,13 +715,13 @@ def create(self): h = h.replace(t[10], i.filepath) h = h.replace(t[11], os.path.basename(i.filepath)) - + # TODO: implement links writing lstr = '' for l in i.links: lstr = lstr + self.lnk_str % l + '\n' h = h.replace(t[12], lstr) - + h = h.replace(t[13], '%s %s' % (mccode_config.configuration["MCCODE"], mccode_config.configuration["MCCODE_VERSION"])) @@ -562,25 +824,25 @@ def parse(self): ''' override ''' f = open(self.filename) logging.debug('parsing file "%s"' % self.filename) - + header = utils.read_header(f) info = utils.parse_header(header) info.site = utils.get_instr_site_fromtxt(header) - + dfine = utils.read_define_comp(f) name, setpar, defpar, outpar = utils.parse_define_comp(dfine) - + info.name = name info.category = utils.get_comp_category(self.filename) - + # basically just for debug use info.params = setpar + defpar + outpar - + # these are used by CompDocWriter info.setparams = setpar info.defparams = defpar info.outparams = outpar - + self.info = info return self.info @@ -589,7 +851,7 @@ class CompDocWriter: def __init__(self, info): self.info = info self.text = '' - + def create(self): i = self.info t = self.tags @@ -670,8 +932,8 @@ def create(self): par_str_boldface = " %s%s%s%s%s" par_header = par_str % ('Name', 'Unit', 'Description', 'Default', '') lnk_str = "
  • %s" - - + + html = r''' @@ -714,7 +976,7 @@ def create(self): ATpos = ATpos + xpos + ", "; ATpos = ATpos + ypos + ", "; ATpos = ATpos + zpos; - ATpos = ATpos + "\) RELATIVE " ; + ATpos = ATpos + "\) RELATIVE " ; ATpos = ATpos + " " + REF ; return ATpos; } @@ -727,12 +989,12 @@ def create(self): var ATrot = ""; - if (xrot && yrot && zrot) { + if (xrot && yrot && zrot) { ATrot = "\n ROTATED \("; ATrot = ATrot + xrot + ", "; ATrot = ATrot + yrot + ", "; ATrot = ATrot + zrot; - ATrot = ATrot + "\) RELATIVE " ; + ATrot = ATrot + "\) RELATIVE " ; ATrot = ATrot + " " + REF2 ; } return ATrot; @@ -862,10 +1124,305 @@ def create(self): ''' +# ================================================================== +# Markdown per-file writers +# ================================================================== + +def _iter_param_rows(params, params_docs): + ''' yields tuples (name, unit, doc, defval, required_bool) ''' + for p in params: + unit_list = [pd[1] for pd in params_docs if p[1] == pd[0]] + unit = unit_list[0] if unit_list else '' + defval = p[2] if p[2] is not None else '' + doc_list = [pd[2] for pd in params_docs if p[1] == pd[0]] + doc = doc_list[0] if doc_list else '' + required = (defval == '') + yield (p[1], unit, doc, defval, required) + + +class InstrMdDocWriter: + ''' Markdown doc writer for instrument files. ''' + def __init__(self, info): + self.info = info + self.text = '' + + def create(self): + i = self.info + flavour = _mccode_label() + + short_descr = i.short_descr + if re.match(r'^\s*\n*\r*$', short_descr): + short_descr = i.name + ' instrument' + + lines = [] + lines.append('# The `%s` Instrument' % i.name) + lines.append('') + lines.append('*%s: %s*' % (flavour, _md_text(short_descr))) + lines.append('') + lines.append('## Identification') + lines.append('') + lines.append('- **Site:** %s' % _md_text(i.site)) + lines.append('- **Author:** %s' % _md_text(i.author)) + lines.append('- **Origin:** %s' % _md_text(i.origin)) + lines.append('- **Date:** %s' % _md_text(i.date)) + lines.append('') + lines.append('## Description') + lines.append('') + lines.append('```text') + lines.append(_md_text(i.description)) + lines.append('```') + lines.append('') + lines.append('## Input parameters') + lines.append('') + lines.append('Parameters in **boldface** are required; the others are optional.') + lines.append('') + lines.append('| Name | Unit | Description | Default |') + lines.append('|------|------|-------------|---------|') + for (name, unit, doc, defval, required) in _iter_param_rows(i.params, i.params_docs): + name_cell = _md_cell(name) + if required: + name_cell = '**%s**' % name_cell + lines.append('| %s | %s | %s | %s |' % (name_cell, _md_cell(unit), _md_cell(doc), _md_cell(defval))) + lines.append('') + lines.append('## Links') + lines.append('') + lines.append('- [Source code](%s) for `%s`.' % (i.filepath, os.path.basename(i.filepath))) + for l in i.links: + lines.append('- %s' % _md_text(l)) + lines.append('') + lines.append('---') + lines.append('') + lines.append('*Generated for %s %s.*' % (mccode_config.configuration["MCCODE"], + mccode_config.configuration["MCCODE_VERSION"])) + + self.text = '\n'.join(lines) + return self.text + + +class CompMdDocWriter: + ''' Markdown doc writer for component files. ''' + def __init__(self, info): + self.info = info + self.text = '' + + def create(self): + i = self.info + flavour = _mccode_label() + + short_descr = i.short_descr + if re.match(r'^\s*\n*\r*$', short_descr): + short_descr = i.name + ' component' + + lines = [] + lines.append('# The `%s` Component' % i.name) + lines.append('') + lines.append('*%s: %s*' % (flavour, _md_text(short_descr))) + lines.append('') + lines.append('## Identification') + lines.append('') + lines.append('- **Site:** %s' % _md_text(i.site)) + lines.append('- **Author:** %s' % _md_text(i.author)) + lines.append('- **Origin:** %s' % _md_text(i.origin)) + lines.append('- **Date:** %s' % _md_text(i.date)) + lines.append('') + lines.append('## Description') + lines.append('') + lines.append('```text') + lines.append(_md_text(i.description)) + lines.append('```') + lines.append('') + lines.append('## Input parameters') + lines.append('') + lines.append('Parameters in **boldface** are required; the others are optional.') + lines.append('') + lines.append('| Name | Unit | Description | Default |') + lines.append('|------|------|-------------|---------|') + for (name, unit, doc, defval, required) in _iter_param_rows(i.setparams + i.defparams, i.params_docs): + name_cell = _md_cell(name) + if required: + name_cell = '**%s**' % name_cell + lines.append('| %s | %s | %s | %s |' % (name_cell, _md_cell(unit), _md_cell(doc), _md_cell(defval))) + lines.append('') + lines.append('## Links') + lines.append('') + lines.append('- [Source code](%s) for `%s`.' % (i.filepath, os.path.basename(i.filepath))) + for l in i.links: + lines.append('- %s' % _md_text(l)) + lines.append('') + lines.append('---') + lines.append('') + lines.append('*Generated on %s %s.*' % (mccode_config.configuration["MCCODE"], + mccode_config.configuration["MCCODE_VERSION"])) + + self.text = '\n'.join(lines) + return self.text + + +# ================================================================== +# LaTeX per-file writers +# ================================================================== + +_LATEX_PREAMBLE = ( + r'\documentclass[11pt,a4paper]{article}' '\n' + r'\usepackage[utf8]{inputenc}' '\n' + r'\usepackage[T1]{fontenc}' '\n' + r'\usepackage{hyperref}' '\n' + r'\usepackage{longtable}' '\n' + r'\usepackage{booktabs}' '\n' + r'\usepackage{array}' '\n' + r'\usepackage{fancyvrb}' '\n' + r'\usepackage{parskip}' '\n' +) + + +class InstrLatexDocWriter: + ''' LaTeX doc writer for instrument files. ''' + def __init__(self, info): + self.info = info + self.text = '' + + def create(self): + i = self.info + flavour = _mccode_label() + + short_descr = i.short_descr + if re.match(r'^\s*\n*\r*$', short_descr): + short_descr = i.name + ' instrument' + + out = [_LATEX_PREAMBLE] + out.append(r'\title{The \texttt{%s} %s Instrument}' % (_tex(i.name), _tex(flavour))) + out.append(r'\author{%s}' % _tex(i.author)) + out.append(r'\date{%s}' % _tex(i.date)) + out.append(r'\begin{document}') + out.append(r'\maketitle') + out.append('') + out.append(_tex(short_descr)) + out.append('') + out.append(r'\section*{Identification}') + out.append(r'\begin{itemize}') + out.append(r' \item \textbf{Site:} %s' % _tex(i.site)) + out.append(r' \item \textbf{Author:} %s' % _tex(i.author)) + out.append(r' \item \textbf{Origin:} %s' % _tex(i.origin)) + out.append(r' \item \textbf{Date:} %s' % _tex(i.date)) + out.append(r'\end{itemize}') + out.append('') + out.append(r'\section*{Description}') + out.append(r'\begin{Verbatim}[breaklines=true,breakanywhere=true]') + out.append(i.description if i.description is not None else '') + out.append(r'\end{Verbatim}') + out.append('') + out.append(r'\section*{Input parameters}') + out.append(r'Parameters in \textbf{boldface} are required; the others are optional.') + out.append('') + out.append(r'\begin{longtable}{p{0.22\textwidth}p{0.12\textwidth}p{0.46\textwidth}p{0.14\textwidth}}') + out.append(r'\toprule') + out.append(r'\textbf{Name} & \textbf{Unit} & \textbf{Description} & \textbf{Default} \\') + out.append(r'\midrule') + out.append(r'\endhead') + for (name, unit, doc, defval, required) in _iter_param_rows(i.params, i.params_docs): + name_tex = _tex(name) + if required: + name_tex = r'\textbf{%s}' % name_tex + out.append('%s & %s & %s & %s \\\\' % (name_tex, _tex(unit), _tex(doc), _tex(defval))) + out.append(r'\bottomrule') + out.append(r'\end{longtable}') + out.append('') + out.append(r'\section*{Links}') + out.append(r'\begin{itemize}') + out.append(r' \item \href{run:%s}{Source code} for \texttt{%s}.' % (i.filepath, _tex(os.path.basename(i.filepath)))) + for l in i.links: + out.append(r' \item %s' % _tex(l)) + out.append(r'\end{itemize}') + out.append('') + out.append(r'\vspace{1em}') + out.append(r'\noindent\rule{\textwidth}{0.4pt}') + out.append(r'\begin{flushright}\small Generated for %s %s.\end{flushright}' % ( + _tex(mccode_config.configuration["MCCODE"]), + _tex(mccode_config.configuration["MCCODE_VERSION"]))) + out.append(r'\end{document}') + + self.text = '\n'.join(out) + return self.text + + +class CompLatexDocWriter: + ''' LaTeX doc writer for component files. ''' + def __init__(self, info): + self.info = info + self.text = '' + + def create(self): + i = self.info + flavour = _mccode_label() + + short_descr = i.short_descr + if re.match(r'^\s*\n*\r*$', short_descr): + short_descr = i.name + ' component' + + out = [_LATEX_PREAMBLE] + out.append(r'\title{The \texttt{%s} %s Component}' % (_tex(i.name), _tex(flavour))) + out.append(r'\author{%s}' % _tex(i.author)) + out.append(r'\date{%s}' % _tex(i.date)) + out.append(r'\begin{document}') + out.append(r'\maketitle') + out.append('') + out.append(_tex(short_descr)) + out.append('') + out.append(r'\section*{Identification}') + out.append(r'\begin{itemize}') + out.append(r' \item \textbf{Site:} %s' % _tex(i.site)) + out.append(r' \item \textbf{Author:} %s' % _tex(i.author)) + out.append(r' \item \textbf{Origin:} %s' % _tex(i.origin)) + out.append(r' \item \textbf{Date:} %s' % _tex(i.date)) + out.append(r'\end{itemize}') + out.append('') + out.append(r'\section*{Description}') + out.append(r'\begin{Verbatim}[breaklines=true,breakanywhere=true]') + out.append(i.description if i.description is not None else '') + out.append(r'\end{Verbatim}') + out.append('') + out.append(r'\section*{Input parameters}') + out.append(r'Parameters in \textbf{boldface} are required; the others are optional.') + out.append('') + out.append(r'\begin{longtable}{p{0.22\textwidth}p{0.12\textwidth}p{0.46\textwidth}p{0.14\textwidth}}') + out.append(r'\toprule') + out.append(r'\textbf{Name} & \textbf{Unit} & \textbf{Description} & \textbf{Default} \\') + out.append(r'\midrule') + out.append(r'\endhead') + for (name, unit, doc, defval, required) in _iter_param_rows(i.setparams + i.defparams, i.params_docs): + name_tex = _tex(name) + if required: + name_tex = r'\textbf{%s}' % name_tex + out.append('%s & %s & %s & %s \\\\' % (name_tex, _tex(unit), _tex(doc), _tex(defval))) + out.append(r'\bottomrule') + out.append(r'\end{longtable}') + out.append('') + out.append(r'\section*{Links}') + out.append(r'\begin{itemize}') + out.append(r' \item \href{run:%s}{Source code} for \texttt{%s}.' % (i.filepath, _tex(os.path.basename(i.filepath)))) + for l in i.links: + out.append(r' \item %s' % _tex(l)) + out.append(r'\end{itemize}') + out.append('') + out.append(r'\vspace{1em}') + out.append(r'\noindent\rule{\textwidth}{0.4pt}') + out.append(r'\begin{flushright}\small Generated on %s %s.\end{flushright}' % ( + _tex(mccode_config.configuration["MCCODE"]), + _tex(mccode_config.configuration["MCCODE_VERSION"]))) + out.append(r'\end{document}') + + self.text = '\n'.join(out) + return self.text + + +# ================================================================== +# File output / processing +# ================================================================== + def write_file(filename, text, failsilent=False): try: dirname = os.path.dirname(filename) - + if not os.path.exists(dirname): os.makedirs(dirname) f = open(filename, 'w') @@ -920,8 +1477,41 @@ def parse_and_filter(indir, namefilter=None, recursive=False, printlog=False): return comp_info_lst, instr_info_lst, comp_files, instr_files -def write_doc_files_or_continue(comp_infos, instr_infos, comp_files, instr_files, printlog=False): - ''' Writes component and instrument docs files ''' + +# Mapping of format -> (ext, InstrWriterClass, CompWriterClass) +_PER_FILE_WRITERS = { + 'html': ('html', InstrDocWriter, CompDocWriter), + 'md': ('md', InstrMdDocWriter, CompMdDocWriter), + 'tex': ('tex', InstrLatexDocWriter, CompLatexDocWriter), +} + +# Mapping of format -> OverviewWriterClass +_OVERVIEW_WRITERS = { + 'html': OverviewDocWriter, + 'md': OverviewMdDocWriter, + 'tex': OverviewLatexDocWriter, +} + + +def _normalize_formats(formats): + ''' Ensure a clean tuple of known format keys, defaulting to ('html',). ''' + if not formats: + return ('html',) + result = [] + for f in formats: + f = f.lower() + if f in _PER_FILE_WRITERS and f not in result: + result.append(f) + if not result: + result.append('html') + return tuple(result) + + +def write_doc_files_or_continue(comp_infos, instr_infos, comp_files, instr_files, + printlog=False, formats=('html',)): + ''' Writes component and instrument docs files in the requested formats. ''' + formats = _normalize_formats(formats) + for i in range(len(comp_infos)): try: p = comp_infos[i] @@ -929,13 +1519,14 @@ def write_doc_files_or_continue(comp_infos, instr_infos, comp_files, instr_files f = comp_files[i] except: f = comp_infos[i].filepath - doc = CompDocWriter(p) - text = doc.create() - h = pathlib.Path(os.path.splitext(f)[0] + '.html') - h = pathlib.Path(str(h).replace(mccode_config.directories['resourcedir'], mccode_config.directories['docdir'])) - if printlog: - print("writing doc file... %s" % h) - write_file(h, text, failsilent=True) + for fmt in formats: + ext, InstrW, CompW = _PER_FILE_WRITERS[fmt] + doc = CompW(p) + text = doc.create() + h = get_doc_filepath(f, ext) + if printlog: + print("writing doc file... %s" % h) + write_file(h, text, failsilent=True) except: print("Could not work on comp " + str(i) + " of " + str(len(comp_infos)) + ": " + comp_infos[i].name) pass @@ -947,21 +1538,56 @@ def write_doc_files_or_continue(comp_infos, instr_infos, comp_files, instr_files f = instr_infos[i].filepath except: f = instr_files[i] - doc = InstrDocWriter(p) - text = doc.create() - h = pathlib.Path(os.path.splitext(f)[0] + '.html') - h = pathlib.Path(str(h).replace(mccode_config.directories['resourcedir'], mccode_config.directories['docdir'])) - if printlog: - print("writing doc file... %s" % h) - write_file(h, text, failsilent=True) + for fmt in formats: + ext, InstrW, CompW = _PER_FILE_WRITERS[fmt] + doc = InstrW(p) + text = doc.create() + h = get_doc_filepath(f, ext) + if printlog: + print("writing doc file... %s" % h) + write_file(h, text, failsilent=True) except: print("Could not work on instr " + str(i) + " of " + str(len(instr_infos)) + ": " + instr_infos[i].name) print(instr_infos[i].filepath) pass + +def write_overview_docs(comp_infos, instr_infos, comp_infos_local, instr_infos_local, + libdir, docdir, out_basepath, formats=('html',), printlog=False): + ''' Build and write the master overview page(s) in the requested formats. + out_basepath: path with extension that will be swapped (e.g. /.../mcdoc.html). + The extension is replaced per format. + ''' + formats = _normalize_formats(formats) + base, _ = os.path.splitext(str(out_basepath)) + results = {} + for fmt in formats: + WriterCls = _OVERVIEW_WRITERS[fmt] + writer = WriterCls(comp_infos, instr_infos, comp_infos_local, instr_infos_local, libdir, docdir) + text = writer.create() + path = '%s.%s' % (base, fmt) + if printlog: + print('writing master doc file... %s' % path) + try: + write_file(path, text) + results[fmt] = path + except Exception as e: + print('ERROR writing master doc file (%s): %s' % (fmt, e)) + return results + + def main(args): logging.basicConfig(level=logging.INFO) + # Resolve requested formats. HTML is always included so existing + # behaviour (browser-based viewing) is preserved. + requested = ['html'] + if getattr(args, 'md', False) or getattr(args, 'all_formats', False): + requested.append('md') + if getattr(args, 'tex', False) or getattr(args, 'all_formats', False): + requested.append('tex') + formats = _normalize_formats(requested) + usedir = mccode_config.configuration["MCCODE_LIB_DIR"] docdir = mccode_config.directories["docdir"] @@ -1004,17 +1630,18 @@ def main(args): print("using custom dir: %s" % usedir) comp_infos, instr_infos, comp_files, instr_files = parse_and_filter(usedir, recursive=True, printlog=args.verbose) - write_doc_files_or_continue(comp_infos, instr_infos, comp_files, instr_files, args.verbose) - - masterdoc = OverviewDocWriter(comp_infos, instr_infos, [], [], mccode_config.configuration['MCCODE_LIB_DIR'], mccode_config.directories['docdir']) - text = masterdoc.create() - - mcdoc_html_filepath = os.path.join(docdir,mccode_config.get_mccode_prefix()+'doc.html') - try: - write_file(mcdoc_html_filepath, text) - print("master doc file: %s" % mcdoc_html_filepath) - except Exception as e: - print('ERROR writing master doc file: %s', e) + write_doc_files_or_continue(comp_infos, instr_infos, comp_files, instr_files, + printlog=args.verbose, formats=formats) + + mcdoc_html_filepath = os.path.join(docdir, mccode_config.get_mccode_prefix()+'doc.html') + written = write_overview_docs(comp_infos, instr_infos, [], [], + mccode_config.configuration['MCCODE_LIB_DIR'], + mccode_config.directories['docdir'], + mcdoc_html_filepath, + formats=formats, + printlog=True) + for fmt, path in written.items(): + print("master doc file (%s): %s" % (fmt, path)) elif args.dir != None or args.searchterm != None: ''' filtered and/or local results ''' @@ -1030,7 +1657,7 @@ def main(args): if args.dir is not None: usedir2 = args.dir f = os.path.join(usedir2, args.searchterm) - + # find matcing filenames instr_files, comp_files = utils.get_instr_comp_files(mccode_config.configuration['MCCODE_LIB_DIR'], True) comp_files = [f for f in comp_files if os.path.basename(f) == args.searchterm] @@ -1055,7 +1682,7 @@ def main(args): f_html = os.path.join(docdir,'examples',f_class,f_base,f_base + ".html") info = InstrParser(f).parse() info.filepath = os.path.abspath(f) - write_doc_files_or_continue([], [info], [], [f]) + write_doc_files_or_continue([], [info], [], [f], formats=formats) subprocess.Popen('%s %s' % (mccode_config.configuration['BROWSER'], f_html), shell=True) elif comp: f_base = os.path.splitext(os.path.basename(f))[0] + ".html" @@ -1063,7 +1690,7 @@ def main(args): f_html = os.path.join(docdir,f_class,f_base) info = CompParser(f).parse() info.filepath = os.path.abspath(f) - write_doc_files_or_continue([info], [], [f], []) + write_doc_files_or_continue([info], [], [f], [], formats=formats) subprocess.Popen('%s %s' % (mccode_config.configuration['BROWSER'], f_html), shell=True) quit() # there were multiple matches - fall back to general search term mode @@ -1072,7 +1699,7 @@ def main(args): # system comp_infos, instr_infos, comp_files, instr_files = parse_and_filter(usedir, flter, recursive=True) - write_doc_files_or_continue(comp_infos, instr_infos, comp_files, instr_files) + write_doc_files_or_continue(comp_infos, instr_infos, comp_files, instr_files, formats=formats) # local comp_infos_local = [] @@ -1080,19 +1707,18 @@ def main(args): if args.dir != None: usedir = args.dir comp_infos_local, instr_infos_local, comp_files, instr_files = parse_and_filter(args.dir, flter, recursive=False) - write_doc_files_or_continue(comp_infos_local, instr_infos_local, comp_files, instr_files) + write_doc_files_or_continue(comp_infos_local, instr_infos_local, comp_files, instr_files, formats=formats) if len(comp_infos_local) + len(instr_infos_local) + len(comp_infos) + len(instr_infos) == 0: print("no matches found") quit() - masterdoc = OverviewDocWriter(comp_infos, instr_infos, comp_infos_local, instr_infos_local, usedir, mccode_config.directories['docdir']) - text = masterdoc.create() - mcdoc_html_filepath = os.path.join('.', mccode_config.get_mccode_prefix()+'doc.html') - if args.verbose: - print('writing local overview doc file... %s' % mcdoc_html_filepath) - write_file(mcdoc_html_filepath, text) + write_overview_docs(comp_infos, instr_infos, comp_infos_local, instr_infos_local, + usedir, mccode_config.directories['docdir'], + mcdoc_html_filepath, + formats=formats, + printlog=args.verbose) subprocess.Popen('%s %s' % (mccode_config.configuration['BROWSER'], os.path.join('.',mccode_config.get_mccode_prefix()+'doc.html')), shell=True) @@ -1106,10 +1732,13 @@ def main(args): parser.add_argument('--comps','-c', action='store_true', help='open the component manual') parser.add_argument('--web','-w', action='store_true', help='open the '+mccode_config.configuration['MCCODE']+' website') parser.add_argument('--verbose','-v', action='store_true', help='prints a parsing log during execution') - - + parser.add_argument('--md', '-M', action='store_true', help='also emit Markdown (.md) doc files') + parser.add_argument('--tex', '-T', action='store_true', help='also emit LaTeX (.tex) doc files') + parser.add_argument('--all-formats', '-A', action='store_true', dest='all_formats', + help='emit HTML, Markdown and LaTeX doc files') + args = parser.parse_args() - + try: main(args) except Exception as e: From 73ee44a56870376ec26acd977ebd92dd0bcecdfa Mon Sep 17 00:00:00 2001 From: Peter Willendrup Date: Thu, 16 Apr 2026 21:04:12 +0200 Subject: [PATCH 02/43] Add option for md's within repo --- tools/Python/mcdoc/mcdoc.py | 53 ++++++++++++++++++++++++------------- 1 file changed, 35 insertions(+), 18 deletions(-) diff --git a/tools/Python/mcdoc/mcdoc.py b/tools/Python/mcdoc/mcdoc.py index fabc83267..d4573f51c 100644 --- a/tools/Python/mcdoc/mcdoc.py +++ b/tools/Python/mcdoc/mcdoc.py @@ -1566,13 +1566,17 @@ def write_overview_docs(comp_infos, instr_infos, comp_infos_local, instr_infos_l writer = WriterCls(comp_infos, instr_infos, comp_infos_local, instr_infos_local, libdir, docdir) text = writer.create() path = '%s.%s' % (base, fmt) - if printlog: - print('writing master doc file... %s' % path) - try: - write_file(path, text) - results[fmt] = path - except Exception as e: - print('ERROR writing master doc file (%s): %s' % (fmt, e)) + print("Docdir is " + docdir) + if out_basepath is not None: + if printlog: + print('writing master doc file... %s' % path) + try: + write_file(path, text) + results[fmt] = path + except Exception as e: + print('ERROR writing master doc file (%s): %s' % (fmt, e)) + else: + print('in-repo use, no master document') return results @@ -1581,7 +1585,11 @@ def main(args): # Resolve requested formats. HTML is always included so existing # behaviour (browser-based viewing) is preserved. - requested = ['html'] + if getattr(args, 'in_repo', True): + requested = ['md'] + args.install=True + else: + requested = ['html'] if getattr(args, 'md', False) or getattr(args, 'all_formats', False): requested.append('md') if getattr(args, 'tex', False) or getattr(args, 'all_formats', False): @@ -1632,14 +1640,16 @@ def main(args): comp_infos, instr_infos, comp_files, instr_files = parse_and_filter(usedir, recursive=True, printlog=args.verbose) write_doc_files_or_continue(comp_infos, instr_infos, comp_files, instr_files, printlog=args.verbose, formats=formats) - - mcdoc_html_filepath = os.path.join(docdir, mccode_config.get_mccode_prefix()+'doc.html') + if args.in_repo==False: + mcdoc_html_filepath = os.path.join(docdir, mccode_config.get_mccode_prefix()+'doc.html') + else: + mcdoc_html_filepath = None written = write_overview_docs(comp_infos, instr_infos, [], [], - mccode_config.configuration['MCCODE_LIB_DIR'], - mccode_config.directories['docdir'], - mcdoc_html_filepath, - formats=formats, - printlog=True) + mccode_config.configuration['MCCODE_LIB_DIR'], + mccode_config.directories['docdir'], + mcdoc_html_filepath, + formats=formats, + printlog=True) for fmt, path in written.items(): print("master doc file (%s): %s" % (fmt, path)) @@ -1674,7 +1684,10 @@ def main(args): instr = re.search(r'[\w0-9]+\.instr', args.searchterm) comp = re.search(r'[\w0-9]+\.comp', args.searchterm) - docdir = mccode_config.directories["docdir"] + if getattr(args, 'in_repo', True): + docdir = mccode_config.directories["docdir"] + else: + docdir='' if instr: f_base = os.path.splitext(os.path.basename(f))[0] @@ -1713,7 +1726,10 @@ def main(args): print("no matches found") quit() - mcdoc_html_filepath = os.path.join('.', mccode_config.get_mccode_prefix()+'doc.html') + if args.in_repo==False: + mcdoc_html_filepath = os.path.join(docdir, mccode_config.get_mccode_prefix()+'doc.html') + else: + mcdoc_html_filepath = None write_overview_docs(comp_infos, instr_infos, comp_infos_local, instr_infos_local, usedir, mccode_config.directories['docdir'], mcdoc_html_filepath, @@ -1736,7 +1752,8 @@ def main(args): parser.add_argument('--tex', '-T', action='store_true', help='also emit LaTeX (.tex) doc files') parser.add_argument('--all-formats', '-A', action='store_true', dest='all_formats', help='emit HTML, Markdown and LaTeX doc files') - + parser.add_argument('--in-repo', action='store_true', dest='in_repo', + help='Place generated output(s) next to comp files (no master doc page)') args = parser.parse_args() try: From 7c86d5a0985e006a5187dc31cf7894dad9a7339e Mon Sep 17 00:00:00 2001 From: Peter Willendrup Date: Thu, 16 Apr 2026 21:09:09 +0200 Subject: [PATCH 03/43] Add in-repo md files for comps / instrs (Should become part of release procedure/PR template/ ...) --- mcstas-comps/contrib/Al_window.md | 37 + mcstas-comps/contrib/CavitiesIn.md | 39 + mcstas-comps/contrib/CavitiesOut.md | 39 + mcstas-comps/contrib/Collimator_ROC.md | 57 + mcstas-comps/contrib/Commodus_I3.md | 57 + mcstas-comps/contrib/Conics_EH.md | 60 + mcstas-comps/contrib/Conics_HE.md | 60 + mcstas-comps/contrib/Conics_PH.md | 58 + mcstas-comps/contrib/Conics_PP.md | 60 + mcstas-comps/contrib/E_4PI.md | 39 + mcstas-comps/contrib/Exact_radial_coll.md | 49 + mcstas-comps/contrib/FermiChopper_ILL.md | 76 + mcstas-comps/contrib/Fermi_chop2a.md | 41 + mcstas-comps/contrib/Filter_graphite.md | 46 + .../contrib/FlatEllipse_finite_mirror.md | 54 + mcstas-comps/contrib/Foil_flipper_magnet.md | 57 + mcstas-comps/contrib/GISANS_sample.md | 89 + mcstas-comps/contrib/Guide_anyshape_r.md | 70 + mcstas-comps/contrib/Guide_curved.md | 50 + mcstas-comps/contrib/Guide_four_side.md | 136 ++ mcstas-comps/contrib/Guide_gravity_psd.md | 101 + mcstas-comps/contrib/Guide_honeycomb.md | 57 + mcstas-comps/contrib/Guide_m.md | 80 + mcstas-comps/contrib/Guide_multichannel.md | 74 + mcstas-comps/contrib/ISIS_moderator.md | 56 + mcstas-comps/contrib/Lens.md | 108 + mcstas-comps/contrib/Lens_simple.md | 72 + .../contrib/Mirror_Curved_Bispectral.md | 46 + mcstas-comps/contrib/Mirror_Elliptic.md | 46 + .../contrib/Mirror_Elliptic_Bispectral.md | 44 + mcstas-comps/contrib/Mirror_Parabolic.md | 45 + mcstas-comps/contrib/Monochromator_2foc.md | 73 + mcstas-comps/contrib/Monochromator_bent.md | 63 + .../contrib/Monochromator_bent_complex.md | 58 + mcstas-comps/contrib/MultiDiskChopper.md | 68 + mcstas-comps/contrib/Multilayer_Sample.md | 56 + mcstas-comps/contrib/NMO.md | 56 + mcstas-comps/contrib/NPI_tof_dhkl_detector.md | 73 + mcstas-comps/contrib/NPI_tof_theta_monitor.md | 50 + mcstas-comps/contrib/PSD_Detector.md | 168 ++ mcstas-comps/contrib/PSD_Pol_monitor.md | 47 + mcstas-comps/contrib/PSD_monitor_rad.md | 40 + mcstas-comps/contrib/PSD_spinDmon.md | 44 + mcstas-comps/contrib/PSD_spinUmon.md | 44 + mcstas-comps/contrib/PerfectCrystal.md | 89 + mcstas-comps/contrib/Pol_bender_tapering.md | 73 + mcstas-comps/contrib/Pol_pi_2_rotator.md | 39 + mcstas-comps/contrib/Pol_triafield.md | 56 + mcstas-comps/contrib/Radial_div.md | 46 + mcstas-comps/contrib/SANSCurve.md | 44 + mcstas-comps/contrib/SANSCylinders.md | 42 + mcstas-comps/contrib/SANSEllipticCylinders.md | 44 + mcstas-comps/contrib/SANSLiposomes.md | 49 + mcstas-comps/contrib/SANSNanodiscs.md | 53 + mcstas-comps/contrib/SANSNanodiscsFast.md | 57 + mcstas-comps/contrib/SANSNanodiscsWithTags.md | 58 + .../contrib/SANSNanodiscsWithTagsFast.md | 61 + mcstas-comps/contrib/SANSPDB.md | 45 + mcstas-comps/contrib/SANSPDBFast.md | 50 + mcstas-comps/contrib/SANSQMonitor.md | 41 + mcstas-comps/contrib/SANSShells.md | 42 + mcstas-comps/contrib/SANSSpheres.md | 42 + .../contrib/SANSSpheresPolydisperse.md | 42 + mcstas-comps/contrib/SANS_AnySamp.md | 59 + mcstas-comps/contrib/SANS_DebyeS.md | 52 + mcstas-comps/contrib/SANS_Guinier.md | 59 + mcstas-comps/contrib/SANS_Liposomes_Abs.md | 62 + mcstas-comps/contrib/SANS_benchmark2.md | 55 + mcstas-comps/contrib/SNS_source.md | 54 + mcstas-comps/contrib/SNS_source_analytic.md | 66 + mcstas-comps/contrib/Sans_liposomes_new.md | 53 + mcstas-comps/contrib/Sapphire_Filter.md | 54 + mcstas-comps/contrib/SiC.md | 35 + .../contrib/Single_crystal_inelastic.md | 97 + mcstas-comps/contrib/Source_custom.md | 130 + mcstas-comps/contrib/Source_gen4.md | 118 + mcstas-comps/contrib/Source_multi_surfaces.md | 94 + mcstas-comps/contrib/Source_pulsed.md | 74 + .../Spherical_Backscattering_Analyser.md | 50 + mcstas-comps/contrib/Spin_random.md | 32 + mcstas-comps/contrib/Spot_sample.md | 59 + mcstas-comps/contrib/StatisticalChopper.md | 46 + .../contrib/StatisticalChopper_Monitor.md | 42 + mcstas-comps/contrib/SupermirrorFlat.md | 166 ++ mcstas-comps/contrib/TOF2Q_cyl_monitor.md | 45 + mcstas-comps/contrib/TOFSANSdet.md | 65 + mcstas-comps/contrib/TOF_PSDmonitor.md | 49 + mcstas-comps/contrib/TOF_PSDmonitor_toQ.md | 57 + .../contrib/Transmission_V_polarisator.md | 59 + .../contrib/Transmission_polarisatorABSnT.md | 69 + mcstas-comps/contrib/Vertical_Bender.md | 87 + mcstas-comps/contrib/Vertical_T0a.md | 39 + mcstas-comps/contrib/ViewModISIS.md | 72 + mcstas-comps/contrib/multi_pipe.md | 51 + mcstas-comps/examples/BNL/BNL_H8/BNL_H8.md | 38 + .../BNL/BNL_H8_simple/BNL_H8_simple.md | 38 + .../BNL/h8_test_legacy/h8_test_legacy.md | 44 + .../DTU/Test_FZP_simple/Test_FZP_simple.md | 35 + .../examples/DTU/Vin_test/Vin_test.md | 33 + .../examples/DTU/Vout_test/Vout_test.md | 33 + .../ESS/ESS_BEER_MCPL/ESS_BEER_MCPL.md | 82 + .../ESS/ESS_IN5_reprate/ESS_IN5_reprate.md | 80 + .../ESS_Testbeamline_HZB_V20.md | 59 + .../ESS_butterfly_Guide_curved_test.md | 52 + .../ESS_butterfly_MCPL_test.md | 55 + .../ESS_butterfly_test/ESS_butterfly_test.md | 46 + .../ESS_butterfly_tfocus_NOFOCUS_test.md | 49 + .../ESS_butterfly_tfocus_test.md | 49 + .../ESS/ESS_mcpl2hist/ESS_mcpl2hist.md | 41 + .../FZJ_BenchmarkSfin2/FZJ_BenchmarkSfin2.md | 54 + .../FZ_Juelich/FZJ_KWS2_Lens/FZJ_KWS2_Lens.md | 42 + .../FZJ_SANS_KWS2_AnySample.md | 39 + .../examples/HZB/HZB_FLEX/HZB_FLEX.md | 41 + .../examples/HZB/HZB_NEAT/HZB_NEAT.md | 56 + .../examples/HighNESS/WOFSANS/WOFSANS.md | 56 + .../examples/ILL/ILL_BRISP/ILL_BRISP.md | 94 + mcstas-comps/examples/ILL/ILL_D2B/ILL_D2B.md | 74 + .../ILL/ILL_D2B_noenv/ILL_D2B_noenv.md | 74 + mcstas-comps/examples/ILL/ILL_D4/ILL_D4.md | 51 + .../examples/ILL/ILL_H10_IN8/ILL_H10_IN8.md | 84 + .../examples/ILL/ILL_H113/ILL_H113.md | 36 + .../examples/ILL/ILL_H13_IN20/ILL_H13_IN20.md | 83 + .../examples/ILL/ILL_H142/ILL_H142.md | 37 + .../examples/ILL/ILL_H142_D33/ILL_H142_D33.md | 48 + .../ILL/ILL_H142_IN12/ILL_H142_IN12.md | 51 + .../ILL/ILL_H142_simple/ILL_H142_simple.md | 37 + .../ILL/ILL_H143_LADI/ILL_H143_LADI.md | 60 + mcstas-comps/examples/ILL/ILL_H15/ILL_H15.md | 36 + .../examples/ILL/ILL_H15_D11/ILL_H15_D11.md | 58 + .../examples/ILL/ILL_H15_IN6/ILL_H15_IN6.md | 68 + .../examples/ILL/ILL_H15_SAM/ILL_H15_SAM.md | 71 + mcstas-comps/examples/ILL/ILL_H16/ILL_H16.md | 34 + .../examples/ILL/ILL_H16_IN5/ILL_H16_IN5.md | 37 + mcstas-comps/examples/ILL/ILL_H22/ILL_H22.md | 35 + .../examples/ILL/ILL_H22_D1A/ILL_H22_D1A.md | 64 + .../ILL_H22_D1A_noenv/ILL_H22_D1A_noenv.md | 64 + .../examples/ILL/ILL_H22_D1B/ILL_H22_D1B.md | 74 + .../ILL_H22_D1B_noenv/ILL_H22_D1B_noenv.md | 74 + .../ILL/ILL_H22_VIVALDI/ILL_H22_VIVALDI.md | 49 + mcstas-comps/examples/ILL/ILL_H24/ILL_H24.md | 35 + mcstas-comps/examples/ILL/ILL_H25/ILL_H25.md | 35 + .../examples/ILL/ILL_H25_IN22/ILL_H25_IN22.md | 56 + mcstas-comps/examples/ILL/ILL_H5/ILL_H5.md | 50 + .../examples/ILL/ILL_H512_D22/ILL_H512_D22.md | 40 + mcstas-comps/examples/ILL/ILL_H53/ILL_H53.md | 35 + .../examples/ILL/ILL_H53_D16/ILL_H53_D16.md | 53 + .../examples/ILL/ILL_H53_IN14/ILL_H53_IN14.md | 71 + .../examples/ILL/ILL_H5_new/ILL_H5_new.md | 75 + .../examples/ILL/ILL_H8_IN1/ILL_H8_IN1.md | 87 + .../examples/ILL/ILL_IN13/ILL_IN13.md | 92 + mcstas-comps/examples/ILL/ILL_IN4/ILL_IN4.md | 93 + mcstas-comps/examples/ILL/ILL_IN5/ILL_IN5.md | 46 + .../ILL/ILL_IN5_Spots/ILL_IN5_Spots.md | 52 + mcstas-comps/examples/ILL/ILL_IN6/ILL_IN6.md | 80 + .../examples/ILL/ILL_Lagrange/ILL_Lagrange.md | 56 + .../examples/ILL/ILL_SALSA/ILL_SALSA.md | 63 + .../examples/ISIS/ISIS_CRISP/ISIS_CRISP.md | 43 + .../examples/ISIS/ISIS_GEM/ISIS_GEM.md | 43 + .../examples/ISIS/ISIS_HET/ISIS_HET.md | 39 + .../examples/ISIS/ISIS_IMAT/ISIS_IMAT.md | 47 + .../examples/ISIS/ISIS_LET/ISIS_LET.md | 43 + .../examples/ISIS/ISIS_MERLIN/ISIS_MERLIN.md | 48 + .../examples/ISIS/ISIS_OSIRIS/ISIS_OSIRIS.md | 45 + .../ISIS/ISIS_Prisma2/ISIS_Prisma2.md | 50 + .../examples/ISIS/ISIS_SANS2d/ISIS_SANS2d.md | 54 + .../ISIS_TOSCA_preupgrade.md | 49 + .../ISIS_TS1_Brilliance.md | 36 + .../ISIS_TS2_Brilliance.md | 36 + .../examples/ISIS/ISIS_test/ISIS_test.md | 34 + .../ISIS/ViewModISIStest/ViewModISIStest.md | 35 + mcstas-comps/examples/LLB/LLB_6T2/LLB_6T2.md | 44 + .../ILL_H16_IN5_Mantid/ILL_H16_IN5_Mantid.md | 56 + .../Mantid/ILL_H16_Mantid/ILL_H16_Mantid.md | 37 + .../Mantid/ILL_IN5_Mantid/ILL_IN5_Mantid.md | 47 + .../ISIS_SANS2d_Mantid/ISIS_SANS2d_Mantid.md | 55 + .../ISIS_TOSCA_preupgrade_Mantid.md | 55 + .../Mantid/SNS_ARCS_Mantid/SNS_ARCS_Mantid.md | 53 + .../Mantid/Tools_ONION/Tools_ONION.md | 44 + .../templateSANS2_Mantid.md | 39 + .../templateSANS_Mantid.md | 45 + .../templateSasView_Mantid.md | 60 + .../templateVanadiumMultipleScat_Mantid.md | 34 + .../NCrystal_example/NCrystal_example.md | 50 + .../Union_NCrystal_example.md | 35 + .../Union_NCrystal_mix_example.md | 36 + .../Necsa/SAFARI_MPISI/SAFARI_MPISI.md | 64 + .../Necsa/SAFARI_PITSI/SAFARI_PITSI.md | 61 + mcstas-comps/examples/PSI/PSI_DMC/PSI_DMC.md | 48 + .../PSI/PSI_DMC_simple/PSI_DMC_simple.md | 47 + .../examples/PSI/PSI_Focus/PSI_Focus.md | 35 + .../examples/PSI/PSI_source/PSI_source.md | 47 + mcstas-comps/examples/PSI/RITA-II/RITA-II.md | 152 ++ .../examples/Risoe/TAS1_C1/TAS1_C1.md | 43 + .../Risoe/TAS1_C1_Tilt/TAS1_C1_Tilt.md | 44 + .../TAS1_Diff_Powder/TAS1_Diff_Powder.md | 49 + .../Risoe/TAS1_Diff_Slit/TAS1_Diff_Slit.md | 48 + .../Risoe/TAS1_Diff_Vana/TAS1_Diff_Vana.md | 49 + .../examples/Risoe/TAS1_Powder/TAS1_Powder.md | 48 + .../examples/Risoe/TAS1_Vana/TAS1_Vana.md | 48 + .../McStas_Isotropic_Sqw.md | 61 + .../SINE2020/McStas_PowderN/McStas_PowderN.md | 58 + .../McStas_Single_crystal.md | 58 + .../Gallmeier_SNS_decoupled_poisoned.md | 34 + .../Granroth_SNS_decoupled_poisoned.md | 34 + .../Mezei_SNS_decoupled_poisoned.md | 35 + .../examples/SNS/SNS_ARCS/SNS_ARCS.md | 53 + .../examples/SNS/SNS_BASIS/SNS_BASIS.md | 71 + .../SNS_analytic_test/SNS_analytic_test.md | 36 + .../examples/SNS/SNS_test/SNS_test.md | 36 + .../examples/TRIGA/RTP_DIF/RTP_DIF.md | 38 + .../examples/TRIGA/RTP_Laue/RTP_Laue.md | 38 + .../RTP_NeutronRadiography.md | 37 + .../examples/TRIGA/RTP_SANS/RTP_SANS.md | 51 + .../TUDelft/SEMSANS_Delft/SEMSANS_Delft.md | 48 + .../SEMSANS_instrument/SEMSANS_instrument.md | 69 + .../TUDelft/SESANS_Delft/SESANS_Delft.md | 47 + .../examples/Templates/BTsimple/BTsimple.md | 42 + .../Demo_shape_primitives.md | 32 + .../Demo_shape_primitives_simple.md | 32 + .../TOF_Reflectometer/TOF_Reflectometer.md | 47 + .../Test_SasView_bcc_paracrystal_aniso.md | 59 + .../Test_SasView_guinier.md | 49 + .../Templates/Tomography/Tomography.md | 51 + mcstas-comps/examples/Templates/mini/mini.md | 33 + .../examples/Templates/template/template.md | 42 + .../Templates/templateDIFF/templateDIFF.md | 65 + .../Templates/templateLaue/templateLaue.md | 33 + .../Templates/templateNMX/templateNMX.md | 35 + .../templateNMX_TOF/templateNMX_TOF.md | 46 + .../Templates/templateSANS/templateSANS.md | 38 + .../Templates/templateSANS2/templateSANS2.md | 39 + .../templateSANS_MCPL/templateSANS_MCPL.md | 41 + .../templateSasView/templateSasView.md | 48 + .../Templates/templateTAS/templateTAS.md | 136 ++ .../Templates/templateTOF/templateTOF.md | 53 + .../template_simple/template_simple.md | 35 + .../Test_MCPL_input/Test_MCPL_input.md | 36 + .../Test_MCPL_input_once.md | 37 + .../Test_MCPL_output/Test_MCPL_output.md | 32 + .../Test_RNG_rand01/Test_RNG_rand01.md | 40 + .../Test_RNG_randnorm/Test_RNG_randnorm.md | 40 + .../Test_RNG_randpm1/Test_RNG_randpm1.md | 40 + .../Test_RNG_randtriangle.md | 40 + .../Test_RNG_randvec_target_circle.md | 41 + .../Test_RNG_randvec_target_rect.md | 41 + .../Test_RNG_randvec_target_rect_angular.md | 41 + .../Tests_grammar/Test_GROUP/Test_GROUP.md | 33 + .../Tests_grammar/Test_GROUP_restore.md | 40 + .../Test_Jump_Iterate/Test_Jump_Iterate.md | 37 + .../Unittest_ALLOW_BACKPROP.md | 39 + .../Unittest_JUMP_ITERATE.md | 38 + .../Unittest_JUMP_WHEN/Unittest_JUMP_WHEN.md | 38 + .../Unittest_SPLIT/Unittest_SPLIT.md | 36 + .../Unittest_SPLIT_sample.md | 37 + .../Test_Cyl_monitors/Test_Cyl_monitors.md | 43 + .../Test_Monitor_nD/Test_Monitor_nD.md | 38 + .../Test_TOF_PSDmonitor_toQ.md | 36 + .../Test_Al_windows/Test_Al_windows.md | 45 + .../Test_Collimator_Radial.md | 36 + .../Test_Conics_pairs/Test_Conics_pairs.md | 43 + .../Test_DiskChoppers/Test_DiskChoppers.md | 35 + .../Test_DiskChoppers2/Test_DiskChoppers2.md | 41 + .../Tests_optics/Test_Fermi/Test_Fermi.md | 46 + .../Test_FocalisationMirrors.md | 44 + .../Tests_optics/Test_Guides/Test_Guides.md | 34 + .../Test_Guides_Curved/Test_Guides_Curved.md | 35 + .../Tests_optics/Test_Lens/Test_Lens.md | 35 + .../Test_Monochromator_bent.md | 33 + .../Test_Monochromator_bent_complex.md | 43 + .../Test_Monochromators.md | 57 + .../Tests_optics/Test_NMO/Test_NMO.md | 55 + .../Test_PSD_Detector/Test_PSD_Detector.md | 34 + .../Test_Pol_Bender_Vs_Guide_Curved.md | 37 + .../Tests_optics/Test_Rotator/Test_Rotator.md | 37 + .../Test_Selectors/Test_Selectors.md | 36 + .../Test_Source_pulsed/Test_Source_pulsed.md | 34 + .../Tests_optics/Test_Sources/Test_Sources.md | 41 + .../Test_StatisticalChopper.md | 34 + .../Test_Vertical_Bender.md | 40 + .../Tests_optics/Test_filters/Test_filters.md | 42 + .../Tests_optics/Test_focus/Test_focus.md | 42 + .../Tests_other/test_File/test_File.md | 33 + .../He3_spin_filter/He3_spin_filter.md | 41 + .../SE_example/SE_example.md | 45 + .../SE_example2/SE_example2.md | 45 + .../Supermirror_thin_substrate.md | 54 + .../Test_Magnetic_Constant.md | 38 + .../Test_Magnetic_Majorana.md | 41 + .../Test_Magnetic_Rotation.md | 37 + .../Test_Pol_Bender/Test_Pol_Bender.md | 38 + .../Test_Pol_FieldBox/Test_Pol_FieldBox.md | 35 + .../Test_Pol_Guide_Vmirror.md | 33 + .../Test_Pol_Guide_mirror.md | 34 + .../Test_Pol_MSF/Test_Pol_MSF.md | 33 + .../Test_Pol_Mirror/Test_Pol_Mirror.md | 38 + .../Test_Pol_SF_ideal/Test_Pol_SF_ideal.md | 36 + .../Test_Pol_Set/Test_Pol_Set.md | 34 + .../Test_Pol_Tabled/Test_Pol_Tabled.md | 37 + .../Test_Pol_TripleAxis.md | 43 + .../Test_V_cavity_SNAG_double_side.md | 46 + .../Test_V_cavity_SNAG_single_side.md | 46 + .../Test_pol_ideal/Test_pol_ideal.md | 32 + .../GISANS_tests/GISANS_tests.md | 36 + .../Samples_Incoherent/Samples_Incoherent.md | 76 + .../Samples_Incoherent_off.md | 35 + .../Samples_Isotropic_Sqw.md | 37 + .../Samples_Phonon/Samples_Phonon.md | 41 + .../Samples_vanadium/Samples_vanadium.md | 35 + .../Test_Incoherent/Test_Incoherent.md | 33 + .../Test_Incoherent_MS/Test_Incoherent_MS.md | 66 + .../Test_Magnon_bcc_2D/Test_Magnon_bcc_2D.md | 41 + .../Test_Magnon_bcc_TAS.md | 43 + .../Test_PowderN/Test_PowderN.md | 40 + .../Test_PowderN_Res/Test_PowderN_Res.md | 46 + .../Test_PowderN_concentric.md | 36 + .../Test_Powders/Test_Powders.md | 40 + .../Tests_samples/Test_SANS/Test_SANS.md | 54 + .../examples/Tests_samples/Test_SX/Test_SX.md | 42 + .../Test_Single_crystal_inelastic.md | 49 + .../Tests_samples/Test_Sqw/Test_Sqw.md | 36 + .../Test_Sqw_monitor/Test_Sqw_monitor.md | 116 + .../Test_TOFRes_sample/Test_TOFRes_sample.md | 42 + .../Test_TasReso/Test_TasReso.md | 59 + .../Test_single_magnetic_crystal.md | 44 + .../Unittest_SANS_benchmark2.md | 39 + .../Test_Source_custom/test_Source_custom.md | 32 + .../Test_Source_quasi/Test_Source_quasi.md | 32 + .../Conditional_test/Conditional_test.md | 32 + .../External_component_test.md | 32 + .../Geometry_test/Geometry_test.md | 32 + .../Hidden_Cylinder/Hidden_Cylinder.md | 41 + .../IncoherentPhonon_test.md | 56 + .../Tests_union/Logger_test/Logger_test.md | 33 + .../Tests_union/Many_meshes/Many_meshes.md | 40 + .../Test_absorption/Test_absorption.md | 33 + .../Test_absorption_image.md | 33 + .../examples/Tests_union/Test_box/Test_box.md | 34 + .../Tests_union/Test_mask/Test_mask.md | 32 + .../Tests_union/Test_powder/Test_powder.md | 31 + .../Tests_union/Test_texture/Test_texture.md | 37 + .../Unit_test_abs_logger_1D_space.md | 33 + .../Unit_test_abs_logger_1D_space_event.md | 31 + .../Unit_test_abs_logger_1D_space_tof.md | 32 + ..._test_abs_logger_1D_space_tof_to_lambda.md | 39 + .../Unit_test_abs_logger_2D_space.md | 31 + .../Unit_test_abs_logger_event.md | 31 + .../Unit_test_abs_logger_nD.md | 33 + .../Unit_test_conditional_PSD.md | 33 + .../Unit_test_conditional_standard.md | 33 + .../Unit_test_logger_1D.md | 31 + .../Unit_test_logger_2DQ.md | 31 + .../Unit_test_logger_2D_kf.md | 31 + .../Unit_test_logger_2D_kf_time.md | 31 + .../Unit_test_logger_2D_space.md | 33 + .../Unit_test_logger_2D_space_time.md | 31 + .../Unit_test_logger_3D_space.md | 31 + .../Unit_test_loggers_base.md | 31 + .../Tools/Histogrammer/Histogrammer.md | 58 + .../MCPL2Mantid_flat/MCPL2Mantid_flat.md | 58 + .../examples/Tools/MCPL2hist/MCPL2hist.md | 44 + .../MCPL_filter_energy/MCPL_filter_energy.md | 39 + .../MCPL_filter_radius/MCPL_filter_radius.md | 36 + .../MCPL_filter_wavelength.md | 39 + .../examples/Tools/vinput2mcpl/vinput2mcpl.md | 36 + .../Union_demos/Bispectral/Bispectral.md | 37 + .../Demonstration/Demonstration.md | 39 + .../External_component/External_component.md | 35 + .../Union_demos/Laue_camera/Laue_camera.md | 45 + .../Manual_example/Manual_example.md | 33 + .../Sample_picture_replica.md | 33 + .../Union_demos/Tagging_demo/Tagging_demo.md | 44 + .../Time_of_flight/Time_of_flight.md | 34 + .../SE_usage_example/SE_usage_example.md | 34 + .../cryostat_example/cryostat_example.md | 40 + .../Incoherent_validation.md | 39 + .../Mirror_validation/Mirror_validation.md | 49 + .../Powder_validation/Powder_validation.md | 45 + .../Single_crystal_validation.md | 53 + .../Radiography_absorbing_edge.md | 42 + .../elearning/Reflectometer/Reflectometer.md | 55 + .../elearning/SANSsimple/SANSsimple.md | 48 + .../SANSsimpleSpheres/SANSsimpleSpheres.md | 46 + .../SimplePowderDiffractometer.md | 41 + mcstas-comps/misc/Annulus.md | 41 + mcstas-comps/misc/Circle.md | 39 + mcstas-comps/misc/Cone.md | 39 + mcstas-comps/misc/Disc.md | 42 + mcstas-comps/misc/File.md | 36 + mcstas-comps/misc/Legacy_circle.md | 56 + mcstas-comps/misc/MCPL_input.md | 49 + mcstas-comps/misc/MCPL_input_once.md | 49 + mcstas-comps/misc/MCPL_output.md | 58 + mcstas-comps/misc/MCPL_output_noacc.md | 58 + mcstas-comps/misc/Progress_bar.md | 42 + mcstas-comps/misc/Shape.md | 65 + mcstas-comps/misc/Shape_simple.md | 62 + mcstas-comps/monitors/Brilliance_monitor.md | 69 + mcstas-comps/monitors/Cyl_monitor.md | 43 + mcstas-comps/monitors/Cyl_monitor_PSD.md | 44 + mcstas-comps/monitors/Cyl_monitor_TOF.md | 46 + mcstas-comps/monitors/Div1D_monitor.md | 46 + mcstas-comps/monitors/DivLambda_monitor.md | 53 + mcstas-comps/monitors/DivPos_monitor.md | 53 + mcstas-comps/monitors/Divergence_monitor.md | 52 + mcstas-comps/monitors/EPSD_monitor.md | 47 + mcstas-comps/monitors/E_monitor.md | 46 + mcstas-comps/monitors/Event_monitor_simple.md | 34 + mcstas-comps/monitors/Flex_monitor_1D.md | 42 + mcstas-comps/monitors/Flex_monitor_2D.md | 47 + mcstas-comps/monitors/Flex_monitor_3D.md | 52 + mcstas-comps/monitors/L_monitor.md | 46 + .../monitors/MeanPolLambda_monitor.md | 46 + mcstas-comps/monitors/Monitor.md | 41 + mcstas-comps/monitors/Monitor_4PI.md | 36 + mcstas-comps/monitors/Monitor_nD.md | 221 ++ mcstas-comps/monitors/Monitor_nD_noacc.md | 221 ++ mcstas-comps/monitors/PSD_TOF_monitor.md | 49 + mcstas-comps/monitors/PSD_monitor.md | 45 + mcstas-comps/monitors/PSD_monitor_4PI.md | 42 + mcstas-comps/monitors/PSD_monitor_4PI_spin.md | 43 + mcstas-comps/monitors/PSD_monitor_TOF.md | 49 + mcstas-comps/monitors/PSD_monitor_psf.md | 46 + mcstas-comps/monitors/PSD_monitor_psf_eff.md | 48 + mcstas-comps/monitors/PSDcyl_monitor.md | 44 + mcstas-comps/monitors/PSDlin_diff_monitor.md | 43 + mcstas-comps/monitors/PSDlin_monitor.md | 46 + mcstas-comps/monitors/PolLambda_monitor.md | 47 + mcstas-comps/monitors/Pol_monitor.md | 42 + mcstas-comps/monitors/Res_monitor.md | 62 + mcstas-comps/monitors/Sqq_w_monitor.md | 63 + mcstas-comps/monitors/Sqw_monitor.md | 48 + mcstas-comps/monitors/TOF2E_monitor.md | 48 + mcstas-comps/monitors/TOF2Q_cylPSD_monitor.md | 48 + mcstas-comps/monitors/TOFLambda_monitor.md | 47 + mcstas-comps/monitors/TOFRes_monitor.md | 62 + mcstas-comps/monitors/TOF_PSD_monitor_rad.md | 45 + mcstas-comps/monitors/TOF_cylPSD_monitor.md | 40 + mcstas-comps/monitors/TOF_monitor.md | 44 + mcstas-comps/monitors/TOFlog_monitor.md | 44 + mcstas-comps/obsolete/Beam_spy.md | 36 + mcstas-comps/obsolete/ESS_moderator_short.md | 94 + mcstas-comps/obsolete/V_sample.md | 80 + mcstas-comps/obsolete/Virtual_input.md | 64 + mcstas-comps/obsolete/Virtual_mcnp_input.md | 80 + mcstas-comps/obsolete/Virtual_mcnp_output.md | 53 + .../obsolete/Virtual_mcnp_ss_Guide.md | 70 + .../obsolete/Virtual_mcnp_ss_input.md | 72 + .../obsolete/Virtual_mcnp_ss_output.md | 72 + mcstas-comps/obsolete/Virtual_output.md | 62 + .../obsolete/Virtual_tripoli4_input.md | 78 + .../obsolete/Virtual_tripoli4_output.md | 56 + mcstas-comps/obsolete/Vitess_input.md | 41 + mcstas-comps/obsolete/Vitess_output.md | 46 + mcstas-comps/optics/Absorber.md | 39 + mcstas-comps/optics/Arm.md | 34 + mcstas-comps/optics/Beamstop.md | 44 + mcstas-comps/optics/Bender.md | 87 + mcstas-comps/optics/Collimator_linear.md | 46 + mcstas-comps/optics/Collimator_radial.md | 73 + mcstas-comps/optics/Derotator.md | 40 + mcstas-comps/optics/Diaphragm.md | 39 + mcstas-comps/optics/DiskChopper.md | 68 + mcstas-comps/optics/Elliptic_guide_gravity.md | 127 + mcstas-comps/optics/FZP_simple.md | 47 + mcstas-comps/optics/FermiChopper.md | 69 + mcstas-comps/optics/Filter_gen.md | 81 + mcstas-comps/optics/Guide.md | 57 + mcstas-comps/optics/Guide_anyshape.md | 66 + mcstas-comps/optics/Guide_channeled.md | 69 + mcstas-comps/optics/Guide_gravity.md | 96 + mcstas-comps/optics/Guide_simple.md | 56 + mcstas-comps/optics/Guide_tapering.md | 84 + mcstas-comps/optics/Guide_wavy.md | 63 + mcstas-comps/optics/He3_cell.md | 49 + mcstas-comps/optics/Mask.md | 56 + mcstas-comps/optics/Mirror.md | 55 + mcstas-comps/optics/Monochromator_curved.md | 87 + mcstas-comps/optics/Monochromator_flat.md | 63 + mcstas-comps/optics/Monochromator_pol.md | 88 + mcstas-comps/optics/Place.md | 34 + mcstas-comps/optics/PolAnalyser_ideal.md | 38 + mcstas-comps/optics/Pol_Bfield.md | 85 + mcstas-comps/optics/Pol_Bfield_stop.md | 61 + mcstas-comps/optics/Pol_FieldBox.md | 37 + mcstas-comps/optics/Pol_SF_ideal.md | 40 + mcstas-comps/optics/Pol_bender.md | 92 + mcstas-comps/optics/Pol_constBfield.md | 42 + mcstas-comps/optics/Pol_guide_mirror.md | 65 + mcstas-comps/optics/Pol_guide_vmirror.md | 81 + mcstas-comps/optics/Pol_mirror.md | 76 + mcstas-comps/optics/Pol_tabled_field.md | 45 + mcstas-comps/optics/Refractor.md | 130 + mcstas-comps/optics/Rotator.md | 45 + mcstas-comps/optics/Selector.md | 59 + mcstas-comps/optics/Set_pol.md | 42 + mcstas-comps/optics/Slit.md | 46 + mcstas-comps/optics/V_selector.md | 51 + mcstas-comps/optics/Vitess_ChopperFermi.md | 96 + mcstas-comps/samples/Incoherent.md | 104 + mcstas-comps/samples/Isotropic_Sqw.md | 244 ++ mcstas-comps/samples/Magnon_bcc.md | 79 + mcstas-comps/samples/NCrystal_sample.md | 56 + mcstas-comps/samples/Phonon_simple.md | 69 + mcstas-comps/samples/Powder1.md | 56 + mcstas-comps/samples/PowderN.md | 182 ++ mcstas-comps/samples/Res_sample.md | 65 + mcstas-comps/samples/SANS_spheres2.md | 55 + mcstas-comps/samples/Sans_spheres.md | 54 + mcstas-comps/samples/SasView_model.md | 2150 +++++++++++++++++ mcstas-comps/samples/Single_crystal.md | 206 ++ .../samples/Single_magnetic_crystal.md | 97 + mcstas-comps/samples/TOFRes_sample.md | 74 + mcstas-comps/samples/Tunneling_sample.md | 76 + .../sasmodels/SasView_adsorbed_layer.md | 61 + mcstas-comps/sasmodels/SasView_barbell.md | 61 + .../sasmodels/SasView_barbell_aniso.md | 65 + .../sasmodels/SasView_bcc_paracrystal.md | 59 + .../SasView_bcc_paracrystal_aniso.md | 65 + .../sasmodels/SasView_binary_hard_sphere.md | 62 + mcstas-comps/sasmodels/SasView_broad_peak.md | 61 + .../sasmodels/SasView_capped_cylinder.md | 61 + .../SasView_capped_cylinder_aniso.md | 65 + .../sasmodels/SasView_core_multi_shell.md | 38 + .../sasmodels/SasView_core_shell_bicelle.md | 65 + .../SasView_core_shell_bicelle_aniso.md | 69 + .../SasView_core_shell_bicelle_elliptical.md | 66 + ...iew_core_shell_bicelle_elliptical_aniso.md | 72 + ...ore_shell_bicelle_elliptical_belt_rough.md | 67 + ...ell_bicelle_elliptical_belt_rough_aniso.md | 73 + .../sasmodels/SasView_core_shell_cylinder.md | 62 + .../SasView_core_shell_cylinder_aniso.md | 66 + .../sasmodels/SasView_core_shell_ellipsoid.md | 62 + .../SasView_core_shell_ellipsoid_aniso.md | 66 + .../SasView_core_shell_parallelepiped.md | 70 + ...SasView_core_shell_parallelepiped_aniso.md | 76 + .../sasmodels/SasView_core_shell_sphere.md | 60 + .../sasmodels/SasView_correlation_length.md | 59 + mcstas-comps/sasmodels/SasView_cylinder.md | 59 + .../sasmodels/SasView_cylinder_aniso.md | 63 + mcstas-comps/sasmodels/SasView_dab.md | 55 + mcstas-comps/sasmodels/SasView_ellipsoid.md | 59 + .../sasmodels/SasView_ellipsoid_aniso.md | 63 + .../sasmodels/SasView_elliptical_cylinder.md | 60 + .../SasView_elliptical_cylinder_aniso.md | 66 + .../sasmodels/SasView_fcc_paracrystal.md | 59 + .../SasView_fcc_paracrystal_aniso.md | 65 + .../sasmodels/SasView_flexible_cylinder.md | 61 + .../SasView_flexible_cylinder_elliptical.md | 62 + mcstas-comps/sasmodels/SasView_fractal.md | 61 + .../sasmodels/SasView_fractal_core_shell.md | 64 + .../sasmodels/SasView_fuzzy_sphere.md | 58 + .../sasmodels/SasView_gauss_lorentz_gel.md | 59 + .../sasmodels/SasView_gaussian_peak.md | 55 + mcstas-comps/sasmodels/SasView_gel_fit.md | 60 + mcstas-comps/sasmodels/SasView_guinier.md | 55 + .../sasmodels/SasView_guinier_porod.md | 57 + mcstas-comps/sasmodels/SasView_hardsphere.md | 56 + mcstas-comps/sasmodels/SasView_hayter_msa.md | 61 + .../sasmodels/SasView_hollow_cylinder.md | 61 + .../SasView_hollow_cylinder_aniso.md | 65 + .../SasView_hollow_rectangular_prism.md | 61 + .../SasView_hollow_rectangular_prism_aniso.md | 67 + ...iew_hollow_rectangular_prism_thin_walls.md | 59 + mcstas-comps/sasmodels/SasView_lamellar_hg.md | 60 + .../SasView_lamellar_hg_stack_caille.md | 63 + .../SasView_lamellar_stack_caille.md | 60 + .../SasView_lamellar_stack_paracrystal.md | 60 + mcstas-comps/sasmodels/SasView_line.md | 55 + .../sasmodels/SasView_linear_pearls.md | 59 + mcstas-comps/sasmodels/SasView_lorentz.md | 55 + .../sasmodels/SasView_mass_fractal.md | 58 + .../sasmodels/SasView_mass_surface_fractal.md | 59 + .../sasmodels/SasView_mono_gauss_coil.md | 56 + .../sasmodels/SasView_multilayer_vesicle.md | 63 + mcstas-comps/sasmodels/SasView_onion.md | 38 + .../sasmodels/SasView_parallelepiped.md | 61 + .../sasmodels/SasView_parallelepiped_aniso.md | 67 + .../sasmodels/SasView_peak_lorentz.md | 55 + .../sasmodels/SasView_pearl_necklace.md | 62 + .../sasmodels/SasView_poly_gauss_coil.md | 57 + .../sasmodels/SasView_polymer_excl_volume.md | 56 + .../sasmodels/SasView_polymer_micelle.md | 65 + mcstas-comps/sasmodels/SasView_porod.md | 53 + mcstas-comps/sasmodels/SasView_power_law.md | 54 + mcstas-comps/sasmodels/SasView_pringle.md | 61 + mcstas-comps/sasmodels/SasView_raspberry.md | 64 + .../sasmodels/SasView_rectangular_prism.md | 52 + .../SasView_rectangular_prism_aniso.md | 65 + mcstas-comps/sasmodels/SasView_rpa.md | 38 + .../sasmodels/SasView_sc_paracrystal.md | 59 + .../sasmodels/SasView_sc_paracrystal_aniso.md | 65 + mcstas-comps/sasmodels/SasView_sphere.md | 57 + mcstas-comps/sasmodels/SasView_spinodal.md | 55 + mcstas-comps/sasmodels/SasView_squarewell.md | 58 + .../sasmodels/SasView_stacked_disks.md | 64 + .../sasmodels/SasView_stacked_disks_aniso.md | 68 + .../sasmodels/SasView_star_polymer.md | 56 + .../sasmodels/SasView_stickyhardsphere.md | 58 + mcstas-comps/sasmodels/SasView_superball.md | 58 + .../sasmodels/SasView_superball_aniso.md | 64 + .../sasmodels/SasView_surface_fractal.md | 58 + .../sasmodels/SasView_teubner_strey.md | 58 + .../sasmodels/SasView_triaxial_ellipsoid.md | 61 + .../SasView_triaxial_ellipsoid_aniso.md | 67 + .../sasmodels/SasView_two_lorentzian.md | 61 + .../sasmodels/SasView_two_power_law.md | 57 + mcstas-comps/sasmodels/SasView_vesicle.md | 60 + mcstas-comps/sources/Adapt_check.md | 40 + mcstas-comps/sources/ESS_butterfly.md | 109 + mcstas-comps/sources/ESS_moderator.md | 83 + mcstas-comps/sources/Moderator.md | 44 + mcstas-comps/sources/Monitor_Optimizer.md | 47 + mcstas-comps/sources/Source_4PI.md | 38 + mcstas-comps/sources/Source_Maxwell_3.md | 58 + mcstas-comps/sources/Source_Optimizer.md | 103 + mcstas-comps/sources/Source_adapt.md | 80 + mcstas-comps/sources/Source_div.md | 62 + mcstas-comps/sources/Source_div_quasi.md | 64 + mcstas-comps/sources/Source_gen.md | 123 + mcstas-comps/sources/Source_simple.md | 54 + mcstas-comps/union/AF_HB_1D_process.md | 57 + .../union/IncoherentPhonon_process.md | 60 + mcstas-comps/union/Incoherent_process.md | 57 + mcstas-comps/union/Mirror_surface.md | 61 + mcstas-comps/union/NCrystal_process.md | 71 + mcstas-comps/union/Non_process.md | 54 + mcstas-comps/union/PhononSimple_process.md | 62 + mcstas-comps/union/Powder_process.md | 62 + mcstas-comps/union/Single_crystal_process.md | 78 + mcstas-comps/union/Template_process.md | 57 + mcstas-comps/union/Template_surface.md | 63 + mcstas-comps/union/Texture_process.md | 53 + .../union/Union_abs_logger_1D_space.md | 82 + .../union/Union_abs_logger_1D_space_event.md | 92 + .../union/Union_abs_logger_1D_space_tof.md | 85 + ...Union_abs_logger_1D_space_tof_to_lambda.md | 116 + .../union/Union_abs_logger_1D_time.md | 83 + .../union/Union_abs_logger_2D_space.md | 92 + mcstas-comps/union/Union_abs_logger_event.md | 82 + mcstas-comps/union/Union_abs_logger_nD.md | 106 + mcstas-comps/union/Union_box.md | 82 + mcstas-comps/union/Union_conditional_PSD.md | 72 + .../union/Union_conditional_standard.md | 72 + mcstas-comps/union/Union_cone.md | 75 + mcstas-comps/union/Union_cylinder.md | 73 + mcstas-comps/union/Union_init.md | 46 + mcstas-comps/union/Union_logger_1D.md | 72 + mcstas-comps/union/Union_logger_2DQ.md | 75 + mcstas-comps/union/Union_logger_2D_kf.md | 76 + mcstas-comps/union/Union_logger_2D_kf_time.md | 80 + mcstas-comps/union/Union_logger_2D_space.md | 77 + .../union/Union_logger_2D_space_time.md | 80 + mcstas-comps/union/Union_logger_3D_space.md | 81 + mcstas-comps/union/Union_make_material.md | 54 + mcstas-comps/union/Union_master.md | 58 + mcstas-comps/union/Union_master_GPU.md | 55 + mcstas-comps/union/Union_mesh.md | 79 + mcstas-comps/union/Union_sphere.md | 68 + mcstas-comps/union/Union_stop.md | 46 + 659 files changed, 38596 insertions(+) create mode 100644 mcstas-comps/contrib/Al_window.md create mode 100644 mcstas-comps/contrib/CavitiesIn.md create mode 100644 mcstas-comps/contrib/CavitiesOut.md create mode 100644 mcstas-comps/contrib/Collimator_ROC.md create mode 100644 mcstas-comps/contrib/Commodus_I3.md create mode 100644 mcstas-comps/contrib/Conics_EH.md create mode 100644 mcstas-comps/contrib/Conics_HE.md create mode 100644 mcstas-comps/contrib/Conics_PH.md create mode 100644 mcstas-comps/contrib/Conics_PP.md create mode 100644 mcstas-comps/contrib/E_4PI.md create mode 100644 mcstas-comps/contrib/Exact_radial_coll.md create mode 100644 mcstas-comps/contrib/FermiChopper_ILL.md create mode 100644 mcstas-comps/contrib/Fermi_chop2a.md create mode 100644 mcstas-comps/contrib/Filter_graphite.md create mode 100644 mcstas-comps/contrib/FlatEllipse_finite_mirror.md create mode 100644 mcstas-comps/contrib/Foil_flipper_magnet.md create mode 100644 mcstas-comps/contrib/GISANS_sample.md create mode 100644 mcstas-comps/contrib/Guide_anyshape_r.md create mode 100644 mcstas-comps/contrib/Guide_curved.md create mode 100644 mcstas-comps/contrib/Guide_four_side.md create mode 100644 mcstas-comps/contrib/Guide_gravity_psd.md create mode 100644 mcstas-comps/contrib/Guide_honeycomb.md create mode 100644 mcstas-comps/contrib/Guide_m.md create mode 100644 mcstas-comps/contrib/Guide_multichannel.md create mode 100644 mcstas-comps/contrib/ISIS_moderator.md create mode 100644 mcstas-comps/contrib/Lens.md create mode 100644 mcstas-comps/contrib/Lens_simple.md create mode 100644 mcstas-comps/contrib/Mirror_Curved_Bispectral.md create mode 100644 mcstas-comps/contrib/Mirror_Elliptic.md create mode 100644 mcstas-comps/contrib/Mirror_Elliptic_Bispectral.md create mode 100644 mcstas-comps/contrib/Mirror_Parabolic.md create mode 100644 mcstas-comps/contrib/Monochromator_2foc.md create mode 100644 mcstas-comps/contrib/Monochromator_bent.md create mode 100644 mcstas-comps/contrib/Monochromator_bent_complex.md create mode 100644 mcstas-comps/contrib/MultiDiskChopper.md create mode 100644 mcstas-comps/contrib/Multilayer_Sample.md create mode 100644 mcstas-comps/contrib/NMO.md create mode 100644 mcstas-comps/contrib/NPI_tof_dhkl_detector.md create mode 100644 mcstas-comps/contrib/NPI_tof_theta_monitor.md create mode 100644 mcstas-comps/contrib/PSD_Detector.md create mode 100644 mcstas-comps/contrib/PSD_Pol_monitor.md create mode 100644 mcstas-comps/contrib/PSD_monitor_rad.md create mode 100644 mcstas-comps/contrib/PSD_spinDmon.md create mode 100644 mcstas-comps/contrib/PSD_spinUmon.md create mode 100644 mcstas-comps/contrib/PerfectCrystal.md create mode 100644 mcstas-comps/contrib/Pol_bender_tapering.md create mode 100644 mcstas-comps/contrib/Pol_pi_2_rotator.md create mode 100644 mcstas-comps/contrib/Pol_triafield.md create mode 100644 mcstas-comps/contrib/Radial_div.md create mode 100644 mcstas-comps/contrib/SANSCurve.md create mode 100644 mcstas-comps/contrib/SANSCylinders.md create mode 100644 mcstas-comps/contrib/SANSEllipticCylinders.md create mode 100644 mcstas-comps/contrib/SANSLiposomes.md create mode 100644 mcstas-comps/contrib/SANSNanodiscs.md create mode 100644 mcstas-comps/contrib/SANSNanodiscsFast.md create mode 100644 mcstas-comps/contrib/SANSNanodiscsWithTags.md create mode 100644 mcstas-comps/contrib/SANSNanodiscsWithTagsFast.md create mode 100644 mcstas-comps/contrib/SANSPDB.md create mode 100644 mcstas-comps/contrib/SANSPDBFast.md create mode 100644 mcstas-comps/contrib/SANSQMonitor.md create mode 100644 mcstas-comps/contrib/SANSShells.md create mode 100644 mcstas-comps/contrib/SANSSpheres.md create mode 100644 mcstas-comps/contrib/SANSSpheresPolydisperse.md create mode 100644 mcstas-comps/contrib/SANS_AnySamp.md create mode 100644 mcstas-comps/contrib/SANS_DebyeS.md create mode 100644 mcstas-comps/contrib/SANS_Guinier.md create mode 100644 mcstas-comps/contrib/SANS_Liposomes_Abs.md create mode 100644 mcstas-comps/contrib/SANS_benchmark2.md create mode 100644 mcstas-comps/contrib/SNS_source.md create mode 100644 mcstas-comps/contrib/SNS_source_analytic.md create mode 100644 mcstas-comps/contrib/Sans_liposomes_new.md create mode 100644 mcstas-comps/contrib/Sapphire_Filter.md create mode 100644 mcstas-comps/contrib/SiC.md create mode 100644 mcstas-comps/contrib/Single_crystal_inelastic.md create mode 100644 mcstas-comps/contrib/Source_custom.md create mode 100644 mcstas-comps/contrib/Source_gen4.md create mode 100644 mcstas-comps/contrib/Source_multi_surfaces.md create mode 100644 mcstas-comps/contrib/Source_pulsed.md create mode 100644 mcstas-comps/contrib/Spherical_Backscattering_Analyser.md create mode 100644 mcstas-comps/contrib/Spin_random.md create mode 100644 mcstas-comps/contrib/Spot_sample.md create mode 100644 mcstas-comps/contrib/StatisticalChopper.md create mode 100644 mcstas-comps/contrib/StatisticalChopper_Monitor.md create mode 100644 mcstas-comps/contrib/SupermirrorFlat.md create mode 100644 mcstas-comps/contrib/TOF2Q_cyl_monitor.md create mode 100644 mcstas-comps/contrib/TOFSANSdet.md create mode 100644 mcstas-comps/contrib/TOF_PSDmonitor.md create mode 100644 mcstas-comps/contrib/TOF_PSDmonitor_toQ.md create mode 100644 mcstas-comps/contrib/Transmission_V_polarisator.md create mode 100644 mcstas-comps/contrib/Transmission_polarisatorABSnT.md create mode 100644 mcstas-comps/contrib/Vertical_Bender.md create mode 100644 mcstas-comps/contrib/Vertical_T0a.md create mode 100644 mcstas-comps/contrib/ViewModISIS.md create mode 100644 mcstas-comps/contrib/multi_pipe.md create mode 100644 mcstas-comps/examples/BNL/BNL_H8/BNL_H8.md create mode 100644 mcstas-comps/examples/BNL/BNL_H8_simple/BNL_H8_simple.md create mode 100644 mcstas-comps/examples/BNL/h8_test_legacy/h8_test_legacy.md create mode 100644 mcstas-comps/examples/DTU/Test_FZP_simple/Test_FZP_simple.md create mode 100644 mcstas-comps/examples/DTU/Vin_test/Vin_test.md create mode 100644 mcstas-comps/examples/DTU/Vout_test/Vout_test.md create mode 100644 mcstas-comps/examples/ESS/ESS_BEER_MCPL/ESS_BEER_MCPL.md create mode 100644 mcstas-comps/examples/ESS/ESS_IN5_reprate/ESS_IN5_reprate.md create mode 100644 mcstas-comps/examples/ESS/ESS_Testbeamline_HZB_V20/ESS_Testbeamline_HZB_V20.md create mode 100644 mcstas-comps/examples/ESS/ESS_butterfly_Guide_curved_test/ESS_butterfly_Guide_curved_test.md create mode 100644 mcstas-comps/examples/ESS/ESS_butterfly_MCPL_test/ESS_butterfly_MCPL_test.md create mode 100644 mcstas-comps/examples/ESS/ESS_butterfly_test/ESS_butterfly_test.md create mode 100644 mcstas-comps/examples/ESS/ESS_butterfly_tfocus_NOFOCUS_test/ESS_butterfly_tfocus_NOFOCUS_test.md create mode 100644 mcstas-comps/examples/ESS/ESS_butterfly_tfocus_test/ESS_butterfly_tfocus_test.md create mode 100644 mcstas-comps/examples/ESS/ESS_mcpl2hist/ESS_mcpl2hist.md create mode 100644 mcstas-comps/examples/FZ_Juelich/FZJ_BenchmarkSfin2/FZJ_BenchmarkSfin2.md create mode 100644 mcstas-comps/examples/FZ_Juelich/FZJ_KWS2_Lens/FZJ_KWS2_Lens.md create mode 100644 mcstas-comps/examples/FZ_Juelich/FZJ_SANS_KWS2_AnySample/FZJ_SANS_KWS2_AnySample.md create mode 100644 mcstas-comps/examples/HZB/HZB_FLEX/HZB_FLEX.md create mode 100644 mcstas-comps/examples/HZB/HZB_NEAT/HZB_NEAT.md create mode 100644 mcstas-comps/examples/HighNESS/WOFSANS/WOFSANS.md create mode 100644 mcstas-comps/examples/ILL/ILL_BRISP/ILL_BRISP.md create mode 100644 mcstas-comps/examples/ILL/ILL_D2B/ILL_D2B.md create mode 100644 mcstas-comps/examples/ILL/ILL_D2B_noenv/ILL_D2B_noenv.md create mode 100644 mcstas-comps/examples/ILL/ILL_D4/ILL_D4.md create mode 100644 mcstas-comps/examples/ILL/ILL_H10_IN8/ILL_H10_IN8.md create mode 100644 mcstas-comps/examples/ILL/ILL_H113/ILL_H113.md create mode 100644 mcstas-comps/examples/ILL/ILL_H13_IN20/ILL_H13_IN20.md create mode 100644 mcstas-comps/examples/ILL/ILL_H142/ILL_H142.md create mode 100644 mcstas-comps/examples/ILL/ILL_H142_D33/ILL_H142_D33.md create mode 100644 mcstas-comps/examples/ILL/ILL_H142_IN12/ILL_H142_IN12.md create mode 100644 mcstas-comps/examples/ILL/ILL_H142_simple/ILL_H142_simple.md create mode 100644 mcstas-comps/examples/ILL/ILL_H143_LADI/ILL_H143_LADI.md create mode 100644 mcstas-comps/examples/ILL/ILL_H15/ILL_H15.md create mode 100644 mcstas-comps/examples/ILL/ILL_H15_D11/ILL_H15_D11.md create mode 100644 mcstas-comps/examples/ILL/ILL_H15_IN6/ILL_H15_IN6.md create mode 100644 mcstas-comps/examples/ILL/ILL_H15_SAM/ILL_H15_SAM.md create mode 100644 mcstas-comps/examples/ILL/ILL_H16/ILL_H16.md create mode 100644 mcstas-comps/examples/ILL/ILL_H16_IN5/ILL_H16_IN5.md create mode 100644 mcstas-comps/examples/ILL/ILL_H22/ILL_H22.md create mode 100644 mcstas-comps/examples/ILL/ILL_H22_D1A/ILL_H22_D1A.md create mode 100644 mcstas-comps/examples/ILL/ILL_H22_D1A_noenv/ILL_H22_D1A_noenv.md create mode 100644 mcstas-comps/examples/ILL/ILL_H22_D1B/ILL_H22_D1B.md create mode 100644 mcstas-comps/examples/ILL/ILL_H22_D1B_noenv/ILL_H22_D1B_noenv.md create mode 100644 mcstas-comps/examples/ILL/ILL_H22_VIVALDI/ILL_H22_VIVALDI.md create mode 100644 mcstas-comps/examples/ILL/ILL_H24/ILL_H24.md create mode 100644 mcstas-comps/examples/ILL/ILL_H25/ILL_H25.md create mode 100644 mcstas-comps/examples/ILL/ILL_H25_IN22/ILL_H25_IN22.md create mode 100644 mcstas-comps/examples/ILL/ILL_H5/ILL_H5.md create mode 100644 mcstas-comps/examples/ILL/ILL_H512_D22/ILL_H512_D22.md create mode 100644 mcstas-comps/examples/ILL/ILL_H53/ILL_H53.md create mode 100644 mcstas-comps/examples/ILL/ILL_H53_D16/ILL_H53_D16.md create mode 100644 mcstas-comps/examples/ILL/ILL_H53_IN14/ILL_H53_IN14.md create mode 100644 mcstas-comps/examples/ILL/ILL_H5_new/ILL_H5_new.md create mode 100644 mcstas-comps/examples/ILL/ILL_H8_IN1/ILL_H8_IN1.md create mode 100644 mcstas-comps/examples/ILL/ILL_IN13/ILL_IN13.md create mode 100644 mcstas-comps/examples/ILL/ILL_IN4/ILL_IN4.md create mode 100644 mcstas-comps/examples/ILL/ILL_IN5/ILL_IN5.md create mode 100644 mcstas-comps/examples/ILL/ILL_IN5_Spots/ILL_IN5_Spots.md create mode 100644 mcstas-comps/examples/ILL/ILL_IN6/ILL_IN6.md create mode 100644 mcstas-comps/examples/ILL/ILL_Lagrange/ILL_Lagrange.md create mode 100644 mcstas-comps/examples/ILL/ILL_SALSA/ILL_SALSA.md create mode 100644 mcstas-comps/examples/ISIS/ISIS_CRISP/ISIS_CRISP.md create mode 100644 mcstas-comps/examples/ISIS/ISIS_GEM/ISIS_GEM.md create mode 100644 mcstas-comps/examples/ISIS/ISIS_HET/ISIS_HET.md create mode 100644 mcstas-comps/examples/ISIS/ISIS_IMAT/ISIS_IMAT.md create mode 100644 mcstas-comps/examples/ISIS/ISIS_LET/ISIS_LET.md create mode 100644 mcstas-comps/examples/ISIS/ISIS_MERLIN/ISIS_MERLIN.md create mode 100644 mcstas-comps/examples/ISIS/ISIS_OSIRIS/ISIS_OSIRIS.md create mode 100644 mcstas-comps/examples/ISIS/ISIS_Prisma2/ISIS_Prisma2.md create mode 100644 mcstas-comps/examples/ISIS/ISIS_SANS2d/ISIS_SANS2d.md create mode 100644 mcstas-comps/examples/ISIS/ISIS_TOSCA_preupgrade/ISIS_TOSCA_preupgrade.md create mode 100644 mcstas-comps/examples/ISIS/ISIS_TS1_Brilliance/ISIS_TS1_Brilliance.md create mode 100644 mcstas-comps/examples/ISIS/ISIS_TS2_Brilliance/ISIS_TS2_Brilliance.md create mode 100644 mcstas-comps/examples/ISIS/ISIS_test/ISIS_test.md create mode 100644 mcstas-comps/examples/ISIS/ViewModISIStest/ViewModISIStest.md create mode 100644 mcstas-comps/examples/LLB/LLB_6T2/LLB_6T2.md create mode 100644 mcstas-comps/examples/Mantid/ILL_H16_IN5_Mantid/ILL_H16_IN5_Mantid.md create mode 100644 mcstas-comps/examples/Mantid/ILL_H16_Mantid/ILL_H16_Mantid.md create mode 100644 mcstas-comps/examples/Mantid/ILL_IN5_Mantid/ILL_IN5_Mantid.md create mode 100644 mcstas-comps/examples/Mantid/ISIS_SANS2d_Mantid/ISIS_SANS2d_Mantid.md create mode 100644 mcstas-comps/examples/Mantid/ISIS_TOSCA_preupgrade_Mantid/ISIS_TOSCA_preupgrade_Mantid.md create mode 100644 mcstas-comps/examples/Mantid/SNS_ARCS_Mantid/SNS_ARCS_Mantid.md create mode 100644 mcstas-comps/examples/Mantid/Tools_ONION/Tools_ONION.md create mode 100644 mcstas-comps/examples/Mantid/templateSANS2_Mantid/templateSANS2_Mantid.md create mode 100644 mcstas-comps/examples/Mantid/templateSANS_Mantid/templateSANS_Mantid.md create mode 100644 mcstas-comps/examples/Mantid/templateSasView_Mantid/templateSasView_Mantid.md create mode 100644 mcstas-comps/examples/Mantid/templateVanadiumMultipleScat_Mantid/templateVanadiumMultipleScat_Mantid.md create mode 100644 mcstas-comps/examples/NCrystal/NCrystal_example/NCrystal_example.md create mode 100644 mcstas-comps/examples/NCrystal/Union_NCrystal_example/Union_NCrystal_example.md create mode 100644 mcstas-comps/examples/NCrystal/Union_NCrystal_mix_example/Union_NCrystal_mix_example.md create mode 100644 mcstas-comps/examples/Necsa/SAFARI_MPISI/SAFARI_MPISI.md create mode 100644 mcstas-comps/examples/Necsa/SAFARI_PITSI/SAFARI_PITSI.md create mode 100644 mcstas-comps/examples/PSI/PSI_DMC/PSI_DMC.md create mode 100644 mcstas-comps/examples/PSI/PSI_DMC_simple/PSI_DMC_simple.md create mode 100644 mcstas-comps/examples/PSI/PSI_Focus/PSI_Focus.md create mode 100644 mcstas-comps/examples/PSI/PSI_source/PSI_source.md create mode 100644 mcstas-comps/examples/PSI/RITA-II/RITA-II.md create mode 100644 mcstas-comps/examples/Risoe/TAS1_C1/TAS1_C1.md create mode 100644 mcstas-comps/examples/Risoe/TAS1_C1_Tilt/TAS1_C1_Tilt.md create mode 100644 mcstas-comps/examples/Risoe/TAS1_Diff_Powder/TAS1_Diff_Powder.md create mode 100644 mcstas-comps/examples/Risoe/TAS1_Diff_Slit/TAS1_Diff_Slit.md create mode 100644 mcstas-comps/examples/Risoe/TAS1_Diff_Vana/TAS1_Diff_Vana.md create mode 100644 mcstas-comps/examples/Risoe/TAS1_Powder/TAS1_Powder.md create mode 100644 mcstas-comps/examples/Risoe/TAS1_Vana/TAS1_Vana.md create mode 100644 mcstas-comps/examples/SINE2020/McStas_Isotropic_Sqw/McStas_Isotropic_Sqw.md create mode 100644 mcstas-comps/examples/SINE2020/McStas_PowderN/McStas_PowderN.md create mode 100644 mcstas-comps/examples/SINE2020/McStas_Single_crystal/McStas_Single_crystal.md create mode 100644 mcstas-comps/examples/SNS/Gallmeier_SNS_decoupled_poisoned/Gallmeier_SNS_decoupled_poisoned.md create mode 100644 mcstas-comps/examples/SNS/Granroth_SNS_decoupled_poisoned/Granroth_SNS_decoupled_poisoned.md create mode 100644 mcstas-comps/examples/SNS/Mezei_SNS_decoupled_poisoned/Mezei_SNS_decoupled_poisoned.md create mode 100644 mcstas-comps/examples/SNS/SNS_ARCS/SNS_ARCS.md create mode 100644 mcstas-comps/examples/SNS/SNS_BASIS/SNS_BASIS.md create mode 100644 mcstas-comps/examples/SNS/SNS_analytic_test/SNS_analytic_test.md create mode 100644 mcstas-comps/examples/SNS/SNS_test/SNS_test.md create mode 100644 mcstas-comps/examples/TRIGA/RTP_DIF/RTP_DIF.md create mode 100644 mcstas-comps/examples/TRIGA/RTP_Laue/RTP_Laue.md create mode 100644 mcstas-comps/examples/TRIGA/RTP_NeutronRadiography/RTP_NeutronRadiography.md create mode 100644 mcstas-comps/examples/TRIGA/RTP_SANS/RTP_SANS.md create mode 100644 mcstas-comps/examples/TUDelft/SEMSANS_Delft/SEMSANS_Delft.md create mode 100644 mcstas-comps/examples/TUDelft/SEMSANS_instrument/SEMSANS_instrument.md create mode 100644 mcstas-comps/examples/TUDelft/SESANS_Delft/SESANS_Delft.md create mode 100644 mcstas-comps/examples/Templates/BTsimple/BTsimple.md create mode 100644 mcstas-comps/examples/Templates/Demo_shape_primitives/Demo_shape_primitives.md create mode 100644 mcstas-comps/examples/Templates/Demo_shape_primitives_simple/Demo_shape_primitives_simple.md create mode 100644 mcstas-comps/examples/Templates/TOF_Reflectometer/TOF_Reflectometer.md create mode 100644 mcstas-comps/examples/Templates/Test_SasView_bcc_paracrystal_aniso/Test_SasView_bcc_paracrystal_aniso.md create mode 100644 mcstas-comps/examples/Templates/Test_SasView_guinier/Test_SasView_guinier.md create mode 100644 mcstas-comps/examples/Templates/Tomography/Tomography.md create mode 100644 mcstas-comps/examples/Templates/mini/mini.md create mode 100644 mcstas-comps/examples/Templates/template/template.md create mode 100644 mcstas-comps/examples/Templates/templateDIFF/templateDIFF.md create mode 100644 mcstas-comps/examples/Templates/templateLaue/templateLaue.md create mode 100644 mcstas-comps/examples/Templates/templateNMX/templateNMX.md create mode 100644 mcstas-comps/examples/Templates/templateNMX_TOF/templateNMX_TOF.md create mode 100644 mcstas-comps/examples/Templates/templateSANS/templateSANS.md create mode 100644 mcstas-comps/examples/Templates/templateSANS2/templateSANS2.md create mode 100644 mcstas-comps/examples/Templates/templateSANS_MCPL/templateSANS_MCPL.md create mode 100644 mcstas-comps/examples/Templates/templateSasView/templateSasView.md create mode 100644 mcstas-comps/examples/Templates/templateTAS/templateTAS.md create mode 100644 mcstas-comps/examples/Templates/templateTOF/templateTOF.md create mode 100644 mcstas-comps/examples/Templates/template_simple/template_simple.md create mode 100644 mcstas-comps/examples/Tests_MCPL_etc/Test_MCPL_input/Test_MCPL_input.md create mode 100644 mcstas-comps/examples/Tests_MCPL_etc/Test_MCPL_input_once/Test_MCPL_input_once.md create mode 100644 mcstas-comps/examples/Tests_MCPL_etc/Test_MCPL_output/Test_MCPL_output.md create mode 100644 mcstas-comps/examples/Tests_RNG/Test_RNG_rand01/Test_RNG_rand01.md create mode 100644 mcstas-comps/examples/Tests_RNG/Test_RNG_randnorm/Test_RNG_randnorm.md create mode 100644 mcstas-comps/examples/Tests_RNG/Test_RNG_randpm1/Test_RNG_randpm1.md create mode 100644 mcstas-comps/examples/Tests_RNG/Test_RNG_randtriangle/Test_RNG_randtriangle.md create mode 100644 mcstas-comps/examples/Tests_RNG/Test_RNG_randvec_target_circle/Test_RNG_randvec_target_circle.md create mode 100644 mcstas-comps/examples/Tests_RNG/Test_RNG_randvec_target_rect/Test_RNG_randvec_target_rect.md create mode 100644 mcstas-comps/examples/Tests_RNG/Test_RNG_randvec_target_rect_angular/Test_RNG_randvec_target_rect_angular.md create mode 100644 mcstas-comps/examples/Tests_grammar/Test_GROUP/Test_GROUP.md create mode 100644 mcstas-comps/examples/Tests_grammar/Test_GROUP_restore.md create mode 100644 mcstas-comps/examples/Tests_grammar/Test_Jump_Iterate/Test_Jump_Iterate.md create mode 100644 mcstas-comps/examples/Tests_grammar/Unittest_ALLOW_BACKPROP/Unittest_ALLOW_BACKPROP.md create mode 100644 mcstas-comps/examples/Tests_grammar/Unittest_JUMP_ITERATE/Unittest_JUMP_ITERATE.md create mode 100644 mcstas-comps/examples/Tests_grammar/Unittest_JUMP_WHEN/Unittest_JUMP_WHEN.md create mode 100644 mcstas-comps/examples/Tests_grammar/Unittest_SPLIT/Unittest_SPLIT.md create mode 100644 mcstas-comps/examples/Tests_grammar/Unittest_SPLIT_sample/Unittest_SPLIT_sample.md create mode 100644 mcstas-comps/examples/Tests_monitors/Test_Cyl_monitors/Test_Cyl_monitors.md create mode 100644 mcstas-comps/examples/Tests_monitors/Test_Monitor_nD/Test_Monitor_nD.md create mode 100644 mcstas-comps/examples/Tests_monitors/Test_TOF_PSDmonitor_toQ/Test_TOF_PSDmonitor_toQ.md create mode 100644 mcstas-comps/examples/Tests_optics/Test_Al_windows/Test_Al_windows.md create mode 100644 mcstas-comps/examples/Tests_optics/Test_Collimator_Radial/Test_Collimator_Radial.md create mode 100644 mcstas-comps/examples/Tests_optics/Test_Conics_pairs/Test_Conics_pairs.md create mode 100644 mcstas-comps/examples/Tests_optics/Test_DiskChoppers/Test_DiskChoppers.md create mode 100644 mcstas-comps/examples/Tests_optics/Test_DiskChoppers2/Test_DiskChoppers2.md create mode 100644 mcstas-comps/examples/Tests_optics/Test_Fermi/Test_Fermi.md create mode 100644 mcstas-comps/examples/Tests_optics/Test_FocalisationMirrors/Test_FocalisationMirrors.md create mode 100644 mcstas-comps/examples/Tests_optics/Test_Guides/Test_Guides.md create mode 100644 mcstas-comps/examples/Tests_optics/Test_Guides_Curved/Test_Guides_Curved.md create mode 100644 mcstas-comps/examples/Tests_optics/Test_Lens/Test_Lens.md create mode 100644 mcstas-comps/examples/Tests_optics/Test_Monochromator_bent/Test_Monochromator_bent.md create mode 100644 mcstas-comps/examples/Tests_optics/Test_Monochromator_bent_complex/Test_Monochromator_bent_complex.md create mode 100644 mcstas-comps/examples/Tests_optics/Test_Monochromators/Test_Monochromators.md create mode 100644 mcstas-comps/examples/Tests_optics/Test_NMO/Test_NMO.md create mode 100644 mcstas-comps/examples/Tests_optics/Test_PSD_Detector/Test_PSD_Detector.md create mode 100644 mcstas-comps/examples/Tests_optics/Test_Pol_Bender_Vs_Guide_Curved/Test_Pol_Bender_Vs_Guide_Curved.md create mode 100644 mcstas-comps/examples/Tests_optics/Test_Rotator/Test_Rotator.md create mode 100644 mcstas-comps/examples/Tests_optics/Test_Selectors/Test_Selectors.md create mode 100644 mcstas-comps/examples/Tests_optics/Test_Source_pulsed/Test_Source_pulsed.md create mode 100644 mcstas-comps/examples/Tests_optics/Test_Sources/Test_Sources.md create mode 100644 mcstas-comps/examples/Tests_optics/Test_StatisticalChopper/Test_StatisticalChopper.md create mode 100644 mcstas-comps/examples/Tests_optics/Test_Vertical_Bender/Test_Vertical_Bender.md create mode 100644 mcstas-comps/examples/Tests_optics/Test_filters/Test_filters.md create mode 100644 mcstas-comps/examples/Tests_optics/Test_focus/Test_focus.md create mode 100644 mcstas-comps/examples/Tests_other/test_File/test_File.md create mode 100644 mcstas-comps/examples/Tests_polarization/He3_spin_filter/He3_spin_filter.md create mode 100644 mcstas-comps/examples/Tests_polarization/SE_example/SE_example.md create mode 100644 mcstas-comps/examples/Tests_polarization/SE_example2/SE_example2.md create mode 100644 mcstas-comps/examples/Tests_polarization/Supermirror_thin_substrate/Supermirror_thin_substrate.md create mode 100644 mcstas-comps/examples/Tests_polarization/Test_Magnetic_Constant/Test_Magnetic_Constant.md create mode 100644 mcstas-comps/examples/Tests_polarization/Test_Magnetic_Majorana/Test_Magnetic_Majorana.md create mode 100644 mcstas-comps/examples/Tests_polarization/Test_Magnetic_Rotation/Test_Magnetic_Rotation.md create mode 100644 mcstas-comps/examples/Tests_polarization/Test_Pol_Bender/Test_Pol_Bender.md create mode 100644 mcstas-comps/examples/Tests_polarization/Test_Pol_FieldBox/Test_Pol_FieldBox.md create mode 100644 mcstas-comps/examples/Tests_polarization/Test_Pol_Guide_Vmirror/Test_Pol_Guide_Vmirror.md create mode 100644 mcstas-comps/examples/Tests_polarization/Test_Pol_Guide_mirror/Test_Pol_Guide_mirror.md create mode 100644 mcstas-comps/examples/Tests_polarization/Test_Pol_MSF/Test_Pol_MSF.md create mode 100644 mcstas-comps/examples/Tests_polarization/Test_Pol_Mirror/Test_Pol_Mirror.md create mode 100644 mcstas-comps/examples/Tests_polarization/Test_Pol_SF_ideal/Test_Pol_SF_ideal.md create mode 100644 mcstas-comps/examples/Tests_polarization/Test_Pol_Set/Test_Pol_Set.md create mode 100644 mcstas-comps/examples/Tests_polarization/Test_Pol_Tabled/Test_Pol_Tabled.md create mode 100644 mcstas-comps/examples/Tests_polarization/Test_Pol_TripleAxis/Test_Pol_TripleAxis.md create mode 100644 mcstas-comps/examples/Tests_polarization/Test_V_cavity_SNAG_double_side/Test_V_cavity_SNAG_double_side.md create mode 100644 mcstas-comps/examples/Tests_polarization/Test_V_cavity_SNAG_single_side/Test_V_cavity_SNAG_single_side.md create mode 100644 mcstas-comps/examples/Tests_polarization/Test_pol_ideal/Test_pol_ideal.md create mode 100644 mcstas-comps/examples/Tests_samples/GISANS_tests/GISANS_tests.md create mode 100644 mcstas-comps/examples/Tests_samples/Samples_Incoherent/Samples_Incoherent.md create mode 100644 mcstas-comps/examples/Tests_samples/Samples_Incoherent_off/Samples_Incoherent_off.md create mode 100644 mcstas-comps/examples/Tests_samples/Samples_Isotropic_Sqw/Samples_Isotropic_Sqw.md create mode 100644 mcstas-comps/examples/Tests_samples/Samples_Phonon/Samples_Phonon.md create mode 100644 mcstas-comps/examples/Tests_samples/Samples_vanadium/Samples_vanadium.md create mode 100644 mcstas-comps/examples/Tests_samples/Test_Incoherent/Test_Incoherent.md create mode 100644 mcstas-comps/examples/Tests_samples/Test_Incoherent_MS/Test_Incoherent_MS.md create mode 100644 mcstas-comps/examples/Tests_samples/Test_Magnon_bcc_2D/Test_Magnon_bcc_2D.md create mode 100644 mcstas-comps/examples/Tests_samples/Test_Magnon_bcc_TAS/Test_Magnon_bcc_TAS.md create mode 100644 mcstas-comps/examples/Tests_samples/Test_PowderN/Test_PowderN.md create mode 100644 mcstas-comps/examples/Tests_samples/Test_PowderN_Res/Test_PowderN_Res.md create mode 100644 mcstas-comps/examples/Tests_samples/Test_PowderN_concentric/Test_PowderN_concentric.md create mode 100644 mcstas-comps/examples/Tests_samples/Test_Powders/Test_Powders.md create mode 100644 mcstas-comps/examples/Tests_samples/Test_SANS/Test_SANS.md create mode 100644 mcstas-comps/examples/Tests_samples/Test_SX/Test_SX.md create mode 100644 mcstas-comps/examples/Tests_samples/Test_Single_crystal_inelastic/Test_Single_crystal_inelastic.md create mode 100644 mcstas-comps/examples/Tests_samples/Test_Sqw/Test_Sqw.md create mode 100644 mcstas-comps/examples/Tests_samples/Test_Sqw_monitor/Test_Sqw_monitor.md create mode 100644 mcstas-comps/examples/Tests_samples/Test_TOFRes_sample/Test_TOFRes_sample.md create mode 100644 mcstas-comps/examples/Tests_samples/Test_TasReso/Test_TasReso.md create mode 100644 mcstas-comps/examples/Tests_samples/Test_single_magnetic_crystal/Test_single_magnetic_crystal.md create mode 100644 mcstas-comps/examples/Tests_samples/Unittest_SANS_benchmark2/Unittest_SANS_benchmark2.md create mode 100644 mcstas-comps/examples/Tests_sources/Test_Source_custom/test_Source_custom.md create mode 100644 mcstas-comps/examples/Tests_sources/Test_Source_quasi/Test_Source_quasi.md create mode 100644 mcstas-comps/examples/Tests_union/Conditional_test/Conditional_test.md create mode 100644 mcstas-comps/examples/Tests_union/External_component_test/External_component_test.md create mode 100644 mcstas-comps/examples/Tests_union/Geometry_test/Geometry_test.md create mode 100644 mcstas-comps/examples/Tests_union/Hidden_Cylinder/Hidden_Cylinder.md create mode 100644 mcstas-comps/examples/Tests_union/IncoherentPhonon_test/IncoherentPhonon_test.md create mode 100644 mcstas-comps/examples/Tests_union/Logger_test/Logger_test.md create mode 100644 mcstas-comps/examples/Tests_union/Many_meshes/Many_meshes.md create mode 100644 mcstas-comps/examples/Tests_union/Test_absorption/Test_absorption.md create mode 100644 mcstas-comps/examples/Tests_union/Test_absorption_image/Test_absorption_image.md create mode 100644 mcstas-comps/examples/Tests_union/Test_box/Test_box.md create mode 100644 mcstas-comps/examples/Tests_union/Test_mask/Test_mask.md create mode 100644 mcstas-comps/examples/Tests_union/Test_powder/Test_powder.md create mode 100644 mcstas-comps/examples/Tests_union/Test_texture/Test_texture.md create mode 100644 mcstas-comps/examples/Tests_union/Unit_test_abs_logger_1D_space/Unit_test_abs_logger_1D_space.md create mode 100644 mcstas-comps/examples/Tests_union/Unit_test_abs_logger_1D_space_event/Unit_test_abs_logger_1D_space_event.md create mode 100644 mcstas-comps/examples/Tests_union/Unit_test_abs_logger_1D_space_tof/Unit_test_abs_logger_1D_space_tof.md create mode 100644 mcstas-comps/examples/Tests_union/Unit_test_abs_logger_1D_space_tof_to_lambda/Unit_test_abs_logger_1D_space_tof_to_lambda.md create mode 100644 mcstas-comps/examples/Tests_union/Unit_test_abs_logger_2D_space/Unit_test_abs_logger_2D_space.md create mode 100644 mcstas-comps/examples/Tests_union/Unit_test_abs_logger_event/Unit_test_abs_logger_event.md create mode 100644 mcstas-comps/examples/Tests_union/Unit_test_abs_logger_nD/Unit_test_abs_logger_nD.md create mode 100644 mcstas-comps/examples/Tests_union/Unit_test_conditional_PSD/Unit_test_conditional_PSD.md create mode 100644 mcstas-comps/examples/Tests_union/Unit_test_conditional_standard/Unit_test_conditional_standard.md create mode 100644 mcstas-comps/examples/Tests_union/Unit_test_logger_1D/Unit_test_logger_1D.md create mode 100644 mcstas-comps/examples/Tests_union/Unit_test_logger_2DQ/Unit_test_logger_2DQ.md create mode 100644 mcstas-comps/examples/Tests_union/Unit_test_logger_2D_kf/Unit_test_logger_2D_kf.md create mode 100644 mcstas-comps/examples/Tests_union/Unit_test_logger_2D_kf_time/Unit_test_logger_2D_kf_time.md create mode 100644 mcstas-comps/examples/Tests_union/Unit_test_logger_2D_space/Unit_test_logger_2D_space.md create mode 100644 mcstas-comps/examples/Tests_union/Unit_test_logger_2D_space_time/Unit_test_logger_2D_space_time.md create mode 100644 mcstas-comps/examples/Tests_union/Unit_test_logger_3D_space/Unit_test_logger_3D_space.md create mode 100644 mcstas-comps/examples/Tests_union/Unit_test_loggers_base/Unit_test_loggers_base.md create mode 100644 mcstas-comps/examples/Tools/Histogrammer/Histogrammer.md create mode 100644 mcstas-comps/examples/Tools/MCPL2Mantid_flat/MCPL2Mantid_flat.md create mode 100644 mcstas-comps/examples/Tools/MCPL2hist/MCPL2hist.md create mode 100644 mcstas-comps/examples/Tools/MCPL_filter_energy/MCPL_filter_energy.md create mode 100644 mcstas-comps/examples/Tools/MCPL_filter_radius/MCPL_filter_radius.md create mode 100644 mcstas-comps/examples/Tools/MCPL_filter_wavelength/MCPL_filter_wavelength.md create mode 100644 mcstas-comps/examples/Tools/vinput2mcpl/vinput2mcpl.md create mode 100644 mcstas-comps/examples/Union_demos/Bispectral/Bispectral.md create mode 100644 mcstas-comps/examples/Union_demos/Demonstration/Demonstration.md create mode 100644 mcstas-comps/examples/Union_demos/External_component/External_component.md create mode 100644 mcstas-comps/examples/Union_demos/Laue_camera/Laue_camera.md create mode 100644 mcstas-comps/examples/Union_demos/Manual_example/Manual_example.md create mode 100644 mcstas-comps/examples/Union_demos/Sample_picture_replica/Sample_picture_replica.md create mode 100644 mcstas-comps/examples/Union_demos/Tagging_demo/Tagging_demo.md create mode 100644 mcstas-comps/examples/Union_demos/Time_of_flight/Time_of_flight.md create mode 100644 mcstas-comps/examples/Union_sample_environments/SE_usage_example/SE_usage_example.md create mode 100644 mcstas-comps/examples/Union_sample_environments/cryostat_example/cryostat_example.md create mode 100644 mcstas-comps/examples/Union_validation/Incoherent_validation/Incoherent_validation.md create mode 100644 mcstas-comps/examples/Union_validation/Mirror_validation/Mirror_validation.md create mode 100644 mcstas-comps/examples/Union_validation/Powder_validation/Powder_validation.md create mode 100644 mcstas-comps/examples/Union_validation/Single_crystal_validation/Single_crystal_validation.md create mode 100644 mcstas-comps/examples/elearning/Radiography_absorbing_edge/Radiography_absorbing_edge.md create mode 100644 mcstas-comps/examples/elearning/Reflectometer/Reflectometer.md create mode 100644 mcstas-comps/examples/elearning/SANSsimple/SANSsimple.md create mode 100644 mcstas-comps/examples/elearning/SANSsimpleSpheres/SANSsimpleSpheres.md create mode 100644 mcstas-comps/examples/elearning/SimplePowderDiffractometer/SimplePowderDiffractometer.md create mode 100644 mcstas-comps/misc/Annulus.md create mode 100644 mcstas-comps/misc/Circle.md create mode 100644 mcstas-comps/misc/Cone.md create mode 100644 mcstas-comps/misc/Disc.md create mode 100644 mcstas-comps/misc/File.md create mode 100644 mcstas-comps/misc/Legacy_circle.md create mode 100644 mcstas-comps/misc/MCPL_input.md create mode 100644 mcstas-comps/misc/MCPL_input_once.md create mode 100644 mcstas-comps/misc/MCPL_output.md create mode 100644 mcstas-comps/misc/MCPL_output_noacc.md create mode 100644 mcstas-comps/misc/Progress_bar.md create mode 100644 mcstas-comps/misc/Shape.md create mode 100644 mcstas-comps/misc/Shape_simple.md create mode 100644 mcstas-comps/monitors/Brilliance_monitor.md create mode 100644 mcstas-comps/monitors/Cyl_monitor.md create mode 100644 mcstas-comps/monitors/Cyl_monitor_PSD.md create mode 100644 mcstas-comps/monitors/Cyl_monitor_TOF.md create mode 100644 mcstas-comps/monitors/Div1D_monitor.md create mode 100644 mcstas-comps/monitors/DivLambda_monitor.md create mode 100644 mcstas-comps/monitors/DivPos_monitor.md create mode 100644 mcstas-comps/monitors/Divergence_monitor.md create mode 100644 mcstas-comps/monitors/EPSD_monitor.md create mode 100644 mcstas-comps/monitors/E_monitor.md create mode 100644 mcstas-comps/monitors/Event_monitor_simple.md create mode 100644 mcstas-comps/monitors/Flex_monitor_1D.md create mode 100644 mcstas-comps/monitors/Flex_monitor_2D.md create mode 100644 mcstas-comps/monitors/Flex_monitor_3D.md create mode 100644 mcstas-comps/monitors/L_monitor.md create mode 100644 mcstas-comps/monitors/MeanPolLambda_monitor.md create mode 100644 mcstas-comps/monitors/Monitor.md create mode 100644 mcstas-comps/monitors/Monitor_4PI.md create mode 100644 mcstas-comps/monitors/Monitor_nD.md create mode 100644 mcstas-comps/monitors/Monitor_nD_noacc.md create mode 100644 mcstas-comps/monitors/PSD_TOF_monitor.md create mode 100644 mcstas-comps/monitors/PSD_monitor.md create mode 100644 mcstas-comps/monitors/PSD_monitor_4PI.md create mode 100644 mcstas-comps/monitors/PSD_monitor_4PI_spin.md create mode 100644 mcstas-comps/monitors/PSD_monitor_TOF.md create mode 100644 mcstas-comps/monitors/PSD_monitor_psf.md create mode 100644 mcstas-comps/monitors/PSD_monitor_psf_eff.md create mode 100644 mcstas-comps/monitors/PSDcyl_monitor.md create mode 100644 mcstas-comps/monitors/PSDlin_diff_monitor.md create mode 100644 mcstas-comps/monitors/PSDlin_monitor.md create mode 100644 mcstas-comps/monitors/PolLambda_monitor.md create mode 100644 mcstas-comps/monitors/Pol_monitor.md create mode 100644 mcstas-comps/monitors/Res_monitor.md create mode 100644 mcstas-comps/monitors/Sqq_w_monitor.md create mode 100644 mcstas-comps/monitors/Sqw_monitor.md create mode 100644 mcstas-comps/monitors/TOF2E_monitor.md create mode 100644 mcstas-comps/monitors/TOF2Q_cylPSD_monitor.md create mode 100644 mcstas-comps/monitors/TOFLambda_monitor.md create mode 100644 mcstas-comps/monitors/TOFRes_monitor.md create mode 100644 mcstas-comps/monitors/TOF_PSD_monitor_rad.md create mode 100644 mcstas-comps/monitors/TOF_cylPSD_monitor.md create mode 100644 mcstas-comps/monitors/TOF_monitor.md create mode 100644 mcstas-comps/monitors/TOFlog_monitor.md create mode 100644 mcstas-comps/obsolete/Beam_spy.md create mode 100644 mcstas-comps/obsolete/ESS_moderator_short.md create mode 100644 mcstas-comps/obsolete/V_sample.md create mode 100644 mcstas-comps/obsolete/Virtual_input.md create mode 100644 mcstas-comps/obsolete/Virtual_mcnp_input.md create mode 100644 mcstas-comps/obsolete/Virtual_mcnp_output.md create mode 100644 mcstas-comps/obsolete/Virtual_mcnp_ss_Guide.md create mode 100644 mcstas-comps/obsolete/Virtual_mcnp_ss_input.md create mode 100644 mcstas-comps/obsolete/Virtual_mcnp_ss_output.md create mode 100644 mcstas-comps/obsolete/Virtual_output.md create mode 100644 mcstas-comps/obsolete/Virtual_tripoli4_input.md create mode 100644 mcstas-comps/obsolete/Virtual_tripoli4_output.md create mode 100644 mcstas-comps/obsolete/Vitess_input.md create mode 100644 mcstas-comps/obsolete/Vitess_output.md create mode 100644 mcstas-comps/optics/Absorber.md create mode 100644 mcstas-comps/optics/Arm.md create mode 100644 mcstas-comps/optics/Beamstop.md create mode 100644 mcstas-comps/optics/Bender.md create mode 100644 mcstas-comps/optics/Collimator_linear.md create mode 100644 mcstas-comps/optics/Collimator_radial.md create mode 100644 mcstas-comps/optics/Derotator.md create mode 100644 mcstas-comps/optics/Diaphragm.md create mode 100644 mcstas-comps/optics/DiskChopper.md create mode 100644 mcstas-comps/optics/Elliptic_guide_gravity.md create mode 100644 mcstas-comps/optics/FZP_simple.md create mode 100644 mcstas-comps/optics/FermiChopper.md create mode 100644 mcstas-comps/optics/Filter_gen.md create mode 100644 mcstas-comps/optics/Guide.md create mode 100644 mcstas-comps/optics/Guide_anyshape.md create mode 100644 mcstas-comps/optics/Guide_channeled.md create mode 100644 mcstas-comps/optics/Guide_gravity.md create mode 100644 mcstas-comps/optics/Guide_simple.md create mode 100644 mcstas-comps/optics/Guide_tapering.md create mode 100644 mcstas-comps/optics/Guide_wavy.md create mode 100644 mcstas-comps/optics/He3_cell.md create mode 100644 mcstas-comps/optics/Mask.md create mode 100644 mcstas-comps/optics/Mirror.md create mode 100644 mcstas-comps/optics/Monochromator_curved.md create mode 100644 mcstas-comps/optics/Monochromator_flat.md create mode 100644 mcstas-comps/optics/Monochromator_pol.md create mode 100644 mcstas-comps/optics/Place.md create mode 100644 mcstas-comps/optics/PolAnalyser_ideal.md create mode 100644 mcstas-comps/optics/Pol_Bfield.md create mode 100644 mcstas-comps/optics/Pol_Bfield_stop.md create mode 100644 mcstas-comps/optics/Pol_FieldBox.md create mode 100644 mcstas-comps/optics/Pol_SF_ideal.md create mode 100644 mcstas-comps/optics/Pol_bender.md create mode 100644 mcstas-comps/optics/Pol_constBfield.md create mode 100644 mcstas-comps/optics/Pol_guide_mirror.md create mode 100644 mcstas-comps/optics/Pol_guide_vmirror.md create mode 100644 mcstas-comps/optics/Pol_mirror.md create mode 100644 mcstas-comps/optics/Pol_tabled_field.md create mode 100644 mcstas-comps/optics/Refractor.md create mode 100644 mcstas-comps/optics/Rotator.md create mode 100644 mcstas-comps/optics/Selector.md create mode 100644 mcstas-comps/optics/Set_pol.md create mode 100644 mcstas-comps/optics/Slit.md create mode 100644 mcstas-comps/optics/V_selector.md create mode 100644 mcstas-comps/optics/Vitess_ChopperFermi.md create mode 100644 mcstas-comps/samples/Incoherent.md create mode 100644 mcstas-comps/samples/Isotropic_Sqw.md create mode 100644 mcstas-comps/samples/Magnon_bcc.md create mode 100644 mcstas-comps/samples/NCrystal_sample.md create mode 100644 mcstas-comps/samples/Phonon_simple.md create mode 100644 mcstas-comps/samples/Powder1.md create mode 100644 mcstas-comps/samples/PowderN.md create mode 100644 mcstas-comps/samples/Res_sample.md create mode 100644 mcstas-comps/samples/SANS_spheres2.md create mode 100644 mcstas-comps/samples/Sans_spheres.md create mode 100644 mcstas-comps/samples/SasView_model.md create mode 100644 mcstas-comps/samples/Single_crystal.md create mode 100644 mcstas-comps/samples/Single_magnetic_crystal.md create mode 100644 mcstas-comps/samples/TOFRes_sample.md create mode 100644 mcstas-comps/samples/Tunneling_sample.md create mode 100644 mcstas-comps/sasmodels/SasView_adsorbed_layer.md create mode 100644 mcstas-comps/sasmodels/SasView_barbell.md create mode 100644 mcstas-comps/sasmodels/SasView_barbell_aniso.md create mode 100644 mcstas-comps/sasmodels/SasView_bcc_paracrystal.md create mode 100644 mcstas-comps/sasmodels/SasView_bcc_paracrystal_aniso.md create mode 100644 mcstas-comps/sasmodels/SasView_binary_hard_sphere.md create mode 100644 mcstas-comps/sasmodels/SasView_broad_peak.md create mode 100644 mcstas-comps/sasmodels/SasView_capped_cylinder.md create mode 100644 mcstas-comps/sasmodels/SasView_capped_cylinder_aniso.md create mode 100644 mcstas-comps/sasmodels/SasView_core_multi_shell.md create mode 100644 mcstas-comps/sasmodels/SasView_core_shell_bicelle.md create mode 100644 mcstas-comps/sasmodels/SasView_core_shell_bicelle_aniso.md create mode 100644 mcstas-comps/sasmodels/SasView_core_shell_bicelle_elliptical.md create mode 100644 mcstas-comps/sasmodels/SasView_core_shell_bicelle_elliptical_aniso.md create mode 100644 mcstas-comps/sasmodels/SasView_core_shell_bicelle_elliptical_belt_rough.md create mode 100644 mcstas-comps/sasmodels/SasView_core_shell_bicelle_elliptical_belt_rough_aniso.md create mode 100644 mcstas-comps/sasmodels/SasView_core_shell_cylinder.md create mode 100644 mcstas-comps/sasmodels/SasView_core_shell_cylinder_aniso.md create mode 100644 mcstas-comps/sasmodels/SasView_core_shell_ellipsoid.md create mode 100644 mcstas-comps/sasmodels/SasView_core_shell_ellipsoid_aniso.md create mode 100644 mcstas-comps/sasmodels/SasView_core_shell_parallelepiped.md create mode 100644 mcstas-comps/sasmodels/SasView_core_shell_parallelepiped_aniso.md create mode 100644 mcstas-comps/sasmodels/SasView_core_shell_sphere.md create mode 100644 mcstas-comps/sasmodels/SasView_correlation_length.md create mode 100644 mcstas-comps/sasmodels/SasView_cylinder.md create mode 100644 mcstas-comps/sasmodels/SasView_cylinder_aniso.md create mode 100644 mcstas-comps/sasmodels/SasView_dab.md create mode 100644 mcstas-comps/sasmodels/SasView_ellipsoid.md create mode 100644 mcstas-comps/sasmodels/SasView_ellipsoid_aniso.md create mode 100644 mcstas-comps/sasmodels/SasView_elliptical_cylinder.md create mode 100644 mcstas-comps/sasmodels/SasView_elliptical_cylinder_aniso.md create mode 100644 mcstas-comps/sasmodels/SasView_fcc_paracrystal.md create mode 100644 mcstas-comps/sasmodels/SasView_fcc_paracrystal_aniso.md create mode 100644 mcstas-comps/sasmodels/SasView_flexible_cylinder.md create mode 100644 mcstas-comps/sasmodels/SasView_flexible_cylinder_elliptical.md create mode 100644 mcstas-comps/sasmodels/SasView_fractal.md create mode 100644 mcstas-comps/sasmodels/SasView_fractal_core_shell.md create mode 100644 mcstas-comps/sasmodels/SasView_fuzzy_sphere.md create mode 100644 mcstas-comps/sasmodels/SasView_gauss_lorentz_gel.md create mode 100644 mcstas-comps/sasmodels/SasView_gaussian_peak.md create mode 100644 mcstas-comps/sasmodels/SasView_gel_fit.md create mode 100644 mcstas-comps/sasmodels/SasView_guinier.md create mode 100644 mcstas-comps/sasmodels/SasView_guinier_porod.md create mode 100644 mcstas-comps/sasmodels/SasView_hardsphere.md create mode 100644 mcstas-comps/sasmodels/SasView_hayter_msa.md create mode 100644 mcstas-comps/sasmodels/SasView_hollow_cylinder.md create mode 100644 mcstas-comps/sasmodels/SasView_hollow_cylinder_aniso.md create mode 100644 mcstas-comps/sasmodels/SasView_hollow_rectangular_prism.md create mode 100644 mcstas-comps/sasmodels/SasView_hollow_rectangular_prism_aniso.md create mode 100644 mcstas-comps/sasmodels/SasView_hollow_rectangular_prism_thin_walls.md create mode 100644 mcstas-comps/sasmodels/SasView_lamellar_hg.md create mode 100644 mcstas-comps/sasmodels/SasView_lamellar_hg_stack_caille.md create mode 100644 mcstas-comps/sasmodels/SasView_lamellar_stack_caille.md create mode 100644 mcstas-comps/sasmodels/SasView_lamellar_stack_paracrystal.md create mode 100644 mcstas-comps/sasmodels/SasView_line.md create mode 100644 mcstas-comps/sasmodels/SasView_linear_pearls.md create mode 100644 mcstas-comps/sasmodels/SasView_lorentz.md create mode 100644 mcstas-comps/sasmodels/SasView_mass_fractal.md create mode 100644 mcstas-comps/sasmodels/SasView_mass_surface_fractal.md create mode 100644 mcstas-comps/sasmodels/SasView_mono_gauss_coil.md create mode 100644 mcstas-comps/sasmodels/SasView_multilayer_vesicle.md create mode 100644 mcstas-comps/sasmodels/SasView_onion.md create mode 100644 mcstas-comps/sasmodels/SasView_parallelepiped.md create mode 100644 mcstas-comps/sasmodels/SasView_parallelepiped_aniso.md create mode 100644 mcstas-comps/sasmodels/SasView_peak_lorentz.md create mode 100644 mcstas-comps/sasmodels/SasView_pearl_necklace.md create mode 100644 mcstas-comps/sasmodels/SasView_poly_gauss_coil.md create mode 100644 mcstas-comps/sasmodels/SasView_polymer_excl_volume.md create mode 100644 mcstas-comps/sasmodels/SasView_polymer_micelle.md create mode 100644 mcstas-comps/sasmodels/SasView_porod.md create mode 100644 mcstas-comps/sasmodels/SasView_power_law.md create mode 100644 mcstas-comps/sasmodels/SasView_pringle.md create mode 100644 mcstas-comps/sasmodels/SasView_raspberry.md create mode 100644 mcstas-comps/sasmodels/SasView_rectangular_prism.md create mode 100644 mcstas-comps/sasmodels/SasView_rectangular_prism_aniso.md create mode 100644 mcstas-comps/sasmodels/SasView_rpa.md create mode 100644 mcstas-comps/sasmodels/SasView_sc_paracrystal.md create mode 100644 mcstas-comps/sasmodels/SasView_sc_paracrystal_aniso.md create mode 100644 mcstas-comps/sasmodels/SasView_sphere.md create mode 100644 mcstas-comps/sasmodels/SasView_spinodal.md create mode 100644 mcstas-comps/sasmodels/SasView_squarewell.md create mode 100644 mcstas-comps/sasmodels/SasView_stacked_disks.md create mode 100644 mcstas-comps/sasmodels/SasView_stacked_disks_aniso.md create mode 100644 mcstas-comps/sasmodels/SasView_star_polymer.md create mode 100644 mcstas-comps/sasmodels/SasView_stickyhardsphere.md create mode 100644 mcstas-comps/sasmodels/SasView_superball.md create mode 100644 mcstas-comps/sasmodels/SasView_superball_aniso.md create mode 100644 mcstas-comps/sasmodels/SasView_surface_fractal.md create mode 100644 mcstas-comps/sasmodels/SasView_teubner_strey.md create mode 100644 mcstas-comps/sasmodels/SasView_triaxial_ellipsoid.md create mode 100644 mcstas-comps/sasmodels/SasView_triaxial_ellipsoid_aniso.md create mode 100644 mcstas-comps/sasmodels/SasView_two_lorentzian.md create mode 100644 mcstas-comps/sasmodels/SasView_two_power_law.md create mode 100644 mcstas-comps/sasmodels/SasView_vesicle.md create mode 100644 mcstas-comps/sources/Adapt_check.md create mode 100644 mcstas-comps/sources/ESS_butterfly.md create mode 100644 mcstas-comps/sources/ESS_moderator.md create mode 100644 mcstas-comps/sources/Moderator.md create mode 100644 mcstas-comps/sources/Monitor_Optimizer.md create mode 100644 mcstas-comps/sources/Source_4PI.md create mode 100644 mcstas-comps/sources/Source_Maxwell_3.md create mode 100644 mcstas-comps/sources/Source_Optimizer.md create mode 100644 mcstas-comps/sources/Source_adapt.md create mode 100644 mcstas-comps/sources/Source_div.md create mode 100644 mcstas-comps/sources/Source_div_quasi.md create mode 100644 mcstas-comps/sources/Source_gen.md create mode 100644 mcstas-comps/sources/Source_simple.md create mode 100644 mcstas-comps/union/AF_HB_1D_process.md create mode 100644 mcstas-comps/union/IncoherentPhonon_process.md create mode 100644 mcstas-comps/union/Incoherent_process.md create mode 100644 mcstas-comps/union/Mirror_surface.md create mode 100644 mcstas-comps/union/NCrystal_process.md create mode 100644 mcstas-comps/union/Non_process.md create mode 100644 mcstas-comps/union/PhononSimple_process.md create mode 100644 mcstas-comps/union/Powder_process.md create mode 100644 mcstas-comps/union/Single_crystal_process.md create mode 100644 mcstas-comps/union/Template_process.md create mode 100644 mcstas-comps/union/Template_surface.md create mode 100644 mcstas-comps/union/Texture_process.md create mode 100644 mcstas-comps/union/Union_abs_logger_1D_space.md create mode 100644 mcstas-comps/union/Union_abs_logger_1D_space_event.md create mode 100644 mcstas-comps/union/Union_abs_logger_1D_space_tof.md create mode 100644 mcstas-comps/union/Union_abs_logger_1D_space_tof_to_lambda.md create mode 100644 mcstas-comps/union/Union_abs_logger_1D_time.md create mode 100644 mcstas-comps/union/Union_abs_logger_2D_space.md create mode 100644 mcstas-comps/union/Union_abs_logger_event.md create mode 100644 mcstas-comps/union/Union_abs_logger_nD.md create mode 100644 mcstas-comps/union/Union_box.md create mode 100644 mcstas-comps/union/Union_conditional_PSD.md create mode 100644 mcstas-comps/union/Union_conditional_standard.md create mode 100644 mcstas-comps/union/Union_cone.md create mode 100644 mcstas-comps/union/Union_cylinder.md create mode 100644 mcstas-comps/union/Union_init.md create mode 100644 mcstas-comps/union/Union_logger_1D.md create mode 100644 mcstas-comps/union/Union_logger_2DQ.md create mode 100644 mcstas-comps/union/Union_logger_2D_kf.md create mode 100644 mcstas-comps/union/Union_logger_2D_kf_time.md create mode 100644 mcstas-comps/union/Union_logger_2D_space.md create mode 100644 mcstas-comps/union/Union_logger_2D_space_time.md create mode 100644 mcstas-comps/union/Union_logger_3D_space.md create mode 100644 mcstas-comps/union/Union_make_material.md create mode 100644 mcstas-comps/union/Union_master.md create mode 100644 mcstas-comps/union/Union_master_GPU.md create mode 100644 mcstas-comps/union/Union_mesh.md create mode 100644 mcstas-comps/union/Union_sphere.md create mode 100644 mcstas-comps/union/Union_stop.md diff --git a/mcstas-comps/contrib/Al_window.md b/mcstas-comps/contrib/Al_window.md new file mode 100644 index 000000000..32030f294 --- /dev/null +++ b/mcstas-comps/contrib/Al_window.md @@ -0,0 +1,37 @@ +# The `Al_window` Component + +*McStas: Aluminium window in the beam* + +## Identification + +- **Site:** +- **Author:** S. Roth +- **Origin:** FRM-II +- **Date:** Jul 31, 2001 + +## Description + +```text +Aluminium window in the beam + +Example: Al_window(thickness=0.002) + +%BUGS +Only handles the absorption, and window has infinite width/height +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| thickness | m | Al Window thickness | 0.001 | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/contrib/Al_window.comp) for `Al_window.comp`. + +--- + +*Generated on mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/contrib/CavitiesIn.md b/mcstas-comps/contrib/CavitiesIn.md new file mode 100644 index 000000000..6a5fca42f --- /dev/null +++ b/mcstas-comps/contrib/CavitiesIn.md @@ -0,0 +1,39 @@ +# The `CavitiesIn` Component + +*McStas: Slit - sorting in channels* + +## Identification + +- **Site:** +- **Author:** Henrich Frielinghaus +- **Origin:** JCNS - FZ-Juelich +- **Date:** Oct 2007 + +## Description + +```text +This routine sorts the 'full' neutron beam (given by xw,yw) +in xc,yc channels. These can be imagined as cavities. +CavitiesOut sorts these channels back to normal coordinates. + +Example: Slit(xw=0.05, yw=0.05, xc=4, yc=1) +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| xw | m | width in X-dir | 0.05 | +| yw | m | width in Y-dir | 0.05 | +| xc | m | channels in X-dir | 1 | +| yc | m | channels in Y-dir | 1 | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/contrib/CavitiesIn.comp) for `CavitiesIn.comp`. + +--- + +*Generated on mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/contrib/CavitiesOut.md b/mcstas-comps/contrib/CavitiesOut.md new file mode 100644 index 000000000..30326d5b9 --- /dev/null +++ b/mcstas-comps/contrib/CavitiesOut.md @@ -0,0 +1,39 @@ +# The `CavitiesOut` Component + +*McStas: Slit - sorting in channels* + +## Identification + +- **Site:** +- **Author:** Henrich Frielinghaus +- **Origin:** JCNS - FZ-Juelich +- **Date:** Oct 2007 + +## Description + +```text +This routine sorts the 'full' neutron beam (given by xw,yw) +in xc,yc channels. These can be imagined as cavities. +CavitiesOut sorts these channels back to normal coordinates. + +Example: Slit(xw=0.05, yw=0.05, xc=4, yc=1) +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| xw | m | width in X-dir (full width, might be larger for trumpets) | 0.05 | +| yw | m | width in Y-dir (full width, might be larger for trumpets) | 0.05 | +| xc | 1 | Number of x-channels | 1 | +| yc | 1 | Number of y-channels | 1 | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/contrib/CavitiesOut.comp) for `CavitiesOut.comp`. + +--- + +*Generated on mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/contrib/Collimator_ROC.md b/mcstas-comps/contrib/Collimator_ROC.md new file mode 100644 index 000000000..a0aeaf227 --- /dev/null +++ b/mcstas-comps/contrib/Collimator_ROC.md @@ -0,0 +1,57 @@ +# The `Collimator_ROC` Component + +*McStas: Radial Oscillationg Collimator (ROC)* + +## Identification + +- **Site:** +- **Author:** Thomas C Hansen +- **Origin:** ILL (Dif/D20) +- **Date:** 15 May 2000 + +## Description + +```text +ESCRIPTION + +This is an implementation of an Ideal radial oscillating collimator, +which is usually placed between a polycrystalline sample and a linear +curved position sensitive detector on a 2-axis diffractometer like D20. +The transfer function has been implemented analytically, as this is +much more efficient than doing Monte-Caqrlo (MC) choices and to absorb +many neutrons on the absorbing blades. The function is basically triangular +(except for rather 'exotic' focuss apertures) and depends on the distance +from the projection of the focus centre to the plane perpendicular to the +collimator planes to the intersection of the same projection of the velocity +vector of the neutron with a line that is perpendicular to it and containing +the same projection of the focus centre. The oscillation is assumed to be +absolutely regular and so shading each angle the same way. All neutrons not +hitting the collimator core will be absorbed. + +Example: Collimator_ROC( +ROC_pitch=5, ROC_ri=0.15, ROC_ro=0.3, ROC_h=0.15, +ROC_ttmin=-25, ROC_ttmax=135, ROC_sign=-1) +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| ROC_pitch | deg | Angular pitch between the absorbing blades | 1 | +| ROC_ri | m | Inner radius of the collimator | 0.4 | +| ROC_ro | m | Outer radius of the collimator | 1.2 | +| ROC_h | m | Height of the collimator | 0.153 | +| ROC_ttmin | deg | Lower scattering angle limit | 0 | +| ROC_ttmax | deg | Higher scattering angle limit | 100 | +| ROC_sign | 1 | Chirality/takeoff sign | 1 | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/contrib/Collimator_ROC.comp) for `Collimator_ROC.comp`. +- D20 diffractometer at the ILL + +--- + +*Generated on mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/contrib/Commodus_I3.md b/mcstas-comps/contrib/Commodus_I3.md new file mode 100644 index 000000000..cba4d6bc1 --- /dev/null +++ b/mcstas-comps/contrib/Commodus_I3.md @@ -0,0 +1,57 @@ +# The `Commodus_I3` Component + +*McStas: ISIS Moderators (Tested with McStas 3.1 (Windows))* + +## Identification + +- **Site:** +- **Author:** G. Skoro, based on ViewModerator4 from S. Ansell +- **Origin:** ISIS +- **Date:** July 2022 + +## Description + +```text +Produces a neutron distribution at the ISIS TS1 or TS2 corresponding moderator front face position. +The Face argument determines which TS1 or TS2 beamline is to be sampled by using corresponding file. +Neutrons are created having a range of energies determined by the E0 and E1 arguments. +Trajectories are produced such that they pass through the moderator face (defined by +modXsize and modZsize) and a focusing rectangle (defined by xw, yh and dist). +--- HOW TO USE --- + +Example: Commodus_I3(Face="TS1verBase2016_LH8020_newVM-var_South04_Merlin.mcstas", E0 = E_min, E1 = E_max, +modXsize = 0.12, modZsize = 0.12, xw = 0.094, yh = 0.094, dist = 1.6) + +MERLIN simulation; TS1 baseline model. +In this example, xw and yh are chosen to be identical to the shutter opening dimension. +dist = 1.6 is the real distance to the shutter front face: +(This is TimeOffset value (=160 [cm]) from TS1verBase2016_LH8020_newVM-var_South04_Merlin.mcstas file.) + +N.B. Absolute normalization: The result of the Mc-Stas simulation will show neutron intensity for beam current of 1 uA. +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| Face | string | TS1 (or TS2) instrument McStas filename | "TS1_S04_Merlin.mcstas" | +| **E0** | meV | Lower edge of energy distribution | | +| **E1** | meV | Upper edge of energy distribution | | +| modPosition | | | 0 | +| dist | m | Distance from moderator surface to the focusing rectangle | 1.7 | +| verbose | int | Flag to output debugging information | 0 | +| beamcurrent | uA | ISIS beam current | 1 | +| modXsize | m | Moderator width | 0.12 | +| modZsize | m | Moderator height | 0.12 | +| xw | m | Width of focusing rectangle | 0.094 | +| yh | m | Height of focusing rectangle | 0.094 | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/contrib/Commodus_I3.comp) for `Commodus_I3.comp`. + +--- + +*Generated on mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/contrib/Conics_EH.md b/mcstas-comps/contrib/Conics_EH.md new file mode 100644 index 000000000..f51e4c637 --- /dev/null +++ b/mcstas-comps/contrib/Conics_EH.md @@ -0,0 +1,60 @@ +# The `Conics_EH` Component + +*McStas: Release: McStas 2.7 +Date: September 2021 + +Elliptic-Hyperbolic shells for Wolter optic* + +## Identification + +- **Site:** +- **Author:** Peter Wilendrup and Erik Knudsen
    (derived from Giacomo Resta skeleton-component) +- **Origin:** DTU +- **Date:** September 2021 + +## Description + +```text +Implements a set of nshells Wolter Ellipsoid/Hyperboloid pairs using conics.h from ConicTracer. + +The component has two distinct modes of specifying the geometry: +a) Via the radii vector, parametrized from largest to smallest radius with a length of 'nshells' + +b) By specifying radii rmax and rmin, between which a quadratic law distributes 'nshells' surfaces. + +The mirrors are assumed to be touching at the mid-optic plane, i.e. there is no gap between primary +and secondary mirror. +By definition the ratio between primary and secondary mirror glancing angles is 1/3. +At present a single m-value is used for all mirrors. +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| rmin | m | Midoptic plane radius of innermost mirror pair. | 0.0031416 | +| rmax | m | Midoptic plane radius of outermost mirror pair. | 0.05236 | +| focal_length_u | m | Focal length (upstream) of the mirror pairs. | 10 | +| focal_length_d | m | Focal length (downstream) of the mirror pairs. | 10 | +| le | m | Paraboloid mirror length. | 0.25 | +| lh | m | Hyperboloid mirror length. | 0.25 | +| nshells | 1 | Number of nested shells to expect | 4 | +| m | 1 | Critical angle of mirrors as multiples of Ni_c. | 1 | +| mirr_thick | m | Thickness of mirror shell surfaces - NOT YET IMPLEMENTED | 0 | +| disk | | Flag. If nonzero, insert a disk to block the central area within the innermost mirror. | 1 | +| radii | m | Optional vector of radii (length should match nshells) | NULL | +| R0 | 1 | Reflectivity at Low angles for reflectivity curve approximation | 0.99 | +| Qc | AA-1 | Critical scattering vector | 0.021 | +| W | AA-1 | Width of supermirror cut-off | 0.003 | +| alpha | AA | Slope of reflectivity for reflectivity curve approximation | 6.07 | +| transmit | 1 | Fraction of statistics to assign to transmitted beam - NOT YET IMPLEMENTED | 0 | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/contrib/Conics_EH.comp) for `Conics_EH.comp`. + +--- + +*Generated on mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/contrib/Conics_HE.md b/mcstas-comps/contrib/Conics_HE.md new file mode 100644 index 000000000..8071647b0 --- /dev/null +++ b/mcstas-comps/contrib/Conics_HE.md @@ -0,0 +1,60 @@ +# The `Conics_HE` Component + +*McStas: Release: McStas 2.7 +Date: September 2021 + +Hyperbolic-Elliptic shells for Wolter optic* + +## Identification + +- **Site:** +- **Author:** Peter Wilendrup and Erik Knudsen
    (derived from Giacomo Resta skeleton-component) +- **Origin:** DTU +- **Date:** September 2021 + +## Description + +```text +Implements a set of nshells Wolter Ellipsoid/Hyperboloid pairs using conics.h from ConicTracer. + +The component has two distinct modes of specifying the geometry: +a) Via the radii vector, parametrized from largest to smallest radius with a length of 'nshells' + +b) By specifying radii rmax and rmin, between which a quadratic law distributes 'nshells' surfaces. + +The mirrors are assumed to be touching at the mid-optic plane, i.e. there is no gap between primary +and secondary mirror. +By definition the ratio between primary and secondary mirror glancing angles is 1/3. +At present a single m-value is used for all mirrors. +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| rmin | m | Midoptic plane radius of innermost mirror pair. | 0.0031416 | +| rmax | m | Midoptic plane radius of outermost mirror pair. | 0.05236 | +| focal_length_u | m | Focal length (upstream) of the mirror pairs. | 10 | +| focal_length_d | m | Focal length (downstream) of the mirror pairs. | 10 | +| le | m | Paraboloid mirror length. | 0.25 | +| lh | m | Hyperboloid mirror length. | 0.25 | +| nshells | 1 | Number of nested shells to expect | 4 | +| m | 1 | Critical angle of mirrors as multiples of Ni_c. | 1 | +| mirr_thick | m | Thickness of mirror shell surfaces - NOT YET IMPLEMENTED | 0 | +| disk | | Flag. If nonzero, insert a disk to block the central area within the innermost mirror. | 1 | +| radii | m | Optional vector of radii (length should match nshells) | NULL | +| R0 | 1 | Reflectivity at Low angles for reflectivity curve approximation | 0.99 | +| Qc | AA-1 | Critical scattering vector | 0.021 | +| W | AA-1 | Width of supermirror cut-off | 0.003 | +| alpha | AA | Slope of reflectivity for reflectivity curve approximation | 6.07 | +| transmit | 1 | Fraction of statistics to assign to transmitted beam - NOT YET IMPLEMENTED | 0 | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/contrib/Conics_HE.comp) for `Conics_HE.comp`. + +--- + +*Generated on mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/contrib/Conics_PH.md b/mcstas-comps/contrib/Conics_PH.md new file mode 100644 index 000000000..3ee3016c9 --- /dev/null +++ b/mcstas-comps/contrib/Conics_PH.md @@ -0,0 +1,58 @@ +# The `Conics_PH` Component + +*McStas: Release: McStas 2.7 +Date: September 2021 + +Parabolid-Hyperbolic shells for Wolter optic* + +## Identification + +- **Site:** +- **Author:** Peter Wilendrup and Erik Knudsen
    (derived from Giacomo Resta skeleton-component) +- **Origin:** DTU +- **Date:** September 2021 + +## Description + +```text +Implements a set of nshells Wolter I Paraboloid/Hyperboloid pairs using conics.h from ConicTracer. + +The component has two distinct modes of specifying the geometry: +a) Via the radii vector, parametrized from largest to smallest radius with a length of 'nshells' + +b) By specifying radii rmax and rmin, between which a quadratic law distributes 'nshells' surfaces. + +The mirrors are assumed to be touching at the mid-optic plane, i.e. there is no gap between primary +and secondary mirror.* By definition the ratio between primary and secondary mirror glancing angles is 1/3. +At present a single m-value is used for all mirrors. +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| rmin | m | Midoptic plane radius of innermost mirror pair. | 0.325 | +| rmax | m | Midoptic plane radius of outermost mirror pair. | 0.615 | +| focal_length | m | Focal length of the mirror pairs. | 10.070 | +| lp | m | Paraboloid mirror length. | 0.84 | +| lh | m | Hyperboloid mirror length. | 0.84 | +| nshells | 1 | Number of nested shells to expect | 4 | +| m | 1 | Critical angle of mirrors as multiples of Ni. | 1 | +| mirr_thick | m | Thickness of mirror shell surfaces - NOT YET IMPLEMENTED | 0 | +| disk | | Flag. If nonzero, insert a disk to block the central area within the innermost mirror. | 1 | +| radii | m | Optional vector of radii (length should match nshells) | NULL | +| R0 | 1 | Reflectivity at Low angles for reflectivity curve approximation | 0.99 | +| Qc | AA-1 | Critical scattering vector | 0.021 | +| W | AA-1 | Width of supermirror cut-off | 0.003 | +| alpha | AA | Slope of reflectivity for reflectivity curve approximation | 6.07 | +| transmit | 1 | Fraction of statistics to assign to transmitted beam - NOT YET IMPLEMENTED | 0 | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/contrib/Conics_PH.comp) for `Conics_PH.comp`. + +--- + +*Generated on mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/contrib/Conics_PP.md b/mcstas-comps/contrib/Conics_PP.md new file mode 100644 index 000000000..f64da76c1 --- /dev/null +++ b/mcstas-comps/contrib/Conics_PP.md @@ -0,0 +1,60 @@ +# The `Conics_PP` Component + +*McStas: Release: McStas 2.7 +Date: September 2021 + +Parabolid-Parabolid shells for Wolter optic* + +## Identification + +- **Site:** +- **Author:** Peter Wilendrup and Erik Knudsen
    (derived from Giacomo Resta skeleton-component) +- **Origin:** DTU +- **Date:** September 2021 + +## Description + +```text +Implements a set of nshells Wolter I Paraboloid/Parabolid pairs using conics.h from ConicTracer. + +The component has two distinct modes of specifying the geometry: +a) Via the radii vector, parametrized from largest to smallest radius with a length of 'nshells' + +b) By specifying radii rmax and rmin, between which a quadratic law distributes 'nshells' surfaces. + +The mirrors are assumed to be touching at the mid-optic plane, i.e. there is no gap between primary +and secondary mirror. +By definition the ratio between primary and secondary mirror glancing angles is 1/3. +At present a single m-value is used for all mirrors. +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| rmin | m | Midoptic plane radius of innermost mirror pair. | 0.0031416 | +| rmax | m | Midoptic plane radius of outermost mirror pair. | 0.05236 | +| focal_length_u | m | Focal length of upstream mirror. | 10.070 | +| focal_length_d | m | Focal length of downstream mirror. | 10.070 | +| lp1 | m | Upstream paraboloid mirror length. | 0.84 | +| lp2 | m | Downstream paraboloid mirror length. | 0.84 | +| nshells | 1 | Number of nested shells to expect | 4 | +| m | 1 | Critical angle of mirrors as multiples of Ni. | 1 | +| mirr_thick | m | Thickness of mirror shell surfaces - NOT YET IMPLEMENTED | 0 | +| disk | | Flag. If nonzero, insert a disk to block the central area within the innermost mirror. | 1 | +| radii | m | Optional vector of radii (length should match nshells) | NULL | +| R0 | 1 | Reflectivity at Low angles for reflectivity curve approximation | 0.99 | +| Qc | AA-1 | Critical scattering vector | 0.021 | +| W | AA-1 | Width of supermirror cut-off | 0.003 | +| alpha | AA | Slope of reflectivity for reflectivity curve approximation | 6.07 | +| transmit | 1 | Fraction of statistics to assign to transmitted beam - NOT YET IMPLEMENTED | 0 | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/contrib/Conics_PP.comp) for `Conics_PP.comp`. + +--- + +*Generated on mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/contrib/E_4PI.md b/mcstas-comps/contrib/E_4PI.md new file mode 100644 index 000000000..f13b70d4f --- /dev/null +++ b/mcstas-comps/contrib/E_4PI.md @@ -0,0 +1,39 @@ +# The `E_4PI` Component + +*McStas: Spherical Energy-sensitive detector* + +## Identification + +- **Site:** +- **Author:** Duc Le +- **Origin:** ISIS +- **Date:** 2000s + +## Description + +```text +Example: E_4PI(filename="e4pi.dat",ne=200,Emin=0,Emax=E*2) +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| ne | 1 | Number of energy bins | 50 | +| Emin | meV | Minimum energy measured | 0 | +| Emax | meV | Maximum energy measured | 5 | +| filename | string | Name of file in which to store the output data | 0 | +| radius | m | Radius of detector (m) | 1 | +| restore_neutron | 1 | If set, the monitor does not influence the neutron state | 0 | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/contrib/E_4PI.comp) for `E_4PI.comp`. +- Test +- results (not up-to-date). + +--- + +*Generated on mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/contrib/Exact_radial_coll.md b/mcstas-comps/contrib/Exact_radial_coll.md new file mode 100644 index 000000000..09501e2a2 --- /dev/null +++ b/mcstas-comps/contrib/Exact_radial_coll.md @@ -0,0 +1,49 @@ +# The `Exact_radial_coll` Component + +*McStas: An exact radial Soller collimator.* + +## Identification + +- **Site:** +- **Author:** Roland Schedler +- **Origin:** HMI +- **Date:** October 2006 + +## Description + +```text +Radial Soller collimator with rectangular opening, specified length and +specified foil thickness. +The collimator is made of many trapezium shaped nslit stacked radially. +The nslit are separated by absorbing foils, the whole stuff is inside +an absorbing housing. +The component should be positioned at the radius center. The model is exact. +The neutron beam outside the collimator area is transmitted unaffected. + +Example: Exact_radial_coll(theta_min=-5, theta_max=5, nslit=100, +radius=1.0, length=.3, h_in=.2, h_out=.3, d=0.0001) +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| theta_min | deg | Minimum Theta angle for the radial setting | -5 | +| theta_max | deg | Maximum Theta angle for the radial setting | 5 | +| nslit | 1 | Number of channels in the theta range | 100 | +| radius | m | Inner radius (focus point to foil start point). | 1.0 | +| length | m | Length of the foils / collimator | .5 | +| h_in | m | Input window height | .3 | +| h_out | m | Output window height | .4 | +| d | m | Thickness of the absorbing foils | 0.0001 | +| verbose | 0/1 | Gives additional information | 0 | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/contrib/Exact_radial_coll.comp) for `Exact_radial_coll.comp`. + +--- + +*Generated on mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/contrib/FermiChopper_ILL.md b/mcstas-comps/contrib/FermiChopper_ILL.md new file mode 100644 index 000000000..9ec5acb6b --- /dev/null +++ b/mcstas-comps/contrib/FermiChopper_ILL.md @@ -0,0 +1,76 @@ +# The `FermiChopper_ILL` Component + +*McStas: Fermi Chopper with rotating frame.* + +## Identification + +- **Site:** +- **Author:** M. Poehlmann, C. Carbogno, H. Schober, E. Farhi +- **Origin:** ILL Grenoble / TU Muenchen +- **Date:** May 2002 + +## Description + +```text +Models a Fermi chopper with optional supermirror coated blades +supermirror facilities may be disabled by setting m = 0, R0=0 +Slit packages are straight. Chopper slits are separated by an infinitely +thin absorbing material. The effective transmission (resulting from fraction +of the transparent material and its transmission) may be specified. +The chopper slit package width may be specified through the total width 'xwidth' +of the full package or the width 'w' of each single slit. The other parameter +is calculated by: xwidth = nslit*w. + +Example: +FermiChopper_ILL(phase=-50.0, radius=0.04, nu=100, +yheight=0.08, w=0.00022475, nslit=200.0, R0=0.0, +Qc=0.02176, alpha=2.33, m=0.0, length=0.012, eff=0.95, +zero_time=0) + +Markus Poehlmann +Christian Carbogno +and Helmut Schober + +%VALIDATION +Apr 2005: extensive external test, most problems solved (cf. 'Bugs') +Validated by: K. Lieutenant + +limitations: +no blade width used + +%BUGS +- overestimates peak width for long wavelengths +- does not give the right pulse position, shape and width for slit widths below 0.1 mm +- fails sometimes when using MPI +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| phase | deg | chopper phase at t=0 | 0 | +| radius | m | chopper cylinder radius | 0.04 | +| nu | Hz | chopper frequency | 100 | +| yheight | m | Height of chopper | 0.08 | +| w | m | width of one chopper slit | 0.00022475 | +| nslit | 1 | number of chopper slits | 200.0 | +| R0 | 1 | low-angle reflectivity | 0.0 | +| Qc | AA-1 | critical scattering vector | 0.02176 | +| alpha | AA | slope of reflectivity | 2.33 | +| m | 1 | m-value of material. Zero means completely absorbing. | 0.0 | +| W | AA-1 | width of supermirror cut-off | 2e-3 | +| length | m | channel length of the Fermi chopper | 0.012 | +| eff | 1 | efficiency = transmission x fraction of transparent material | 0.95 | +| zero_time | 1 | set time to zero: 0: no 1: once per half cycle | 0 | +| xwidth | m | optional total width of slit package | 0 | +| verbose | 1 | optional flag to display component statistics, use 1 or 3 (debuging) | 0 | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/contrib/FermiChopper_ILL.comp) for `FermiChopper_ILL.comp`. + +--- + +*Generated on mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/contrib/Fermi_chop2a.md b/mcstas-comps/contrib/Fermi_chop2a.md new file mode 100644 index 000000000..1403976e2 --- /dev/null +++ b/mcstas-comps/contrib/Fermi_chop2a.md @@ -0,0 +1,41 @@ +# The `Fermi_chop2a` Component + +*McStas: SNS Fermi Chopper as used in SNS_ARCS* + +## Identification + +- **Site:** +- **Author:** Garrett Granroth +- **Origin:** SNS Oak Ridge,TN +- **Date:** 6 Feb 2005 + +## Description + +```text +Models an SNS Fermi Chopper, used in the SNS_ARCS instrument model. +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| **len** | m | slit package length | | +| **w** | m | slit package width | | +| **nu** | Hz | frequency | | +| **delta** | sec | time from edge of chopper to center Phase angle | | +| **tc** | sec | time when desired neutron is at the center of the chopper | | +| **ymin** | m | Lower y bound | | +| **ymax** | m | Upper y bound | | +| **nchan** | 1 | number of channels in chopper | | +| **bw** | m | blade width | | +| **blader** | m | blade radius | | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/contrib/Fermi_chop2a.comp) for `Fermi_chop2a.comp`. + +--- + +*Generated on mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/contrib/Filter_graphite.md b/mcstas-comps/contrib/Filter_graphite.md new file mode 100644 index 000000000..e1bc7db3a --- /dev/null +++ b/mcstas-comps/contrib/Filter_graphite.md @@ -0,0 +1,46 @@ +# The `Filter_graphite` Component + +*McStas: Pyrolytic graphite filter (analytical model)* + +## Identification + +- **Site:** +- **Author:** Thomas C Hansen +- **Origin:** ILL +- **Date:** 07 March 2000 + +## Description + +```text +ESCRIPTION + +This rectangular pyrolytic graphite filter uses an analytical model +with linear interpolation on the neutron wavelength +This type of filter is e.g. used to supress higher harmonics, such as +the 1.2 AA contribution to the 2.4 AA obtained by a highly oriented +pyrolytic graphite (HOPG) monochromator. + +Example: Filter_graphite(xmin=-.05, xmax=.05, ymin=-.05, ymax=.05, length=1.0) +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| xmin | m | Lower x bound | -0.16 | +| xmax | m | Upper x bound | 0.16 | +| ymin | m | Lower y bound | -0.16 | +| ymax | m | Upper y bound | 0.16 | +| length | m | Thickness of graphite plate | 0.05 | +| xwidth | m | Width of filter. Overrides xmin,xmax. | 0 | +| yheight | m | Height of filter. Overrides ymin,ymax. | 0 | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/contrib/Filter_graphite.comp) for `Filter_graphite.comp`. + +--- + +*Generated on mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/contrib/FlatEllipse_finite_mirror.md b/mcstas-comps/contrib/FlatEllipse_finite_mirror.md new file mode 100644 index 000000000..6ce5b4e63 --- /dev/null +++ b/mcstas-comps/contrib/FlatEllipse_finite_mirror.md @@ -0,0 +1,54 @@ +# The `FlatEllipse_finite_mirror` Component + +*McStas: Date: 2022-2023 + +NMO (nested mirror optic) modules* + +## Identification + +- **Site:** +- **Author:** Christoph Herb, TUM +- **Origin:** TUM +- **Date:** 2022-2023 + +## Description + +```text +Simulates NMO (nested mirror optic) modules as concevied by Böni et al., see +Christoph Herb et al., Nucl. Instrum. Meth. A 1040, 1671564 (1-18) 2022. + +The component relies on an updated version of conic.h from MIT. +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| sourceDist | m | Distance used for calculating the spacing of the mirrors | 0 | +| LStart | m | Left focal point | 0.6 | +| LEnd | m | Right focal point | 0.6 | +| lStart | m | z-Value of the mirror start | 0.0 | +| lEnd | m | z-Value of the mirror end | 0.0 | +| r_0 | m | distance to the mirror at lStart | 0.02076 | +| nummirror | 1 | number of mirrors | 9 | +| mf | | mvalue of the inner side of the coating, m>10 results in perfect reflections | 4 | +| mb | | mvalue of the outer side of the coating, m>10 results in perfect reflections | 0 | +| R0 | 1 | Low-angle reflectivity | 0.99 | +| Qc | AA-1 | critical scattering vector | 0.021 | +| W | AA-1 | width of supermirror cutoff | 0.003 | +| alpha | AA | Slope of reflectivity | 6.07 | +| mirror_width | m | width of the individual mirrors | 0.003 | +| mirror_sidelength | m | side length of the individual mirrors | 1 | +| doubleReflections | 1 | binary value determining whether the mirror backside is reflective | 0 | +| rfront_inner_file | str | file of distances to the optical axis of the individual mirrors | "NULL" | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/contrib/FlatEllipse_finite_mirror.comp) for `FlatEllipse_finite_mirror.comp`. +- Christoph Herb et al., Nucl. Instrum. Meth. A 1040, 1671564 (1-18) 2022. + +--- + +*Generated on mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/contrib/Foil_flipper_magnet.md b/mcstas-comps/contrib/Foil_flipper_magnet.md new file mode 100644 index 000000000..d45462a98 --- /dev/null +++ b/mcstas-comps/contrib/Foil_flipper_magnet.md @@ -0,0 +1,57 @@ +# The `Foil_flipper_magnet` Component + +*McStas: A magnet with a spin-flip foil inside* + +## Identification + +- **Site:** +- **Author:** Erik B Knudsen +- **Origin:** DTU Physics +- **Date:** Sep. 2015 + +## Description + +```text +ESCRIPTION +A magnet with a spin-flip foil inside + +This component models a magnet with a constant magnetic field and a slanted +magnetized foil inside acting as a spin-flipper. This arrangement may be used to +target the geometry of a Spin-Echo SANS instrument (Rekveldt, NIMB, 1997 || Rekveldt, Rev Sci Instr. 2005). +In its most basic form a SE-SANS instrument nrelies on inclined field regions of +constant magnetic field, which can be difficult to realize. Instead it is possible to emulate +such regions using a magnetized foil. + +In this component th emagntzied foil is modelled as a canted (by the angle phi) mathematical plane inside a region +of constant magnetic field of dimensions (xwidth,yheight,zdepth). Furthermore, exponetially decaying stray fields from +the constant field region may be specified by giving parameters (Bxwidth,Byheight,Bzdepth) > (xwidth,yheight,zdepth). +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| stray_field | | Toggle for modelling of stray fields. | 1 | +| **xwidth** | m | width of the magnet | | +| **yheight** | m | height of the magnet | | +| **zdepth** | m | thickness of the magnet | | +| Bxwidth | m | width of the B-field of thev component | -1 | +| Byheight | m | height of the B-field of the component | -1 | +| Bzdepth | m | thickness of the B-field of the component | -1 | +| phi | rd | angle (from the xz-plane) of the foil-spinflipper inside the magnet | 0.0 | +| foilthick | um | Thickness of the magnetized foil | 0.0 | +| **Bx** | T | Parameter used for x composant of field. | | +| **By** | T | Parameter used for y composant of field. | | +| **Bz** | T | Parameter used for z composant of field. | | +| foil_in | | Toggle for optional foil in the flipper. | 1 | +| verbose | | Toggle verbose mode | 0 | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/contrib/Foil_flipper_magnet.comp) for `Foil_flipper_magnet.comp`. + +--- + +*Generated on mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/contrib/GISANS_sample.md b/mcstas-comps/contrib/GISANS_sample.md new file mode 100644 index 000000000..4eacb2876 --- /dev/null +++ b/mcstas-comps/contrib/GISANS_sample.md @@ -0,0 +1,89 @@ +# The `GISANS_sample` Component + +*McStas: Sample for GISANS* + +## Identification + +- **Site:** +- **Author:** H. Frielinghaus +- **Origin:** FZJ +- **Date:** March 2023 + +## Description + +```text +The idea of this sample goes back to the real sample studied in the publication https://doi.org/10.1063/1.4723634 +This is a sandwich of a sapphire and silicon slab through which the neutrons impinge and the sample in between where the scattering emerges from. +The sample consist of spherical polystyrene colloids in heavy water that form aligned crystallites at the solid-liquid interface, +while in the middle of the volume the crytallites are orientationally averaged in the polar angle that points in the lateral direaction. +The crystallites of the current verision are not highly realistic because they are monoclinic with a 60° angle mimicking a fraction +of a hexagonal structure with hexagonal planes stacked in the z-direction. +Inside the routine one can change between 2 or 3 different planes. Also the total crystallite size can be changed. +Especially the parallelogram with 60° angle is unrealistic because one usually would assume the crystallites to have a hexagonal shape. +However, the finite crystallites mimic the final correlation length inside the sample. +The sample works for neutrons impingin from the sapphire, the silicon at grazing angles and in transmission in the sense of a SANS sample. +If the neutrons impinge through the other layers (sample and silicon oxide) - the responses are not so realistic and need further development. +Also multiple scattering would be needed to be implemented still - but could be done. + +What this sample component covers relatively well is the fact that damping of the intensity by scattering and absorption is also covered. +That means that even at larger angles than the critical angle the intensity is damped inside the sample and so only a certain near surface +layer scatters neutrons. +This effect is not covered by BornAgain. + +I see this as a start for further developments. + +Information extracted from malformatted docstrings follow: + +the total thickness of the sandwich is zsapph+zsamp+zsilicon +the thicknesses zsampsurf and zsiliconsurf are parts of the total sample/silicon thicknesses + +(scattering length densitites, reciprocal total cross section of absorption, reciprocal total cross section of incoherent scattering) +units rho... [A-2], abslen... [cm], inclen... [cm] +rhosapph, abslensapph, inclensapph for sapphire +rhoD2O, abslenD2O, inclenD2O for D2O as solvent in sample +rhoPS, abslenPS, inclenPS for polystyrene as colloids in sample +rhosiliconsurf, abslensiliconsurf, inclensiliconsurf for silicon surface (oxide layer) +rhosilicon, abslensilicon, inclensilicon for silicon +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| xwidth | m | Width of sample volume | 0.05 | +| yheight | m | Height of sample volume | 0.15 | +| zsapph | m | Thickness of the sapphire layer on one side | 0.02 | +| zsamp | m | Thickness of the overall sample between sapphire and silicon | 0.002 | +| zsampsurf | m | Thickness from the total of zsamp on either side of sapphire/silicon that is oriented | 0.000001 | +| zsilicon | m | Thickness of the silicon layer on the other side | 0.02 | +| zsiliconsurf | m | Thickness from the total of zsilicon on the sample side (oxidization layer) | 5e-9 | +| rhosapph | | | 5.773e-6 | +| abslensapph | | | 163.708 | +| inclensapph | | | 49.815 | +| rhoD2O | | | 6.364e-6 | +| abslenD2O | | | 44066.347 | +| inclenD2O | | | 7.258 | +| rhoPS | | | 1.358e-6 | +| abslenPS | | | 114.502 | +| inclenPS | | | 0.24588 | +| rhosiliconsurf | | | 4.123e-6 | +| abslensiliconsurf | | | 401.051 | +| inclensiliconsurf | | | 169.11 | +| rhosilicon | | | 2.079e-6 | +| abslensilicon | | | 209.919 | +| inclensilicon | | | 9901.6 | +| phiPS | 1 | Concentration vol/vol of colloids in D2O | 0.1 | +| Rad | A | Radius of colloids in Aangstroem | 370.0 | +| phirot | rad | angle of the ordered (aligned) crytallites at the two surfaces towards sapphire/silicon | 0.0 | +| sc_aim | 1 | how much is scattered versus transmitted | 0.98 | +| sans_aim | 1 | how much goes to the small angle range versus wide angles | 0.98 | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/contrib/GISANS_sample.comp) for `GISANS_sample.comp`. + +--- + +*Generated on mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/contrib/Guide_anyshape_r.md b/mcstas-comps/contrib/Guide_anyshape_r.md new file mode 100644 index 000000000..c46372cab --- /dev/null +++ b/mcstas-comps/contrib/Guide_anyshape_r.md @@ -0,0 +1,70 @@ +# The `Guide_anyshape_r` Component + +*McStas: Reflecting surface (guide and mirror) with any shape, defined from an OFF file +and a patch to allow m-, alpha- and W-values added per polygon face. +Derived from Guide_anyshape / Guide_anyshape_r .* + +## Identification + +- **Site:** +- **Author:** Emmanuel Farhi, adapted by Peter Link and Gaetano Mangiapia +- **Origin:** ILL/MLZ +- **Date:** August 4th 2010 + +## Description + +```text +This is a reflecting object component, derived from Guide_anyshape. +Its shape, as well as m-, alpha- and W-values (IN THIS ORDER) for each face, are defined from +an OFF file, given with its file name. The object size is set as given from the file, where +dimensions should be in meters. The bounding box may be re-scaled by specifying +xwidth,yheight,zdepth parameters. The object may optionally be centered when +using 'center=1'. + +If in input only the values of R0 and Qc are specified, leaving m, alpha and W all null, then +Guide_anyshape_g will use the values of these last three parameters that are specified in the OFF +file for each face: floating point based values may be provided for them. +In case at least one among m, alpha and W is not null, then Guide_anyshape_g will use these +values as input (common for all the faces), ignoring those specified in the OFF file + +The complex OFF/PLY geometry option handles any closed non-convex polyhedra. +It supports the OFF and NOFF file format but not COFF (colored faces). +Standard .OFF files may be generated from XYZ data using: +qhull < coordinates.xyz Qx Qv Tv o > geomview.off +or +powercrust coordinates.xyz +and viewed with geomview or java -jar jroff.jar (see below). +The default size of the object depends of the OFF file data, but its +bounding box may be resized using xwidth,yheight and zdepth. +PLY geometry files are also supported. +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| xwidth | m | Redimension the object bounding box on X axis is non-zero | 0 | +| yheight | m | Redimension the object bounding box on Y axis is non-zero | 0 | +| zdepth | m | Redimension the object bounding box on Z axis is non-zero | 0 | +| center | 1 | When set to 1, the object will be centered w.r.t. the local coordinate frame | 0 | +| transmit | 1 | When true, non reflected neutrons are transmitted through the surfaces, instead of being absorbed. No material absorption is taken into account though | 0 | +| R0 | 1 | Low-angle reflectivity | 0.99 | +| Qc | AA-1 | Critical scattering vector | 0.0219 | +| alpha | AA | Slope of reflectivity | 0 | +| m | 1 | m-value of material. Zero means completely absorbing. | 0 | +| W | AA-1 | Width of supermirror cut-off | 0 | +| geometry | str | Name of the OFF/PLY file describing the guide geometry | 0 | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/contrib/Guide_anyshape_r.comp) for `Guide_anyshape_r.comp`. +- Geomview and Object File Format (OFF) +- Java version of Geomview (display only) jroff.jar +- qhull +- powercrust + +--- + +*Generated on mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/contrib/Guide_curved.md b/mcstas-comps/contrib/Guide_curved.md new file mode 100644 index 000000000..60e6d3ffa --- /dev/null +++ b/mcstas-comps/contrib/Guide_curved.md @@ -0,0 +1,50 @@ +# The `Guide_curved` Component + +*McStas: Non-focusing curved neutron guide.* + +## Identification + +- **Site:** +- **Author:** Ross Stewart +- **Origin:** ILL (France). +- **Date:** November 18 2003 + +## Description + +```text +Models a rectangular curved guide tube with entrance centered on the Z axis. +The entrance lies in the X-Y plane. Draws a true depiction +of the guide, and trajectories. Guide is not focusing. + +Example: Guide_curved(w1=0.1, h1=0.1, l=2.0, R0=0.99, Qc=0.021, +alpha=6.07, m=2, W=0.003, curvature=2700) + +%BUGS +This component does not work with gravitation on. Use component Guide_gravity then. +Systematic error on transmitted flux is found to be about 10%. +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| **w1** | m | Width at the guide entry | | +| **h1** | m | Height at the guide entry | | +| **l** | m | length of guide | | +| R0 | 1 | Low-angle reflectivity | 0.995 | +| Qc | AA-1 | Critical scattering vector | 0.0218 | +| alpha | AA | Slope of reflectivity | 4.38 | +| m | 1 | m-value of material. Zero means completely absorbing. | 2 | +| W | AA-1 | Width of supermirror cut-off | 0.003 | +| curvature | m | Radius of curvature of the guide | 2700 | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/contrib/Guide_curved.comp) for `Guide_curved.comp`. +- Bender + +--- + +*Generated on mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/contrib/Guide_four_side.md b/mcstas-comps/contrib/Guide_four_side.md new file mode 100644 index 000000000..681ab6822 --- /dev/null +++ b/mcstas-comps/contrib/Guide_four_side.md @@ -0,0 +1,136 @@ +# The `Guide_four_side` Component + +*McStas: Guide with four side walls* + +## Identification + +- **Site:** +- **Author:** Tobias Panzner +- **Origin:** PSI +- **Date:** 07/08/2010 + +## Description + +```text +This component models a guide with four side walls. +As user you can controll the properties of every wall separatly. All togther you have up to +8 walls: 4 inner walls and 4 outer walls. + +Every single wall can have a elliptic, parabolic or straight shape. +All four sides of the guide are independent from each other. +In the elliptic case the side wall shape follows the equation x^2/b^2+(z+z0)^2/a^2=1 +(the center of the ellipse is located at (0,-z0)). +In the parabolic case the side wall shape follows the equation z=b-ax^2;mc +In the straight case the side wall shape follows the equation z=l/(w2-w1)*x-w1. + +The shape selection is done by the focal points. The focal points are located at the +z-axis and are defined by their distance to the entrance or exit window of the guide +(in the following called 'focal length'). + +If both focal lengths for one wall are zero it will be a straight wall (entrance and +exit width have to be given in the beginning). + +If one of the focal lengths is not zero the shape will be parabolic (only the entrance width +given in the beginning is recognized; exit width will be calculated). If the the entrance +focal length is zero the guide will be a focusing devise. +If the exit focal length is zero it will be defocusing devise. + +If both focals are non zero the shape of the wall will be elliptic (only the entrance width +given in the beginning is recognized; exit width will be calculated). + +Notice: 1.)The focal points are in general located outside the guide (positive focal lengths). +Focal points inside the guide need to have negative focal lengths. +2.)The exit width parameters (w2r, w2l, h2u,h2d) are only taken into account if the +walls have a linear shape. In the ellitic or parabolic case they will be ignored. + +For the inner channel: the outer side of each wall is calculated by the component in depentence +of the wallthickness and the shape of the inner side. + +Each of walls can have a own indepenting reflecting layer (defined by an input file) +or it can be a absorber or it can be transparent. + +The reflectivity properties can be given by an input file (Format [q(Angs-1) R(0-1)]) or by +parameters (Qc, alpha, m, W). + +%BUGS +This component does not work with gravitation on. + +This component does not work correctly in GROUP-modus. +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| RIreflect | | (str) Name of relfectivity file for the right inner wall. | 0 | +| LIreflect | | (str) Name of relfectivity file for the left inner wall. | 0 | +| UIreflect | | (str) Name of relfectivity file for the top inner wall. | 0 | +| DIreflect | | (str) Name of relfectivity file for the bottom inner wall. | 0 | +| ROreflect | | (str) Name of relfectivity file for the right outer wall. | 0 | +| LOreflect | | (str) Name of relfectivity file for the left outer wall. | 0 | +| UOreflect | | (str) Name of relfectivity file for the top outer wall. | 0 | +| DOreflect | | (str) Name of relfectivity file for the bottom outer wall. | 0 | +| w1l | m | Width at the left guide entry (positive x-axis) | 0.002 | +| w2l | m | Width at the left guide exit (positive x-axis) | 0.002 | +| linwl | m | left horizontal wall: distance of 1st focal point | 0 | +| loutwl | m | left horizontal wall: distance of 2nd focal point | 0 | +| w1r | m | Width at the right guide entry (negative x-axis) | 0.002 | +| w2r | m | Width at the right guide exit (negative x-axis) | 0.002 | +| linwr | m | right horizontal wall: distance of 1st focal point | 0.0 | +| loutwr | m | right horizontal wall: distance of 2nd focal point | 0 | +| h1u | m | Height at the top guide entry (positive y-axis) | 0.002 | +| h2u | m | Height at the top guide entry (positive y-axis) | 0.002 | +| linhu | m | upper vertical wall: distance of 1st focal point | 0.0 | +| louthu | m | upper vertical wall: distance of 2nd focal point | 0 | +| h1d | m | Height at the bottom guide entry (negative y-axis) | 0.002 | +| h2d | m | Height at the bottom guide entry (negative y-axis) | 0.002 | +| linhd | m | lower vertical wall: distance of 1st focal point | 0.0 | +| louthd | m | lower vertical wall: distance of 2nd focal point | 0 | +| l | m | length of guide (DEFAULT = 0) | 0 | +| R0 | 1 | Low-angle reflectivity (DEFAULT = 0.99) | 0.99 | +| Qcxl | AA-1 | Critical scattering vector for left vertical | 0.0217 | +| Qcxr | AA-1 | Critical scattering vector for right vertical | 0.0217 | +| Qcyu | AA-1 | Critical scattering vector for top inner wall | 0.0217 | +| Qcyd | AA-1 | Critical scattering vector for bottom inner wall | 0.0217 | +| alphaxl | AA | Slope of reflectivity for left vertical | 6.07 | +| alphaxr | AA | Slope of reflectivity for right vertical | 6.07 | +| alphayu | AA | Slope of reflectivity for top inner wall | 6.07 | +| alphayd | AA | Slope of reflectivity for bottom inner wall | 6.07 | +| Wxr | AA-1 | Width of supermirror cut-off for right inner wall | 0.003 | +| Wxl | AA-1 | Width of supermirror cut-off for left inner wall | 0.003 | +| Wyu | AA-1 | Width of supermirror cut-off for top inner wall | 0.003 | +| Wyd | AA-1 | Width of supermirror cut-off for bottom inner wall | 0.003 | +| mxr | 1 | m-value of material for right vertical inner wall. | 3.6 | +| mxl | 1 | m-value of material for left vertical inner wall. | 3.6 | +| myu | 1 | m-value of material for top inner wall | 3.6 | +| myd | 1 | m-value of material for bottom inner wall | 3.6 | +| QcxrOW | AA-1 | Critical scattering vector for right vertical | 0.0217 | +| QcxlOW | AA-1 | Critical scattering vector for left vertical | 0.0217 | +| QcyuOW | AA-1 | Critical scattering vector for top outer wall | 0.0217 | +| QcydOW | AA-1 | Critical scattering vector for bottom outer wall | 0.0217 | +| alphaxlOW | AA | Slope of reflectivity for left vertical | 6.07 | +| alphaxrOW | AA | Slope of reflectivity for right vertical | 6.07 | +| alphayuOW | AA | Slope of reflectivity for top outer wall | 6.07 | +| alphaydOW | AA | Slope of reflectivity for bottom outer wall | 6.07 | +| WxrOW | AA-1 | Width of supermirror cut-off for right outer wall | 0.003 | +| WxlOW | AA-1 | Width of supermirror cut-off for left outer wall | 0.003 | +| WyuOW | AA-1 | Width of supermirror cut-off for top outer wall | 0.003 | +| WydOW | AA-1 | Width of supermirror cut-off for bottom outer wall | 0.003 | +| mxrOW | 1 | m-value of material for right vertical outer wall | 0 | +| mxlOW | 1 | m-value of material for left vertical outer wall | 0 | +| myuOW | 1 | m-value of material for top outer wall | 0 | +| mydOW | 1 | m-value of material for bottom outer wall | 0 | +| rwallthick | m | thickness of the right wall (DEFAULT = 0.001 m) | 0.001 | +| lwallthick | m | thickness of the left wall (DEFAULT = 0.001 m) | 0.001 | +| uwallthick | m | thickness of the top wall (DEFAULT = 0.001 m) | 0.001 | +| dwallthick | m | thickness of the bottom wall(DEFAULT = 0.001 m) | 0.001 | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/contrib/Guide_four_side.comp) for `Guide_four_side.comp`. + +--- + +*Generated on mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/contrib/Guide_gravity_psd.md b/mcstas-comps/contrib/Guide_gravity_psd.md new file mode 100644 index 000000000..4bae647bb --- /dev/null +++ b/mcstas-comps/contrib/Guide_gravity_psd.md @@ -0,0 +1,101 @@ +# The `Guide_gravity_psd` Component + +*McStas: Neutron straight guide with gravity. Can be channeled and focusing. +Waviness may be specified, as well as side chamfers (on substrate).* + +## Identification + +- **Site:** +- **Author:** Emmanuel Farhi +- **Origin:** ILL (France). +- **Date:** Aug 03 2001 + +## Description + +```text +Models a rectangular straight guide tube centered on the Z axis, with +gravitation handling. The entrance lies in the X-Y plane. +The guide can be channeled (nslit,d,nhslit parameters). The guide coating +specifications may be entered via different ways (global, or for +each wall m-value). + +Waviness (random) may be specified either globally or for each mirror type. +Side chamfers (due to substrate processing) may be specified the same way. +In order to model a realistic straight guide assembly, a long guide of +length 'l' may be splitted into 'nelements' between which chamfers/gaps are +positioned. + +The reflectivity may be specified either using an analytical mode (see +Component manual) or as a text file in free format, with 1st +column as q[Angs-1] and 2nd column as the reflectivity R in [0-1]. +For details on the geometry calculation see the description in the McStas +component manual. + +There is a special rotating mode in order to approximate a Fermi Chopper +behaviour, in the case the neutron trajectory is nearly linear inside the +chopper slits, i.e. the neutrons are fast w/r/ to the chopper speed. +Slits are straight, but may be super-mirror coated. In this case, the +component is NOT centered, but located at its entry window. It should then +be shifted by -l/2. + +Example: Guide_gravity_psd(w1=0.1, h1=0.1, w2=0.1, h2=0.1, l=12, +R0=0.99, Qc=0.0219, alpha=6.07, m=1.0, W=0.003) + +%VALIDATION +May 2005: extensive internal test, all problems solved +Validated by: K. Lieutenant +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| **nxpsd** | 1 | Number of bins in the built-in mirror parallel monitors | | +| **filenameT** | str | Filename for top-mirror-monitor | | +| **filenameB** | str | Filename for bottom-mirror-monitor | | +| **filenameL** | str | Filename for left-mirror-monitor | | +| **filenameR** | str | Filename for right-mirror-monitor | | +| **w1** | m | Width at the guide entry | | +| **h1** | m | Height at the guide entry | | +| w2 | m | Width at the guide exit. If 0, use w1. | 0 | +| h2 | m | Height at the guide exit. If 0, use h1. | 0 | +| **l** | m | length of guide | | +| R0 | 1 | Low-angle reflectivity | 0.995 | +| Qc | AA-1 | Critical scattering vector | 0.0218 | +| alpha | AA | Slope of reflectivity | 4.38 | +| m | 1 | m-value of material. Zero means completely absorbing. m=0.65 | 1.0 | +| W | AA-1 | Width of supermirror cut-off | 0.003 | +| nslit | 1 | Number of vertical channels in the guide (>= 1) (nslit-1 vertical dividing walls). | 1 | +| d | m | Thickness of subdividing walls | 0.0005 | +| mleft | 1 | m-value of material for left. vert. mirror | -1 | +| mright | 1 | m-value of material for right. vert. mirror | -1 | +| mtop | 1 | m-value of material for top. horz. mirror | -1 | +| mbottom | 1 | m-value of material for bottom. horz. mirror | -1 | +| nhslit | 1 | Number of horizontal channels in the guide (>= 1). (nhslit-1 horizontal dividing walls). this enables to have nslit*nhslit rectangular channels | 1 | +| G | m/s2 | Gravitation norm. 0 value disables G effects. | 0 | +| aleft | 1 | alpha-value of left vert. mirror | -1 | +| aright | 1 | alpha-value of right vert. mirror | -1 | +| atop | 1 | alpha-value of top horz. mirror | -1 | +| abottom | 1 | alpha-value of left horz. mirror | -1 | +| wavy | deg | Global guide waviness | 0 | +| wavy_z | deg | Partial waviness along propagation axis | 0 | +| wavy_tb | deg | Partial waviness in transverse direction for top/bottom mirrors | 0 | +| wavy_lr | deg | Partial waviness in transverse direction for left/right mirrors | 0 | +| chamfers | m | Global chamfers specifications (in/out/mirror sides). | 0 | +| chamfers_z | m | Input and output chamfers | 0 | +| chamfers_lr | m | Chamfers on left/right mirror sides | 0 | +| chamfers_tb | m | Chamfers on top/bottom mirror sides | 0 | +| nelements | 1 | Number of sections in the guide (length l/nelements). | 1 | +| nu | Hz | Rotation frequency (round/s) for Fermi Chopper approximation | 0 | +| phase | deg | Phase shift for the Fermi Chopper approximation | 0 | +| reflect | str | Reflectivity file name. Format q(Angs-1) R(0-1) | "NULL" | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/contrib/Guide_gravity_psd.comp) for `Guide_gravity_psd.comp`. + +--- + +*Generated on mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/contrib/Guide_honeycomb.md b/mcstas-comps/contrib/Guide_honeycomb.md new file mode 100644 index 000000000..6fefe4c21 --- /dev/null +++ b/mcstas-comps/contrib/Guide_honeycomb.md @@ -0,0 +1,57 @@ +# The `Guide_honeycomb` Component + +*McStas: Neutron guide with gravity and honeycomb geometry. Can be channeled and focusing.* + +## Identification + +- **Site:** +- **Author:** G. Venturi +- **Origin:** ILL (France). +- **Date:** Apr 2003 + +## Description + +```text +Models a honeycomb guide tube centered on the Z axis. The entrance lies +in the X-Y plane. Gravitation applies also when reaching the guide input +window. The guide can be channeled (hexagonal channel section; nslit,d parameters). +The guide coating specifications may be entered via different ways (global, +or for each wall m-value). +For details on the geometry calculation see the description in the McStas +reference manual. + +Example: Guide_honeycomb(w1=0.1, w2=0.1, l=12, +R0=0.99, Qc=0.0219, alpha=6.07, m=1.0, W=0.003, nslit=1, d=0.0005) +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| **w1** | m | Width at the guide entry | | +| w2 | m | Width at the guide exit. If zero, sets w2=w1. | 0 | +| **l** | m | length of guide | | +| R0 | 1 | Low-angle reflectivity | 0.995 | +| Qc | AA-1 | Critical scattering vector | 0.0218 | +| alpha | AA | Slope of reflectivity | 4.38 | +| m | 1 | m-value of material. Zero means completely absorbing. | 1.0 | +| W | AA-1 | Width of supermirror cut-off | 0.003 | +| nslit | 1 | Number of horizontal channels in the guide (>= 1) [1] | 1 | +| d | m | Thickness of subdividing walls [0] | 0.0005 | +| mleftup | 1 | m-value of material for leftup. oblique mirror | -1 | +| mrightup | 1 | m-value of material for rightdown. oblique mirror | -1 | +| mleftdown | 1 | m-value of material for rightdown. oblique mirror | -1 | +| mrightdown | 1 | m-value of material for leftup. oblique mirror | -1 | +| mleft | 1 | m-value of material for left. vertical mirror | -1 | +| mright | 1 | m-value of material for right. vertical mirror | -1 | +| G | m/s2 | Gravitation norm. 0 value disables G effects. | 0 | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/contrib/Guide_honeycomb.comp) for `Guide_honeycomb.comp`. + +--- + +*Generated on mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/contrib/Guide_m.md b/mcstas-comps/contrib/Guide_m.md new file mode 100644 index 000000000..00c0d82d5 --- /dev/null +++ b/mcstas-comps/contrib/Guide_m.md @@ -0,0 +1,80 @@ +# The `Guide_m` Component + +*McStas: Release: McStas 1.12c + +Neutron guide.* + +## Identification + +- **Site:** +- **Author:** Kristian Nielsen +- **Origin:** Risoe +- **Date:** September 2 1998, Modified 2013 + +## Description + +```text +Models a rectangular guide tube centered on the Z axis. The entrance lies +in the X-Y plane. +For details on the geometry calculation see the description in the McStas +reference manual. +The reflectivity profile may either use an analytical mode (see Component +Manual) or a 2-columns reflectivity free text file with format +[q(Angs-1) R(0-1)]. + +Example: Guide(w1=0.1, h1=0.1, w2=0.1, h2=0.1, l=2.0, +R0=0.99, Qc=0.021, alpha=6.07, m=2, W=0.003 + +%VALIDATION +May 2005: extensive internal test, no bugs found +Validated by: K. Lieutenant + +%BUGS +This component does not work with gravitation on. Use component Guide_gravity then. +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| reflect | str | Reflectivity file name. Format [q(Angs-1) R(0-1)] | 0 | +| **w1** | m | Width at the guide entry | | +| **h1** | m | Height at the guide entry | | +| **w2** | m | Width at the guide exit | | +| **h2** | m | Height at the guide exit | | +| **l** | m | Length of guide | | +| R0_left | 1 | Low-angle reflectivity, left mirrror. | 0.99 | +| R0_right | 1 | Low-angle reflectivity, right mirror. | 0.99 | +| R0_top | 1 | Low-angle reflectivity, top mirror. | 0.99 | +| R0_bottom | 1 | Low-angle reflectivity, bottom mirror. | 0.99 | +| Qc_left | AA-1 | Critical scattering vector, left mirrror. | 0.0219 | +| Qc_right | AA-1 | Critical scattering vector, right mirror. | 0.0219 | +| Qc_top | AA-1 | Critical scattering vector, top mirror. | 0.0219 | +| Qc_bottom | AA-1 | Critical scattering vector, bottom mirror. | 0.0219 | +| aleft | AA | Slope of reflectivity, left mirrror. | 6.07 | +| aright | AA | Slope of reflectivity, right mirror. | 6.07 | +| atop | AA | Slope of reflectivity, top mirror. | 6.07 | +| abottom | AA | Slope of reflectivity, bottom mirror. | 6.07 | +| mleft | 1 | m-value of material. Zero means completely absorbing, left mirrror. | 2 | +| mright | 1 | m-value of material. Zero means completely absorbing, right mirror. | 2 | +| mtop | 1 | m-value of material. Zero means completely absorbing, top mirror. | 2 | +| mbottom | 1 | m-value of material. Zero means completely absorbing, bottom mirror. | 2 | +| W_left | AA-1 | Width of supermirror cut-off, left mirrror. | 0.003 | +| W_right | AA-1 | Width of supermirror cut-off, right mirror. | 0.003 | +| W_top | AA-1 | Width of supermirror cut-off, top mirror. | 0.003 | +| W_bottom | AA-1 | Width of supermirror cut-off, bottom mirror. | 0.003 | +| W | AA-1 | Overall width of supermirror cut-off, overwrites values from individual mirrors | 0 | +| m | 1 | Overall m-value of supermirrors, overwrites values from individual mirrors | 0 | +| alpha | AA | Overall slope of reflectivity, overwrites values from individual mirrors | 0 | +| R0 | 1 | Overall, low-angle reflectivity, overwrites values from individual mirrors | 0 | +| Qc | AA-1 | Overall, critical scattering vector, overwrites values from individual mirrors | 0 | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/contrib/Guide_m.comp) for `Guide_m.comp`. + +--- + +*Generated on mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/contrib/Guide_multichannel.md b/mcstas-comps/contrib/Guide_multichannel.md new file mode 100644 index 000000000..60128c8d5 --- /dev/null +++ b/mcstas-comps/contrib/Guide_multichannel.md @@ -0,0 +1,74 @@ +# The `Guide_multichannel` Component + +*McStas: Multichannel neutron guide with semi-transparent blades. +Derived from Guide_channeled by Christian Nielsen. +Allows to simulate bi-spectral extraction optics.* + +## Identification + +- **Site:** +- **Author:** Jan Saroun (saroun@ujf.cas.cz) +- **Origin:** Nuclear Physics Institute, CAS, Rez +- **Date:** 17.3.2022 + +## Description + +```text +Models a rectangular guide with equidistant vertical blades of finite thickness. +The blades material can be either fully absorbing or semi-transparent. The absorption +coefficient is wavelength dependent according to the semi-empirical model used +e.g. in J. Baker et al., J. Appl. Cryst. 41 (2008) 1003 or +A. Freund, Nucl. Instr. Meth. A 213 (1983) 495. +Data are provided for Si and Al2O3. + +All walls are flat, curvature is not implemented (may be added as a future upgrade) +Tapering is possible by setting different entry ad exit dimensions. +Different guide coating can be set for vertical and horizontal mirrors. +For transparent walls, neutrons are alloed to migrate between channels and to +propagate through the blades. + +The model is almost equivalent to the GUIDE component in SIMRES (http://neutron.ujf.cas.cz/restrax) +when used with zero curvature and type set to "guide or bender". +The features from SIMRES not included in this McSas model are: +- has a more conservative model for absorption in blades: events above r(m= 1) | 1 | +| dlam | m | Thickness of lamellae | 0.0005 | +| Qcx | AA-1 | Critical scattering vector for left and right vertical mirrors in each channel | 0.0218 | +| Qcy | AA-1 | Critical scattering vector for top and bottom mirrors | 0.0218 | +| alphax | AA | Slope of reflectivity for left and right vertical mirrors in each channel | 4.38 | +| alphay | AA | Slope of reflectivity for top and bottom mirrors | 4.38 | +| W | AA-1 | Width of supermirror cut-off for all mirrors | 0.003 | +| mx | 1 | m-value of material for left and right vertical mirrors in each channel. Zero means completely absorbing. | 1 | +| my | 1 | m-value of material for top and bottom mirrors. Zero means completely absorbing. | 1 | +| mater | string | "Si", "Al2O3", or "absorb" (default) | "absorb" | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/contrib/Guide_multichannel.comp) for `Guide_multichannel.comp`. + +--- + +*Generated on mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/contrib/ISIS_moderator.md b/mcstas-comps/contrib/ISIS_moderator.md new file mode 100644 index 000000000..75e3de358 --- /dev/null +++ b/mcstas-comps/contrib/ISIS_moderator.md @@ -0,0 +1,56 @@ +# The `ISIS_moderator` Component + +*McStas: ISIS Moderators* + +## Identification + +- **Site:** +- **Author:** S. Ansell and D. Champion +- **Origin:** ISIS +- **Date:** AUGUST 2005 + +## Description + +```text +Produces a TS1 or TS2 ISIS moderator distribution. The Face argument determines which moderator +is to be sampled. Each face uses a different Etable file (the location of which is determined by +the MCTABLES environment variable). Neutrons are created having a range of energies +determined by the Emin and Emax arguments. Trajectories are produced such that they pass +through the moderator face (defined by modXsixe and yheight) and a focusing rectangle +(defined by xh,focus_yh and dist). Please download the documentation for precise instructions for use. + +Example: ISIS_moderator(Face ="water", Emin = 49.0,Emax = 51.0, dist = 1.0, focus_xw = 0.01, +focus_yh = 0.01, xwidth = 0.074, yheight = 0.074, CAngle = 0.0,SAC= 1) +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| Face | word | Name of the face - TS2=groove,hydrogen,narrow,broad - | "hydrogen" | +| Emin | meV | Lower edge of energy distribution | 49.0 | +| Emax | meV | Upper edge of energy distribution | 51.0 | +| dist | m | Distance from source to the focusing rectangle | 1.0 | +| focus_xw | m | Width of focusing rectangle | 0.01 | +| focus_yh | m | Height of focusing rectangle | 0.01 | +| xwidth | m | Moderator vertical size | 0.074 | +| yheight | m | Moderator Horizontal size | 0.074 | +| CAngle | radians | Angle from the centre line | 0.0 | +| SAC | boolean | Apply solid angle correction or not (1/0) | 1 | +| Lmin | meV | Lower edge of wavelength distribution | 0 | +| Lmax | meV | Upper edge of wavelength distribution | 0 | +| target_index | 1 | relative index of component to focus at, e.g. next is +1 | 1 | +| verbose | boolean | Echo status information at everu 1e5'th neutron | 0 | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/contrib/ISIS_moderator.comp) for `ISIS_moderator.comp`. +- Further information should be +- downloaded from the ISIS MC website. +- *******************************************************************************/ + +--- + +*Generated on mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/contrib/Lens.md b/mcstas-comps/contrib/Lens.md new file mode 100644 index 000000000..85a736321 --- /dev/null +++ b/mcstas-comps/contrib/Lens.md @@ -0,0 +1,108 @@ +# The `Lens` Component + +*McStas: Refractive lens with absorption, incoherent scattering and surface imperfection.* + +## Identification + +- **Site:** +- **Author:** C. Monzat/E. Farhi/S. Desert/G. Euzen +- **Origin:** ILL/LLB +- **Date:** 2009 + +## Description + +```text +Refractive Lens with absorption, incoherent scattering and surface imperfection. +Geometry may be: +spherical (use r1 and r2 to specify radius of curvature), +planar (use phiy1 and phiy2 to specify rotation angle of plane w.r.t beam) +parabolic (use focus1 and focus2 as optical focal length). + +Optionally, you can specify the 'geometry' parameter as a OFF/PLY file name. +The complex geometry option handles any closed non-convex polyhedra. +It computes the intersection points of the neutron ray with the object +transparently, so that it can be used like a regular sample object. +It supports the PLY, OFF and NOFF file format but not COFF (colored faces). +Such files may be generated from XYZ data using: +qhull < coordinates.xyz Qx Qv Tv o > geomview.off +or +powercrust coordinates.xyz +and viewed with geomview or java -jar jroff.jar (see below). + +The lens cross-section is seen as a 2*radius disk from the beam Z axis, except +when a 'geometry' file is given. +Usually, you should stack more than one of these to get a significant effect +on the neutron beam, so-called 'compound refractive lens'. + +The focal length for N lenses with focal 'f' is f/N, where f=R/(1-n) +and R = r/2 for a spherical lens with curvature radius 'r' +R = focus for a parabolic lens with focal of the parabola +and n = sqrt(1-(lambda*lambda*rho*bc/PI)) with +bc = sqrt(fabs(sigma_coh)*100/4/PI)*1e-5 +rho = density*6.02214179*1e23*1e-24/weight + +Common materials: Should have high coherent, and low incoherent and absorption cross sections +Be: density=1.85, weight=9.0121, sigma_coh=7.63, sigma_inc=0.0018,sigma_abs=0.0076 +Pb: density=11.115,weight=207.2, sigma_coh=11.115,sigma_inc=0.003, sigma_abs=0.171 +Pb206: sigma_coh=10.68, sigma_inc=0 , sigma_abs=0.03 +Pb208: sigma_coh=11.34, sigma_inc=0 , sigma_abs=0.00048 +Zr: density=6.52, weight=91.224, sigma_coh=6.44, sigma_inc=0.02, sigma_abs=0.185 +Zr90: sigma_coh=5.1, sigma_inc=0 , sigma_abs=0.011 +Zr94: sigma_coh=8.4, sigma_inc=0 , sigma_abs=0.05 +Bi: density=9.78, weight=208.98, sigma_coh=9.148, sigma_inc=0.0084,sigma_abs=0.0338 +Mg: density=1.738, weight=24.3, sigma_coh=3.631, sigma_inc=0.08, sigma_abs=0.063 +MgF2: density=3.148, weight=62.3018,sigma_coh=11.74, sigma_inc=0.0816,sigma_abs=0.0822 +diamond: density=3.52, weight=12.01, sigma_coh=5.551, sigma_inc=0.001, sigma_abs=0.0035 +Quartz/silica: density=2.53, weight=60.08, sigma_coh=10.625,sigma_inc=0.0056,sigma_abs=0.1714 +Si: density=2.329, weight=28.0855,sigma_coh=2.1633,sigma_inc=0.004, sigma_abs=0.171 +Al: density=2.7, weight=26.98, sigma_coh=1.495, sigma_inc=0.0082,sigma_abs=0.231 +perfluoropolymer(PTFE/Teflon/CF2): +density=2.2, weight=50.007, sigma_coh=13.584,sigma_inc=0.0026,sigma_abs=0.0227 +Organic molecules with C,O,H,F + +Example: Lens(r1=0.025,r2=0.025, thickness=0.001,radius=0.0150) + +%BUGS +parabolic shape is not fully validated yet, but should do still... +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| r1 | m | radius of the first circle describing the lens. r>0 means concave face, r<0 means convex, r=0 means plane | 0 | +| r2 | m | radius of the second circle describing the lens r>0 means concave face, r<0 means convex, r=0 means plane | 0 | +| focus1 | m | focal of the first parabola describing the lens | 0 | +| focus2 | m | focal of the second parabola describing the lens | 0 | +| phiy1 | deg | angle of plane1 (r1=0) around y vertical axis | 0 | +| phiy2 | deg | angle of plane2 (r2=0) around y vertical axis | 0 | +| thickness | m | thickness of the lens between its two surfaces | 0.001 | +| radius | m | radius of the lens section, e.g. beam size. | 0.015 | +| sigma_coh | barn | coherent cross section | 11.74 | +| sigma_inc | barn | incoherent cross section | 0.0816 | +| sigma_abs | barn | thermal absorption cross section | 0.0822 | +| density | g/cm3 | density of the material for the lens | 3.148 | +| weight | g/mol | molar mass of the material | 62.3018 | +| p_interact | 1 | MC Probability for scattering the ray; otherwise transmit | 0.1 | +| focus_aw | deg | vertical angle to forward focus after scattering | 10 | +| focus_ah | deg | horizontal angle to forward focus after scattering | 10 | +| RMS | Angs | root mean square roughness of the surface | 0 | +| geometry | str | Name of an Object File Format (OFF) or PLY file for complex geometry. The OFF/PLY file may be generated from XYZ coordinates using qhull/powercrust | 0 | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/contrib/Lens.comp) for `Lens.comp`. +- M. L. Goldberger et al, Phys. Rev. 71, 294 - 310 (1947) +- Sears V.F. Neutron optics. An introduction to the theory of neutron optical phenomena and their applications. Oxford University Press, 1989. +- H. Park et al. Measured operationnal neutron energies of compound refractive lenses. Nuclear Instruments and Methods B, 251:507-511, 2006. +- J. Feinstein and R. H. Pantell. Characteristics of the thick, compound refractive lens. Applied Optics, 42 No. 4:719-723, 2001. +- Geomview and Object File Format (OFF) +- Java version of Geomview (display only) jroff.jar +- qhull +- powercrust + +--- + +*Generated on mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/contrib/Lens_simple.md b/mcstas-comps/contrib/Lens_simple.md new file mode 100644 index 000000000..22791d2d4 --- /dev/null +++ b/mcstas-comps/contrib/Lens_simple.md @@ -0,0 +1,72 @@ +# The `Lens_simple` Component + +*McStas: Rectangular/circular slit with parabolic/spherical LENS.* + +## Identification + +- **Site:** +- **Author:** Henrich Frielinghaus +- **Origin:** FZ Juelich +- **Date:** June 2010 + +## Description + +```text +A simple rectangular or circular slit. You may either +specify the radius (circular shape), or the rectangular bounds. +No transmission around the slit is allowed. + +At the slit position there is/are also a LENS or multiple LENSES present. +Spherical/parabolic abberation is taken into account in a simplified +manner. The focal point becomes a function of the distance ss from the +origin of the lens where the ray hits the lens (plane). +With this focal distance the refraction is calculated based on simple +geometrical optics (as tought already in school). + +The approximation gets wrong when the distance ss is too big, and +total reflection becomes possible. Then the corrections of the focal +distance are strong (see foc*= ... lines. When this correction factor +is too close to zero, the corrections become highly wrong). + +The advantage of this routine is the simplicity which makes the +simulation very fast - especially for multiple lenses. The argument +for this way of treating the lenses is that the collimation and +detector distance are large (say 20m) compared to the lens thickness +(say 2-5cm) and the lens array thickness (say max. 1m). + +For lens arrays one still can simulate several of these simplified +lenses instead of an exact treatment (because 5cm<<1m). The author +believes that this medium detailed treatment meets usually the +desired accuracy. + +Example: Lens_simple(rho=5.16e10,Rc=0.0254,Nl=7,xmin=-0.01,xmax=0.01,ymin=-0.01,ymax=0.01) +Lens_simple(rho=5.16e10,Rc=0.0254,Nl=7,radius=0.01) +Lens_simple(rho=5.16e10,Rc=0.0254,Nl=7,radius=0.035,SigmaAL=0.141, d0=0.002) +^^^^^^^^^^^ last example includes absorption of MgF2-lens. +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| rho | m-2 | Scattering length density | 5.16e14 | +| Rc | m | Radius (concave: Rc>0) of biconcave lens | 0.02 | +| Nl | 1 | Number of single lenses | 7.0 | +| parab | | Switch (not 0 -> parabolic, for 0 spherical) | 1.1 | +| xmin | m | Lower x bound | 0 | +| xmax | m | Upper x bound | 0 | +| ymin | m | Lower y bound | 0 | +| ymax | m | Upper y bound | 0 | +| radius | m | Radius of slit in the z=0 plane, centered at Origin | 0 | +| SigmaAL | | Absorption cross section per lambda (wavelength) [1/(m*AA)] | 0.141 | +| d0 | m | Minimum thickness in the centre of the lens | 0.002 | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/contrib/Lens_simple.comp) for `Lens_simple.comp`. + +--- + +*Generated on mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/contrib/Mirror_Curved_Bispectral.md b/mcstas-comps/contrib/Mirror_Curved_Bispectral.md new file mode 100644 index 000000000..605225fbc --- /dev/null +++ b/mcstas-comps/contrib/Mirror_Curved_Bispectral.md @@ -0,0 +1,46 @@ +# The `Mirror_Curved_Bispectral` Component + +*McStas: Single mirror plate that is curved and fits into an elliptic guide.* + +## Identification + +- **Site:** +- **Author:** Henrik Jacobsen +- **Origin:** RNBI +- **Date:** April 2012 + +## Description + +```text + +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| reflect | q(Angs-1) R(0-1) | (str) Name of relfectivity file. Format | 0 | +| **focus_s** | m | first focal point of ellipse in ABSOLUTE COORDINATES | | +| **focus_e** | m | second focal point of ellipse in ABSOLUTE COORDINATES | | +| **mirror_start** | m | start of mirror in ABSOLUTE COORDINATES | | +| **guide_start** | m | start of guide in ABSOLUTE COORDINATES | | +| **yheight** | m | the height of the mirror when not in the guide | | +| **smallaxis** | m | the smallaxis of the guide | | +| **length** | m | the length of the mirror | | +| **m** | | m-value of material | | +| transmit | 0/1 | 0: non reflected neutrons are absorbed. 1: non reflected neutrons pass through | 0 | +| substrate_thickness | m | thickness of substrate (for absorption) | 0.0005 | +| coating_thickness | m | thickness of coating (for absorption) | 10e-6 | +| theta_1 | deg | angle of mirror wrt propagation direction at start of mirror | 1.25 | +| theta_2 | deg | angle of mirror wrt propagation direction at center of mirror | 1.25 | +| theta_3 | deg | angle of mirror wrt propagation direction at end of mirror | 1.25 | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/contrib/Mirror_Curved_Bispectral.comp) for `Mirror_Curved_Bispectral.comp`. + +--- + +*Generated on mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/contrib/Mirror_Elliptic.md b/mcstas-comps/contrib/Mirror_Elliptic.md new file mode 100644 index 000000000..dabb8b166 --- /dev/null +++ b/mcstas-comps/contrib/Mirror_Elliptic.md @@ -0,0 +1,46 @@ +# The `Mirror_Elliptic` Component + +*McStas: Elliptical mirror.* + +## Identification + +- **Site:** +- **Author:** Sylvain Desert +- **Origin:** LLB +- **Date:** 2007 + +## Description + +```text +Models an elliptical mirror. The reflectivity profile is given by a 2-column reflectivity free +text file with format [q(Angs-1) R(0-1)]. The component is centered on the ellipse. + +Example: Mirror_Elliptic(reflect="supermirror_m3.rfl", focus=6.6e-4, +interfocus = 8.2, yheight = 0.0002, zmin=-3.24, zmax=-1.49) +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| reflect | q(Angs-1) R(0-1) | (str) Reflectivity file name. Format | 0 | +| focus | m | focal length (m) | 6.6e-4 | +| interfocus | m | Distance between the two elliptical focal points | 8.2 | +| yheight | m | height of the mirror | 2e-4 | +| zmin | m | z-axis coordinate of ellipse start | 0 | +| zmax | m | z-axis coordinate of ellipse end | 0 | +| R0 | 1 | Low-angle reflectivity | 0.99 | +| Qc | AA-1 | Critical scattering vector | 0.0219 | +| alpha | AA | Slope of reflectivity | 6.07 | +| m | 1 | m-value of material. Zero means completely absorbing. | 1.0 | +| W | AA-1 | Width of supermirror cut-off | 0.003 | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/contrib/Mirror_Elliptic.comp) for `Mirror_Elliptic.comp`. + +--- + +*Generated on mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/contrib/Mirror_Elliptic_Bispectral.md b/mcstas-comps/contrib/Mirror_Elliptic_Bispectral.md new file mode 100644 index 000000000..b59f8c659 --- /dev/null +++ b/mcstas-comps/contrib/Mirror_Elliptic_Bispectral.md @@ -0,0 +1,44 @@ +# The `Mirror_Elliptic_Bispectral` Component + +*McStas: Single mirror plate that is curved and fits into an elliptic guide.* + +## Identification + +- **Site:** +- **Author:** Henrik Jacobsen +- **Origin:** RNBI +- **Date:** April 2012 + +## Description + +```text + +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| reflect | q(Angs-1) R(0-1) | (str) Name of relfectivity file. Format | 0 | +| **focus_start_w** | m | Horizontal position of first focal point of ellipse in ABSOLUTE COORDINATES | | +| **focus_end_w** | m | Horizontal position of second focal point of ellipse in ABSOLUTE COORDINATES | | +| **focus_start_h** | m | Vertical position of first focal point of ellipse in ABSOLUTE COORDINATES | | +| **focus_end_h** | m | VErtical position of second focal point of ellipse in ABSOLUTE COORDINATES | | +| **mirror_start** | m | start of mirror in ABSOLUTE COORDINATES | | +| **m** | | m-value of material | | +| **smallaxis_w** | m | Small-axis dimension of horizontal ellipse | | +| **smallaxis_h** | m | Small-axis dimension of vertical ellipse | | +| **length** | m | the length of the mirror | | +| transmit | 0/1 | 0: non reflected neutrons are absorbed. 1: non reflected neutrons pass through | 0 | +| substrate_thickness | m | thickness of substrate (for absorption) | 0.0005 | +| coating_thickness | m | thickness of coating (for absorption) | 10e-6 | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/contrib/Mirror_Elliptic_Bispectral.comp) for `Mirror_Elliptic_Bispectral.comp`. + +--- + +*Generated on mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/contrib/Mirror_Parabolic.md b/mcstas-comps/contrib/Mirror_Parabolic.md new file mode 100644 index 000000000..5f99951ed --- /dev/null +++ b/mcstas-comps/contrib/Mirror_Parabolic.md @@ -0,0 +1,45 @@ +# The `Mirror_Parabolic` Component + +*McStas: Parabolic mirror.* + +## Identification + +- **Site:** +- **Author:** Sylvain Desert +- **Origin:** LLB +- **Date:** 2007 + +## Description + +```text +Models a parabolic mirror. The reflectivity profile is given by a 2-column reflectivity free +text file with format [q(Angs-1) R(0-1)]. + +Example: Mirror_Parabolic(reflect="supermirror_m3.rfl", xwidth = 0.05, xshift=0.05, +yheight = 2e-4, focus = 6.6e-4) +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| reflect | q(Angs-1) R(0-1) | (str) Reflectivity file name. Format | 0 | +| xwidth | m | width of the illuminated parabola | 0.05 | +| xshift | m | distance between the beam centre and the symetric axis of the parabolla | 0.019 | +| yheight | m | height of the mirror | 2e-4 | +| focus | m | focal length | 6.6e-4 | +| R0 | 1 | Low-angle reflectivity | 0.99 | +| Qc | AA-1 | Critical scattering vector | 0.0219 | +| alpha | AA | Slope of reflectivity | 6.07 | +| m | 1 | m-value of material. Zero means completely absorbing. | 1.0 | +| W | AA-1 | Width of supermirror cut-off | 0.003 | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/contrib/Mirror_Parabolic.comp) for `Mirror_Parabolic.comp`. + +--- + +*Generated on mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/contrib/Monochromator_2foc.md b/mcstas-comps/contrib/Monochromator_2foc.md new file mode 100644 index 000000000..71e6e0285 --- /dev/null +++ b/mcstas-comps/contrib/Monochromator_2foc.md @@ -0,0 +1,73 @@ +# The `Monochromator_2foc` Component + +*McStas: Double bent monochromator with multiple slabs* + +## Identification + +- **Site:** +- **Author:** Peter Link. +- **Origin:** Uni. Gottingen (Germany) +- **Date:** Feb. 12,1999 + +## Description + +```text +Double bent monochromator which uses a small-mosaicity approximation as well +as the approximation vy^2 << vz^2 + vx^2. +Second order scattering is neglected. +For an unrotated monochromator component, the crystal plane lies in the y-z +plane (ie. parallel to the beam). +When curvatures are set to 0, the monochromator is flat. +The curvatures approximation for parallel beam focusing to distance L, with +monochromator rotation angle A1 are: +RV = 2*L*sin(DEG2RAD*A1); +RH = 2*L/sin(DEG2RAD*A1); + +Example: Monochromator_2foc(zwidth=0.02, yheight=0.02, gap=0.0005, NH=11, NV=11, +mosaich=30, mosaicv=30, r0=0.7, Q=1.8734) + +Example values for lattice parameters +PG 002 DM=3.355 AA (Highly Oriented Pyrolytic Graphite) +PG 004 DM=1.607 AA +Heusler 111 DM=3.362 AA (Cu2MnAl) +CoFe DM=1.771 AA (Co0.92Fe0.08)b +Ge 311 DM=1.714 AA +Si 111 DM=3.135 AA +Cu 111 DM=2.087 AA +Cu 002 DM=1.807 AA +Cu 220 DM=1.278 AA +Cu 111 DM=2.095 AA +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| reflect | k, R | reflectivity file name of text file as 2 columns | 0 | +| zwidth | m | horizontal width of an individual slab | 0.01 | +| yheight | m | vertical height of an individual slab | 0.01 | +| gap | m | typical gap between adjacent slabs | 0.0005 | +| NH | columns | number of slabs horizontal | 11 | +| NV | rows | number of slabs vertical | 11 | +| mosaich | arcmin | Horisontal mosaic FWHM | 30.0 | +| mosaicv | arcmin | Vertical mosaic FWHM | 30.0 | +| r0 | 1 | Maximum reflectivity | 0.7 | +| Q | AA-1 | Scattering vector | 1.8734 | +| RV | m | radius of vertical focussing, flat for 0 | 0 | +| RH | m | radius of horizontal focussing, flat for 0 | 0 | +| DM | Angstrom | monochromator d-spacing instead of Q=2*pi/DM | 0 | +| mosaic | arcmin | sets mosaich=mosaicv | 0 | +| width | m | total width of monochromator | 0 | +| height | m | total height of monochromator | 0 | +| verbose | 0/1 | verbosity level | 0 | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/contrib/Monochromator_2foc.comp) for `Monochromator_2foc.comp`. +- Additional note from Peter Link. + +--- + +*Generated on mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/contrib/Monochromator_bent.md b/mcstas-comps/contrib/Monochromator_bent.md new file mode 100644 index 000000000..4abf0e973 --- /dev/null +++ b/mcstas-comps/contrib/Monochromator_bent.md @@ -0,0 +1,63 @@ +# The `Monochromator_bent` Component + +*McStas: 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:** 24 August 2023 + +## Description + +```text +This monochromator is an array of crystals, that can be bent. +The crystals are placed by the user in the x,y,z pos and rot parameters. +The crystal is bent, so that it follows a curve on a cylinder of radius_x. +The monochromator lies along the z plane, so when a diffraction angle of theta +is desired, it should just be inserted in the ROTATED parameter around +the y-axis. +Instruments that showcase the use of this component is the +"Test_monochromator_bent.instr", and the "ILL_SALSA.instr" under the examples folder. +SALSA showcases its complex use in a real instrument, while Test_monochromator_bent +makes a simple show of its capabilities. +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| zwidth | m | Width of each crystal without bending. | 0.2 | +| yheight | m | Height of each crystal without bending. | 0.1 | +| xthickness | m | Thickness of each crystal without bending. | 0.0005 | +| radius_x | m | Radius of the circle the monochromator bends on in the plane. Can be negative. | 2 | +| radius_y | m | Radius 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. | 0 | +| plane_of_reflection | "Si400" | The plane of reflection from the material. The list of possible reflections can be seen in the source code. | "Si400" | +| angle_to_cut_horizontal | degrees | Angle between cut and normal of crystal slab, horizontally | 0 | +| mosaicity | arcmin | Gaussian mosaicity of the crystal. Always the horizontal mosaicity | 30 | +| mosaic_anisotropy | 1 | Anisotropy of the mosaicity, changes vertical mosaicity to be mosaic_anisotropy*mosaicity | 1 | +| n_crystals | # | Number of crystals in your array. | 1 | +| domainthickness | μm | Thickness of the crystal domains. | 10 | +| temperature | K | Temperature of the monochromator in Kelvin. | 300 | +| optimize | | Flag to tell if the component should optimize for reflections or not. | 0 | +| x_pos | vector | x-Position of each crystal | NULL | +| y_pos | vector | y-Position of each crystal | NULL | +| z_pos | vector | z-Position of each crystal | NULL | +| x_rot | vector | Rotation around x-axis for each crystal | NULL | +| y_rot | vector | Rotation around y-axis for each crystal | NULL | +| z_rot | vector | Rotation around z-axis for each crystal NOTE: Rotations happen around x, then y, then z. | NULL | +| verbose | | Verbosity of the monochromator. Used for debugging. | 0 | +| draw_as_rectangles | | Draw the monochromators as boxes. DOES NOT WORK WHEN USING _rot parameters. | 0 | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/contrib/Monochromator_bent.comp) for `Monochromator_bent.comp`. +- Jan Šaroun NIM A Volume 529, Issue 1-3 (2004), pp162-165 + +--- + +*Generated on mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/contrib/Monochromator_bent_complex.md b/mcstas-comps/contrib/Monochromator_bent_complex.md new file mode 100644 index 000000000..2251abe56 --- /dev/null +++ b/mcstas-comps/contrib/Monochromator_bent_complex.md @@ -0,0 +1,58 @@ +# The `Monochromator_bent_complex` Component + +*McStas: 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 + +```text +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. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| zwidth | m | Width of each crystal without bending. | NULL | +| yheight | m | Height of each crystal without bending. | NULL | +| xthickness | m | Thickness of each crystal without bending. | NULL | +| radius_x | m | Radius of the circle the monochromator bends on in the plane. Can be negative. | NULL | +| radius_y | m | Radius 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_horizontal | degrees | Angle between cut and normal of crystal slab, horizontally | NULL | +| mosaicity | arcmin | Gaussian mosaicity of the crystal. Always the horizontal mosaicity | NULL | +| mosaic_anisotropy | 1 | Anisotropy of the mosaicity, changes vertical mosaicity to be mosaic_anisotropy*mosaicity | NULL | +| domainthickness | μm | Thickness of the crystal domains. | NULL | +| temperature | K | Temperature of the monochromator in Kelvin. | NULL | +| plane_of_reflection | string | The 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_pos | vector | x-Position of each crystal | NULL | +| y_pos | vector | y-Position of each crystal | NULL | +| z_pos | vector | z-Position of each crystal | NULL | +| x_rot | vector | Rotation around x-axis for each crystal | NULL | +| y_rot | vector | Rotation around y-axis for each crystal | NULL | +| z_rot | vector | Rotation around z-axis for each crystal NOTE: Rotations happen around x, then y, then z. | NULL | +| n_crystals | 1 | Number of crystals in your array. | 1 | +| optimize | 1 | Flag to tell if the component should optimize for reflections or not. | 0 | +| verbose | 1 | Verbosity of the monochromator. Used for debugging. | 0 | +| draw_as_rectangles | 1 | Draw the monochromators as boxes. DOES NOT WORK WHEN USING _rot parameters. | 0 | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/contrib/Monochromator_bent_complex.comp) for `Monochromator_bent_complex.comp`. +- Jan Šaroun NIM A Volume 529, Issue 1-3 (2004), pp162-165 +- Christensen, D.L.; Cabeza, S.; Pirling, T.; Lefmann, K.; Šaroun, J. Simulating Neutron Diffraction from Deformed Mosaic Crystals in McStas. Quantum Beam Sci. 2026, 10, 6. https://doi.org/10.3390/qubs10010006 + +--- + +*Generated on mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/contrib/MultiDiskChopper.md b/mcstas-comps/contrib/MultiDiskChopper.md new file mode 100644 index 000000000..d4cbdba0a --- /dev/null +++ b/mcstas-comps/contrib/MultiDiskChopper.md @@ -0,0 +1,68 @@ +# The `MultiDiskChopper` Component + +*McStas: Based on DiskChopper (Revision 1.18) by Peter Willendrup (2006), +which in turn is based on Chopper (Philipp Bernhardt), Jitter and beamstop from work by +Kaspar Hewitt Klenoe (jan 2006), adjustments by Rob Bewey (march 2006)* + +## Identification + +- **Site:** +- **Author:** Markus Appel +- **Origin:** ILL / FAU Erlangen-Nuernberg +- **Date:** 2015-10-19 + +## Description + +```text +Models a disk chopper with a freely configurable slit pattern. For simple applications, +use the DiskChopper component and see the component manual example of DiskChopper GROUPing. +If the chopper slit pattern should be dynamically configurable or a complicated pattern +is to be used as first chopper on a continuous source, use this component. + +Width and position of the slits is defined as a list in string parameters so +they can easily be taken from instrument parameters. +The chopper axis is located on the y axis as defined by the parameter delta_y. +When the chopper is the first chopper after a continuous (i.e. time-independent) +source, the parameter isfirst should be set to 1 to increase Monte-Carlo efficiency. + + +Examples (see parameter definitions for details): +Two opposite slits with 10 and 20deg opening, with the 20deg slit in the beam at t=0.02: +MultiDiskChopper(radius=0.2, slit_center="0;180", slit_width="10;20", delta_y=-0.1, +nu=302, nslits=2, phase=180, delay=0.02) + +First chopper on a continuous source, creating pulse trains for one additional revolution +before and after the revolution at t=0: +MultiDiskChopper(radius=0.2, slit_center="0;180", slit_width="10;20", delta_y=-0.1, +nu=302, nslits=2, phase=180, isfirst=1, nrev=1) +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| slit_center | string | (deg) Angular position of the slits (similar to slit_width) | "0 180" | +| slit_width | string | (deg) Angular width of the slits, given as list in a string separated by space ' ', comma ',', underscore '_' or semicolon ';'. Example: "0;20;90;135;270" | "10 20" | +| nslits | | Number of slits to read from slit_width and slit_center | 2 | +| delta_y | m | y-position of the chopper rotation axis. If the chopper is located above the guide (delta_y>0), the coordinate system will be mirrored such that the created pulse pattern in time is the same as for delta_y<0. A warning will be printed in this case. | -0.3 | +| nu | Hz | Rotation speed of the disk, the sign determines the direction. | 0 | +| nrev | | When isfirst=1: Number of *additional* disk revolutions before *and* after the one around t=delay to distribute events on. If set to 2 for example, there will be 2 leading, 1 central, and 2 trailing revolutions of the disk (2*nrev+1 in total). | 0 | +| ratio | | When isfirst=1: Spacing of the additional revolutions from the parameter nrev from the central revolution. | 1 | +| jitter | s | Jitter in the time phase. | 0 | +| delay | s | Time delay of the chopper clock. | 0 | +| isfirst | 0/1 | Set to 1 for the first chopper after a continuous source. The neutron events | 0 | +| phase | deg | Phase angle located on top of the disk at t=delay (see below). | 0 | +| radius | m | Outer radius of the disk | 0.375 | +| equal | 0/1 | When isfirst=1: If 0, the neutron events will be distributed between different slits proportional to the slit size. If 1, the events will be distributed such that each slit transmits the same number of events. This parameter can be used to achieve comparable simulation statistics over different pulses when simulating small and large slits together. | 0 | +| abs_out | | If 1, absorb all neutrons outside the disk diameter. | 0 | +| verbose | 0/1 | Set to 1 to display more information during the simulation. | 0 | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/contrib/MultiDiskChopper.comp) for `MultiDiskChopper.comp`. + +--- + +*Generated on mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/contrib/Multilayer_Sample.md b/mcstas-comps/contrib/Multilayer_Sample.md new file mode 100644 index 000000000..a78c7bfa3 --- /dev/null +++ b/mcstas-comps/contrib/Multilayer_Sample.md @@ -0,0 +1,56 @@ +# The `Multilayer_Sample` Component + +*McStas: Multilayer Reflecting sample using matrix Formula, v2 with 'nrepeats' for repeating multilayer structure.* + +## Identification + +- **Site:** +- **Author:** Robert Dalgliesh +- **Origin:** ISIS +- **Date:** June 2010 + +## Description + +```text +in order to get this to compile you need to link against +the gsl and gslcblas libraries. + +to do this automatically edit +/usr/local/lib/mcstas/tools/perl/mcstas_config.perl + +add -lgsl and -lgslcblas to the CFLAGS line + +Horizontal reflecting substrate defined by SLDs,Thicknesses, roughnesses +The superphase may also be determined + +Example: Multilayer_Sample(xmin=-0.1, xmax=0.1,zmin=-0.1, zmax=0.1, nlayer=1,sldPar={0.0,2.0e-6,0.0e-6},dPar={20.0}, sigmaPar={5.0,5.0}) + +Example: d1 500: sld1 (air) 0.0: sld2 (Si) 2.07e-6: sldf1(film Ni) 9.1e-6 +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| xwidth | m | Width of substrate | 0.2 | +| zlength | m | Length of substrate | 0.2 | +| nlayer | 1 | Number of film layers | 1 | +| nrepeats | 1 | Number of repeats of the block of layers appart from the superphase and substrate | 1 | +| sldPar | AA^-2 | Scattering length Density's of layers | {0.0,2.0e-6,0.0e-6} | +| dPar | AA | Thicknesses of film layers | {20.0} | +| sigmaPar | AA | r.m.s roughnesses of the interfaces | {5.0,5.0} | +| frac_inc | 1 | Fraction of statistics to assign to incoherent scattering | 0 | +| ythick | m | Thickness of substrate | 0 | +| mu_inc | m^-1 | Incoherent scattering length | 5.62 | +| target_index | 1 | Used in combination with focus_xw and focus_yh to indicate solid angle for incoherent scattering. | 0 | +| focus_xw | m | Used in combination with target_index and focus_yh to indicate solid angle for incoherent scattering. | 0 | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/contrib/Multilayer_Sample.comp) for `Multilayer_Sample.comp`. + +--- + +*Generated on mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/contrib/NMO.md b/mcstas-comps/contrib/NMO.md new file mode 100644 index 000000000..a8ea87d13 --- /dev/null +++ b/mcstas-comps/contrib/NMO.md @@ -0,0 +1,56 @@ +# The `NMO` Component + +*McStas: Date: 2022-2023 + +NMO (nested mirror optic) modules* + +## Identification + +- **Site:** +- **Author:** Christoph Herb, TUM +- **Origin:** TUM +- **Date:** 2022-2023 + +## Description + +```text +Simulates NMO (nested mirror optic) modules as concevied by Böni et al., see +Christoph Herb et al., Nucl. Instrum. Meth. A 1040, 1671564 (1-18) 2022. + +The component relies on an updated version of conic.h from MIT. + +NMO.comp contains no actual code, uses INHERIT of all sections from FlatEllipse_finite_mirror +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| sourceDist | m | Distance used for calculating the spacing of the mirrors | 0 | +| LStart | m | Left focal point | 0.6 | +| LEnd | m | Right focal point | 0.6 | +| lStart | m | z-Value of the mirror start | 0. | +| lEnd | m | z-Value of the mirror end | 0. | +| r_0 | m | distance to the mirror at lStart | 0.02076 | +| nummirror | 1 | number of mirrors | 9 | +| mf | | mvalue of the inner side of the coating, m>10 results in perfect reflections | 4 | +| mb | | mvalue of the outer side of the coating, m>10 results in perfect reflections | 0 | +| R0 | 1 | Low-angle reflectivity | 0.99 | +| Qc | AA-1 | critical scattering vector | 0.021 | +| W | AA-1 | width of supermirror cutoff | 0.003 | +| alpha | AA | Slope of reflectivity | 6.07 | +| mirror_width | m | width of the individual mirrors | 0.003 | +| mirror_sidelength | m | side length of the individual mirrors | 1 | +| doubleReflections | 1 | binary value determining whether the mirror backside is reflective | 0 | +| rfront_inner_file | str | file of distances to the optical axis of the individual mirrors | "NULL" | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/contrib/NMO.comp) for `NMO.comp`. +- Christoph Herb et al., Nucl. Instrum. Meth. A 1040, 1671564 (1-18) 2022. + +--- + +*Generated on mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/contrib/NPI_tof_dhkl_detector.md b/mcstas-comps/contrib/NPI_tof_dhkl_detector.md new file mode 100644 index 000000000..53e3d6403 --- /dev/null +++ b/mcstas-comps/contrib/NPI_tof_dhkl_detector.md @@ -0,0 +1,73 @@ +# The `NPI_tof_dhkl_detector` Component + +*McStas: Release: McStas 2.5 +Last update: 30/11/2018 + +NPI detector for estimating dhkl from tof* + +## Identification + +- **Site:** +- **Author:** Jan Saroun, saroun@ujf.cas.cz +- **Origin:** NPI +- **Date:** July 1, 2017 + +## Description + +```text +A cylindrical detector which converts time-of-flight data (x,y,z,time) to a 1D diffractogram in dhkl. +The detector model includes finite detection depth, spatial and time resolution. Optionally, the component +exports position and time coordinates of detection events in an ASCII file. + +The component can also handle setups employing a modulation chopper for peak multiplexing at a long pulse source, +as proposed for the diffractometer BEER@ESS. In this case, the component requires chopper parameters +(modulation period, width of the primary unmodulated pulse), and a file with estimated dhkl values. +The component then estimates valid regions on the angle/tof map, excluding areas assumed to be empty +or with overlaping lines. This map is exported together with the diffractogram. + +Tips for usage: +1) Centre the detector at the sample axis, keep z-axis parallel to the incident beam. +2) Set the radius equal to the distance from the sample axis to the front face of the detection volume. +3) Linst-Lc is used to determine "instrumental" wavelength as lambda = h/m_n*time/(Linst-Lc); +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| filename | str | Name of file in which to store the detector data. | 0 | +| radius | m | Radius of detector. | 2 | +| yheight | m | Height of detector. | 0.3 | +| zdepth | m | Thickness of the detection volume. | 0.01 | +| amin | deg | minimum of scattering angle to be detected. | 75 | +| amax | deg | maximum of scattering angle to be detected. | 105 | +| nd | | Number of bins for dhkl in the 1D diffractograms. | 200 | +| na | | Number of bins for scattering angles in the 2D maps. | 800 | +| nt | | Number of bins for time of flight in the 2D maps. | 800 | +| nev | | Number of detection events to export in "events.dat" (only modulation mode, set 1 for no export) | 1 | +| d_min | AA | minimum of inter-planar spacing to be detected. | 1 | +| d_max | AA | maximum of inter-planar spacing to be detected. | 3 | +| **time0** | s | Time delay of the wavelength definition chopper with respect to the source pulse. | | +| **Linst** | m | Distance from the source to the detector. | | +| **Lc** | m | Distance from the source to the pulse chopper (set 0 for a short pulse source). | | +| res_x | m | Spatial resolution along x (Gaussian FWHM). | 0 | +| res_y | m | Spatial resolution along y (Gaussian FWHM). | 0 | +| res_t | s | Time resolution (Gaussian FWHM). Readout only, path to capture is accounted for by the tracing code. | 0 | +| mu | 1/cm/AA | Capture coefficient for the detection medium. | 1.0 | +| mod_shift | float | Relative shift of the modulation pattern (delta_d/d, constant for all reflections). | 0 | +| modulation | 1\|0 | Switch on/off the modulation regime (BEER multiplexing technique). | 0 | +| mod_dt | s | Modulation period. | 0 | +| mod_twidth | s | Width of the primary source pulse. | 0 | +| mod_d0_table | str | Name of a file with the list of dhkl estimates (one per line). | 0 | +| verbose | 1\|0 | Switch for extended reporting. | 0 | +| restore_neutron | 1\|0 | Switch for restoring of previous neutron state. | 1 | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/contrib/NPI_tof_dhkl_detector.comp) for `NPI_tof_dhkl_detector.comp`. + +--- + +*Generated on mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/contrib/NPI_tof_theta_monitor.md b/mcstas-comps/contrib/NPI_tof_theta_monitor.md new file mode 100644 index 000000000..86b01073e --- /dev/null +++ b/mcstas-comps/contrib/NPI_tof_theta_monitor.md @@ -0,0 +1,50 @@ +# The `NPI_tof_theta_monitor` Component + +*McStas: Release: McStas 1.6 + +Cylindrical (2pi) PSD Time-of-flight monitor.* + +## Identification + +- **Site:** +- **Author:** Kim Lefmann +- **Origin:** Risoe +- **Date:** October 2000 + +## Description + +```text +Derived from TOF_cylPSD_monitor. +Code is extended by the option allowing to define range of scattering angles, therefore creating only a part of the cylinder surface. +The plot is transposed when compared to TOF_cylPSD_monitor: scattering angles are on the horizontal axis. + + +Example: TOF_cylPSD_monitor_NPI(nt = 1024, nphi = 960, filename = "Output.dat", +radius = 2, yheight = 1.0, tmin = 3e4, tmax = 12e4, amin = 75, amax = 105, restore_neutron = 1) +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| filename | str | Name of file in which to store the detector image | 0 | +| radius | m | Cylinder radius | 1 | +| yheight | m | Cylinder height | 0.3 | +| **tmin** | mu-s | Beginning of time window | | +| **tmax** | mu-s | End of time window | | +| **amin** | deg | minimum angle to detect | | +| **amax** | deg | maximum angle to detect | | +| restore_neutron | 1 | If set, the monitor does not influence the neutron state | 1 | +| verbose | | | 0 | +| nt | 1 | Number of time bins | 128 | +| na | | | 90 | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/contrib/NPI_tof_theta_monitor.comp) for `NPI_tof_theta_monitor.comp`. + +--- + +*Generated on mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/contrib/PSD_Detector.md b/mcstas-comps/contrib/PSD_Detector.md new file mode 100644 index 000000000..574bf8acd --- /dev/null +++ b/mcstas-comps/contrib/PSD_Detector.md @@ -0,0 +1,168 @@ +# The `PSD_Detector` Component + +*McStas: Position-sensitive gas-filled detector with gaseous thermal-neutron +converter (box, cylinder or 'banana').* + +## Identification + +- **Site:** +- **Author:** Thorwald van Vuure +- **Origin:** ILL +- **Date:** Feb 21st, 2005 + +## Description + +```text +An n times m pixel Position Sensitive Detector (PSD), box, cylinder or banana +filled with a mixture of thermal-neutron converter gas and stopping gas. +This model implements wires detection, including charge drift, parallax, etc. +The default is a simple 1D/2D position detector. However, setting +the parameter 'type' to "events" will save the signal as an event file which +contains all neutron parameters at detection points, including time. This is +especially suited for TOF detectors. Please use Histogrammer afterwards. +The gas creation event (neutron absorption in gas) is flagged as SCATTERED==1, +and the charge detection (signal) is flagged as SCATTERED==2. + +GEOMETRY: +A flat rectangular box of given depth is simulated, or alternatively +a cylinder (when giving radius), or a horizontal cylindrical 'banana' +detector (when giving the width along the arc). +Box position is at its center, the 'banana' and cylinder have their +position at focus point, symetric in angular range for the 'banana'. + +GAS SPECIFICATIONS: +The converter gas can be specified as He-3, BF3 or N2. +The filling pressure of converter gas must be specified along +with the zdepth: this gives an absorption probability (e.g. ~90% for +0.18 nm neutrons at zdepth 3 cm and He-3 pressure 5 bar). +The stopping gas can be specified as one of the following gases: +CF4, C3H8, CO2, Xe/TMA or He, or any for which a table of stopping +powers is available. NB: each stopping gas table has specific +data on a pair of particles (from thermal-neutron absorptions in +either He-3, BF3 or N2) in a specific gas. Unusual choices like N2 +as a converter and He as a stopping gas probably require the +calculation of a new table. +Tip: to do a simulation in pure He-3, specify 0 bar for the stopping gas. +The pressures of the two gases together put a lower limit on the +achievable spatial resolution, no matter what pixel size is +specified. +Example: 1 bar CF4 gives ~2.5 mm spatial resolution, 3 bar CF4 gives +~1 mm. C3H8 requires more pressure for the same resolution, then +Xe/TMA, then CO2 and finally He. + +IMPLEMENTED FEATURES: +Taken into account are the following effects: +- (rectangularly distributed) error in the recorded position due to +the range of the neutron capture products in the gas +- angular dependence of absorption efficiency +- border effect (events outside the sensitive volume tend to be +counted in the border pixels) +- parallax effect (with, if desired, an electrostatic lens to +partially correct for this - use "LensOn=1") +- wall effect +To correctly take the wall effect into account, a value must be +specified for the energy threshold for acceptance of an event as a +valid neutron event. This normally serves to discriminate from +gammas. Because these are not simulated in McStas, a value of 0 keV +can be chosen for this threshold if one is interested in seeing the +maximum number of neutrons; however, a more realistic value would be +100 keV. This implies seeing the maximum number of neutrons as well, +except in geometries with dominating wall effect. +The border effect is a considerably complex phenomenon: it depends +on the precise electric field configuration near the border. It is +simulated here simply by introducing a dead zone, gas-filled, +bordering the sensitive volume. Events in there can still cause +signals in the detector. The dead zone can cause a shadow in the +sensitive volume, just as in reality. +The algorithm simply adds all events on the first 'pixel' in the +dead zone to the border pixels. This is a coarse approximation, +because the physical effect depends on the orientation of the +tracks and the energy threshold setting. The bottom line is that +tracking the position of the Center Of Gravity of the charge +deposition in the detector does not allow for accurate modeling of +the border effect, and therefore the border pixels should be +ignored, just as in a real detector. +Note that specifying 0 width of the dead zone next to the +sensitive volume, apart from being unrealistic, does not allow +accurate simulation of the border effect: in this case, there will +be a relative lack of events on the border pixels due to the wall +effect. +This component determines the position of the Center Of Gravity of +the charge cloud in the detector. It does not simulate independent +channels. +Manufacturing imperfections such as wire diameter variations and +spread in electronic amplifier component properties are not simulated. +This should allow an experimenter to identify these manufacturing +imperfections in his physical machine and correct for them. + +Example: PSD_Detector(xwidth=0.192, yheight=0.192, nx=64, ny=64, +zdepth=0.03, threshold=100, borderx=-1, bordery=-1, +PressureConv=5, PressureStop=1, +FN_Conv="Gas_tables/He3inHe.table", FN_Stop="Gas_tables/He3inCF4.table", +xChDivRelSigma=0, yChDivRelSigma=0, +filename="BIDIM19.psd") + +Example: PSD_Detector(xwidth=0.26, yheight=0.26, nx=128, ny=128, +zdepth=0.03, threshold=100, borderx=-1, bordery=-1, +PressureConv=5, PressureStop=1, +FN_Conv="Gas_tables/He3inHe.table", FN_Stop="Gas_tables/He3inCF4.table", +xChDivRelSigma=0, yChDivRelSigma=0, +filename="BIDIM26.psd") + +Example: PSD_Detector(radius=0.0127, yheight=0.20, nx=1, ny=128, +threshold=100, borderx=-1, +PressureConv=9.9, PressureStop=0.1, +FN_Conv="Gas_tables/He3inHe.table", FN_Stop="Gas_tables/He3inCO2.table", +yChDivRelSigma=0.006, +filename="ReuterStokes.psd") + +Example: PSD_Detector(awidth=1.533, yheight=0.4, nx=640, ny=256, +radius=0.73, zdepth=0.032, dc=0.026, threshold=100, +borderx=-1, bordery=-1, +PressureConv=5, PressureStop=1, +FN_Conv="Gas_tables/He3inHe.table", FN_Stop="Gas_tables/He3inCF4.table", +xChDivRelSigma=0, yChDivRelSigma=0.0037, +LensOn=1, filename="D19.psd") +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| nx | 1 | Number of pixel columns | 128 | +| ny | 1 | Number of pixel rows | 128 | +| xwidth | m | Width of detector opening, in the case of a flat box | 0 | +| radius | m | Radius of detector for cylindrical/banana shape | 0 | +| awidth | m | Width of detector opening along the horizontal arc of the detector, measured along the inside arc of the sensitive volume in the case of a 'banana' detector | 0 | +| yheight | m | Height of detector opening | 0 | +| zdepth | m | Depth of the sensitive volume of the detector | 0.03 | +| threshold | keV | Energy threshold for acceptance of an event | 100 | +| PressureConv | bar | Pressure of gaseous thermal-neutron converter (e.g. He-3) | 5 | +| PressureStop | bar | Pressure of stopping gas | 1 | +| interpolate | 1 | Performs energy interpolation if true | 1 | +| p_interact | 1 | Fraction of statistical events to be treated by component. Set it to 0 to use real absorption probability | 0 | +| verbose | 1 | Gives more information and spectrum | 0 | +| LensOn | 1 | set to 1 to simulate an electrostatic lens according to P. Van Esch, NIM A 540 (2005) pp. 361-367. | 1 | +| dc | m | Distance from the entrance window to the cathode plane, where the correction zone of the lens ends for banana shape and LensOn=1 | 0 | +| borderx | m | Width of (gas-filled) border on the side of the detector | -2 | +| bordery | m | Height of (gas-filled) border on the top/bottom of the detector giving rise to various border effects. Set to -2 to obtain the height of one pixel, -1 for the depth of the detector (default), or specify a non-negativedistance | -2 | +| xChDivRelSigma | 1 | Sigma of the error in position determination along the x axis (relative to xwidth), uniquely due to charge division readout. Set to 0 in case of independent channel readout along the x dimension | 0 | +| yChDivRelSigma | 1 | Relative sigma due to charge division in y direction, relative to yheight. | 0 | +| bufsize | 1 | Size of neutron output buffer default is 0, i.e. save all - recommended. | 0 | +| restore_neutron | 1 | If set, the monitor does not influence the neutron state | 0 | +| angle | deg | Angular opening of detector in the case of a 'banana' detector, then overrides awidth parameter | 0 | +| type | string | If set to 'events' detector signal saves signal into an event file to be read e.g. by Histogrammer. This is to be used for TOF detectors. | 0 | +| filename | text | Name of file in which to store the detector image. The name of the component is used if file name is not specified | 0 | +| FN_Conv | text | Filename of the stopping power table of the converter gas | "He3inHe.table" | +| FN_Stop | text | Filename of the stopping power table of the stopping gas | "He3inCF4.table" | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/contrib/PSD_Detector.comp) for `PSD_Detector.comp`. +- The test/example instrument Test_PSD_Detector.instr. + +--- + +*Generated on mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/contrib/PSD_Pol_monitor.md b/mcstas-comps/contrib/PSD_Pol_monitor.md new file mode 100644 index 000000000..24f22f8b0 --- /dev/null +++ b/mcstas-comps/contrib/PSD_Pol_monitor.md @@ -0,0 +1,47 @@ +# The `PSD_Pol_monitor` Component + +*McStas: Position-sensitive monitor.* + +## Identification + +- **Site:** +- **Author:** Alexander Backs, based on PSD_monitor by K. Lefmann +- **Origin:** ESS +- **Date:** 2022 + +## Description + +```text +An (n times m) pixel PSD monitor, measuring local polarisation as function of x,y coordinates. + +Example: PSD_Pol_monitor(xmin=-0.1, xmax=0.1, ymin=-0.1, ymax=0.1, nx=90, ny=90, my=1, filename="Output.psd") +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| nx | 1 | Number of pixel columns | 90 | +| ny | 1 | Number of pixel rows | 90 | +| filename | string | Name of file in which to store the detector image | 0 | +| xmin | m | Lower x bound of detector opening | -0.05 | +| xmax | m | Upper x bound of detector opening | 0.05 | +| ymin | m | Lower y bound of detector opening | -0.05 | +| ymax | m | Upper y bound of detector opening | 0.05 | +| xwidth | m | Width of detector. Overrides xmin, xmax | 0 | +| yheight | m | Height of detector. Overrides ymin, ymax | 0 | +| restore_neutron | 1 | If set, the monitor does not influence the neutron state | 0 | +| nowritefile | 1 | If set, monitor will skip writing to disk | 0 | +| mx | 1 | Define the projection axis along which the polarizatoin is evaluated, x-component | 0 | +| my | 1 | Define the projection axis along which the polarizatoin is evaluated, y-component | 0 | +| mz | 1 | Define the projection axis along which the polarizatoin is evaluated, z-component | 0 | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/contrib/PSD_Pol_monitor.comp) for `PSD_Pol_monitor.comp`. + +--- + +*Generated on mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/contrib/PSD_monitor_rad.md b/mcstas-comps/contrib/PSD_monitor_rad.md new file mode 100644 index 000000000..f447ea88b --- /dev/null +++ b/mcstas-comps/contrib/PSD_monitor_rad.md @@ -0,0 +1,40 @@ +# The `PSD_monitor_rad` Component + +*McStas: Position-sensitive monitor with radially averaging.* + +## Identification + +- **Site:** +- **Author:** Henrich Frielinghaus +- **Origin:** FZ-Juelich/FRJ-2/IFF/KWS-2 +- **Date:** Sept 2004 + +## Description + +```text +Radial monitor that allows for radial averaging. +Comment: The intensity is given as two files: +1) a radial sum +2) a radial average (i.e. intensity per area) + +Example: PSD_monitor_rad(rmax=0.2, nr=100, filename="Output.psd", filename_av="Output_av.psd") +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| nr | 1 | Number of concentric circles | 100 | +| filename | text | Name of file in which to store the detector image | 0 | +| filename_av | text | Name of file in which to store the averaged detector image | 0 | +| rmax | m | Outer radius of detector | 0.2 | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/contrib/PSD_monitor_rad.comp) for `PSD_monitor_rad.comp`. + +--- + +*Generated on mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/contrib/PSD_spinDmon.md b/mcstas-comps/contrib/PSD_spinDmon.md new file mode 100644 index 000000000..8f8520ede --- /dev/null +++ b/mcstas-comps/contrib/PSD_spinDmon.md @@ -0,0 +1,44 @@ +# The `PSD_spinDmon` Component + +*McStas: Position-sensitive monitor, measuring the spin-down component of the neutron beam.* + +## Identification + +- **Site:** +- **Author:** Michael Schneider (SNAG) +- **Origin:** SNAG +- **Date:** 2024 + +## Description + +```text +An (n times m) pixel PSD monitor, measuring the spin-down component of the neutron beam. + +Example: PSD_monitor(xmin=-0.1, xmax=0.1, ymin=-0.1, ymax=0.1, nx=90, ny=90, filename="Output.psd") +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| nx | 1 | Number of pixel columns | 90 | +| ny | 1 | Number of pixel rows | 90 | +| filename | string | Name of file in which to store the detector image | 0 | +| xmin | m | Lower x bound of detector opening | -0.05 | +| xmax | m | Upper x bound of detector opening | 0.05 | +| ymin | m | Lower y bound of detector opening | -0.05 | +| ymax | m | Upper y bound of detector opening | 0.05 | +| xwidth | m | Width of detector. Overrides xmin, xmax | 0 | +| yheight | m | Height of detector. Overrides ymin, ymax | 0 | +| restore_neutron | 1 | If set, the monitor does not influence the neutron state | 0 | +| nowritefile | 1 | If set, monitor will skip writing to disk | 0 | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/contrib/PSD_spinDmon.comp) for `PSD_spinDmon.comp`. + +--- + +*Generated on mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/contrib/PSD_spinUmon.md b/mcstas-comps/contrib/PSD_spinUmon.md new file mode 100644 index 000000000..6d998ee58 --- /dev/null +++ b/mcstas-comps/contrib/PSD_spinUmon.md @@ -0,0 +1,44 @@ +# The `PSD_spinUmon` Component + +*McStas: Position-sensitive monitor, measuring the spin-up component of the neutron beam.* + +## Identification + +- **Site:** +- **Author:** Michael Schneider (SNAG) +- **Origin:** SNAG +- **Date:** 2024 + +## Description + +```text +An (n times m) pixel PSD monitor, measuring the spin-up component of the neutron beam. + +Example: PSD_monitor(xmin=-0.1, xmax=0.1, ymin=-0.1, ymax=0.1, nx=90, ny=90, filename="Output.psd") +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| nx | 1 | Number of pixel columns | 90 | +| ny | 1 | Number of pixel rows | 90 | +| filename | string | Name of file in which to store the detector image | 0 | +| xmin | m | Lower x bound of detector opening | -0.05 | +| xmax | m | Upper x bound of detector opening | 0.05 | +| ymin | m | Lower y bound of detector opening | -0.05 | +| ymax | m | Upper y bound of detector opening | 0.05 | +| xwidth | m | Width of detector. Overrides xmin, xmax | 0 | +| yheight | m | Height of detector. Overrides ymin, ymax | 0 | +| restore_neutron | 1 | If set, the monitor does not influence the neutron state | 0 | +| nowritefile | 1 | If set, monitor will skip writing to disk | 0 | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/contrib/PSD_spinUmon.comp) for `PSD_spinUmon.comp`. + +--- + +*Generated on mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/contrib/PerfectCrystal.md b/mcstas-comps/contrib/PerfectCrystal.md new file mode 100644 index 000000000..29c3b7725 --- /dev/null +++ b/mcstas-comps/contrib/PerfectCrystal.md @@ -0,0 +1,89 @@ +# The `PerfectCrystal` Component + +*McStas: Based on a perfect crystal component by: Miguel A. Gonzalez, A. Dianoux June 2013 (ILL) + +Changelog: +Version 1.1 +- BUGFIX: correct neutron energy shift in Doppler mode +- added option 'debyescherrer' to select analyzer geometry +- added option 'facette' to approximate analyzer sphere by small, flat crystals + +Version 1.0 +- inital release* + +## Identification + +- **Site:** +- **Author:** Markus Appel +- **Origin:** ILL / FAU Erlangen-Nuernberg +- **Date:** 2015-12-21 + +## Description + +```text +Perfect crystal component, primarily for use as monochromator and analyzer in +backscattering spectrometers. Reflection from a single Bragg reflex of a flat or +spherical surface is simulated using a Darwin, Ewald or Gaussian profile. Doppler +movement of the monochromator is supported as well. + +Orientation of the crystal surface is *different* from other monochromator components! +Gravitational energy shift for tall analyzers should work in principle, but it not tested yet. +See the parameter description on how to define the geometry and properties. + +[1] Website for Backscattering Spectroscopy: http://www.ill.eu/sites/BS-review/index.htm + +Examples: +IN16B (ILL) Si111 large angle analyzers (approximate dimensions): +PerfectCrystal(radius=2, lambda=6.2708, sigma=0.24e-3, +ttmin=40, ttmax=165, phimin=-45, phimax=+45, centerfocus=1) + +IN16B (ILL) Si111 Doppler monochromator: +PerfectCrystal(radius=2.165, lambda=6.2708, sigma=0.24e-3, +width = 0.500, height = 0.250, centerfocus=0, +speed = 4.7, amplitude = 0.075, exclusive=1) +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| ttmin | deg | | NAN | +| ttmax | deg | analyzer coverage angle in horizontal xz-plane between -180 and 180 | NAN | +| tt0 | deg | | NAN | +| ttwidth | deg | horizontal coverage as center and full width | NAN | +| width | m | absolute width | NAN | +| phimin | deg | | NAN | +| phimax | deg | vertical analyzer coverage between -90 and 90 (-180 and 180 if debyescherrer==1) | NAN | +| phi0 | deg | | NAN | +| phiwidth | deg | vertical coverage as center and full width | NAN | +| height | m | absolute height (only if debyescherrer==0) | NAN | +| debyescherrer | -180...180 | (0/1) bend analyzer following a Debye-Scherrer ring along scattering angle tt (twotheta) (phi = | 0 | +| facette | m | width of square crystal facettes arranged on the spherical surface (set 0 to disable). Default: 0 Warning: Facettation will fail at the poles along +-y axis. | 0 | +| facette_xi | deg | random misalignemt of each facette. Default: 0 | 0 | +| centerfocus | 0/1 | Component origin is the center of the analyzer sphere if 1, if set to 0 the origin is on the analyzer surface. Default: 0 | 0 | +| radius | m | Radius of curvature, set to 0 for a flat surface. Default: 0 | 0 | +| tau | A^-1 | Scattering vector of the reflex (sometimes also called Q...) | NAN | +| lambda | A | Alternatively to tau: backscattered wavelength | NAN | +| R0 | | Peak reflectivity. Default: 1 | 1.0 | +| dtauovertau | 1 | Plateau width of the Ewald/Darwin curve (see | NAN | +| dtauovertau_ext | | Relative variation of tau (randomized for each trajectory, full width) | 0 | +| ewald | 0/1 | Use Ewald curve if 1, Darwin curve if 0. Default: 1 (Ewald) | 1 | +| sigma | meV | Width of the Gaussian reflectivity curve in meV (corresponding to the energy resolution). (The width will be transformed and the Gaussian is actually calculated in k-space.) | NAN | +| ismirror | 0/1 | Simply reflect all neutrons if 1. Good for debugging/visualization. Default: 0 | 0 | +| speed | m/s | Maximum Doppler speed. The actual monochromator velocity is randomized between -speed and +speed. Default: 0 | 0 | +| amplitude | m | Amplitude of the Doppler movement. Default: 0 | 0 | +| smartphase | 0/1 | Optimize Doppler phase for better MC efficiency if set to 1. *WARNING:* Experimental option! Always compare to a simulation without smartphase. Better do not use smartwidth with Ewald/Darwin curves due to their endless tails. Default: 0 | 0 | +| smartwidth | meV | Half width of the possible energy reflection window for smartphase. Default: 5*sigma OR 10*2*dtauovertau*E0 | NAN | +| exclusive | 0/1 | If set to 1, absorb all neutrons that missed the monochromator/analyzer surface. Default: 0 | 0 | +| transmit | 0...1 | Monte-Carlo probability of transmitting an event through the monochromator/analyzer surface. (Events with R=1.0 for DarwinE/Ewald curves are always reflected!). Default: 0 | 0 | +| verbose | | | 0 | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/contrib/PerfectCrystal.comp) for `PerfectCrystal.comp`. + +--- + +*Generated on mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/contrib/Pol_bender_tapering.md b/mcstas-comps/contrib/Pol_bender_tapering.md new file mode 100644 index 000000000..8b4f16049 --- /dev/null +++ b/mcstas-comps/contrib/Pol_bender_tapering.md @@ -0,0 +1,73 @@ +# The `Pol_bender_tapering` Component + +*McStas: Polarising bender.* + +## Identification + +- **Site:** +- **Author:** Erik Bergbaeck Knudsen (erkn@fysik.dtu.dk) +- **Origin:** DTU Physics +- **Date:** June 2012 + +## Description + +```text +A component modelling a set of identical blades bent to form a multcihannel (nslits) +bender. The bender has a cylindrically curved entry plane (Will be extended to also +allow a flat entry plane). + +The bender may also be tapered such that it can have focusing or defocusing porperties. +This may be specified through the "channel_file"-parameter, which points to a data file +in which the individual channels are defined by an entry- and an exit-width. + +The file format for channel file columns: +> #d-spacing1 d-spacing2 l_spacer d-coating1 d-coating2 +> 1e-3 0.8e-3 1e-5 1e-9 1e-9 + +Each blades is considered coated with a reflecting coating, whose thickness is defined in the +latter two columsn of the channel data file. + +Coating reflectivities are read from +another data file with separate reflectivities for up and down spin. When a neutron ray hits a blade +the polarization vector associated with the ray is decomposed into spin-up and down +probablities, which in turn determines the overall reflectivity for this ray on the mirror. +Furthermore the probabilities are used to also reconstruct the polarization vector of the reflected +ray. + +File format for the reflectivity file: +> #parameter = m +> q/m R(up) R(down) + +The effect of spacers inside the channels is modelled by absorption only. The depth of the spacers +in a channel is considered constant for one channel (set in the channel data file), the number of +them is constant across all channels and is an input parameter to the component. +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| channel_file | | File name of file containing channel data. such as spacer widths etc. (see above for format) | "channel.dat" | +| xwidth | m | Width at the bender entry. Currently unsupported. | 0 | +| **yheight** | m | Height at the bender entry. | | +| **length** | m | Length of blades that make up the bender. | | +| **d_substrate** | m | Thickness of the substrate. | | +| entry_radius | m | Radius of curvature of the entrance window. | 10 | +| radius | m | Curvature of a single plate/polarizer. +:curve left/-:right | 100 | +| G | m/s^2 | Magnitude of gravitation. | 9.8 | +| nslit | 1 | Number of slits in the bender | 1 | +| debug | | If > 0 print out some internal parameters. | 1 | +| reflect_file | | File name of file containing reflectivity data parametrized either by q or m. | NULL | +| sigma_abs | barn | Absorption per unit cell at v=2200 m/s of spacers. Defaults to literature value for Al. | 0.231 | +| V0 | AA^3 | Volume of unit cell for spacers. Defaults to Al. | 66.4 | +| nspacer | | Number of spacers per channel. | 5 | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/contrib/Pol_bender_tapering.comp) for `Pol_bender_tapering.comp`. + +--- + +*Generated on mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/contrib/Pol_pi_2_rotator.md b/mcstas-comps/contrib/Pol_pi_2_rotator.md new file mode 100644 index 000000000..b69e9b8aa --- /dev/null +++ b/mcstas-comps/contrib/Pol_pi_2_rotator.md @@ -0,0 +1,39 @@ +# The `Pol_pi_2_rotator` Component + +*McStas: Ideal π/2-rotator* + +## Identification + +- **Site:** +- **Author:** Erik Knudsen (erkn@fysik.dtu.dk) +- **Origin:** Risoe +- **Date:** 8/4-2008 + +## Description + +```text +Simple, idelized, component that turns the polarization exactly π/2 around the specified vector +vector (rx,ry,rx). +The geometry of the component is realized as a box, where the the spin is rotated at the z-midpoint. +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| xwidth | m | width of the component | 0.1 | +| yheight | m | height of the component | 0.1 | +| zdepth | m | thickness of the component | 0.01 | +| rx | | x-component of the rotation axis | 0 | +| ry | | y-component of the rotation axis | 0 | +| rz | | z-component of the rotation axis | 1 | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/contrib/Pol_pi_2_rotator.comp) for `Pol_pi_2_rotator.comp`. + +--- + +*Generated on mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/contrib/Pol_triafield.md b/mcstas-comps/contrib/Pol_triafield.md new file mode 100644 index 000000000..0b5fd2835 --- /dev/null +++ b/mcstas-comps/contrib/Pol_triafield.md @@ -0,0 +1,56 @@ +# The `Pol_triafield` Component + +*McStas: Constant magnetic field in a isosceles triangular coil* + +## Identification + +- **Site:** +- **Author:** Morten Sales, based on Pol_constBfield by Peter Christiansen +- **Origin:** Helmholtz-Zentrum Berlin +- **Date:** 2013 + +## Description + +```text +Rectangular box with constant B field along y-axis (up) in a isosceles triangle. +There is a guide (or precession) field as well. It is along y in the entire rectangular box. +A neutron hitting outside the box opening or the box sides is absorbed. + + +__________________ +| /\ | +| Bguide/ \Bguide | x +| / \ | ^ +| / \ | | +| / B \ | |-----> z +| / and \ | +| / Bguide \ | +| / \ | +|/________________\| + +The angle of the inclination of the triangular field boundary is given by the arctangent to xwidth/(0.5*zdepth) + +This component does NOT take gravity into account. + +Example: Pol_triafield(xwidth=0.1, yheight=0.1, zdepth=0.2, B=1e-3, Bguide=0.0) +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| **xwidth** | m | Width of opening | | +| **yheight** | m | Height of opening | | +| **zdepth** | m | zdepth of field | | +| B | T | Magnetic field along y-direction inside triangle | 0 | +| Bguide | T | Magnetic field along y-direction inside entire box | 0 | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/contrib/Pol_triafield.comp) for `Pol_triafield.comp`. + +--- + +*Generated on mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/contrib/Radial_div.md b/mcstas-comps/contrib/Radial_div.md new file mode 100644 index 000000000..75d21f0e1 --- /dev/null +++ b/mcstas-comps/contrib/Radial_div.md @@ -0,0 +1,46 @@ +# The `Radial_div` Component + +*McStas: A radial divergence sensitive monitor with wavelength restrictions.* + +## Identification + +- **Site:** +- **Author:** Kaspar Hewitt Klenø, modified from Hdiv_monitor +- **Origin:** NBI +- **Date:** Jan 2011 + +## Description + +```text +A radial divergence sensitive monitor with wavelength restrictions. The counts are distributed in +n pixels. + +Example: +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| ndiv | 1 | Number of pixel rows | 20 | +| restore_neutron | 1 | If set, the monitor does not influence the neutron state | 0 | +| **filename** | str | Name of file in which to store the detector image | | +| xmin | m | Lower x bound of detector opening | 0 | +| xmax | m | Upper x bound of detector opening | 0 | +| ymin | m | Lower y bound of detector opening | 0 | +| ymax | m | Upper y bound of detector opening | 0 | +| xwidth | m | Width/diameter of detector (x). Overrides xmin,xmax. | 0 | +| yheight | m | Height of detector (y). Overrides ymin,ymax. | 0 | +| maxdiv_r | deg | Maximal radial divergence detected | 2 | +| **Lmin** | AA | Minimum wavelength detected | | +| **Lmax** | AA | Maximum wavelength detected | | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/contrib/Radial_div.comp) for `Radial_div.comp`. + +--- + +*Generated on mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/contrib/SANSCurve.md b/mcstas-comps/contrib/SANSCurve.md new file mode 100644 index 000000000..014a7fc90 --- /dev/null +++ b/mcstas-comps/contrib/SANSCurve.md @@ -0,0 +1,44 @@ +# The `SANSCurve` Component + +*McStas: A component mimicking the scattering from a given I(q)-curve by using +linear interpolation between the given points.* + +## Identification + +- **Site:** +- **Author:** Søren Kynde (kynde@nbi.dk) +- **Origin:** KU-Science +- **Date:** October 17, 2012 + +## Description + +```text +A box-shaped component simulating the scattering from any given I(q)-curve. +The component uses linear interpolation to generate the points necessary to +compute the scattering of any given neutron. +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| DeltaRho | cm/AA^3 | Excess scattering length density of the particles. | 1.0e-14 | +| Volume | AA^3 | Volume of the particles. | 1000.0 | +| Concentration | mM | Concentration of sample. | 0.01 | +| AbsorptionCrosssection | 1/m | Absorption cross section of the sample. | 0.0 | +| **xwidth** | m | Dimension of component in the x-direction. | | +| **yheight** | m | Dimension of component in the y-direction. | | +| **zdepth** | m | Dimension of component in the z-direction. | | +| **SampleToDetectorDistance** | m | Distance from sample to detector (for focusing the scattered neutrons). | | +| **DetectorRadius** | m | Radius of the detector (for focusing the scattered neutrons). | | +| FileWithCurve | | Datafile with the given I(q). | "Curve.dat" | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/contrib/SANSCurve.comp) for `SANSCurve.comp`. + +--- + +*Generated on mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/contrib/SANSCylinders.md b/mcstas-comps/contrib/SANSCylinders.md new file mode 100644 index 000000000..8bf41c0a7 --- /dev/null +++ b/mcstas-comps/contrib/SANSCylinders.md @@ -0,0 +1,42 @@ +# The `SANSCylinders` Component + +*McStas: A sample of monodisperse cylindrical particles in solution.* + +## Identification + +- **Site:** +- **Author:** Martin Cramer Pedersen (mcpe@nbi.dk) +- **Origin:** KU-Science +- **Date:** October 17, 2012 + +## Description + +```text +A component simulating the scattering from a box-shaped, thin solution +of monodisperse, cylindrical particles. +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| R | AA | Semiaxis of the cross section of the cylinder. | 40.0 | +| Height | AA | Height of the cylinder. | 100.0 | +| Concentration | mM | Concentration of sample. | 0.01 | +| DeltaRho | cm/AA^3 | Excess scattering length density of the particles. | 1.0e-14 | +| AbsorptionCrosssection | 1/m | Absorption cross section of the sample. | 0.0 | +| **xwidth** | m | Dimension of component in the x-direction. | | +| **yheight** | m | Dimension of component in the y-direction. | | +| **zdepth** | m | Dimension of component in the z-direction. | | +| **SampleToDetectorDistance** | m | Distance from sample to detector (for focusing the scattered neutrons). | | +| **DetectorRadius** | m | Radius of the detector (for focusing the scattered neutrons). | | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/contrib/SANSCylinders.comp) for `SANSCylinders.comp`. + +--- + +*Generated on mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/contrib/SANSEllipticCylinders.md b/mcstas-comps/contrib/SANSEllipticCylinders.md new file mode 100644 index 000000000..70885310e --- /dev/null +++ b/mcstas-comps/contrib/SANSEllipticCylinders.md @@ -0,0 +1,44 @@ +# The `SANSEllipticCylinders` Component + +*McStas: A sample of monodisperse cylindrical particles with elliptic cross section in +solution.* + +## Identification + +- **Site:** +- **Author:** Martin Cramer Pedersen (mcpe@nbi.dk) +- **Origin:** KU-Science +- **Date:** October 17, 2012 + +## Description + +```text +A component simulating the scattering from a box-shaped, thin solution +of monodisperse, cylindrical particles with elliptic cross section. +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| R1 | AA | First semiaxis of the cross section of the | 20.0 | +| R2 | AA | Second semiaxis of the cross section of the | 40.0 | +| Height | AA | Height of the elliptic cylinder. | 100.0 | +| Concentration | mM | Concentration of sample. | 0.01 | +| DeltaRho | cm/AA^3 | Excess scattering length density of the | 1.0e-14 | +| AbsorptionCrosssection | 1/m | Absorption cross section of the sample. | 0.0 | +| **xwidth** | m | Dimension of component in the x-direction. | | +| **yheight** | m | Dimension of component in the y-direction. | | +| **zdepth** | m | Dimension of component in the z-direction. | | +| **SampleToDetectorDistance** | m | Distance from sample to detector (for | | +| **DetectorRadius** | m | Radius of the detector (for focusing the | | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/contrib/SANSEllipticCylinders.comp) for `SANSEllipticCylinders.comp`. + +--- + +*Generated on mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/contrib/SANSLiposomes.md b/mcstas-comps/contrib/SANSLiposomes.md new file mode 100644 index 000000000..70934204d --- /dev/null +++ b/mcstas-comps/contrib/SANSLiposomes.md @@ -0,0 +1,49 @@ +# The `SANSLiposomes` Component + +*McStas: A sample of polydisperse liposomes in solution (water).* + +## Identification + +- **Site:** +- **Author:** Martin Cramer Pedersen (mcpe@nbi.dk) +- **Origin:** KU-Science +- **Date:** October 17, 2012 + +## Description + +```text +A component simulating the scattering from a box-shaped, thin solution (water) +of liposomes described by a pentuple-shell model. +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| Radius | AA | Average thickness of the liposomes. | 800.0 | +| Thickness | AA | Thickness of the bilayer. | 38.89 | +| SigmaRadius | | Relative Gaussian deviation of the radius in the distribution of liposomes. | 0.20 | +| VolumeOfHeadgroup | AA^3 | Volume of one lipid headgroup - default is POPC. | 319.0 | +| VolumeOfCH2Tail | AA^3 | Volume of the CH2-chains of one lipid - default is POPC. | 818.8 | +| VolumeOfCH3Tail | AA^3 | Volume of the CH3-tails of one lipid - default is POPC. | 108.6 | +| ScatteringLengthOfHeadgroup | cm | Scattering length of one lipid headgroup - default is POPC in D2O. | 7.05E-12 | +| ScatteringLengthOfCH2Tail | cm | Scattering length of the CH2-chains of one lipid - default is POPC in D2O. | -1.76E-12 | +| ScatteringLengthOfCH3Tail | cm | Scattering length of the CH3-tails of one lipid - default is POPC in D2O. | -9.15E-13 | +| Concentration | mM | Concentration of sample. | 0.01 | +| RhoSolvent | cm/AA^3 | Scattering length density of solvent - default is D2O. | 6.4e-14 | +| AbsorptionCrosssection | 1/m | Absorption cross section of the sample. | 0.0 | +| **xwidth** | m | Dimension of component in the x-direction. | | +| **yheight** | m | Dimension of component in the y-direction. | | +| **zdepth** | m | Dimension of component in the z-direction. | | +| **SampleToDetectorDistance** | m | Distance from sample to detector (for focusing the scattered neutrons). | | +| **DetectorRadius** | m | Radius of the detector (for focusing the scattered neutrons). | | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/contrib/SANSLiposomes.comp) for `SANSLiposomes.comp`. + +--- + +*Generated on mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/contrib/SANSNanodiscs.md b/mcstas-comps/contrib/SANSNanodiscs.md new file mode 100644 index 000000000..eb57c1729 --- /dev/null +++ b/mcstas-comps/contrib/SANSNanodiscs.md @@ -0,0 +1,53 @@ +# The `SANSNanodiscs` Component + +*McStas: A sample of monodisperse phospholipid bilayer nanodiscs in solution (water).* + +## Identification + +- **Site:** +- **Author:** Martin Cramer Pedersen (mcpe@nbi.dk) +- **Origin:** KU-Science +- **Date:** October 17, 2012 + +## Description + +```text +A component simulating the scattering from a box-shaped, thin solution (water) +of monodisperse phospholipid bilayer nanodiscs. +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| AxisRatio | | Axis ratio of the bilayer patch. | 1.4 | +| NumberOfLipids | | Number of lipids per nanodisc. | 130.0 | +| AreaPerLipidHeadgroup | AA^2 | Area per lipid headgroup - default is POPC. | 65.0 | +| HeightOfMSP | AA | Height of the belt protein - default is MSP1D1. | 24.0 | +| VolumeOfOneMSP | AA^3 | Volume of one belt protein - default is MSP1D1. | 26296.5 | +| VolumeOfHeadgroup | AA^3 | Volume of one lipid headgroup - default is POPC. | 319.0 | +| VolumeOfCH2Tail | AA^3 | Volume of the CH2-chains of one lipid - default is POPC. | 818.8 | +| VolumeOfCH3Tail | AA^3 | Volume of the CH3-tails of one lipid - default is POPC. | 108.6 | +| ScatteringLengthOfOneMSP | cm | Scattering length of one belt protein - default is MSP1D1 in D2O. | 8.8E-10 | +| ScatteringLengthOfHeadgroup | cm | Scattering length of one lipid headgroup - default is POPC in D2O. | 7.05E-12 | +| ScatteringLengthOfCH2Tail | cm | Scattering length of the CH2-chains of one lipid - default is POPC in D2O. | -1.76E-12 | +| ScatteringLengthOfCH3Tail | cm | Scattering length of the CH3-tails of one lipid - default is POPC in D2O. | -9.15E-13 | +| Roughness | | Factor used to smear the interfaces of the nanodisc. | 5.0 | +| Concentration | mM | Concentration of sample. | 0.01 | +| RhoSolvent | cm/AA^3 | Scattering length density of solvent - default is D2O. | 6.4e-14 | +| AbsorptionCrosssection | 1/m | Absorption cross section of the sample. | 0.0 | +| **xwidth** | m | Dimension of component in the x-direction. | | +| **yheight** | m | Dimension of component in the y-direction. | | +| **zdepth** | m | Dimension of component in the z-direction. | | +| **SampleToDetectorDistance** | m | Distance from sample to detector (for focusing the scattered neutrons). | | +| **DetectorRadius** | m | Radius of the detector (for focusing the scattered neutrons). | | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/contrib/SANSNanodiscs.comp) for `SANSNanodiscs.comp`. + +--- + +*Generated on mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/contrib/SANSNanodiscsFast.md b/mcstas-comps/contrib/SANSNanodiscsFast.md new file mode 100644 index 000000000..b28ab9dde --- /dev/null +++ b/mcstas-comps/contrib/SANSNanodiscsFast.md @@ -0,0 +1,57 @@ +# The `SANSNanodiscsFast` Component + +*McStas: A sample of monodisperse phospholipid bilayer nanodiscs in solution (water).* + +## Identification + +- **Site:** +- **Author:** Martin Cramer Pedersen (mcpe@nbi.dk) +- **Origin:** KU-Science +- **Date:** October 17, 2012 + +## Description + +```text +A component very similar to EmptyNanodiscs.comp - however, the scattering +profile is only computed once, and linear interpolation is the used to +simulate the instrument. +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| NumberOfQBins | | Number of points generated in inital scattering profile. | 200 | +| AxisRatio | | Axis ratio of the bilayer patch. | 1.4 | +| NumberOfLipids | | Number of lipids per nanodisc. | 130.0 | +| AreaPerLipidHeadgroup | AA^2 | Area per lipid headgroup - default is POPC. | 65.0 | +| HeightOfMSP | AA | Height of the belt protein - default is MSP1D1. | 24.0 | +| VolumeOfOneMSP | AA^3 | Volume of one belt protein - default is MSP1D1. | 26296.5 | +| VolumeOfHeadgroup | AA^3 | Volume of one lipid headgroup - default is POPC. | 319.0 | +| VolumeOfCH2Tail | AA^3 | Volume of the CH2-chains of one lipid - default is POPC. | 818.8 | +| VolumeOfCH3Tail | AA^3 | Volume of the CH3-tails of one lipid - default is POPC. | 108.6 | +| ScatteringLengthOfOneMSP | cm | Scattering length of one belt protein - default is MSP1D1. | 8.8E-10 | +| ScatteringLengthOfHeadgroup | cm | Scattering length of one lipid headgroup - default is POPC. | 7.05E-12 | +| ScatteringLengthOfCH2Tail | cm | Scattering length of the CH2-chains of one lipid - default is POPC. | -1.76E-12 | +| ScatteringLengthOfCH3Tail | cm | Scattering length of the CH3-tails of one lipid - default is POPC. | -9.15E-13 | +| Roughness | | Factor used to smear the interfaces of the nanodisc. | 5.0 | +| Concentration | mM | Concentration of sample. | 0.01 | +| RhoSolvent | cm/AA^3 | Scattering length density of solvent - default is D2O. | 6.4e-14 | +| AbsorptionCrosssection | 1/m | Absorption cross section of the sample. | 0.0 | +| **xwidth** | m | Dimension of component in the x-direction. | | +| **yheight** | m | Dimension of component in the y-direction. | | +| **zdepth** | m | Dimension of component in the z-direction. | | +| **SampleToDetectorDistance** | m | Distance from sample to detector (for focusing the scattered neutrons). | | +| **DetectorRadius** | m | Radius of the detector (for focusing the scattered neutrons). | | +| qMin | AA^-1 | Lowest q-value, for which a point is generated in the scattering profile | 0.001 | +| qMax | AA^-1 | Highest q-value, for which a point is generated in the scattering profile | 1.0 | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/contrib/SANSNanodiscsFast.comp) for `SANSNanodiscsFast.comp`. + +--- + +*Generated on mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/contrib/SANSNanodiscsWithTags.md b/mcstas-comps/contrib/SANSNanodiscsWithTags.md new file mode 100644 index 000000000..7696285e7 --- /dev/null +++ b/mcstas-comps/contrib/SANSNanodiscsWithTags.md @@ -0,0 +1,58 @@ +# The `SANSNanodiscsWithTags` Component + +*McStas: A sample of monodisperse phospholipid bilayer nanodiscs in solution (water) - with +histidine tag still on the belt proteins.* + +## Identification + +- **Site:** +- **Author:** Martin Cramer Pedersen (mcpe@nbi.dk) +- **Origin:** KU-Science +- **Date:** October 17, 2012 + +## Description + +```text +A component simulating the scattering from a box-shaped, thin solution (water) +of monodisperse phospholipid bilayer nanodiscs - with histidine tags still +on the belt proteins. +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| AxisRatio | | Axis ratio of the bilayer patch. | 1.4 | +| NumberOfLipids | | Number of lipids per nanodisc. | 130.0 | +| AreaPerLipidHeadgroup | AA^2 | Area per lipid headgroup - default is POPC. | 65.0 | +| HeightOfMSP | AA | Height of the belt protein - default is MSP1D1. | 24.0 | +| RadiusOfGyrationForHisTag | AA | Radius of gyration for the his-tag. | 10.0 | +| VolumeOfOneMSP | AA^3 | Volume of one belt protein - default is MSP1D1. | 26296.5 | +| VolumeOfHeadgroup | AA^3 | Volume of one lipid headgroup - default is POPC. | 319.0 | +| VolumeOfCH2Tail | AA^3 | Volume of the CH2-chains of one lipid - default is POPC. | 818.8 | +| VolumeOfCH3Tail | AA^3 | Volume of the CH3-tails of one lipid - default is POPC. | 108.6 | +| VolumeOfOneHisTag | AA^3 | Volume of one his-tag. | 2987.3 | +| ScatteringLengthOfOneMSP | cm | Scattering length of one belt protein - default is MSP1D1. | 8.8E-10 | +| ScatteringLengthOfHeadgroup | cm | Scattering length of one lipid headgroup - default is POPC. | 7.05E-12 | +| ScatteringLengthOfCH2Tail | cm | Scattering length of the CH2-chains of one lipid - default is POPC. | -1.76E-12 | +| ScatteringLengthOfCH3Tail | cm | Scattering length of the CH3-tails of one lipid - default is POPC. | -9.15E-13 | +| ScatteringLengthOfOneHisTag | cm | Scattering length of one his-tag. | 1.10E-10 | +| Roughness | | Factor used to smear the interfaces of the nanodisc. | 5.0 | +| Concentration | mM | Concentration of sample. | 0.01 | +| RhoSolvent | cm/AA^3 | Scattering length density of solvent - default is D2O. | 6.4e-14 | +| AbsorptionCrosssection | 1/m | Absorption cross section of the sample. | 0.0 | +| **xwidth** | m | Dimension of component in the x-direction. | | +| **yheight** | m | Dimension of component in the y-direction. | | +| **zdepth** | m | Dimension of component in the z-direction. | | +| **SampleToDetectorDistance** | m | Distance from sample to detector (for focusing the scattered neutrons). | | +| **DetectorRadius** | m | Radius of the detector (for focusing the scattered neutrons). | | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/contrib/SANSNanodiscsWithTags.comp) for `SANSNanodiscsWithTags.comp`. + +--- + +*Generated on mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/contrib/SANSNanodiscsWithTagsFast.md b/mcstas-comps/contrib/SANSNanodiscsWithTagsFast.md new file mode 100644 index 000000000..673d10935 --- /dev/null +++ b/mcstas-comps/contrib/SANSNanodiscsWithTagsFast.md @@ -0,0 +1,61 @@ +# The `SANSNanodiscsWithTagsFast` Component + +*McStas: A sample of monodisperse phospholipid bilayer nanodiscs in solution (water) - with +histidine tag still on the belt proteins.* + +## Identification + +- **Site:** +- **Author:** Martin Cramer Pedersen (mcpe@nbi.dk) +- **Origin:** KU-Science +- **Date:** October 17, 2012 + +## Description + +```text +A component very similar to EmptyNanodiscsWithTags.comp - however, the +scattering profile is only computed once, and linear interpolation is the used +to simulate the instrument. +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| NumberOfQBins | | Number of points generated in inital scattering profile. | 200 | +| AxisRatio | | Axis ratio of the bilayer patch. | 1.4 | +| NumberOfLipids | | Number of lipids per nanodisc. | 130.0 | +| AreaPerLipidHeadgroup | AA^2 | Area per lipid headgroup - default is POPC. | 65.0 | +| HeightOfMSP | AA | Height of the belt protein - default is MSP1D1. | 24.0 | +| RadiusOfGyrationForHisTag | AA | Radius of gyration for the his-tag. | 12.7 | +| VolumeOfOneMSP | AA^3 | Volume of one belt protein - default is MSP1D1. | 26296.5 | +| VolumeOfHeadgroup | AA^3 | Volume of one lipid headgroup - default is POPC. | 319.0 | +| VolumeOfCH2Tail | AA^3 | Volume of the CH2-chains of one lipid - default is POPC. | 818.8 | +| VolumeOfCH3Tail | AA^3 | Volume of the CH3-tails of one lipid - default is POPC. | 108.6 | +| VolumeOfOneHisTag | AA^3 | Volume of one his-tag. | 2987.3 | +| ScatteringLengthOfOneMSP | cm | Scattering length of one belt protein - default is MSP1D1. | 8.8E-10 | +| ScatteringLengthOfHeadgroup | cm | Scattering length of one lipid headgroup - default is POPC. | 7.05E-12 | +| ScatteringLengthOfCH2Tail | cm | Scattering length of the CH2-chains of one lipid - default is POPC. | -1.76E-12 | +| ScatteringLengthOfCH3Tail | cm | Scattering length of the CH3-tails of one lipid - default is POPC. | -9.15E-13 | +| ScatteringLengthOfOneHisTag | cm | Scattering length of one his-tag. | 1.10E-10 | +| Roughness | | Factor used to smear the interfaces of the nanodisc. | 5.0 | +| Concentration | mM | Concentration of sample. | 0.01 | +| RhoSolvent | cm/AA^3 | Scattering length density of solvent - default is D2O. | 6.4e-14 | +| AbsorptionCrosssection | 1/m | Absorption cross section of the sample. | 0.0 | +| **xwidth** | m | Dimension of component in the x-direction. | | +| **yheight** | m | Dimension of component in the y-direction. | | +| **zdepth** | m | Dimension of component in the z-direction. | | +| **SampleToDetectorDistance** | m | Distance from sample to detector (for focusing the scattered neutrons). | | +| **DetectorRadius** | m | Radius of the detector (for focusing the scattered neutrons). | | +| qMin | AA^-1 | Lowest q-value, for which a point is generated in the scattering profile | 0.001 | +| qMax | AA^-1 | Highest q-value, for which a point is generated in the scattering profile | 1.0 | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/contrib/SANSNanodiscsWithTagsFast.comp) for `SANSNanodiscsWithTagsFast.comp`. + +--- + +*Generated on mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/contrib/SANSPDB.md b/mcstas-comps/contrib/SANSPDB.md new file mode 100644 index 000000000..d52be59aa --- /dev/null +++ b/mcstas-comps/contrib/SANSPDB.md @@ -0,0 +1,45 @@ +# The `SANSPDB` Component + +*McStas: A sample describing a thin solution of proteins. This components must be compiled +with the -lgsl and -lgslcblas flags (and possibly linked to the appropriate +libraries).* + +## Identification + +- **Site:** +- **Author:** Martin Cramer Pedersen (mcpe@nbi.dk) and Søren Kynde (kynde@nbi.dk) +- **Origin:** KU-Science +- **Date:** October 17, 2012 + +## Description + +```text +This components expands the formfactor amplitude of the protein on spherical +harmonics and computes the scattering profile using these. The expansion is +done on amino-acid level and does not take hydration layer into account. +The component must have a valid .pdb-file as an argument. +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| RhoSolvent | AA | Scattering length density of the buffer. | 9.4e-14 | +| Concentration | mM | Concentration of sample. | 0.01 | +| AbsorptionCrosssection | 1/m | Absorption cross section of the sample. | 0.0 | +| **xwidth** | m | Dimension of component in the x-direction. | | +| **yheight** | m | Dimension of component in the y-direction. | | +| **zdepth** | m | Dimension of component in the z-direction. | | +| **SampleToDetectorDistance** | m | Distance from sample to detector (for focusing the scattered neutrons). | | +| **DetectorRadius** | m | Radius of the detector (for focusing the scattered neutrons). | | +| PDBFilepath | | Path to the file describing the high resolution structure of the protein. | "PDBfile.pdb" | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/contrib/SANSPDB.comp) for `SANSPDB.comp`. + +--- + +*Generated on mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/contrib/SANSPDBFast.md b/mcstas-comps/contrib/SANSPDBFast.md new file mode 100644 index 000000000..afd4294c9 --- /dev/null +++ b/mcstas-comps/contrib/SANSPDBFast.md @@ -0,0 +1,50 @@ +# The `SANSPDBFast` Component + +*McStas: A sample describing a thin solution of proteins using linear interpolation +to increase computational speed. This components must be compiled with the +-lgsl and -lgslcblas flags (and possibly linked to the appropriate libraries).* + +## Identification + +- **Site:** +- **Author:** Martin Cramer Pedersen (mcpe@nbi.dk) and Søren Kynde (kynde@nbi.dk) +- **Origin:** KU-Science +- **Date:** October 17, 2012 + +## Description + +```text +This components expands the formfactor amplitude of the protein on spherical +harmonics and computes the scattering profile using these. The expansion is +done on amino-acid level and does not take hydration layer into account. +The component must have a valid .pdb-file as an argument. + +This is fast implementation of the SANSPDB sample component. +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| RhoSolvent | AA | Scattering length density of the buffer - default is 100% D2O. | 9.4e-14 | +| Concentration | mM | Concentration of sample. | 0.01 | +| AbsorptionCrosssection | 1/m | Absorption cross section of the sample. | 0.0 | +| **xwidth** | m | Dimension of component in the x-direction. | | +| **yheight** | m | Dimension of component in the y-direction. | | +| **zdepth** | m | Dimension of component in the z-direction. | | +| **SampleToDetectorDistance** | m | Distance from sample to detector (for focusing the scattered neutrons). | | +| **DetectorRadius** | m | Radius of the detector (for focusing the scattered neutrons). | | +| qMin | AA^-1 | Lowest q-value, for which a point is generated in the scattering profile | 0.001 | +| qMax | AA^-1 | Highest q-value, for which a point is generated in the scattering profile | 0.5 | +| NumberOfQBins | | Number of points generated in inital scattering profile. | 200 | +| PDBFilepath | | Path to the file describing the high resolution structure of the protein. | "PDBfile.pdb" | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/contrib/SANSPDBFast.comp) for `SANSPDBFast.comp`. + +--- + +*Generated on mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/contrib/SANSQMonitor.md b/mcstas-comps/contrib/SANSQMonitor.md new file mode 100644 index 000000000..e8db0f036 --- /dev/null +++ b/mcstas-comps/contrib/SANSQMonitor.md @@ -0,0 +1,41 @@ +# The `SANSQMonitor` Component + +*McStas: A circular detector measuring the radial average of intensity as a function +of the momentum transform in the sample.* + +## Identification + +- **Site:** +- **Author:** Søren Kynde (kynde@nbi.dk) and Martin Cramer Pedersen (mcpe@nbi.dk) +- **Origin:** KU-Science +- **Date:** October 17, 2012 + +## Description + +```text +A simple component simulating the scattering from a box-shaped, thin solution +of monodisperse, spherical particles. +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| NumberOfBins | | Number of bins in the r (and q). | 100 | +| RFilename | | File used for storing I(r). | "RDetector" | +| qFilename | | File used for storing I(q). | "QDetector" | +| **RadiusDetector** | m | Radius of the detector (in the xy-plane). | | +| **DistanceFromSample** | m | Distance from the sample to this component. | | +| LambdaMin | AA | Max sensitivity in lambda - used to compute the highest possible value of momentum transfer, q. | 1.0 | +| Lambda0 | | If lambda is given, the momentum transfers of all rays are computed from this value. Otherwise, instrumental effects are neglected. | 0.0 | +| restore_neutron | | If set to 1, the component restores the original neutron. | 0 | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/contrib/SANSQMonitor.comp) for `SANSQMonitor.comp`. + +--- + +*Generated on mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/contrib/SANSShells.md b/mcstas-comps/contrib/SANSShells.md new file mode 100644 index 000000000..2380624ec --- /dev/null +++ b/mcstas-comps/contrib/SANSShells.md @@ -0,0 +1,42 @@ +# The `SANSShells` Component + +*McStas: A sample of monodisperse shell-like particles in solution.* + +## Identification + +- **Site:** +- **Author:** Martin Cramer Pedersen (mcpe@nbi.dk) +- **Origin:** KU-Science +- **Date:** October 17, 2012 + +## Description + +```text +A simple component simulating the scattering from a box-shaped, thin solution +of monodisperse, shell-like particles. +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| R | AA | Average radius of the particles. | 100.0 | +| Thickness | AA | Thickness of the shell - so that the outer radius is R + Thickness and the inner is R - Thickness. | 5.0 | +| Concentration | mM | Concentration of sample. | 0.01 | +| DeltaRho | cm/AA^3 | Excess scattering length density of the particles. | 1.0e-14 | +| AbsorptionCrosssection | 1/m | Absorption cross section of the sample. | 0.0 | +| **xwidth** | m | Dimension of component in the x-direction. | | +| **yheight** | m | Dimension of component in the y-direction. | | +| **zdepth** | m | Dimension of component in the z-direction. | | +| **SampleToDetectorDistance** | m | Distance from sample to detector (for focusing the scattered neutrons). | | +| **DetectorRadius** | m | Radius of the detector (for focusing the scattered neutrons). | | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/contrib/SANSShells.comp) for `SANSShells.comp`. + +--- + +*Generated on mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/contrib/SANSSpheres.md b/mcstas-comps/contrib/SANSSpheres.md new file mode 100644 index 000000000..d22758bce --- /dev/null +++ b/mcstas-comps/contrib/SANSSpheres.md @@ -0,0 +1,42 @@ +# The `SANSSpheres` Component + +*McStas: A sample of mono- or polydisperse spherical particles in solution.* + +## Identification + +- **Site:** +- **Author:** Martin Cramer Pedersen (mcpe@nbi.dk) +- **Origin:** KU-Science +- **Date:** October 17, 2012 + +## Description + +```text +A simple component simulating the scattering from a box-shaped, thin solution +of monodisperse, spherical particles. +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| R | AA | Radius of the spherical particles. | 100.0 | +| dR | AA | Variance of the radius of spherical particles. Default 0 (monodisperse spheres) | 0.0 | +| Concentration | mM | Concentration of sample. | 0.01 | +| DeltaRho | cm/AA^3 | Excess scattering length density of the particles. | 1.0e-14 | +| AbsorptionCrosssection | 1/m | Absorption cross section of the sample. | 0.0 | +| **xwidth** | m | Dimension of component in the x-direction. | | +| **yheight** | m | Dimension of component in the y-direction. | | +| **zdepth** | m | Dimension of component in the z-direction. | | +| **SampleToDetectorDistance** | m | Distance from sample to detector (for focusing the scattered neutrons). | | +| **DetectorRadius** | m | Radius of the detector (for focusing the scattered neutrons). | | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/contrib/SANSSpheres.comp) for `SANSSpheres.comp`. + +--- + +*Generated on mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/contrib/SANSSpheresPolydisperse.md b/mcstas-comps/contrib/SANSSpheresPolydisperse.md new file mode 100644 index 000000000..b32498847 --- /dev/null +++ b/mcstas-comps/contrib/SANSSpheresPolydisperse.md @@ -0,0 +1,42 @@ +# The `SANSSpheresPolydisperse` Component + +*McStas: A sample of mono- or polydisperse spherical particles in solution.* + +## Identification + +- **Site:** +- **Author:** Linda Udby (udby@nbi.dk) - modified from SANSSpheres by Martin Cramer Pedersen (mcpe@nbi.dk) +- **Origin:** KU-Science +- **Date:** October 17, 2012 + +## Description + +```text +A simple component simulating the scattering from a box-shaped, thin solution +of monodisperse, spherical particles. +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| R | AA | Radius of the spherical particles. | 100.0 | +| dR | AA | Variance of the radius of spherical particles. Default 0 (monodisperse spheres) | 0.0 | +| Concentration | mM | Concentration of sample. | 0.01 | +| DeltaRho | cm/AA^3 | Excess scattering length density of the | 1.0e-14 | +| AbsorptionCrosssection | 1/m | Absorption cross section of the sample. | 0.0 | +| **xwidth** | m | Dimension of component in the x-direction. | | +| **yheight** | m | Dimension of component in the y-direction. | | +| **zdepth** | m | Dimension of component in the z-direction. | | +| **SampleToDetectorDistance** | m | Distance from sample to detector (for | | +| **DetectorRadius** | m | Radius of the detector (for focusing the | | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/contrib/SANSSpheresPolydisperse.comp) for `SANSSpheresPolydisperse.comp`. + +--- + +*Generated on mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/contrib/SANS_AnySamp.md b/mcstas-comps/contrib/SANS_AnySamp.md new file mode 100644 index 000000000..bba2be08a --- /dev/null +++ b/mcstas-comps/contrib/SANS_AnySamp.md @@ -0,0 +1,59 @@ +# The `SANS_AnySamp` Component + +*McStas: Sample for Small Angle Neutron Scattering. To be customized.* + +## Identification + +- **Site:** +- **Author:** Henrich Frielinghaus +- **Origin:** FZ-Juelich/FRJ-2/IFF/KWS-2 +- **Date:** Sept 2004 + +## Description + +```text +Sample for Small Angle Neutron Scattering. +May be customized for Any Sample model. +Copy this component and modify it to your needs. +Just give shape of scattering function. +Normalization of scattering will be done in INITIALIZE. + +Some remarks: +Scattering function should be a defined the same way in INITIALIZE and TRACE sections +There exist maybe better library functions for the integral. + +Here for comparison: Guinier. +Transmitted paths set to 3% of all paths. In this simulation method paths are +well distributed among transmission and scattering (equally in Q-space). + +Sample components leave the units of flux for the probability +of the individual paths. That is more consitent than the +Sans_spheres routine. Furthermore one can simulate the +transmitted beam. This allows to determine the needed size of +the beam stop. Only absorption has not been included yet to +these sample-components. But thats really nothing. + +Example: SANS_AnySamp(transm=0.5, Rg=100, qmax=0.03, xwidth=0.01, yheight=0.01, zdepth=0.001) +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| transm | 1 | coherent transmission of sample for the optical path "zdepth" | 0.5 | +| Rg | Angs | Radius of Gyration | 100 | +| qmax | AA-1 | Maximum scattering vector | 0.03 | +| xwidth | m | horizontal dimension of sample, as a width | 0.01 | +| yheight | m | vertical dimension of sample, as a height | 0.01 | +| zdepth | m | thickness of sample | 0.001 | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/contrib/SANS_AnySamp.comp) for `SANS_AnySamp.comp`. +- Sans_spheres component + +--- + +*Generated on mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/contrib/SANS_DebyeS.md b/mcstas-comps/contrib/SANS_DebyeS.md new file mode 100644 index 000000000..e45951c5f --- /dev/null +++ b/mcstas-comps/contrib/SANS_DebyeS.md @@ -0,0 +1,52 @@ +# The `SANS_DebyeS` Component + +*McStas: Sample for Small Angle Neutron Scattering, Debye-Scherrer Ring* + +## Identification + +- **Site:** +- **Author:** Henrich Frielinghaus +- **Origin:** FZ-Juelich/FRJ-2/IFF/KWS-2 +- **Date:** Sept 2004 + +## Description + +```text +Debye-Scherrer Ring: Model for highly ordered diblock copolymer. +This example is highly simple. +Multiple scattering neglected, but could be incorporated. +Sample that only produces a DebyeSherrer ring. +Advantages: Transmitted beam is simulated. +Intensities still in flux units. +Minor point: Absolute scattering probability given by transmission. + +Sample components leave the units of flux for the probability +of the individual paths. That is more consitent than the +Sans_spheres routine. Furthermore one can simulate the +transmitted beam. This allows to determine the needed size of +the beam stop. Only absorption has not been included yet to +these sample-components. But thats really nothing. + +Example: SANS_DebyeS(transm=0.5, qDS=0.008, xwidth=0.01, yheight=0.01, zdepth=0.001) +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| transm | 1 | coherent transmission of sample for the optical path "zdepth" | 0.5 | +| qDS | AA-1 | Scattering vector of Debye-Sherrer ring | 0.008 | +| xwidth | m | horiz. dimension of sample, as a width (m) | 0.01 | +| yheight | m | vert.. dimension of sample, as a height (m) | 0.01 | +| zdepth | m | thickness of sample (m) | 0.001 | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/contrib/SANS_DebyeS.comp) for `SANS_DebyeS.comp`. +- Sans_spheres component + +--- + +*Generated on mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/contrib/SANS_Guinier.md b/mcstas-comps/contrib/SANS_Guinier.md new file mode 100644 index 000000000..08c16719e --- /dev/null +++ b/mcstas-comps/contrib/SANS_Guinier.md @@ -0,0 +1,59 @@ +# The `SANS_Guinier` Component + +*McStas: Sample for Small Angle Neutron Scattering, Guinier model* + +## Identification + +- **Site:** +- **Author:** Henrich Frielinghaus +- **Origin:** FZ-Juelich/FRJ-2/IFF/KWS-2 +- **Date:** Sept 2004 + +## Description + +```text +Sample that scatters with a Guinier shape. This is just an example where analytically +an integral exists. The neutron paths are proportional to the intensity +(low intensity > few paths). + +Guinier function (Rg) +a = Rg*Rg/3 +propability_unscaled = q * exp(-a*q*q) +integral_prop_unscal = 1/(2*a) * (1 - exp(-a*q*q)) +propability_scaled = 2*a * q*exp(-a*q*q) / (1 - exp(-a*q*q)) +integral_prop_scaled = (1 - exp(-a*q*q)) / (1 - exp(-a*qmax*qmax)) + +In this simulation method many paths occur for high propability. +For simulation of low intensities see SANS_AnySamp. + +Sample components leave the units of flux for the probability +of the individual paths. That is more consitent than the +Sans_spheres routine. Furthermore one can simulate the +transmitted beam. This allows to determine the needed size of +the beam stop. Only absorption has not been included yet to +these sample-components. But thats really nothing. + +Example: SANS_Guinier(transm=0.5, Rg=100, qmax=0.03, xwidth=0.01, yheight=0.01, zdepth=0.001) +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| transm | 1 | (coherent) transmission of sample for the optical path "zdepth" | 0.5 | +| Rg | Angs | Radius of Gyration | 100 | +| qmax | AA-1 | Maximum scattering vector | 0.03 | +| xwidth | m | horiz. dimension of sample, as a width | 0.01 | +| yheight | m | vert.. dimension of sample, as a height | 0.01 | +| zdepth | m | thickness of sample | 0.001 | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/contrib/SANS_Guinier.comp) for `SANS_Guinier.comp`. +- Sans_spheres component + +--- + +*Generated on mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/contrib/SANS_Liposomes_Abs.md b/mcstas-comps/contrib/SANS_Liposomes_Abs.md new file mode 100644 index 000000000..ac368dc5a --- /dev/null +++ b/mcstas-comps/contrib/SANS_Liposomes_Abs.md @@ -0,0 +1,62 @@ +# The `SANS_Liposomes_Abs` Component + +*McStas: Solid dilute monodisperse spheres sample with transmitted beam for Small Angle Neutron Scattering.* + +## Identification + +- **Site:** +- **Author:** Wim Bouwman, Delft University of Technology +- **Origin:** TUDelft +- **Date:** Aug 2012 + +## Description + +```text +Sample for Small Angle Neutron Scattering. +Modified from the Any Sample model. +Normalization of scattering is done in INITIALIZE. +Some elements of Sans_spheres have been re-used + +Some remarks: +Scattering function should be a defined the same way in INITIALIZE and TRACE sections +There exist maybe better library functions for the integral. + +Transmitted paths set to 50% of all paths to be optimised for SESANS. In this simulation method paths are +well distributed among transmission and scattering (equally in Q-space). + +Sample components leave the units of flux for the probability +of the individual paths. That is more consitent than the +Sans_spheres routine. Furthermore one can simulate the +transmitted beam. This allows to determine the needed size of +the beam stop. Absorption is included to +these sample-components. + +Example: SANS_Spheres_Abs(R=100, Phi=1e-3, Delta_rho=0.6, sigma_a = 50, qmax=0.03, xwidth=0.01, yheight=0.01, zthick=0.001) +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| R | AA | Radius of scattering hard spheres | 100 | +| dR | | | 0.0 | +| Phi | 1 | Particle volume fraction | 1e-3 | +| Delta_rho | fm/AA^3 | Excess scattering length density | 0.6 | +| sigma_a | m^-1 | Absorption cross section density at 2200 m/s | 0.50 | +| qmax | AA-1 | Maximum scattering vector (typically 10/R to observe the 3rd ring) | 0.03 | +| xwidth | m | horiz. dimension of sample, as a width | 0.01 | +| yheight | m | vert.. dimension of sample, as a height | 0.01 | +| zthick | m | thickness of sample | 0.001 | +| dbilayer | | | 35 | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/contrib/SANS_Liposomes_Abs.comp) for `SANS_Liposomes_Abs.comp`. +- Sans_spheres component +- SANS_AnySamp component + +--- + +*Generated on mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/contrib/SANS_benchmark2.md b/mcstas-comps/contrib/SANS_benchmark2.md new file mode 100644 index 000000000..f479703aa --- /dev/null +++ b/mcstas-comps/contrib/SANS_benchmark2.md @@ -0,0 +1,55 @@ +# The `SANS_benchmark2` Component + +*McStas: SANS_benchmark2 sample from FZ Jülichx* + +## Identification + +- **Site:** +- **Author:** Henrich Frielinghaus +- **Origin:** FZJ +- **Date:** Apr 2013 + +## Description + +```text +Several benchmark SANS samples are defined in this routine. The first ones are analytically defined. Higher numbers are forseen for tables. +In principle, the exact definitions can be changed freely - inside this code. +The consideration of all parameters as a routine parameter would be too much for the general purpose. +The user might decide to make single parameters routine parameters. + +For the scattering simulation a high fraction of neutron paths is directed to the scattering (exact fraction is sc_aim). +The remaining paths are used for the transmitted beams. The absolute intensities are treated accordingly, and the p-parameter is set accordingly. + +For the scattering probability, the integral of the scattering function between Q = 0.0001 and 1.0 AA-1 is calculated. +This is used in terms of transmisson, and of course for the scattering probability. +In this way, multiple scattering processes could be treated as well. + +The typical SANS range was considered to be between 0.0001 and 1.0 AA-1. +This means that the scattered neutrons are equally distributed in this range on logarithmic Q-scales. +The Q-parameters can be changed still inside the code, if needed. + +Example: SANS_benchmark(xwidth=0.01, yheight=0.01, zthick=0.001, model=1.0, dsdw_inc=0.02, sc_aim=0.97, sans_aim=0.95, singlesp = 0.0) +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| xwidth | m | width of sample volume | 0.01 | +| yheight | m | height of sample volume | 0.01 | +| zthick | m | thickness of sample volume | 0.001 | +| model | | model no., real variable will be rounded. negative numbers interpreted as model #0, too large as #18. | 1.0 | +| dsdw_inc | | the incoherent background from the overall sample (cm-1), should read ca. 1.0 for water, 0.5 for half D2O, half H2O, and ca. 0.02 for D2O | 0.02 | +| sc_aim | | the fraction of neutron paths used to represent the scattered neutrons (including everything: incoherent and coherent). rest is transmission. | 0.97 | +| sans_aim | | the fraction of neutron paths used to represent the scattered neutrons in the sans-range (up to 1.0AA-1). rest is incoherent with Q>1AA-1. | 0.95 | +| singlesp | | switches between multiple scattering (parameter zero 0.0) and single scattering (parameter 1.0). The sc_aim directs a fraction of paths to the first scattering process accordingly. The no. of paths for the second scattering process is derived from the real probability. Up to 10 scattering processes are considered. | 0.0 | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/contrib/SANS_benchmark2.comp) for `SANS_benchmark2.comp`. + +--- + +*Generated on mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/contrib/SNS_source.md b/mcstas-comps/contrib/SNS_source.md new file mode 100644 index 000000000..413af8bdc --- /dev/null +++ b/mcstas-comps/contrib/SNS_source.md @@ -0,0 +1,54 @@ +# The `SNS_source` Component + +*McStas: Modified: G. E. Granroth Nov 2014 Move to Mcstas V2 +Modified: J.Y.Y. Lin April 2021 to Fix race condition +Modified: P. WIllendrup 2021 Move to Move to Mcstas Version 3 and enable GPus + +A source that produces a time and energy distribution from the SNS moderator files* + +## Identification + +- **Site:** +- **Author:** G. Granroth +- **Origin:** SNS Project Oak Ridge National Laboratory +- **Date:** July 2004 + +## Description + +```text +Produces a time-of-flight spectrum from SNS moderator files +moderator files can be obtained from the SNS website . +IMPORTANT: The output units of this component are N/pulse +IMPORTANT: The component needs a FULL PATH to the source input file +Notes: +(1) the raw moderator files are per Sr. The focusing parameters provide the solid +angle accepted by the guide to remove the Sr dependence from the output. Therefore +the best practice is to set focus_xw and focus_yh to the width and height of the next beam +component, respectively. The dist parameter should then be set as the distance +from the moderator to the first component. +(2) This component works purely by interpolation. Therefore be sure that Emin and +Emax are within the limits of the moderator file +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| **filename** | | Filename of source data | | +| xwidth | m | width of moderator | 0.1 | +| yheight | m | height of moderator | 0.12 | +| **dist** | m | Distance from source to the focusing rectangle | | +| **focus_xw** | m | Width of focusing rectangle | | +| **focus_yh** | m | Height of focusing rectangle | | +| **Emin** | meV | minimum energy of neutron to generate | | +| **Emax** | meV | maximum energy of neutron to generate | | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/contrib/SNS_source.comp) for `SNS_source.comp`. + +--- + +*Generated on mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/contrib/SNS_source_analytic.md b/mcstas-comps/contrib/SNS_source_analytic.md new file mode 100644 index 000000000..a1f27fa83 --- /dev/null +++ b/mcstas-comps/contrib/SNS_source_analytic.md @@ -0,0 +1,66 @@ +# The `SNS_source_analytic` Component + +*McStas: A source that produces a time and energy distribution from +parameterized SNS moderator files* + +## Identification + +- **Site:** +- **Author:** F. X. Gallmeier +- **Origin:** SNS Oak Ridge National Laboratory +- **Date:** October 18, 2010 + +## Description + +```text +Produces a time-of-flight spectrum from SNS moderator files +moderator files can be obtained from the author +IMPORTANT: The output units of this component are N/pulse +IMPORTANT: The component needs a FULL PATH to the source input file +Notes: +(1) the raw moderator files are per Sr. The parameters focus_xw focus_yh and dist +provide the solid angle with which the beam line is served. +The best practice is to set focus_xw and focus_yh to the width and height of the +closest beam component, and dist as the distance from the moderator +location to this component. +(2) Be sure that Emin and Emax are within the limits of 1e-5 to 100 eV +(3) the proton pulse length T determines short- and long-pulse mode + +Beamport definitions: +BL11: a1Gw2-11-f5_fit_fit.dat +BL14: a1Gw2-14-f5_fit_fit.dat +BL17: a1Gw2-17-f5_fit_fit.dat +BL02: a1Gw2-2-f5_fit_fit.dat +BL05: a1Gw2-5-f5_fit_fit.dat +BL08: a1Gw2-8-f5_fit_fit.dat +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| **filename** | | Filename of source data | | +| xwidth | m | width of moderator (default 0.1 m) | 0.10 | +| yheight | m | height of moderator (default 0.12 m) | 0.12 | +| **dist** | m | Distance from source to the focusing rectangle (no default) | | +| **focus_xw** | m | Width of focusing rectangle (no default) | | +| **focus_yh** | m | Height of focusing rectangle (no default) | | +| Emin | meV | minimum energy of neutrons (default 0.01 meV) | 0.01 | +| Emax | meV | maximum energy of neutrons (default 1e5 meV) | 1.0e5 | +| tinmin | us | minimum time of neutrons (default 0 us) | 0.0 | +| tinmax | us | maximum time of neutrons (default 2000 us) | 2000.0 | +| sample_E | | sample energy from: (default 0) | 0 | +| sample_t | | sample t from: (default 0) | 0 | +| proton_T | us | proton pulse length (0 us) | 0.0 | +| p_power | MW | proton power (default 2 MW) | 2.0 | +| n_pulses | | number of pulses (default 1) | 1.0 | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/contrib/SNS_source_analytic.comp) for `SNS_source_analytic.comp`. + +--- + +*Generated on mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/contrib/Sans_liposomes_new.md b/mcstas-comps/contrib/Sans_liposomes_new.md new file mode 100644 index 000000000..eafa0b3de --- /dev/null +++ b/mcstas-comps/contrib/Sans_liposomes_new.md @@ -0,0 +1,53 @@ +# The `Sans_liposomes_new` Component + +*McStas: Release: McStas 1.12 + +SANS sample, spherical shells in thin solution with gaussian size distribution* + +## Identification + +- **Site:** +- **Author:** P. Willendrup, K. Lefmann, L. Arleth, L. Udby +- **Origin:** Risoe +- **Date:** 19.12.2003 + +## Description + +```text +Sample for Small Angle Neutron Scattering - spherical shells in thin solution with gaussian size distribution +The shape of the sample may be a cylinder of given radius or a box with dimensions +xwidth, yheight, zthick. qmax defines a cutoff in q. + +Example: Sans_spheres(R = 100, dR = 5, dbilayer=35, Phi = 1e-3, Delta_rho = 0.6, sigma_a = 50, qmax = 0.3 ,xwidth=0.01, yheight=0.01, zthick=0.005) + +%BUGS +This component does NOT simulate absolute intensities. This latter depends on the detector parameters. +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| R | AA | Radius of scattering hard spheres | 100 | +| dR | | | 0.0 | +| Phi | 1 | Particle volume fraction | 1e-3 | +| Delta_rho | fm/AA^3 | Excess scattering length density | 0.6 | +| sigma_a | m^-1 | Absorption cross section density at 2200 m/s | 0.50 | +| dist | m | Distance from sample to detector | 6 | +| Rdet | m | Detector (disk-shaped) radius | 0.5 | +| xwidth | m | horiz. dimension of sample, as a width | 0.01 | +| yheight | m | vert . dimension of sample, as a height | 0.01 | +| zthick | m | thickness of sample | 0.005 | +| qmax | AA^-1 | Maximum momentum transfer | 0 | +| dbilayer | AA | Thickness of shell | 35 | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/contrib/Sans_liposomes_new.comp) for `Sans_liposomes_new.comp`. +- The test/example instrument SANS.instr. + +--- + +*Generated on mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/contrib/Sapphire_Filter.md b/mcstas-comps/contrib/Sapphire_Filter.md new file mode 100644 index 000000000..e1296469e --- /dev/null +++ b/mcstas-comps/contrib/Sapphire_Filter.md @@ -0,0 +1,54 @@ +# The `Sapphire_Filter` Component + +*McStas: Sapphire filter at 300K* + +## Identification + +- **Site:** +- **Author:** Jonas Okkels Birk (based upon Filteg_Graphite by Thomas C Hansen (2000)) +- **Origin:** PSI +- **Date:** 6 December 2006 + +## Description + +```text +ESCRIPTION + +This sapphire filter, defined by two identical rectangular opening apertures, +is based upon an absorption function absorp=exp(L*A+C*(exp(-(B/L^2+D/L^4)))) +decribed by Freund (1983) Nucl. Instrum. Methods, A278, 379-401. The +defaultvalues is for Sapphire at 300K as found by measurement by (Mildner & +Lamaze (1998) J. Appl. Cryst. 31,835-840 +( http://journals.iucr.org/j/issues/1998/06/00/hw0070/hw0070bdy.html#BB4)). It +is possble to ajust the formular to other materials or temperatures by typing in +other parameters. +The transmission in sapphire is only lightly demependt on temperature, but +The formular is only cheked at wavelenths between 0.5 and 14 AA (0.4 meV 0.3 +eV). +The filter is for example used in the Eiger beamline at PSI to cut of high +energies. +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| xmin | m | Lower x bound | -0.16 | +| xmax | m | Upper x bound | 0.16 | +| ymin | m | Lower y bound | -0.16 | +| ymax | m | Upper y bound | 0.16 | +| len | m | Thickness of filter | 0.1 | +| A | m^-1 AA^-1 | | 0.8116 | +| B | AA^2 | | 0.1618 | +| C | m^-1 | | 21.24 | +| D | AA^4 | | 0.1291 | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/contrib/Sapphire_Filter.comp) for `Sapphire_Filter.comp`. + +--- + +*Generated on mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/contrib/SiC.md b/mcstas-comps/contrib/SiC.md new file mode 100644 index 000000000..117576646 --- /dev/null +++ b/mcstas-comps/contrib/SiC.md @@ -0,0 +1,35 @@ +# The `SiC` Component + +*McStas: SiC layer sample* + +## Identification + +- **Site:** +- **Author:** S. Rycroft +- **Origin:** IRI. +- **Date:** Jan 2000 + +## Description + +```text +SiC layer sample + +Example: SiC() +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| **xlength** | m | length of SiC plate | | +| **yheight** | m | height of SiC plate | | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/contrib/SiC.comp) for `SiC.comp`. + +--- + +*Generated on mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/contrib/Single_crystal_inelastic.md b/mcstas-comps/contrib/Single_crystal_inelastic.md new file mode 100644 index 000000000..f0f7b0a7f --- /dev/null +++ b/mcstas-comps/contrib/Single_crystal_inelastic.md @@ -0,0 +1,97 @@ +# The `Single_crystal_inelastic` Component + +*McStas: An extension of Single crystal with material dispersion* + +## Identification + +- **Site:** +- **Author:** Duc Le +- **Origin:** STFC +- **Date:** August 2020 + +## Description + +```text +The component handles a 4D S(q,w) material dispersion, and scatters neutrons +out of it. It is based on the Isotropic_Sqw methodology, extended to 4D. + +A number of approximations are applied: + +- geometry is restricted to box, cylinder and sphere +- ignore absorption, multiple scattering and incoherent scattering +- no temperature handling. The temperature must be taken into account when +generating the S(q,w) data sets, which should contain Bose/detailed balance. +- intensity is used as provided by the S(q,w) data set + +We recommend that you first try the Test_Single_crystal_inelastic example to +learn how to use this complex component. + +4D S(q,w) data files +-------------------- + +The input data file derives from other McStas formats. It may contain structural +information as in Lau/Laz files, and a list of S(q,w) [one per row] with 5 columns + +[ H K L E S(q,w) ] + +An example file example.sqw4 is provided in the McStas/Data directory. + +You may generate such files using iFit such as: + +s = sqw_vaks('defaults'); % a 4D model +d = iData(s); % use default coarse grid for axes [-0.5:0.5] +saveas(d, 'sx_coh.sqw4', 'mcstas'); % export to 4D Sqw file + +%VALIDATION: +This component is undergoing validation. +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| mosaic_AB | arcmin,arcmin,1,1,1,1,1,1 | In Plane mosaic rotation and plane vectors (anisotropic), | {0,0, 0,0,0, 0,0,0} | +| sqw | string | Name of a 4d S(q,w) file - example.sqw4 is included in your installation | 0 | +| geometry | string | Name of an Object File Format (OFF) or PLY file for complex geometry. The OFF/PLY file may be generated from XYZ coordinates using qhull/powercrust. | 0 | +| qwidth | | | 0.05 | +| xwidth | m | Width of crystal. | 0 | +| yheight | m | Height of crystal. | 0 | +| zdepth | m | Depth of crystal (no extinction simulated) | 0 | +| radius | m | Outer radius of sample in (x,z) plane. | 0 | +| delta_d_d | 1 | Lattice spacing variance, gaussian RMS. | 1e-4 | +| mosaic | arcmin | Isotropic crystal mosaic, gaussian RMS. Puts the crystal in the isotropic mosaic model state, thus disregarding other mosaicity parameters. | -1 | +| mosaic_a | arcmin | Horizontal (rotation around lattice vector a) mosaic (anisotropic), gaussian RMS. Put the crystal in the anisotropic crystal vector state. I.e. model mosaicity through rotation around the crystal lattice vectors. Has precedence over in-plane mosaic model. | -1 | +| mosaic_b | arcmin | Vertical (rotation around lattice vector b) mosaic (anisotropic), gaussian RMS. | -1 | +| mosaic_c | arcmin | Out-of-plane (Rotation around lattice vector c) mosaic (anisotropic), gaussian RMS. | -1 | +| recip_cell | 1 | Choice of direct/reciprocal (0/1) unit cell definition. | 0 | +| barns | 1 | Flag to indicate if \|F\|^2 from 'reflections' is in barns or fm^2. | 0 | +| ax | AA / AA^-1 | Coordinates of first (direct/recip) unit cell vector. | 0 | +| ay | AA / AA^-1 | a on y axis | 0 | +| az | AA / AA^-1 | a on z axis | 0 | +| bx | AA / AA^-1 | Coordinates of second (direct/recip) unit cell vector. | 0 | +| by | AA / AA^-1 | b on y axis | 0 | +| bz | AA / AA^-1 | b on z axis | 0 | +| cx | AA / AA^-1 | Coordinates of third (direct/recip) unit cell vector. | 0 | +| cy | AA / AA^-1 | c on y axis | 0 | +| cz | AA / AA^-1 | c on z axis | 0 | +| p_transmit | 1 | Monte Carlo probability for neutrons to be transmitted | -1 | +| sigma_abs | barns | Absorption cross-section per unit cell at 2200 m/s. | 0 | +| sigma_inc | barns | Incoherent scattering cross-section per unit cell. | 0 | +| aa | deg | Unit cell angles alpha, beta and gamma. Then uses norms of | 0 | +| bb | deg | Beta angle. | 0 | +| cc | deg | Gamma angle. | 0 | +| order | 1 | Limit multiple scattering up to given order | 0 | +| RX | m | Radius of horizontal along X lattice curvature. flat for 0. | 0 | +| RY | m | Radius of vertical lattice curvature. flat for 0. | 0 | +| RZ | m | Radius of horizontal along Z lattice curvature. flat for 0. | 0 | +| max_stored_ki | | | 1000 | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/contrib/Single_crystal_inelastic.comp) for `Single_crystal_inelastic.comp`. + +--- + +*Generated on mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/contrib/Source_custom.md b/mcstas-comps/contrib/Source_custom.md new file mode 100644 index 000000000..92f047400 --- /dev/null +++ b/mcstas-comps/contrib/Source_custom.md @@ -0,0 +1,130 @@ +# The `Source_custom` Component + +*McStas: A flexible pulsed or continuous source with customisable parameters. Multiple pulses can be simulated over time.* + +## Identification + +- **Site:** +- **Author:** Pablo Gila-Herranz, based on 'Source_pulsed' by K. Lieutenant +- **Origin:** Materials Physics Center (CFM-MPC), CSIC-UPV/EHU +- **Date:** May 2025 + +## Description + +```text +Produces a custom pulse spectrum with a wavelength distribution as a sum of up to 3 Maxwellian distributions and one of undermoderated neutrons. + +Usage: + +By default, all Maxwellian distributions are assumed to come from anywhere in the moderator. +A custom radius r_i can be defined such that the central circle is at temperature T1, +and the surrounding ring is at temperature T2. +The third Maxwellian distribution at temperature T3 always comes from anywhere in the moderator. + +Multiple pulses can be simulated over time with the n_pulses parameter. +The input flux is in units of [1/(cm^2 sr s AA)], and the output flux is per second, regardless of the number of pulses. +This means that the intensity spreads over n_pulses, so that the units of neutrons per second are preserved. +To simulate only the neutron counts of a single pulse, the input flux should be divided by the frequency. +Bear in mind that the maximum emission time is given by t_pulse * tmax_multiplier, +so short pulses with long tails may require a higher tmax_multiplier value (3 by default). + +To simulate a continuous source, set a pulse length equal to the pulse period (e.g. t_pulse=1.0, freq=1.0). +Note that this continuous beam is simulated over time, unlike other continuous sources in McStas which produce a Dirac delta at time 0. + +Parameters xwidth and yheight must be provided for rectangular moderators, otherwise a circular shape is assumed. + +Model description: + +The normalised Maxwellian distribution for moderated neutrons is defined by [1] +
    +$M(\lambda)=\frac{2a^2}{T^2\lambda^5}\exp\left(-\frac{a}{T\lambda^{2}}\right)$ +
    +where +
    +$a=\left(\frac{h^2}{2m_{N}k_{B}}\right)$ +
    +and the joining function for the under-moderated neutrons is given by [1] +
    +$M(\lambda)_{um}=\frac{1}{\lambda(1+\exp(\lambda\chi-\kappa))}$ +
    + +The normalised time structure of the long pulse is defined by [2] +
    +$N_{t<=t_p}=1-\exp\left(-\frac{t}{\tau/n}\right)$ +
    +
    +$N_{t>t_p}=\exp\left(-\frac{t-t_p}{\tau}\right)-\exp\left(-\frac{t}{\tau/n}\right)$ +
    +where tp is the pulse period, tau is the pulse decay time constant, and n is the ratio of decay to ascend time constants. + +Parameters for some sources: + +HBS thermal source: +t_pulse=0.016, freq=24.0, xwidth=0.04, yheight=0.04, +T1=325.0, I1=0.68e+12, tau1=0.000125, +I_um=2.47e+10, chi_um=2.5 + +HBS cold source: +t_pulse=0.016, freq=24.0, radius=0.010, +T1=60.0, I1=1.75e+12, tau1=0.000170, +I_um=3.82e+10, chi_um=0.9 + +HBS bi-spectral: +t_pulse=0.016, freq=24.0, radius=0.022, r_i=0.010, +T1= 60.0, I1=1.75e+12, tau1=0.000170, +T2=305.0, I2=0.56e+12, tau2=0.000130, +I_um=3.82e+10, chi_um=2.5 + +PSI cold source: +t_pulse=1, freq=1, xwidth=0.1, yheight=0.1, +T1=296.2, I1=8.5e+11, T2=40.68, I2=5.2e+11 + +References: +[1] J. M. Carpenter et al, Nuclear Instruments and Methods in Physics Research Section A, 234, 542-551 (1985). +[2] J. M. Carpenter and W. B. Yelon, Methods in Experimental Physics 23, p. 127, Chapter 2, Neutron Sources (1986). +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| target_index | 1 | Relative index of component to focus at, e.g. next is +1 (used to compute 'dist' automatically) | 1 | +| dist | m | Distance from the source to the target | 0.0 | +| focus_xw | m | Width of the target (focusing rectangle) | 0.02 | +| focus_yh | m | Height of the target (focusing rectangle) | 0.02 | +| xwidth | m | Width of the source | 0.0 | +| yheight | m | Height of the source | 0.0 | +| radius | m | Outer radius of the source (ignored if xwidth and yheight are set) | 0.010 | +| r_i | m | Radius of a central circle at temperature T1, sorrounded by a ring at temperature T2 (ignored by default) | 0.0 | +| **Lmin** | AA | Lower edge of the wavelength distribution | | +| **Lmax** | AA | Upper edge of the wavelength distribution | | +| **freq** | Hz | Frequency of pulses | | +| **t_pulse** | s | Proton pulse length | | +| tmax_multiplier | 1 | Defined maximum emission time at moderator (tmax = tmax_multiplier * t_pulse); 1 for continuous sources | 3.0 | +| n_pulses | 1 | Number of pulses to be simulated (ignored for continuous sources) | 1 | +| T1 | K | Temperature of the 1st Maxwellian distribution; for r_i > 0 it is only used for the central radii r < r_i | 0.0 | +| I1 | 1/(cm^2 sr s AA) | Flux per solid angle of the 1st Maxwellian distribution (integrated over the whole wavelength range) | 0.0 | +| tau1 | s | Pulse decay time constant of the 1st Maxwellian distribution | 0.000125 | +| T2 | K | Temperature of the 2nd Maxwellian distribution (0 to disable); for r_i > 0 it is only used for the external ring r > r_i | 0.0 | +| I2 | 1/(cm^2 sr s AA) | Flux per solid angle of the 2nd Maxwellian distribution | 0.0 | +| tau2 | s | Pulse decay time constant of the 2nd Maxwellian distribution | 0.000125 | +| T3 | K | Temperature of the 3rd Maxwellian distribution (0 to disable) | 0.0 | +| I3 | 1/(cm^2 sr s AA) | Flux per solid angle of the 3rd Maxwellian distribution | 0.0 | +| tau3 | s | Pulse decay time constant of the 3rd Maxwellian distribution | 0.000125 | +| n_mod | 1 | Ratio of pulse decay constant to pulse ascend constant of moderated neutrons (n = tau_decay / tau_ascend) | 1 | +| I_um | 1/(cm^2 sr s AA) | Flux per solid angle for the under-moderated neutrons | 0.0 | +| tau_um | s | Pulse decay time constant of under-moderated neutrons | 0.000012 | +| n_um | 1 | Ratio of pulse decay constant to pulse ascend constant of under-moderated neutrons | 1 | +| chi_um | 1/AA | Factor for the wavelength dependence of under-moderated neutrons | 2.5 | +| kap_um | 1 | Scaling factor for the flux of under-moderated neutrons | 2.2 | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/contrib/Source_custom.comp) for `Source_custom.comp`. +- This model is implemented in an interactive notebook to fit custom neutron sources. + +--- + +*Generated on mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/contrib/Source_gen4.md b/mcstas-comps/contrib/Source_gen4.md new file mode 100644 index 000000000..3e6f9b377 --- /dev/null +++ b/mcstas-comps/contrib/Source_gen4.md @@ -0,0 +1,118 @@ +# The `Source_gen4` Component + +*McStas: Circular/squared neutron source with flat or Maxwellian energy/wavelength +spectrum (possibly spatially gaussian)* + +## Identification + +- **Site:** +- **Author:** Emmanuel Farhi, Kim Lefmann, modified to PSI use by Jonas Okkels Birk +- **Origin:** ILL/Risoe +- **Date:** Aug 27, 2001 + +## Description + +```text +This routine is a neutron source (rectangular or circular), which aims at +a square target centered at the beam (in order to improve MC-acceptance +rate). The angular divergence is then given by the dimensions of the +target. +The neutron energy/wavelength is distributed between Emin=E0-dE and +Emax=E0+dE or Lmin=Lambda0-dLambda and Lmax=Lambda0+dLambda. The I1 may +be either arbitrary (I1=0), or specified in neutrons per steradian per +square cm per Angstrom. A Maxwellian spectra may be selected if you give +the source temperatures (up to 3). And a high energytail of the shape A/(lambda0-lambda) can also be +specified if you give an A. Finally, a file with the flux as a +function of the wavelength [lambda(AA) flux(n/s/cm^2/st/AA)] may be used +with the 'flux_file' parameter. Format is 2 columns free text. +Additionl distributions for the horizontal and vertical phase spaces +distributions (position-divergence) may be specified with the +'xdiv_file' and 'ydiv_file' parameters. Format is free text, requiring +a comment line '# xylimits: pos_min pos_max div_min div_max' to set +the axis of the distribution matrix. All these files may be generated using +standard monitors (better in McStas/PGPLOT format), e.g.: +Monitor_nD(options="auto lambda per cm2") +Monitor_nD(options="x hdiv, all auto") +Monitor_nD(options="y vdiv, all auto") +The source shape is defined by its radius, or can alternatively be squared +if you specify non-zero h and w parameters. +The beam is spatially uniform, but becomes gaussian if one of the source +dimensions (radius, h or w) is negative, or you set the gaussian flag. +Divergence profiles are triangular. +The source may have a thickness, which will broaden the default zero time +distribution. +For the Maxwellian spectra, the generated intensity is dPhi/dLambda (n/s/AA) +For flat spectra, the generated intensity is Phi (n/s). + +Usage example: +Source_gen(radius=0.1,Lambda0=2.36,dLambda=0.16, T1=20, I1=1e13) +Source_gen(h=0.1,w=0.1,Emin=1,Emax=3, I1=1e13, verbose=1, gaussian=1) +EXTEND +%{ +t = rand0max(1e-3); // set time from 0 to 1 ms for TOF instruments. +%} + +Some sources parameters: +PSI cold source T1= 296.16, I1=8.5E11, T2=40.68, I2=5.2E11 +ILL VCS cold source T1=216.8,I1=1.24e+13,T2=33.9,I2=1.02e+13 +(H1) T3=16.7 ,I3=3.0423e+12 +ILL HCS cold source T1=413.5,I1=10.22e12,T2=145.8,I2=3.44e13 +(H5) T3=40.1 ,I3=2.78e13 +ILL Thermal tube T1=683.7,I1=0.5874e+13,T2=257.7,I2=2.5099e+13 +(H12) T3=16.7 ,I3=1.0343e+12 +ILL Hot source T1=1695,I1=1.74e13,T2=708,I2=3.9e12 + +%VALIDATION +Feb 2005: output cross-checked for 3 Maxwellians against VITESS source +I(lambda), I(hor_div), I(vert_div) identical in shape and absolute values +Validated by: K. Lieutenant +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| flux_file | str | Name of a two columns [lambda flux] text file that contains the wavelength distribution of the flux in [1/(s*cm**2*st*AA)]. Comments (#) and further columns are ignored. Format is compatible with McStas/PGPLOT wavelength monitor files. When specified, temperature and intensity values are ignored. NO correction for solid-angle is applied, the intensity emitted into the chosen xw x yh rectangle at distance dist. | 0 | +| xdiv_file | str | Name of the x-horiz. divergence distribution file, given as a free format text matrix, preceeded with a line '# xylimits: xmin xmax xdiv_min xdiv_max' | 0 | +| ydiv_file | str | Name of the y-vert. divergence distribution file, given as a free format text matrix, preceeded with a line '# xylimits: ymin ymax ydiv_min ydiv_max' | 0 | +| radius | m | Radius of circle in (x,y,0) plane where neutrons are generated. You may also use 'h' and 'w' for a square source | 0.0 | +| dist | m | Distance to target along z axis. | 0 | +| xw | m | Width(x) of target. If dist=0.0, xw = full horz. div in deg | 0 | +| yh | m | Height(y) of target. If dist=0.0, yh = full vert. div in deg | 0 | +| E0 | meV | Mean energy of neutrons. | 0 | +| dE | meV | Energy spread of neutrons, half width. | 0 | +| Lambda0 | AA | Mean wavelength of neutrons. | 0 | +| dLambda | AA | Wavelength spread of neutrons,half width | 0 | +| I1 | 1/(cm**2*st) | Source flux per solid angle, area and Angstrom | 0 | +| h | m | Source y-height, then does not use radius parameter | 0 | +| w | m | Source x-width, then does not use radius parameter | 0 | +| gaussian | 0/1 | Use gaussian divergence beam, normal distributions | 0 | +| verbose | 0/1 | display info about the source. -1 inactivate source. | 0 | +| T1 | K | Temperature of the Maxwellian source, 0=none | 0 | +| flux_file_perAA | 1 | When true (1), indicates that flux file data is already per Angstroem. If false, file data is per wavelength bin. | 0 | +| flux_file_log | 1 | When true, will transform the flux table in log scale to improve the sampling. This may also cause | 0 | +| Lmin | AA | Minimum wavelength of neutrons | 0 | +| Lmax | AA | Maximum wavelength of neutrons | 0 | +| Emin | meV | Minimum energy of neutrons | 0 | +| Emax | meV | Maximum energy of neutrons | 0 | +| T2 | K | Second Maxwellian source Temperature, 0=none | 0 | +| I2 | 1/(cm**2*st) | Second Maxwellian Source flux | 0 | +| T3 | K | Third Maxwellian source Temperature, 0=none | 0 | +| I3 | 1/(cm**2*st) | Third Maxwellian Source flux | 0 | +| length | m | Source z-length, not anymore flat | 0 | +| phi_init | degrees | Angle abowe the x-z-plan that the source is amied at | 0 | +| theta_init | degrees | Angle from the z-axis in the x-z-plan that the source is amied at | 0 | +| HEtailA | 1/(cm**2*st*AA) | Amplitude of heigh energy tail | 0 | +| HEtailL0 | AA | Offset of heigh energy tail | 0 | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/contrib/Source_gen4.comp) for `Source_gen4.comp`. +- The ILL Yellow book +- P. Ageron, Nucl. Inst. Meth. A 284 (1989) 197 + +--- + +*Generated on mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/contrib/Source_multi_surfaces.md b/mcstas-comps/contrib/Source_multi_surfaces.md new file mode 100644 index 000000000..98c885385 --- /dev/null +++ b/mcstas-comps/contrib/Source_multi_surfaces.md @@ -0,0 +1,94 @@ +# The `Source_multi_surfaces` Component + +*McStas: Rectangular neutron source with subareas - using wavelength spectra reading +from files* + +## Identification + +- **Site:** +- **Author:** Ludovic Giller, Uwe Filges +- **Origin:** PSI/Villigen +- **Date:** 31.10.06 + +## Description + +```text +This routine is a rectangular neutron source, which aims at a square target +centered at the beam (in order to improve MC-acceptance rate). +The angular divergence is then given by the dimensions of the target. +The source surface can be divided in subareas (maximum 7 in one dimension). +For each subarea a discret spectrum must be loaded given by its corresponding +file. The name of the files are saved in one file and will be called with the +parameter "filename". +In fact the routine first reads the spectrum from files (up to 49) and it +selects randomly a subarea. Secondly it generates a neutron with an random +energy, selected from the spectrum corresponding to the subsurface chosen, and +with a random direction of propagation within the target. +ATTENTION 1: the files must be located in the working directory where also +the instrument file is located +ATTENTION 2: the wavelenght distribution (or binning) must be uniform + +The file giving the name of sub-sources is matrix like, +eg. for a 3x2 (x,y) division : +spec1_1.dat spec1_2.dat spec1_3.dat +spec2_1.dat spec2_2.dat spec2_3.dat(RETURN-key) + +ATTENTION : The line break after the last line is important. +Otherwise the files can not be read in !!! + +and for example spec1_2.dat must be like, always from big to +small lambda : +#surface 1_2 +#comments must be preceded by "#" +#lambda [AA] intensity [a.u.] +9.0 1.39E+08 +8.75 9.67E+08 +8.5 1.17E+09 +8.25 1.50E+09 +8.0 1.60E+09 +7.75 1.43E+09 +7.5 1.40E+09 +7.25 1.36E+09 +7.0 1.35E+09 +6.75 1.33E+09 +6.5 1.32E+09 +6.25 1.31E+09 + + +[a.u.] means that your chosen unit for the intensity influences +the outcoming unit. What you put in you will get out ! +i.e. whatever is the unit for the input intensity you +will have the same unit for the the output. +Generally McStas works in neutrons per second [n/s]. + +Usage example: +Source_multi_surfaces(yheight=0.16,xwidth=0.09,dist=1.18,xw=0.08,yh=0.15,xdim=4,ydim=4, +Lmin=0.01,Lmax=10.0,filename="files_name.dat") +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| filename | str | Name of the file containing a list of the spectra file names | 0 | +| yheight | m | Source y-height | 0.16 | +| xwidth | m | Source x-width | 0.09 | +| dist | m | Distance to target along z axis | 1.18 | +| xw | m | Width(x) of target | 0.08 | +| yh | m | Height(y) of target | 0.15 | +| xdim | int | Number of subareas in the x direction | 4 | +| ydim | int | Number of subareas in the y direction | 4 | +| Emin | eV | Minimum energy of neutrons | 0.0 | +| Emax | eV | Maximum energy of neutrons | 0.0 | +| Lmin | AA | Minimum wavelength of neutrons | 0.0 | +| Lmax | AA | Maximum wavelength of neutrons | 0.0 | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/contrib/Source_multi_surfaces.comp) for `Source_multi_surfaces.comp`. + +--- + +*Generated on mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/contrib/Source_pulsed.md b/mcstas-comps/contrib/Source_pulsed.md new file mode 100644 index 000000000..0b564b9c7 --- /dev/null +++ b/mcstas-comps/contrib/Source_pulsed.md @@ -0,0 +1,74 @@ +# The `Source_pulsed` Component + +*McStas: A pulsed source for variable proton pulse lenghts* + +## Identification + +- **Site:** +- **Author:** Klaus Lieutenant, based on component 'Moderator' by K. Nielsen, M. Hagen and 'ESS_moderator_long_2001' by K. Lefmann +- **Origin:** FZ Juelich +- **Date:** + +## Description + +```text +Produces a long pulse spectrum with a wavelength distribution as a sum of up to 3 Maxwellian distributions and one of undermoderated neutrons + +It uses the time dependence of long pulses. Short pulses can, however, also be simulated by setting the proton pulse short. + +If moderator width and height are given, it assumes a rectangular moderator, and otherwise a circular + +Usage example: +Source_pulsed(xwidth=0.04, yheight=0.04, Lmin=1.0, Lmax=3.0, t_min=0.0, t_max=0.5, dist=0.700, focus_xw=0.020, focus_yh=0.020, +freq=96.0, t_pulse=0.000208, T1=325.0, I1=7.6e09, tau1=0.000170, I_um=2.7e08, chi_um=2.5) + +Parameters for some sources: +HBS thermal source: xwidth=0.04, yheight=0.04, T1=325.0, I1=0.68e+12/freq, tau1=0.000125, n_mod=10, I_um=2.47e+10/freq, chi_um=2.5, t_pulse=0.016/freq, freq=96.0 or 24.0 +HBS cold source : radius=0.010, T1= 60.0, I1=1.75e+12/freq, tau2=0.000170, n_mod= 5, I_um=3.82e+10/freq, chi_um=0.9, t_pulse=0.016/freq, freq=24.0 or 96.0 +HBS bi-spectral : radius=0.022, r_i=0.010, T1= 60.0, I1=1.75e+12/freq, tau2=0.000170, +T2=305.0, I2=0.56e+12/freq, tau1=0.000130, n_mod= 5, I_um=3.82e+10/freq, chi_um=2.5, t_pulse=0.016/freq, freq=24.0 or 96.0 +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| xwidth | m | Width of the source | 0.0 | +| yheight | m | Height of the source | 0.0 | +| radius | m | Outer radius of the source | 0.010 | +| r_i | m | Radius of a central circle that is sorrounded by a ring of different temperature | 0.0 | +| **Lmin** | Ang | Lower edge of the wavelength distribution | | +| **Lmax** | Ang | Upper edge of the wavelength distribution | | +| t_min | s | Lower edge of the time interval | 0.0 | +| t_max | s | Upper edge of the time interval | 0.001 | +| target_index | 1 | relative index of component to focus at, e.g. next is +1 this is used to compute 'dist' automatically. | 1 | +| dist | m | Distance from the source to the target | 0.0 | +| focus_xw | m | Width of the target (= focusing rectangle) | 0.02 | +| focus_yh | m | Height of the target (= focusing rectangle) | 0.02 | +| **freq** | Hz | Frequency of pulses | | +| **t_pulse** | s | Proton pulse length | | +| T1 | K | Temperature of the 1st Maxwellian distribution, for r_i > 0 only for radii r in the range 0 < r < r_i | 0.0 | +| I1 | 1/(cm**2*sr) | Flux per solid angle of the 1st Maxwellian distribution (integrated over the whole wavelength range). | 0.0 | +| tau1 | s | Pulse decay constant of the 1st Maxwellian distribution | 0.000125 | +| T2 | K | Temperature of the 2nd Maxwellian distribution, 0=none, for r_i > 0 only for radii r in the range r_i < r < radius | 0.0 | +| I2 | 1/(cm**2*sr) | Flux per solid angle of the 2nd Maxwellian distribution | 0.0 | +| tau2 | s | Pulse decay constant of the 2nd Maxwellian distribution | 0.0 | +| T3 | K | Temperature of the 3rd Maxwellian distribution, 0=none | 0.0 | +| I3 | 1/(cm**2*sr) | Flux per solid angle of the 3rd Maxwellian distribution | 0.0 | +| tau3 | s | Pulse decay constant of the 3rd Maxwellian distribution | 0.0 | +| n_mod | 1 | Ratio of pulse decay constant to pulse ascend constant of moderated neutrons | 10 | +| I_um | 1/(cm**2*sr) | Flux per solid angle for the under-moderated neutrons | 0.0 | +| tau_um | s | Pulse decay constant of under-moderated neutrons | 0.000012 | +| n_um | 1 | Ratio of pulse decay constant to pulse ascend constant of under-moderated neutrons | 5 | +| chi_um | 1/Ang | Factor for the wavelength dependence of under-moderated neutrons | 2.5 | +| kap_um | 1 | Scaling factor for the flux of under-moderated neutrons | 2.2 | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/contrib/Source_pulsed.comp) for `Source_pulsed.comp`. + +--- + +*Generated on mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/contrib/Spherical_Backscattering_Analyser.md b/mcstas-comps/contrib/Spherical_Backscattering_Analyser.md new file mode 100644 index 000000000..6418d7114 --- /dev/null +++ b/mcstas-comps/contrib/Spherical_Backscattering_Analyser.md @@ -0,0 +1,50 @@ +# The `Spherical_Backscattering_Analyser` Component + +*McStas: Spherical backscattering analyser* + +## Identification + +- **Site:** +- **Author:** Nikolaos Tsapatsaris with P Willendrup, R Lechner, H Bordallo +- **Origin:** NBI/ESS +- **Date:** 2015 + +## Description + +```text +Spherical backscattering analyser with variable reflectivity, and mosaic gaussian response. + +Based on earlier developments by Miguel A. Gonzalez 2000, Tilo Seydel 2007, Henrik Jacobsen 2011. + +Example: +COMPONENT doppler = Spherical_Backscattering_Analyser( +xmin=0, xmax=0, ymin=0, ymax=0, mosaic=21.0, dspread=0.00035, Q=2.003886241, DM=0, radius=2.5, f_doppler=0, A_doppler=0, R0=1, debug=0) +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| xmin | m | Minimum absolute value of x =~ 0.5 * Width of the monochromator | 0 | +| xmax | m | Maximum absolute value of x =~ 0.5 * Width of the monochromator | 0 | +| ymin | m | Minimum absolute value of x =~ 0.5 * Width of the monochromator | 0 | +| ymax | m | Maximum absolute value of y =~ 0.5 * Height of the monochromator | 0 | +| mosaic | arc min | Mosaicity, FWHM | 21.0 | +| dspread | 1 | Relative d-sprea, FWHM | 0.00035 | +| Q | AA-1 | Magnitude of scattering vector | 2.003886241 | +| DM | AA | monochromator d-spacing instead of Q = 2*pi/DM | 0 | +| radius | m | Curvature radius | 2.5 | +| f_doppler | Hz | Frequency of doppler drive | 0 | +| A_doppler | m | Amplitude of doppler drive | 0 | +| R0 | 1 | Scalar, maximum reflectivity of neutrons | 1 | +| debug | 1 | if debug > 0 print out some info about the calculations | 0 | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/contrib/Spherical_Backscattering_Analyser.comp) for `Spherical_Backscattering_Analyser.comp`. + +--- + +*Generated on mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/contrib/Spin_random.md b/mcstas-comps/contrib/Spin_random.md new file mode 100644 index 000000000..e771d6f4a --- /dev/null +++ b/mcstas-comps/contrib/Spin_random.md @@ -0,0 +1,32 @@ +# The `Spin_random` Component + +*McStas: Set a random polarisation* + +## Identification + +- **Site:** +- **Author:** Michael Schneider (SNAG) +- **Origin:** SNAG +- **Date:** 2024 + +## Description + +```text +This component has no physical size or extent, it simply asigns the neutron +ray polarisation randomly to either spin-up or spin-down. +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/contrib/Spin_random.comp) for `Spin_random.comp`. + +--- + +*Generated on mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/contrib/Spot_sample.md b/mcstas-comps/contrib/Spot_sample.md new file mode 100644 index 000000000..1e22f5559 --- /dev/null +++ b/mcstas-comps/contrib/Spot_sample.md @@ -0,0 +1,59 @@ +# The `Spot_sample` Component + +*McStas: Spot sample.* + +## Identification + +- **Site:** +- **Author:** Garrett Granroth +- **Origin:** Oak Ridge National Laboratory +- **Date:** 14.11.14 + +## Description + +```text +A sample that is a series of delta functions in omega and Q. The Q is +determined by a two theta value and an equal number of spots around the +beam center. This component is a variation of the V sample written +by Kim Lefmann and Kristian Nielsen. The following text comes from their +original component. +A Double-cylinder shaped incoherent scatterer (a V-sample) +No multiple scattering. Absorbtion included. +The shape of the sample may be a box with dimensions xwidth, yheight, zthick. +The area to scatter to is a disk of radius 'focus_r' situated at the target. +This target area may also be rectangular if specified focus_xw and focus_yh +or focus_aw and focus_ah, respectively in meters and degrees. +The target itself is either situated according to given coordinates (x,y,z), or +setting the relative target_index of the component to focus at (next is +1). +This target position will be set to its AT position. When targeting to centered +components, such as spheres or cylinders, define an Arm component where to +focus at. + +Example: spot_sample(radius_o=0.01, h=0.05, pack = 1, +xwidth=0, yheight=0, zthick=0, Eideal=100.0,w=50.0,two_theta=25.0,n_spots=4) +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| radius_o | m | Outer radius of sample in (x,z) plane | 0.01 | +| h | m | Height of sample y direction | 0.05 | +| pack | 1 | Packing factor | 1 | +| xwidth | m | horiz. dimension of sample, as a width | 0 | +| yheight | m | vert.. dimension of sample, as a height | 0 | +| zthick | m | thickness of sample | 0 | +| Eideal | meV | The presumed incident energy | 100.0 | +| w | meV | The energy transfer of the delta function | 50.0 | +| two_theta | degrees | the scattering angle of the spot | 25.0 | +| n_spots | 1 | The number of spots to generate symmetrically around the beam | 4 | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/contrib/Spot_sample.comp) for `Spot_sample.comp`. + +--- + +*Generated on mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/contrib/StatisticalChopper.md b/mcstas-comps/contrib/StatisticalChopper.md new file mode 100644 index 000000000..e78b0a630 --- /dev/null +++ b/mcstas-comps/contrib/StatisticalChopper.md @@ -0,0 +1,46 @@ +# The `StatisticalChopper` Component + +*McStas: Statistical (correlation) Chopper* + +## Identification + +- **Site:** +- **Author:** C. Monzat/E. Farhi/S. Rozenkranz +- **Origin:** ILL +- **Date:** Nov 10th, 2009 + +## Description + +```text +This component is a statistical chopper based on a pseudo random sequence that the user +can specify. Inspired from DiskChopper, it should be used with SatisticalChopper_Monitor component. + +Example: StatisticalChopper(nu=1487*60/255) use default sequence +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| radius | m | Radius of the disc | 0.5 | +| yheight | m | Slit height (if = 0, equal to radius). Auto centering of beam at half height. | 0 | +| **nu** | Hz | Frequency of the Chopper, omega=2*PI*nu | | +| jitter | s | Jitter in the time phase | 0 | +| delay | s | Time 'delay'. | 0 | +| isfirst | 0/1 | Set it to 1 for the first chopper position in a cw source | 0 | +| abs_out | 0/1 | Absorb neutrons hitting outside of chopper radius? | 1 | +| phase | deg | Angular 'delay' (overrides delay) | 0 | +| verbose | 1 | Set to 1 to display Disk chopper configuration | 0 | +| n_pulse | 1 | Number of pulses (Only if isfirst) | 1 | +| sequence | str | Slit sequence around disk, with 0=closed, 1=open positions. | "NULL" | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/contrib/StatisticalChopper.comp) for `StatisticalChopper.comp`. +- R. Von Jan and R. Scherm. The statistical chopper for neutron time-of-flight spectroscopy. Nuclear Instruments and Methods, 80 (1970) 69-76. + +--- + +*Generated on mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/contrib/StatisticalChopper_Monitor.md b/mcstas-comps/contrib/StatisticalChopper_Monitor.md new file mode 100644 index 000000000..9c23c4f8f --- /dev/null +++ b/mcstas-comps/contrib/StatisticalChopper_Monitor.md @@ -0,0 +1,42 @@ +# The `StatisticalChopper_Monitor` Component + +*McStas: Monitor designed to compute the autocorrelation signal for the Statistical Chopper* + +## Identification + +- **Site:** +- **Author:** C. Monzat/E. Farhi +- **Origin:** ILL +- **Date:** 2009 + +## Description + +```text +This component is a time sensitive monitor which calculates the cross +correlation between the pseudo random sequence of a statistical chopper +and the signal received. It mainly uses fonctions of component Monitor_nD. +It is possible to use the various options of the Monitor_nD but the user MUST NOT +specify "time" in the options. Auto detection of the time limits is possible if the +user chooses tmin=>tmax. + +StatisticalChopper_Monitor(options ="banana bins=500, abs theta limits=[5,105],bins=1000") +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| **comp** | StatisticalChopper | quoted name of the component monitored | | +| tmin | s | minimal time of detection | 0.0 | +| tmax | s | maximal time of detection | 0.0 | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/contrib/StatisticalChopper_Monitor.comp) for `StatisticalChopper_Monitor.comp`. +- R. Von Jan and R. Scherm. The statistical chopper for neutron time-of-flight spectroscopy. Nuclear Instruments and Methods, 80 (1970) 69-76. + +--- + +*Generated on mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/contrib/SupermirrorFlat.md b/mcstas-comps/contrib/SupermirrorFlat.md new file mode 100644 index 000000000..39ed9754e --- /dev/null +++ b/mcstas-comps/contrib/SupermirrorFlat.md @@ -0,0 +1,166 @@ +# The `SupermirrorFlat` Component + +*McStas: Model of flat supermirror with parallel mirror surfaces* + +## Identification + +- **Site:** +- **Author:** Wai Tung Lee +- **Origin:** ESS +- **Date:** September 2024 + +## Description + +```text +Calculate the neutron reflection and transmission of a flat supermirror with parallel mirror surfaces. +The following can be specified: +1. reflection from either mirror coating or substrate surface, mirror coating can be single-side, double-side, +2. absorber coating: beneath mirror coating, single-side coated, double-side coated, or uncoated, +3. refraction and total reflection at substrate surface, +4. attenuation and internal reflection inside substrate. + +note: supermirror name is case-sensitive +text entries of parameters below are not sensitive to case +default regional spelling is UK, but some paramters accept other reginal spelling + + +INITIALISATION parameters: + + +STEP 1: Specify supermirror shape, supermirror coating, absorber and substrate material +In this step, supermirror is standing vertically, mirror coating = yz plane with long side along +z. + +SUPERMIRROR SHAPE ------------------------------------------------- +1. +x: "top" mirror surface normal, horizontal transverse to beam; ++y: vertical up, parallel to mirror surface; ++z: longitudinal to beam, parallel to mirror surface; +2. top and bottom mirrors' surface normals are +x and -x, respectively; +3. entrance-side edge normal is -z, exit-side edge normal is +z (beam direction); +3. normals of and points on the remaining edge surfaces at +y and -y are user-specified, + +Mirror shape is specified by length, thickness, and the normals of and points on the edge surfaces at +y and -y sides. + +The two side-edges at +y and -y are taken to be symmetric about the xz-plane, only one needs to be specified. +Use InitialiseStdSupermirrorFlat_detail if not symmetric. + +SUPERMIRROR COATING ------------------------------------------------- +Mirror reflectivity parameters are specified by name to look up 6 parameters {R0, Qc, alpha, m, W, beta}. + +If name = SubstrateSurface, reflectivity is calculated by +R = R0 (when q<=Qc), R0*( (q - (q^2 - Qc^2)^1/2) / (q + (q^2 - Qc^2)^1/2) )^2 (when q>Qc), with Qc=sqrt(16 Pi SLD). +with Qc = Qc_sub defined in SubstrateSurfaceParameters and SLD defined in SubstrateParameters, +otherwise reflectivity is calculated by +R = R0 (when q<=Qc), R = R0*0.5*(1-tanh((q - m*Qc)/W))*(1-alpha*(q-Qc)+beta*(q-Qc)*(q-Qc)) (when q>Qc). + +specified mirror material name matching one of those defined in "Supermirror_reflective_coating_materials.txt". +If the mirror is non-polarising, specify the same name and parameters for spin plus and spin minus. + +ABSORBER LAYER ------------------------------------------------- +Absorber parameters are either specified by name or by parameters L_abs, L_inc and the coating thickness. + + +SUBSTRATE ------------------------------------------------- +Substrate parameters are specified by name to look up 3 parameters {L_abs, L_inc, SLD}. + +specify substrate material name matching one of those defined in "Supermirror_substrate_materials.txt". + + + +STEP 2: Orient and position the as-defined supermirror in the McStas module XYZ coordinates. + +1. Specify initially a location on the front side of the mirror (see parameter "initial_placement_at_origin" below). +The supermirror is shifted so that the selected point coincides with the origin of the McStas module XYZ coordinates +2. Then the orientation and position of the supermirror are specified by the movements in sequence as +1st, tilting about an axis in +y direction at a selected location (see parameters "tilt_y_axis_location" and "tilt_about_y_first_in_degree" below), +2nd, translation, +3rd, rotation about the z-axis of the McStas module XYZ coordinates. + + + +OUTPUT: +Supermirror struct with all parameter values entered and initialised +User declares "Supermirror supermirror;" or its equivalence, +then passes pointer "&supermirror" to function. + + + +End INITIALISATION parameters + + + + +RAY-TRACING parameters + +FUNCTION IntersectStdSupermirrorFlat +INPUT: +neutron parameters: w_sm=p, t_sm=t, p_sm=coords_set(x,y,z), v_sm=coords_set(vx,vy,vz), s_sm=coords_set(sx,sy,sz) +last_exit_time [s] time of last exit from a supermirror, use F_INDETERMINED if not determined. (F_INDETERMINED defined in this file) +last_exit_point [m,m,m] position of last exit from a supermirror, use coords_set(F_INDETERMINED,F_INDETERMINED,F_INDETERMINED) if not determined. +last_exit_plane [1] plane of last exit from a supermirror, use I_INDETERMINEDif not determined. +sm: [struct] Supermirror structure +OUTPUT: +num_intersect: [1] number of intersects through supermirror +First intersect time, point, plane if there is intersect. +User declare one or more parameters, e.g. "int num_intersect; double first_intersect_time; Coords first_intersect_point; int first_intersect_plane;", +then passes pointers "&num_intersect, &first_intersect_time, &first_intersect_point, &first_intersect_plane" to function. +Pass 0 as pointer if not needed. +first_intersect_dtime: [s] time difference from neutron to first intersect +first_intersect_dpoint: [m,m,m] position difference from neutron to point of first intersect +first_intersect_time: [s] time of first intersect +first_intersect_point: [m,m,m] point of first intersect +first_intersect_plane: [1] plane of first intersect +RETRUN: +sm_Intersected, sm_Missed. sm_Error + + +FUNCTION StdSupermirrorFlat +INPUT: +sm [struct] Supermirror structure +INPUT & OUTPUT: +neutron parameters: w_sm=p, t_sm=t, p_sm=coords_set(x,y,z), v_sm=coords_set(vx,vy,vz), s_sm=coords_set(sx,sy,sz) +last_exit_time [s] time of last exit from a supermirror, use F_INDETERMINED if not determined. (F_INDETERMINED defined in this file) +last_exit_point [m,m,m] position of last exit from a supermirror, use coords_set(F_INDETERMINED,F_INDETERMINED,F_INDETERMINED) if not determined. +last_exit_plane [1] plane of last exit from a supermirror, use I_INDETERMINEDif not determined. +RETRUN: +sm_Exited, sm_Absorbed. sm_Error +sm: [struct Supermirror] Supermirror structure + + +End RAY-TRACING parameters +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| side_edge_normal | 1,1,1 | Normal vector of one of the two side-edge surface, use Coords structure, doesn't need to be normalised | {0,+1,0} | +| side_edge_point | m,m,m | A point on one of the two side-edge surface with its normal specified above, use Coords structure | {0,+0.1,0} | +| length | m | Supermirror length | 0.5 | +| thickness_in_mm | mm | Substrate thickness in mm | 0.3 | +| mirror_coated_side | string | Sequential keywords combinations of position and surface property. position: "Both", "Top", "Bottom"; surface property: "Coated", "SubstrateSurface", "NoReflection"; Note: "NotCoated"="Empty"="SubstrateSurface", e.g. "BothCoated", "BottomCoatedTopSubstrate" (case-insensitive.) | "BothCoated" | +| mirror_spin_plus_material_name | string | mirror spin+ material name in "Supermirror_reflective_coating_materials.txt". (case-insensitive) | "FeSiPlus" | +| mirror_spin_plus_m | 1 | mirror spin+ m-value, -1=use default value | 3.5 | +| mirror_spin_minus_material_name | string | mirror spin- material name in "Supermirror_reflective_coating_materials.txt". (case-insensitive) | "FeSiMinus" | +| mirror_spin_minus_m | 1 | mirror spin- m-value, -1=use default value (useful for spin-) | -1 | +| substrate_material_name | string | substrate material name in "Supermirror_substrate_materials.txt". (Material name is case-insensitive) | "Glass" | +| absorber_coated_side | string | "BothNotCoated", "BothCoated", "TopCoated", "BottomCoated". | "BothNotCoated" | +| absorber_material_name | string | absorber material name in "Supermirror_absorber_coating_materials.txt" or "Empty", 0="Empty", | "Gd" | +| absorber_thickness_in_micron | micrometer | absorber coating thickness in micrometer | 100 | +| initial_placement_at_origin | | | "FrontSubstrateCentre" | +| tilt_y_axis_location | | | "FrontSubstrateCentre" | +| tilt_about_y_first_in_degree | | | 1.5 | +| translation_second_x | | | 0 | +| translation_second_y | | | 0 | +| translation_second_z | | | 0 | +| rot_about_z_third_in_degree | | | 0 | +| tracking | | | "DetailTracking" | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/contrib/SupermirrorFlat.comp) for `SupermirrorFlat.comp`. + +--- + +*Generated on mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/contrib/TOF2Q_cyl_monitor.md b/mcstas-comps/contrib/TOF2Q_cyl_monitor.md new file mode 100644 index 000000000..85ca41787 --- /dev/null +++ b/mcstas-comps/contrib/TOF2Q_cyl_monitor.md @@ -0,0 +1,45 @@ +# The `TOF2Q_cyl_monitor` Component + +*McStas: Release: McStas 2.0 + +Cylindrical (2pi) 2theta v. q Time-of-flight monitor.* + +## Identification + +- **Site:** +- **Author:** Kim Lefmann +- **Origin:** Risoe +- **Date:** October 2000 + +## Description + +```text +Cylindrical (2pi) 2theta v. q Time-of-flight monitor. +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| nq | 1 | Number of q bins | 100 | +| nphi | 1 | Number of angular bins | 100 | +| nh | 1 | Number of bins in detector height | 10 | +| restore_neutron | 1 | If set, the monitor does not influence the neutron state | 0 | +| filename | str | Name of file in which to store the detector image | 0 | +| radius | m | Cylinder radius | 1.0 | +| height | m | Cylinder height | 0.1 | +| q_min | 1/AA | Minimum q value | 0 | +| q_max | 1/AA | Maximum q value | 20 | +| L_chop2samp | m | Distance from resolution chopper to sample position | 144.0 | +| t_chop | ms | Flight time of mean wave length from source to resolution chopper | 0.004 | +| pixel | 1 | Flag, 0: no pixelation and perfect time. 1: make pixels from nphi and nh and time resolution limitation. | 1 | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/contrib/TOF2Q_cyl_monitor.comp) for `TOF2Q_cyl_monitor.comp`. + +--- + +*Generated on mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/contrib/TOFSANSdet.md b/mcstas-comps/contrib/TOFSANSdet.md new file mode 100644 index 000000000..71df6bd2a --- /dev/null +++ b/mcstas-comps/contrib/TOFSANSdet.md @@ -0,0 +1,65 @@ +# The `TOFSANSdet` Component + +*McStas: Multiple TOF detectors for SANS instrument. +The component is to be placed at the sample position. +For the time being better switch gravity off.* + +## Identification + +- **Site:** +- **Author:** Henrich Frielinghaus, FZJuelich +- **Origin:** FZJ +- **Date:** Apr 2013 + +## Description + +```text +TOF monitor that calculates I of q. + +Example: TOFSANSdet(); +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| Nq | 1 | Number of q-bins | 100 | +| plength | | | 0.00286 | +| ssdist | | Source-Sample distance for TOF calculation. | 27.0 | +| coldis | | Collimation length | 20.0 | +| Sthckn | cm | sample thickness | 0.1 | +| ds1 | | distance of detector 1 | 1.0 | +| xw1 | | width of detector 1 (0 for off) | 0.0 | +| yh1 | | height of detector 1 (0 for off) | 0.0 | +| hl1 | | w/h of hole in det 1 (0 for off), full width | 0.0 | +| ds2 | | distance...........2 | 5.0 | +| xw2 | | width..............2 | 1.0 | +| yh2 | | heigth.............2 | 1.0 | +| hl2 | | hole...............2 | 0.2 | +| ds3 | | | 20.0 | +| xw3 | | width..............3 | 1.0 | +| yh3 | | height.............3 | 1.0 | +| hl3 | | hole...............3 (beam stop, used for primary beam detection) | 0.04 | +| vx3 | | vertical extension of beam stop down (in case of gravity off set 0.0, otherwise value larger than 1.0) | 0.0 | +| tmin | s | Beginning of time window | 0.005 | +| tmax | s | End of time window | 0.15 | +| Nx | | Number of horizontal detector pixels (detector 1,2,3) better leave unchanged | 128.0 | +| Ny | | Number of vertical detector pixels (detector 1,2,3) better leave unchanged | 128.0 | +| Nt | | Number of time bins (detector 1,2,3) better leave unchanged | 500.0 | +| qmin | 1/A | Lower limit of q-range | 0.0005 | +| qmax | 1/A | Upper limit of q-range | 0.11 | +| rstneu | | restore neutron after treatment ??? (0.0 = no) | 0.0 | +| centol | | tolerance of center determination (if center larger than centol*calculated_center then set back to theory) | 0.1 | +| inttol | | tolerance of intensity (if primary beam intensity smaller than inttol*max_intensity then discard data) | 0.0001 | +| qcal | | calibration of intensity (cps) to width of q-bin (non_zero = yes, zero = no) | 1 | +| fname | | file name (first part without extensions) | 0 | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/contrib/TOFSANSdet.comp) for `TOFSANSdet.comp`. + +--- + +*Generated on mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/contrib/TOF_PSDmonitor.md b/mcstas-comps/contrib/TOF_PSDmonitor.md new file mode 100644 index 000000000..22033a3b3 --- /dev/null +++ b/mcstas-comps/contrib/TOF_PSDmonitor.md @@ -0,0 +1,49 @@ +# The `TOF_PSDmonitor` Component + +*McStas: Position-sensitive TOF vs. (height) linear monitor.* + +## Identification + +- **Site:** +- **Author:** Robert Dalgliesh +- **Origin:** ISIS +- **Date:** September 2021 + +## Description + +```text +Adapted from Kim Lefmann's TOF_cylPSDmonitor and PSD_monitors +An n pixel (vertical, linear) PSD monitor with Time of Flight detection. +This component may also be used as a beam +detector. + +Example: TOF_PSDmonitor(xmin=-0.1, xmax=0.1, ymin=-0.1, ymax=0.1, +ny=90, nchan=100, TOFmin=0.0, TOFmax=20000.0, filename="Output.psd") +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| ny | 1 | Number of pixel rows | 90 | +| nchan | 1 | Number of TOF channels | 100 | +| xwidth | m | width of detector opening | 0.1 | +| xmin | m | Lower x bound of detector opening | 0 | +| xmax | m | Upper x bound of detector opening | 0 | +| yheight | m | height of detector opening | 0.1 | +| ymin | m | Lower y bound of detector opening | 0 | +| ymax | m | Upper y bound of detector opening | 0 | +| TOFmin | mu-s | Beginning TOF window | 0 | +| TOFmax | mu-s | End TO window | 1e6 | +| nowritefile | 1 | If set, detector will skip writing to disk | 0 | +| filename | str | Name of file in which to store the detector image | 0 | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/contrib/TOF_PSDmonitor.comp) for `TOF_PSDmonitor.comp`. + +--- + +*Generated on mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/contrib/TOF_PSDmonitor_toQ.md b/mcstas-comps/contrib/TOF_PSDmonitor_toQ.md new file mode 100644 index 000000000..11c09aa8d --- /dev/null +++ b/mcstas-comps/contrib/TOF_PSDmonitor_toQ.md @@ -0,0 +1,57 @@ +# The `TOF_PSDmonitor_toQ` Component + +*McStas: Position-sensitive, linear Q monitor.* + +## Identification + +- **Site:** +- **Author:** Robert Dalgliesh +- **Origin:** ISIS +- **Date:** September 2021 + +## Description + +```text +One-dimensional Q-monitor. Calculates Q from "measured" time-of-flight, +i.e. not from particle velocity parameters. + +Adapted from Kim Lefmann's TOF_cylPSDmonitor and PSD_monitors +An n pixel Q-monitor based on measured Time of Flight detection. +This component may also be used as a beam +detector. + +Example: TOF_PSDmonitor_toQ(xmin=-0.1, xmax=0.1, ymin=-0.1, ymax=0.1, +ny=90, nqbin=100, TOFmin=0.0, TOFmax=20000.0, filename="Output.psd") +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| ny | 1 | Number of y bins (for discretisation of vertical detector dimension into "bins") | 90 | +| nqbin | 1 | number of q bins | 500 | +| xwidth | m | width of detector opening | 0.1 | +| xmin | m | Lower x bound of detector opening | 0 | +| xmax | m | Upper x bound of detector opening | 0 | +| yheight | m | height of detector opening | 0.1 | +| ymin | m | Lower y bound of detector opening | 0 | +| ymax | m | Upper y bound of detector opening | 0 | +| tmin | mu-s | Beginning TOF window | 0.0 | +| tmax | mu-s | End TO window | 100000.0 | +| qmin | AA^-1 | Start of q window | 0.005 | +| qmax | AA^-1 | End of q window | 0.5 | +| L1 | m | distance from source to sample (m) | 23.0 | +| L2 | m | distance from sample to detector (m) | 3.0 | +| detTheta | deg | Nominal detector theta | 0.91 | +| filename | str | Name of file in which to store the detector image | 0 | +| nowritefile | 1 | If set, detector will skip writing to disk | 0 | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/contrib/TOF_PSDmonitor_toQ.comp) for `TOF_PSDmonitor_toQ.comp`. + +--- + +*Generated on mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/contrib/Transmission_V_polarisator.md b/mcstas-comps/contrib/Transmission_V_polarisator.md new file mode 100644 index 000000000..77625a1aa --- /dev/null +++ b/mcstas-comps/contrib/Transmission_V_polarisator.md @@ -0,0 +1,59 @@ +# The `Transmission_V_polarisator` Component + +*McStas: Transmission V-polarisator including absorption by Fe in the supermirror. Experimentally benchmarked.* + +## Identification + +- **Site:** +- **Author:** Andreas Ostermann (additions from Michael Schneider, SNAG) +- **Origin:** TUM +- **Date:** 2024 + +## Description + +```text +Transmission V-polarisator including absorption by Fe in the supermirror. + +Example: Transmission_V_polarisator(w1=0.050, h1=0.050, +w2=0.050, h2=0.050, l=2.700, +waferD=0.0003, FeD=2.16e-06, +Si_i=0.2, Si_a=0.215, +R0=0.99, Qc=0.02174, alpha=4.25, W=0.001, +mleft=1.2, mright=1.2, mtop=1.2, mbottom=1.2, +reflectUP="measured_up_q.dat",reflectDW="measured_dw_q.dat") +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| reflectUP | str | Reflectivity profile of the FeSi-wafer for spin-up neutrons; columns [q,R] | 0 | +| reflectDW | str | Reflectivity profile of the FeSi-wafer for spin-down neutrons; columns [q,R] | 0 | +| **w1** | m | Width at the polarizer entry | | +| **h1** | m | Height at the polarizer entry | | +| **w2** | m | Width at the polarizer exit | | +| **h2** | m | Height at the polarizer exit | | +| **l** | m | length of polarizer | | +| **waferD** | m | Thickness of Si wafer | | +| **Si_i** | barns | Scattering cross section per atom (barns) | | +| **Si_a** | barns | Absorption cross section per atom (barns) at 2200m/s | | +| **FeD** | m | Thickness of Fe in supermirror, Ti is neglected | | +| R0 | 1 | Low-angle reflectivity of the outer guide | 0.99 | +| Qc | AA-1 | Critical scattering vector of the outer guide | 0.02174 | +| alpha | AA | Slope of reflectivity of the outer guide | 4.25 | +| W | AA-1 | Width of supermirror cut-off of the outer guide | 0.001 | +| mleft | 1 | m-value of material for left. vert. mirror of the outer guide | -1 | +| mright | 1 | m-value of material for right. vert. mirror of the outer guide | -1 | +| mtop | 1 | m-value of material for top. horz. mirror of the outer guide | -1 | +| mbottom | 1 | m-value of material for bottom. horz. mirror of the outer guide | -1 | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/contrib/Transmission_V_polarisator.comp) for `Transmission_V_polarisator.comp`. +- P. Böni, W. Münzer and A. Ostermann: Physica B: Condensed Matter Volume 404, Issue 17, 1 September 2009, Pages 2620-2623 + +--- + +*Generated on mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/contrib/Transmission_polarisatorABSnT.md b/mcstas-comps/contrib/Transmission_polarisatorABSnT.md new file mode 100644 index 000000000..2631b60a3 --- /dev/null +++ b/mcstas-comps/contrib/Transmission_polarisatorABSnT.md @@ -0,0 +1,69 @@ +# The `Transmission_polarisatorABSnT` Component + +*McStas: Transmission V-polarisator including absorption by Fe in the supermirror.* + +## Identification + +- **Site:** +- **Author:** Andreas Ostermann +- **Origin:** TUM +- **Date:** 2004 + +## Description + +```text +Transmission V-polarisator including absorption by Fe in the supermirror. + +Example: Gravity_guide(w1=0.1, h1=0.1, w2=0.1, h2=0.1, l=12, +R0=0.99, Qc=0.021, alpha=6.07, m=1.0, W=0.003, k=1, d=0.0005) +Example: Transmission_polarisatorABSnT(w1=0.050, h1=0.050, +w2=0.050, h2=0.050, l=2.700, +waferD=0.0003, FeD=2.16e-06, +Si_i=0.2, Si_a=0.215, +R0=0.99, Qc=0.02174, alpha=4.25, W=0.001, +mleft=1.2, mright=1.2, mtop=1.2, mbottom=1.2, +R0_up=0.99, Qc_up=0.014, alpha_up=2.25, W_up=0.0025, mup=1.0, +R0_down=0.99, Qc_down=0.02174, alpha_down=3.8, W_down=0.00235, mdown=2.5) +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| **w1** | m | Width at the polarizer entry | | +| **h1** | m | Height at the polarizer entry | | +| **w2** | m | Width at the polarizer exit | | +| **h2** | m | Height at the polarizer exit | | +| **l** | m | length of polarizer | | +| **waferD** | m | Thickness of Si wafer | | +| **Si_i** | barns | Scattering cross section per atom (barns) | | +| **Si_a** | barns | Absorption cross section per atom (barns) at 2200m/s | | +| **FeD** | m | Thickness of Fe wafer | | +| R0 | 1 | Low-angle reflectivity of the outer guide | 0.99 | +| Qc | AA-1 | Critical scattering vector of the outer guide | 0.02174 | +| alpha | AA | Slope of reflectivity of the outer guide | 4.25 | +| W | AA-1 | Width of supermirror cut-off of the outer guide | 0.001 | +| R0_up | 1 | Low-angle reflectivity of the Fe/Si-wafer for spin up neutrons | 0.99 | +| Qc_up | AA-1 | Critical scattering vector of the Fe/Si-wafer for spin up neutrons | 0.0109 | +| alpha_up | AA | Slope of reflectivity of the Fe/Si-wafer for spin up neutrons | 4.25 | +| W_up | AA-1 | Width of supermirror cut-off of the Fe/Si-wafer for spin up neutrons | 0.0025 | +| R0_down | 1 | Low-angle reflectivity of the Fe/Si-wafer for spin down neutrons | 0.99 | +| Qc_down | AA-1 | Critical scattering vector of the Fe/Si-wafer for spin down neutrons | 0.02174 | +| alpha_down | AA | Slope of reflectivity of the Fe/Si-wafer for spin down neutrons | 6.25 | +| W_down | AA-1 | Width of supermirror cut-off of the Fe/Si-wafer for spin down neutrons | 0.001 | +| mleft | 1 | m-value of material for left. vert. mirror of the outer guide | -1 | +| mright | 1 | m-value of material for right. vert. mirror of the outer guide | -1 | +| mtop | 1 | m-value of material for top. horz. mirror of the outer guide | -1 | +| mbottom | 1 | m-value of material for bottom. horz. mirror of the outer guide | -1 | +| mup | 1 | m-value of the Fe/Si-wafer for spin up neutrons | -1 | +| mdown | 1 | m-value of the Fe/Si-wafer for spin down neutrons | -1 | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/contrib/Transmission_polarisatorABSnT.comp) for `Transmission_polarisatorABSnT.comp`. + +--- + +*Generated on mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/contrib/Vertical_Bender.md b/mcstas-comps/contrib/Vertical_Bender.md new file mode 100644 index 000000000..2a71d8a98 --- /dev/null +++ b/mcstas-comps/contrib/Vertical_Bender.md @@ -0,0 +1,87 @@ +# The `Vertical_Bender` Component + +*McStas: Release: McStas 2.4 + +Multi-channel bender curving vertically down.* + +## Identification + +- **Site:** +- **Author:** Andrew Jackson, Richard Heenan +- **Origin:** ESS +- **Date:** August 2016, June 2017 + +## Description + +```text +Based on Pol_bender written by Peter Christiansen +Models a rectangular curved guide with entrance on Z axis. +Entrance is on the X-Y plane. Draws a correct depiction of +the guide with multiple channels - i.e. following components need to be +displaced. +Guide can contain multiple channels using horizontal blades +Reflectivity modeled using StdReflecFunc and {R0, Qc, alpha, m, W} can be set +for top (outside of curve), bottom (inside of curve) and sides +(both sides equal), blades reflectivities match top and bottom (each channel is +like a "mini guide"). +Neutrons are tracked, with gravity, inside the wall of a cylinder using distance +steps of diststep1. Upon crossing the inner or outer wall, the final step is +repeated using steps of diststep2, thus checking more +closely for the first crossing of either wall. If diststep1 is too +large than a "grazing incidence reflection" may be missed altogether. +If diststep1 is too small, then the code will run slower! +Exact intersection tmes with the flat sides and ends of the bender channel are calculated +first in order to limit the time spent tracking curved trajectories. +Turning gravity off will not make this run any faster, as the same method is used. + +28/06/2017 still need validation against other codes (e.g. for gravity off case) + +Example: +Vertical_Bender(xwidth = 0.05, yheight = 0.05, length = 3.0, +radius = 70.0, nslit = 5, d=0.0005, diststep1=0.020, diststep2=0.002, +rTopPar={0.99, 0.219, 6.07, 3.0, 0.003}, +rBottomPar={0.99, 0.219, 6.07, 2.0, 0.003}, +rSidesPar={0.99, 0.219, 6.07, 2.0, 0.003}, + +See example instrument Test_Vert_Bender + +%BUGS +Original code did not work with rotation about axes and gravity. +This tedious tracking method should work (28/6/17 still under test) for a vertical bender, with optional +rotation about x axis and gravity (and likely rotation about y axis but needs testing, +and even perhaps rotation about z axis as in rotated local frame Gx then is non zero but the edge solver still works). +Would also need test the drawing in trace mode). + +GRAVITY : Yes, when component is not rotated +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| rTopPar | vector | Parameters for reflectivity of bender top surface | {0.99, 0.219, 6.07, 0.0, 0.003} | +| rBottomPar | vector | Parameters for reflectivity of bender bottom surface | {0.99, 0.219, 6.07, 0.0, 0.003} | +| rSidesPar | vector | Parameters for reflectivity of bender sides surface | {0.99, 0.219, 6.07, 0.0, 0.003} | +| **xwidth** | m | Width at the guide entry | | +| **yheight** | m | Height at the guide entry | | +| **length** | m | length of guide along center | | +| **radius** | m | Radius of curvature of the guide (+:curve up/-:curve down) | | +| G | | | 9.8 | +| nchan | 1 | Number of channels | 1 | +| d | m | Width of spacers (subdividing absorbing walls) | 0.0 | +| debug | 1 | 0 to 10 for zero to maximum print out - reduce number of neutrons to run ! | 0 | +| endFlat | 1 | If endflat>0 then entrance and exit planes are parallel. | 0 | +| drawOption | | | 1 | +| alwaystrack | 1 | default 0, 1 to force tracking even when gravity is off | 0 | +| diststep1 | m | inital collision search steps for trajectory in cylinder when gravity is non zero | 0.020 | +| diststep2 | m | final steps for trajectory in cylinder | 0.002 | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/contrib/Vertical_Bender.comp) for `Vertical_Bender.comp`. + +--- + +*Generated on mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/contrib/Vertical_T0a.md b/mcstas-comps/contrib/Vertical_T0a.md new file mode 100644 index 000000000..d505ad4df --- /dev/null +++ b/mcstas-comps/contrib/Vertical_T0a.md @@ -0,0 +1,39 @@ +# The `Vertical_T0a` Component + +*McStas: Vertical T0-chopper as used in SNS_ARCS* + +## Identification + +- **Site:** +- **Author:** Garrett Granroth +- **Origin:** SNS Oak Ridge,TN +- **Date:** 2 NOV 2004 + +## Description + +```text +Vertical T0-chopper as used in SNS_ARCS +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| **len** | m | length of slot | | +| **w1** | m | center width | | +| **w2** | m | edgewidth | | +| **nu** | Hz | frequency | | +| **delta** | s | time from edge of chopper to center Phase angle | | +| **tc** | s | time when desired neutron is at the center of the chopper | | +| **ymin** | m | Lower y bound | | +| **ymax** | m | Upper y bound | | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/contrib/Vertical_T0a.comp) for `Vertical_T0a.comp`. + +--- + +*Generated on mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/contrib/ViewModISIS.md b/mcstas-comps/contrib/ViewModISIS.md new file mode 100644 index 000000000..898fc9c98 --- /dev/null +++ b/mcstas-comps/contrib/ViewModISIS.md @@ -0,0 +1,72 @@ +# The `ViewModISIS` Component + +*McStas: ISIS Moderators* + +## Identification + +- **Site:** +- **Author:** G. Skoro, based on ViewModerator4 from S. Ansell +- **Origin:** ISIS +- **Date:** February 2016 + +## Description + +```text +Produces a neutron distribution at the ISIS TS1 or TS2 beamline shutter front face (or corresponding moderator) position. +The Face argument determines which TS1 or TS2 beamline is to be sampled by using corresponding Etable file. +Neutrons are created having a range of energies determined by the E0 and E1 arguments. +Trajectories are produced such that they pass through the shutter front face (RECOMENDED) or moderator face (defined by +xw and yh) and a focusing rectangle (defined by focus_xw, focus_yh and dist). + +Example 1: ViewModISISver1(Face="TS1_S04_Merlin.mcstas", E0 = E_min, E1 = E_max, +dist = 1.7, focus_xw = 0.094, focus_yh = 0.094, modPosition=0, +xw=0.12,yh=0.12) + +MERLIN simulation. +modPosition=0 so initial surface is at (near to) the moderator face. +In this example, focus_xw and focus_yh are chosen to be identical to the shutter opening dimension. +dist = 1.7 is the 'real' distance to the shutter front face => This is TimeOffset value (=170 [cm]) +from TS1_S04_Merlin.mcstas file. + + +Example 2: ViewModISISver1(Face="Let_timeTest_155.mcstas", E0 = E_min, E1 = E_max, +modPosition=1, xw=0.196, yh = 0.12, focus_xw = 0.04, focus_yh = 0.094, dist = 0.5) + +LET simulation. +modPosition=1 so initial surface is at front face of shutter insert. + +(IMPORTANT) If modPosition=1, the xw and yh values are obsolete. The dimensions of +initial surface are automatically calculated using "RDUM" values in Let_timeTest_155.mcstas file. + +In this example, focus_xw and focus_yh are arbitrary chosen to be identical to the shutter opening dimension. + + + +N.B. Absolute normalization: The result of the Mc-Stas simulation will show neutron intensity for beam current of 1 uA. +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| Face | string | Etable filename | "TS1_S04_Merlin.mcstas" | +| **E0** | meV | Lower edge of energy distribution | | +| **E1** | meV | Upper edge of energy distribution | | +| modPosition | int | Defines the initial surface for neutron distribution production. Possible values = 0 (at moderator) or 1 (at shutter insert) | 0 | +| xwidth | m | Moderator width | 0.12 | +| yheight | | | 0.12 | +| focus_xw | m | Width of focusing rectangle | 0.094 | +| focus_yh | m | Height of focusing rectangle | 0.094 | +| dist | m | Distance from source surface to the focusing rectangle | 1.7 | +| verbose | int | Flag to output debugging information | 0 | +| beamcurrent | uA | ISIS beam current | 1 | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/contrib/ViewModISIS.comp) for `ViewModISIS.comp`. + +--- + +*Generated on mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/contrib/multi_pipe.md b/mcstas-comps/contrib/multi_pipe.md new file mode 100644 index 000000000..7cecaa6c2 --- /dev/null +++ b/mcstas-comps/contrib/multi_pipe.md @@ -0,0 +1,51 @@ +# The `multi_pipe` Component + +*McStas: multi-pipe circular slit.* + +## Identification + +- **Site:** +- **Author:** Uwe Filges +- **Origin:** PSI +- **Date:** March, 2005 + +## Description + +```text +No transmission around the slit is allowed. + +example for an input file +# user defined geometry +# x(i) y(i) r(i) [m] +0.02 0.03 0.01 +-0.04 0.015 0.005 + +warning: at least two values must be in the file + +Example: multi_pipe(xmin=-0.01, xmax=0.01, ymin=-0.01, ymax=0.01) +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| filename | str | define user table of holes | 0 | +| **xmin** | m | Lower x bound | | +| **xmax** | m | Upper x bound | | +| **ymin** | m | Lower y bound | | +| **ymax** | m | Upper y bound | | +| radius | | radius of a single hole | 0.0 | +| gap | m | distance between holes | 0.0 | +| thickness | m | thickness of the pipe | 0.0 | +| xwidth | m | Width of slit plate. Overrides xmin,xmax. | 0 | +| yheight | m | Height of slit plate. Overrides ymin,ymax. | 0 | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/contrib/multi_pipe.comp) for `multi_pipe.comp`. + +--- + +*Generated on mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/examples/BNL/BNL_H8/BNL_H8.md b/mcstas-comps/examples/BNL/BNL_H8/BNL_H8.md new file mode 100644 index 000000000..3bd98bd6f --- /dev/null +++ b/mcstas-comps/examples/BNL/BNL_H8/BNL_H8.md @@ -0,0 +1,38 @@ +# The `BNL_H8` Instrument + +*McStas: The former thermal H8 triple-axis spectrometer from Brookhaven reactor* + +## Identification + +- **Site:** BNL +- **Author:** Emmanuel Farhi +- **Origin:** ILL (France) +- **Date:** 1st Feb 2001. + +## Description + +```text +This instrument is a simple model of the thermal H8 triple-axis spectrometer +from former Brookhaven reactor. It is directly illuminated by the moderator, +and has flat monochromator and analyzer. Sample is a vanadium cylinder. +Such an instrument was used for the Monte Carlo neutron simulation package +cross comparison related in paper "A Model Instrument for Monte Carlo Code +Comparisons", Neutron News 13 (No. 4), 24-29 (2002). +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| lambda | Angs | source energy | 2.36 | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/examples/BNL/BNL_H8/BNL_H8.instr) for `BNL_H8.instr`. +- Neutron News 13 (No. 4), 24-29 (2002). + +--- + +*Generated for mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/examples/BNL/BNL_H8_simple/BNL_H8_simple.md b/mcstas-comps/examples/BNL/BNL_H8_simple/BNL_H8_simple.md new file mode 100644 index 000000000..3df619844 --- /dev/null +++ b/mcstas-comps/examples/BNL/BNL_H8_simple/BNL_H8_simple.md @@ -0,0 +1,38 @@ +# The `BNL_H8_simple` Instrument + +*McStas: The former thermal H8 triple-axis spectrometer from Brookhaven reactor* + +## Identification + +- **Site:** BNL +- **Author:** Emmanuel Farhi +- **Origin:** ILL (France) +- **Date:** 1st Feb 2001. + +## Description + +```text +This instrument is a simple model of the thermal H8 triple-axis spectrometer +from former Brookhaven reactor. It is directly illuminated by the moderator, +and has flat monochromator and analyzer. Sample is a vanadium cylinder. +Such an instrument was used for the Monte Carlo neutron simulation package +cross comparison related in paper "A Model Instrument for Monte Carlo Code +Comparisons", Neutron News 13 (No. 4), 24-29 (2002). +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| lambda | Angs | source energy | 2.36 | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/examples/BNL/BNL_H8_simple/BNL_H8_simple.instr) for `BNL_H8_simple.instr`. +- Neutron News 13 (No. 4), 24-29 (2002). + +--- + +*Generated for mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/examples/BNL/h8_test_legacy/h8_test_legacy.md b/mcstas-comps/examples/BNL/h8_test_legacy/h8_test_legacy.md new file mode 100644 index 000000000..125b45fb6 --- /dev/null +++ b/mcstas-comps/examples/BNL/h8_test_legacy/h8_test_legacy.md @@ -0,0 +1,44 @@ +# The `h8_test_legacy` Instrument + +*McStas: The former thermal H8 triple-axis spectrometer from Brookhaven reactor, 1.12c-comparable* + +## Identification + +- **Site:** BNL +- **Author:** Emmanuel Farhi +- **Origin:** ILL (France) +- **Date:** 1st Feb 2001. + +## Description + +```text +This instrument is a simple model of the thermal H8 triple-axis spectrometer +from former Brookhaven reactor. It is directly illuminated by the moderator, +and has flat monochromator and analyzer. Sample is a vanadium cylinder. +Such an instrument was used for the Monte Carlo neutron simulation package +cross comparison related in paper "A Model Instrument for Monte Carlo Code +Comparisons", Neutron News 13 (No. 4), 24-29 (2002). + +This version of the instrument does not use the SPLIT keyword and is comparable +to the version provided with McStas 1.12c. Has been added for benchmarking +purposes only. + +Example: mcrun h8_test_legacy.instr Lambda=2.36 +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| Lambda | Angs | source energy | 2.36 | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/examples/BNL/h8_test_legacy/h8_test_legacy.instr) for `h8_test_legacy.instr`. +- Neutron News 13 (No. 4), 24-29 (2002). + +--- + +*Generated for mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/examples/DTU/Test_FZP_simple/Test_FZP_simple.md b/mcstas-comps/examples/DTU/Test_FZP_simple/Test_FZP_simple.md new file mode 100644 index 000000000..d90cf19a1 --- /dev/null +++ b/mcstas-comps/examples/DTU/Test_FZP_simple/Test_FZP_simple.md @@ -0,0 +1,35 @@ +# The `Test_FZP_simple` Instrument + +*McStas: Simple test instrument for the FZP_simple component* + +## Identification + +- **Site:** DTU +- **Author:** Peter Willendrup (pkwi@fysik.dtu.dkl) +- **Origin:** DTU +- **Date:** March 2023 + +## Description + +```text +Simple test instrument for the FZP_simple component +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| lambda0 | AA | Centre of wavelength distribution | 10 | +| dlambda | AA | Width of wavelength distribution | 1e-1 | +| l1 | m | Distance source to FZP | 40 | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/examples/DTU/Test_FZP_simple/Test_FZP_simple.instr) for `Test_FZP_simple.instr`. +- + +--- + +*Generated for mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/examples/DTU/Vin_test/Vin_test.md b/mcstas-comps/examples/DTU/Vin_test/Vin_test.md new file mode 100644 index 000000000..a041b9412 --- /dev/null +++ b/mcstas-comps/examples/DTU/Vin_test/Vin_test.md @@ -0,0 +1,33 @@ +# The `Vin_test` Instrument + +*McStas: Simple test instrument for the Virtual_input component* + +## Identification + +- **Site:** DTU +- **Author:** Peter Willendrup (pkwi@fysik.dtu.dk) +- **Origin:** DTU Physics +- **Date:** September 2014 + +## Description + +```text +Simple test instrument for the Virtual_input component +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| Vinfile | string | Filename for Virtual_output-created event file | "Vout_text.dat" | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/examples/DTU/Vin_test/Vin_test.instr) for `Vin_test.instr`. +- A reference/HTML link for more information + +--- + +*Generated for mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/examples/DTU/Vout_test/Vout_test.md b/mcstas-comps/examples/DTU/Vout_test/Vout_test.md new file mode 100644 index 000000000..aaeb85575 --- /dev/null +++ b/mcstas-comps/examples/DTU/Vout_test/Vout_test.md @@ -0,0 +1,33 @@ +# The `Vout_test` Instrument + +*McStas: Simple test instrument for the Virtual_output component* + +## Identification + +- **Site:** DTU +- **Author:** Peter Willendrup (pkwi@fysik.dtu.dk) +- **Origin:** DTU Physics +- **Date:** September 2014 + +## Description + +```text +Simple test instrument for the Virtual_output component +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| Voutfile | string | Output filename for vout file | "Vout_text.dat" | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/examples/DTU/Vout_test/Vout_test.instr) for `Vout_test.instr`. +- A reference/HTML link for more information + +--- + +*Generated for mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/examples/ESS/ESS_BEER_MCPL/ESS_BEER_MCPL.md b/mcstas-comps/examples/ESS/ESS_BEER_MCPL/ESS_BEER_MCPL.md new file mode 100644 index 000000000..5f2e3aa6e --- /dev/null +++ b/mcstas-comps/examples/ESS/ESS_BEER_MCPL/ESS_BEER_MCPL.md @@ -0,0 +1,82 @@ +# The `ESS_BEER_MCPL` Instrument + +*McStas: Version: 1.1, 27/11/2018 +ToF Diffractometer BEER@ESS with MCPL input at the sample slit.* + +## Identification + +- **Site:** ESS +- **Author:** Jan Saroun, saroun@ujf.cas.cz +- **Origin:** NPI Rez +- **Date:** June 2017 + +## Description + +```text +Secondary part of the ToF diffractometer BEER@ESS. It takes MCPL file at the input as the source +of primary beam in front of the sample. +Results: +1) xy, divergence, lambda and ToF_lambda plots of the primary beam (monitors the MCPL content) +2) projections of the sampling volume defined by the primary slit and secondary radial collimator +3) Intensity vs. dhkl plot, using NPI_tof_dhkl_detector.comp +4) 2D plot (ToF,2theta), using NPI_tof_theta_monitor + +Modulation mode: +If modul=1, a modulation mode of BEER is assumed: the primary beam is modulated by a chopper placed close to the source. +(set the lc distance appropriately). The NPI_tof_dhkl_detector.comp then performs data reduction in event mode, using +the given modulation parameters: lam0, mod_frq, mod_twidth and a table with primary dhkl estimates (dhkl.dat should be +in the current directory). As a result, the diffractogram with recombined peaks is produced, together with a 2D map +of estimated valid, empty and overlap regions on the ToF-2theta diagram. + +If module=0, modulation parameters are ignored and the NPI_tof_dhkl_detector.comp performs a standard event based +data reduction producing a diffractogram on the basis of given nominal values of lam0 and distances. + +(See NPI_tof_dhkl_detector.comp for more details) + +NOTE: some instrument parameters are hard coded and have to be edited in the INITIALIZE and RUN sections. + +To use, please copy the relevant mcpl files from your $MCSTAS/data folder to the curring working folder + +Example 1: +Simulation in medium resolution mode with pulse shaping choppers, wavelength range centred at 2 AA - use: +ESS_BEER_MCPL input=BEER_MR.mcpl repetition=50 pwdfile=duplex.laz lc=6.65 lam0=2 dlam=1.8 omega=45 chi=90 colw=1 modul=0 mod_frq=2240 mod_twidth=0.0029 mod_shift=0 only_event=-1 pinc=0.1 ptra=0 strain=0 ustrain=0 +Detector: psdtof_I=276.842 + +Example 2: +Simulation in the modulation mode, using the modulation chopper MCB with 8 slits (4 deg wide) rotating at 280 Hz. Wavelength range centred at 2 AA - use: +ESS_BEER_MCPL input=BEER_MCB.mcpl repetition=50 pwdfile=duplex.laz lc=9.35 lam0=2 dlam=1.8 omega=45 chi=90 colw=1 modul=1 mod_frq=2240 mod_twidth=0.0029 mod_shift=0 only_event=-1 pinc=0.1 ptra=0 strain=0 ustrain=0 +Detector: psdtof_I=98.3885 +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| input | str | Input MCPL file | "BEER_MR.mcpl" | +| repetition | 1 | Number of loops through the MCPL file | 50 | +| pwdfile | str | Input sample file for PowderN.comp | "duplex.laz" | +| lc | m | distance of the pulse definition chopper | 6.65 | +| lam0 | AA | nominal wavelength (centre of the frame, determines the chopper phase) | 2.0 | +| dlam | AA | wavelength band width (only for filtering MCPL input and plot ranges) | 1.8 | +| omega | deg | sample orientation (y-axis) | 45 | +| chi | deg | sample orientation (z-axis) | 90 | +| colw | mm | collimator width (0.5, 1, 2, 3 or 4) | 1 | +| modul | 0\|1 | modulation mode switch | 0 | +| mod_frq | Hz | modulation frequency (chopper frequency x number of slits) | 2240 | +| mod_twidth | s | modulation frame width (should be ~> ESS pulse width) | 0.0029 | +| mod_shift | | assumed line shift introduced to NPI_tof_dhkl_detector (modulation mode only) | 0 | +| only_event | 1 | if > -1, filters out events with line_info.itype<>only_event after PowderN sample | -1 | +| pinc | | pinc value passed to PowderN.comp | 0.1 | +| ptra | | p_transmit value passed to PowderN.comp | 0.0 | +| strain | ppm | Macro-strain (peak shift) | 0 | +| ustrain | ppm | Micro-strain (peak broadening) | 0 | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/examples/ESS/ESS_BEER_MCPL/ESS_BEER_MCPL.instr) for `ESS_BEER_MCPL.instr`. + +--- + +*Generated for mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/examples/ESS/ESS_IN5_reprate/ESS_IN5_reprate.md b/mcstas-comps/examples/ESS/ESS_IN5_reprate/ESS_IN5_reprate.md new file mode 100644 index 000000000..2f2bda775 --- /dev/null +++ b/mcstas-comps/examples/ESS/ESS_IN5_reprate/ESS_IN5_reprate.md @@ -0,0 +1,80 @@ +# The `ESS_IN5_reprate` Instrument + +*McStas: An IN5 type (cold chopper) multi-frame spectrometer at ESS LPTS* + +## Identification + +- **Site:** ESS +- **Author:** Kim Lefmann (kim.lefmann@risoe.dk), Helmuth Schober, Feri Mezei +- **Origin:** ESS +- **Date:** September 20, 2006 + +## Description + +```text +McStas instrument for simulating IN5-TYPE (cold chopper) multi-frame spectrometer at ESS LPTS. +The sample is incoherent with an inelastic tunneling line. +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| Lmin | AA | Minimum wavelength emitted by the moderator | 4.9 | +| Lmax | AA | Maximum wavelength emitted by the moderator | 5.1 | +| lambda0 | AA | Target wavelength for the monochromating crystal | 5 | +| Pulse_width | s | Length of the long pulse. Default to 2 ms. | 2.857e-3 | +| Num_pulses | 1 | Number of pulses to simulate. Default 1. | 1 | +| GUI_start | m | Distance from moderator to guide start | 2.0 | +| FO1_DIST | m | Distance from moderator to FO1 chopper | 6 | +| L_ballistic_begin | m | Length of expanding ballistic section in the beginning of the guide | 19.5 | +| L_ballistic_end | m | Length of compressing ballistic section in the end of the guide | 17 | +| Length | m | Total length of spectrometer (moderator to F2) | 100 | +| SAMPLE_DIST | m | Distance from F2 to sample | 1.2 | +| DETECTOR_DIST | m | Length sample-detector | 4 | +| GUI_h | m | Height of guide opening at entry | 0.105 | +| GUI_w | m | Width of guide opening at entry | 0.1 | +| GUI_GAP | m | Gap between guides due to chopper hardware | 0.05 | +| H1 | m | Height of guide elements | 0.167 | +| W1 | m | Width of guide elements | 0.116 | +| H2 | m | Height of guide elements | 0.185 | +| W2 | m | Width of guide elements | 0.15 | +| H3 | m | Height of guide elements | 0.19 | +| W3 | m | Width of guide elements | 0.15 | +| H4 | m | Height of guide elements | 0.213 | +| W4 | m | Width of guide elements | 0.14 | +| H_chop | m | Height at F2 chopper position | 0.075 | +| W_chop | m | Width at F2 chopper position | 0.03 | +| H_end | m | Height of guide opening at exit | 0.042 | +| W_end | m | Width of guide opening at exit | 0.0215 | +| ALPHA | m | Parameter for supermirrors in guides, Swiss Neutronics best at 3.4 | 3.4 | +| M | 1 | Parameter for supermirrors in guides, Swiss Neutronics best at 4 | 3.5 | +| F_slow1 | Hz | Frequency of the FO1 chopper | 16.6667 | +| F_slow2 | Hz | Frequency of the FO2 chopper | 0 | +| F_fast1 | Hz | Frequency of the F1 chopper | 0 | +| F_fast2 | Hz | Frequency of the F2 chopper | 200 | +| N_fast | 1 | Number of symmetric openings in the fast F choppers | 1 | +| SLOW1_THETA | deg | Opening angle of the FO1 chopper | 120 | +| FO3 | 1 | Inverse frequency of FO3 chopper (if 1, same as F2; if 2, half of F2, etc.) | 1 | +| THETA_fast1 | deg | Opening angle of the F1 chopper | 180 | +| FAST_THETA | deg | Opening angle of the F2 chopper | 5 | +| Gamma | meV | Width of sample quasielastic scattering (0=elastic) | 0 | +| Etun | meV | Tunneling energy | 1 | +| V_HOLE | m | Radius of hole in V sample (must be smaller than the outer radius: 0.01) | 0 | +| FRAC_QUASIEL | 1 | Fraction of the sample that scatters quasielastically | 0 | +| FRAC_TUNNEL | | Fraction of the sample that scatters on the tunneling peaks | 0 | +| TT | deg | 2Theta (or a4) scattering angle | 50 | +| RES_DE | meV | Adjustable zoom for energy monitor at detector position | 0.5 | +| cold | | Fraction of neutrons emitted from the cold moderatorx | 0.95 | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/examples/ESS/ESS_IN5_reprate/ESS_IN5_reprate.instr) for `ESS_IN5_reprate.instr`. +- The ESS-Rencurel website. +- The IN5@ILL Yellow Pages + +--- + +*Generated for mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/examples/ESS/ESS_Testbeamline_HZB_V20/ESS_Testbeamline_HZB_V20.md b/mcstas-comps/examples/ESS/ESS_Testbeamline_HZB_V20/ESS_Testbeamline_HZB_V20.md new file mode 100644 index 000000000..3e9eac501 --- /dev/null +++ b/mcstas-comps/examples/ESS/ESS_Testbeamline_HZB_V20/ESS_Testbeamline_HZB_V20.md @@ -0,0 +1,59 @@ +# The `ESS_Testbeamline_HZB_V20` Instrument + +*McStas: McStas model of the ESS testbeamline V20 at HZB in Berlin* + +## Identification + +- **Site:** ESS +- **Author:** Ala'a Al-Falahat +- **Origin:** HZB +- **Date:** March 17, 2017 + +## Description + +```text +McStas model of the ESS testbeamline V20 at HZB in Berlin. Please note that not +all geometrical sizes, distances and parameters have been fully validated. +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| lambda_min | AA | Minimum wavelength emitted by the source | 1 | +| lambda_max | AA | Maximum wavelength emitted by the source | 15 | +| frequency | Hz | Frequency of the choppers | 14 | +| Choppers_WFM1_in | 1 | Flag to indicate if WFM1 is active | 1 | +| Choppers_WFM2_in | 1 | Flag to indicate if WFM2 is active | 1 | +| Choppers_FOC1_in | 1 | Flag to indicate if FOC1 is active | 1 | +| Choppers_FOC2_in | 1 | Flag to indicate if FOC2 is active | 1 | +| s1_x | m | slit 1 width | 0.05 | +| s1_y | m | slit 1 height | 0.1 | +| s2_x | m | slit 2 width | 0.02 | +| s2_y | m | slit 2 height | 0.04 | +| s3_x | m | slit 3 width | 0.0138 | +| s3_y | m | slit 3 height | 0.033 | +| Offset_deg_SC1 | deg | Phase source chopper disk 1 | 0 | +| Offset_deg_SC2 | deg | Phase source chopper disk 2 | 0 | +| Offset_deg_BC1 | deg | Phase bandwidth chopper disk 1 | -25 | +| Offset_deg_BC2 | deg | Phase bandwidth chopper disk 2 | 57 | +| Offset_deg_WFM1 | deg | Phase wavelength frame multiplication chopper disk 1 | 47.1 | +| Offset_deg_WFM2 | deg | Phase wavelength frame multiplication chopper disk 2 | 76.76 | +| Offset_deg_FOC1 | deg | Phase frame overlap chopper disk 1 | 62.4 | +| Offset_deg_FOC2 | deg | Phase frame overlap chopper disk 2 | 12.27 | +| Z | m | Distance between Wavelength frame multiplication chopper disks 0.1 - 0.5 | 0.28 | +| sp | m | sample position | 50.6 | +| npulses | 1 | Number of pulses to simulate | 1 | +| emulate_reactor_emmision | 1 | Flag to emulate all emission times from the reactor | 0 | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/examples/ESS/ESS_Testbeamline_HZB_V20/ESS_Testbeamline_HZB_V20.instr) for `ESS_Testbeamline_HZB_V20.instr`. +- V20 page at the HZB website +- V20 info section at the ESS website + +--- + +*Generated for mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/examples/ESS/ESS_butterfly_Guide_curved_test/ESS_butterfly_Guide_curved_test.md b/mcstas-comps/examples/ESS/ESS_butterfly_Guide_curved_test/ESS_butterfly_Guide_curved_test.md new file mode 100644 index 000000000..5a1f4549e --- /dev/null +++ b/mcstas-comps/examples/ESS/ESS_butterfly_Guide_curved_test/ESS_butterfly_Guide_curved_test.md @@ -0,0 +1,52 @@ +# The `ESS_butterfly_Guide_curved_test` Instrument + +*McStas: Test instrument for the updated BF1 butterfly moderator design* + +## Identification + +- **Site:** ESS +- **Author:** Peter Willendrup +- **Origin:** ESS +- **Date:** 2016-09-26 + +## Description + +```text +Test instrument for the updated BF1 butterfly moderator design. + +The below example gives a 50-50 (statistics-wise) cold/thermal beam at beamline N10. +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| sector | str | Defines the 'sector' of your instrument position. Valid values are "N","S","E" and "W" | "N" | +| beamline | 1 | Defines the 'beamline number' of your instrument position. Valid values are 1..10 or 1..11 depending on sector | 1 | +| Lmin | AA | Minimum wavelength simulated | 0.2 | +| Lmax | AA | Maximum wavelength simulated | 20 | +| c_performance | 1 | Cold brilliance scalar performance multiplicator c_performance > 0 | 1 | +| t_performance | 1 | Thermal brilliance scalar performance multiplicator t_performance > 0 | 1 | +| index | 1 | Target index for source focusing. Defaults to illuminate the "cold collimated" brilliance monitor, thereby suppressing "dist" | 25 | +| dist | m | Distance from origin to focusing rectangle; at (0,0,dist) - alternatively use target_index | 0 | +| cold | 1 | Defines the statistical fraction of events emitted from the cold part of the moderator | 1 | +| Yheight | m | Defines the moderator height. Valid values are 0.03 m and 0.06 m | 0.03 | +| delta | m | Parameter that allows to scan "collimator" position | 0 | +| thres | | Weight-threshold, neutrons with higher weight are absorbed | 0.003 | +| repeat | | Number of MCPL file repetitions | 1 | +| v_smear | 1 | When repeating events, make a Gaussian MC choice within v_smear*V around particle velocity V | 0.1 | +| pos_smear | m | When repeating events, make a flat MC choice of position within pos_smear around particle starting position | 0.01 | +| dir_smear | deg | When repeating events, make a Gaussian MC choice of direction within dir_smear around particle direction | 0.01 | +| n_pulses | 1 | Number of pulses to simulate | 1 | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/examples/ESS/ESS_butterfly_Guide_curved_test/ESS_butterfly_Guide_curved_test.instr) for `ESS_butterfly_Guide_curved_test.instr`. +- +- Benchmarking website available at http://ess_butterfly.mcstas.org + +--- + +*Generated for mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/examples/ESS/ESS_butterfly_MCPL_test/ESS_butterfly_MCPL_test.md b/mcstas-comps/examples/ESS/ESS_butterfly_MCPL_test/ESS_butterfly_MCPL_test.md new file mode 100644 index 000000000..aafb0eed6 --- /dev/null +++ b/mcstas-comps/examples/ESS/ESS_butterfly_MCPL_test/ESS_butterfly_MCPL_test.md @@ -0,0 +1,55 @@ +# The `ESS_butterfly_MCPL_test` Instrument + +*McStas: Test instrument for the updated BF1 butterfly moderator design using MCPL input* + +## Identification + +- **Site:** ESS +- **Author:** Peter Willendrup +- **Origin:** ESS +- **Date:** 2016-09-26 + +## Description + +```text +Test instrument for the updated BF1 butterfly moderator design using MCPL input files. + +The below example gives a 50-50 (statistics-wise) cold/thermal beam at beamline N10. +Example: sector=N beamline=10 cold=0.5 + +Assumes access to binary MCPL datasets in . named [sector][beamline].mcpl.gz, i.e. W8.mcpl.gz. +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| sector | str | Defines the 'sector' of your instrument position. Valid values are "N","S","E" and "W" | "N" | +| beamline | 1 | Defines the 'beamline number' of your instrument position. Valid values are 1..10 or 1..11 depending on sector | 1 | +| Lmin | AA | Minimum wavelength simulated | 0.2 | +| Lmax | AA | Maximum wavelength simulated | 20 | +| c_performance | 1 | Cold brilliance scalar performance multiplicator c_performance > 0 | 1 | +| t_performance | 1 | Thermal brilliance scalar performance multiplicator t_performance > 0 | 1 | +| index | 1 | Target index for source focusing. Defaults to illuminate the "cold collimated" brilliance monitor, thereby suppressing "dist" | 8 | +| dist | m | Distance from origin to focusing rectangle; at (0,0,dist) - alternatively use target_index | 0 | +| cold | 1 | Defines the statistical fraction of events emitted from the cold part of the moderator | 1 | +| Yheight | m | Defines the moderator height. Valid values are 0.03 m and 0.06 m | 0.03 | +| delta | m | Parameter that allows to scan "collimator" position | 0 | +| thres | | Weight-threshold, neutrons with higher weight are absorbed | 0.003 | +| filter | | | 0 | +| repeat | | Number of MCPL file repetitions | 1 | +| v_smear | 1 | When repeating events, make a Gaussian MC choice within v_smear*V around particle velocity V | 0.1 | +| pos_smear | m | When repeating events, make a flat MC choice of position within pos_smear around particle starting position | 0.01 | +| dir_smear | deg | When repeating events, make a Gaussian MC choice of direction within dir_smear around particle direction | 0.01 | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/examples/ESS/ESS_butterfly_MCPL_test/ESS_butterfly_MCPL_test.instr) for `ESS_butterfly_MCPL_test.instr`. +- +- Benchmarking website available at http://ess_butterfly.mcstas.org + +--- + +*Generated for mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/examples/ESS/ESS_butterfly_test/ESS_butterfly_test.md b/mcstas-comps/examples/ESS/ESS_butterfly_test/ESS_butterfly_test.md new file mode 100644 index 000000000..af90be557 --- /dev/null +++ b/mcstas-comps/examples/ESS/ESS_butterfly_test/ESS_butterfly_test.md @@ -0,0 +1,46 @@ +# The `ESS_butterfly_test` Instrument + +*McStas: Test instrument for the updated BF1 butterfly moderator design* + +## Identification + +- **Site:** ESS +- **Author:** Peter Willendrup +- **Origin:** ESS +- **Date:** 2016-08-24 + +## Description + +```text +Test instrument for the updated BF1 butterfly moderator design. + +The below example gives a 50-50 (statistics-wise) cold/thermal beam at beamline N10. +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| sector | str | Defines the 'sector' of your instrument position. Valid values are "N","S","E" and "W" | "N" | +| beamline | 1 | Defines the 'beamline number' of your instrument position. Valid values are 1..10 or 1..11 depending on sector | 1 | +| Lmin | AA | Minimum wavelength simulated | 0.2 | +| Lmax | AA | Maximum wavelength simulated | 20 | +| c_performance | 1 | Cold brilliance scalar performance multiplicator c_performance > 0 | 1 | +| t_performance | 1 | Thermal brilliance scalar performance multiplicator t_performance > 0 | 1 | +| index | 1 | Target index for source focusing. Defaults to illuminate the "cold collimated" brilliance monitor, thereby suppressing "dist" | 16 | +| dist | m | Distance from origin to focusing rectangle; at (0,0,dist) - alternatively use target_index | 0 | +| cold | 1 | Defines the statistical fraction of events emitted from the cold part of the moderator | 0.5 | +| Yheight | m | Defines the moderator height. Valid values are 0.03 m and 0.06 m | 0.03 | +| delta | m | Parameter that allows to scan "collimator" position | 0 | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/examples/ESS/ESS_butterfly_test/ESS_butterfly_test.instr) for `ESS_butterfly_test.instr`. +- +- Benchmarking website available at http://ess_butterfly.mcstas.org + +--- + +*Generated for mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/examples/ESS/ESS_butterfly_tfocus_NOFOCUS_test/ESS_butterfly_tfocus_NOFOCUS_test.md b/mcstas-comps/examples/ESS/ESS_butterfly_tfocus_NOFOCUS_test/ESS_butterfly_tfocus_NOFOCUS_test.md new file mode 100644 index 000000000..56a2f8a8c --- /dev/null +++ b/mcstas-comps/examples/ESS/ESS_butterfly_tfocus_NOFOCUS_test/ESS_butterfly_tfocus_NOFOCUS_test.md @@ -0,0 +1,49 @@ +# The `ESS_butterfly_tfocus_NOFOCUS_test` Instrument + +*McStas: Test instrument for the updated BF1 butterfly moderator design* + +## Identification + +- **Site:** ESS +- **Author:** Peter Willendrup +- **Origin:** ESS +- **Date:** 2016-08-24 + +## Description + +```text +Test instrument for the updated BF1 butterfly moderator design. + +The below example gives a 50-50 (statistics-wise) cold/thermal beam at beamline N10. +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| sector | str | Defines the 'sector' of your instrument position. Valid values are "N","S","E" and "W" | "N" | +| beamline | 1 | Defines the 'beamline number' of your instrument position. Valid values are 1..10 or 1..11 depending on sector | 1 | +| Lmin | AA | Minimum wavelength simulated | 0.2 | +| Lmax | AA | Maximum wavelength simulated | 20 | +| c_performance | 1 | Cold brilliance scalar performance multiplicator c_performance > 0 | 1 | +| t_performance | 1 | Thermal brilliance scalar performance multiplicator t_performance > 0 | 1 | +| index | 1 | Target index for source focusing. Defaults to illuminate the "cold collimated" brilliance monitor, thereby suppressing "dist" | 0 | +| dist | m | Distance from origin to focusing rectangle; at (0,0,dist) - alternatively use target_index | 100 | +| cold | 1 | Defines the statistical fraction of events emitted from the cold part of the moderator | 0.5 | +| Yheight | m | Defines the moderator height. Valid values are 0.03 m and 0.06 m | 0.03 | +| delta | m | Parameter that allows to scan "collimator" position | 0 | +| tfocus_dist | | | 10 | +| tfocus_time | | | 0.01 | +| tfocus_width | | | 0.001 | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/examples/ESS/ESS_butterfly_tfocus_NOFOCUS_test/ESS_butterfly_tfocus_NOFOCUS_test.instr) for `ESS_butterfly_tfocus_NOFOCUS_test.instr`. +- +- Benchmarking website available at http://ess_butterfly.mcstas.org + +--- + +*Generated for mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/examples/ESS/ESS_butterfly_tfocus_test/ESS_butterfly_tfocus_test.md b/mcstas-comps/examples/ESS/ESS_butterfly_tfocus_test/ESS_butterfly_tfocus_test.md new file mode 100644 index 000000000..130d2d07d --- /dev/null +++ b/mcstas-comps/examples/ESS/ESS_butterfly_tfocus_test/ESS_butterfly_tfocus_test.md @@ -0,0 +1,49 @@ +# The `ESS_butterfly_tfocus_test` Instrument + +*McStas: Test instrument for the updated BF1 butterfly moderator design* + +## Identification + +- **Site:** ESS +- **Author:** Peter Willendrup +- **Origin:** ESS +- **Date:** 2016-08-24 + +## Description + +```text +Test instrument for the updated BF1 butterfly moderator design. + +The below example gives a 50-50 (statistics-wise) cold/thermal beam at beamline N10. +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| sector | str | Defines the 'sector' of your instrument position. Valid values are "N","S","E" and "W" | "N" | +| beamline | 1 | Defines the 'beamline number' of your instrument position. Valid values are 1..10 or 1..11 depending on sector | 1 | +| Lmin | AA | Minimum wavelength simulated | 0.2 | +| Lmax | AA | Maximum wavelength simulated | 20 | +| c_performance | 1 | Cold brilliance scalar performance multiplicator c_performance > 0 | 1 | +| t_performance | 1 | Thermal brilliance scalar performance multiplicator t_performance > 0 | 1 | +| index | 1 | Target index for source focusing. Defaults to illuminate the "cold collimated" brilliance monitor, thereby suppressing "dist" | 0 | +| dist | m | Distance from origin to focusing rectangle; at (0,0,dist) - alternatively use target_index | 100 | +| cold | 1 | Defines the statistical fraction of events emitted from the cold part of the moderator | 0.5 | +| Yheight | m | Defines the moderator height. Valid values are 0.03 m and 0.06 m | 0.03 | +| delta | m | Parameter that allows to scan "collimator" position | 0 | +| tfocus_dist | | | 10 | +| tfocus_time | | | 0.01 | +| tfocus_width | | | 0.001 | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/examples/ESS/ESS_butterfly_tfocus_test/ESS_butterfly_tfocus_test.instr) for `ESS_butterfly_tfocus_test.instr`. +- +- Benchmarking website available at http://ess_butterfly.mcstas.org + +--- + +*Generated for mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/examples/ESS/ESS_mcpl2hist/ESS_mcpl2hist.md b/mcstas-comps/examples/ESS/ESS_mcpl2hist/ESS_mcpl2hist.md new file mode 100644 index 000000000..c5a2277cb --- /dev/null +++ b/mcstas-comps/examples/ESS/ESS_mcpl2hist/ESS_mcpl2hist.md @@ -0,0 +1,41 @@ +# The `ESS_mcpl2hist` Instrument + +*McStas: Utility instrument that generates a set of histograms from an MCPL input file* + +## Identification + +- **Site:** ESS +- **Author:** Peter Willendrup +- **Origin:** ESS +- **Date:** 2016-12-02 + +## Description + +```text +Utility instrument that generates a set of histograms from an MCPL input file. + +Generates energy, wavelength, position, veloicty and time histograms via Monitor_nD. + +Assumes access to binary MCPL datasets in . named [sector][beamline].mcpl.gz, i.e. W8.mcpl.gz. +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| sector | str | Defines the 'sector' of your instrument position. Valid values are "N","S","E" and "W" | "N" | +| beamline | 1 | Defines the 'beamline number' of your instrument position. Valid values are 1..10 or 1..11 depending on sector | 1 | +| filter | 1 | Flag to define if the filtered or nonfiltered version of the MCPL file should be used. | 0 | +| thres | 1 | Weight threshold above which neutrons are absorbed | 0.003 | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/examples/ESS/ESS_mcpl2hist/ESS_mcpl2hist.instr) for `ESS_mcpl2hist.instr`. +- +- Benchmarking website available at http://ess_butterfly.mcstas.org + +--- + +*Generated for mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/examples/FZ_Juelich/FZJ_BenchmarkSfin2/FZJ_BenchmarkSfin2.md b/mcstas-comps/examples/FZ_Juelich/FZJ_BenchmarkSfin2/FZJ_BenchmarkSfin2.md new file mode 100644 index 000000000..2a74aeb40 --- /dev/null +++ b/mcstas-comps/examples/FZ_Juelich/FZJ_BenchmarkSfin2/FZJ_BenchmarkSfin2.md @@ -0,0 +1,54 @@ +# The `FZJ_BenchmarkSfin2` Instrument + +*McStas: Test instrument for the H Frielinghaus SANS_benchmark2 component. + +The below test uses defaults of the instrument (SANS_benchmark2 modnum=11)* + +## Identification + +- **Site:** FZ_Juelich +- **Author:** Henrich Frielinghaus +- **Origin:** FZ Juelich +- **Date:** 2013 + +## Description + +```text + +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| lbdmin | | | 2.00 | +| lbdmax | | | 8.5 | +| NGbend | | | 0.053 | +| NGblen | | | 0.03 | +| Clen | | | 8.0 | +| SampD | | | 0.01 | +| bendL | | | 5.0 | +| bendR | | | 385.0 | +| bendM | | | 7.0 | +| bendiM | | | 7.0 | +| dfltM | | | 1.5 | +| vorPl | | for two cavities | 0.5 | +| PolLen | | for two cavities | 0.492 | +| PolTot | | for two cavities | 2.30 | +| MDOWN | | | 3.6 | +| Min | | | 1.5 | +| cnum | | Set to 0.0 for no polarizer as for benchmarking the normal SANS samples, to 2.0 for two cavities, keep default values as much as possible | 0.00 | +| ROT | | | 0.0 | +| modnum | | | 11.0 | +| sglscatt | | | 1.0 | +| incs | | | 0.0005 | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/examples/FZ_Juelich/FZJ_BenchmarkSfin2/FZJ_BenchmarkSfin2.instr) for `FZJ_BenchmarkSfin2.instr`. + +--- + +*Generated for mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/examples/FZ_Juelich/FZJ_KWS2_Lens/FZJ_KWS2_Lens.md b/mcstas-comps/examples/FZ_Juelich/FZJ_KWS2_Lens/FZJ_KWS2_Lens.md new file mode 100644 index 000000000..0960cb8eb --- /dev/null +++ b/mcstas-comps/examples/FZ_Juelich/FZJ_KWS2_Lens/FZJ_KWS2_Lens.md @@ -0,0 +1,42 @@ +# The `FZJ_KWS2_Lens` Instrument + +*McStas: FZ Juelich KWS2 SANS, serving as test instrument for the Lens_simple component.* + +## Identification + +- **Site:** FZ_Juelich +- **Author:** Henrich Frielinghaus +- **Origin:** FZ Juelich +- **Date:** June 2010 + +## Description + +```text +This instrument is a test instrument for the Lens_simple component. + +Notice effect of gravitation on the final beam. +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| lambda | AA | Mean wavelength of neutrons | 20.15 | +| dlambda | AA | Wavelength spread of neutrons (fwhm) | 2.015 | +| FLUX | 1 | Source flux normalization constant | 1e8 | +| NGblen | 1 | Defining source radius (is \sqrt(2)*NGblen) | 0.03 | +| Cblen | m | Dimension of rectangular guide | 0.005 | +| Clen | m | Distance source-guide | 20.0 | +| Dlen | m | Placement of final detector | 20.0 | +| Rlense | m | Radius of lens | 0.025 | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/examples/FZ_Juelich/FZJ_KWS2_Lens/FZJ_KWS2_Lens.instr) for `FZJ_KWS2_Lens.instr`. +- The Lens_simple component + +--- + +*Generated for mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/examples/FZ_Juelich/FZJ_SANS_KWS2_AnySample/FZJ_SANS_KWS2_AnySample.md b/mcstas-comps/examples/FZ_Juelich/FZJ_SANS_KWS2_AnySample/FZJ_SANS_KWS2_AnySample.md new file mode 100644 index 000000000..471a37cf5 --- /dev/null +++ b/mcstas-comps/examples/FZ_Juelich/FZJ_SANS_KWS2_AnySample/FZJ_SANS_KWS2_AnySample.md @@ -0,0 +1,39 @@ +# The `SANS_KWS2_AnySample` Instrument + +*McStas: KWS2 SANS instrument at FZ-Juelich. 2 detectors. 4 available sample models.* + +## Identification + +- **Site:** FZ_Juelich +- **Author:** Henrich Frielinghaus +- **Origin:** FZ-Juelich/FRJ-2/IFF/KWS-2 +- **Date:** Sept 2004 + +## Description + +```text +KWS2 SANS instrument at FZ-Juelich. Custom sample (None, Guinier, Debye or Any). +Sample is at 40 m from source. 2 detectors. +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| lambda | AA | Mean wavelength of neutrons | 7.0 | +| dlambda | AA | Wavelength spread of neutrons | 0.7 | +| FLUX | n/s/cm2/st | incoming neutron flux | 1e8 | +| NGblen | m | collimation width/height | 0.05 | +| sample | int | type of sample, as 0=None, 1='AnySample', 2='Debye' or 3='Guinier' | 0 | +| Clen | m | distance to collimation in 0-20. Sample is at 40 m from source | 10.0 | +| Dlen | m | distance from sample to detector | 10.0 | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/examples/FZ_Juelich/FZJ_SANS_KWS2_AnySample/FZJ_SANS_KWS2_AnySample.instr) for `FZJ_SANS_KWS2_AnySample.instr`. + +--- + +*Generated for mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/examples/HZB/HZB_FLEX/HZB_FLEX.md b/mcstas-comps/examples/HZB/HZB_FLEX/HZB_FLEX.md new file mode 100644 index 000000000..b355cbc13 --- /dev/null +++ b/mcstas-comps/examples/HZB/HZB_FLEX/HZB_FLEX.md @@ -0,0 +1,41 @@ +# The `HZB_FLEX` Instrument + +*McStas: Primary and secondary spectrometer for the FLEX upgrade* + +## Identification + +- **Site:** HZB +- **Author:** M. Skoulatos and K. Habicht, port to McStas 2.0 by Mathias Kure KU +- **Origin:** Helmholtz-Zentrum Berlin +- **Date:** 26 October 2010 + +## Description + +```text + +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| kI | inv AA | incident wavevector | 1.55 | +| kF | inv AA | outgoing wavevector | 1.55 | +| wVS | m | Width of virtual source slit | 0.03 | +| tilt | deg | Tilt angle for velocity selector | 0 | +| SA | 1 | Analyzer scattering sense | -1 | +| A3 | deg | Sample omega angle | 0 | +| A4 | deg | Sample 2-theta angle | 70 | +| L3 | m | | 1.00 | +| L4 | m | | 1.00 | +| Mono_flatswitch | 1 | Flag for flat or curved monochromator | 0 | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/examples/HZB/HZB_FLEX/HZB_FLEX.instr) for `HZB_FLEX.instr`. + +--- + +*Generated for mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/examples/HZB/HZB_NEAT/HZB_NEAT.md b/mcstas-comps/examples/HZB/HZB_NEAT/HZB_NEAT.md new file mode 100644 index 000000000..1682513b8 --- /dev/null +++ b/mcstas-comps/examples/HZB/HZB_NEAT/HZB_NEAT.md @@ -0,0 +1,56 @@ +# The `HZB_NEAT` Instrument + +*McStas: V3 Time-of-Flight-Spectrometer (NEAT) at BENSC, 1995 version.* + +## Identification + +- **Site:** HZB +- **Author:** Emmanuel Farhi and R. Lechner +- **Origin:** ILL (France)/BENSC (Germany) +- **Date:** 2011 + +## Description + +```text +In time-of-flight spectrometers neutron pulses are created by us- +ing mechanical chopper devices, realised on NEAT by fast rotating +discs with speeds up to 20000 RPM. The discs are coated with neu- +tron absorbing materials except for the narrow windows. Phased to +each other according to the flight time of neutrons between them, +the choppers 'cut out' pulses of neutrons with a desired wave- +length from the white beam. An interaction with moving atoms in +the sample changes the velocities of the scattered neutrons and +this is detected by the secondary part of the spectrometer on the +basis of the time of flight between the sample and the neutron de- +tectors at 2.5 m distance. The secondary spectrometer of NEAT +contains an array of 388 3He 60 cm2 area single counter detectors +(SD) for the large-angle scattering. + +The NL 2 (upper part) guide is modelled. +This model only contains the first and last choppers, and has only a single +pulse (no frame overlap). The sample is a 2mm thick plate rotated by 45 degrees, +which material can be any powder/liquid/amorphous sample. +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| lambda | Angs | incident wavelength on sample | 6 | +| dlambda | Angs | wavelength spread shot from the source | 0.05 | +| rpm | rpm | disk chopper rotation speed, setting the resolution, Hz=rpm/60. | 10000 | +| coh | str | sample coherent S(q,w) file name. Use LAZ/LAU or SQW file | "Rb_liq_coh.sqw" | +| inc | str | sample incoherent S(q,w) file name. Use NULL to scatter incoherently | "Rb_liq_inc.sqw" | +| tmin | s | Minimum ToF measured | 0.01806 | +| tmax | s | Maximum ToF measured | 0.01826 | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/examples/HZB/HZB_NEAT/HZB_NEAT.instr) for `HZB_NEAT.instr`. +- NEAT at HZB/BENSC + +--- + +*Generated for mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/examples/HighNESS/WOFSANS/WOFSANS.md b/mcstas-comps/examples/HighNESS/WOFSANS/WOFSANS.md new file mode 100644 index 000000000..cbfa4cda0 --- /dev/null +++ b/mcstas-comps/examples/HighNESS/WOFSANS/WOFSANS.md @@ -0,0 +1,56 @@ +# The `WOFSANS` Instrument + +*McStas: Instrument developed for the HighNESS EU project, describing a Wolter Optics +Focusing SANS (WOFSANS), applied for the study of moderator parameters.* + +## Identification + +- **Site:** HighNESS +- **Author:** Stavros Samothrakis, PSI +- **Origin:** PSI +- **Date:** 2021-2023 + +## Description + +```text +Instrument developed for the HighNESS EU project, describing a Wolter Optics +Focusing SANS (WOFSANS_v2), applied for the study of moderator parameters. +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| focusing_rectangle | m | Dimensions, both width and height of the source focusing area | 0.15 | +| width | m | Width-dimension of the source | 0.15 | +| Emin | meV | Minimum energy of neutron beam simulated from source | 0.2 | +| Emax | meV | Maximum energy of neutron beam simulated from source | 100000.0 | +| l_min | AA | Minimum wavelength allowed through emulated chopper system | 7.2 | +| pulseskip | 1 | Flag to skip one or more pulse frames in bandwidth calculation | 0 | +| npulses | 1 | Number of pulses to simulate | 1 | +| chopper1_flag | 1 | Switch emulated chopper on/off | 0 | +| det | m | Detector position for bandwidth calculation | 41.5 | +| R0 | 1 | R0 low-angle reflectivity of optical coating | 0.99 | +| m | 1 | m-value of optical coating | 3 | +| W | AA-1 | Supermirror cut-off, optical coating | 0.003 | +| alpha | AA | alpha parmeter of optical coating | 6.07 | +| nshells_ph | 1 | Number of conical shells simulated in PH-Wolter optic | 28 | +| fi_ph | m | Focal length for PH-Wolter optic | 5.5 | +| PH_beamstop | 1 | Flag to (de)activate Beamstop post PH-Wolter optic | 1 | +| nshells_eh | 1 | Number of conical shells simulated in EH-Wolter optic | 25 | +| fs_eh | m | Upstream focal length for EH-Wolter optic | 8 | +| fi_eh | m | Downstream focal length for EH-Wolter optic | 6 | +| EH_beamstop | 1 | Flag to (de)activate Beamstop post EH-Wolter optic | 1 | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/examples/HighNESS/WOFSANS/WOFSANS.instr) for `WOFSANS.instr`. +- V. Santoro et. al. Nuc. Sci. Eng. 2023 https://doi.org/10.1080/00295639.2023.2204184 +- https://highnessproject.eu +- This work was supported by the HighNESS project and is funded by European Commission (H2020-951782). + +--- + +*Generated for mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/examples/ILL/ILL_BRISP/ILL_BRISP.md b/mcstas-comps/examples/ILL/ILL_BRISP/ILL_BRISP.md new file mode 100644 index 000000000..9bcc94944 --- /dev/null +++ b/mcstas-comps/examples/ILL/ILL_BRISP/ILL_BRISP.md @@ -0,0 +1,94 @@ +# The `ILL_BRISP` Instrument + +*McStas: Time of Flight Neutron Spectrometer for Small Angle Inelastic Scattering BRISP* + +## Identification + +- **Site:** ILL +- **Author:** E. Farhi and N. Formissano [formisan@ill.fr] +- **Origin:** ILL +- **Date:** June 4th, 2009 + +## Description + +```text +BRISP is a new concept thermal neutron Brillouin scattering spectrometer which +exploits the time-of-flight technique and is optimized to operate at small +scattering angles with good energy resolution. + +Keywords in the design of the BRISP spectrometer were : + +Thermal neutron energies: allowing for investigations in systems characterized +by sound velocities up to 3000 m/s (three different incident energies between +20 and 80 meV are presently available). +Easy small-angle access: enabling low-Q spectroscopy with thermal neutrons. +Elastic wavevector transfer values Qel as low as 0.03 Å -1 at 20 meV incident +energy can be reached. The position of the two-dimensional detector can be +adjusted to cover different small-angle ranges between 1° and 15°. +Time-of-Flight technique: for an efficient data collection allowing also for +accurate neutron measurements as a function of external parameters such as +temperature, pressure and magnetic field. +Carefull optimization of monochromator-collimators-Fermi chopper: leading to +0.5 meV energy resolution and 0.02 Å-1 Q resolution in a typical +configuration (20 meV incident energy and 4 m sample-detector distance), +along with acceptable counting rates (flux at the sample 104 n s-1 cm-2). +For this purpose, innovatory solutions were specially developed for some of +the BRISP components. + +Main components: + +a Soller collimator defining the beam impinging on the monochromator, with a +collimation angle of 0.4° +two focusing multi-crystal monochromators, PG and Cu(111), that allow for the +selection of three incident energies in the range from 20 to 80 meV. +Fixed/variable curvatures are adopted in/outside the Brisp vertical scattering plane. +a disk chopper used for background reduction and selection of the desired +monochromator reflection through proper phasing with the Fermi chopper. +three honeycomb converging collimators [1] to define the incident beam on the +sample with a collimation angle of 0.4°, and to optimize convergence at three +detector positions (2, 4, 6 m from the sample). A coarse resolution option +is also available, without honeycomb collimator. +a Fermi chopper producing short neutron pulses which enable the time-of-flight +analysis. +a high-vacuum sample chamber possibly equipped with 1.5-300 K MAXI Orange +cryostat (100 mm) and 300-1900 K furnace +a ~2 m2-area position sensitive gas detector (3He) whose distance from the +sample can be varied between 2 and 6 m in order to access the required Q-range. +A huge vacuum tank hosts the detector. An elastobore – polyethylene shielding +surrounds the vacuum tank to reduce the environmental background. +the long vacuum line ensures an under-vacuum neutron flight path from the +background chopper to the detector. + +Configurations: +crystal d-spacing (Å) lambda0 (Å) E0(meV) +PG(002) 3.355(nominal) 1.977(expt.) 20.9 (expt.) +Cu(111) 2.087 1.28 (expt.) 49.9 (expt.) +PG(004) 1.677(nominal) 0.989(expt.) 83.6 (expt.) + +In this model, the sample is a plate of thickness e=4 mm, surrounded by an +Al or Nb container, inside an Al shield (phi=10 cm). +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| DM | Angs | Monochromator d-spacing. Use 3.355 for PG002, 1.677 for PG004 and 2.087 for Cu111. | 3.355 | +| coh | str | Sample coherent specification (use laz, lau or Sqw file, or NULL to disable). Sample is a 5x5 cm plate, e=4 mm. | "V.lau" | +| inc | str | Sample incoherent specification (use laz, lau or Sqw file, or NULL to scatter isotropically, using cross sections read from the coherent file) | "NULL" | +| container | str | sample container material. Thickness is .2 mm. Use NULL, Al or Nb. | "NULL" | +| LSD | m | Distance sample-detector | 4.5 | +| Frequency | Hz | Disk-chopper frequency | 0 | +| LCC | m | Distance between the Disk-chopper and the Fermi-chopper | 0 | +| DELAY | s | Fermi phase wrt. Disk-chopper opening | 0 | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/examples/ILL/ILL_BRISP/ILL_BRISP.instr) for `ILL_BRISP.instr`. +- The BRISP spectrometer at the ILL BRISP + +--- + +*Generated for mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/examples/ILL/ILL_D2B/ILL_D2B.md b/mcstas-comps/examples/ILL/ILL_D2B/ILL_D2B.md new file mode 100644 index 000000000..06f34370f --- /dev/null +++ b/mcstas-comps/examples/ILL/ILL_D2B/ILL_D2B.md @@ -0,0 +1,74 @@ +# The `ILL_D2B` Instrument + +*McStas: Simple monochromator Diffractometer for powders* + +## Identification + +- **Site:** ILL +- **Author:** C. M. I Enrique, K. Lieutenant, E. Farhi and L. Cussen +- **Origin:** ILL +- **Date:** 13 Apr 2006 + +## Description + +```text +The diffractometer D2B is characterised by the very high take-off angle (135 deg) +for the monochromator, which has a relatively large mosaic spread of 20' to +compensate for the corresponding intensity (dl/l) loss. It is 300 mm high, +focusing vertically onto about 50 mm; this large incident vertical divergence +is matched by 200 mm high detectors and collimators. A complete diffraction +pattern is obtained after about 100 steps of 0.025 deg in 2theta, since the 64 +detectors are spaced at 2.5 deg intervals. Such scans take typically 30 minutes; +they are repeated to improve statistics. + +D2B was designed for work on samples and high resolution of very large +d-spacings using wavelengths of between 2.4 Å and 6 Å. Wavelengths can easily be +changed under computer control, since they are all obtained by a simple rotation +within the Ge[hhl] plane. A large graphite filter can be switched in to provide +a very clean beam at 2.4 Angs, and a cold Be-filter can be used for longer +wavelengths. + +This model implements as well the Caglioti UVW equations, that give estimates +of the instrument resolution. + +Monochromator lattice parameter +Ge 111 DM=3.266 AA +Ge 311 DM=1.714 AA +Ge 511 DM=1.089 AA +Ge 533 DM=0.863 AA +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| lambda | Angs | Wavelength at monochromator, computed from DM and THETA_M if left as 0. | 1.594 | +| DM | Angs | d-spacing of monochromator, computed from lambda and THETA_M if left as 0. | 0 | +| Powder | str | File name for powder description | "Na2Ca3Al2F14.laz" | +| RV | m | Monochromator vertical curvature, 0 for flat, -1 for automatic setting | -1 | +| L1 | m | Source-Monochromator distance | 16.05 | +| L2 | m | Monochromator-Sample distance | 2.645 | +| L3 | m | Sample-Detector distance | 1.3 | +| verbose | 1 | Print DIF configuration. 0 to be quiet | 1 | +| ALPHA1 | min | Horizontal collimator divergence for L1 arm (before monochromator) | 18 | +| ALPHA2 | min | Horizontal collimator divergence for L2 arm (monochromator-sample) | 11 | +| ALPHA3 | min | Horizontal collimator divergence for L3 arm (sample-detector) | 5 | +| ETA | min | Monochromator horizontal mosaic (gaussian) | 12 | +| THETA_M | deg | Monochromator take-off angle, computed from lambda and DM if left as 0. | 67.5 | +| TILT | deg | Monochromator additional tilt, for rocking curves | 0 | +| SM | 1 | Scattering sense of beam from Monochromator. 1:left, -1:right | 1 | +| Dheight | m | Banana detector height | 0.3 | +| coating | 1 | Super-mirror in-beam tube guide coating | 0 | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/examples/ILL/ILL_D2B/ILL_D2B.instr) for `ILL_D2B.instr`. +- G. Caglioti, A. Paoletti, F.P. Ricci, Nucl. Instr. and. Meth. 3 (1958) 223 +- L.D. Cussen, Nucl. Instr. and. Meth. A 554 (2005) 406 +- M. Morhac, NIM A 600 (2009) 478 + +--- + +*Generated for mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/examples/ILL/ILL_D2B_noenv/ILL_D2B_noenv.md b/mcstas-comps/examples/ILL/ILL_D2B_noenv/ILL_D2B_noenv.md new file mode 100644 index 000000000..050b9bc32 --- /dev/null +++ b/mcstas-comps/examples/ILL/ILL_D2B_noenv/ILL_D2B_noenv.md @@ -0,0 +1,74 @@ +# The `ILL_D2B_noenv` Instrument + +*McStas: Simple monochromator Diffractometer for powders* + +## Identification + +- **Site:** ILL +- **Author:** C. M. I Enrique, K. Lieutenant, E. Farhi and L. Cussen +- **Origin:** ILL +- **Date:** 13 Apr 2006 + +## Description + +```text +The diffractometer D2B is characterised by the very high take-off angle (135 deg) +for the monochromator, which has a relatively large mosaic spread of 20' to +compensate for the corresponding intensity (dl/l) loss. It is 300 mm high, +focusing vertically onto about 50 mm; this large incident vertical divergence +is matched by 200 mm high detectors and collimators. A complete diffraction +pattern is obtained after about 100 steps of 0.025 deg in 2theta, since the 64 +detectors are spaced at 2.5 deg intervals. Such scans take typically 30 minutes; +they are repeated to improve statistics. + +D2B was designed for work on samples and high resolution of very large +d-spacings using wavelengths of between 2.4 Å and 6 Å. Wavelengths can easily be +changed under computer control, since they are all obtained by a simple rotation +within the Ge[hhl] plane. A large graphite filter can be switched in to provide +a very clean beam at 2.4 Angs, and a cold Be-filter can be used for longer +wavelengths. + +This model implements as well the Caglioti UVW equations, that give estimates +of the instrument resolution. + +Monochromator lattice parameter +Ge 111 DM=3.266 AA +Ge 311 DM=1.714 AA +Ge 511 DM=1.089 AA +Ge 533 DM=0.863 AA +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| lambda | Angs | Wavelength at monochromator, computed from DM and THETA_M if left as 0. | 1.594 | +| DM | Angs | d-spacing of monochromator, computed from lambda and THETA_M if left as 0. | 0 | +| Powder | str | File name for powder description | "Na2Ca3Al2F14.laz" | +| RV | m | Monochromator vertical curvature, 0 for flat, -1 for automatic setting | -1 | +| L1 | m | Source-Monochromator distance | 16.05 | +| L2 | m | Monochromator-Sample distance | 2.645 | +| L3 | m | Sample-Detector distance | 1.3 | +| verbose | 1 | Print DIF configuration. 0 to be quiet | 1 | +| ALPHA1 | min | Horizontal collimator divergence for L1 arm (before monochromator) | 18 | +| ALPHA2 | min | Horizontal collimator divergence for L2 arm (monochromator-sample) | 11 | +| ALPHA3 | min | Horizontal collimator divergence for L3 arm (sample-detector) | 5 | +| ETA | min | Monochromator horizontal mosaic (gaussian) | 12 | +| THETA_M | deg | Monochromator take-off angle, computed from lambda and DM if left as 0. | 67.5 | +| TILT | deg | Monochromator additional tilt, for rocking curves | 0 | +| SM | 1 | Scattering sense of beam from Monochromator. 1:left, -1:right | 1 | +| Dheight | m | Banana detector height | 0.3 | +| coating | 1 | Super-mirror in-beam tube guide coating | 0 | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/examples/ILL/ILL_D2B_noenv/ILL_D2B_noenv.instr) for `ILL_D2B_noenv.instr`. +- G. Caglioti, A. Paoletti, F.P. Ricci, Nucl. Instr. and. Meth. 3 (1958) 223 +- L.D. Cussen, Nucl. Instr. and. Meth. A 554 (2005) 406 +- M. Morhac, NIM A 600 (2009) 478 + +--- + +*Generated for mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/examples/ILL/ILL_D4/ILL_D4.md b/mcstas-comps/examples/ILL/ILL_D4/ILL_D4.md new file mode 100644 index 000000000..8cd64f5ce --- /dev/null +++ b/mcstas-comps/examples/ILL/ILL_D4/ILL_D4.md @@ -0,0 +1,51 @@ +# The `ILL_D4` Instrument + +*McStas: D4 Diffractometer for liquids at the ILL.* + +## Identification + +- **Site:** ILL +- **Author:** E. Farhi +- **Origin:** LLB/ILL +- **Date:** 13 Apr 2006 + +## Description + +```text +D4 Diffractometer for liquids at the ILL, installed on the hot source. + +The dedicated liquid and amorphous instrument D4 is a two-axis diffractometer +equipped with nine 1D position sensitive microstrip detectors. In this model, +a PSD banana detector is also present. + +The monochromator take-off angle is 2Theta_M ~ 20-25 deg, variable. The available +monochromators are all vertically focusing, Cu (200) for 0.7 Angs, Cu (220) +for 0.5 Angs. + +Cu 002 DM=1.807 AA +Cu 220 DM=1.278 AA +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| lambda | Angs | Wavelength at monochromator | 0.7 | +| DM | Angs | d-spacing of monochromator | 1.807 | +| sample | str | File name for powder/liquid description LAU/LAZ/qSq/Sqw | "SiO2_liq.qSq" | +| RV | m | Monochromator vertical curvature, 0 for flat, -1 for automatic setting | -1 | +| L1 | m | Source-Monochromator distance | 6.4 | +| L2 | m | Monochromator-Sample distance | 2.61 | +| L3 | m | Sample-Detector distance | 1.148 | +| verbose | 1 | Print DIF configuration. 0 to be quiet | 1 | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/examples/ILL/ILL_D4/ILL_D4.instr) for `ILL_D4.instr`. +- The D4 diffractometer at the ILL + +--- + +*Generated for mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/examples/ILL/ILL_H10_IN8/ILL_H10_IN8.md b/mcstas-comps/examples/ILL/ILL_H10_IN8/ILL_H10_IN8.md new file mode 100644 index 000000000..93e19ee80 --- /dev/null +++ b/mcstas-comps/examples/ILL/ILL_H10_IN8/ILL_H10_IN8.md @@ -0,0 +1,84 @@ +# The `ILL_H10_IN8` Instrument + +*McStas: Thermal neutron three-axis spectrometer IN8@ILL* + +## Identification + +- **Site:** ILL +- **Author:** Emmanuel Farhi +- **Origin:** ILL (France) +- **Date:** 2006 + +## Description + +```text +IN8 is installed on beamtube H10 (diameter F = 200 mm). +The incident wavelength selection is obtained through a double focusing +monochromator , which has three faces equipped with PG002, Cu200 and bent +perfect Si111 crystals, respectively. Horizontal focusing allows increasing the +monochromatic flux at the expense of momentum but not energy resolution when +the horizontal virtual source (an adjustable entrance slit) is introduced at a +distance before the monochromator which matches the monochromator-sample +distance. + +The aperture of the horizontal virtual source can be varied but is typically +kept below 50 mm. This reduces the background level of the instrument. +Converging collimators as well as diaphragms can be placed in the beam path +before and after the monochromator to optimize the beam dimension and +definition. For special high-resolution experiments using a flat monochromator, +Soller collimators are available. + +The shielding drum allows varying the monochromator take-off angle in the range +10 < 2theta_m < 90. The secondary spectrometer has heavy borated polyethylene +shielding installed around the analyzer and detector elements. The scattering +angle at the sample position is in the range 0 < 2theta_s < 130 independent of +the monochromator take-off angle. + +In this TAS configuration, Cu200 is used as monochromator and Cu111 as +analyser, with a single type detector. +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| KF | Angs-1 | Outgoing neutron wavevector | 5 | +| KI | Angs-1 | Incoming neutron wavevector | 0 | +| QM | Angs-1 | Wavevector transfer in crystal | 0.5 | +| EN | meV | Energy transfer in crystal | 0 | +| verbose | 1 | print TAS configuration. 0 to be quiet | 1 | +| WM | m | Width of monochromator | 0.233 | +| HM | m | Height of monochromator | 0.197 | +| RMH | m | Monochromator horizontal curvature, 0 for flat, -1 for automatic setting | -1 | +| RMV | m | Monochromator vertical curvature, 0 for flat, -1 for automatic setting | -1 | +| DM | Angs | Monochromator d-spacing | 1.807 | +| NHM | 1 | Number of horizontal slabs composing the monochromator | 15 | +| NVM | 1 | Number of vertical slabs composing the monochromator | 15 | +| WA | m | Width of analyzer | 0.16 | +| HA | m | Height of analyzer | 0.08 | +| RAH | m | Analyzer horizontal curvature, 0 for flat, -1 for automatic setting | -1 | +| RAV | m | Analyzer vertical curvature, 0 for flat, -1 for automatic setting | -1 | +| DA | Angs | Analyzer d-spacing | 2.087 | +| NHA | 1 | Number of horizontal slabs composing the analyzer | 15 | +| NVA | 1 | Number of vertical slabs composing the analyzer | 15 | +| L1 | m | Source-Monochromator distance. Contains 1st Collimator of length 5.34 | 2.3 | +| ALF1 | arc min | Horizontal collimation from Source to Monochromator | 60 | +| ALF2 | arc min | Horizontal collimation from Monochromator to Sample A | 60 | +| ALF3 | arc min | Horizontal collimation from Sample to Analyzer | 60 | +| ALF4 | arc min | Horizontal collimation from Analyzer to Detector | 60 | +| BET1 | arc min | Vertical collimation from Source to Monochromator | 120 | +| BET2 | arc min | Vertical collimation from Monochromator to Sample A | 120 | +| BET3 | arc min | Vertical collimation from Sample to Analyzer | 120 | +| BET4 | arc min | Vertical collimation from Analyzer to Detector | 120 | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/examples/ILL/ILL_H10_IN8/ILL_H10_IN8.instr) for `ILL_H10_IN8.instr`. +- Rescal for Matlab at http://www.ill.eu/instruments-support/computing-for-science/cs-software/all-software/matlab-ill/ +- Restrax at http://omega.ujf.cas.cz/restrax/ + +--- + +*Generated for mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/examples/ILL/ILL_H113/ILL_H113.md b/mcstas-comps/examples/ILL/ILL_H113/ILL_H113.md new file mode 100644 index 000000000..c45d669d6 --- /dev/null +++ b/mcstas-comps/examples/ILL/ILL_H113/ILL_H113.md @@ -0,0 +1,36 @@ +# The `ILL_H113` Instrument + +*McStas: The H113 supermirror ballistic curved cold guide at the ILL* + +## Identification + +- **Site:** ILL +- **Author:** FARHI Emmanuel (farhi@ill.fr) +- **Origin:** ILL +- **Date:** April 7, 2004 + +## Description + +```text +The H113 supermirror ballistic curved cold guide at the ILL feeding PF1b +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| m | 1 | m-value of whole guide coating. 0 absorbing, 1 for Ni, 1.2 for Ni58, 2-4 for SM | 2 | +| lambda | AA | central wavelength | 10 | +| dlambda | AA | wavelength half width. Use e.g. 0.8*lambda for white beam. | 9.9 | +| mip | 1 | m-value of in-pile guide coating (3.5 first meters of guide) | 1.2 | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/examples/ILL/ILL_H113/ILL_H113.instr) for `ILL_H113.instr`. +- The PF1b beam line at the ILL + +--- + +*Generated for mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/examples/ILL/ILL_H13_IN20/ILL_H13_IN20.md b/mcstas-comps/examples/ILL/ILL_H13_IN20/ILL_H13_IN20.md new file mode 100644 index 000000000..61fde6703 --- /dev/null +++ b/mcstas-comps/examples/ILL/ILL_H13_IN20/ILL_H13_IN20.md @@ -0,0 +1,83 @@ +# The `ILL_H13_IN20` Instrument + +*McStas: Thermal neutron three-axis spectrometer IN20@ILL (unpolarized configuration)* + +## Identification + +- **Site:** ILL +- **Author:** Emmanuel Farhi +- **Origin:** ILL (France) +- **Date:** 2006 + +## Description + +```text +IN20 is installed at the H13 thermal beam tube (Phi 170 mm) in the reactor hall. + +Both the primary and the secondary spectrometer employ a monochromatic +horizontal focusing geometry. A heavy input slit of an adjustable size, placed +in the casemate, serves as a virtual source, providing a large solid angle for +the monochromatic beam, while reducing, together with a sapphire filter window, +the fast neutron background. The neutron energy is selected either by a doubly +focusing polarizing Heusler 111 monochromator (230 x 150 mm2 w x h) or by an +unpolarised Si 111 monochromator (elastically bent crystals, 195 x 200 mm2 w x +h) free of higher-order contamination in the incident beam at wave-numbers ki > +3 Angs-1. The analysis of the energy and polarisation state of the scattered +neutrons is effectuated by a similar horizontally focusing Heusler crystal +analyzer. Further PG 002 and Si 111 analyzers are available for occasional +unpolarised work. + +The energy transfer range accessible in the present configuration of IN20 +extends to 100 meV with maximum incident neutron energies reaching 150 meV. The +typical energy widths (FWHM) measured with a reference vanadium sample at the +graphite filter wave-numbers ki = 2.66 A-1 and 4.1 A-1 are 0.82(3) meV and 3.05 +(15) meV, respectively. + +This model uses two Si111 monochromator and analyzers (unpolarized +configuration). +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| KF | Angs-1 | Outgoing neutron wavevector | 3 | +| KI | Angs-1 | Incoming neutron wavevector | 0 | +| QM | Angs-1 | Wavevector transfer in crystal | 0.5 | +| EN | meV | Energy transfer in crystal | 0 | +| verbose | 1 | print TAS configuration. 0 to be quiet | 1 | +| WM | m | Width of monochromator | 0.20 | +| HM | m | Height of monochromator | 0.19 | +| RMH | m | Monochromator horizontal curvature, 0 for flat, -1 for automatic setting | -1 | +| RMV | m | Monochromator vertical curvature, 0 for flat, -1 for automatic setting | -1 | +| DM | Angs | Monochromator d-spacing | 3.155 | +| NHM | 1 | Number of horizontal slabs composing the monochromator | 15 | +| NVM | 1 | Number of vertical slabs composing the monochromator | 15 | +| WA | m | Width of analyzer | 0.16 | +| HA | m | Height of analyzer | 0.08 | +| RAH | m | Analyzer horizontal curvature, 0 for flat, -1 for automatic setting | -1 | +| RAV | m | Analyzer vertical curvature, 0 for flat, -1 for automatic setting | -1 | +| DA | Angs | Analyzer d-spacing | 3.155 | +| NHA | 1 | Number of horizontal slabs composing the analyzer | 15 | +| NVA | 1 | Number of vertical slabs composing the analyzer | 15 | +| L1 | m | Source-Monochromator distance. Contains 1st Collimator of length 5.34 | 2.33 | +| ALF1 | arc min | Horizontal collimation from Source to Monochromator | 60 | +| ALF2 | arc min | Horizontal collimation from Monochromator to Sample A | 60 | +| ALF3 | arc min | Horizontal collimation from Sample to Analyzer | 60 | +| ALF4 | arc min | Horizontal collimation from Analyzer to Detector | 60 | +| BET1 | arc min | Vertical collimation from Source to Monochromator | 120 | +| BET2 | arc min | Vertical collimation from Monochromator to Sample A | 120 | +| BET3 | arc min | Vertical collimation from Sample to Analyzer | 120 | +| BET4 | arc min | Vertical collimation from Analyzer to Detector | 120 | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/examples/ILL/ILL_H13_IN20/ILL_H13_IN20.instr) for `ILL_H13_IN20.instr`. +- Rescal for Matlab at http://www.ill.eu/instruments-support/computing-for-science/cs-software/all-software/matlab-ill/ +- Restrax at http://omega.ujf.cas.cz/restrax/ + +--- + +*Generated for mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/examples/ILL/ILL_H142/ILL_H142.md b/mcstas-comps/examples/ILL/ILL_H142/ILL_H142.md new file mode 100644 index 000000000..5110dc02c --- /dev/null +++ b/mcstas-comps/examples/ILL/ILL_H142/ILL_H142.md @@ -0,0 +1,37 @@ +# The `ILL_H142` Instrument + +*McStas: The H142 S-curved cold guide at the ILL* + +## Identification + +- **Site:** ILL +- **Author:** FARHI Emmanuel (farhi@ill.fr) +- **Origin:** ILL +- **Date:** April 7, 2004 + +## Description + +```text +The H142 S-curved cold guide at the ILL feeding IN12 +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| m | 1 | m-value of whole guide coating. 0 absorbing, 1 for Ni, 1.2 for Ni58, 2-4 for SM | 1 | +| lambda | AA | central wavelength | 10 | +| dlambda | AA | wavelength half width. Use e.g. 0.8*lambda for white beam. | 9.9 | +| gH | m | height of 2nd H142 curved section | 0.12 | +| mip | 1 | m-value of in-pile guide coating | 1 | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/examples/ILL/ILL_H142/ILL_H142.instr) for `ILL_H142.instr`. +- The IN12 TAS at the ILL + +--- + +*Generated for mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/examples/ILL/ILL_H142_D33/ILL_H142_D33.md b/mcstas-comps/examples/ILL/ILL_H142_D33/ILL_H142_D33.md new file mode 100644 index 000000000..aec3dcefc --- /dev/null +++ b/mcstas-comps/examples/ILL/ILL_H142_D33/ILL_H142_D33.md @@ -0,0 +1,48 @@ +# The `ILL_H142_D33` Instrument + +*McStas: A simplified H142 cold guide model at the ILL, with a simple D33 model at the end* + +## Identification + +- **Site:** ILL +- **Author:** FARHI Emmanuel (farhi@ill.fr) +- **Origin:** ILL +- **Date:** 2012 + +## Description + +```text +This model decribes a simiplified H142 cold guide at the ILL, with D33. + +The D33 Massive dynamic q-range small-angle diffractometer is a Small-Angle Neutron +Scattering instrument for the characterization of samples with typical sizes +varying from the nanometer scale to few tenth of micrometer. In addition to a +standard monochromatic mode of operation, D33 offers a time of flight mode (TOF) +to cover an enhanced dynamic q-range qmax/qmin in one instrument setting. High +magnetic fields, up to 17 T at the sample position, beam polarization and 3He +spin analysis, facilitate and expand studies of magnetism and allow a more +quantitative analysis of spin incoherent samples. The high flux allows for +kinetic experiments with time resolution of the order of few milliseconds. +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| lambda | | central wavelength band for guide illumination [Angs] | 14 | +| dlambda | | half width of guide wavelength band [Angs] | 1.4 | +| m1 | | m-coating for 1st guide section | 1 | +| m2 | | m-coating for 2nd guide section | 1 | +| m3 | | m-coating for 3th guide section | 1 | +| m4 | | m-coating for 4th guide section | 1 | +| diaphragm | | diaphragm diameter between section 3 and 4; use 0 to remove [cm] | 0 | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/examples/ILL/ILL_H142_D33/ILL_H142_D33.instr) for `ILL_H142_D33.instr`. + +--- + +*Generated for mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/examples/ILL/ILL_H142_IN12/ILL_H142_IN12.md b/mcstas-comps/examples/ILL/ILL_H142_IN12/ILL_H142_IN12.md new file mode 100644 index 000000000..be6510b67 --- /dev/null +++ b/mcstas-comps/examples/ILL/ILL_H142_IN12/ILL_H142_IN12.md @@ -0,0 +1,51 @@ +# The `ILL_H142_IN12` Instrument + +*McStas: The H142 S-curved cold guide at the ILL feeding IN12 TAS spectrometer* + +## Identification + +- **Site:** ILL +- **Author:** FARHI Emmanuel (farhi@ill.fr) +- **Origin:** ILL +- **Date:** April 7, 2004 + +## Description + +```text +The H142 beam is the only S-curved guide at the ILL. It is used here to feed +the IN12 TAS spectrometer (classical configuration). +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| m | 1 | m-value of guide coating (H14/H142) | 1 | +| KI | Angs-1 | central wavevector for incoming neutrons | 2.662 | +| QM | Angs-1 | wavevector transfer modulus at the sample | 1.0 | +| EN | meV | energy transfer at the sample | 0.0 | +| verbose | | verbose-mode toggle | 1 | +| WM | m | Width of monochromator | 0.08 | +| HM | m | Height of monochromator | 0.12 | +| NHM | 1 | Number of vertical slabs composing the monochromator | 1 | +| NVM | 1 | Number of horizontal slabs composing the monochromator | 6 | +| RMV | m | Monochromator vertical curvature, 0 for flat, -1 for automatic setting | -1 | +| WA | m | Width of analyzer | 0.121 | +| HA | m | Height of analyzer | 0.118 | +| NHA | 1 | Number of horizontal slabs composing the analyzer | 11 | +| NVA | 1 | Number of vertical slabs composing the analyzer | 1 | +| RAH | m | Analyzer horizontal curvature, 0 for flat, -1 for automatic setting | -1 | +| L2 | m | Monochromator-Sample distance. Contains 2nd Collimator | 1.726 | +| L3 | m | Sample-Analyzer distance. Contains 3rd Collimator | 1.300 | +| L4 | m | Analyzer-detector distance. Contains 4th Collimator | 0.710 | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/examples/ILL/ILL_H142_IN12/ILL_H142_IN12.instr) for `ILL_H142_IN12.instr`. +- The IN12 TAS at the ILL + +--- + +*Generated for mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/examples/ILL/ILL_H142_simple/ILL_H142_simple.md b/mcstas-comps/examples/ILL/ILL_H142_simple/ILL_H142_simple.md new file mode 100644 index 000000000..e86c3596f --- /dev/null +++ b/mcstas-comps/examples/ILL/ILL_H142_simple/ILL_H142_simple.md @@ -0,0 +1,37 @@ +# The `ILL_H142_simple` Instrument + +*McStas: The H142 S-curved cold guide at the ILL* + +## Identification + +- **Site:** ILL +- **Author:** FARHI Emmanuel (farhi@ill.fr) +- **Origin:** ILL +- **Date:** April 7, 2004 + +## Description + +```text +The H142 S-curved cold guide at the ILL feeding IN12 +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| m | 1 | m-value of whole guide coating. 0 absorbing, 1 for Ni, 1.2 for Ni58, 2-4 for SM | 1 | +| lambda | AA | central wavelength | 10 | +| dlambda | AA | wavelength half width. Use e.g. 0.8*lambda for white beam. | 9.9 | +| gH | m | height of 2nd H142 curved section | 0.12 | +| mip | 1 | m-value of in-pile guide coating | 1 | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/examples/ILL/ILL_H142_simple/ILL_H142_simple.instr) for `ILL_H142_simple.instr`. +- The IN12 TAS at the ILL + +--- + +*Generated for mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/examples/ILL/ILL_H143_LADI/ILL_H143_LADI.md b/mcstas-comps/examples/ILL/ILL_H143_LADI/ILL_H143_LADI.md new file mode 100644 index 000000000..2fad570ae --- /dev/null +++ b/mcstas-comps/examples/ILL/ILL_H143_LADI/ILL_H143_LADI.md @@ -0,0 +1,60 @@ +# The `ILL_H143_LADI` Instrument + +*McStas: The LADI protein crystallography cold Laue diffractometer* + +## Identification + +- **Site:** ILL +- **Author:** Emmanuel Farhi +- **Origin:** ILL (France) +- **Date:** Sept 2014. + +## Description + +```text +LADI-III is a quasi-Laue neutron diffractometer used for single-crystal studies +of biological macromolecules at high resolution (1.5 - 2.5Å) in order to locate +individual protons or deuterons of special interest, water structures or other +small molecules that can be marked with deuterium to be particularly visible. +Data collection is feasible for samples with unit-cell edges ranging from 50 +to 150Å using crystal volumes from ~0.05 to 0.5mm3, respectively. + +LADI-III uses a large cylindrical area detector composed of neutron-sensitive +image-plates, which completely surround the crystal and allows large numbers +of reflections to be recorded simultaneously. Data are collected using a +quasi-Laue method in order to provide a rapid survey of reciprocal space, while +reducing the background on the detector compared to use of the full white beam. + +LADI: +Guide H143: +H14_1 H14_2 H14_3 [OT1] H143_1 [OT2] H143_2 last +Length [m] 6.8 6 21 30 35 1 +m 2 2 2 1,bot=1.4 1,bot=1.4 idem +Rh [km] - 2.7 4.0 - - - +Rv [km] - - - 2.0 2.0 2.0 +n_elm. 2 5 11 15 14 last=1m +section [mm] 45x220 45x220 45x220-200 45x30+95 30x30+95 [w*h+v.offset] + +Filter: Ni/Ti multilayer band-pass filter, Quasi-Laue (dlambda/lambda<30%) +Collimation: Pinholes 0.5 to 2.9 mm +Detector: image plate 1250 x 450 mm2 +Sample: at 2.710 mm from the end of the guide H143. +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| lambda | Angs | wavelength | 3.2 | +| dlambda | Angs | wavelength HALF spread. | 1 | +| reflections | str | list of reflections describing the sample SX | "leucine.lau" | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/examples/ILL/ILL_H143_LADI/ILL_H143_LADI.instr) for `ILL_H143_LADI.instr`. + +--- + +*Generated for mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/examples/ILL/ILL_H15/ILL_H15.md b/mcstas-comps/examples/ILL/ILL_H15/ILL_H15.md new file mode 100644 index 000000000..ce244cbf5 --- /dev/null +++ b/mcstas-comps/examples/ILL/ILL_H15/ILL_H15.md @@ -0,0 +1,36 @@ +# The `ILL_H15` Instrument + +*McStas: The H15@ILL curved cold guide at the ILL (feeding IN6, D7, IN10, D11)* + +## Identification + +- **Site:** ILL +- **Author:** FARHI Emmanuel (farhi@ill.fr) +- **Origin:** ILL +- **Date:** April 7, 2004 + +## Description + +```text +The H15@ILL curved guide sending cold neutrons from the VCS to IN6 +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| m | 1 | m-value of whole guide coating. 0 absorbing, 1 for Ni, 1.2 for Ni58, 2-4 for SM | 1 | +| lambda | AA | central wavelength | 10 | +| dlambda | AA | wavelength half width. Use e.g. 0.8*lambda for white beam. | 9.9 | +| mip | 1 | m-value of in-pile guide coating | 1 | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/examples/ILL/ILL_H15/ILL_H15.instr) for `ILL_H15.instr`. +- The IN6 TOF at the ILL + +--- + +*Generated for mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/examples/ILL/ILL_H15_D11/ILL_H15_D11.md b/mcstas-comps/examples/ILL/ILL_H15_D11/ILL_H15_D11.md new file mode 100644 index 000000000..3dd0b918e --- /dev/null +++ b/mcstas-comps/examples/ILL/ILL_H15_D11/ILL_H15_D11.md @@ -0,0 +1,58 @@ +# The `ILL_H15_D11` Instrument + +*McStas: D11 at the ILL: Lowest momentum transfer, lowest background small-angle neutron scattering instrument* + +## Identification + +- **Site:** ILL +- **Author:** FARHI Emmanuel (farhi@ill.fr) +- **Origin:** ILL +- **Date:** 2012 + +## Description + +```text +D11 - LOWEST MOMENTUM TRANSFER and LOWEST BACKGROUND SANS + +D11 is the archetype of a long, pinhole geometry instrument for small angle +neutron scattering (SANS), designed for the study of large scale structures in +soft matter systems, chemistry, biology, solid state physics and materials science. + +This model allows to specify the collimation length, i.e. the free path between +the end of the guide and the sample location. When Lc=1.5 m, the intensity is +maximal, but Q-resolution (divergence) is degraded. The Lc=40.5 m configuration +is the low-Q one. +The collimation can also be given as predefined configuration 'iLc' starting from 0 + +iLc ={ 1.5, 2.5, 4, 5.5, 8, 10.5, 13.5, 16.5, 20.5, 28, 34, 40.5} + +so that e.g. iLc=5 corresponds with a 10.5 m collimation + +The quality of the collimation section can be specified among a set of glass +pre-set specifications. The available configurations are: + +| Borkron_1972 Borkron_2003 Borofloat_2001 Borofloat_2003 +Chamfers [mm] | 0.2 0.2 0.8 0.2 +Wavyness [rad]| 2.5e-5 1e-4 8e-4 2e-4 +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| Lambda | Angs | neutron wavelength reaching D11 sample | 4.51 | +| Config | string | guide configuration. Must be one of Borkron_1972 Borkron_2003 Borofloat_2001 Borofloat_2003 | "Borkron_1972" | +| Lc | m | guide collimation, i.e. free path between end of guide and sample location. Must be one of 40.5, 34, 28, 20.5, 16.5 13.5 10.5, 8, 5.5, 4, 2.5, 1.5 | 0 | +| iLc | index | guide collimation predefined length | 5 | +| Chamfers | m | chamfers width (input/output movable guide section+longitudinal top/bottom sides) | 0.0002 | +| Waviness | rad | movable guide Waviness | 2.5e-5 | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/examples/ILL/ILL_H15_D11/ILL_H15_D11.instr) for `ILL_H15_D11.instr`. + +--- + +*Generated for mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/examples/ILL/ILL_H15_IN6/ILL_H15_IN6.md b/mcstas-comps/examples/ILL/ILL_H15_IN6/ILL_H15_IN6.md new file mode 100644 index 000000000..992fa1945 --- /dev/null +++ b/mcstas-comps/examples/ILL/ILL_H15_IN6/ILL_H15_IN6.md @@ -0,0 +1,68 @@ +# The `ILL_H15_IN6` Instrument + +*McStas: The IN6 Time-of-Flight simulation, positioned as the first instrument in the +cold guide H15 (Nickel coating) at the ILL.* + +## Identification + +- **Site:** ILL +- **Author:** Emmanuel Farhi +- **Origin:** ILL (France) +- **Date:** 17th Jan 2005. + +## Description + +```text +IN6 is a time focussing time-of-flight spectrometer designed for quasielastic and +inelastic scattering for incident wavelengths in the range of 4 to 6 Angs. + +An intense beam is extracted from the H15 guide by a vertically focussing +monochromator array. It consists of three composite pyrolytic graphite +monochromators using the full height (20 cm) of the guide and focussing the beam +at the sample position. In order to minimise the interference with the +subsequent instruments, the monochromator can deliver only four wavelengths: +4.1; 4.6; 5.1; and 5.9 Angs. The second order reflection from the graphite +monochromator is removed by a beryllium-filter cooled at liquid nitrogen +temperature. + +To achieve the time-focussing condition, the beam is pulsed by a Fermi chopper. +It has a small slot length to ensure a good transmission. The normal distance +between the Fermi chopper and the sample is 38 cm. To prevent frame-overlap when +the chopper is rotating faster than 7500 rpm, a suppressor chopper is placed +before the Fermi chopper and rotates in phase with the latter. + +The secondary spectrometer consists first of an evacuated sample area. The +detector bank is entirely covered with detector boxes, thus avoiding the +inconvenience of moving the counters. + +This instrument model contains the complete H15 guide, a triple monochromator +(using the GROUP), two Fermi Choppers (including one background chopper), a +liquid sample handling coherent and incoherent processes (elastic and inelastic) +with multiple scattering, customized monitors, and the SPLIT mechanism to +improve the statistics. + +Example: lambda=4.14 Detector: M_theta_t_all_I=70 +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| lambda | Angs | wavelength within 4.14\|4.6\|5.12\|5.92 | 4.14 | +| dlambda | Angs | wavelength HALF spread. default is 0.075 | 0.075 | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/examples/ILL/ILL_H15_IN6/ILL_H15_IN6.instr) for `ILL_H15_IN6.instr`. +- The IN6@ILL Yellow Pages +- R.Scherm et al, "Another Time of Flight Spectrometer", ILL Report 76S235, 1976 +- R.Scherm, "A high-resolution spectrometer ...", report Jul-295-NP, Kernforschungsanlage Julich, 1965 +- Y.Blanc, "Le spectrometre a temps de vol IN6", ILL Report 83BL21G, 1983 +- K.H.Beckurts et al, Neutron physics, Kernforschungsanlage Karlsruhe, 1964 (p317) +- R.Scherm and T.Springer, "Proposal of a multiple Chopper...", Kernforschungsanlage Julich, 19xx + +--- + +*Generated for mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/examples/ILL/ILL_H15_SAM/ILL_H15_SAM.md b/mcstas-comps/examples/ILL/ILL_H15_SAM/ILL_H15_SAM.md new file mode 100644 index 000000000..ccb0c9e6d --- /dev/null +++ b/mcstas-comps/examples/ILL/ILL_H15_SAM/ILL_H15_SAM.md @@ -0,0 +1,71 @@ +# The `ILL_H15_SAM` Instrument + +*McStas: The small-angle diffractometer SAM at the ILL.* + +## Identification + +- **Site:** ILL +- **Author:** Nicolas MARTIN +- **Origin:** LLB +- **Date:** 2026/04/08 + +## Description + +```text +SAM is a CRG instrument built through a collaboration between the LLB & the ILL between +June 2023 and February 2024. After hot commissioning, first user experiments took place +in June 2024. SAM stands for "Small-Angle Modular instrument". It is a compact SANS +devoted to the study of mesostructures found in various contexts (soft matter, biophysics, +material sciences and magnetism), which also features polarized neutrons capabilities +(not included in this model). The beamline is fed by the completely renewed H15 cold +neutrons guide. + +Instrument parameters: + +Typical wavelength range: 3.25-24 AA +Guides cross section: 30 x 30 mm2 (three moveable elements within collimator) +Collimation lengths: [9, 7, 5, 2.5] m +Adjustable 'reflectometer-type' diaphragms located at [9, 5, 2.5] m upstream of sample position. +Sample-to-detector distance: 0.75-6.85 m +Detector: 64 x 64 cm2 monoblock 3He PSD +See the instrument page on the ILL website for more details. + +Example (typical "real-life" measurement sequence): + +mcrun ILL_H15_SAM.instr --gravity -n1e7 -dLargeQ lambda=5.2 +mcrun ILL_H15_SAM.instr --gravity -n1e7 -dSmallQ guide1=0 guide2=0 guide3=0 lsd=6.8 + +(Corresponding test-suite entries:) +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| lambda | AA | Wavelength mean value | 5.2 | +| dlambda | 1 | Wavelength range, full width | 0.2 | +| lambdasel | AA | Mean wavelength selected by the NVS | -1.0 | +| guide1 | 1 | 0 = out, 1 = in | 1 | +| guide2 | 1 | 0 = out, 1 = in | 1 | +| guide3 | 1 | 0 = out, 1 = in | 1 | +| s1w | mm | Width of the 1st adjustable diaphragm | 30 | +| s1h | mm | Height of the 1st adjustable diaphragm | 30 | +| s2w | mm | Width of the 2nd adjustable diaphragm | 30 | +| s2h | mm | Height of the 2nd adjustable diaphragm | 30 | +| s3w | mm | Width of the 3rd adjustable diaphragm | 30 | +| s3h | mm | Height of the 3rd adjustable diaphragm | 30 | +| ssw | mm | Width or diameter of sample slit | 7 | +| ssh | mm | Height of sample slit (0 for circular slit) | 10 | +| sampleno | 1 | Choice of sample: 0 = none, 1 = liquid water, 2 = powder ring, 3 = hard spheres in solution | 3 | +| lsd | m | Sample-to-detector distance | 0.85 | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/examples/ILL/ILL_H15_SAM/ILL_H15_SAM.instr) for `ILL_H15_SAM.instr`. +- + +--- + +*Generated for mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/examples/ILL/ILL_H16/ILL_H16.md b/mcstas-comps/examples/ILL/ILL_H16/ILL_H16.md new file mode 100644 index 000000000..8ab0bb71b --- /dev/null +++ b/mcstas-comps/examples/ILL/ILL_H16/ILL_H16.md @@ -0,0 +1,34 @@ +# The `ILL_H16` Instrument + +*McStas: The H16 cold guide (feeding IN5)* + +## Identification + +- **Site:** ILL +- **Author:** E. Farhi, J. Ollivier, Celia Castan Guerrero +- **Origin:** ILL +- **Date:** Jan 2004-2009 + +## Description + +```text +The H16@ILL curved guide sending cold neutrons from the VCS to IN5. +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| lambda | AA | mean incident wavelength. | 10 | +| dlambda | AA | wavelength half width. Use e.g. 0.8*lambda for white beam. | 9.9 | +| m | 1 | m-value of whole guide coating. 0 absorbing, 1 for Ni, 1.2 for Ni58, 2-4 for SM | 1 | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/examples/ILL/ILL_H16/ILL_H16.instr) for `ILL_H16.instr`. + +--- + +*Generated for mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/examples/ILL/ILL_H16_IN5/ILL_H16_IN5.md b/mcstas-comps/examples/ILL/ILL_H16_IN5/ILL_H16_IN5.md new file mode 100644 index 000000000..587a3bc95 --- /dev/null +++ b/mcstas-comps/examples/ILL/ILL_H16_IN5/ILL_H16_IN5.md @@ -0,0 +1,37 @@ +# The `ILL_H16_IN5` Instrument + +*McStas: The full IN5B: H16 guide & chopper system + sample + PSD and tof detector* + +## Identification + +- **Site:** ILL +- **Author:** E. Farhi, J. Ollivier, Celia Castan Guerrero +- **Origin:** ILL +- **Date:** Jan 2004-2009 + +## Description + +```text +The IN5@ILL TOF spectrometer from cold source to final detector, with sample. +The detector model includes Fe housing and tube cross talk absorbing masks +with angle restriction (neutrons that scatter in Fe in front of a tube and +enter a different tube are absorbed). +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| lambda | AA | mean incident wavelength | 4.5 | +| dlambda | AA | wavelength half width. Use e.g. 0.8*lambda for white beam. | 0.09 | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/examples/ILL/ILL_H16_IN5/ILL_H16_IN5.instr) for `ILL_H16_IN5.instr`. +- The IN5@ILL cold time of flight instrument + +--- + +*Generated for mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/examples/ILL/ILL_H22/ILL_H22.md b/mcstas-comps/examples/ILL/ILL_H22/ILL_H22.md new file mode 100644 index 000000000..12541b073 --- /dev/null +++ b/mcstas-comps/examples/ILL/ILL_H22/ILL_H22.md @@ -0,0 +1,35 @@ +# The `ILL_H22` Instrument + +*McStas: The H22 curved thermal guide at the ILL* + +## Identification + +- **Site:** ILL +- **Author:** FARHI Emmanuel (farhi@ill.fr) +- **Origin:** ILL +- **Date:** April 7, 2004 + +## Description + +```text +The H22 curved thermal guide at the ILL feeding D1A/D1B, SALSA and VIVALDI +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| m | 1 | m-value of whole guide coating. 0 absorbing, 1 for Ni, 1.2 for Ni58, 2-4 for SM | 2 | +| lambda | AA | central wavelength | 4 | +| dlambda | AA | wavelength half width. Use e.g. 0.8*lambda for white beam. | 3.9 | +| mip | 1 | m-value of in-pile guide coating | 2 | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/examples/ILL/ILL_H22/ILL_H22.instr) for `ILL_H22.instr`. + +--- + +*Generated for mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/examples/ILL/ILL_H22_D1A/ILL_H22_D1A.md b/mcstas-comps/examples/ILL/ILL_H22_D1A/ILL_H22_D1A.md new file mode 100644 index 000000000..28b8028eb --- /dev/null +++ b/mcstas-comps/examples/ILL/ILL_H22_D1A/ILL_H22_D1A.md @@ -0,0 +1,64 @@ +# The `ILL_H22_D1A` Instrument + +*McStas: Simple monochromator Diffractometer for powders (D1A) installed on H22, with +container/sample environment and radial collimator.* + +## Identification + +- **Site:** ILL +- **Author:** E. Farhi +- **Origin:** ILL +- **Date:** 13 Apr 2006 + +## Description + +```text +D1A is a reliable diffractometer for standard crystallographic problems. It gives +excellent results with the Rietveld method owing to its near perfect Gaussian +peak-shape in the 2θ-range 30° to 150°. + +Special features include +a high fixed take-off angle of 122 deg, giving high resolution at large +scattering angles (up to 160 deg); +a bank of 25 high efficiency collimators and counters; +an anisotropically squashed germanium monochromator focussing a 250 +mm high beam onto only 30 mm; +a wide choice of wavelengths, from 1.39 Angs to 2.99 Angs, quickly available by +simple rotation of the focussing monochromator; + +The large monochromator take-off angle means that the diffraction pattern is +focussed for the parallel geometry shown (2θ = 122°). The counter can be swept +through 0 deg to 2θ = 160° deg for the highest angle counter, usually in steps +of 0.05 deg. +Monochromator Neutron wavelength +Ge 117 DM=0.7946 AA 1.390 +Ge 335 DM=0.8655 AA 1.514 +Ge 115 DM=1.0925 AA 1.911 (optimal) +Ge 113 DM=1.712 AA 2.994 + +The sample is a powder, in a container can, all positioned in an +Al environment (e.g. cryostat/furnace shield). + +This instrument was installed on the H22 guide. +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| lambda | Angs | Wavelength at monochromator | 1.911 | +| dlambda | Angs | Wavelength-spread around lambda at source | 0.03 | +| DM | Angs | d-spacing of monochromator. Use DM=0 to compute the values from the requested wavelength. | 0 | +| RV | m | Radius of vertical focussing. flat for 0 | -1 | +| powder | str | File name for powder sample description | "Na2Ca3Al2F14.laz" | +| container | str | File name for container decription in Al cryostat/furnace | "V.laz" | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/examples/ILL/ILL_H22_D1A/ILL_H22_D1A.instr) for `ILL_H22_D1A.instr`. + +--- + +*Generated for mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/examples/ILL/ILL_H22_D1A_noenv/ILL_H22_D1A_noenv.md b/mcstas-comps/examples/ILL/ILL_H22_D1A_noenv/ILL_H22_D1A_noenv.md new file mode 100644 index 000000000..3bfebf9b4 --- /dev/null +++ b/mcstas-comps/examples/ILL/ILL_H22_D1A_noenv/ILL_H22_D1A_noenv.md @@ -0,0 +1,64 @@ +# The `ILL_H22_D1A` Instrument + +*McStas: Simple monochromator Diffractometer for powders (D1A) installed on H22, with +container/sample environment and radial collimator.* + +## Identification + +- **Site:** ILL +- **Author:** E. Farhi +- **Origin:** ILL +- **Date:** 13 Apr 2006 + +## Description + +```text +D1A is a reliable diffractometer for standard crystallographic problems. It gives +excellent results with the Rietveld method owing to its near perfect Gaussian +peak-shape in the 2θ-range 30° to 150°. + +Special features include +a high fixed take-off angle of 122 deg, giving high resolution at large +scattering angles (up to 160 deg); +a bank of 25 high efficiency collimators and counters; +an anisotropically squashed germanium monochromator focussing a 250 +mm high beam onto only 30 mm; +a wide choice of wavelengths, from 1.39 Angs to 2.99 Angs, quickly available by +simple rotation of the focussing monochromator; + +The large monochromator take-off angle means that the diffraction pattern is +focussed for the parallel geometry shown (2θ = 122°). The counter can be swept +through 0 deg to 2θ = 160° deg for the highest angle counter, usually in steps +of 0.05 deg. +Monochromator Neutron wavelength +Ge 117 DM=0.7946 AA 1.390 +Ge 335 DM=0.8655 AA 1.514 +Ge 115 DM=1.0925 AA 1.911 (optimal) +Ge 113 DM=1.712 AA 2.994 + +The sample is a powder, in a container can, all positioned in an +Al environment (e.g. cryostat/furnace shield). + +This instrument was installed on the H22 guide. +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| lambda | Angs | Wavelength at monochromator | 1.911 | +| dlambda | Angs | Wavelength-spread around lambda at source | 0.03 | +| DM | Angs | d-spacing of monochromator. Use DM=0 to compute the values from the requested wavelength. | 0 | +| RV | m | Radius of vertical focussing. flat for 0 | -1 | +| powder | str | File name for powder sample description | "Na2Ca3Al2F14.laz" | +| container | str | File name for container decription in Al cryostat/furnace | "V.laz" | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/examples/ILL/ILL_H22_D1A_noenv/ILL_H22_D1A_noenv.instr) for `ILL_H22_D1A_noenv.instr`. + +--- + +*Generated for mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/examples/ILL/ILL_H22_D1B/ILL_H22_D1B.md b/mcstas-comps/examples/ILL/ILL_H22_D1B/ILL_H22_D1B.md new file mode 100644 index 000000000..92550e09d --- /dev/null +++ b/mcstas-comps/examples/ILL/ILL_H22_D1B/ILL_H22_D1B.md @@ -0,0 +1,74 @@ +# The `ILL_H22_D1B` Instrument + +*McStas: The D1B diffractometer on the H22 curved thermal guide at the ILL* + +## Identification + +- **Site:** ILL +- **Author:** FARHI Emmanuel (farhi@ill.fr) and SANCHEZ Javier (sanchez-montero@ill.fr) +- **Origin:** ILL +- **Date:** June, 2008 + +## Description + +```text +The D1B diffractometer on the H22 curved thermal guide at the ILL. + +D1B is a two-axis spectrometer dedicated to diffraction experiments requesting a +high neutron flux. A great number of experiments performed on D1B concern the +determination of magnetic structures. At small angles where the magnetic peaks +are expected, a high spatial resolution can be achieved, the FWHM reaches 0.2° +(for a sample with = 8 mm). Three pyrolitic graphite monochromators focusing +onto the sample position provide a flux of 6.5·106 n cm-2s-1. A second +wavelength with = 1.28 Å is available by using a germanium monochromator. D1B is +equipped with 3He/Xe position-sensitive detector composed of a system of +multi-electrodes with 400 cells, which span a 2 range of 80°. The detector can +be moved so that an angular range of 2°<2<130° can be covered. The specially +designed cryostat is known for its low background crucial for some experiments +with small intensity changes. Because of its high flux at = 2.52 Å together with +the large multi-detector, surface studies such as adsorbed phases as well as +real-time diffraction experiments are possible. Collecting a diffraction pattern +with sufficient statistics in minutes (1-5 min) even seconds allows in situ +studies of reaction kinetics. A fast detection of phase transitions can also be +obtained by scanning the temperature. A complete thermal variation of the +diffraction patterns (1.5 - 300 K) can be achieved in few hours (3-5h). +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| lambda | AA | mean incident wavelength. | 2.52 | +| dlambda | AA | wavelength full width. | 0.03 | +| DM | AA | Mono lattice spacing | 0 | +| Powder | str | File name for powder description, LAZ/LAU/Fullprof | "Na2Ca3Al2F14.laz" | +| RV | m | Monochromator vertical curvature, 0 for flat, -1 for automatic setting | 2.2 | +| L1 | m | Source-Monochromator distance | 0.25 | +| L2 | m | Monochromator-Sample distance | 3.0 | +| L3 | m | Sample-Detector distance | 1.500 | +| TRAS_X | m | Additional monochromator translation along X, left/righ w.r.t beam | -0 | +| TRAS_Z | m | Additional monochromator translation along Z, along guide | 0 | +| TILT | deg | Monochromator additional tilt, for rocking curves | 0 | +| THETA_M | deg | Mono takeoff angle | 22.11 | +| R_pitch | deg | Angular pitch between the absorbing blades | .42 | +| R_ri | m | Inner radius of the collimator | 0.324 | +| R_ro | m | Outer radius of the collimator | 0.419 | +| R_h | m | Height of the collimator | 0.090 | +| R_ttmin | deg | Lower scattering angle limit | -130 | +| R_ttmax | deg | Higher scattering angle limit | -2 | +| R_present | 1 | Presence flag for the radial collimator. 0: inactivate component. | 1 | +| verbose | 1 | Print DIF configuration. 0 to be quiet | 1 | +| Inc_Cryo | 1 | Cryostat incoherent fraction | 0.02 | +| Trans_Cryo | 1 | Cryostat event transmission | 0.85 | +| Trans_Spl | 1 | Sample event transmission | 0.2 | +| Inc_Spl | 1 | Sample incoherent fraction | 0.05 | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/examples/ILL/ILL_H22_D1B/ILL_H22_D1B.instr) for `ILL_H22_D1B.instr`. + +--- + +*Generated for mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/examples/ILL/ILL_H22_D1B_noenv/ILL_H22_D1B_noenv.md b/mcstas-comps/examples/ILL/ILL_H22_D1B_noenv/ILL_H22_D1B_noenv.md new file mode 100644 index 000000000..5af25d8cf --- /dev/null +++ b/mcstas-comps/examples/ILL/ILL_H22_D1B_noenv/ILL_H22_D1B_noenv.md @@ -0,0 +1,74 @@ +# The `ILL_H22_D1B_noenv` Instrument + +*McStas: The D1B diffractometer on the H22 curved thermal guide at the ILL* + +## Identification + +- **Site:** ILL +- **Author:** FARHI Emmanuel (farhi@ill.fr) and SANCHEZ Javier (sanchez-montero@ill.fr) +- **Origin:** ILL +- **Date:** June, 2008 + +## Description + +```text +The D1B diffractometer on the H22 curved thermal guide at the ILL. + +D1B is a two-axis spectrometer dedicated to diffraction experiments requesting a +high neutron flux. A great number of experiments performed on D1B concern the +determination of magnetic structures. At small angles where the magnetic peaks +are expected, a high spatial resolution can be achieved, the FWHM reaches 0.2° +(for a sample with = 8 mm). Three pyrolitic graphite monochromators focusing +onto the sample position provide a flux of 6.5·106 n cm-2s-1. A second +wavelength with = 1.28 Å is available by using a germanium monochromator. D1B is +equipped with 3He/Xe position-sensitive detector composed of a system of +multi-electrodes with 400 cells, which span a 2 range of 80°. The detector can +be moved so that an angular range of 2°<2<130° can be covered. The specially +designed cryostat is known for its low background crucial for some experiments +with small intensity changes. Because of its high flux at = 2.52 Å together with +the large multi-detector, surface studies such as adsorbed phases as well as +real-time diffraction experiments are possible. Collecting a diffraction pattern +with sufficient statistics in minutes (1-5 min) even seconds allows in situ +studies of reaction kinetics. A fast detection of phase transitions can also be +obtained by scanning the temperature. A complete thermal variation of the +diffraction patterns (1.5 - 300 K) can be achieved in few hours (3-5h). +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| lambda | AA | mean incident wavelength. | 2.52 | +| dlambda | AA | wavelength full width. | 0.03 | +| DM | AA | Mono lattice spacing | 0 | +| Powder | str | File name for powder description, LAZ/LAU/Fullprof | "Na2Ca3Al2F14.laz" | +| RV | m | Monochromator vertical curvature, 0 for flat, -1 for automatic setting | 2.2 | +| L1 | m | Source-Monochromator distance | 0.25 | +| L2 | m | Monochromator-Sample distance | 3.0 | +| L3 | m | Sample-Detector distance | 1.500 | +| TRAS_X | m | Additional monochromator translation along X, left/righ w.r.t beam | -0 | +| TRAS_Z | m | Additional monochromator translation along Z, along guide | 0 | +| TILT | deg | Monochromator additional tilt, for rocking curves | 0 | +| THETA_M | deg | Mono takeoff angle | 22.11 | +| R_pitch | deg | Angular pitch between the absorbing blades | .42 | +| R_ri | m | Inner radius of the collimator | 0.324 | +| R_ro | m | Outer radius of the collimator | 0.419 | +| R_h | m | Height of the collimator | 0.090 | +| R_ttmin | deg | Lower scattering angle limit | -130 | +| R_ttmax | deg | Higher scattering angle limit | -2 | +| R_present | 1 | Presence flag for the radial collimator. 0: inactivate component. | 1 | +| verbose | 1 | Print DIF configuration. 0 to be quiet | 1 | +| Inc_Cryo | 1 | Cryostat incoherent fraction | 0.02 | +| Trans_Cryo | 1 | Cryostat event transmission | 0.85 | +| Trans_Spl | 1 | Sample event transmission | 0.2 | +| Inc_Spl | 1 | Sample incoherent fraction | 0.05 | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/examples/ILL/ILL_H22_D1B_noenv/ILL_H22_D1B_noenv.instr) for `ILL_H22_D1B_noenv.instr`. + +--- + +*Generated for mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/examples/ILL/ILL_H22_VIVALDI/ILL_H22_VIVALDI.md b/mcstas-comps/examples/ILL/ILL_H22_VIVALDI/ILL_H22_VIVALDI.md new file mode 100644 index 000000000..304edb99f --- /dev/null +++ b/mcstas-comps/examples/ILL/ILL_H22_VIVALDI/ILL_H22_VIVALDI.md @@ -0,0 +1,49 @@ +# The `ILL_H22_VIVALDI` Instrument + +*McStas: The VIVALDI Laue diffractometer on the H22 curved thermal guide at the ILL* + +## Identification + +- **Site:** ILL +- **Author:** FARHI Emmanuel (farhi@ill.fr) +- **Origin:** ILL +- **Date:** June, 2008 + +## Description + +```text +VIVALDI (Very-Intense, Vertical-Axis Laue DIffractometer) provides a tool for +development of new diffraction experiments, and is complementary to other ILL +single-crystal diffractometers. Fields of interest for experiments on VIVALDI +include magnetism, charge density waves, high-pressure studies and structural +phase transitions. VIVALDI allows rapid preliminary investigation of new +materials, even when only small single crystals are available. The detector is +also suitable for some types of diffuse scattering experiments on a +monochromatic beam. + +VIVALDI is located at the end of the thermal guide H22. The full thermal +spectrum can be accepted without detrimental overlap of reflections for +primitive unit cells up to 25 Angs on edge. + +This model include a cryostat and container description, with a crystal sample. +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| lambda | AA | mean incident wavelength. | 3 | +| dlambda | AA | wavelength full width. | 2.2 | +| crystal | str | File name for crystal description (LAU) | "YBaCuO.lau" | +| container | str | File name for sample-container material description | "V.laz" | +| verbose | 1 | Print DIF configuration. 0 to be quiet | 1 | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/examples/ILL/ILL_H22_VIVALDI/ILL_H22_VIVALDI.instr) for `ILL_H22_VIVALDI.instr`. + +--- + +*Generated for mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/examples/ILL/ILL_H24/ILL_H24.md b/mcstas-comps/examples/ILL/ILL_H24/ILL_H24.md new file mode 100644 index 000000000..75f37ec3e --- /dev/null +++ b/mcstas-comps/examples/ILL/ILL_H24/ILL_H24.md @@ -0,0 +1,35 @@ +# The `ILL_H24` Instrument + +*McStas: The H24 curved thermal guide at the ILL* + +## Identification + +- **Site:** ILL +- **Author:** FARHI Emmanuel (farhi@ill.fr) +- **Origin:** ILL +- **Date:** April 7, 2004 + +## Description + +```text +The H24 curved thermal guide at the ILL feeding IN3, IN13, D10 and S42/Orient Express +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| m | 1 | m-value of whole guide coating. 0 absorbing, 1 for Ni, 1.2 for Ni58, 2-4 for SM | 2 | +| lambda | AA | central wavelength | 4 | +| dlambda | AA | wavelength half width. Use e.g. 0.8*lambda for white beam. | 3.9 | +| mip | 1 | m-value of in-pile guide coating | 0 | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/examples/ILL/ILL_H24/ILL_H24.instr) for `ILL_H24.instr`. + +--- + +*Generated for mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/examples/ILL/ILL_H25/ILL_H25.md b/mcstas-comps/examples/ILL/ILL_H25/ILL_H25.md new file mode 100644 index 000000000..c4987a526 --- /dev/null +++ b/mcstas-comps/examples/ILL/ILL_H25/ILL_H25.md @@ -0,0 +1,35 @@ +# The `ILL_H25` Instrument + +*McStas: The H25 supermirror curved thermal guide at the ILL* + +## Identification + +- **Site:** ILL +- **Author:** Emmanuel Farhi +- **Origin:** ILL (France) +- **Date:** 2006 + +## Description + +```text +The H25 supermirror curved thermal guide at the ILL feeding S18, D23 and IN22 +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| m | 1 | m-value of whole guide coating. 0 absorbing, 1 for Ni, 1.2 for Ni58, 2-4 for SM | 2 | +| lambda | AA | central wavelength | 4 | +| dlambda | AA | wavelength half width. Use e.g. 0.8*lambda for white beam. | 3.9 | +| mip | 1 | m-value of in-pile guide coating | 2 | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/examples/ILL/ILL_H25/ILL_H25.instr) for `ILL_H25.instr`. + +--- + +*Generated for mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/examples/ILL/ILL_H25_IN22/ILL_H25_IN22.md b/mcstas-comps/examples/ILL/ILL_H25_IN22/ILL_H25_IN22.md new file mode 100644 index 000000000..6cc770118 --- /dev/null +++ b/mcstas-comps/examples/ILL/ILL_H25_IN22/ILL_H25_IN22.md @@ -0,0 +1,56 @@ +# The `ILL_H25_IN22` Instrument + +*McStas: IN22 thermal triple-axis machine (TAS) on guide H25 with sample* + +## Identification + +- **Site:** ILL +- **Author:** Emmanuel Farhi +- **Origin:** ILL (France) +- **Date:** 2006 + +## Description + +```text +This instrument is a model of IN22@ILL with PG002 monochromator/analyzer, +installed at the end of the H25 supermirror thermal guide. +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| m | 1 | m-value of guide coating (H14/H142) | 2 | +| KI | Angs-1 | central wavevector for incoming neutrons | 3.84 | +| QM | Angs-1 | wavevector transfer modulus at the sample | 1.0 | +| EN | meV | energy transfer at the sample | 0.0 | +| verbose | | toggle verbose mode | 1 | +| WM | m | Width of monochromator | 0.15 | +| HM | m | Height of monochromator | 0.12 | +| NHM | 1 | Number of vertical slabs composing the monochromator | 1 | +| NVM | 1 | Number of horizontal slabs composing the monochromator | 9 | +| RMV | m | Monochromator vertical curvature, 0 for flat, -1 for automatic setting | -1 | +| WA | m | Width of analyzer | 0.20 | +| HA | m | Height of analyzer | 0.10 | +| NHA | 1 | Number of horizontal slabs composing the analyzer | 11 | +| NVA | 1 | Number of vertical slabs composing the analyzer | 3 | +| RAV | m | Analyzer vertical curvature, 0 for flat, -1 for automatic setting | -1 | +| RAH | m | Analyzer horizontal curvature, 0 for flat, -1 for automatic setting | -1 | +| SM | 1:left, -1:right | Scattering sense of beam from Monochromator | -1 | +| SS | 1:left, -1:right | Scattering sense of beam from Sample | 1 | +| SA | 1:left, -1:right | Scattering sense of beam from Analyzer | -1 | +| L1 | m | Source-Monochromator distance. Contains 1st Collimator | 10.0 | +| L2 | m | Monochromator-Sample distance. Contains 2nd Collimator | 1.7 | +| L3 | m | Sample-Analyzer distance. Contains 3rd Collimator | 1.0 | +| L4 | m | Analyzer-detector distance. Contains 4th Collimator | 0.8 | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/examples/ILL/ILL_H25_IN22/ILL_H25_IN22.instr) for `ILL_H25_IN22.instr`. +- The IN22 TAS at the ILL + +--- + +*Generated for mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/examples/ILL/ILL_H5/ILL_H5.md b/mcstas-comps/examples/ILL/ILL_H5/ILL_H5.md new file mode 100644 index 000000000..baf1899f1 --- /dev/null +++ b/mcstas-comps/examples/ILL/ILL_H5/ILL_H5.md @@ -0,0 +1,50 @@ +# The `ILL_H5` Instrument + +*McStas: The full H5 cold guide at the ILL, with IN14, D16, Super-Adam, IN15, D22 +This is the geometry before the major H5 guide hall upgrade (up to 2013).* + +## Identification + +- **Site:** ILL +- **Author:** FARHI Emmanuel (farhi@ill.fr) +- **Origin:** ILL +- **Date:** May, 2011 + +## Description + +```text + +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| lambda | | | 5 | +| dlambda | | | 4.5 | +| IN14_lambda | | | 4.2 | +| IN16_lambda | | | 6.3 | +| D16_lambda | | | 5.6 | +| SADAM_lambda | | | 4.4 | +| IN15_lambda | | | 6.5 | +| D22_lambda | | | 4.5 | +| D22_collimation | | | 2 | +| IN14_sample | | | "Rb_liq_coh.sqw" | +| IN16_sample | | | "Rb_liq_coh.sqw" | +| D16_sample | | | "H2O_liq.qSq" | +| SADAM_sample | | | "SiO2_quartza.laz" | +| D22_sample | | | "H2O_liq.qSq" | +| IN14_RMV | | | -1 | +| IN16_RMV | | | -1 | +| D16_RMV | | | -1 | +| SADAM_RMV | | | -1 | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/examples/ILL/ILL_H5/ILL_H5.instr) for `ILL_H5.instr`. + +--- + +*Generated for mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/examples/ILL/ILL_H512_D22/ILL_H512_D22.md b/mcstas-comps/examples/ILL/ILL_H512_D22/ILL_H512_D22.md new file mode 100644 index 000000000..1e8678bfe --- /dev/null +++ b/mcstas-comps/examples/ILL/ILL_H512_D22/ILL_H512_D22.md @@ -0,0 +1,40 @@ +# The `ILL_H512_D22` Instrument + +*McStas: The H512 cold guide at the ILL, with D22* + +## Identification + +- **Site:** ILL +- **Author:** FARHI Emmanuel (farhi@ill.fr) +- **Origin:** ILL +- **Date:** May, 2011 + +## Description + +```text +This model describes the H512 cold guide at the ILL, with D22. + +The D22 Large dynamic range small-angle diffractometer +is fully simulated. A sample can be specified (liquid), +with monitoring of the scattering in angular (diffraction) and energy modes +(for spectroscopy). +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| lambda | Angs | central wavelength band for guide illumination and D22 velocity selector setting wavelength | 4.5 | +| dlambda | Angs | half width of guide wavelength band | .45 | +| D22_collimation | | | 2 | +| D22_sample | string | D22 liquid/powder/amorphous sample | "H2O_liq.qSq" | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/examples/ILL/ILL_H512_D22/ILL_H512_D22.instr) for `ILL_H512_D22.instr`. + +--- + +*Generated for mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/examples/ILL/ILL_H53/ILL_H53.md b/mcstas-comps/examples/ILL/ILL_H53/ILL_H53.md new file mode 100644 index 000000000..c8aba9060 --- /dev/null +++ b/mcstas-comps/examples/ILL/ILL_H53/ILL_H53.md @@ -0,0 +1,35 @@ +# The `ILL_H53` Instrument + +*McStas: The H53 curved cold guide at the ILL* + +## Identification + +- **Site:** ILL +- **Author:** FARHI Emmanuel (farhi@ill.fr) +- **Origin:** ILL +- **Date:** April 7, 2004 + +## Description + +```text +The H53 curved cold guide at the ILL feeding IN14, IN16, D16, ADAM, CRYO-EDM +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| m | 1 | m-value of whole guide coating. 0 absorbing, 1 for Ni, 1.2 for Ni58, 2-4 for SM | 1.2 | +| lambda | AA | central wavelength | 10 | +| dlambda | AA | wavelength half width. Use e.g. 0.8*lambda for white beam | 9.9 | +| mip | 1 | m-value of in-pile guide coating | 1.2 | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/examples/ILL/ILL_H53/ILL_H53.instr) for `ILL_H53.instr`. + +--- + +*Generated for mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/examples/ILL/ILL_H53_D16/ILL_H53_D16.md b/mcstas-comps/examples/ILL/ILL_H53_D16/ILL_H53_D16.md new file mode 100644 index 000000000..4f3fc80a3 --- /dev/null +++ b/mcstas-comps/examples/ILL/ILL_H53_D16/ILL_H53_D16.md @@ -0,0 +1,53 @@ +# The `ILL_H53_D16` Instrument + +*McStas: The D16 diffractometer/reflectometer on the H53 curved cold guide at the ILL* + +## Identification + +- **Site:** ILL +- **Author:** FARHI Emmanuel (farhi@ill.fr) +- **Origin:** ILL +- **Date:** Oct 7, 2008 + +## Description + +```text +The H53 (120 x 60 mm2) curved cold guide feeds D16 (after IN14, and IN16). +D16 is a two-circle diffractometer. The primary white beam is reflected by a +focussing pyrolytic graphite monochromator (122 x 60 mm2 with mosaicity 0.7 +deg) providing an important flux at the sample. The monochromator housing has +two beam holes at take-off angles of 90 deg and 115 deg, corresponding to 4.7 +Angs and 5.6 Angs beams and incorporates the slit systems. +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| lambda | Angs | Wavelength at monochromator, computed from DM and THETA_M if left as 0. | 4.7 | +| DM | Angs | d-spacing of monochromator, computed from lambda and THETA_M if left as 0. | 3.355 | +| dlambda | AA | wavelength half width. | 0.05 | +| Powder | str | File name for powder description. | "Na2Ca3Al2F14.laz" | +| RV | m | Monochromator vertical curvature, 0 for flat, -1 for automatic setting | -1 | +| L1 | m | Guide-Monochromator distance | 0.1 | +| L2 | m | Monochromator-Sample distance | 2.8 | +| L3 | m | Sample-Detector distance | 1.0 | +| THETA_M | deg | Monochromator take-off angle, computed from lambda and DM if left as 0. | 44.46 | +| TwoTheta | deg | Detector rotation (in plane) | 0 | +| RadiusDet | m | Detector entrance window radius | 0.36 | +| DetEthick | m | Detector entrance window thickness | .01 | +| DetEgap | m | Detector entrance window gap to flat detector inner window | 0.08 | +| DetVthick | m | Detector active volume thickness | 5e-3 | +| verbose | 1 | Print DIF configuration. 0 to be quiet | 1 | +| TILT | deg | Monochromator additional tilt, for rocking curves | 0 | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/examples/ILL/ILL_H53_D16/ILL_H53_D16.instr) for `ILL_H53_D16.instr`. +- The D16 diffractometer at the ILL + +--- + +*Generated for mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/examples/ILL/ILL_H53_IN14/ILL_H53_IN14.md b/mcstas-comps/examples/ILL/ILL_H53_IN14/ILL_H53_IN14.md new file mode 100644 index 000000000..660adb35a --- /dev/null +++ b/mcstas-comps/examples/ILL/ILL_H53_IN14/ILL_H53_IN14.md @@ -0,0 +1,71 @@ +# The `ILL_H53_IN14` Instrument + +*McStas: IN14 cold triple-axis machine (TAS) on guide H53 with sample* + +## Identification + +- **Site:** ILL +- **Author:** Emmanuel Farhi +- **Origin:** ILL (France) +- **Date:** 2006 + +## Description + +```text +IN14 is a high flux cold neutron three-axis spectrometer situated on a straight +58Ni coated guide looking at the horizontal cold source. IN14 is equipped with +a vertically curved (002) pyrolytic graphite monochromator. A polarising bender +can be inserted after the monochromator, for polarised neutron work. + +The sample, analyser and detector units are mounted on standard Tanzboden +modules and the distance between these units may be changed if necessary. For +sample positioning, two motorized arcs (+/- 20deg), and two horizontal +translation tables (+/- 10 mm) are available. Soller collimators can be easily +inserted before and after the sample, and before the detector. + +Three horizontally focusing analysers are available: (002) pyrolytic graphite, +bent Si(111), and Heusler (111) for polarised neutrons. + +In this TAS configuration, PG002 is used as monochromator analyser, +with a single type detector. +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| KI | Angs-1 | central wavevector for incoming neutrons | 1.55 | +| QM | Angs-1 | wavevector transfer modulus at the sample | 1.0 | +| EN | meV | energy transfer at the sample | 0.0 | +| verbose | | toggle verbose mode | 1 | +| WM | m | Width of monochromator | 0.15 | +| HM | m | Height of monochromator | 0.12 | +| NHM | 1 | Number of vertical slabs composing the monochromator | 1 | +| NVM | 1 | Number of horizontal slabs composing the monochromator | 9 | +| RMV | m | Monochromator vertical curvature, 0 for flat, -1 for automatic setting | -1 | +| DM | | | 3.355 | +| WA | m | Width of analyzer | 0.20 | +| HA | m | Height of analyzer | 0.10 | +| NHA | 1 | Number of horizontal slabs composing the analyzer | 11 | +| NVA | 1 | Number of vertical slabs composing the analyzer | 1 | +| RAV | m | Analyzer vertical curvature, 0 for flat, -1 for automatic setting | 0 | +| RAH | m | Analyzer horizontal curvature, 0 for flat, -1 for automatic setting | -1 | +| DA | AA | Analyzer lattice spacing | 3.355 | +| SM | 1:left, -1:right | Scattering sense of beam from Monochromator | 1 | +| SS | 1:left, -1:right | Scattering sense of beam from Sample | -1 | +| SA | 1:left, -1:right | Scattering sense of beam from Analyzer | 1 | +| L1 | m | Source-Monochromator distance. Contains 1st Collimator | 7.0 | +| L2 | m | Monochromator-Sample distance. Contains 2nd Collimator | 2.12 | +| L3 | m | Sample-Analyzer distance. Contains 3rd Collimator | 1.37 | +| L4 | m | Analyzer-detector distance. Contains 4th Collimator | 0.7 | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/examples/ILL/ILL_H53_IN14/ILL_H53_IN14.instr) for `ILL_H53_IN14.instr`. +- The IN14 TAS at the ILL + +--- + +*Generated for mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/examples/ILL/ILL_H5_new/ILL_H5_new.md b/mcstas-comps/examples/ILL/ILL_H5_new/ILL_H5_new.md new file mode 100644 index 000000000..2f177f00b --- /dev/null +++ b/mcstas-comps/examples/ILL/ILL_H5_new/ILL_H5_new.md @@ -0,0 +1,75 @@ +# The `ILL_H5_new` Instrument + +*McStas: The full H5 new cold guide at the ILL, with ThALES, D16, Super-Adam, IN15 +(sample only), D22WASP and CryoEDM +This is a proposed geometry for major H5 guide hall upgrade (since 2013). +The exact adopted H5 geometry may be actually different.* + +## Identification + +- **Site:** ILL +- **Author:** FARHI Emmanuel (farhi@ill.fr) +- **Origin:** ILL +- **Date:** May, 2011 + +## Description + +```text +This model decribes the full new H5 cold guide at the ILL, with ThALES, WASP, D16, +Super-Adam, IN15, D22. + +H511:The IN15 Spin-echo spectrometer +is simulated with an incoming polarized beam, but not with a full spin-echo +description. Sample is Vanadium +H512:The D22 Large dynamic range small-angle diffractometer +is fully simulated +H521:The D16 Small momentum transfer diffractometer D16 is realistic +H521:The SuperADAM reflectometer is used in low angle diffraction mode. +H522: The WASP Spin-echo spectrometer +is simulated with an incoming polarized beam, but not with a full spin-echo +description. Sample is Vanadium +H523:The CryoEDM with its polarized beam +H53: The ThALES Cold neutron three-axis spectrometer IN14 + +For each instrument, a sample can be specified (liquid/powder/amorphous), +with monitoring of the scattering in angular (diffraction) and energy modes +(for spectroscopy). +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| lambda | | central wavelength band for guide illumination [Angs] | 5 | +| dlambda | | half width of guide wavelength band [Angs] | 4.5 | +| ThALES_lambda | | ThALES monochromator setting wavelength. Usual 2.4 and 4.2 [Angs] | 4.2 | +| WASP_lambda | | IN16 monochromator setting wavelength. Usual 3.3 and 6.3 [Angs] | 6.3 | +| D16_lambda | | D16 monochromator setting wavelength. Usual 4.7 and 5.6 [Angs] | 5.6 | +| SADAM_lambda | | SuperADAM monochromator setting wavelength. Usual 4.4 [Angs] | 4.4 | +| IN15_lambda | | IN15 velocity selector setting wavelength [Angs] | 6.5 | +| D22_lambda | | D22 velocity selector setting wavelength [Angs] | 4.5 | +| D22_collimation | | D22 collimation length and sample-detector distance [m] | 2 | +| ThALES_sample | | ThALES liquid/powder/amorphous sample [string] | "Rb_liq_coh.sqw" | +| WASP_sample | | | "Rb_liq_coh.sqw" | +| D16_sample | | D16 liquid/powder/amorphous sample [string] | "H2O_liq.qSq" | +| SADAM_sample | | SuperADAM liquid/powder/amorphous sample [string] | "SiO2_quartza.laz" | +| D22_sample | | D22 liquid/powder/amorphous sample [string] | "H2O_liq.qSq" | +| ThALES_RMV | | | -1 | +| D16_RMV | | | -1 | +| SADAM_RMV | | | -1 | +| ThALES_RMH | | | -1 | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/examples/ILL/ILL_H5_new/ILL_H5_new.instr) for `ILL_H5_new.instr`. +- The NoteDPT11 at the ILL +- The DPT/SMAE 11/070 WASP design report +- The DPT/SMAE 10/271 H5 design report +- Daily notes from K. Andersen about the H5 project +- Mirotron drawing MR-0656-000 for the IN15 V-mirror geometry + +--- + +*Generated for mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/examples/ILL/ILL_H8_IN1/ILL_H8_IN1.md b/mcstas-comps/examples/ILL/ILL_H8_IN1/ILL_H8_IN1.md new file mode 100644 index 000000000..22f25a1f0 --- /dev/null +++ b/mcstas-comps/examples/ILL/ILL_H8_IN1/ILL_H8_IN1.md @@ -0,0 +1,87 @@ +# The `ILL_H8_IN1` Instrument + +*McStas: Hot neutron three-axis spectrometer IN1@ILL* + +## Identification + +- **Site:** ILL +- **Author:** Emmanuel Farhi +- **Origin:** ILL (France) +- **Date:** 2006 + +## Description + +```text +IN8 is installed on beamtube H10 (diameter F = 200 mm). + +IN1 works in a time-sharing mode. This means that the same monochromator is +also used by the Be-filter spectrometer IN1-BeF and by the liquids +diffractometer D4. Changing over between the three different instruments can be +done without difficulty in about two hours. + +The monochromator unit carries three different vertically focussing +monochromators built from copper single crystals (available reflecting planes +Cu(200), Cu(220) and Cu(331)). The exchange of the monochromator planes is +controlled by the instrument computer. The radius of curvature can be +automatically adjusted as function of reflected energy in order to maintain +maximal flux at the sample position in the course of energy scans. The +scattering angles on the monochromator cover a range of 10<2theta_m <90 +allowing for scanning neutron energies from 13 meV to more than 1 eV.. + +The IN1-TAS spectrometer: the scattering angles at the sample and the analyser +can be changed in the intervals -115<2theta_S<115 and -120<2theta_S<120. Three +different analysers (PG(002), Cu(200), Cu(220)) can be installed in order to +optimise intensity and resolution for a given experiment. Various resonance +absorption filters (e.g. Er, Sm, Hf ...) can be used to suppress higher order +contaminations from the incident beam or in the scattered beam. An oriented +Pyrolytic Graphite filter is designed for experiments eventually demanding +thermal neutron energy range. + +In this TAS configuration, Cu220 are used as monochromator and analyser, +with a single type detector. +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| KF | Angs-1 | Outgoing neutron wavevector | 10 | +| KI | Angs-1 | Incoming neutron wavevector | 0 | +| QM | Angs-1 | Wavevector transfer in crystal | 0.5 | +| EN | meV | Energy transfer in crystal | 0 | +| verbose | 1 | print TAS configuration. 0 to be quiet | 1 | +| WM | m | Width of monochromator | 0.18 | +| HM | m | Height of monochromator | 0.20 | +| RMH | m | Monochromator horizontal curvature, 0 for flat, -1 for automatic setting | -1 | +| RMV | m | Monochromator vertical curvature, 0 for flat, -1 for automatic setting | -1 | +| DM | Angs | Monochromator d-spacing | 1.278 | +| NHM | 1 | Number of horizontal slabs composing the monochromator | 15 | +| NVM | 1 | Number of vertical slabs composing the monochromator | 15 | +| WA | m | Width of analyzer | 0.16 | +| HA | m | Height of analyzer | 0.12 | +| RAH | m | Analyzer horizontal curvature, 0 for flat, -1 for automatic setting | -1 | +| RAV | m | Analyzer vertical curvature, 0 for flat, -1 for automatic setting | -1 | +| DA | Angs | Analyzer d-spacing | 1.278 | +| NHA | 1 | Number of horizontal slabs composing the analyzer | 15 | +| NVA | 1 | Number of vertical slabs composing the analyzer | 15 | +| L1 | m | Source-Monochromator distance. Contains 1st Collimator of length 5.34 | 7 | +| ALF1 | arc min | Horizontal collimation from Source to Monochromator | 120 | +| ALF2 | arc min | Horizontal collimation from Monochromator to Sample A | 120 | +| ALF3 | arc min | Horizontal collimation from Sample to Analyzer | 120 | +| ALF4 | arc min | Horizontal collimation from Analyzer to Detector | 120 | +| BET1 | arc min | Vertical collimation from Source to Monochromator | 120 | +| BET2 | arc min | Vertical collimation from Monochromator to Sample A | 120 | +| BET3 | arc min | Vertical collimation from Sample to Analyzer | 120 | +| BET4 | arc min | Vertical collimation from Analyzer to Detector | 120 | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/examples/ILL/ILL_H8_IN1/ILL_H8_IN1.instr) for `ILL_H8_IN1.instr`. +- Rescal for Matlab at http://www.ill.eu/instruments-support/computing-for-science/cs-software/all-software/matlab-ill/ +- Restrax at http://omega.ujf.cas.cz/restrax/ + +--- + +*Generated for mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/examples/ILL/ILL_IN13/ILL_IN13.md b/mcstas-comps/examples/ILL/ILL_IN13/ILL_IN13.md new file mode 100644 index 000000000..537cff423 --- /dev/null +++ b/mcstas-comps/examples/ILL/ILL_IN13/ILL_IN13.md @@ -0,0 +1,92 @@ +# The `ILL_IN13` Instrument + +*McStas: IN13 Thermal neutron backscattering spectrometer (without guide)* + +## Identification + +- **Site:** ILL +- **Author:** E. Farhi and A. Dennison +- **Origin:** ILL +- **Date:** March 25, 2015 + +## Description + +```text +IN13 Thermal neutron backscattering spectrometer (without guide) + +Because of its high energy resolution and high momentum transfer the +backscattering spectrometer IN13 is particularly useful for the microscopic +study of single particle motions (jump reorientation, rotational and +translational diffusion, tunnelling) observed by incoherent neutron scattering. + +The high energy resolution of the order of a few μeV together with the +availability of high momentum transfer (Q<4.9 Å-1) makes the spectrometer IN13 +particularly useful for the microscopic study of single particle motions (jump +reorientation, rotational and translational diffusion, tunnelling) observed by +incoherent neutron scattering. The instrument partly fills the gap of (Q, ω) +space between IN10 and IN5. + +Temperature gradient monochromator +The monochromator and analyser CaF2(422) crystals are oriented in near +backscattering geometry thereby achieving an energy resolution of a few μeV. The +energy of the incident neutrons is scanned by variation of the temperature of +the monochromator at a fixed Bragg-angle. In an optional mode the 10 mm thick +monochromator crystals are kept at a fixed temperature gradient and energy +variation is performed by scanning the monochromator Bragg-angle. This achieves +an increased flux at the sample position and slightly increases the energy +resolution width. + +A vertically curved Graphite deflector focusses the beam onto +the sample. The scattered neutrons are energy analysed by a set of seven +spherically curved composite crystal analysers, each covering a large solid +angle of 0.18 sr. An additional three circular analysers centred around the +transmitted beam cover the small-angle region. + +The neutron time-of-flight is used to suppress (i) the background of neutrons +scattered directly from the sample into the detectors and (ii) second order +contamination. The neutrons are counted with a cylindrical multidetector +consisting of 35 3He detector tubes, arranged in staggered circular rows. The +small Q range from 0.2 to 0.8 Å-1 is covered by a 3He Position Sensitive +Detector (PSD) arranged to see the circular analysers in exact backscattering. + +Monochromator: CaF2(422) +temperature range: -125 < ΔE/µeV < 150 +angular range: 81° < θM < 89° +incident energy: 16.45 meV (TM≥25°C) +incident wavelength: 2.23 Å +energy resolution: 8 µeV + +Deflector: PG(002) + +Sample: here incoherent elastic scatterer (Vanadium) +sample size 3.5 x 3.5 cm2 +flux at sample 2e4 n cm-2 s-1 (when fed from H24, NOT in this model) + +Analyser: CaF2(422) +Q-range: 0.2 < Q/Å-1 < 4.9 +Q-resolution: ΔQ/Å-1 < 0.1 +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| RMV | m | monochromator vertical curvature. Use 0=flat, -1=auto. | 0 | +| RDV | m | deflector vertical curvature. Use 0=flat, -1=auto. | 4.6 | +| RDH | m | deflector horizontal curvature. Use 0=flat, -1=auto. | 0 | +| TM | K | monochromator temperature, from 77 to 500 K | 301 | +| LMD | m | monochromator-deflector distance | 1.8 | +| mos_ana | arcmin | analyser mosaic | 2 | +| CaF2mos | arcmin | monochromator mosaic | 10 | +| gW | | | 0.030 | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/examples/ILL/ILL_IN13/ILL_IN13.instr) for `ILL_IN13.instr`. +- The IN3 TAS at the ILL + +--- + +*Generated for mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/examples/ILL/ILL_IN4/ILL_IN4.md b/mcstas-comps/examples/ILL/ILL_IN4/ILL_IN4.md new file mode 100644 index 000000000..0523a3f2d --- /dev/null +++ b/mcstas-comps/examples/ILL/ILL_IN4/ILL_IN4.md @@ -0,0 +1,93 @@ +# The `ILL_IN4` Instrument + +*McStas: The IN4 thermal Time-of-Flight spectrometer at the ILL (H12 tube).* + +## Identification + +- **Site:** ILL +- **Author:** Emmanuel Farhi +- **Origin:** ILL (France) +- **Date:** March 5th 2015. + +## Description + +```text +IN4C is a high-flux time-of-flight spectrometer used for the study of excitations +in condensed matter. It works in the thermal neutron energy range (10-100 meV). + +Primary spectrometer + +The main components of the beam conditioning part are the two background +choppers, the double curvature mono-chromator with four faces and the Fermi +chopper. The background choppers are rapidly pulsating beam shutters which act +as a low-pass filter. Thus they eliminate from the beam most of the fast +neutrons and gamma rays that would give background noise in the spectra. The +modular shielding encloses the background choppers in separate compartments in +order to cut off these undesired neutrons as early as possible. A suitable +energy is selected from the thermal neutron spectrum with the crystal +monochromator. The monochromator, an assembly of 55 crystal pieces, +concentrates the divergent incident beam onto a small area at the sample +position. The full use of the available solid angle gives a high incident +flux. The vertical curvature is fixed, and the horizontal +variable curvature of the monochromator is essential in controlling +the time and space focussing conditions for optimal performance (see H. Mutka, +Nucl. Instr. and Meth. A 338 (1994) 144). The Fermi chopper rotates at speeds +of up to 40000 rpm. It transmits short neutron pulses (10 ... 50 µs) to the +sample. The time-of-flight of neutrons between the chopper and the sample (1 +... 5 ms) can be measured by using precise electronic circuitry. +A sapphire (Al2O3) filter can be inserted in the beam to remove the fast neutrons +background. + +Monochromators: +PG 002 DM=3.355 AA (Highly Oriented Pyrolythic Graphite) +PG 004 DM=1.677 AA (used for lambda=1.1) +PG 006 DM=1.118 AA +Cu 220 DM=1.278 AA +Cu 111 DM=2.095 AA +Take-off: 39-65 deg +flux at sample: 5e5 n/s/cm2 (at 1.1 Angs) + +Secondary spectrometer + +The sample environment is designed to accommodate standard +cryostats and furnaces. A radial collimator around the sample position is used +to cut the scattering from the sample environment. The secondary flight-path +is in vacuum to avoid parasitic scattering of the transmitted neutrons. The +detector bank covers scattering angles of up to 120°. In addition to the 3He +detector tubes (length 300 mm, width 30 mm, elliptical section, pressure 6 +bar) a 3He filled multidetector (eight sectors with 12 radial cells each; +outer diameter Phi 60 cm) will allow us to observe forward scattering. The +time-of-flight spectra measured at various angles are further treated in order +to obtain the scattering function S(Q,w) using e.g. LAMP. + +In this model, the sample is a cylindrical liquid/powder/glass scatterer +surrounded by a container and an Al cryostat. +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| lambda | Angs | wavelength | 2.2 | +| dlambda | Angs | wavelength HALF spread at source | 0.1 | +| DM | Angs | monochromator d-spacing | 3.355 | +| ETAM | arcmin | monochromator mosaic FWHM | 35 | +| RMH | m | Monochromator horizontal curvature. Use -1 for auto. | -1 | +| ratio | 1 | Disk Chopper ratio (nu=nu_FC/ratio) | 4 | +| dE | meV | Inelastic energy for time focusing | 0 | +| Sapphire_present | 1 | Flag, when 1 the Al2O3 filter is active | 1 | +| sample_coh | str | Sample coherent dynamic structure factor (.sqw) or NULL | "Dirac2D.sqw" | +| sample_inc | str | Sample incoherent dynamic structure factor (.sqw) or NULL | "NULL" | +| order | 1 | The number of multiple orders at the monochromator | 1 | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/examples/ILL/ILL_IN4/ILL_IN4.instr) for `ILL_IN4.instr`. +- H. Mutka, Nucl. Instr. and Meth. A 338 (1994) 144 +- http://www.ill.eu/fr/instruments-support/instruments-groups/instruments/in4c + +--- + +*Generated for mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/examples/ILL/ILL_IN5/ILL_IN5.md b/mcstas-comps/examples/ILL/ILL_IN5/ILL_IN5.md new file mode 100644 index 000000000..d3dfe72a6 --- /dev/null +++ b/mcstas-comps/examples/ILL/ILL_IN5/ILL_IN5.md @@ -0,0 +1,46 @@ +# The `ILL_IN5` Instrument + +*McStas: The IN5B instrument: chopper system + sample + PSD and tof detector* + +## Identification + +- **Site:** ILL +- **Author:** E. Farhi, J. Ollivier, Celia Castan Guerrero +- **Origin:** ILL +- **Date:** Jan 2004-2009 + +## Description + +```text +The IN5@ILL TOF spectrometer from chopper system to final detector, with sample. +The detector model includes Fe housing and tube cross talk absorbing masks +with angle restriction (neutrons that scatter in Fe in front of a tube and +enter a different tube are absorbed). This model does not include the H16 guide. +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| lambda | AA | mean incident wavelength | 4.5 | +| dlambda | AA | wavelength half width. | 0.05 | +| speed | rpm | chopper speed (60*frequency) | 8500 | +| ratio | 1 | velocity of chopper3 = velocity of chopper1 * ratio | 0.5 | +| housing | string | material used as detector housing. Use 0 or NULL for none. | "Fe.laz" | +| coh | string | sample coherent data file or NULL. Use powder LAZ/LAU or SQW file. | "Y3Fe5O12_YIG.laz" | +| inc | string | sample incoherent Sqw data file or NULL | "NULL" | +| thickness | m | thickness of sample. 0=filled | 0 | +| height | m | height of sample. 0=sphere | 0.025 | +| radius | m | radius of sample (outer). | 0.005 | +| order | 1 | order for scattering in sample. O=all, 1=single | 0 | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/examples/ILL/ILL_IN5/ILL_IN5.instr) for `ILL_IN5.instr`. +- The IN5@ILL cold time of flight instrument + +--- + +*Generated for mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/examples/ILL/ILL_IN5_Spots/ILL_IN5_Spots.md b/mcstas-comps/examples/ILL/ILL_IN5_Spots/ILL_IN5_Spots.md new file mode 100644 index 000000000..a2ffe726c --- /dev/null +++ b/mcstas-comps/examples/ILL/ILL_IN5_Spots/ILL_IN5_Spots.md @@ -0,0 +1,52 @@ +# The `ILL_IN5_Spots` Instrument + +*McStas: The IN5B instrument: chopper system + sample + PSD and tof detector, with special resolution options. +In this version equipped with the Spot_sample from SNS, useful for resolution considerations.* + +## Identification + +- **Site:** ILL +- **Author:** E. Farhi, J. Ollivier, Celia Castan Guerrero, edits by P. Willendrup +- **Origin:** ILL +- **Date:** September 2018 + +## Description + +```text +The IN5@ILL TOF spectrometer from chopper system to final detector, with sample. +The detector model includes Fe housing and tube cross talk absorbing masks +with angle restriction (neutrons that scatter in Fe in front of a tube and +enter a different tube are absorbed). This model does not include the H16 guide. +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| lambda | AA | mean incident wavelength | 4.5 | +| dlambda | AA | wavelength half width. | 0.05 | +| speed | rpm | chopper speed (60*frequency) | 8500 | +| ratio | 1 | velocity of chopper3 = velocity of chopper1 * ratio | 0.5 | +| housing | string | material used as detector housing. Use 0 or NULL for none. | "Fe.laz" | +| coh | string | sample coherent data file or NULL. Use powder LAZ/LAU or SQW file. | "Y3Fe5O12_YIG.laz" | +| inc | string | sample incoherent Sqw data file or NULL | "NULL" | +| thickness | m | thickness of sample. 0=filled | 0 | +| height | m | height of sample. 0=sphere | 0.025 | +| radius | m | radius of sample (outer). | 0.005 | +| order | 1 | order for scattering in sample. O=all, 1=single | 0 | +| wspot | meV | energy of dirac resolution spots | 1 | +| ttspot | deg | direction of dirac resolution spots | 45 | +| nspots | 1 | number of direc resolution spots | 0 | +| RESO | 1 | flag to indicate constant Q-e dirac grid ala IN4 model | 1 | +| RECALC | 1 | flag to indicate if RESO table needs to be re-caclulated | 0 | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/examples/ILL/ILL_IN5_Spots/ILL_IN5_Spots.instr) for `ILL_IN5_Spots.instr`. +- The IN5@ILL cold time of flight instrument + +--- + +*Generated for mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/examples/ILL/ILL_IN6/ILL_IN6.md b/mcstas-comps/examples/ILL/ILL_IN6/ILL_IN6.md new file mode 100644 index 000000000..c0471ce25 --- /dev/null +++ b/mcstas-comps/examples/ILL/ILL_IN6/ILL_IN6.md @@ -0,0 +1,80 @@ +# The `ILL_IN6` Instrument + +*McStas: The IN6 Time-of-Flight simulation at the ILL (instrument only).* + +## Identification + +- **Site:** ILL +- **Author:** Emmanuel Farhi +- **Origin:** ILL (France) +- **Date:** 17th Jan 2005. + +## Description + +```text +IN6 is a time focussing time-of-flight spectrometer designed for quasielastic and +inelastic scattering for incident wavelengths in the range of 4 to 6 Angs. + +An intense beam is extracted from the H15 guide by a vertically focussing +monochromator array. It consists of three composite pyrolytic graphite +monochromators using the full height (20 cm) of the guide and focussing the beam +at the sample position. In order to minimise the interference with the +subsequent instruments, the monochromator can deliver only four wavelengths: +4.1; 4.6; 5.1; and 5.9 Angs. The second order reflection from the graphite +monochromator is removed by a beryllium-filter cooled at liquid nitrogen +temperature. +To achieve the time-focussing condition, the beam is pulsed by a Fermi chopper. +It has a small slot length to ensure a good transmission. The normal distance +between the Fermi chopper and the sample is 38 cm. To prevent frame-overlap when +the chopper is rotating faster than 7500 rpm, a suppressor chopper is placed +before the Fermi chopper and rotates in phase with the latter. + +The secondary spectrometer consists first of an evacuated sample area. The +detector bank is entirely covered with detector boxes, thus avoiding the +inconvenience of moving the counters. + +This instrument model contains a cold source a triple monochromator +(using the GROUP), two Fermi Choppers (including one background chopper), a +liquid sample handling coherent and incoherent processes (elastic and inelastic) +with multiple scattering, customized monitors, and the SPLIT mechanism to +improve the statistics. The H15 guide is not described in this model. +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| lambda | Angs | wavelength within 4.14\|4.6\|5.12\|5.92 | 4.14 | +| dlambda | Angs | wavelength HALF spread. default is 0.075 | 0.075 | +| SPEED | rpm | Fermi chopper speed. -1=auto, 0=stopped in open pos. | -1 | +| M1 | coder values | monochromator motor 1 position. -1=auto | -1 | +| M2 | coder values | monochromator motor 2 positinn. -1=auto | -1 | +| M3 | coder values | monochromator motor 3 position. -1=auto | -1 | +| MONITOR | something like time in s | monitor preset | 1 | +| CHA_WIDTH | us | channel width. -1=auto | -1 | +| TOF_DELAY | us | TOF delay. -1=auto | -1 | +| TOF_CHA_RESOL | 1 | number of channels. | 128 | +| ELPEAK | 1 | elastic peak channel. -1=auto | -1 | +| RATIO | 1 | Suppressor speed ratio. -1=no suppressor. | 1 | +| mFC | 1 | super mirror FermiChopper coating m-value | 0 | +| PHASE | deg | Fermi phase w/r/ to Suppressor. -360=auto | -360 | +| Sqw_coh | str | sample coherent S(q,w) file name | "Rb_liq_coh.sqw" | +| Sqw_inc | str | sample incoherent S(q,w) file name | "Rb_liq_inc.sqw" | +| radius | m | outer radius of sample hollow cylinder | 0.01 | +| thickness | m | thickness of sample hollow cylinder | 0.005 | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/examples/ILL/ILL_IN6/ILL_IN6.instr) for `ILL_IN6.instr`. +- The IN6@ILL Yellow Pages +- R.Scherm et al, "Another Time of Flight Spectrometer", ILL Report 76S235, 1976 +- R.Scherm, "A high-resolution spectrometer ...", report Jul-295-NP, Kernforschungsanlage Julich, 1965 +- Y.Blanc, "Le spectrometre a temps de vol IN6", ILL Report 83BL21G, 1983 +- K.H.Beckurts et al, Neutron physics, Kernforschungsanlage Karlsruhe, 1964 (p317) +- R.Scherm and T.Springer, "Proposal of a multiple Chopper...", Kernforschungsanlage Julich, 19xx + +--- + +*Generated for mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/examples/ILL/ILL_Lagrange/ILL_Lagrange.md b/mcstas-comps/examples/ILL/ILL_Lagrange/ILL_Lagrange.md new file mode 100644 index 000000000..ae8f3fe66 --- /dev/null +++ b/mcstas-comps/examples/ILL/ILL_Lagrange/ILL_Lagrange.md @@ -0,0 +1,56 @@ +# The `ILL_Lagrange` Instrument + +*McStas: IN1-Lagrange hot neutrons spectrometer for liquids at the ILL.* + +## Identification + +- **Site:** ILL +- **Author:** E. Farhi +- **Origin:** LLB/ILL +- **Date:** 13 Apr 2006 + +## Description + +```text +IN1-Lagrange hot neutrons spectrometer for liquids at the ILL. + +The dedicated liquid and amorphous instrument Lagrange is a spectrometer with +constant final neutron energy, and variable incoming neutron energy. +The analyser is a focusing barrel covered with PG analyser, all focusing to +the detector. The flux is thus very high, and the resolution is that given +buy the PG crystal mocaicity. + +The monochromator take-off angle is 2Theta_M ~ 20-25 deg, variable. The available +monochromators are all vertically focusing, Cu (200) for 0.7 Angs, Cu (220) +for 0.5 Angs. + +Cu 002 DM=1.807 AA +Cu 220 DM=1.278 AA +PG 002 DM=3.355 AA +-------------------------- +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| lambda | Angs | Wavelength at monochromator | 0.897 | +| DM | Angs | d-spacing of monochromator | 1.807 | +| RV | m | Monochromator vertical curvature, 0=flat, -1=automatic | -1 | +| coh | str | File name for sample coherent scattering contribution | "Rb_liq_coh.sqw" | +| inc | str | File name for sample incoherent scattering contribution | "Rb_liq_inc.sqw" | +| L1 | m | Source-Monochromator distance | 6.35 | +| L2 | m | Monochromator-Sample distance | 2.55 | +| L3 | m | Sample-Detector distance | 0.901 | +| verbose | 1 | Print spectrometer configuration. 0 to be quiet | 1 | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/examples/ILL/ILL_Lagrange/ILL_Lagrange.instr) for `ILL_Lagrange.instr`. +- The D4 diffractometer at the ILL + +--- + +*Generated for mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/examples/ILL/ILL_SALSA/ILL_SALSA.md b/mcstas-comps/examples/ILL/ILL_SALSA/ILL_SALSA.md new file mode 100644 index 000000000..7f3b27970 --- /dev/null +++ b/mcstas-comps/examples/ILL/ILL_SALSA/ILL_SALSA.md @@ -0,0 +1,63 @@ +# The `ILL_SALSA` Instrument + +*McStas: ILL_SALSA instrument* + +## Identification + +- **Site:** ILL +- **Author:** Daniel Lomholt Christensen +- **Origin:** ILL, Grenoble, France +- **Date:** 14:28:08 on January 23, 2024 + +## Description + +```text +ESCRIPTION +SALSA is a instrument developed mainly for measuring residual stress +in a gauge volume defined by its collimators. +The instrument has three possible collimator positions, with three available collimators at each position. +This allows the gauge volumed to be defined in height, width and depth. +The size of the gauge volume is chosen in the collimator parameters. The following values correspond to sizes +in a dictionary format. +The vertical collimator {0: 2mm, 1: 4mm, 2: 10mm} +The horizontal collimator {0: 0.6mm, 1: 2mm, 2: 4mm} +The depth collimator {0: 0.6mm, 1: 2mm, 2: 4mm} + +The instument showcases the Monochromator_bent component, +and the focusing use of the Collimator_radial component. + +Some of the monitors used in this instrument are not actually present in the real instrument. +The only detector that is actually there, is the final monitor. +Furthermore the sample environment is of course variable depending on the sample +in question. +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| lambda_mean | Å | Desired wavelength of neutrons coming off of the monochromator. | 1.66795 | +| lambda_spread | Å | Range over which the neutrons are produced. lambda_mean +- lambda_spread. | 0.0224372 | +| m | 1 | m-value of whole guide coating. 0 absorbing, 1 for Ni, 1.2 for Ni58, 2-4 for SM | 2 | +| mip | 1 | m-value of in-pile guide coating | 2 | +| monochromator_horizontal_radius | m | Radius of the horizontal cylinder the monochromator is bent on. | 2.6 | +| takeoff_angle | deg | Takeoff angle of the instrument | 75.8 | +| mono_rotation | deg | Rotation of monochromator in the horizontal plane. Omega angle in SALSA | 37.9 | +| lamellas | 1 | Number of lamellas in the monochromator array | 16 | +| monochromator_slabs | 1 | Number of slabs of lamellas placed on top of each other in the monochromator array | 39 | +| vertical_mono_radius | m | Radius of the cylinder the monochromator is bent on vertically | 2.2 | +| vertical_focus | mm | Choice of collimator focus in mm. Choose either 2, 4, or 10. | 2 | +| horizontal_focus | mm | Choice of collimator focus in mm. Choose either 0.6, 2, or 4. | 0.6 | +| outgoing_focus | mm | Choice of collimator focus in mm. Choose either 0.6, 2, or 4. | 0.6 | +| measuring_angle | deg | Angle between the outgoing collimator and sample. Rotates in the negative direction of revolution. I.E with the clock. | 50 | +| Debug | | | 0 | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/examples/ILL/ILL_SALSA/ILL_SALSA.instr) for `ILL_SALSA.instr`. + +--- + +*Generated for mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/examples/ISIS/ISIS_CRISP/ISIS_CRISP.md b/mcstas-comps/examples/ISIS/ISIS_CRISP/ISIS_CRISP.md new file mode 100644 index 000000000..900b44569 --- /dev/null +++ b/mcstas-comps/examples/ISIS/ISIS_CRISP/ISIS_CRISP.md @@ -0,0 +1,43 @@ +# The `ISIS_CRISP` Instrument + +*McStas: Model of the ISIS CRISP reflectometer, including the Multilayer_Sample reflectivity sample.* + +## Identification + +- **Site:** ISIS +- **Author:** Robert Dalgliesh +- **Origin:** ISIS (UK) +- **Date:** 2010 + +## Description + +```text +This model of the ISIS CRISP reflectometer demonstrates the use of the Multilayer_Sample component. + +The algorithm of the component requires complex numbers, facilitated by the +GNU Scientific Library (GSL). To link +your the instrument with an installed GSL, you should use MCSTAS_CFLAGS like + +MCSTAS_CFLAGS = -g -O2 -lm -lgsl -lgslcblas +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| glen | | | 1.4 | +| flen | | | 0.4 | +| w1 | | | 0.05 | +| vm | | | 3.0 | +| FRAC | | | 0 | +| sampleconf | | | 0 | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/examples/ISIS/ISIS_CRISP/ISIS_CRISP.instr) for `ISIS_CRISP.instr`. + +--- + +*Generated for mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/examples/ISIS/ISIS_GEM/ISIS_GEM.md b/mcstas-comps/examples/ISIS/ISIS_GEM/ISIS_GEM.md new file mode 100644 index 000000000..edf6e70af --- /dev/null +++ b/mcstas-comps/examples/ISIS/ISIS_GEM/ISIS_GEM.md @@ -0,0 +1,43 @@ +# The `ISIS_GEM` Instrument + +*McStas: McStas instrument for simulating the GEM diffractometer at ISIS TS1.* + +## Identification + +- **Site:** ISIS +- **Author:** E. Farhi, G. Cuello, M. Tucker +- **Origin:** ISIS +- **Date:** September 20, 2006 + +## Description + +```text +McStas instrument for simulating GEM at ISIS TS1. +The sample is a powder. The detector is simplified as a banana shaped one. + +The General Materials Diffractometer is a new generation neutron diffractometer +recently constructed at the ISIS pulsed neutron source. GEM can be used to +perform high intensity, high resolution experiments to study the structure of +disordered materials and crystalline powders. +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| l_min | AA | Minimum wavelength produced at source | 0.1 | +| l_max | AA | Maximum wavelength produced at source | 4.2 | +| dist | m | Sample-detector distance (detector radius) | 1.3795 | +| sample | string | Reflection list for powder sample | "Y2O3.laz" | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/examples/ISIS/ISIS_GEM/ISIS_GEM.instr) for `ISIS_GEM.instr`. +- The ESS Instrument workshops website. +- The GEM instrument at ISIS + +--- + +*Generated for mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/examples/ISIS/ISIS_HET/ISIS_HET.md b/mcstas-comps/examples/ISIS/ISIS_HET/ISIS_HET.md new file mode 100644 index 000000000..ee1e77b7e --- /dev/null +++ b/mcstas-comps/examples/ISIS/ISIS_HET/ISIS_HET.md @@ -0,0 +1,39 @@ +# The `ISIS_HET` Instrument + +*McStas: HET: High Energy Transfer Chopper Spectrometer* + +## Identification + +- **Site:** ISIS +- **Author:** Dickon Champion +- **Origin:** ISIS (UK) +- **Date:** 22nd Jan 2004. + +## Description + +```text +This instrument is a simple model of the HET spectrometer at the ISIS neutron +facility. The input arguments are hardwired so that the Fermi chopper position +is 10 metres from the moderator. This instrument uses the FC module written by +Andrew Garret which comes with no guarantees as to its accuracy in modelling the +Fermi Chopper. +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| Emin | meV | lowest energy sampled | 443.0 | +| Emax | meV | highest energy sampled | 470.0 | +| nu_chop | Hz | frequency of chopper rotation | 600.0 | +| type | | chopper package - sloppy chopper = 1, B chopper = 2 | 2 | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/examples/ISIS/ISIS_HET/ISIS_HET.instr) for `ISIS_HET.instr`. + +--- + +*Generated for mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/examples/ISIS/ISIS_IMAT/ISIS_IMAT.md b/mcstas-comps/examples/ISIS/ISIS_IMAT/ISIS_IMAT.md new file mode 100644 index 000000000..4bba7ab52 --- /dev/null +++ b/mcstas-comps/examples/ISIS/ISIS_IMAT/ISIS_IMAT.md @@ -0,0 +1,47 @@ +# The `ISIS_IMAT` Instrument + +*McStas: IMAT: McStas instrument file of the imaging and diffraction parts of the IMAT instrument.* + +## Identification + +- **Site:** ISIS +- **Author:** Genoveva Burca (Genoveva.Burca@stfc.ac.uk) +- **Origin:** ISIS +- **Date:** October 2017 + +## Description + +```text +McStas instrument for simulating the IMAT - imaging and diffraction +New McStas moderator file (G. Skoro, ISIS Facility) was added +\\ISIS\Shares\NeutronicsTeam\TS-2\HydroMod_Upgrade\McStas_TS2_HydroMod_Base_newVirtMod_350mm\Let_Base.mcstas +Components positions were extracted from IMAT final design (March 2016) +Choppers were not added to this model +Diffraction detectors are + +IMPORTANT NOTES: +1. For reference use G. Burca et al., Modelling of an imaging beamline at the ISIS pulsed neutron source, +Journal of Instrumentation, 8 (2013), no 10, http://dx.doi.org/10.1088/1748-0221/8/10/P10001 +2. Results from calculations published in the previous paper were obtained using McStas ISIS_moderator component (Face="W5") +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| l_min | AA | Low wavelength sampled. | 1 | +| l_max | AA | High wavelength sampled. | 10 | +| t_min | t | Low detector time limit. | 0 | +| t_max | t | High detector time limit. | 0.2 | +| theta | deg | Angle that the detector banks are set at. | 90 | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/examples/ISIS/ISIS_IMAT/ISIS_IMAT.instr) for `ISIS_IMAT.instr`. +- + +--- + +*Generated for mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/examples/ISIS/ISIS_LET/ISIS_LET.md b/mcstas-comps/examples/ISIS/ISIS_LET/ISIS_LET.md new file mode 100644 index 000000000..8ee7d86f3 --- /dev/null +++ b/mcstas-comps/examples/ISIS/ISIS_LET/ISIS_LET.md @@ -0,0 +1,43 @@ +# The `ISIS_LET` Instrument + +*McStas: LET instrument on ISIS TS2 + +Instrument: ISIS_LET* + +## Identification + +- **Site:** ISIS +- **Author:** Ross Stewart +- **Origin:** ISIS +- **Date:** September 2025 + +## Description + +```text +This is a simulation of LET on ISIS TS2. +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| Ei | meV | Centre energy for moderator | 3.7 | +| dE | | Multiplier for energy spread: Emin = Ei/dE, Emax = Ei*dE | 1.1 | +| Ch3_speed | Hz | Chopper 3 frequency | 100 | +| Ch5_speed | Hz | Chopper 5 frequency | 200 | +| Ch2_phase | mus | Chopper 2 phase setting | 95000 | +| pha_offset | mus | Offset in time for moderator focus | 80e-6 | +| res | string | "HF" - High Flux, "HR" - High Resolution, "I" - Intermediate | "HF" | +| snout | string | "in" or "out" | "out" | +| monitors_on | 1 | Flag to enable/disable TOF monitors in primary optics | 0 | +| movable_monitors | 1 | Flag to enable/disable PSDs and Div monitors in primary optics | 0 | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/examples/ISIS/ISIS_LET/ISIS_LET.instr) for `ISIS_LET.instr`. + +--- + +*Generated for mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/examples/ISIS/ISIS_MERLIN/ISIS_MERLIN.md b/mcstas-comps/examples/ISIS/ISIS_MERLIN/ISIS_MERLIN.md new file mode 100644 index 000000000..69bb8b309 --- /dev/null +++ b/mcstas-comps/examples/ISIS/ISIS_MERLIN/ISIS_MERLIN.md @@ -0,0 +1,48 @@ +# The `ISIS_MERLIN` Instrument + +*McStas: MERLIN: High count rate, medium energy resolution, direct geometry chopper spectrometer.* + +## Identification + +- **Site:** ISIS +- **Author:** Rob Bewley +- **Origin:** ISIS (UK) +- **Date:** May 2017. + +## Description + +```text +Merlin has been in user operation since 2008. It was designed to be a high intensity, medium energy +resolution spectrometer that would complement the high-resolution MAPS spectrometer, and replace +the HET spectrometer. Merlin's design exploited recent advances in technology with a supermirror +guide to enhance flux, as well as 3 m long position-sensitive detectors in a vacuum, making it +ideal for the study of single crystals. The detector bank covers a massive \pi steradians of solid +angle with an angular range from -45 to 135 degrees in the horizontal plane, and \pm 30 degrees in +the vertical plane. This allows large swathes of Q,\omega space to be accessed in a single run. + +Since 2014, Merlin has been running in event mode, and by using the new Gd chopper combined with a +disk chopper, it is able to run in repetition-rate multiplication (RRM) mode, allowing users to +simultaneously measure with several incident energies. +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| E_min | meV | lowest energy sampled [meV] | 1.0 | +| E_max | meV | highest energy sampled [meV] | 2000.0 | +| m | float | m value of guides | 3.0 | +| E_foc | meV | energy selected by chopper [meV] | 80.0 | +| nu_hz | Hz | frequency of chopper rotation [Hz] | 200.0 | +| type | int | chopper package selected sloppy chopper = 1, B chopper = 2, Gd chopper = 3 | 3 | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/examples/ISIS/ISIS_MERLIN/ISIS_MERLIN.instr) for `ISIS_MERLIN.instr`. +- http://www.isis.stfc.ac.uk/instruments/merlin + +--- + +*Generated for mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/examples/ISIS/ISIS_OSIRIS/ISIS_OSIRIS.md b/mcstas-comps/examples/ISIS/ISIS_OSIRIS/ISIS_OSIRIS.md new file mode 100644 index 000000000..a8b454fa7 --- /dev/null +++ b/mcstas-comps/examples/ISIS/ISIS_OSIRIS/ISIS_OSIRIS.md @@ -0,0 +1,45 @@ +# The `ISIS_OSIRIS` Instrument + +*McStas: A simulation of the indirect TOF geometry part of the OSIRIS instrument.* + +## Identification + +- **Site:** ISIS +- **Author:** Peter Christiansen with input from Mark Telling, updates by P Willendrup +- **Origin:** DTU Fysik, RISOE and ISIS +- **Date:** November 2015 + +## Description + +```text +If LAMBDA = 0, the choppers are disabled, else the choppers are +centered to chop around this wavelength and the source is studied in the +interval LAMBDA +- DLAMBDA. + +IMPORTANT NOTES: + +1) Monchromator is not realistic in the sense that it does NOT +smear the beam out according to the mosaicity, only does the N=1 +reflection, and the d-spread is handled in a simple way + +2) The instrument is not validated or certified by ISIS. Is only put in +McStas for completeness. +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| LAMBDA | AA | Mean wavelength at source | 6.66 | +| DLAMBDA | AA | Wavelength spread at source | 0.1 | +| GUIDEREFLECTIVITY | 1 | R0-reflectivity of guide | 1.0 | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/examples/ISIS/ISIS_OSIRIS/ISIS_OSIRIS.instr) for `ISIS_OSIRIS.instr`. + +--- + +*Generated for mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/examples/ISIS/ISIS_Prisma2/ISIS_Prisma2.md b/mcstas-comps/examples/ISIS/ISIS_Prisma2/ISIS_Prisma2.md new file mode 100644 index 000000000..0fd509b16 --- /dev/null +++ b/mcstas-comps/examples/ISIS/ISIS_Prisma2/ISIS_Prisma2.md @@ -0,0 +1,50 @@ +# The `ISIS_Prisma2` Instrument + +*McStas: Simple simulation of PRISMA2 with RITA-style analyser backend.* + +## Identification + +- **Site:** ISIS +- **Author:** Kristian Nielsen and Mark Hagen +- **Origin:** ISIS/Risoe +- **Date:** August 1998. + +## Description + +```text +Demonstrates how the standard components from the component library +may be easily modified for special purposes; in this case to have +the individual analyser blades paint a "color" on the neutrons to +differentiate them in the detector. + +Output is in the file "prisma2.tof". The format is ASCII; each +line consists of the time-of-flight in microseconds followed by seven +intensities of neutrons from each individual analyser blade. +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| TT | deg | Take-off angle at the sample position, aka A4 | -30 | +| PHA | deg | Analyzer group rotation angle, aka A5 | 22 | +| PHA1 | deg | Analyzer 1 tilt angle | -3 | +| PHA2 | deg | Analyzer 2 tilt angle | -2 | +| PHA3 | deg | Analyzer 3 tilt angle | -1 | +| PHA4 | deg | Analyzer 4 tilt angle | 0 | +| PHA5 | deg | Analyzer 5 tilt angle | 1 | +| PHA6 | deg | Analyzer 6 tilt angle | 2 | +| PHA7 | deg | Analyzer 7 tilt angle | 3 | +| TTA | deg | Take-off angle at the analyzer position, aka A6 | 4 | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/examples/ISIS/ISIS_Prisma2/ISIS_Prisma2.instr) for `ISIS_Prisma2.instr`. +- The McStas User manual +- PRISMA + +--- + +*Generated for mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/examples/ISIS/ISIS_SANS2d/ISIS_SANS2d.md b/mcstas-comps/examples/ISIS/ISIS_SANS2d/ISIS_SANS2d.md new file mode 100644 index 000000000..a15924429 --- /dev/null +++ b/mcstas-comps/examples/ISIS/ISIS_SANS2d/ISIS_SANS2d.md @@ -0,0 +1,54 @@ +# The `ISIS_SANS2d` Instrument + +*McStas: This instrument models the ISIS TS2 SANS2d instrument.* + +## Identification + +- **Site:** ISIS +- **Author:** Richard Heenan with edits by Peter Willendrup +- **Origin:** ISIS, DTU Fysik +- **Date:** 2014 + +## Description + +```text +This instrument models the ISIS TS2 SANS2d instrument up to the sample position. + +From the author: +

    IMPORTANT: The instrument model does not currently include a correct moderator description +- and the results it produces have not been validated against experimental results. +

    The actual bender is continuously curved, here use straight segments approx.with gravity. +1/7/10 L1=4m increased gap between bender exit and S1 slit from .247 to .286m +At 4m we actually use 1.75 to 16.5 angstrom. +

    Note "2m guides" are actually 1.985m long (new ones will be 1.981m) so "real gaps" are included below, losses are pro-rata the gap/guide lengths. +

    Both rear & front detectors are 980mm square and offset 150 above beam (would only use 100mm with hindsight) +

    Rear detector can be offset -300mm or +269mm sideways. +

    Front detector is closest at approx 1.4m, furthest at approx((read det position) - 1.6m) , offset up to -1200mm sideways +there are 2 baffles between front & rear detector +

    NIMROD (W5) spectrum might better than SANS2d (E2) spectrum for liquid H2 face incurent use. +Stu Ansell's McStas spectra for TS-2 actually have no angle variation included. +In reality spectra and backgrounds will vary, fast background is likely much higher on ZOOM(E1) than SANS2d (E2) +

    RKH 2014 +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| L1 | m | Variable distance from 1st to 2nd variable slit | 3.926 | +| A1w | m | Width of first collimation slit, rectangular slit | 0.030 | +| A1h | m | Height of first collimation slit, rectangular slit | 0.02 | +| S6 | m | Radius of slit S6 (last of the optis slits) | 0.006 | +| A2 | m | Radius of second collimation slit, circular slit | 0.006 | +| Lmin | AA | Minimum wavelength to produce at the source | 1 | +| Lmax | AA | Maximum wavelength to produce at the source | 14 | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/examples/ISIS/ISIS_SANS2d/ISIS_SANS2d.instr) for `ISIS_SANS2d.instr`. + +--- + +*Generated for mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/examples/ISIS/ISIS_TOSCA_preupgrade/ISIS_TOSCA_preupgrade.md b/mcstas-comps/examples/ISIS/ISIS_TOSCA_preupgrade/ISIS_TOSCA_preupgrade.md new file mode 100644 index 000000000..b68196e28 --- /dev/null +++ b/mcstas-comps/examples/ISIS/ISIS_TOSCA_preupgrade/ISIS_TOSCA_preupgrade.md @@ -0,0 +1,49 @@ +# The `ISIS_TOSCA_preupgrade` Instrument + +*McStas: TOSCA (pre-upgrade) at ISIS* + +## Identification + +- **Site:** ISIS +- **Author:** Peter Willendrup (DTU/ESS), Sanghamitra Mukhopadhyay (ISIS STFC) +- **Origin:** DTU/ESS/ISIS +- **Date:** September 2018 + +## Description + +```text +The model at hand is adapted from an earlier model by M.Zanetti and represents the +TOSCA instrument as it looked prior to the recent upgrade. The model at hand was +adapted during the MDANSE2018 workshop (http://mdanse2018.essworkshop.org) and by +default uses a model of the incoherent scattering from Benzene, created using +CASTEP (http://www.castep.org ) and converted to Sqw format iFit (http://ifit.mcode.org) + +The model is naturally very challenging to run because of the indirect TOF geometry +and would benefit from an adaptive sampling approach. + +Please use the version with name ISIS_TOSCA_preupgrade_Mantid to generate Mantid-oriented +output. + +Example: ISIS_TOSCA_preupgrade.instr inc=Benzene_inc_CASTEP_MDANSE2018.sqw -n1e7 +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| inc | filename | Incoherent scattering model to use | "Benzene_inc_CASTEP_MDANSE2018.sqw" | +| zdepth | m | Thickness of sample | 0.002 | +| Emin | meV | Minimum energy to generate at the source | 0.01 | +| Emax | meV | Maximum energy to generate at the source | 500 | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/examples/ISIS/ISIS_TOSCA_preupgrade/ISIS_TOSCA_preupgrade.instr) for `ISIS_TOSCA_preupgrade.instr`. +- TOSCA instrument webpage +- MDANSE 2018 school webpage + +--- + +*Generated for mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/examples/ISIS/ISIS_TS1_Brilliance/ISIS_TS1_Brilliance.md b/mcstas-comps/examples/ISIS/ISIS_TS1_Brilliance/ISIS_TS1_Brilliance.md new file mode 100644 index 000000000..2fb16bdd7 --- /dev/null +++ b/mcstas-comps/examples/ISIS/ISIS_TS1_Brilliance/ISIS_TS1_Brilliance.md @@ -0,0 +1,36 @@ +# The `ISIS_TS1_Brilliance` Instrument + +*McStas: This instrument produces brilliance curves from the ISIS TS1 facility.* + +## Identification + +- **Site:** ISIS +- **Author:** Peter Willendrup +- **Origin:** DTU Fysik +- **Date:** 20130425 + +## Description + +```text +This instrument produces brilliance curves from the ISIS TS1 facility. + +The Brilliance_monitor is used to determine both the mean and peak brilliances, plus pulse-shapes for different wavelengths. + +Example: ISIS_brilliance Detector: Brillmon_I=3.80e+15 (First detector output) +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| modfile | string | Name of moderator face - TS1=water, ch4, h2, merlin or instrument name eg maps, crisp etc. | "ch4" | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/examples/ISIS/ISIS_TS1_Brilliance/ISIS_TS1_Brilliance.instr) for `ISIS_TS1_Brilliance.instr`. + +--- + +*Generated for mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/examples/ISIS/ISIS_TS2_Brilliance/ISIS_TS2_Brilliance.md b/mcstas-comps/examples/ISIS/ISIS_TS2_Brilliance/ISIS_TS2_Brilliance.md new file mode 100644 index 000000000..7910b492a --- /dev/null +++ b/mcstas-comps/examples/ISIS/ISIS_TS2_Brilliance/ISIS_TS2_Brilliance.md @@ -0,0 +1,36 @@ +# The `ISIS_TS2_Brilliance` Instrument + +*McStas: This instrument produces brilliance curves from the ISIS TS2 facility.* + +## Identification + +- **Site:** ISIS +- **Author:** Peter Willendrup +- **Origin:** DTU Fysik +- **Date:** 20130425 + +## Description + +```text +This instrument produces brilliance curves from the ISIS TS2 facility. + +The Brilliance_monitor is used to determine both the mean and peak brilliances, plus pulse-shapes for different wavelengths. + +Example: ISIS_brilliance Detector: Brillmon_I=3.80e+15 (First detector output) +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| modfile | string | Name of moderator face - TS2=groove,hydrogen,narrow,broad - - TS1=Water,ch4,h2,merlin or instrument name eg maps, crisp etc. | "hydrogen" | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/examples/ISIS/ISIS_TS2_Brilliance/ISIS_TS2_Brilliance.instr) for `ISIS_TS2_Brilliance.instr`. + +--- + +*Generated for mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/examples/ISIS/ISIS_test/ISIS_test.md b/mcstas-comps/examples/ISIS/ISIS_test/ISIS_test.md new file mode 100644 index 000000000..2645e0aa3 --- /dev/null +++ b/mcstas-comps/examples/ISIS/ISIS_test/ISIS_test.md @@ -0,0 +1,34 @@ +# The `ISIS_test` Instrument + +*McStas: Simple test instrument for the ISIS_moderator component* + +## Identification + +- **Site:** ISIS +- **Author:** Dickon Champion +- **Origin:** ISIS +- **Date:** Aug 2004 + +## Description + +```text +Simple test instrument for the ISIS_moderator component. +Refer to the documentation in MCSTAS/contrib/doc/ISISdoc.pdf (.ps) +for further instructions on using the ISIS_moderator component +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/examples/ISIS/ISIS_test/ISIS_test.instr) for `ISIS_test.instr`. +- Written by D. Champion ISIS, Feb 2004 + +--- + +*Generated for mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/examples/ISIS/ViewModISIStest/ViewModISIStest.md b/mcstas-comps/examples/ISIS/ViewModISIStest/ViewModISIStest.md new file mode 100644 index 000000000..95a12cf54 --- /dev/null +++ b/mcstas-comps/examples/ISIS/ViewModISIStest/ViewModISIStest.md @@ -0,0 +1,35 @@ +# The `ViewModISIS_test` Instrument + +*McStas: Simple test instrument for the ISIS_moderator component* + +## Identification + +- **Site:** ISIS +- **Author:** Dickon Champion +- **Origin:** ISIS +- **Date:** Aug 2004 + +## Description + +```text +Simple test instrument for the ISIS_moderator component. +Refer to the documentation in MCSTAS/contrib/doc/ISISdoc.pdf (.ps) +for further instructions on using the ISIS_moderator component +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| dummy | | Dummy input parameter | 1 | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/examples/ISIS/ViewModISIStest/ViewModISIStest.instr) for `ViewModISIStest.instr`. +- Written by D. Champion ISIS, Feb 2004 + +--- + +*Generated for mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/examples/LLB/LLB_6T2/LLB_6T2.md b/mcstas-comps/examples/LLB/LLB_6T2/LLB_6T2.md new file mode 100644 index 000000000..b289717bf --- /dev/null +++ b/mcstas-comps/examples/LLB/LLB_6T2/LLB_6T2.md @@ -0,0 +1,44 @@ +# The `LLB_6T2` Instrument + +*McStas: The 6T2 thermal single crystal diffractometer at the LLB.* + +## Identification + +- **Site:** LLB +- **Author:** Xavier Fabrèges +- **Origin:** LLB (France) +- **Date:** November 5th 2015. + +## Description + +```text +6T2 is a high flux thermal single crystal diffractometer dedicated to the study of +complex magnetic structures in condensed matter. Two monochromators are available. +It works at 0.9 and 2.4AA without polarization and at 1.4AA with incident polarization +(optional FeCo supermirror) and polarization analysis (P//z). + +Monochromators: +PG 002 DM=3.355 AA (Highly Oriented Pyrolythic Graphite) +Cu 220 DM=1.278 AA +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| lambda | Angs | wavelength | 1.0 | +| phi | Deg | sample rotation along the vertical axis | 0 | +| gamma | Deg | in plane detector position | 0 | +| nu | Deg | out of plane detector position | 0 | +| monok | 1 | monochromator to use (0: PG, 1: Cu, 5: test mode) | 0 | +| samp_f | str | LAU file describing sample | "C60.lau" | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/examples/LLB/LLB_6T2/LLB_6T2.instr) for `LLB_6T2.instr`. + +--- + +*Generated for mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/examples/Mantid/ILL_H16_IN5_Mantid/ILL_H16_IN5_Mantid.md b/mcstas-comps/examples/Mantid/ILL_H16_IN5_Mantid/ILL_H16_IN5_Mantid.md new file mode 100644 index 000000000..656dffa65 --- /dev/null +++ b/mcstas-comps/examples/Mantid/ILL_H16_IN5_Mantid/ILL_H16_IN5_Mantid.md @@ -0,0 +1,56 @@ +# The `ILL_H16_IN5_Mantid` Instrument + +*McStas: The full ILL IN5B ToF spectrometer adapted for use with Mantid-friendly NeXus output.* + +## Identification + +- **Site:** Mantid +- **Author:** E. Farhi, J. Ollivier, Celia Castan Guerrero +- **Origin:** Mantid +- **Date:** Jan 2004-2009 + +## Description + +```text +The full ILL IN5B: H16 guide & chopper system + sample + PSD and tof detector, adapted for +use with Mantid-friendly NeXus output. To compile and run, use these steps: + +

      +
    1. Compile the instrument with NeXus support - zero neutrons: +
        +
      • export MCSTAS_CFLAGS="-g -lm -O2 -DUSE_NEXUS -lNeXus" +
      • mcrun -c -n0 --format=NeXus ILL_H16_IN5_Mantid.instr --no-output-files +
      +
    2. Generate the IDF in XML format using the (Perl) mcdisplay tool: +
        +
      • mcdisplay ILL_H16_IN5_Mantid.instr -n0 --format=Mantid +
      +
    3. Run a simulation with NeXus output +
        +
      • mcrun ILL_H16_IN5_Mantid.instr --format=NeXus +
      +
    + +The IN5@ILL TOF spectrometer from cold source to final detector, with sample. +The detector model includes Fe housing and tube cross talk absorbing masks +with angle restriction (neutrons that scatter in Fe in front of a tube and +enter a different tube are absorbed). +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| lambda | AA | mean incident wavelength | 4.5 | +| dlambda | AA | wavelength half width. Use e.g. 0.8*lambda for white beam. | 0.09 | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/examples/Mantid/ILL_H16_IN5_Mantid/ILL_H16_IN5_Mantid.instr) for `ILL_H16_IN5_Mantid.instr`. +- The IN5@ILL cold time of flight instrument + +--- + +*Generated for mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/examples/Mantid/ILL_H16_Mantid/ILL_H16_Mantid.md b/mcstas-comps/examples/Mantid/ILL_H16_Mantid/ILL_H16_Mantid.md new file mode 100644 index 000000000..5e0bd5593 --- /dev/null +++ b/mcstas-comps/examples/Mantid/ILL_H16_Mantid/ILL_H16_Mantid.md @@ -0,0 +1,37 @@ +# The `ILL_H16_Mantid` Instrument + +*McStas: The ILL H16 cold guide (feeding IN5) for use with mantid* + +## Identification + +- **Site:** Mantid +- **Author:** E. Farhi, J. Ollivier, Celia Castan Guerrero +- **Origin:** ILL +- **Date:** Jan 2004-2009 + +## Description + +```text +The H16@ILL curved guide sending cold neutrons from the VCS to IN5, adapted for +use with Mantid-friendly NeXus output. (See ILL_H16_IN5_Mantid or ILL_IN5_Mantid for details.) + +Example: m=1 Detector: GuideOut_Phic_I=1.85e+10 +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| lambda | AA | mean incident wavelength. | 10 | +| dlambda | AA | wavelength half width. Use e.g. 0.8*lambda for white beam. | 9.9 | +| m | 1 | m-value of whole guide coating. 0 absorbing, 1 for Ni, 1.2 for Ni58, 2-4 for SM | 1 | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/examples/Mantid/ILL_H16_Mantid/ILL_H16_Mantid.instr) for `ILL_H16_Mantid.instr`. + +--- + +*Generated for mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/examples/Mantid/ILL_IN5_Mantid/ILL_IN5_Mantid.md b/mcstas-comps/examples/Mantid/ILL_IN5_Mantid/ILL_IN5_Mantid.md new file mode 100644 index 000000000..56d7e7ea7 --- /dev/null +++ b/mcstas-comps/examples/Mantid/ILL_IN5_Mantid/ILL_IN5_Mantid.md @@ -0,0 +1,47 @@ +# The `ILL_IN5_Mantid` Instrument + +*McStas: The IN5B instrument: chopper system + sample + PSD and tof detector, adapted for +use with Mantid-friendly NeXus output.* + +## Identification + +- **Site:** Mantid +- **Author:** E. Farhi, J. Ollivier, Celia Castan Guerrero +- **Origin:** ILL +- **Date:** Jan 2004-2009 + +## Description + +```text +The ILL IN5@ILL TOF spectrometer from chopper system to final detector, with sample. +The detector model includes Fe housing and tube cross talk absorbing masks +with angle restriction (neutrons that scatter in Fe in front of a tube and +enter a different tube are absorbed). This model does not include the H16 guide. +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| lambda | AA | mean incident wavelength | 4.5 | +| dlambda | AA | wavelength half width. | 0.05 | +| speed | rpm | chopper speed (60*frequency) | 8500 | +| ratio | 1 | velocity of chopper3 = velocity of chopper1 * ratio | 0.5 | +| housing | string | material used as detector housing. Use 0 or NULL for none. | "Fe.laz" | +| coh | string | sample coherent data file or NULL. Use powder LAZ/LAU or SQW file. | "Y3Fe5O12_YIG.laz" | +| inc | string | sample incoherent Sqw data file or NULL | "NULL" | +| thickness | m | thickness of sample. 0=filled | 0 | +| height | m | height of sample. 0=sphere | 0.025 | +| radius | m | radius of sample (outer). | 0.005 | +| order | 1 | order for scattering in sample. O=all, 1=single | 0 | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/examples/Mantid/ILL_IN5_Mantid/ILL_IN5_Mantid.instr) for `ILL_IN5_Mantid.instr`. +- The IN5@ILL cold time of flight instrument + +--- + +*Generated for mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/examples/Mantid/ISIS_SANS2d_Mantid/ISIS_SANS2d_Mantid.md b/mcstas-comps/examples/Mantid/ISIS_SANS2d_Mantid/ISIS_SANS2d_Mantid.md new file mode 100644 index 000000000..4581e6fe1 --- /dev/null +++ b/mcstas-comps/examples/Mantid/ISIS_SANS2d_Mantid/ISIS_SANS2d_Mantid.md @@ -0,0 +1,55 @@ +# The `ISIS_SANS2d_Mantid` Instrument + +*McStas: This instrument models the ISIS TS2 SANS2d instrument.* + +## Identification + +- **Site:** Mantid +- **Author:** Richard Heenan with edits by Peter Willendrup +- **Origin:** ISIS, DTU Fysik +- **Date:** 2014 + +## Description + +```text +This instrument models the ISIS TS2 SANS2d instrument up to the sample position. + +From the author: +

    IMPORTANT: The instrument model does not currently include a correct moderator description +- and the results it produces have not been validated against experimental results. +

    The actual bender is continuously curved, here use straight segments approx.with gravity. +1/7/10 L1=4m increased gap between bender exit and S1 slit from .247 to .286m +At 4m we actually use 1.75 to 16.5 angstrom. +

    Note "2m guides" are actually 1.985m long (new ones will be 1.981m) so "real gaps" are included below, losses are pro-rata the gap/guide lengths. +

    Both rear & front detectors are 980mm square and offset 150 above beam (would only use 100mm with hindsight) +

    Rear detector can be offset -300mm or +269mm sideways. +

    Front detector is closest at approx 1.4m, furthest at approx((read det position) - 1.6m) , offset up to -1200mm sideways +there are 2 baffles between front & rear detector +

    NIMROD (W5) spectrum might better than SANS2d (E2) spectrum for liquid H2 face incurent use. +Stu Ansell's McStas spectra for TS-2 actually have no angle variation included. +In reality spectra and backgrounds will vary, fast background is likely much higher on ZOOM(E1) than SANS2d (E2) +

    RKH 2014 +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| L1 | m | Variable distance from 1st to 2nd variable slit | 3.926 | +| A1w | m | Width of first collimation slit, rectangular slit | 0.030 | +| A1h | m | Height of first collimation slit, rectangular slit | 0.02 | +| S6 | m | Radius of slit S6 (last of the optis slits) | 0.006 | +| A2 | m | Radius of second collimation slit, circular slit | 0.006 | +| Lmin | AA | Minimum wavelength to produce at the source | 1 | +| Lmax | AA | Maximum wavelength to produce at the source | 14 | +| model_nr | | SANS_benchmark2 SANS sample nr. E.g. 5: sphere(r=50AA), 15: sphere(r=150AA) | 15.0 | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/examples/Mantid/ISIS_SANS2d_Mantid/ISIS_SANS2d_Mantid.instr) for `ISIS_SANS2d_Mantid.instr`. + +--- + +*Generated for mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/examples/Mantid/ISIS_TOSCA_preupgrade_Mantid/ISIS_TOSCA_preupgrade_Mantid.md b/mcstas-comps/examples/Mantid/ISIS_TOSCA_preupgrade_Mantid/ISIS_TOSCA_preupgrade_Mantid.md new file mode 100644 index 000000000..d36d48705 --- /dev/null +++ b/mcstas-comps/examples/Mantid/ISIS_TOSCA_preupgrade_Mantid/ISIS_TOSCA_preupgrade_Mantid.md @@ -0,0 +1,55 @@ +# The `ISIS_TOSCA_preupgrade_Mantid` Instrument + +*McStas: TOSCA (pre-upgrade) at ISIS with Mantid support.* + +## Identification + +- **Site:** Mantid +- **Author:** Peter Willendrup (DTU/ESS), Sanghamitra Mukhopadhyay (ISIS STFC) +- **Origin:** DTU/ESS/ISIS +- **Date:** September 2018 + +## Description + +```text +The model at hand is adapted from an earlier model by M.Zanetti and represents the +TOSCA instrument as it looked prior to the recent upgrade. The model at hand was +adapted during the MDANSE2018 workshop (http://mdanse2018.essworkshop.org) and by +default uses a model of the incoherent scattering from Benzene, created using +CASTEP (http://www.castep.org ) and converted to Sqw format iFit (http://ifit.mcode.org) + +The model is naturally very challenging to run because of the indirect TOF geometry +and would benefit from an adaptive sampling approach. + +Please follow instructions at https://github.com/mccode-dev/McCode/wiki/McStas-and-Mantid +to compile with NeXus and generate a Mantid-IDF before attempting to use with Mantid. + +To generate the right flightpath length in Mantid, this version of the instrument has +been created with transmitting rather than reflecting analysers, and the detectors are hence +also positioned differently than in the physical instrument. + +Example: ISIS_TOSCA_preupgrade_Mantid.instr inc=Benzene_inc_CASTEP_MDANSE2018.sqw eventmode=1 Detector: Sphere_I=0.686792 +Example: ISIS_TOSCA_preupgrade_Mantid.instr inc=Benzene_inc_CASTEP_MDANSE2018.sqw eventmode=1 --format=NeXus Detector: Sphere_I=0.686792 +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| inc | filename | Incoherent scattering model to use | "Benzene_inc_CASTEP_MDANSE2018.sqw" | +| zdepth | m | Thickness of sample | 0.002 | +| Emin | meV | Minimum energy to generate at the source | 0.01 | +| Emax | meV | Maximum energy to generate at the source | 500 | +| eventmode | boolean | Flag to enable event monitors | 0 | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/examples/Mantid/ISIS_TOSCA_preupgrade_Mantid/ISIS_TOSCA_preupgrade_Mantid.instr) for `ISIS_TOSCA_preupgrade_Mantid.instr`. +- TOSCA instrument webpage +- MDANSE 2018 school webpage + +--- + +*Generated for mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/examples/Mantid/SNS_ARCS_Mantid/SNS_ARCS_Mantid.md b/mcstas-comps/examples/Mantid/SNS_ARCS_Mantid/SNS_ARCS_Mantid.md new file mode 100644 index 000000000..30a19911a --- /dev/null +++ b/mcstas-comps/examples/Mantid/SNS_ARCS_Mantid/SNS_ARCS_Mantid.md @@ -0,0 +1,53 @@ +# The `SNS_ARCS_Mantid` Instrument + +*McStas: Model of the ARCS spectrometer from SNS with Mantid support.* + +## Identification + +- **Site:** Mantid +- **Author:** G. Granroth +- **Origin:** SNS +- **Date:** Nov 2014 + +## Description + +```text +When using this ARCS instrument model, please reference +

      +
    • Granroth, G. E. and Abernathy, D. L., "Performance Comparisons of Four Direct Geometry +Spectrometers Planned for Spallation Neutron Source", Proceedings of ICANS-XVI, 289 (2003). +
    • D. L. Abernathy, M. B. Stone, M. J. Loguillo, M. S. Lucas, O. Delaire, X.Tang, J. Y. Y. Lin, and +B. Fultz,"Design and operation of the wide angular-range chopper spectrometer ARCS at the +Spallation Neutron Source", Review of Scientific Instruments, 83 , 015114 (2012)
    +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| filename | | | "source_sct521_bu_17_1.dat" | +| Fermi_nu | Hz | Frequency of the Fermi chopper | 420 | +| T0_nu | Hz | Frequency of the T0 chopper | 90 | +| nrad | m | Radius of the Fermi chopper blades | 0.58 | +| nchans | 1 | Number of channels in the Fermi chopper | 40 | +| Edes | meV | Desired/target energy | 50 | +| Et | meV | Energy transfer of the Spot_sample | 25 | +| ttheta | deg | Scattering angle of the Spot_sample | 25 | +| T0_off | | | 0 | +| sxmin | m | Sample slit horz min value | -0.04 | +| sxmax | m | Sample slit horz max value | 0.04 | +| symin | m | Sample slit vert min value | -0.04 | +| symax | m | Sample slit vert max value | 0.04 | +| run_num | 1 | Virtual source run number (unused at present) | 1 | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/examples/Mantid/SNS_ARCS_Mantid/SNS_ARCS_Mantid.instr) for `SNS_ARCS_Mantid.instr`. +-
    Granroth, G. E. and Abernathy, D. L., "Performance Comparisons of Four Direct Geometry Spectrometers Planned for Spallation Neutron Source", Proceedings of ICANS-XVI, 289 (2003). +-
    D. L. Abernathy, M. B. Stone, M. J. Loguillo, M. S. Lucas, O. Delaire, X.Tang, J. Y. Y. Lin, and B. Fultz,"Design and operation of the wide angular-range chopper spectrometer ARCS at the Spallation Neutron Source", Review of Scientific Instruments, 83 , 015114 (2012) + +--- + +*Generated for mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/examples/Mantid/Tools_ONION/Tools_ONION.md b/mcstas-comps/examples/Mantid/Tools_ONION/Tools_ONION.md new file mode 100644 index 000000000..4b34bee68 --- /dev/null +++ b/mcstas-comps/examples/Mantid/Tools_ONION/Tools_ONION.md @@ -0,0 +1,44 @@ +# The `Tools_ONION` Instrument + +*McStas: Test case for an layered detector shell instrument to provide quick overview of resolution per pixel.* + +## Identification + +- **Site:** Mantid +- **Author:** Thomas Huegle +- **Origin:** ORNL +- **Date:** July 2019 + +## Description + +```text +Test case for an layered detector shell instrument to provide quick overview of resolution per pixel. +Set up to be run in McStas -> Mantid mode, refer to manual for details on execution. +Simulates desired divergence by adjusting moderator size. +Considers only in-plane (xwidth) factors, sets yheight as 1 cm. +For an example on how to analyze the data, see the 'Onion_analyzerScript.py' available at +https://github.com/mccode-dev/McCode-contribution-support-docs/tree/master/McStas/2.6_Onion_tool_T_Huegle + +Acceptable statistics can be achieved by running the simulation with 1E7 neutrons (output file: ~400MB) +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| divergence | degrees | angular divergence of neutrons reaching the sample | 0.4 | +| distance | m | distance between source and sample | 32 | +| filename | | | "source_sct521_bu_08_1.dat" | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/examples/Mantid/Tools_ONION/Tools_ONION.instr) for `Tools_ONION.instr`. +- "Using an onion like neutron scattering instrument model to quickly optimize design parameters" +- T. Huegle, Nuclear Instruments and Methods in Physics Research Section A, 2019 +- Python script available at https://github.com/mccode-dev/McCode-contribution-support-docs/tree/master/McStas/2.6_Onion_tool_T_Huegle + +--- + +*Generated for mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/examples/Mantid/templateSANS2_Mantid/templateSANS2_Mantid.md b/mcstas-comps/examples/Mantid/templateSANS2_Mantid/templateSANS2_Mantid.md new file mode 100644 index 000000000..929f72407 --- /dev/null +++ b/mcstas-comps/examples/Mantid/templateSANS2_Mantid/templateSANS2_Mantid.md @@ -0,0 +1,39 @@ +# The `templateSANS2_Mantid` Instrument + +*McStas: Test instrument for the SANS_spheres2 component. No guide / velocity selector.* + +## Identification + +- **Site:** Mantid +- **Author:** Peter Willendrup, Wim G. Bouwman +- **Origin:** DTU +- **Date:** Dec 20190 + +## Description + +```text +Very simple test instrument for the SANS_spheres2 component, derived / simplified from +H. Frielinghaus SANS_benchmark2 +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| lambda | AA | Mean wavelength of neutrons | 6 | +| dlambda | AA | Wavelength spread of neutrons | 0.05 | +| r | AA | Radius of scattering hard spheres | 150 | +| PHI | 1 | Particle volume fraction | 1e-3 | +| Delta_Rho | cm^-2 | Scattering length density | 6e10 | +| frac_dir | 1 | Fraction of statistics for direct beam | 0.03 | +| frac_inc | 1 | Fraction of statistics for incoherent scattering in scattered beam | 0.01 | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/examples/Mantid/templateSANS2_Mantid/templateSANS2_Mantid.instr) for `templateSANS2_Mantid.instr`. + +--- + +*Generated for mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/examples/Mantid/templateSANS_Mantid/templateSANS_Mantid.md b/mcstas-comps/examples/Mantid/templateSANS_Mantid/templateSANS_Mantid.md new file mode 100644 index 000000000..9514f1386 --- /dev/null +++ b/mcstas-comps/examples/Mantid/templateSANS_Mantid/templateSANS_Mantid.md @@ -0,0 +1,45 @@ +# The `templateSANS_Mantid` Instrument + +*McStas: Test instrument for the Sans_spheres component. No guide / velocity selector +etc. Will be developed further at later time.* + +## Identification + +- **Site:** Mantid +- **Author:** Kim Lefmann +- **Origin:** Risoe +- **Date:** 19th Dec 2003. + +## Description + +```text +Very simple test instrument for the Sans_spheres componen + +Modified to show a proof of concept method for storing a 'Mantid friendly' type of NeXus file. + +Needed steps: +1) Compile your instrument with NeXus library support +2) Generate an IDF using mcdisplay templateSANS_Mantid --format=Mantid -n0 +3) mcrun templateSANS_Mantid -n1e6 --format=NeXus +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| lambda | AA | Mean wavelength of neutrons | 6 | +| dlambda | AA | Wavelength spread of neutrons | 0.05 | +| r | AA | Radius of scattering hard spheres | 150 | +| PHI | 1 | Particle volume fraction | 1e-3 | +| Delta_Rho | fm/AA^3 | Excess scattering length density | 0.6 | +| sigma_abs | barns | Absorption cross section at 2200 m/s | 0.0 | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/examples/Mantid/templateSANS_Mantid/templateSANS_Mantid.instr) for `templateSANS_Mantid.instr`. + +--- + +*Generated for mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/examples/Mantid/templateSasView_Mantid/templateSasView_Mantid.md b/mcstas-comps/examples/Mantid/templateSasView_Mantid/templateSasView_Mantid.md new file mode 100644 index 000000000..1e9db1017 --- /dev/null +++ b/mcstas-comps/examples/Mantid/templateSasView_Mantid/templateSasView_Mantid.md @@ -0,0 +1,60 @@ +# The `templateSasView_Mantid` Instrument + +*McStas: Test instrument for the SasView_model component generating event data for Mantid. No guide / velocity selector +etc.* + +## Identification + +- **Site:** Mantid +- **Author:** Peter Willendrup and Torben Nielsen +- **Origin:** DTU, European Spallation Source ERIC +- **Date:** 25 Jan 2016 + +## Description + +```text +Very simple test instrument for the SasView_model component. + +Modified to show a proof of concept method for storing a 'Mantid friendly' type of NeXus file. + +Example: model_index=1 Ncount=1e6 par1=4 par2=1 par3=40 par4=20 par5=400 Detector: detector_I=5e6 +Example: model_index=3 Ncount=1e6 par1=220 par2=0.06 par3=40 par4=4 par5=1 Detector: detector_I=3.3e4 +Example: model_index=47 Ncount=1e6 par1=4 par2=2 par3=35 par4=75 par5=400 Detector: detector_I=2.5e6 + +Needed steps (McStas): +1) Compile your instrument with NeXus library and ISO c99 support +2) Generate an IDF using mcdisplay templateSANS_Mantid --format=Mantid -n0 +3) mcrun templateSasView_Mantid -n1e6 --format=NeXus + +Needed steps (Mantid): +a) Load McStas NeXus file +b) Run Mantid algorithm: 'ConvertUnits' using the 'wavelenth' and 'elastic' options +c) Run Mantid algorithm: 'Qxy' using the options 'MaxQxy=0.6', 'DeltaQ=0.003', 'SolidAngleWeighting=False' +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| lambda | AA | Mean wavelength of neutrons | 6 | +| dlambda | AA | Wavelength spread of neutrons | 0.05 | +| model_index | | SASmodels model index (see SasView_model.comp mcdoc page) | 47 | +| par1 | | Slot 1 in SASmodel parameter vector | 0 | +| par2 | | Slot 2 in SASmodel parameter vector | 0 | +| par3 | | Slot 3 in SASmodel parameter vector | 0 | +| par4 | | Slot 4 in SASmodel parameter vector | 0 | +| par5 | | Slot 5 in SASmodel parameter vector | 0 | +| par6 | | Slot 6 in SASmodel parameter vector | 0 | +| par7 | | Slot 7 in SASmodel parameter vector | 0 | +| par8 | | Slot 8 in SASmodel parameter vector | 0 | +| Ncount | | | 0 | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/examples/Mantid/templateSasView_Mantid/templateSasView_Mantid.instr) for `templateSasView_Mantid.instr`. + +--- + +*Generated for mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/examples/Mantid/templateVanadiumMultipleScat_Mantid/templateVanadiumMultipleScat_Mantid.md b/mcstas-comps/examples/Mantid/templateVanadiumMultipleScat_Mantid/templateVanadiumMultipleScat_Mantid.md new file mode 100644 index 000000000..6aeeffe4a --- /dev/null +++ b/mcstas-comps/examples/Mantid/templateVanadiumMultipleScat_Mantid/templateVanadiumMultipleScat_Mantid.md @@ -0,0 +1,34 @@ +# The `templateVanadiumMultipleScat_Mantid` Instrument + +*McStas: Instrument demonstrating how to bring multiple scattering information from +a McStas simulation to Mantid (using NeXus output).* + +## Identification + +- **Site:** Mantid +- **Author:** Anders Markvardsen and Peter Willendrup +- **Origin:** ISIS +- **Date:** 201x + +## Description + +```text +Instrument demonstrating how to bring multiple scattering information from +a McStas simulation to Mantid (using NeXus output). +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/examples/Mantid/templateVanadiumMultipleScat_Mantid/templateVanadiumMultipleScat_Mantid.instr) for `templateVanadiumMultipleScat_Mantid.instr`. +- A reference/HTML link for more information + +--- + +*Generated for mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/examples/NCrystal/NCrystal_example/NCrystal_example.md b/mcstas-comps/examples/NCrystal/NCrystal_example/NCrystal_example.md new file mode 100644 index 000000000..69b73c0dc --- /dev/null +++ b/mcstas-comps/examples/NCrystal/NCrystal_example/NCrystal_example.md @@ -0,0 +1,50 @@ +# The `NCrystal_example` Instrument + +*McStas: Example instrument for NCrystal_sample use* + +## Identification + +- **Site:** NCrystal +- **Author:** T. Kittelmann, X. X. Cai +- **Origin:** ESS +- **Date:** 2015 + +## Description + +```text +Steady-state source diffractometer with (Ge-511) monochromator and powder-sample via NCrystal + + +This file is originally part of NCrystal (see https://mctools.github.io/ncrystal/) + +Copyright 2015-2022 NCrystal developers + +Licensed under the Apache License, Version 2.0 (the "License"); +you may not use this file except in compliance with the License. +You may obtain a copy of the License at + +http://www.apache.org/licenses/LICENSE-2.0 + +Unless required by applicable law or agreed to in writing, software +distributed under the License is distributed on an "AS IS" BASIS, +WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +See the License for the specific language governing permissions and +limitations under the License. +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| sample_cfg | string | Material string for the sample. | "Y2O3_sg206_Yttrium_Oxide.ncmat;density=0.9x" | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/examples/NCrystal/NCrystal_example/NCrystal_example.instr) for `NCrystal_example.instr`. +- https://github.com/mctools/ncrystal/wiki/ + +--- + +*Generated for mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/examples/NCrystal/Union_NCrystal_example/Union_NCrystal_example.md b/mcstas-comps/examples/NCrystal/Union_NCrystal_example/Union_NCrystal_example.md new file mode 100644 index 000000000..96876b5c4 --- /dev/null +++ b/mcstas-comps/examples/NCrystal/Union_NCrystal_example/Union_NCrystal_example.md @@ -0,0 +1,35 @@ +# The `Union_NCrystal_example` Instrument + +*McStas: Example instrument for use of NCrystal in Union.* + +## Identification + +- **Site:** NCrystal +- **Author:** T. Kittelmann, X. X. Cai, Mads Bertelsen +- **Origin:** ESS +- **Date:** 2020 + +## Description + +```text +This instrument examplifies how NCrystal may be used in Union +constructions. It is adopted from NCrystal_example.instr where both +monochromator and samples are described via NCrystal_sample components. Here, +they are both described via Union components. +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/examples/NCrystal/Union_NCrystal_example/Union_NCrystal_example.instr) for `Union_NCrystal_example.instr`. +- https://github.com/mctools/ncrystal/wiki/ + +--- + +*Generated for mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/examples/NCrystal/Union_NCrystal_mix_example/Union_NCrystal_mix_example.md b/mcstas-comps/examples/NCrystal/Union_NCrystal_mix_example/Union_NCrystal_mix_example.md new file mode 100644 index 000000000..a27e04e84 --- /dev/null +++ b/mcstas-comps/examples/NCrystal/Union_NCrystal_mix_example/Union_NCrystal_mix_example.md @@ -0,0 +1,36 @@ +# The `Union_NCrystal_mix_example` Instrument + +*McStas: Example instrument for use of NCrystal_sample as well as NCrystal in Union* + +## Identification + +- **Site:** NCrystal +- **Author:** T. Kittelmann, X. X. Cai, Mads Bertelsen +- **Origin:** ESS +- **Date:** 2020 + +## Description + +```text +This instrument examplifies how NCrystal may be used in Union +constructions. It is adopted from NCrystal_example.instr where both +monochromator and samples are described via NCrystal_sample components. Here, +the monochromator is described via a Union components, but the sample is still +an NCrystal_sample component. +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/examples/NCrystal/Union_NCrystal_mix_example/Union_NCrystal_mix_example.instr) for `Union_NCrystal_mix_example.instr`. +- https://github.com/mctools/ncrystal/wiki/ + +--- + +*Generated for mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/examples/Necsa/SAFARI_MPISI/SAFARI_MPISI.md b/mcstas-comps/examples/Necsa/SAFARI_MPISI/SAFARI_MPISI.md new file mode 100644 index 000000000..4a5f634d4 --- /dev/null +++ b/mcstas-comps/examples/Necsa/SAFARI_MPISI/SAFARI_MPISI.md @@ -0,0 +1,64 @@ +# The `SAFARI_MPISI` Instrument + +*McStas: Materials Probe for Internal Strain Investigations* + +## Identification + +- **Site:** Necsa +- **Author:** Deon Marais (deon.marais@necsa.co.za) +- **Origin:** Necsa +- **Date:** September 2013 + +## Description + +```text +Necsa Neutron Strain Scanner located at beam port 5 of the SAFARI-1 research reactor, South Africa +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| source_lam_min | Angs | Minimum wavelenth of source | 0.5 | +| source_lam_max | Angs | Maximum wavelenth of source | 2.0 | +| hi_res | | Selects hi-resolution(1) or hi-intensity(0) reactor beam through primary shutter | 0 | +| mono_Si_type | | Monochromator Silicon type options: 422 400 311 511 111 331 | 311 | +| mono_mosh | arc min | Monochromator horizontal mosaicity | 30 | +| mono_mosv | arc min | Monochromator vertical mosaicity | 30 | +| mono_dx | m | Monochromator delta x - positive to left of reactor beam | 0 | +| mono_dy | m | Monochromator delta y - positive upward of reactor beam | 0 | +| mono_dz | m | Monochromator delta z - positive along reactor beam | 0 | +| mono_takeoff | deg | Monochromator takeoff angle - positive anti-clockwise from reactor beam | -83.5 | +| mono_dtilt | deg | Monochromator tilt angle - not implemented yet | 0 | +| mono_Rh | m | Monochromator horizontal focus radius | 3.572 | +| port_takeoff | deg | Port takeoff angle - positive anti clockwise from reactor beam | -83.5 | +| chamber_window_rad | m | Chamber window radius. If this is 0, there is no window | 0.05534 | +| inc_slit_rot | deg | Incident slit delta rotation - not implemented yet | 0 | +| inc_slit_dx | m | Incident slit delta x position - positive to left of incident beam | 0 | +| inc_slit_to_cor | m | Incident slit to sample stage center of rotation | 0.005 | +| inc_slit_width | m | Incident slit width 0.00013m to 0.005m | 0.005 | +| inc_slit_height | m | Incident slit height 0m to 0.02m | 0.02 | +| inc_slit_sep | | Incident slit separation between width and height. <0:use emperical calc, >=0:distance in m | -1 | +| mono_to_cor | m | Distance between monochromator and center of rotation | 2.5 | +| sample_dx | m | Sample delta x - positive to left of incident beam if sample_dom=0 | 0 | +| sample_dy | m | Sample delta y - positive upword of incident beam | 0 | +| sample_dz | m | Sample delta x - positive along of incident beam if sample_dom=0 | 0 | +| sample_dom | deg | Sample delta omega - positive anti-clockwise from incident beam | 0 | +| det_takeoff | deg | Detector takeoff angle - positive anti-clockwise from incident beam | 90 | +| cor_to_det | m | Distance between sample centre of rotation and detector | 1.148 | +| diff_slit_dx | m | Diffracted slit delta x position - positive to left of diffracted beam | 0 | +| diff_slit_to_cor | deg | Distance between centre of rotation and diffracted slit | 0.005 | +| diff_slit_width | m | Diffracted slit width | 0.005 | +| diff_slit_height | m | Diffracted slit height | 0.02 | +| full_instrument | | When 1, simulates the complete instrument. When 0, only simulate from the outlet collimator | 1 | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/examples/Necsa/SAFARI_MPISI/SAFARI_MPISI.instr) for `SAFARI_MPISI.instr`. +- The South African Nuclear Energy Corporation website + +--- + +*Generated for mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/examples/Necsa/SAFARI_PITSI/SAFARI_PITSI.md b/mcstas-comps/examples/Necsa/SAFARI_PITSI/SAFARI_PITSI.md new file mode 100644 index 000000000..1cd64ba7a --- /dev/null +++ b/mcstas-comps/examples/Necsa/SAFARI_PITSI/SAFARI_PITSI.md @@ -0,0 +1,61 @@ +# The `SAFARI_PITSI` Instrument + +*McStas: Powder Instrument for Transition in Structure Investigations* + +## Identification + +- **Site:** Necsa +- **Author:** Deon Marais (deon.marais@necsa.co.za) +- **Origin:** Necsa +- **Date:** September 2013 + +## Description + +```text +Necsa Neutron Powder Diffractometer located at beam port 5 of the SAFARI-1 research reactor, South Africa +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| source_lam_min | Angs | Minimum wavelenth of source | 0.5 | +| source_lam_max | Angs | Maximum wavelenth of source | 2.0 | +| hi_res | | Selects hi-resolution(1) or hi-intensity(0) reactor beam through primary shutter | 0 | +| mono_Si_type | | Monochromator Silicon type options: 422 400 311 511 111 331 (Mostly used: 331 and 551) | 551 | +| mono_mosh | arc min | Monochromator horizontal mosaicity | 30 | +| mono_mosv | arc min | Monochromator vertical mosaicity | 30 | +| mono_dx | m | Monochromator delta x - positive to left of reactor beam | 0 | +| mono_dy | m | Monochromator delta y - positive upward of reactor beam | 0 | +| mono_dz | m | Monochromator delta z - positive along reactor beam | 0 | +| mono_takeoff | deg | Monochromator takeoff angle - positive anti-clockwise from reactor beam | 90.0 | +| mono_dtilt | deg | Monochromator tilt angle - not implemented yet | 0 | +| mono_r_h | m | Monochromator horizontal focus radius (min 5.0 m) | 5.0 | +| mono_r_v | m | Monochromator vertical focus radius (min 0.9 m) | 3.572 | +| port_takeoff | deg | Port takeoff angle - positive anti clockwise from reactor beam (70 or 90 deg) | 90.0 | +| inc_slit_rot | deg | Incident slit delta rotation - not implemented yet | 0 | +| inc_slit_dx | m | Incident slit delta x position - positive to left of incident beam | 0 | +| inc_slit_to_cor | m | Incident slit to sample stage center of rotation | 0.01 | +| inc_slit_width | m | Incident slit width 0.00013m to 0.006m | 0.006 | +| inc_slit_height | m | Incident slit height 0m to 0.05m | 0.05 | +| inc_slit_sep | | Incident slit separation between width and height. <0:use emperical calc, >=0:distance in m | 0 | +| mono_to_cor | m | Distance between monochromator and center of rotation | 2.5 | +| sample_dx | m | Sample delta x - positive to left of incident beam if sample_dom=0 | 0 | +| sample_dy | m | Sample delta y - positive upword of incident beam | 0 | +| sample_dz | m | Sample delta x - positive along of incident beam if sample_dom=0 | 0 | +| sample_dom | deg | Sample delta omega - positive anti-clockwise from incident beam | 0 | +| det_takeoff | deg | Detector takeoff angle - positive anti-clockwise from incident beam | -114.375 | +| cor_to_det | m | Distance between sample centre of rotation and detector | 1.179 | +| dangle_interest | deg | Delta angle of interenterest. | 125 | +| full_instrument | | | 1 | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/examples/Necsa/SAFARI_PITSI/SAFARI_PITSI.instr) for `SAFARI_PITSI.instr`. +- The South African Nuclear Energy Corporation website + +--- + +*Generated for mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/examples/PSI/PSI_DMC/PSI_DMC.md b/mcstas-comps/examples/PSI/PSI_DMC/PSI_DMC.md new file mode 100644 index 000000000..4baf1a5c1 --- /dev/null +++ b/mcstas-comps/examples/PSI/PSI_DMC/PSI_DMC.md @@ -0,0 +1,48 @@ +# The `PSI_DMC` Instrument + +*McStas: McStas model of the DMC powder diffractometer at PSI, CH.* + +## Identification + +- **Site:** PSI +- **Author:** Peter Willendrup (Risoe), Uwe Filges (PSI), Lukas Keller (PSI) +- **Origin:** PSI +- **Date:** May 7th, 2008 + +## Description + +```text +McStas model of the DMC powder diffractometer at PSI, CH. + +Please note that this instrument file does not include the radial collimator of DMC. +To generate the full 800-bin angle coverage at DMC, you should combine two simulations +using this instrumentfile, with SHIFT=0 and 0.1. This will displace the detector by half +a bin-width, which is a standard procedure at the DMC diffractometer +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| lambda | AA | Choice of wavelength, affects both monochromator and source component | 2.5666 | +| R | 1 | Reflectivity of non-curved guides | 0.87 | +| R_curve | 1 | Reflectivity of curved guides | 0.87 | +| filename | str | Choice of reflection list file, e.g. from McStas data dir | "Na2Ca3Al2F14.laz" | +| D_PHI | deg | Focusing 'd_phi' for PowderN, see mcdoc page | 6 | +| SHIFT | deg | Rotation of detector, set to 0.1 to displace by half a bin | 0 | +| PACK | 1 | Powder packing factor | 0.7 | +| Dw | 1 | Powder Debye-Waller factor | 0.8 | +| BARNS | 1 | Flag to define if powder reflection file \|F2\| is in Barns or fm | 1 | +| SPLITS | | | 58 | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/examples/PSI/PSI_DMC/PSI_DMC.instr) for `PSI_DMC.instr`. +- The PSI Monte-Carlo website. +- P Willendrup, U Filges, L Keller, E Farhi, K Lefmann: Validation of a realistic powder sample using data from DMC at PSI, ICNS 2005 (Physica B, 386, (2006), 1032.) + +--- + +*Generated for mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/examples/PSI/PSI_DMC_simple/PSI_DMC_simple.md b/mcstas-comps/examples/PSI/PSI_DMC_simple/PSI_DMC_simple.md new file mode 100644 index 000000000..5cb095bdd --- /dev/null +++ b/mcstas-comps/examples/PSI/PSI_DMC_simple/PSI_DMC_simple.md @@ -0,0 +1,47 @@ +# The `PSI_DMC_simple` Instrument + +*McStas: McStas model of the DMC powder diffractometer at PSI, CH.* + +## Identification + +- **Site:** PSI +- **Author:** Peter Willendrup (Risoe), Uwe Filges (PSI), Lukas Keller (PSI) +- **Origin:** PSI +- **Date:** May 7th, 2008 + +## Description + +```text +McStas model of the DMC powder diffractometer at PSI, CH. + +Please note that this instrument file does not include the radial collimator of DMC. +To generate the full 800-bin angle coverage at DMC, you should combine two simulations +using this instrumentfile, with SHIFT=0 and 0.1. This will displace the detector by half +a bin-width, which is a standard procedure at the DMC diffractometer +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| lambda | AA | Choice of wavelength, affects both monochromator and source component | 2.5666 | +| R | 1 | Reflectivity of non-curved guides | 0.87 | +| R_curve | 1 | Reflectivity of curved guides | 0.87 | +| filename | str | Choice of reflection list file, e.g. from McStas data dir | "Na2Ca3Al2F14.laz" | +| D_PHI | deg | Focusing 'd_phi' for PowderN, see mcdoc page | 6 | +| SHIFT | deg | Rotation of detector, set to 0.1 to displace by half a bin | 0 | +| PACK | 1 | Powder packing factor | 0.7 | +| Dw | 1 | Powder Debye-Waller factor | 0.8 | +| BARNS | 1 | Flag to define if powder reflection file \|F2\| is in Barns or fm | 1 | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/examples/PSI/PSI_DMC_simple/PSI_DMC_simple.instr) for `PSI_DMC_simple.instr`. +- The PSI Monte-Carlo website. +- P Willendrup, U Filges, L Keller, E Farhi, K Lefmann: Validation of a realistic powder sample using data from DMC at PSI, ICNS 2005 (Physica B, 386, (2006), 1032.) + +--- + +*Generated for mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/examples/PSI/PSI_Focus/PSI_Focus.md b/mcstas-comps/examples/PSI/PSI_Focus/PSI_Focus.md new file mode 100644 index 000000000..b88f13a85 --- /dev/null +++ b/mcstas-comps/examples/PSI/PSI_Focus/PSI_Focus.md @@ -0,0 +1,35 @@ +# The `PSI_Focus` Instrument + +*McStas: The FOCUS Spectrometer at PSI (Paul Scherrer Institute,Switzerland)* + +## Identification + +- **Site:** PSI +- **Author:** Uwe Filges +- **Origin:** PSI +- **Date:** Jan 2004 + +## Description + +```text +This instrument is a model of the FOCUS Spectrometer at PSI, Villigen, CH. +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| lambda | Angs | source energy | 3.4 | +| chopp_ratio | 1 | Chopper radio Fermi Chopper to Disk Chopper | 1 | +| DET | deg | Detector angle | -69.9 | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/examples/PSI/PSI_Focus/PSI_Focus.instr) for `PSI_Focus.instr`. +- Written by U.Filges PSI, Jan 2004 + +--- + +*Generated for mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/examples/PSI/PSI_source/PSI_source.md b/mcstas-comps/examples/PSI/PSI_source/PSI_source.md new file mode 100644 index 000000000..6f4e004ed --- /dev/null +++ b/mcstas-comps/examples/PSI/PSI_source/PSI_source.md @@ -0,0 +1,47 @@ +# The `PSI_source` Instrument + +*McStas: McStas model of the DMC powder diffractometer at PSI, CH.* + +## Identification + +- **Site:** PSI +- **Author:** Peter Willendrup (Risoe), Uwe Filges (PSI), Lukas Keller (PSI) +- **Origin:** PSI +- **Date:** May 7th, 2008 + +## Description + +```text +McStas model of the DMC powder diffractometer at PSI, CH. + +Please note that this instrument file does not include the radial collimator of DMC. +To generate the full 800-bin angle coverage at DMC, you should combine two simulations +using this instrumentfile, with SHIFT=0 and 0.1. This will displace the detector by half +a bin-width, which is a standard procedure at the DMC diffractometer +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| lambda | AA | Choice of wavelength, affects both monochromator and source component | 2.5666 | +| R | 1 | Reflectivity of non-curved guides | 0.87 | +| R_curve | 1 | Reflectivity of curved guides | 0.87 | +| filename | str | Choice of reflection list file, e.g. from McStas data dir | "Na2Ca3Al2F14.laz" | +| D_PHI | deg | Focusing 'd_phi' for PowderN, see mcdoc page | 6 | +| SHIFT | deg | Rotation of detector, set to 0.1 to displace by half a bin | 0 | +| PACK | 1 | Powder packing factor | 0.7 | +| Dw | 1 | Powder Debye-Waller factor | 0.8 | +| BARNS | 1 | Flag to define if powder reflection file \|F2\| is in Barns or fm | 1 | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/examples/PSI/PSI_source/PSI_source.instr) for `PSI_source.instr`. +- The PSI Monte-Carlo website. +- P Willendrup, U Filges, L Keller, E Farhi, K Lefmann: Validation of a realistic powder sample using data from DMC at PSI, ICNS 2005 (Physica B, 386, (2006), 1032.) + +--- + +*Generated for mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/examples/PSI/RITA-II/RITA-II.md b/mcstas-comps/examples/PSI/RITA-II/RITA-II.md new file mode 100644 index 000000000..439cc3d16 --- /dev/null +++ b/mcstas-comps/examples/PSI/RITA-II/RITA-II.md @@ -0,0 +1,152 @@ +# The `RITA_II` Instrument + +*McStas: RITA type triple-axis spectrometer (TAS)* + +## Identification + +- **Site:** PSI +- **Author:** Linda Udby and Peter Willendrup +- **Origin:** Risø (Denmark) +- **Date:** 2012 + +## Description + +```text +This instrument is model of RITA-II at the RNR13 guide at SINQ, PSI as of 2009. The energy and q-resolution as been verified against measured data in 2- and 3-axis modes. See Udby et al., Nuclear Instruments and Methods 634 (2011) s138-.
    +The model is based on the following components in downstream order +
      +
    • The SINQ source in 2009 - tested up to Ei=15 meV versus measurements. The spectrum of genereated rays is controlled by the BPL and BPH parameters.
    • +
    • The RNR13 guide with average m-value based on color-codes on guide pieces and gaps as measured/from technical drawings.
    • +
    • The Druckal monochromator: 5 slabs of PG(002) with vertically focusing option. The horizontal rotation angle (A1) and scattering angle (A2) can either be set by user input or calculated automatically from EI/KI.
    • +
    • Optional filter after the monochromator, before the sample.
    • +
    • Variable linear collimator after the monochromator, before the sample.
    • +
    • Optional perspex attenuation.
    • +
    • Inbound Diaphagm slit.
    • +
    • Sample: Incoherent scatterer, powder or single crystal from reflection list.
    • +
    • Outbound Diaphragm slit.
    • +
    • Optional filter after the sample, with radial collimator.
    • +
    • 9 - blade analyser: Base-rotation (AA5) and individual blade angles (C1-C9) can either be set by user or calculated automatically from EF/KF.
    • +
    • Coarse collimator: Removes cross-talk by allowing only passage of scattered neutrons from specified blade in each channel.
    • +
    • Detector: PSD detector with 100% efficiency and specified point-spread function from measurements.
    • +
    • Windows: Monitors the neutrons in each electronically specified window [XWinMin,XWinMax;YWinMin,YWinMax].
    • +
    +EXAMPLES +
      +
    • Generating a virtual source
    • +mcrun RITA-II.instr -n3e6 BPL=0.97 BPH=1.03 EI=5 EF=5 COLL_MS=40 SAMPLE=1 OUTFILTER=0 REP=10 VIRTUALOUT=1 -d RITA-II_Vsource40
      +
    • Vanadium sample, no filters, seeing 1st-3rd order neutrons
    • +mcrun RITA-II.instr -n3e6 BPL=0.30 BPH=1.03 EI=5 EF=5 SAMPLE=1 INFILTER=0 OUTFILTER=0 REP=10 -d RITA-II_Vanadium
      +
    • Powder sample (default sapphire), simulation 1) through entire instrument or 2)from virtual source 3) in 2-axis mode, with particular slit settings scaling the source yield to 2008 values
    • +1) mcrun RITA-II.instr -n3e6 EF=5 EN=0 SAMPLE=2 COLL_MS=40 SAMPLEFILE="Al2O3_sapphire.lau" BARNS=0 SOURCEFILE="RITA-II_Vsource40/Vin_default.dat" REP=10 -d RITA-II_40_powder
      +2) mcrun RITA-II.instr EI=5 EF=5 SAMPLE=2 SAMPLEFILE="Al2O3_sapphire.lau" BARNS=0 SOURCEFILE="RITA-II_Vsource40/Vin_default.dat" VIRTUALIN=1 REP=3 -d RITA-II_VINsource40_powder
      +3) mcrun RITA-II.instr -n 1e7 ITAR=0.71 COLL_MS=19.6 BPL=0.97 BPH=1.03 EI=5 EF=5 QH=0 QK=0 QL=0 QM=1 A3=0.001 A4=-71 AA5=-90 A6=1e-3 MST=25 MSB=25 MSL=10 MSR=10 SAMPLE=2 SAMPLEFILE="Al2O3_sapphire.lau" SST=25 SSB=25 SSL=10 SSR=10 OUTFILTER=0 OUTFILTERFILE=Be.trm COARSE=1 REP=5 LC=6 RC=4 REP=1 BARNS=0 ANAFORCE=1 -d RITA-II_Al2O3_2axis
      +
    • Single crystal sample. Define first lattice vector (a) along -x (to the right) , second lattice vector (b) along z (forward), third lattice vector (c) along y (up).
    • +mcrun RITA-II.instr -n1e6 BPL=0.97 BPH=1.03 EI=5 EF=5 SAMPLE=3 REP=10 QH=2 QM=0 AS=4.95 BS=4.95 CS=4.95 AAX=-4.95 BBZ=4.95 CCY=4.95 AH=0 AK=1 AL=0 BH=1 BK=0 BL=0 SAMPLEFILE="Pb.laz" -d RITA-II_SXPb200
      +
    • Phonon sample, inelastic scattering, no Bragg peaks in sample
    • +mcrun RITA-II.instr -n1e6 L0=3.418 BPL=0.97 BPH=1.03 EI=7 EF=5 SAMPLE=4 REP=10 QH=2 QK=0.16 QM=0 AS=4.95 BS=4.95 CS=4.95 AAX=-4.95 BBZ=4.95 CCY=4.95 AH=0 AK=1 AL=0 BH=1 BK=0 BL=0 SAMPLEFILE="Pb.laz" -d RITA-II_SXPb200_2meV
      +
    + +Example: BPL=0.97 BPH=1.03 EI=5 EN=0 COLL_MS=40 SAMPLE=1 OUTFILTER=0 REP=10 Detector: psd_detector_I=216.427 +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| ITAR | mA | Relative neutron yield from the spallation target. Value relative to 2009 | 1.0 | +| L0 | Angs | Centre of generated wavelength distribution from source | 4.045 | +| BPL | | Band Pass Low factor, multiplied on source wavelength L0 to allow neutrons with wavelengths with lambda {BPL*L0,BPH*L0} to be traced from the source. | 0.97 | +| BPH | | Band Pass High factor, multiplied on source wavelength L0 to allow neutrons with wavelengths with lambda {BPL*L0,BPH*L0} to be traced from the source. | 1.03 | +| MONO_N | 1 | Order of reflection used on mono | 1 | +| MONOFORCE | 1 | If set, monochromator is flat | 0 | +| MONO_MOS_H | min | Monochromator, horizontal mosaicity | 37 | +| MONO_MOS_V | min | Monochromator, vertical mosaicity | 37 | +| EI | meV | Incoming neutron energy. Also used to set range of energy monitors | 0 | +| EF | meV | Outgoing neutron energy. Also used to set range of energy monitors | 0 | +| EN | meV | Energy transferred in crystal | 0 | +| SM | 1 | | 1 | +| SS | 1 | Scattering configuration signs. 'W' is SM=1,SS=-1,SA=1 | -1 | +| SA | 1 | | 1 | +| QH | rlu | Measurement QH position in crystal | 0 | +| QK | rlu | Measurement QK position in crystal | 0 | +| QL | rlu | Measurement QL position in crystal | 0 | +| QM | Angs-1 | Wavevector transferred in sample, use QM=0 if (QH,QK,QL) is specified | 1.8051 | +| AS | Angs | Sample lattice parameter A | 4.95 | +| BS | Angs | Sample lattice parameter B | 4.95 | +| CS | Angs | Sample lattice parameter C | 4.95 | +| AA | deg | Angle between lattice vectors B,C | 90 | +| BB | deg | Angle between lattice vectors C,A | 90 | +| CC | deg | Angle between lattice vectors A,B | 90 | +| AH | rlu | First reciprocal lattice vector in scattering plane, X | 0 | +| AK | rlu | First reciprocal lattice vector in scattering plane, Y | 1 | +| AL | rlu | First reciprocal lattice vector in scattering plane, Z | 0 | +| BH | rlu | Second reciprocal lattice vector in scattering plane, X | 1 | +| BK | rlu | Second reciprocal lattice vector in scattering plane, Y | 0 | +| BL | rlu | Second reciprocal lattice vector in scattering plane, Z | 0 | +| INFILTER | 1 | Flag to indicate if mono-block filter is in or out | 0 | +| INFILTERFILE | string | An input file of wavevector vs transmission to use with incoming filter | "Be.trm" | +| COLL_MS | deg | Primary collimator max divergence | 80 | +| MST | m | Monochromator TOP slit | 40 | +| MSB | m | Monochromator BOTTOM slit | 40 | +| MSL | m | Monochromator LEFT slit | 40 | +| MSR | m | Monochromator RIGHT slit | 40 | +| PTHICK | m | Thickness of perspex attenuator | 1e-3 | +| PERSPEX | 1 | Flag to indicate if perspex attenuator is in or out | 0 | +| SAMPLE | 1 | 1 is incoherent scatterer, 2 is powder, 3 is single crystal. | 1 | +| SAMPLEFILE | string | Name of samplefile (with reflectionlist etc) | "default" | +| MOS | | Isotropic 'mosaicity' of single crystal | 100 | +| DD_D | | spead of lattice parameter | 1e-3 | +| SAMPLESIZE | m | Length, height and width of single crystal sample, or radius and height of phonon sample | 0.01 | +| BARNS | 1 | If set the flag indicates that reflection list structure factors are in units of barns, otherwise fm^2 | 1 | +| AAX | | | -4.95 | +| AAY | | Orientation vector of unit cell, single_crystal | 0 | +| AAZ | | | 0 | +| BBX | | | 0 | +| BBY | | Orientation vector of unit cell, single_crystal | 0 | +| BBZ | | | 4.95 | +| CCX | | | 0 | +| CCY | | Orientation vector of unit cell, single_crystal | 4.95 | +| CCZ | | | 0 | +| A1 | deg | Monohromator rotation angle | 0 | +| A2 | deg | Monohromator take-off angle | 0 | +| A3 | deg | Sample rotation angle | 0 | +| A4 | deg | Sample take-off angle | 0 | +| A6 | deg | Analyzer take-off angle | 0 | +| TILT | deg | Tilt angle out of plane of the sample scattering vector out of plane (rotation around z of the A3 arm) | 0 | +| SST | m | Sample TOP slit | 100 | +| SSB | m | Sample BOTTOM slit | 100 | +| SSL | m | Sample LEFT slit | 100 | +| SSR | m | Sample RIGHT slit | 100 | +| OUTFILTER | 1 | Flag to indicate if the outbound filter is in or out | 1 | +| OUTFILTERFILE | string | An input file of wavevector vs transmission to use with outgoing filter | "Be.trm" | +| ANAFORCE | 1 | If set the analyzer is forced flat | 0 | +| AA5 | deg | Analyzer rack rotation angle | 0 | +| C1 | deg | Analyzer blade 1 position | 0 | +| C2 | deg | Analyzer blade 2 position | 0 | +| C3 | deg | Analyzer blade 3 position | 0 | +| C4 | deg | Analyzer blade 4 position | 0 | +| C5 | deg | Analyzer blade 5 position | 0 | +| C6 | deg | Analyzer blade 6 position | 0 | +| C7 | deg | Analyzer blade 7 position | 0 | +| C8 | deg | Analyzer blade 8 position | 0 | +| C9 | deg | Analyzer blade 9 position | 0 | +| COARSE | 1 | Flag to indicate if Detector collimator is in or out | 1 | +| LC | deg | Detector-collimator angle of the leftmost blade | 4 | +| RC | deg | Detector-collimator angle of the rightmost blade | 3 | +| REP | 1 | Repetition factor of virtual_input or Monochromator/Sample/Analyzer SPLITs | 1 | +| VIRTUALOUT | 1 | If set, flag indicates that a Virtual source is created after the monochromator collimator | 0 | +| VIRTUALIN | 1 | If set, flag to indicates that Virtual source is used after the monochromator collimator | 0 | +| SOURCEFILE | string | Name of file to be used/genereated as virtual input/output | "Vin_default.dat" | +| verbose | 1 | print TAS configuration. 0 to be quiet | 1 | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/examples/PSI/RITA-II/RITA-II.instr) for `RITA-II.instr`. +- Rescal for Matlab at http://www.ill.fr/tas/matlab +- Restrax at http://omega.ujf.cas.cz/restrax/ + +--- + +*Generated for mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/examples/Risoe/TAS1_C1/TAS1_C1.md b/mcstas-comps/examples/Risoe/TAS1_C1/TAS1_C1.md new file mode 100644 index 000000000..d4c5e424a --- /dev/null +++ b/mcstas-comps/examples/Risoe/TAS1_C1/TAS1_C1.md @@ -0,0 +1,43 @@ +# The `TAS1_C1` Instrument + +*McStas: Example formerly known as linup-1.instr + +The conventional cold-source triple-axis spectrometer TAS1 at Risoe National +Laboratory used as a diffractometer for monochromator rocking curves* + +## Identification + +- **Site:** Risoe +- **Author:** A. Abrahamsen, N. B. Christensen, and E. Lauridsen +- **Origin:** Risoe +- **Date:** 1998 + +## Description + +```text +This instrument is the conventional cold-source triple-axis spectrometer TAS1 +at Risoe National Laboratory. It does not exist anymore, but was used as the +first detailed work performed with the McStas package. +Here it is used as a diffractometer for monochromator rocking curves. The +detector is at the sample position. +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| PHM | deg | Monochromator arm angle, aka A1 | -37.077 | +| TTM | deg | Monochromator take-off angle, aka A2 | -74 | +| C1 | arcmin | C1 collimation | 30 | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/examples/Risoe/TAS1_C1/TAS1_C1.instr) for `TAS1_C1.instr`. +- The McStas User manual +- A. Abrahamsen, N. B. Christensen, and E. Lauridsen. McStas simulations of the TAS1 spectrometer. Student's report, Niels Bohr Institute, University of Copenhagen, 1998. + +--- + +*Generated for mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/examples/Risoe/TAS1_C1_Tilt/TAS1_C1_Tilt.md b/mcstas-comps/examples/Risoe/TAS1_C1_Tilt/TAS1_C1_Tilt.md new file mode 100644 index 000000000..cec9d68f8 --- /dev/null +++ b/mcstas-comps/examples/Risoe/TAS1_C1_Tilt/TAS1_C1_Tilt.md @@ -0,0 +1,44 @@ +# The `TAS1_C1_Tilt` Instrument + +*McStas: Example formerly known as linup-2.instr + +The conventional cold-source triple-axis spectrometer TAS1 at Risoe National +Laboratory used as a diffractometer for a collimator tilt alignment.* + +## Identification + +- **Site:** Risoe +- **Author:** A. Abrahamsen, N. B. Christensen, and E. Lauridsen +- **Origin:** Risoe +- **Date:** 1998 + +## Description + +```text +This instrument is the conventional cold-source triple-axis spectrometer TAS1 +at Risoe National Laboratory. It does not exist anymore, but was used as the +first detailed work performed with the McStas package. +Here it is used as a diffractometer for a collimator tilt alignment. The +detector is at the sample position and there is no analyzer. +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| PHM | deg | Monochromator arm angle, aka A1 | -37.077 | +| TTM | deg | Monochromator take-off angle, aka A2 | -74 | +| C1 | min | Collimator 1 aperture (mono-sample arm) | 30 | +| OMC1 | deg | Tilt angle of the Collimator 1 | 5.5 | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/examples/Risoe/TAS1_C1_Tilt/TAS1_C1_Tilt.instr) for `TAS1_C1_Tilt.instr`. +- The McStas User manual +- A. Abrahamsen, N. B. Christensen, and E. Lauridsen. McStas simulations of the TAS1 spectrometer. Student's report, Niels Bohr Institute, University of Copenhagen, 1998. + +--- + +*Generated for mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/examples/Risoe/TAS1_Diff_Powder/TAS1_Diff_Powder.md b/mcstas-comps/examples/Risoe/TAS1_Diff_Powder/TAS1_Diff_Powder.md new file mode 100644 index 000000000..fec0ef81d --- /dev/null +++ b/mcstas-comps/examples/Risoe/TAS1_Diff_Powder/TAS1_Diff_Powder.md @@ -0,0 +1,49 @@ +# The `TAS1_Diff_Powder` Instrument + +*McStas: Example formerly known as linup-5.instr + +The conventional cold-source triple-axis spectrometer TAS1 at Risoe National +Laboratory used as a diffractometer for an alignment study with a +powder sample.* + +## Identification + +- **Site:** Risoe +- **Author:** A. Abrahamsen, N. B. Christensen, and E. Lauridsen +- **Origin:** Risoe +- **Date:** 1998 + +## Description + +```text +This instrument is the conventional cold-source triple-axis spectrometer TAS1 +at Risoe National Laboratory. It does not exist anymore, but was used as the +first detailed work performed with the McStas package. +Here it is used as a diffractometer for an alignment study. The +sample is a powder and there is no analyzer. +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| PHM | deg | Monochromator arm angle, aka A1 | -37.077 | +| TTM | deg | Monochromator take-off angle, aka A2 | -74 | +| TT | deg | Take-off angle at the sample position, aka A4 | 33.52 | +| TTA | deg | Take-off angle at the analyzer position, aka A6 | 0 | +| C1 | min | Collimator 1 aperture (mono-sample arm) | 30 | +| OMC1 | deg | Tilt angle of the Collimator 1 | 5.5 | +| C2 | min | Collimator 2 aperture (sample-ana arm) | 28 | +| C3 | min | Collimator 3 aperture (ana-detector arm) | 67 | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/examples/Risoe/TAS1_Diff_Powder/TAS1_Diff_Powder.instr) for `TAS1_Diff_Powder.instr`. +- The McStas User manual +- A. Abrahamsen, N. B. Christensen, and E. Lauridsen. McStas simulations of the TAS1 spectrometer. Student's report, Niels Bohr Institute, University of Copenhagen, 1998. + +--- + +*Generated for mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/examples/Risoe/TAS1_Diff_Slit/TAS1_Diff_Slit.md b/mcstas-comps/examples/Risoe/TAS1_Diff_Slit/TAS1_Diff_Slit.md new file mode 100644 index 000000000..c3cbbdcc6 --- /dev/null +++ b/mcstas-comps/examples/Risoe/TAS1_Diff_Slit/TAS1_Diff_Slit.md @@ -0,0 +1,48 @@ +# The `TAS1_Diff_Slit` Instrument + +*McStas: Example formerly known as linup-3.instr + +The conventional cold-source triple-axis spectrometer TAS1 at Risoe National +Laboratory used as a diffractometer for a collimation alignment study with a +slit sample.* + +## Identification + +- **Site:** Risoe +- **Author:** A. Abrahamsen, N. B. Christensen, and E. Lauridsen +- **Origin:** Risoe +- **Date:** 1998 + +## Description + +```text +This instrument is the conventional cold-source triple-axis spectrometer TAS1 +at Risoe National Laboratory. It does not exist anymore, but was used as the +first detailed work performed with the McStas package. +Here it is used as a diffractometer for a collimation alignment study. The +sample is a slit and there is no analyzer. +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| PHM | deg | Monochromator arm angle, aka A1 | -37.077 | +| TTM | deg | Monochromator take-off angle, aka A2 | -74 | +| TT | deg | Take-off angle at the sample position, aka A4 | 33.52 | +| C1 | min | Collimator 1 aperture (mono-sample arm) | 30 | +| OMC1 | deg | Tilt angle of the Collimator 1 | 5.5 | +| C2 | min | Collimator 2 aperture (sample-ana arm) | 28 | +| C3 | min | Collimator 3 aperture (ana-detector arm) | 67 | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/examples/Risoe/TAS1_Diff_Slit/TAS1_Diff_Slit.instr) for `TAS1_Diff_Slit.instr`. +- The McStas User manual +- A. Abrahamsen, N. B. Christensen, and E. Lauridsen. McStas simulations of the TAS1 spectrometer. Student's report, Niels Bohr Institute, University of Copenhagen, 1998. + +--- + +*Generated for mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/examples/Risoe/TAS1_Diff_Vana/TAS1_Diff_Vana.md b/mcstas-comps/examples/Risoe/TAS1_Diff_Vana/TAS1_Diff_Vana.md new file mode 100644 index 000000000..006228442 --- /dev/null +++ b/mcstas-comps/examples/Risoe/TAS1_Diff_Vana/TAS1_Diff_Vana.md @@ -0,0 +1,49 @@ +# The `TAS1_Diff_Vana` Instrument + +*McStas: Example formerly known as linup-4.instr + +The conventional cold-source triple-axis spectrometer TAS1 at Risoe National +Laboratory used as a diffractometer for an alignment study with a +vanadium sample.* + +## Identification + +- **Site:** Risoe +- **Author:** A. Abrahamsen, N. B. Christensen, and E. Lauridsen +- **Origin:** Risoe +- **Date:** 1998 + +## Description + +```text +This instrument is the conventional cold-source triple-axis spectrometer TAS1 +at Risoe National Laboratory. It does not exist anymore, but was used as the +first detailed work performed with the McStas package. +Here it is used as a diffractometer for an alignment study. The +sample is a vanadium cylinder and there is no analyzer. +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| PHM | deg | Monochromator arm angle, aka A1 | -37.077 | +| TTM | deg | Monochromator take-off angle, aka A2 | -74 | +| TT | deg | Take-off angle at the sample position, aka A4 | 33.52 | +| TTA | deg | Take-off angle at the analyzer position, aka A6 | 0 | +| C1 | min | Collimator 1 aperture (mono-sample arm) | 30 | +| OMC1 | deg | Tilt angle of the Collimator 1 | 5.5 | +| C2 | min | Collimator 2 aperture (sample-ana arm) | 28 | +| C3 | min | Collimator 3 aperture (ana-detector arm) | 67 | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/examples/Risoe/TAS1_Diff_Vana/TAS1_Diff_Vana.instr) for `TAS1_Diff_Vana.instr`. +- The McStas User manual +- A. Abrahamsen, N. B. Christensen, and E. Lauridsen. McStas simulations of the TAS1 spectrometer. Student's report, Niels Bohr Institute, University of Copenhagen, 1998. + +--- + +*Generated for mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/examples/Risoe/TAS1_Powder/TAS1_Powder.md b/mcstas-comps/examples/Risoe/TAS1_Powder/TAS1_Powder.md new file mode 100644 index 000000000..8db0189cb --- /dev/null +++ b/mcstas-comps/examples/Risoe/TAS1_Powder/TAS1_Powder.md @@ -0,0 +1,48 @@ +# The `TAS1_Powder` Instrument + +*McStas: Example formerly known as linup-7.instr + +The conventional cold-source triple-axis spectrometer TAS1 at Risoe National +Laboratory used with a powder sample.* + +## Identification + +- **Site:** Risoe +- **Author:** A. Abrahamsen, N. B. Christensen, and E. Lauridsen +- **Origin:** Risoe +- **Date:** 1998 + +## Description + +```text +This instrument is the conventional cold-source triple-axis spectrometer TAS1 +at Risoe National Laboratory. It does not exist anymore, but was used as the +first detailed work performed with the McStas package. +The sample is a powder and the analyzer is a single plate. +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| PHM | deg | Monochromator rotation angle, aka A1 | -37.077 | +| TTM | deg | Monochromator take-off angle, aka A2 | -74 | +| TT | deg | Take-off angle at the sample position, aka A4 | 33.52 | +| TTA | deg | Take-off angle at the analyzer position, aka A6 | 0 | +| C1 | min | Collimator 1 aperture (mono-sample arm) | 30 | +| OMC1 | deg | Tilt angle of the Collimator 1 | 5.5 | +| C2 | min | Collimator 2 aperture (sample-ana arm) | 28 | +| C3 | min | Collimator 3 aperture (ana-detector arm) | 67 | +| OMA | deg | Analyzer rotation angle, aka A5 | -17.45 | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/examples/Risoe/TAS1_Powder/TAS1_Powder.instr) for `TAS1_Powder.instr`. +- The McStas User manual +- A. Abrahamsen, N. B. Christensen, and E. Lauridsen. McStas simulations of the TAS1 spectrometer. Student's report, Niels Bohr Institute, University of Copenhagen, 1998. + +--- + +*Generated for mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/examples/Risoe/TAS1_Vana/TAS1_Vana.md b/mcstas-comps/examples/Risoe/TAS1_Vana/TAS1_Vana.md new file mode 100644 index 000000000..ee6c9d837 --- /dev/null +++ b/mcstas-comps/examples/Risoe/TAS1_Vana/TAS1_Vana.md @@ -0,0 +1,48 @@ +# The `TAS1_Vana` Instrument + +*McStas: Example formerly known as linup-6.instr + +The conventional cold-source triple-axis spectrometer TAS1 at Risoe National +Laboratory used with a vanadium sample.* + +## Identification + +- **Site:** Risoe +- **Author:** A. Abrahamsen, N. B. Christensen, and E. Lauridsen +- **Origin:** Risoe +- **Date:** 1998 + +## Description + +```text +This instrument is the conventional cold-source triple-axis spectrometer TAS1 +at Risoe National Laboratory. It does not exist anymore, but was used as the +first detailed work performed with the McStas package. +The sample is a vanadium and the analyzer is a single plate. +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| PHM | deg | Monochromator rotation angle, aka A1 | -37.077 | +| TTM | deg | Monochromator take-off angle, aka A2 | -74 | +| TT | deg | Take-off angle at the sample position, aka A4 | 33.52 | +| TTA | deg | Take-off angle at the analyzer position, aka A6 | 0 | +| C1 | min | Collimator 1 aperture (mono-sample arm) | 30 | +| OMC1 | deg | Tilt angle of the Collimator 1 | 5.5 | +| C2 | min | Collimator 2 aperture (sample-ana arm) | 28 | +| C3 | min | Collimator 3 aperture (ana-detector arm) | 67 | +| OMA | deg | Analyzer rotation angle, aka A5 | -17.45 | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/examples/Risoe/TAS1_Vana/TAS1_Vana.instr) for `TAS1_Vana.instr`. +- The McStas User manual +- A. Abrahamsen, N. B. Christensen, and E. Lauridsen. McStas simulations of the TAS1 spectrometer. Student's report, Niels Bohr Institute, University of Copenhagen, 1998. + +--- + +*Generated for mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/examples/SINE2020/McStas_Isotropic_Sqw/McStas_Isotropic_Sqw.md b/mcstas-comps/examples/SINE2020/McStas_Isotropic_Sqw/McStas_Isotropic_Sqw.md new file mode 100644 index 000000000..66786ccf3 --- /dev/null +++ b/mcstas-comps/examples/SINE2020/McStas_Isotropic_Sqw/McStas_Isotropic_Sqw.md @@ -0,0 +1,61 @@ +# The `McStas_Isotropic_Sqw` Instrument + +*McStas: Wrapper instrument for use of Isotropic_Sqw in SIMRES* + +## Identification + +- **Site:** SINE2020 +- **Author:** Peter Willendrup +- **Origin:** DTU +- **Date:** December 2018 + +## Description + +```text +This instrument provides an MCPL-based interface for the use of Isotropic_Sqw in the SIMRES package. +The instrument has been developed in the context of WP8 in the SINE2020 project and is part of +deliverable D8.8. + +(EU Horizon 2020 research and innovation programme under grant agreement No 654000). + +The default material is liquid Rb as a cylinder of radius 0.01 m x height 0.07 m + +Example: McStas_Isotropic_Sqw Sqw_coh=Rb_liq_coh.sqw Sqw_inc=Rb_liq_inc.sqw radius=0.01 yheight=0.07 +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| Sqw_coh | string | Name of the file containing the values of Q, w and S(Q,w) Coherent part; Q in Angs-1, E in meV, S(q,w) in meV-1. Use 0, NULL or "" to disable. | "Rb_liq_coh.sqw" | +| Sqw_inc | string | Name of the file containing the values of Q, w and S(Q,w). Incoherent (self) part. Use 0, NULL or "" to scatter isotropically (V-like). | "Rb_liq_inc.sqw" | +| geometry | string | Name of an Object File Format (OFF) or PLY file for complex geometry. | "" | +| radius | m | Sample radius | 0.01 | +| xwidth | m | Sample width along x | 0 | +| yheight | m | Sample height along y | 0.07 | +| zdepth | m | Sample depth along z | 0 | +| thickness | m | Thickness of hollow sample Negative value extends the hollow volume outside of the box/cylinder. | 0 | +| threshold | m | Value under which S(Q,w) is not accounted for. to set according to the S(Q,w) values, i.e. not too low. | 1e-20 | +| T | K | Temperature of sample, detailed balance. Use T=0 to disable it. and T=-1 to automatically set it from non-classical S(q,w). | 0 | +| d_phi | deg | Vertical focusing limit [deg] | 0 | +| verbose | 1 | Verbosity level (0:silent, 1:normal, 2:verbose, 3:debug). A verbosity>1 also computes dispersions and S(q,w) analysis. | 1 | +| classical | 1 | Assumes the S(q,w) data from the files is a classical S(q,w), and multiply that data by exp(hw/2kT) on up/down energy sides. Use 0 when obtained from raw experiments, 1 from molecular dynamics. Use -1 to guess from a data set including both energy sides. | -1 | +| powder_barns | 1 | 0 when \|F2\| data in powder file are fm^2, 1 when in barns (barns=1 for laz, barns=0 for lau type files). | 1 | +| quantum_correction | str | Specify the type of quantum correction to use "Boltzmann"/"Schofield","harmonic"/"Bader" or "standard"/"Frommhold" (default) | "standard" | +| norm | 1 | Normalize S(q,w) when -1 (default). Use raw data when 0, multiply S(q,w) when norm>0. | -1 | +| rot_x | deg | Sample rotation around x | 0 | +| rot_y | deg | Sample rotation around y | 0 | +| rot_z | deg | Sample rotation around z | 0 | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/examples/SINE2020/McStas_Isotropic_Sqw/McStas_Isotropic_Sqw.instr) for `McStas_Isotropic_Sqw.instr`. +- Website for the MCPL particle exchange format +- Website for the SIMRES package +- Website for WP8 in EU-SINE2020 + +--- + +*Generated for mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/examples/SINE2020/McStas_PowderN/McStas_PowderN.md b/mcstas-comps/examples/SINE2020/McStas_PowderN/McStas_PowderN.md new file mode 100644 index 000000000..d9e931b9f --- /dev/null +++ b/mcstas-comps/examples/SINE2020/McStas_PowderN/McStas_PowderN.md @@ -0,0 +1,58 @@ +# The `McStas_PowderN` Instrument + +*McStas: Wrapper instrument for use of PowderN in SIMRES* + +## Identification + +- **Site:** SINE2020 +- **Author:** Peter Willendrup +- **Origin:** DTU +- **Date:** December 2018 + +## Description + +```text +This instrument provides an MCPL-based interface for the use of PowderN in the SIMRES package. +The instrument has been developed in the context of WP8 in the SINE2020 project and is part of +deliverable D8.8. + +(EU Horizon 2020 research and innovation programme under grant agreement No 654000). + +The default material is Al as a cylinder of radius 0.01 m x height 0.07 m + +Example: McStas_PowderN reflections=Al.lau radius=0.01 yheight=0.07 +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| reflections | string | Input file for reflections, laz and lau formats from McStas accepted | "Al.lau" | +| geometry | string | Name of an Object File Format (OFF) or PLY file for complex geometry. | "" | +| radius | m | Sample radius | 0.01 | +| xwidth | m | Sample width along x | 0 | +| yheight | m | Sample height along y | 0.07 | +| zdepth | m | Sample depth along z | 0 | +| thickness | m | Thickness of hollow sample | 0 | +| pack | m | Packing factor. | 1 | +| d_omega | deg | Horizontal (incoherent only) focusing limit [deg] | 0 | +| d_phi | deg | Vertical focusing limit [deg] | 0 | +| focus_flip | 1 | Controls the sense of d_phi. If 0 d_phi is measured against the xz-plane. If nonzero, d_phi is measured against zy-plane. | 0 | +| tth_sign | 1 | Sign of the scattering angle. If 0, the sign is chosen randomly | 0 | +| barns | 1 | Flag to indicate if \|F 2\| from "reflections" is in barns or fm2 (barns = 1 for laz, barns = 0 for lau type files). | 0 | +| rot_x | deg | Sample rotation around x | 0 | +| rot_y | deg | Sample rotation around y | 0 | +| rot_z | deg | Sample rotation around z | 0 | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/examples/SINE2020/McStas_PowderN/McStas_PowderN.instr) for `McStas_PowderN.instr`. +- Website for the MCPL particle exchange format +- Website for the SIMRES package +- Website for WP8 in EU-SINE2020 + +--- + +*Generated for mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/examples/SINE2020/McStas_Single_crystal/McStas_Single_crystal.md b/mcstas-comps/examples/SINE2020/McStas_Single_crystal/McStas_Single_crystal.md new file mode 100644 index 000000000..b71019508 --- /dev/null +++ b/mcstas-comps/examples/SINE2020/McStas_Single_crystal/McStas_Single_crystal.md @@ -0,0 +1,58 @@ +# The `McStas_Single_crystal` Instrument + +*McStas: Wrapper for use of Single_crystal in SIMRES* + +## Identification + +- **Site:** SINE2020 +- **Author:** Erik B Knudsen erkn@fysik.dtu.dk +- **Origin:** DTU Physics +- **Date:** Dec. 2018 + +## Description + +```text +This instrument provides an MCPL-based interface for the use of Single_crystal in the SIMRES package. +The instrument has been developed in the context of WP8 in the SINE2020 project and is part of +deliverable D8.8. + +(EU Horizon 2020 research and innovation programme under grant agreement No 654000). + +The default material is Al as a cylinder of radius 0.01 m x height 0.02 m + +Example: McStas_Single_crystal reflections=Al.lau radius=0.01 yheight=0.02 +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| reflections | string | Input file for reflections, laz and lau formats from McStas accepted | "Al.lau" | +| geometry | string | Name of an Object File Format (OFF) or PLY file for complex geometry. | "" | +| radius | m | Sample radius | 1e-2 | +| xwidth | m | Sample width along x | 0 | +| yheight | m | Sample height along y | 2e-2 | +| zdepth | m | Sample depth along z | 0 | +| delta_d_d | 1 | Lattice spacing variance, gaussian RMS | 1e-3 | +| mosaic | arc minutes | Crystal mosaic (isotropic), gaussian RMS. Puts the crystal in the isotropic mosaic model state, thus disregarding other mosaicity parameters. | 1 | +| mosaic_a | arc minutes | Horizontal (rotation around lattice vector a) mosaic (anisotropic), gaussian RMS. Put the crystal in the anisotropic crystal vector state. I.e. model mosaicity through rotation around the crystal lattice vectors. Has precedence over in-plane mosaic model. | 0 | +| mosaic_b | arc minutes | Vertical (rotation around lattice vector b) mosaic (anisotropic), gaussian RMS. | 0 | +| mosaic_c | arc minutes | Out-of-plane (Rotation around lattice vector c) mosaic (anisotropic), gaussian RMS | 0 | +| barns | 1 | Flag to indicate if \|F 2\| from "reflections" is in barns or fm2 (barns = 1 for laz, barns = 0 for lau type files). | 0 | +| order | 1 | Limit multiple scattering up to given order (0: all, 1: first, 2: second, ...) | 0 | +| rot_x | deg | Sample rotation around x | 0 | +| rot_y | deg | Sample rotation around y | 0 | +| rot_z | deg | Sample rotation around z | 0 | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/examples/SINE2020/McStas_Single_crystal/McStas_Single_crystal.instr) for `McStas_Single_crystal.instr`. +- Website for the MCPL particle exchange format +- Website for the SIMRES package +- Website for WP8 in EU-SINE2020 + +--- + +*Generated for mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/examples/SNS/Gallmeier_SNS_decoupled_poisoned/Gallmeier_SNS_decoupled_poisoned.md b/mcstas-comps/examples/SNS/Gallmeier_SNS_decoupled_poisoned/Gallmeier_SNS_decoupled_poisoned.md new file mode 100644 index 000000000..dab70eb30 --- /dev/null +++ b/mcstas-comps/examples/SNS/Gallmeier_SNS_decoupled_poisoned/Gallmeier_SNS_decoupled_poisoned.md @@ -0,0 +1,34 @@ +# The `Gallmeier_SNS_decoupled_poisoned` Instrument + +*McStas: Simple instrumentfile for estimating SNS brilliance, moderator is a the Gallmeier SNS_source_analytic applying Ikeda-Carpenter vs. Pade function fits to MCNPX tables.* + +## Identification + +- **Site:** SNS +- **Author:** Peter Willendrup +- **Origin:** DTU Physics +- **Date:** May 29,2013 + +## Description + +```text +Simple instrumentfile for estimating SNS brilliance, moderator is a the Gallmeier SNS_source_analytic applying Ikeda-Carpenter vs. Pade function fits to MCNPX tables. +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| Lambda_min | AA | Minimum wavelength produced at source | 0.5 | +| Lambda_max | AA | Maximum wavelength produced at source | 20 | +| filename | str | Source input file from $MCSTAS/data | "a1Gw2-2-f5_fit_fit.dat" | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/examples/SNS/Gallmeier_SNS_decoupled_poisoned/Gallmeier_SNS_decoupled_poisoned.instr) for `Gallmeier_SNS_decoupled_poisoned.instr`. + +--- + +*Generated for mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/examples/SNS/Granroth_SNS_decoupled_poisoned/Granroth_SNS_decoupled_poisoned.md b/mcstas-comps/examples/SNS/Granroth_SNS_decoupled_poisoned/Granroth_SNS_decoupled_poisoned.md new file mode 100644 index 000000000..887cdc05e --- /dev/null +++ b/mcstas-comps/examples/SNS/Granroth_SNS_decoupled_poisoned/Granroth_SNS_decoupled_poisoned.md @@ -0,0 +1,34 @@ +# The `Granroth_SNS_decoupled_poisoned` Instrument + +*McStas: Simple instrumentfile for estimating SNS brilliance, moderator is a the Granroth SNS_source applying linear interpolation in MCNPX tables.* + +## Identification + +- **Site:** SNS +- **Author:** Peter Willendrup +- **Origin:** DTU Physics +- **Date:** May 29,2013 + +## Description + +```text +Simple instrumentfile for estimating SNS brilliance, moderator is a the Granroth SNS_source applying linear interpolation in MCNPX tables. +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| Lambda_min | AA | Minimum wavelength produced at source | 0.5 | +| Lambda_max | AA | Maximum wavelength produced at source | 20 | +| filename | str | Source input file from $MCSTAS/data | "source_sct091_tu_02_1.dat" | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/examples/SNS/Granroth_SNS_decoupled_poisoned/Granroth_SNS_decoupled_poisoned.instr) for `Granroth_SNS_decoupled_poisoned.instr`. + +--- + +*Generated for mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/examples/SNS/Mezei_SNS_decoupled_poisoned/Mezei_SNS_decoupled_poisoned.md b/mcstas-comps/examples/SNS/Mezei_SNS_decoupled_poisoned/Mezei_SNS_decoupled_poisoned.md new file mode 100644 index 000000000..bb861e22f --- /dev/null +++ b/mcstas-comps/examples/SNS/Mezei_SNS_decoupled_poisoned/Mezei_SNS_decoupled_poisoned.md @@ -0,0 +1,35 @@ +# The `Mezei_SNS_decoupled_poisoned` Instrument + +*McStas: Simple instrumentfile for estimating SNS brilliance, moderator is a rescaled ESS short-pulsed Mezei description.* + +## Identification + +- **Site:** SNS +- **Author:** Peter Willendrup +- **Origin:** DTU Physics +- **Date:** May 2913 + +## Description + +```text +ESCRIPTION + +Simple instrumentfile for estimating SNS brilliance, moderator is a rescaled ESS short-pulsed Mezei description. +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| Lambda_min | AA | Minimum wavelength produced at source | 0.5 | +| Lambda_max | AA | Maximum wavelength produced at source | 20 | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/examples/SNS/Mezei_SNS_decoupled_poisoned/Mezei_SNS_decoupled_poisoned.instr) for `Mezei_SNS_decoupled_poisoned.instr`. + +--- + +*Generated for mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/examples/SNS/SNS_ARCS/SNS_ARCS.md b/mcstas-comps/examples/SNS/SNS_ARCS/SNS_ARCS.md new file mode 100644 index 000000000..a73d2f291 --- /dev/null +++ b/mcstas-comps/examples/SNS/SNS_ARCS/SNS_ARCS.md @@ -0,0 +1,53 @@ +# The `SNS_ARCS` Instrument + +*McStas: Model of the ARCS spectrometer from SNS.* + +## Identification + +- **Site:** SNS +- **Author:** G. Granroth +- **Origin:** SNS +- **Date:** Nov 2014 + +## Description + +```text +When using this ARCS instrument model, please reference +
      +
    • Granroth, G. E. and Abernathy, D. L., "Performance Comparisons of Four Direct Geometry +Spectrometers Planned for Spallation Neutron Source", Proceedings of ICANS-XVI, 289 (2003). +
    • D. L. Abernathy, M. B. Stone, M. J. Loguillo, M. S. Lucas, O. Delaire, X.Tang, J. Y. Y. Lin, and +B. Fultz,"Design and operation of the wide angular-range chopper spectrometer ARCS at the +Spallation Neutron Source", Review of Scientific Instruments, 83 , 015114 (2012)
    +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| filename | | | "source_sct521_bu_17_1.dat" | +| Fermi_nu | Hz | Frequency of the Fermi chopper | 420 | +| T0_nu | Hz | Frequency of the T0 chopper | 90 | +| nrad | m | Radius of the Fermi chopper blades | 0.58 | +| nchans | 1 | Number of channels in the Fermi chopper | 40 | +| Edes | meV | Desired/target energy | 50 | +| Et | meV | Energy transfer of the Spot_sample | 25 | +| ttheta | deg | Scattering angle of the Spot_sample | 25 | +| T0_off | | | 0 | +| sxmin | m | Sample slit horz min value | -0.04 | +| sxmax | m | Sample slit horz max value | 0.04 | +| symin | m | Sample slit vert min value | -0.04 | +| symax | m | Sample slit vert max value | 0.04 | +| run_num | 1 | Virtual source run number (unused at present) | 1 | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/examples/SNS/SNS_ARCS/SNS_ARCS.instr) for `SNS_ARCS.instr`. +-
    Granroth, G. E. and Abernathy, D. L., "Performance Comparisons of Four Direct Geometry Spectrometers Planned for Spallation Neutron Source", Proceedings of ICANS-XVI, 289 (2003). +-
    D. L. Abernathy, M. B. Stone, M. J. Loguillo, M. S. Lucas, O. Delaire, X.Tang, J. Y. Y. Lin, and B. Fultz,"Design and operation of the wide angular-range chopper spectrometer ARCS at the Spallation Neutron Source", Review of Scientific Instruments, 83 , 015114 (2012) + +--- + +*Generated for mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/examples/SNS/SNS_BASIS/SNS_BASIS.md b/mcstas-comps/examples/SNS/SNS_BASIS/SNS_BASIS.md new file mode 100644 index 000000000..40d4f8e8e --- /dev/null +++ b/mcstas-comps/examples/SNS/SNS_BASIS/SNS_BASIS.md @@ -0,0 +1,71 @@ +# The `SNS_BASIS` Instrument + +*McStas: Written by: N.Tsapatsaris (nikolaos.tsapatsaris@esss.se) and Peter K. Wilendrup (pkwi@fysik.dtu.dk)* + +## Identification + +- **Site:** SNS +- **Author:** N.Tsapatsaris (nikolaos.tsapatsaris@esss.se) and Peter K. Wilendrup (pkwi@fysik.dtu.dk) +- **Origin:** NBI +- **Date:** 2013-2015 + +## Description + +```text +ESCRIPTION +The approximative, analytic SNS Source description of this instrument is realised +by use of the ESS_moderator_short model, but weighted due to the opposite moderator +arrangement at the SNS and at the once-planned ESS short pluse facility. The correct +SNS Source File to use with SNS_Source is source_sct091_tu_02_1.dat. + +The instrument serves as a test instrument for the components +Spherical_Backscattering_Analyser, also written by by Niko Tsapatsaris with help from +Peter Willendrup and Guide_m by Niko Tsapatsaris. + +The instrument is based on models initially written by +A) REL (ruep.lechner@gmail.com) and HNB (bordallo@nbi.ku.dk) with contributions +from Johan Jacobsen (johan.fett@gmail.com) +B) G. Granroth + +A virtual experiment on BASIS i.e. a comparison with real and simulation results were +published in AIP conference,DOI: 10.1051/epjconf/20158303015 and RSI, DOI: 10.1063/1.4961569 + +Instrument geometry parameters etc. were taken from the publication: +"A time-of-flight backscattering spectrometer at the Spallation Neutron Source, BASIS" by +Mamontov, E.; Herwig, K. W.; Neutron Scattering Science Division, Oak Ridge National Laboratory, +Oak Ridge, Tennessee 37831, USA, in Review of Scientific Instruments,82(8),085109 - 085109-10, 2011 + +This simulation uses the sample component Isotropic_Sqw. We are using the description for a Vanadium +hollow cylindrical sample. One Arm Component is used to place the Analyser Component at an angle +defined as ROT1. +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| Lam | AA | Wavelength selected by the chopper system | 6.4 | +| Lambda_min | AA | Minimum wavelength produced at the source | 5 | +| Lambda_max | AA | Maximum wavelength produced at the source | 7 | +| RadCurv | m | Radius of Curvature of the guide system | 1000 | +| omega1 | Hz | Frequency of the first DiskChopper | 60 | +| omega2 | Hz | Frequency of the second DiskChopper | 60 | +| omega3 | Hz | Frequency of the third DiskChopper | 60 | +| ch1_open | deg | Angular opening of the first Diskchopper | 51.4 | +| ch2_open | deg | Angular opening of the second Diskchopper | 57.6 | +| ch3_open | deg | Angular opening of the third Diskchopper | 171.1 | +| ROT1 | deg | Positioning of central analyser wrt. the incoming beam, in the scattering plane | 90 | +| AN_ROT | deg | Out-of-plane rotation of analysers wrt. scattering plane | 2 | +| TOTAL_LENGTH | m | Total length of the guide system | 84 | +| dROT | deg | Positioning of neighbouring analysers wrt. central analyser | 11 | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/examples/SNS/SNS_BASIS/SNS_BASIS.instr) for `SNS_BASIS.instr`. +- A reference/HTML link for more information + +--- + +*Generated for mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/examples/SNS/SNS_analytic_test/SNS_analytic_test.md b/mcstas-comps/examples/SNS/SNS_analytic_test/SNS_analytic_test.md new file mode 100644 index 000000000..c16f8c40f --- /dev/null +++ b/mcstas-comps/examples/SNS/SNS_analytic_test/SNS_analytic_test.md @@ -0,0 +1,36 @@ +# The `SNS_analytic_test` Instrument + +*McStas: Simple test instrument for the SNS_source component.* + +## Identification + +- **Site:** SNS +- **Author:** G. Granroth +- **Origin:** SNS Project Oak Ridge National Laboratory +- **Date:** July 2004 + +## Description + +```text +Simple test instrument for the SNS_source component. +Refer to SNS Source files. +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| filename | string | Source file | "a1Gw2-5-f5_fit_fit.dat" | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/examples/SNS/SNS_analytic_test/SNS_analytic_test.instr) for `SNS_analytic_test.instr`. +- Written by G. Granroth +- SNS_source component +- Source files + +--- + +*Generated for mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/examples/SNS/SNS_test/SNS_test.md b/mcstas-comps/examples/SNS/SNS_test/SNS_test.md new file mode 100644 index 000000000..c467561be --- /dev/null +++ b/mcstas-comps/examples/SNS/SNS_test/SNS_test.md @@ -0,0 +1,36 @@ +# The `SNS_test` Instrument + +*McStas: Simple test instrument for the SNS_source component.* + +## Identification + +- **Site:** SNS +- **Author:** G. Granroth +- **Origin:** SNS Project Oak Ridge National Laboratory +- **Date:** July 2004 + +## Description + +```text +Simple test instrument for the SNS_source component. +Refer to SNS Source files. +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| filename | string | Source input file | "source_sct091_tu_02_1.dat" | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/examples/SNS/SNS_test/SNS_test.instr) for `SNS_test.instr`. +- Written by G. Granroth +- SNS_source component +- Source files + +--- + +*Generated for mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/examples/TRIGA/RTP_DIF/RTP_DIF.md b/mcstas-comps/examples/TRIGA/RTP_DIF/RTP_DIF.md new file mode 100644 index 000000000..0cdf1bf17 --- /dev/null +++ b/mcstas-comps/examples/TRIGA/RTP_DIF/RTP_DIF.md @@ -0,0 +1,38 @@ +# The `RTP_DIF` Instrument + +*McStas: A powder diffractometer at Reactor TRIGA PUSPATI (Malaysia)* + +## Identification + +- **Site:** TRIGA +- **Author:** E. Farhi and Megat Harun Al-Rashid +- **Origin:** ILL/RTP +- **Date:** June 2014 + +## Description + +```text + +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| lambda | Angs | Monochromator selected wavelength | 2.36 | +| DM | Angs | d-spacing for the monochromator reflection | 3.355 | +| Mono_tilt | deg | Tilt angle magnitude for the inner/outer mono slabs | 0 | +| powder | str | Filename of the powder sample | "Na2Ca3Al2F14.laz" | +| det_rotation | deg | Rotation of the portable detector | 45 | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/examples/TRIGA/RTP_DIF/RTP_DIF.instr) for `RTP_DIF.instr`. +- Nuclear Malaysia +- M. Sufi et al., J. AppL Cryst. (1997). 30, 884-888 [doi:10.1107/S0021889897001738] + +--- + +*Generated for mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/examples/TRIGA/RTP_Laue/RTP_Laue.md b/mcstas-comps/examples/TRIGA/RTP_Laue/RTP_Laue.md new file mode 100644 index 000000000..bce899c47 --- /dev/null +++ b/mcstas-comps/examples/TRIGA/RTP_Laue/RTP_Laue.md @@ -0,0 +1,38 @@ +# The `RTP_Laue` Instrument + +*McStas: The NR instrument installed at Reactor TRIGA PUSPATI (Malaysia)* + +## Identification + +- **Site:** TRIGA +- **Author:** E. Farhi and Megat Harun Al-Rashid +- **Origin:** ILL/RTP +- **Date:** June 2014 + +## Description + +```text +This is a radiography installed on a radial beam port 3 at the Reactor TRIGA +PUSPATI (RTP). It uses a thermal beam port. +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| theta | deg | horizontal rotation of the object | 0 | +| phi | deg | vertical rotation of the object | 0 | +| det_rotation | deg | detector rotation around the sample | 0 | +| reflections | str | sample configuration | "leucine.lau" | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/examples/TRIGA/RTP_Laue/RTP_Laue.instr) for `RTP_Laue.instr`. +- Nuclear Malaysia +- M. Sufi et al., J. AppL Cryst. (1997). 30, 884-888 [doi:10.1107/S0021889897001738] + +--- + +*Generated for mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/examples/TRIGA/RTP_NeutronRadiography/RTP_NeutronRadiography.md b/mcstas-comps/examples/TRIGA/RTP_NeutronRadiography/RTP_NeutronRadiography.md new file mode 100644 index 000000000..53642a02b --- /dev/null +++ b/mcstas-comps/examples/TRIGA/RTP_NeutronRadiography/RTP_NeutronRadiography.md @@ -0,0 +1,37 @@ +# The `RTP_NeutronRadiography` Instrument + +*McStas: The radiography instrument installed at Reactor TRIGA PUSPATI (Malaysia)* + +## Identification + +- **Site:** TRIGA +- **Author:** E. Farhi and Megat Harun Al-Rashid +- **Origin:** ILL/RTP +- **Date:** June 2014 + +## Description + +```text +This is a radiography station installed on a radial beam port 3 at the Reactor TRIGA +PUSPATI (RTP). It uses the thermal beam port 3. +The sample is made of 2 concentric cylinders made of Cu and Fe. +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| theta | deg | horizontal rotation of the object | 0 | +| phi | deg | vertical rotation of the object | 0 | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/examples/TRIGA/RTP_NeutronRadiography/RTP_NeutronRadiography.instr) for `RTP_NeutronRadiography.instr`. +- Nuclear Malaysia +- M. Sufi et al., J. AppL Cryst. (1997). 30, 884-888 [doi:10.1107/S0021889897001738] + +--- + +*Generated for mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/examples/TRIGA/RTP_SANS/RTP_SANS.md b/mcstas-comps/examples/TRIGA/RTP_SANS/RTP_SANS.md new file mode 100644 index 000000000..acbf36118 --- /dev/null +++ b/mcstas-comps/examples/TRIGA/RTP_SANS/RTP_SANS.md @@ -0,0 +1,51 @@ +# The `RTP_SANS` Instrument + +*McStas: The SANS instrument installed at Reactor TRIGA PUSPATI (Malaysia)* + +## Identification + +- **Site:** TRIGA +- **Author:** E. Farhi and Megat Harun Al-Rashid +- **Origin:** ILL/RTP +- **Date:** June 2014 + +## Description + +```text +This is a 4m long SANS installed on a radial beam port 4 at the Reactor TRIGA +PUSPATI (RTP). Te beam port 4 is a radial tube that originates from the core, +through the graphite reflector. A thick Be filter selects the cold tail of the +thermal spectrum, and removes higher order PG reflections. +A PG(002) monochromator selects the 5A neutrons that are sent into a 4m - 4m +SANS with a 60 cm PSD detector 128x128 pixels. +The monochromator is here used in fixed double focusing geometry. +The accessible Q range is then 0.01-0.1 Angs-1. + +This model contains a detailed description of the Be filter, monochromator +and SANS set-up. The Be filter is in the monochromator block. + +Example: mcrun RTP_SANS.instr lambda=5 +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| lambda | Angs | monochromator selected wavelength | 5 | +| DM | Angs | d-spacing for the monochromator reflection | 3.355 | +| dlambda | Angs | monochromator wavelength spread | .2 | +| Be_Filter_depth | m | Depth of Be filter | .15 | +| Mono_tilt | deg | angle tilt between the 3 monochromator layers | -1 | +| mono_rotation | deg | additional monochromator offset rotation for e.g rocking curves | 0 | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/examples/TRIGA/RTP_SANS/RTP_SANS.instr) for `RTP_SANS.instr`. +- Nuclear Malaysia +- M. Sufi et al., J. AppL Cryst. (1997). 30, 884-888 [doi:10.1107/S0021889897001738] + +--- + +*Generated for mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/examples/TUDelft/SEMSANS_Delft/SEMSANS_Delft.md b/mcstas-comps/examples/TUDelft/SEMSANS_Delft/SEMSANS_Delft.md new file mode 100644 index 000000000..ded8e4998 --- /dev/null +++ b/mcstas-comps/examples/TUDelft/SEMSANS_Delft/SEMSANS_Delft.md @@ -0,0 +1,48 @@ +# The `SEMSANS_Delft` Instrument + +*McStas: Idealised SESANS instrument using magnetised foil flippers with realistic sample* + +## Identification + +- **Site:** TUDelft +- **Author:** Wim Bouwman (w.g.bouwman@tudelft.nl), Peter Willendrup and Erik Knudsen +- **Origin:** Delft University of Technology +- **Date:** December 2019 + +## Description + +```text +A full description of the instrument can be found in J. Appl. Cryst. (2021) V. 54 https://doi.org/10.1107/S1600576720015496 +The instrument has the bare essentials to simulate the Larmor precession of the neutron spins in the foil flippers and the +geometry and wavelength distribution of a version of SEMSANS that can be made from the SESANS in Delft as described in +Physica B 406(2011)2357–2360 https://doi.org/10.1016/j.physb.2010.11.069 +An essential component is the realistic SANS sample, describing both the scattered and transmitted neutron, including multiple scattering. +For a full SEMSANS scan the applied magnetic field By has to be scanned. +It is best to run it twice with the analyser in up and down orientation. +In principle the sample can be removed to study the empty beam instrument, which with this idealised setup have perfect polarisation. +It is possible to monitor the evolution of the polarisation with several polarisation monitors that have beeen commented in this version. +The foil-angle, thickness and wavelength yield now matched parameters to have the SESANS working. +These parameter and the sphere radius match now with the magnetic fields below to get a good measurement range. +A pretty high number of neutrons is needed to get good statistics in the fine position sensitive detector. +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| L0 | AA | nominal wavelength | 2.165 | +| DL | AA | wavelength band width | 0.02 | +| By | T | Applied magnetic field in foil flippers | 4.68e-3 | +| AnaSign | | Direction of analyser (-1 or 1) | 1 | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/examples/TUDelft/SEMSANS_Delft/SEMSANS_Delft.instr) for `SEMSANS_Delft.instr`. +- +- https://doi.org/10.1107/S1600576720015496 + +--- + +*Generated for mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/examples/TUDelft/SEMSANS_instrument/SEMSANS_instrument.md b/mcstas-comps/examples/TUDelft/SEMSANS_instrument/SEMSANS_instrument.md new file mode 100644 index 000000000..499d904d6 --- /dev/null +++ b/mcstas-comps/examples/TUDelft/SEMSANS_instrument/SEMSANS_instrument.md @@ -0,0 +1,69 @@ +# The `SEMSANS_instrument` Instrument + +*McStas: SEMSANS-instrument* + +## Identification + +- **Site:** TUDelft +- **Author:** Morten Sales +- **Origin:** Copenhagen, Berlin, Delft +- **Date:** 2014 + +## Description + +```text +SEMSANS instrument with 2 isosceles triangular field coils +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| triacoil_depth | m | Half of the triangular coil depth in z-direction (one right triangle) | 1.935000e-01 | +| triacoil_width | m | xwidth of triangular coil | 7.042824e-02 | +| triacoil_height | m | yheight of triangular coil | 3.000000e-01 | +| pol_zdepth | m | Depth of the polariser along z | 9.300000e-01 | +| vcoil_zdepth | m | Depth along z of the v-coil flipper | 1.500000e-01 | +| Guide1_depth | m | Depth of first guide/precession field section | 1.650000e-02 | +| Guide2_depth | m | Depth of second guide/precession field section | 3.315000e-01 | +| Guide3_depth | m | Depth of third guide/precession field section | 3.315000e-01 | +| Guide4_depth | m | Depth of fourth guide/precession field section | 5.650000e-02 | +| Bguide | T | Field strength of guide/precession field | -5.000000e-04 | +| Bextra | T | Field strength of extra field in guide field 1 to acheive echo | -2.120000e-02 | +| Bt2 | T | Field in first triangular coil | -4.440000e-03 | +| Bt1 | T | Field in second triangular coil | -2.560000e-03 | +| DLambda | AA | Wavelength spread from source (half of it) | 4.166366e+00 | +| Lambda | AA | Mean wavelength | 4.559500e+00 | +| flippos | m | Position (away from position set by vcoil_34_pos) of pi-flipper | 3.100000e-02 | +| FLIP | 1 | Choose polarisation direction using v-coil pi/2-flipper (1 is down, -1 is up) | 1.000000e+00 | +| chop1_pos | m | Position of first chopper | 5.000000e-01 | +| chop2_pos | m | Position of second chopper | 9.740000e-01 | +| pol_pos | m | Position of polariser | 1.907000e+00 | +| analyser_pos | m | Position of analyser | 6.072000e+00 | +| grating_w | m | Width of transmitting part of grating | 1.570000e-03 | +| grating_a | m | Width of absorbing part of grating | 2.930000e-03 | +| slit_1_pos | m | Position of first slit | 2.957000e+00 | +| slit_2_pos | m | Position of second slit | 5.437000e+00 | +| Guide1_pos | m | Position of first guide/precession field | 3.307000e+00 | +| Guide2_pos | m | Position of second guide/precession field | 3.710500e+00 | +| Guide3_pos | m | Position of third guide/precession field | 4.342000e+00 | +| Guide4_pos | m | Position of fourth guide/precession field | 5.060500e+00 | +| vcoil_12_pos | m | Position of first v-coil pair | 3.157000e+00 | +| vcoil_34_pos | m | Position of second v-coil pair | 4.192000e+00 | +| vcoil_56_pos | m | Position of third v-coil pair | 5.267000e+00 | +| triacoil_1_pos | m | Position of first triangular coil (centre) | 3.517000e+00 | +| triacoil_2_pos | m | Position of second triangular coil (centre) | 4.867000e+00 | +| grating_pos | m | Position of grating | 6.757000e+00 | +| detector_pos | m | Position of detector | 6.957000e+00 | +| tlow | mu-s | tmin of detector | 2.190523040779461e+03 | +| thigh | mu-s | tmax of detector | 1.214744595341338e+04 | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/examples/TUDelft/SEMSANS_instrument/SEMSANS_instrument.instr) for `SEMSANS_instrument.instr`. + +--- + +*Generated for mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/examples/TUDelft/SESANS_Delft/SESANS_Delft.md b/mcstas-comps/examples/TUDelft/SESANS_Delft/SESANS_Delft.md new file mode 100644 index 000000000..6bafd0ac2 --- /dev/null +++ b/mcstas-comps/examples/TUDelft/SESANS_Delft/SESANS_Delft.md @@ -0,0 +1,47 @@ +# The `SESANS_Delft` Instrument + +*McStas: Idealised SESANS instrument using magnetised foil flippers with realistic sample* + +## Identification + +- **Site:** TUDelft +- **Author:** Wim Bouwman (w.g.bouwman@tudelft.nl), Peter Willendrup and Erik Knudsen +- **Origin:** Delft University of Technology +- **Date:** December 2019 + +## Description + +```text + +A full description of the instrument can be found in J. Appl. Cryst. (2021) V. 54 https://doi.org/10.1107/S1600576720015496 +The instrument has the bare essentials to simulate the Larmor precession of the neutron spins in the foil flippers and the +geometry and wavelength distribution of the SESANS in Delft as described in +Rev. Sci. Instrum. 76, 033901 (2005) https://doi.org/10.1063/1.1858579 +An essential component is the realistic SANS sample, describing both the scattered and transmitted neutron, including multiple scattering. +In one scattering simulation both the up- and down intensities are simulated. +For a full SESANS scan the applied magnetic field By has to be scanned. +In principle the sample can be removed to study the empty beam instrument, which with this idealised setup have perfect polarisation. +It is possible to monitor the evolution of the polarisation with several polarisation monitors that have beeen commented in this version. +The foil-angle, thickness and wavelength yield now matched parameters to have the SESANS working. +These parameter and the sphere radius match now with the magnetic fields below to get a good measurement range. +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| L0 | AA | nominal wavelength | 2.165 | +| DL | AA | wavelength band width | 0.02 | +| By | T | Applied magnetic field in foil flippers | 4.68e-3 | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/examples/TUDelft/SESANS_Delft/SESANS_Delft.instr) for `SESANS_Delft.instr`. +- +- https://doi.org/10.1107/S1600576720015496 + +--- + +*Generated for mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/examples/Templates/BTsimple/BTsimple.md b/mcstas-comps/examples/Templates/BTsimple/BTsimple.md new file mode 100644 index 000000000..a36ad01e9 --- /dev/null +++ b/mcstas-comps/examples/Templates/BTsimple/BTsimple.md @@ -0,0 +1,42 @@ +# The `BTsimple` Instrument + +*McStas: Example instrument showing how to calculate brilliance transfer using L_monitor's and WHEN statements* + +## Identification + +- **Site:** Templates +- **Author:** Peter Willendrup +- **Origin:** DTU +- **Date:** 2018/03/21 + +## Description + +```text +Example instrument showing how to calculate brilliance transfer using L_monitor's and WHEN statements +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| lambda | AA | Central wavelength produced at the source | 10 | +| dlambda | AA | Halfwidth of wavelength band produced at the source | 9.9 | +| maxhd | deg | Maxiamal horzizontal divergence accepted | 3 | +| maxvd | deg | Maxiamal vertical divergence accepted | 3 | +| gw | m | Opening-width of ellipitic guide | 0.1 | +| gh | m | Opening-height of ellipitic guide | 0.1 | +| gL | m | Length of ellipitic guide | 50 | +| gm | 1 | M-value of the guide coating | 6 | +| delta1 | m | Optional focal displacement of guide wrt source | 0 | +| delta2 | m | Optional focal displacement of guide wrt sample position | 0 | +| Nbins | 1 | Number of bins on Wavelength / Brilliance transfer monitors | 101 | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/examples/Templates/BTsimple/BTsimple.instr) for `BTsimple.instr`. + +--- + +*Generated for mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/examples/Templates/Demo_shape_primitives/Demo_shape_primitives.md b/mcstas-comps/examples/Templates/Demo_shape_primitives/Demo_shape_primitives.md new file mode 100644 index 000000000..bd335909b --- /dev/null +++ b/mcstas-comps/examples/Templates/Demo_shape_primitives/Demo_shape_primitives.md @@ -0,0 +1,32 @@ +# The `Demo_shape_primitives_simple` Instrument + +*McStas: Demonstration instrument of some shapes used for mcdisplay* + +## Identification + +- **Site:** Templates +- **Author:** Erik B Knudsen +- **Origin:** DTU Physics +- **Date:** Feb 2018 + +## Description + +```text +This instrument will display a cylinder, a sphere, and a box, +when run with mcdisplay. Otherwise does nothing. +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/examples/Templates/Demo_shape_primitives/Demo_shape_primitives.instr) for `Demo_shape_primitives.instr`. + +--- + +*Generated for mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/examples/Templates/Demo_shape_primitives_simple/Demo_shape_primitives_simple.md b/mcstas-comps/examples/Templates/Demo_shape_primitives_simple/Demo_shape_primitives_simple.md new file mode 100644 index 000000000..5bcf32b2e --- /dev/null +++ b/mcstas-comps/examples/Templates/Demo_shape_primitives_simple/Demo_shape_primitives_simple.md @@ -0,0 +1,32 @@ +# The `Demo_shape_primitives_simple` Instrument + +*McStas: Demonstration instrument of some shapes used for mcdisplay* + +## Identification + +- **Site:** Templates +- **Author:** Erik B Knudsen +- **Origin:** DTU Physics +- **Date:** Feb 2018 + +## Description + +```text +This instrument will display a cylinder, a sphere, and a box, +when run with mcdisplay. Otherwise does nothing. +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/examples/Templates/Demo_shape_primitives_simple/Demo_shape_primitives_simple.instr) for `Demo_shape_primitives_simple.instr`. + +--- + +*Generated for mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/examples/Templates/TOF_Reflectometer/TOF_Reflectometer.md b/mcstas-comps/examples/Templates/TOF_Reflectometer/TOF_Reflectometer.md new file mode 100644 index 000000000..8ae75ca91 --- /dev/null +++ b/mcstas-comps/examples/Templates/TOF_Reflectometer/TOF_Reflectometer.md @@ -0,0 +1,47 @@ +# The `Reflectometer` Instrument + +*McStas: Horizontal reflectometer, multi-angle of incidence* + +## Identification + +- **Site:** Templates +- **Author:** Anette Vickery, contact: anette.vickery@fys.ku.dk +- **Origin:** KU +- **Date:** November 2011 + +## Description + +```text +A horizontal reflectometer. The instrument is built of a 2.5 m long mirror and an inclined elliptical guide. The grazing angle is defined by a set of +slits. The sample size is 4cm x 4cm (horizontal sample). +The role of the mirror is to provide an angle of incidence of up to 4 deg and at the same time avoid a direct line of sight to the source. +The reflectivity is the ratio between the direct beam reflected beam intensities. Therefore two simulations are needed to get the reflectivity curve: + +Example: mcrun Reflectometer.instr -n1e10 directbeam=1,thetasample=0.4,Qmin=0,Qmax=0.15 -d directbeam +Example: mcrun Reflectometer.instr -n1e10 directbeam=0,thetasample=0.4,Qmin=0,Qmax=0.15 -d reflectedbeam +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| directbeam | | If 1, the sample is a mirror with reflectivity 1. If 0, the mirror reflects like a D2O surface with zero roughness | 1 | +| Lam_min | AA | Minimum wavelength emitted by the cold moderator | 2.0 | +| Lam_max | AA | Maximum wavelength emitted by the cold moderator | 10 | +| deltatheta | % | The angular resolution | 2 | +| theta_sample | deg | The grazing angle | 1 | +| defineAngle | | If 0, the angle defining slits are wide open. If 1 the angular resolution is deltatheta | 1 | +| Qmin | AA^-1 | The minimum value of the interesting Qrange | 0 | +| Qmax | AA^-1 | The maximum value of the interesting Qrange | 0.5 | +| straight | | If 1, the guide walls are straight | 1 | +| width | m | The width of the guide in the case of straight guide walls | 0.05 | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/examples/Templates/TOF_Reflectometer/TOF_Reflectometer.instr) for `TOF_Reflectometer.instr`. + +--- + +*Generated for mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/examples/Templates/Test_SasView_bcc_paracrystal_aniso/Test_SasView_bcc_paracrystal_aniso.md b/mcstas-comps/examples/Templates/Test_SasView_bcc_paracrystal_aniso/Test_SasView_bcc_paracrystal_aniso.md new file mode 100644 index 000000000..283844b31 --- /dev/null +++ b/mcstas-comps/examples/Templates/Test_SasView_bcc_paracrystal_aniso/Test_SasView_bcc_paracrystal_aniso.md @@ -0,0 +1,59 @@ +# The `test_SasView_bcc_paracrystal` Instrument + +*McStas: Test instrument for the SasView bcc_paracrystal model component as sample description.* + +## Identification + +- **Site:** Templates +- **Author:** Jose Robledo +- **Origin:** FZJ / DTU / ESS DMSC +- **Date:** + +## Description + +```text +Very simple test instrument for the SasView_bcc_paracrystal component + + +Example: model_scale=1 Detector: detector_I=83.8252 +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| lambda | AA | Mean wavelength of neutrons. | 6 | +| dlambda | AA | Wavelength spread of neutrons. | 0.05 | +| dnn | | ([-inf, inf]) Nearest neighbour distance. | 220 | +| d_factor | | ([-inf, inf]) Paracrystal distortion factor. | 0.06 | +| radius | | ([0, inf]) Particle radius. | 40 | +| sld | | ([-inf, inf]) Particle scattering length density. | 4 | +| sld_solvent | | ([-inf, inf]) Solvent scattering length density. | 1 | +| theta | | | 60 | +| phi | | | 60 | +| Psi | | | 60 | +| model_scale | | Global scale factor for scattering kernel. For systems without inter-particle interference, the form factors can be related to the scattering intensity by the particle volume fraction. | 1.0 | +| model_abs | | Absorption cross section density at 2200 m/s. | 0.0 | +| xwidth | m | ([-inf, inf]) Horiz. dimension of sample, as a width. | 0.01 | +| yheight | m | ([-inf, inf]) vert . dimension of sample, as a height for cylinder/box | 0.01 | +| zdepth | m | ([-inf, inf]) depth of sample | 0.005 | +| R | m | Outer radius of sample in (x,z) plane for cylinder/sphere. | 0 | +| target_index | | Relative index of component to focus at, e.g. next is +1. | 1 | +| target_x | m | relative focus target position. | 0 | +| target_y | m | relative focus target position. | 0 | +| target_z | m | relative focus target position. | 1 | +| focus_xw | m | horiz. dimension of a rectangular area. | 0.5 | +| focus_yh | m | , vert. dimension of a rectangular area. | 0.5 | +| focus_aw | deg | , horiz. angular dimension of a rectangular area. | 0 | +| focus_ah | deg | , vert. angular dimension of a rectangular area. | 0 | +| focus_r | | | 0 | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/examples/Templates/Test_SasView_bcc_paracrystal_aniso/Test_SasView_bcc_paracrystal_aniso.instr) for `Test_SasView_bcc_paracrystal_aniso.instr`. + +--- + +*Generated for mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/examples/Templates/Test_SasView_guinier/Test_SasView_guinier.md b/mcstas-comps/examples/Templates/Test_SasView_guinier/Test_SasView_guinier.md new file mode 100644 index 000000000..68752c065 --- /dev/null +++ b/mcstas-comps/examples/Templates/Test_SasView_guinier/Test_SasView_guinier.md @@ -0,0 +1,49 @@ +# The `test_SasView_guinier` Instrument + +*McStas: Test instrument for the SasView guinier model component as sample description.* + +## Identification + +- **Site:** Templates +- **Author:** Jose Robledo +- **Origin:** FZJ / DTU / ESS DMSC +- **Date:** + +## Description + +```text +Very simple test instrument for the SasView_guinier component +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| lambda | AA | Mean wavelength of neutrons. | 6 | +| dlambda | AA | Wavelength spread of neutrons. | 0.05 | +| rg | | ([-inf, inf]) Radius of Gyration. | 60.0 | +| model_scale | | Global scale factor for scattering kernel. For systems without inter-particle interference, the form factors can be related to the scattering intensity by the particle volume fraction. | 1.0 | +| model_abs | | Absorption cross section density at 2200 m/s. | 0.0 | +| xwidth | m | ([-inf, inf]) Horiz. dimension of sample, as a width. | 0.01 | +| yheight | m | ([-inf, inf]) vert . dimension of sample, as a height for cylinder/box | 0.01 | +| zdepth | m | ([-inf, inf]) depth of sample | 0.005 | +| R | m | Outer radius of sample in (x,z) plane for cylinder/sphere. | 0 | +| target_index | | Relative index of component to focus at, e.g. next is +1. | 1 | +| target_x | m | relative focus target position. | 0 | +| target_y | m | relative focus target position. | 0 | +| target_z | m | relative focus target position. | 1 | +| focus_xw | m | horiz. dimension of a rectangular area. | 0.5 | +| focus_yh | m | , vert. dimension of a rectangular area. | 0.5 | +| focus_aw | deg | , horiz. angular dimension of a rectangular area. | 0 | +| focus_ah | deg | , vert. angular dimension of a rectangular area. | 0 | +| focus_r | | | 0 | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/examples/Templates/Test_SasView_guinier/Test_SasView_guinier.instr) for `Test_SasView_guinier.instr`. + +--- + +*Generated for mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/examples/Templates/Tomography/Tomography.md b/mcstas-comps/examples/Templates/Tomography/Tomography.md new file mode 100644 index 000000000..fabaaf3d7 --- /dev/null +++ b/mcstas-comps/examples/Templates/Tomography/Tomography.md @@ -0,0 +1,51 @@ +# The `Tomography` Instrument + +*McStas: Instrument to study tomographic imaging by means of the feature of OFF shape samples.* + +## Identification + +- **Site:** Templates +- **Author:** Peter Willendrup, based on work by Reynald ARNERIN +- **Origin:** Risoe +- **Date:** June 20th, 2008 + +## Description + +```text +Instrument to study tomographic imaging by means of the feature of OFF shape samples. + +Example: mcrun Tomography.instr offfile=bunny.off -n1e4 -N18 omega=0,340 -d TomoScan +(Note that to achieve proper statistics for tomographic reconstruction, MUCH higher ncounts +are needed) + +Use the provided Matlab tomo_recon.m function (requires imaging toolbox, PGPLOT output data +and a Unix/Mac) in the tools/matlab folder to reconstruct a 3D volume of the object. Use e.g. +isosurface to do thresholding for extraction of the object surface. +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| geometry | string | Name of the OFF file describing the sample shape | "socket.off" | +| omega | deg | Sample rotation around y | 0 | +| sigma_abs | barn | Sample absorption xs | 100 | +| frac_scatt | 1 | Fraction of neutrons to scatter in the sample | 0 | +| div_v | deg | Source vertical divergence (angular height) | 1e-4 | +| div_h | deg | Source horisontal divergence (angular width) | 1e-4 | +| source_w | m | Source width | 0.4 | +| source_h | m | Source height | 0.2 | +| det_w | m | Detector width | 0.4 | +| det_h | m | Detector height | 0.2 | +| opts | string | Monitor_nD options string | "x bins=80 y bins=40" | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/examples/Templates/Tomography/Tomography.instr) for `Tomography.instr`. +- http://shape.cs.princeton.edu/benchmark/documentation/off_format.html + +--- + +*Generated for mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/examples/Templates/mini/mini.md b/mcstas-comps/examples/Templates/mini/mini.md new file mode 100644 index 000000000..bb8f37e51 --- /dev/null +++ b/mcstas-comps/examples/Templates/mini/mini.md @@ -0,0 +1,33 @@ +# The `mini` Instrument + +*McStas: Minimalistic instrument for testing GPU implementation* + +## Identification + +- **Site:** Templates +- **Author:** Jakob Garde +- **Origin:** DTU +- **Date:** 2017 + +## Description + +```text +Minimalistic instrument for testing GPU implementation +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| dummy | | Dummy input parameter | 0 | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/examples/Templates/mini/mini.instr) for `mini.instr`. +- A reference/HTML link for more information + +--- + +*Generated for mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/examples/Templates/template/template.md b/mcstas-comps/examples/Templates/template/template.md new file mode 100644 index 000000000..aa2e31163 --- /dev/null +++ b/mcstas-comps/examples/Templates/template/template.md @@ -0,0 +1,42 @@ +# The `template` Instrument + +*McStas: !!Please write a short instrument (1 line) here!!* + +## Identification + +- **Site:** Templates +- **Author:** Your name (email) +- **Origin:** Your institution +- **Date:** Current Date + +## Description + +```text +Instrument longer description (type, elements, usage...) + +Example: mcrun template.instr + +once your instrument is written and functional: +- replace INSTRUMENT_SITE entry above with your Institution name as a single word +- rename the instrument name after DEFINE INSTRUMENT below +- update the parameter help in the following Parameters section +- update the instrument description, and better add a usage example with a +sensible parameter set. +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| Par1 | | | 1 | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/examples/Templates/template/template.instr) for `template.instr`. +- A reference/HTML link for more information + +--- + +*Generated for mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/examples/Templates/templateDIFF/templateDIFF.md b/mcstas-comps/examples/Templates/templateDIFF/templateDIFF.md new file mode 100644 index 000000000..aba1e3e8c --- /dev/null +++ b/mcstas-comps/examples/Templates/templateDIFF/templateDIFF.md @@ -0,0 +1,65 @@ +# The `templateDIFF` Instrument + +*McStas: Simple monochromator Diffractometer for powders* + +## Identification + +- **Site:** Templates +- **Author:** E. Farhi +- **Origin:** LLB/ILL +- **Date:** 13 Apr 2006 + +## Description + +```text +A template powder diffractometer used as a tutorial at LLB. +Default geometry is from D20@ILL. + +If included after a guide, use ALPHA1=0 and L1=0 (the first collimator is then +the guide with effective ALPHA1=m*0.1*lambda). If you prefer to include +explicitely a collimator before the monochromator, use L1=1.2. + +Monochromator lattice parameter +PG 002 DM=3.355 AA (Highly Oriented Pyrolythic Graphite) +PG 004 DM=1.607 AA +Heusler 111 DM=3.362 AA (Cu2MnAl) +CoFe DM=1.771 AA (Co0.92Fe0.08) +Ge 111 DM=3.266 AA +Ge 311 DM=1.714 AA +Ge 511 DM=1.089 AA +Ge 533 DM=0.863 AA +Si 111 DM=3.135 AA +Cu 111 DM=2.087 AA +Cu 002 DM=1.807 AA +Cu 220 DM=1.278 AA +Cu 111 DM=2.095 AA +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| lambda | Angs | Wavelength at monochromator, computed from DM and THETA_M if left as 0. | 1 | +| DM | Angs | d-spacing of monochromator, computed from lambda and THETA_M if left as 0. | 3.355 | +| Powder | str | File name for powder description | "Na2Ca3Al2F14.laz" | +| RV | m | Monochromator vertical curvature, 0 for flat, -1 for automatic setting | -1 | +| L1 | m | Source-Monochromator distance | 17 | +| L2 | m | Monochromator-Sample distance | 3.2 | +| L3 | m | Sample-Detector distance | 1.471 | +| ALPHA1 | min | Horizontal collimator divergence for L1 arm (before monochromator) | 5 | +| ALPHA2 | min | Horizontal collimator divergence for L2 arm (monochromator-sample) | 60 | +| ALPHA3 | min | Horizontal collimator divergence for L3 arm (sample-detector) | 5 | +| ETA | min | Monochromator horizontal mosaic (gaussian) | 12 | +| verbose | int | Print DIF configuration. 0 to be quiet | 1 | +| THETA_M | deg | Monochromator take-off angle, computed from lambda and DM if left as 0. | 0 | +| SM | int | Scattering sense of beam from Monochromator. 1:left, -1:right | 1 | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/examples/Templates/templateDIFF/templateDIFF.instr) for `templateDIFF.instr`. + +--- + +*Generated for mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/examples/Templates/templateLaue/templateLaue.md b/mcstas-comps/examples/Templates/templateLaue/templateLaue.md new file mode 100644 index 000000000..32a9d3407 --- /dev/null +++ b/mcstas-comps/examples/Templates/templateLaue/templateLaue.md @@ -0,0 +1,33 @@ +# The `templateLaue` Instrument + +*McStas: A simple Laue diffractometer* + +## Identification + +- **Site:** Templates +- **Author:** K. Nielsen +- **Origin:** ILL +- **Date:** June 2nd, 2010 + +## Description + +```text +A single crystal sample is illuminated with a white cold beam. +Based on a Laue tutorial written by K. Nielsen, Feb 7, 2000. +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| reflections | string | Single crystal reflection list | "leucine.lau" | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/examples/Templates/templateLaue/templateLaue.instr) for `templateLaue.instr`. + +--- + +*Generated for mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/examples/Templates/templateNMX/templateNMX.md b/mcstas-comps/examples/Templates/templateNMX/templateNMX.md new file mode 100644 index 000000000..1a0f48d10 --- /dev/null +++ b/mcstas-comps/examples/Templates/templateNMX/templateNMX.md @@ -0,0 +1,35 @@ +# The `templateNMX` Instrument + +*McStas: A simple Laue NMX diffractometer for macromolecules, adapted from the classic +templateLaue instrument.* + +## Identification + +- **Site:** Templates +- **Author:** K. Nielsen +- **Origin:** ILL +- **Date:** June 2nd, 2010 + +## Description + +```text +A single crystal sample is illuminated with a white cold beam. +Based on a Laue tutorial written by K. Nielsen, Feb 7, 2000. +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| REPS | | Number of SPLIT repetitions | 1 | +| reflections | string | MX crystal reflection list | "Rubredoxin.lau" | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/examples/Templates/templateNMX/templateNMX.instr) for `templateNMX.instr`. + +--- + +*Generated for mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/examples/Templates/templateNMX_TOF/templateNMX_TOF.md b/mcstas-comps/examples/Templates/templateNMX_TOF/templateNMX_TOF.md new file mode 100644 index 000000000..53e1592d5 --- /dev/null +++ b/mcstas-comps/examples/Templates/templateNMX_TOF/templateNMX_TOF.md @@ -0,0 +1,46 @@ +# The `templateNMX_TOF` Instrument + +*McStas: A simple Laue NMX TOF diffractometer for macromolecules, adapted from templateNMX +and templateLaue instruments. + +Demonstrates use of PSD_monitor_TOF. + +Example: templateNMX_TOF.instr REPS=53 reflections=Rubredoxin.lau theta=-40.85 phi=15.188 xw=0.012 yh=0.012 tmin=13000 tmax=15000 Detector: det_I=78816.1 +Example: templateNMX_TOF.instr REPS=5 reflections=YBaCuO.lau theta=-91.1 phi=0 xw=0.012 yh=0.012 tmax=7000 tmin=5000 Detector: det_I=6277.74* + +## Identification + +- **Site:** Templates +- **Author:** K. Nielsen +- **Origin:** DTU +- **Date:** June 2nd, 2010 + +## Description + +```text +A single crystal sample is illuminated with a white cold beam. +Based on a Laue tutorial written by K. Nielsen, Feb 7, 2000. +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| REPS | | Number of SPLIT repetitions | 53 | +| reflections | string | MX crystal reflection list | "Rubredoxin.lau" | +| theta | deg | Rotation of sample around y (1st rotation) | -40.85 | +| phi | deg | Rotation of sample around x (2nd rotation) | 15.188 | +| xw | m | Width of final monitors | 0.012 | +| yh | m | Height of final monitors | 0.012 | +| tmin | mu-s | Minimum ToF to record | 0 | +| tmax | mu-s | Maximum ToF to record | 2e5 | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/examples/Templates/templateNMX_TOF/templateNMX_TOF.instr) for `templateNMX_TOF.instr`. + +--- + +*Generated for mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/examples/Templates/templateSANS/templateSANS.md b/mcstas-comps/examples/Templates/templateSANS/templateSANS.md new file mode 100644 index 000000000..8c6c61489 --- /dev/null +++ b/mcstas-comps/examples/Templates/templateSANS/templateSANS.md @@ -0,0 +1,38 @@ +# The `templateSANS` Instrument + +*McStas: Test instrument for the Sans_spheres component. No guide / velocity selector +etc. Will be developed further at later time.* + +## Identification + +- **Site:** Templates +- **Author:** Kim Lefmann +- **Origin:** Risoe +- **Date:** 19th Dec 2003. + +## Description + +```text +Very simple test instrument for the Sans_spheres component +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| lambda | AA | Mean wavelength of neutrons | 6 | +| dlambda | AA | Wavelength spread of neutrons | 0.05 | +| r | AA | Radius of scattering hard spheres | 100 | +| PHI | 1 | Particle volume fraction | 1e-3 | +| Delta_Rho | fm/AA^3 | Excess scattering length density | 0.6 | +| sigma_abs | barns | Absorption cross section at 2200 m/s | 0.5 | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/examples/Templates/templateSANS/templateSANS.instr) for `templateSANS.instr`. + +--- + +*Generated for mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/examples/Templates/templateSANS2/templateSANS2.md b/mcstas-comps/examples/Templates/templateSANS2/templateSANS2.md new file mode 100644 index 000000000..8f4cace1e --- /dev/null +++ b/mcstas-comps/examples/Templates/templateSANS2/templateSANS2.md @@ -0,0 +1,39 @@ +# The `templateSANS2` Instrument + +*McStas: Test instrument for the SANS_spheres2 component. No guide / velocity selector.* + +## Identification + +- **Site:** Templates +- **Author:** Peter Willendrup, Wim G. Bouwman +- **Origin:** DTU +- **Date:** Dec 20190 + +## Description + +```text +Very simple test instrument for the SANS_spheres2 component, derived / simplified from +H. Frielinghaus SANS_benchmark2 +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| lambda | AA | Mean wavelength of neutrons | 6 | +| dlambda | AA | Wavelength spread of neutrons | 0.05 | +| r | AA | Radius of scattering hard spheres | 150 | +| PHI | 1 | Particle volume fraction | 1e-3 | +| Delta_Rho | cm^-2 | Scattering length density | 6e10 | +| frac_dir | 1 | Fraction of statistics for direct beam | 0.03 | +| frac_inc | 1 | Fraction of statistics for incoherent scattering in scattered beam | 0.01 | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/examples/Templates/templateSANS2/templateSANS2.instr) for `templateSANS2.instr`. + +--- + +*Generated for mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/examples/Templates/templateSANS_MCPL/templateSANS_MCPL.md b/mcstas-comps/examples/Templates/templateSANS_MCPL/templateSANS_MCPL.md new file mode 100644 index 000000000..d03389041 --- /dev/null +++ b/mcstas-comps/examples/Templates/templateSANS_MCPL/templateSANS_MCPL.md @@ -0,0 +1,41 @@ +# The `templateSANS_MCPL` Instrument + +*McStas: Test instrument for the Sans_spheres component. No guide / velocity selector +etc. Will be developed further at later time. Behaves like the normal templateSANS +but dumps all events in an MCPL file.* + +## Identification + +- **Site:** Templates +- **Author:** Kim Lefmann +- **Origin:** Risoe +- **Date:** 19th Dec 2003. + +## Description + +```text +Very simple test instrument for the Sans_spheres component + +Example: lambda=6 Detector: detector_I=6.56942e-17 +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| lambda | AA | Mean wavelength of neutrons | 6 | +| dlambda | AA | Wavelength spread of neutrons | 0.05 | +| r | AA | Radius of scattering hard spheres | 100 | +| PHI | 1 | Particle volume fraction | 1e-3 | +| Delta_Rho | fm/AA^3 | Excess scattering length density | 0.6 | +| sigma_abs | barns | Absorption cross section at 2200 m/s | 0.5 | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/examples/Templates/templateSANS_MCPL/templateSANS_MCPL.instr) for `templateSANS_MCPL.instr`. + +--- + +*Generated for mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/examples/Templates/templateSasView/templateSasView.md b/mcstas-comps/examples/Templates/templateSasView/templateSasView.md new file mode 100644 index 000000000..818d1cf82 --- /dev/null +++ b/mcstas-comps/examples/Templates/templateSasView/templateSasView.md @@ -0,0 +1,48 @@ +# The `templateSasView` Instrument + +*McStas: Test instrument for some SasView_model components. No guide / velocity selector +etc.* + +## Identification + +- **Site:** Templates +- **Author:** Torben Nielsen +- **Origin:** DTU Physics / ESS DMSC +- **Date:** + +## Description + +```text +Very simple test instrument for 3 examples from the suite of SasView_ components. +Select sample model with 'model_index': +1= SasView_barbell +3= SasView_bcc_paracrystal +47= SasView_parallelepiped +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| lambda | AA | Mean wavelength of neutrons | 6 | +| dlambda | AA | Wavelength spread of neutrons | 0.05 | +| model_index | | SASmodels model index (see SasView_model.comp mcdoc page) | 47 | +| par1 | | Slot 1 in SASmodel parameter vector | 0 | +| par2 | | Slot 2 in SASmodel parameter vector | 0 | +| par3 | | Slot 3 in SASmodel parameter vector | 0 | +| par4 | | Slot 4 in SASmodel parameter vector | 0 | +| par5 | | Slot 5 in SASmodel parameter vector | 0 | +| par6 | | Slot 6 in SASmodel parameter vector | 0 | +| par7 | | Slot 7 in SASmodel parameter vector | 0 | +| par8 | | Slot 8 in SASmodel parameter vector | 0 | +| Ncount | | | 0 | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/examples/Templates/templateSasView/templateSasView.instr) for `templateSasView.instr`. + +--- + +*Generated for mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/examples/Templates/templateTAS/templateTAS.md b/mcstas-comps/examples/Templates/templateTAS/templateTAS.md new file mode 100644 index 000000000..72981a30d --- /dev/null +++ b/mcstas-comps/examples/Templates/templateTAS/templateTAS.md @@ -0,0 +1,136 @@ +# The `templateTAS` Instrument + +*McStas: Template RESCAL type triple-axis machine (TAS)* + +## Identification + +- **Site:** Templates +- **Author:** Emmanuel Farhi +- **Origin:** ILL (France) +- **Date:** 2006 + +## Description + +```text +This instrument is a simple model of triple-axis spectrometer. +It is directly illuminated by the moderator, +and has curved monochromator and analyzer. +Sample can be specified as a powder, liquid/amorphous or a pure incoherent +scatterer (e.g. vanadium, which is the default). +Sample geometry can be spherical or cylindrical. +For PG002 monochromator/analyzer setting, a reflectivity curve vs. wavelength +is used, else reflectivity is set to 70 %. To suppress collimators, set their +divergence to 0 (ALFn BETn). +Default instrument geometry is from IN20@ILL with PG monochromator/analyzer. + +Monochromator lattice parameter +PG 002 DM=3.355 AA (Highly Oriented Pyrolythic Graphite) +PG 004 DM=1.607 AA +Heusler 111 DM=3.362 AA (Cu2MnAl) +CoFe DM=1.771 AA (Co0.92Fe0.08) +Ge 111 DM=3.266 AA +Ge 311 DM=1.714 AA +Ge 511 DM=1.089 AA +Ge 533 DM=0.863 AA +Si 111 DM=3.135 AA +Cu 111 DM=2.087 AA +Cu 002 DM=1.807 AA +Cu 220 DM=1.278 AA +Cu 111 DM=2.095 AA + +IN22 configuration (at H25 thermal m=2 guide end): +KI=3.84, QM=1.0, EN=0.0, verbose=1, +WM=0.15, HM=0.12, NHM=1, NVM=9, RMV=-1, +WA=0.20, HA=0.10, NHA=11, NVA=3, RAV=-1, RAH=-1, +SM=-1, SS=1, SA=-1, +L1=10.0, L2=1.7, L3=1.0, L4=0.8 + +IN8 Configuration: with Copper optics +KF=5, KI=0, QM=0.5, EN=5, verbose=1 +WM=0.23, HM=0.19, RMH=-1, RMV=-1, DM=1.807, NHM=15, NVM=15, +WA=0.16, HA=0.08, RAH=-1, RAV=-1, DA=2.087, NHA=15, NVA=15, +L1=2.33 +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| KI | Angs-1 | Incoming neutron wavevector | 2.662 | +| KF | Angs-1 | Outgoing neutron wavevector | 0 | +| EI | meV | Incoming neutron energy | 0 | +| EF | meV | Outgoing neutron energy | 0 | +| QH | rlu | Measurement QH position in crystal | 0 | +| QK | rlu | Measurement QK position in crystal | 0 | +| QL | rlu | Measurement QL position in crystal | 0 | +| EN | meV | Energy transfer in crystal | 0 | +| QM | Angs-1 | Wavevector transfer in crystal | 0 | +| KFIX | Angs-1 | Fixed KI or KF value for Rescal compatibility | 0 | +| FX | 1:KI,2:KF | Fixed KI or KF type for Rescal compatibility | 0 | +| L1 | m | Source-Monochromator distance. Contains 1st Collimator of length 5.34 | 9 | +| L2 | m | Monochromator-Sample distance. Contains 2nd Collimator of length 0.35 | 2.1 | +| L3 | m | Sample-Analyzer distance. Contains 3rd Collimator of length 0.40 | 1.5 | +| L4 | m | Analyzer-detector distance. Contains 4th Collimator of length 0.24 | 0.7 | +| SM | 1:left, -1:right | Scattering sense of beam from Monochromator | 1 | +| SS | 1:left, -1:right | Scattering sense of beam from Sample | -1 | +| SA | 1:left, -1:right | Scattering sense of beam from Analyzer | 1 | +| DM | Angs | Monochromator d-spacing | 3.3539 | +| DA | Angs | Analyzer d-spacing | 3.3539 | +| RMV | m | Monochromator vertical curvature, 0 for flat, -1 for automatic setting | -1 | +| RMH | m | Monochromator horizontal curvature, 0 for flat, -1 for automatic setting | 0 | +| RAV | m | Analyzer vertical curvature, 0 for flat, -1 for automatic setting | 0 | +| RAH | m | Analyzer horizontal curvature, 0 for flat, -1 for automatic setting | -1 | +| ETAM | arc min | Monochromator mosaic | 30 | +| ETAA | arc min | Analyzer mosaic | 30 | +| ALF1 | arc min | Horizontal collimation from Source to Monochromator | 60 | +| ALF2 | arc min | Horizontal collimation from Monochromator to Sample A | 60 | +| ALF3 | arc min | Horizontal collimation from Sample to Analyzer | 60 | +| ALF4 | arc min | Horizontal collimation from Analyzer to Detector | 60 | +| BET1 | arc min | Vertical collimation from Source to Monochromator | 120 | +| BET2 | arc min | Vertical collimation from Monochromator to Sample A | 120 | +| BET3 | arc min | Vertical collimation from Sample to Analyzer | 120 | +| BET4 | arc min | Vertical collimation from Analyzer to Detector | 120 | +| AS | Angs | Sample lattice parameter A | 6.28 | +| BS | Angs | Sample lattice parameter B | 6.28 | +| CS | Angs | Sample lattice parameter C | 6.28 | +| AA | deg | Angle between lattice vectors B,C | 90 | +| BB | deg | Angle between lattice vectors C,A | 90 | +| CC | deg | Angle between lattice vectors A,B | 90 | +| AX | rlu | First reciprocal lattice vector in scattering plane, X | 1 | +| AY | rlu | First reciprocal lattice vector in scattering plane, Y | 0 | +| AZ | rlu | First reciprocal lattice vector in scattering plane, Z | 0 | +| BX | rlu | Second reciprocal lattice vector in scattering plane, X | 0 | +| BY | rlu | Second reciprocal lattice vector in scattering plane, Y | 1 | +| BZ | rlu | Second reciprocal lattice vector in scattering plane, Z | 0 | +| verbose | 1 | print TAS configuration. 0 to be quiet | 1 | +| A1 | deg | Monohromator rotation angle | 0 | +| A2 | deg | Monohromator take-off angle | 0 | +| A3 | deg | Sample rotation angle | 0 | +| A4 | deg | Sample take-off angle | 0 | +| A5 | deg | Analyzer rotation angle | 0 | +| A6 | deg | Analyzer take-off angle | 0 | +| NHM | 1 | Number of horizontal slabs composing the monochromator | 1 | +| NVM | 1 | Number of vertical slabs composing the monochromator | 9 | +| WM | m | Width of monochromator | 0.10 | +| HM | m | Height of monochromator | 0.12 | +| NHA | 1 | Number of horizontal slabs composing the analyzer | 9 | +| NVA | 1 | Number of vertical slabs composing the analyzer | 1 | +| WA | m | Width of analyzer | 0.10 | +| HA | m | Height of analyzer | 0.12 | +| Sqw_coh | str | sample coherent S(q,w) file name. Use LAZ/LAU or SQW file | "NULL" | +| Sqw_inc | str | sample incoherent S(q,w) file name. Use NULL to scatter incoherently | "NULL" | +| radius | m | outer radius of sample hollow cylinder/sphere | 0.01 | +| thickness | m | thickness of sample hollow cylinder. 0 for bulk | 0.005 | +| height | m | sample height. Use 0 for a spherical shape | 0.05 | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/examples/Templates/templateTAS/templateTAS.instr) for `templateTAS.instr`. +- Rescal for Matlab at http://www.ill.eu/instruments-support/computing-for-science/cs-software/all-software/matlab-ill/ +- Restrax at http://omega.ujf.cas.cz/restrax/ + +--- + +*Generated for mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/examples/Templates/templateTOF/templateTOF.md b/mcstas-comps/examples/Templates/templateTOF/templateTOF.md new file mode 100644 index 000000000..417f93da0 --- /dev/null +++ b/mcstas-comps/examples/Templates/templateTOF/templateTOF.md @@ -0,0 +1,53 @@ +# The `templateTOF` Instrument + +*McStas: A test instrument for the S(q,w) sample, with furnace/container* + +## Identification + +- **Site:** Templates +- **Author:** E. Farhi +- **Origin:** ILL +- **Date:** Jan 2004 + +## Description + +```text +This instrument is a test instrument for the S(q,w) sample. +It produces a tof-angle and q-energy detectors and also exports the +S(q,w) and S(q) data. +The sample environment is a single cylinder. +The sample container has the same shape as the sample itself, but is not +active when using a spherical sample shape (height=0). +detector is 2.5 m diameter, with 40 cm heigh, 1 inch diameter detector tubes. +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| E0 | meV | incident neutron beam energy | 4.94 | +| dE | meV | incident neutron beam energy spread | 0.24 | +| dt | s | time spread from chopper distribution | 6.4e-6 | +| coh | str | sample coherent Sqw data file or NULL | "Rb_liq_coh.sqw" | +| inc | str | sample incoherent Sqw data file or NULL | "Rb_liq_inc.sqw" | +| thickness | m | thickness of sample. 0=filled | 1e-4 | +| yheight | m | height of sample. 0=sphere | 0.0168 | +| radius | m | radius of sample (outer) | 0.005 | +| container | str | container material or NULL | "Nb.laz" | +| container_thickness | m | container thickness | 50e-6 | +| environment | str | sample environment material or NULL | "Al.laz" | +| environment_radius | m | sample environment outer radius | 0.025 | +| environment_thickness | m | sample environment thickness | 2e-3 | +| dt0 | | | 0 | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/examples/Templates/templateTOF/templateTOF.instr) for `templateTOF.instr`. +- The Isotropic_Sqw sample +- The Samples_Isotropic_Sqw example instrument + +--- + +*Generated for mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/examples/Templates/template_simple/template_simple.md b/mcstas-comps/examples/Templates/template_simple/template_simple.md new file mode 100644 index 000000000..be55a9260 --- /dev/null +++ b/mcstas-comps/examples/Templates/template_simple/template_simple.md @@ -0,0 +1,35 @@ +# The `template_simple` Instrument + +*McStas: instrument short description* + +## Identification + +- **Site:** Templates +- **Author:** your name (email) +- **Origin:** your institution +- **Date:** current date + +## Description + +```text +instrument description + +Example: parameters=values +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| Par1 | unit | Parameter1 description | 1 | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/examples/Templates/template_simple/template_simple.instr) for `template_simple.instr`. +- + +--- + +*Generated for mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/examples/Tests_MCPL_etc/Test_MCPL_input/Test_MCPL_input.md b/mcstas-comps/examples/Tests_MCPL_etc/Test_MCPL_input/Test_MCPL_input.md new file mode 100644 index 000000000..fa9b8f11d --- /dev/null +++ b/mcstas-comps/examples/Tests_MCPL_etc/Test_MCPL_input/Test_MCPL_input.md @@ -0,0 +1,36 @@ +# The `Test_MCPL_input` Instrument + +*McStas: A test instrument for MCPL_input* + +## Identification + +- **Site:** Tests_MCPL_etc +- **Author:** Erik B Knudsen +- **Origin:** DTU +- **Date:** Mar 2016 + +## Description + +```text +This is a unit test for the MCPL_input component. +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| repeat | 1 | Repeat the contents of the inputfile this many times. NB: When using MPI you implicitly repeat by #mpi processes | 1 | +| v_smear | 1 | When repeating, make Gaussian MC choice on particle velocity with spread v_smear * particle velocity | 0.1 | +| pos_smear | m | When repeating, make uniform MC choice on sphere of radius pos_spear around particle position | 0.001 | +| dir_smear | deg | When repeating, make Gaussian MC choice in cone of opening dir_smear around particle direction | 0.01 | +| MCPLFILE | str | Input MCPL file. | "voutput.mcpl" | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/examples/Tests_MCPL_etc/Test_MCPL_input/Test_MCPL_input.instr) for `Test_MCPL_input.instr`. + +--- + +*Generated for mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/examples/Tests_MCPL_etc/Test_MCPL_input_once/Test_MCPL_input_once.md b/mcstas-comps/examples/Tests_MCPL_etc/Test_MCPL_input_once/Test_MCPL_input_once.md new file mode 100644 index 000000000..3629f6f0c --- /dev/null +++ b/mcstas-comps/examples/Tests_MCPL_etc/Test_MCPL_input_once/Test_MCPL_input_once.md @@ -0,0 +1,37 @@ +# The `Test_MCPL_input_once` Instrument + +*McStas: A test instrument for MCPL_input_once* + +## Identification + +- **Site:** Tests_MCPL_etc +- **Author:** Peter Willendrup +- **Origin:** DTU +- **Date:** Mar 2024 + +## Description + +```text +This is a unit test for the MCPL_input_once component, which differs from the original MCPL_input by: +1) Being MPI-parallelized (no implicit "repeat" of the particles in the file, file content is shared among processes +2) No implementation of "repetition", if further stats is needed downstream, SPLIT should be applied +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| v_smear | 1 | Mmake Gaussian MC choice on particle velocity with spread v_smear * particle velocity | 0.1 | +| pos_smear | m | Make uniform MC choice on sphere of radius pos_spear around particle position | 0.001 | +| dir_smear | deg | Make Gaussian MC choice in cone of opening dir_smear around particle direction | 0.01 | +| MCPLFILE | str | Input MCPL file. | "voutput.mcpl" | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/examples/Tests_MCPL_etc/Test_MCPL_input_once/Test_MCPL_input_once.instr) for `Test_MCPL_input_once.instr`. + +--- + +*Generated for mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/examples/Tests_MCPL_etc/Test_MCPL_output/Test_MCPL_output.md b/mcstas-comps/examples/Tests_MCPL_etc/Test_MCPL_output/Test_MCPL_output.md new file mode 100644 index 000000000..e84f5c622 --- /dev/null +++ b/mcstas-comps/examples/Tests_MCPL_etc/Test_MCPL_output/Test_MCPL_output.md @@ -0,0 +1,32 @@ +# The `Test_MCPL_output` Instrument + +*McStas: A test instrument for MCPL_output* + +## Identification + +- **Site:** Tests_MCPL_etc +- **Author:** Erik B Knudsen +- **Origin:** DTU +- **Date:** Mar 2016 + +## Description + +```text +This is a unit test for the MCPL_output component. +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| Ncount | 1 | Ncount defined via input parameter | 1e3 | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/examples/Tests_MCPL_etc/Test_MCPL_output/Test_MCPL_output.instr) for `Test_MCPL_output.instr`. + +--- + +*Generated for mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/examples/Tests_RNG/Test_RNG_rand01/Test_RNG_rand01.md b/mcstas-comps/examples/Tests_RNG/Test_RNG_rand01/Test_RNG_rand01.md new file mode 100644 index 000000000..92088db94 --- /dev/null +++ b/mcstas-comps/examples/Tests_RNG/Test_RNG_rand01/Test_RNG_rand01.md @@ -0,0 +1,40 @@ +# The `Test_RNG_rand01` Instrument + +*McStas: Instrument to get basic test output from random number generator.* + +## Identification + +- **Site:** Tests_RNG +- **Author:** Peter Willendrup +- **Origin:** DTU +- **Date:** Oct 2nd, 2020 + +## Description + +```text +Instrument to get basic test output from random number generator. + +The instrument generates 2 randon numbers pr. particle using randpm1(), +encoded into the particle x and y coordinates. + +For a low statistics, one may e.g. check that setting the seed gives +varied output or fixing the seed gives fixed output· +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| Ncount | 1 | Specify statistics | 1000 | +| seed | 1 | Specify RNG seed | 0 | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/examples/Tests_RNG/Test_RNG_rand01/Test_RNG_rand01.instr) for `Test_RNG_rand01.instr`. +- + +--- + +*Generated for mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/examples/Tests_RNG/Test_RNG_randnorm/Test_RNG_randnorm.md b/mcstas-comps/examples/Tests_RNG/Test_RNG_randnorm/Test_RNG_randnorm.md new file mode 100644 index 000000000..ddf150c6a --- /dev/null +++ b/mcstas-comps/examples/Tests_RNG/Test_RNG_randnorm/Test_RNG_randnorm.md @@ -0,0 +1,40 @@ +# The `Test_RNG_randnorm` Instrument + +*McStas: Instrument to get basic test output from random number generator.* + +## Identification + +- **Site:** Tests_RNG +- **Author:** Peter Willendrup +- **Origin:** DTU +- **Date:** Oct 2nd, 2020 + +## Description + +```text +Instrument to get basic test output from random number generator. + +The instrument generates 2 randon numbers pr. particle using randpm1(), +encoded into the particle x and y coordinates. + +For a low statistics, one may e.g. check that setting the seed gives +varied output or fixing the seed gives fixed output· +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| Ncount | 1 | Specify statistics | 1000000 | +| seed | 1 | Specify RNG seed | 0 | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/examples/Tests_RNG/Test_RNG_randnorm/Test_RNG_randnorm.instr) for `Test_RNG_randnorm.instr`. +- + +--- + +*Generated for mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/examples/Tests_RNG/Test_RNG_randpm1/Test_RNG_randpm1.md b/mcstas-comps/examples/Tests_RNG/Test_RNG_randpm1/Test_RNG_randpm1.md new file mode 100644 index 000000000..ce09a3e42 --- /dev/null +++ b/mcstas-comps/examples/Tests_RNG/Test_RNG_randpm1/Test_RNG_randpm1.md @@ -0,0 +1,40 @@ +# The `Test_RNG_randpm1` Instrument + +*McStas: Instrument to get basic test output from random number generator.* + +## Identification + +- **Site:** Tests_RNG +- **Author:** Peter Willendrup +- **Origin:** DTU +- **Date:** Oct 2nd, 2020 + +## Description + +```text +Instrument to get basic test output from random number generator. + +The instrument generates 2 randon numbers pr. particle using randpm1(), +encoded into the particle x and y coordinates. + +For a low statistics, one may e.g. check that setting the seed gives +varied output or fixing the seed gives fixed output· +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| Ncount | 1 | Specify statistics | 1000 | +| seed | 1 | Specify RNG seed | 0 | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/examples/Tests_RNG/Test_RNG_randpm1/Test_RNG_randpm1.instr) for `Test_RNG_randpm1.instr`. +- + +--- + +*Generated for mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/examples/Tests_RNG/Test_RNG_randtriangle/Test_RNG_randtriangle.md b/mcstas-comps/examples/Tests_RNG/Test_RNG_randtriangle/Test_RNG_randtriangle.md new file mode 100644 index 000000000..7cddf6a93 --- /dev/null +++ b/mcstas-comps/examples/Tests_RNG/Test_RNG_randtriangle/Test_RNG_randtriangle.md @@ -0,0 +1,40 @@ +# The `Test_RNG_randtriangle` Instrument + +*McStas: Instrument to get basic test output from random number generator.* + +## Identification + +- **Site:** Tests_RNG +- **Author:** Peter Willendrup +- **Origin:** DTU +- **Date:** Oct 2nd, 2020 + +## Description + +```text +Instrument to get basic test output from random number generator. + +The instrument generates 2 randon numbers pr. particle using randpm1(), +encoded into the particle x and y coordinates. + +For a low statistics, one may e.g. check that setting the seed gives +varied output or fixing the seed gives fixed output· +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| Ncount | 1 | Specify statistics | 1000000 | +| seed | 1 | Specify RNG seed | 0 | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/examples/Tests_RNG/Test_RNG_randtriangle/Test_RNG_randtriangle.instr) for `Test_RNG_randtriangle.instr`. +- + +--- + +*Generated for mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/examples/Tests_RNG/Test_RNG_randvec_target_circle/Test_RNG_randvec_target_circle.md b/mcstas-comps/examples/Tests_RNG/Test_RNG_randvec_target_circle/Test_RNG_randvec_target_circle.md new file mode 100644 index 000000000..7e01c669d --- /dev/null +++ b/mcstas-comps/examples/Tests_RNG/Test_RNG_randvec_target_circle/Test_RNG_randvec_target_circle.md @@ -0,0 +1,41 @@ +# The `Test_RNG_randvec_target_circle` Instrument + +*McStas: Instrument to get basic test output from random number generator.* + +## Identification + +- **Site:** Tests_RNG +- **Author:** Peter Willendrup +- **Origin:** DTU +- **Date:** Oct 2nd, 2020 + +## Description + +```text +Instrument to get basic test output from random number generator. + +The instrument generates 2 randon numbers pr. particle using randpm1(), +encoded into the particle x and y coordinates. + +For a low statistics, one may e.g. check that setting the seed gives +varied output or fixing the seed gives fixed output· +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| Ncount | 1 | Specify statistics | 1000000 | +| seed | 1 | Specify RNG seed | 0 | +| dist | m | Distance between synthetic point-source and monitor | 1 | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/examples/Tests_RNG/Test_RNG_randvec_target_circle/Test_RNG_randvec_target_circle.instr) for `Test_RNG_randvec_target_circle.instr`. +- + +--- + +*Generated for mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/examples/Tests_RNG/Test_RNG_randvec_target_rect/Test_RNG_randvec_target_rect.md b/mcstas-comps/examples/Tests_RNG/Test_RNG_randvec_target_rect/Test_RNG_randvec_target_rect.md new file mode 100644 index 000000000..0cd3dfa3a --- /dev/null +++ b/mcstas-comps/examples/Tests_RNG/Test_RNG_randvec_target_rect/Test_RNG_randvec_target_rect.md @@ -0,0 +1,41 @@ +# The `Test_RNG_randvec_target_rect` Instrument + +*McStas: Instrument to get basic test output from random number generator.* + +## Identification + +- **Site:** Tests_RNG +- **Author:** Peter Willendrup +- **Origin:** DTU +- **Date:** Oct 2nd, 2020 + +## Description + +```text +Instrument to get basic test output from random number generator. + +The instrument generates 2 randon numbers pr. particle using randpm1(), +encoded into the particle x and y coordinates. + +For a low statistics, one may e.g. check that setting the seed gives +varied output or fixing the seed gives fixed output· +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| Ncount | 1 | Specify statistics | 1000000 | +| seed | 1 | Specify RNG seed | 0 | +| dist | m | Distance between synthetic point-source and monitor | 1 | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/examples/Tests_RNG/Test_RNG_randvec_target_rect/Test_RNG_randvec_target_rect.instr) for `Test_RNG_randvec_target_rect.instr`. +- + +--- + +*Generated for mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/examples/Tests_RNG/Test_RNG_randvec_target_rect_angular/Test_RNG_randvec_target_rect_angular.md b/mcstas-comps/examples/Tests_RNG/Test_RNG_randvec_target_rect_angular/Test_RNG_randvec_target_rect_angular.md new file mode 100644 index 000000000..3ef39848d --- /dev/null +++ b/mcstas-comps/examples/Tests_RNG/Test_RNG_randvec_target_rect_angular/Test_RNG_randvec_target_rect_angular.md @@ -0,0 +1,41 @@ +# The `Test_RNG_randvec_target_rect_angular` Instrument + +*McStas: Instrument to get basic test output from random number generator.* + +## Identification + +- **Site:** Tests_RNG +- **Author:** Peter Willendrup +- **Origin:** DTU +- **Date:** Oct 2nd, 2020 + +## Description + +```text +Instrument to get basic test output from random number generator. + +The instrument generates 2 randon numbers pr. particle using randpm1(), +encoded into the particle x and y coordinates. + +For a low statistics, one may e.g. check that setting the seed gives +varied output or fixing the seed gives fixed output· +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| Ncount | 1 | Specify statistics | 1000000 | +| seed | 1 | Specify RNG seed | 0 | +| angle | deg | Angular focusing settin | 45 | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/examples/Tests_RNG/Test_RNG_randvec_target_rect_angular/Test_RNG_randvec_target_rect_angular.instr) for `Test_RNG_randvec_target_rect_angular.instr`. +- + +--- + +*Generated for mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/examples/Tests_grammar/Test_GROUP/Test_GROUP.md b/mcstas-comps/examples/Tests_grammar/Test_GROUP/Test_GROUP.md new file mode 100644 index 000000000..aa7e8dd39 --- /dev/null +++ b/mcstas-comps/examples/Tests_grammar/Test_GROUP/Test_GROUP.md @@ -0,0 +1,33 @@ +# The `Test_GROUP` Instrument + +*McStas: Tests that GROUP logic works as expected* + +## Identification + +- **Site:** Tests_grammar +- **Author:** Erik Knudsen, Peter Willendrup +- **Origin:** DTU +- **Date:** 2021/09/30 + +## Description + +```text +Unit test for the GROUP logic +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| SLITW | m | Width of the GROUP'ed slits | 1e-6 | +| SIGNI | 1 | Which slit should be hit (left or right) | 1 | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/examples/Tests_grammar/Test_GROUP/Test_GROUP.instr) for `Test_GROUP.instr`. + +--- + +*Generated for mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/examples/Tests_grammar/Test_GROUP_restore.md b/mcstas-comps/examples/Tests_grammar/Test_GROUP_restore.md new file mode 100644 index 000000000..f9dff5dfd --- /dev/null +++ b/mcstas-comps/examples/Tests_grammar/Test_GROUP_restore.md @@ -0,0 +1,40 @@ +# The `Test_GROUP_restore` Instrument + +*McStas: Test instrument for GROUP of monitors using restore_neutron* + +## Identification + +- **Site:** Tests_grammar +- **Author:** Peter Willendrup +- **Origin:** DTU/ESS +- **Date:** June 2024 + +## Description + +```text +Test instrument for GROUP of monitors using restore_neutron. + +1st test: Source emits intensity of 6e6 - "cube" positioned monitors each catch 1/6 of that. +2nd test: Reduced dimension of monitors mean a fraction is lost in the GROUP +3rd test: Adding a "catchall" arm recovers the intensity +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| dim | m | Width/height of monitors in "cubic" GROUP arrangement | 4 | +| catchall | 1 | Flag to indicate if "catchall"-Arm is included in GROUP | 0 | +| restore | | | 1 | +| src_dim | m | radius of 4PI-emitting source | 0.01 | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/examples/Tests_grammar/Test_GROUP_restore.instr) for `Test_GROUP_restore.instr`. +- A reference/HTML link for more information + +--- + +*Generated for mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/examples/Tests_grammar/Test_Jump_Iterate/Test_Jump_Iterate.md b/mcstas-comps/examples/Tests_grammar/Test_Jump_Iterate/Test_Jump_Iterate.md new file mode 100644 index 000000000..68aaff4a3 --- /dev/null +++ b/mcstas-comps/examples/Tests_grammar/Test_Jump_Iterate/Test_Jump_Iterate.md @@ -0,0 +1,37 @@ +# The `Test_Jump_Iterate` Instrument + +*McStas: A test of the JUMP ITERATE keyword to describe a long curved guide in a concise way.* + +## Identification + +- **Site:** Tests_grammar +- **Author:** E. Farhi +- **Origin:** ILL +- **Date:** March 30, 2015 + +## Description + +```text +A curved guide made of only two guide elements which are iterated with slight +rotation in between, to describe a long curved guide. +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| L | m | total length of curved section | 60 | +| numel | 1 | number of guide elements, each of length L/numel | 30 | +| R | m | curvature radius | 1500 | +| width | m | width of guide element | 0.03 | +| m | 1 | super-mirror coating wrt Ni, e.g. m=2 | 2 | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/examples/Tests_grammar/Test_Jump_Iterate/Test_Jump_Iterate.instr) for `Test_Jump_Iterate.instr`. + +--- + +*Generated for mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/examples/Tests_grammar/Unittest_ALLOW_BACKPROP/Unittest_ALLOW_BACKPROP.md b/mcstas-comps/examples/Tests_grammar/Unittest_ALLOW_BACKPROP/Unittest_ALLOW_BACKPROP.md new file mode 100644 index 000000000..90e8a8c68 --- /dev/null +++ b/mcstas-comps/examples/Tests_grammar/Unittest_ALLOW_BACKPROP/Unittest_ALLOW_BACKPROP.md @@ -0,0 +1,39 @@ +# The `Unittest_ALLOW_BACKPROP` Instrument + +*McStas: Unittest for ALLOW_BACKPROP macro* + +## Identification + +- **Site:** Tests_grammar +- **Author:** Peter Willendrup +- **Origin:** ESS +- **Date:** February 2026 + +## Description + +```text +Unittest to ensure that the macro ALLOW_BACKPROP works correctly. + +The test instrument includes two monitors, with a selectable ALLOW_BACKPROP in between. +The second monitor is placed physically "earlier" than the first, but logically after. + +1) With Backprop=0 the second monitor (closer to the source) should yield a signal of 0 +2) With Backprop=1 the second monitor should measure a signal since backpropagation is allowed +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| Backprop | 1 | Flag to enable the ALLOW_BACKPROP macro | 0 | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/examples/Tests_grammar/Unittest_ALLOW_BACKPROP/Unittest_ALLOW_BACKPROP.instr) for `Unittest_ALLOW_BACKPROP.instr`. +- A reference/HTML link for more information + +--- + +*Generated for mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/examples/Tests_grammar/Unittest_JUMP_ITERATE/Unittest_JUMP_ITERATE.md b/mcstas-comps/examples/Tests_grammar/Unittest_JUMP_ITERATE/Unittest_JUMP_ITERATE.md new file mode 100644 index 000000000..f6fd4777d --- /dev/null +++ b/mcstas-comps/examples/Tests_grammar/Unittest_JUMP_ITERATE/Unittest_JUMP_ITERATE.md @@ -0,0 +1,38 @@ +# The `Unittest_JUMP_ITERATE` Instrument + +*McStas: JUMP ITERATE unittest* + +## Identification + +- **Site:** Tests_grammar +- **Author:** Peter Willendrup +- **Origin:** DTU +- **Date:** Oct 28th, 2021 + +## Description + +```text +JUMP ITERATE unittest + +The instrument uses JUMP ITERATE to let each particle make n='jumps' returns +to the monitor. The particles have unit weight and hence the intensity scales +with the simulated statistics. (Use input parameter Ncount for setting the stats). +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| Ncount | 1 | Specify statistics | 1000 | +| jumps | 1 | Number of jumps | 10 | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/examples/Tests_grammar/Unittest_JUMP_ITERATE/Unittest_JUMP_ITERATE.instr) for `Unittest_JUMP_ITERATE.instr`. +- + +--- + +*Generated for mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/examples/Tests_grammar/Unittest_JUMP_WHEN/Unittest_JUMP_WHEN.md b/mcstas-comps/examples/Tests_grammar/Unittest_JUMP_WHEN/Unittest_JUMP_WHEN.md new file mode 100644 index 000000000..43e9c1b0d --- /dev/null +++ b/mcstas-comps/examples/Tests_grammar/Unittest_JUMP_WHEN/Unittest_JUMP_WHEN.md @@ -0,0 +1,38 @@ +# The `Unittest_JUMP_WHEN` Instrument + +*McStas: JUMP WHEN unittest* + +## Identification + +- **Site:** Tests_grammar +- **Author:** Peter Willendrup +- **Origin:** DTU +- **Date:** Oct 28th, 2021 + +## Description + +```text +JUMP WHEN unittest. + +One unit of intensity is emitted from a 1x1 m. The particles generated in +one source quadrant is repteated 'jumps' times. Resulting intensity should be: +1 + 0.25*jumps; +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| jumps | 1 | Number of jumps to do | 10 | +| Pp0 | 1 | Dummy input parameter used internally | 0 | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/examples/Tests_grammar/Unittest_JUMP_WHEN/Unittest_JUMP_WHEN.instr) for `Unittest_JUMP_WHEN.instr`. +- + +--- + +*Generated for mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/examples/Tests_grammar/Unittest_SPLIT/Unittest_SPLIT.md b/mcstas-comps/examples/Tests_grammar/Unittest_SPLIT/Unittest_SPLIT.md new file mode 100644 index 000000000..7e3b5aff0 --- /dev/null +++ b/mcstas-comps/examples/Tests_grammar/Unittest_SPLIT/Unittest_SPLIT.md @@ -0,0 +1,36 @@ +# The `Unittest_SPLIT` Instrument + +*McStas: SPLIT unittest* + +## Identification + +- **Site:** Tests_grammar +- **Author:** Peter Willendrup +- **Origin:** DTU +- **Date:** Oct 28th, 2021 + +## Description + +```text +SPLIT unittest. + +One unit of intensity is emitted from a 1x1 m. +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| SPLITS | 1 | Number of SPLIT to do | 10 | +| Pp0 | 1 | Dummy input parameter used internally | 1 | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/examples/Tests_grammar/Unittest_SPLIT/Unittest_SPLIT.instr) for `Unittest_SPLIT.instr`. +- + +--- + +*Generated for mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/examples/Tests_grammar/Unittest_SPLIT_sample/Unittest_SPLIT_sample.md b/mcstas-comps/examples/Tests_grammar/Unittest_SPLIT_sample/Unittest_SPLIT_sample.md new file mode 100644 index 000000000..17cd2b5d5 --- /dev/null +++ b/mcstas-comps/examples/Tests_grammar/Unittest_SPLIT_sample/Unittest_SPLIT_sample.md @@ -0,0 +1,37 @@ +# The `Unittest_SPLIT_sample` Instrument + +*McStas: SPLIT unittest including samples* + +## Identification + +- **Site:** Tests_grammar +- **Author:** Peter Willendrup +- **Origin:** DTU +- **Date:** Oct 28th, 2021 + +## Description + +```text +SPLIT unittest. + +One unit of intensity is emitted from a 1x1 m. +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| SAMPLE | | | 1 | +| SPLITS | 1 | Number of SPLIT to do | 10 | +| Pp0 | 1 | Dummy input parameter used internally | 1 | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/examples/Tests_grammar/Unittest_SPLIT_sample/Unittest_SPLIT_sample.instr) for `Unittest_SPLIT_sample.instr`. +- + +--- + +*Generated for mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/examples/Tests_monitors/Test_Cyl_monitors/Test_Cyl_monitors.md b/mcstas-comps/examples/Tests_monitors/Test_Cyl_monitors/Test_Cyl_monitors.md new file mode 100644 index 000000000..21a579be3 --- /dev/null +++ b/mcstas-comps/examples/Tests_monitors/Test_Cyl_monitors/Test_Cyl_monitors.md @@ -0,0 +1,43 @@ +# The `Test_Cyl_monitors` Instrument + +*McStas: Test Monitor_nD against basic monitor* + +## Identification + +- **Site:** Tests_monitors +- **Author:** P. Willendrup +- **Origin:** DTU +- **Date:** 30. September 2020 + +## Description + +```text +A test instrument to compare Monitor_nD output against basic 1D and 2D monitors. +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| lambda | Angs | Wavelength at monochromator, computed from DM and THETA_M if left as 0. | 5 | +| L1 | m | Source-sample distance | 10 | +| bins | | Number of bins on monitors | 100 | +| omega | deg | Focusing angle wrt. sample | 90 | +| thmin | deg | Minimum angle mesured | -180 | +| thmax | deg | Maximum angle mesured | 180 | +| focus_aw | deg | Angular width of focusing from sample | 10 | +| focus_ah | deg | Angular height of focusing from sample | 2 | +| focus_xw | m | Width of focusing from sample | 0 | +| focus_yh | m | Height of focusing from sample | 0 | +| tx | | | 0 | +| tz | | | 0 | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/examples/Tests_monitors/Test_Cyl_monitors/Test_Cyl_monitors.instr) for `Test_Cyl_monitors.instr`. + +--- + +*Generated for mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/examples/Tests_monitors/Test_Monitor_nD/Test_Monitor_nD.md b/mcstas-comps/examples/Tests_monitors/Test_Monitor_nD/Test_Monitor_nD.md new file mode 100644 index 000000000..743d21702 --- /dev/null +++ b/mcstas-comps/examples/Tests_monitors/Test_Monitor_nD/Test_Monitor_nD.md @@ -0,0 +1,38 @@ +# The `Test_Monitor_nD` Instrument + +*McStas: Test Monitor_nD against basic monitor* + +## Identification + +- **Site:** Tests_monitors +- **Author:** P. Willendrup +- **Origin:** DTU +- **Date:** 30. September 2020 + +## Description + +```text +A test instrument to compare Monitor_nD output against basic 1D and 2D monitors. +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| lambda | Angs | Wavelength at monochromator, computed from DM and THETA_M if left as 0. | 1 | +| L1 | m | Source-sample distance | 10 | +| bins | | Number of bins on monitors | 100 | +| xw | m | Width of detector | 0.11 | +| yh | m | Height of detector | 0.16 | +| hdiv | deg | Horizontal divergence measured by detector | 2 | +| vdiv | deg | Vertical divergence measured by detector | 2 | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/examples/Tests_monitors/Test_Monitor_nD/Test_Monitor_nD.instr) for `Test_Monitor_nD.instr`. + +--- + +*Generated for mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/examples/Tests_monitors/Test_TOF_PSDmonitor_toQ/Test_TOF_PSDmonitor_toQ.md b/mcstas-comps/examples/Tests_monitors/Test_TOF_PSDmonitor_toQ/Test_TOF_PSDmonitor_toQ.md new file mode 100644 index 000000000..40f5694d3 --- /dev/null +++ b/mcstas-comps/examples/Tests_monitors/Test_TOF_PSDmonitor_toQ/Test_TOF_PSDmonitor_toQ.md @@ -0,0 +1,36 @@ +# The `Test_TOF_PSDmonitor_toQ` Instrument + +*McStas: Test instrument for monitor TOF_PSDmonitor_toQ (Rob Dalgliesh)* + +## Identification + +- **Site:** Tests_monitors +- **Author:** Peter Willendrup +- **Origin:** ESS +- **Date:** 20251207 + +## Description + +```text +Rudimentary test-instrument for monitor TOF_PSDmonitor_toQ developed by Rob Dalgliesh, ISIS. + +The tested monitor is a 1-dimensional Q-monitor that calculates Q from "measured" time-of-flight, +i.e. not from particle velocity parameters. +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| theta | degs | Scattering angle | 0.91 | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/examples/Tests_monitors/Test_TOF_PSDmonitor_toQ/Test_TOF_PSDmonitor_toQ.instr) for `Test_TOF_PSDmonitor_toQ.instr`. +- + +--- + +*Generated for mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/examples/Tests_optics/Test_Al_windows/Test_Al_windows.md b/mcstas-comps/examples/Tests_optics/Test_Al_windows/Test_Al_windows.md new file mode 100644 index 000000000..9e3149839 --- /dev/null +++ b/mcstas-comps/examples/Tests_optics/Test_Al_windows/Test_Al_windows.md @@ -0,0 +1,45 @@ +# The `Test_Al_windows` Instrument + +*McStas: Small test instrument for studying Al-window performance* + +## Identification + +- **Site:** Tests_optics +- **Author:** Peter Willendrup +- **Origin:** ESS +- **Date:** 20260316 + +## Description + +```text +Test instrument for studying transmission through Al-windows. + +Includes 3 models of increasing complexity / sophistication: +1) Al_window(),: +- simple linear absorption + 4th order scattering model +- infinite-plane geometry +2) PowderN() +- Material specified from Al.laz input-file +- Parametrized for 80% statistics -> transmission +3) NCrystal() +- Material specified from local Al as .ncmat format input +(generated from CIF file COD / 1502689) +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| Window | 1 | Choice of Al_Window (1), PowderN (2) or NCrystal (3) model | 1 | +| thickness | m | Thickness of Al window | 0.005 | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/examples/Tests_optics/Test_Al_windows/Test_Al_windows.instr) for `Test_Al_windows.instr`. +- + +--- + +*Generated for mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/examples/Tests_optics/Test_Collimator_Radial/Test_Collimator_Radial.md b/mcstas-comps/examples/Tests_optics/Test_Collimator_Radial/Test_Collimator_Radial.md new file mode 100644 index 000000000..9c97ad142 --- /dev/null +++ b/mcstas-comps/examples/Tests_optics/Test_Collimator_Radial/Test_Collimator_Radial.md @@ -0,0 +1,36 @@ +# The `Test_Collimator_Radial` Instrument + +*McStas: Cross comparison of radial collimator components* + +## Identification + +- **Site:** Tests_optics +- **Author:** E. Farhi [farhi@ill.fr] +- **Origin:** ILL +- **Date:** Sept 1st, 2008 + +## Description + +```text +Cross comparison of radial collimator components, using McStas and +contributed components. It shows that all implementations are equivalent. +The Exact_radial_coll contributed component also takes into account the absorbing +blade thickness between slits, which decreases slightly intensity. +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| Collimator | 1 | Choice of radial collimator component to test, with 1=Collimator_Radial, 2=Collimator_ROC, 3=Exact_radial_coll. | 1 | +| Powder | string | Reflection list for powder-sample | "Na2Ca3Al2F14.laz" | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/examples/Tests_optics/Test_Collimator_Radial/Test_Collimator_Radial.instr) for `Test_Collimator_Radial.instr`. + +--- + +*Generated for mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/examples/Tests_optics/Test_Conics_pairs/Test_Conics_pairs.md b/mcstas-comps/examples/Tests_optics/Test_Conics_pairs/Test_Conics_pairs.md new file mode 100644 index 000000000..b7995f8ae --- /dev/null +++ b/mcstas-comps/examples/Tests_optics/Test_Conics_pairs/Test_Conics_pairs.md @@ -0,0 +1,43 @@ +# The `Test_Conics_pairs` Instrument + +*McStas: Unit test instrument for Conics Pairs components* + +## Identification + +- **Site:** Tests_optics +- **Author:** Erik B Knudsen (erkn@fysik.dtu.dk) +- **Origin:** DTU Physics +- **Date:** Dec '21 + +## Description + +```text +Example instrument that shows some ways of using Conics_Ph and Conics_EH +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| OPTIC | | Flag to choose between 0: no optic, 1: EH pair, 2: PH pair | 1 | +| ssize | m | Source radius | 1e-6 | +| fs | m | Distance betwee nsource and optic mid plane | 10 | +| fi | m | Distance between optics mid plane and focal point. | 10 | +| R0 | 1 | Mirror substrate reflectivity | 0.99 | +| m | 1 | m-value of supermirrors | 3 | +| W | AA-1 | Width of supermirror cut-off | 0.003 | +| alpha | AA | Slope of reflectivity for reflectivity curve approximation | 6.07 | +| nshells | 1 | Number of Wolter-optic shells | 4 | +| rmin | | | 0.0031416 | +| rmax | | | 0.05236 | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/examples/Tests_optics/Test_Conics_pairs/Test_Conics_pairs.instr) for `Test_Conics_pairs.instr`. +- + +--- + +*Generated for mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/examples/Tests_optics/Test_DiskChoppers/Test_DiskChoppers.md b/mcstas-comps/examples/Tests_optics/Test_DiskChoppers/Test_DiskChoppers.md new file mode 100644 index 000000000..2c96d5f3c --- /dev/null +++ b/mcstas-comps/examples/Tests_optics/Test_DiskChoppers/Test_DiskChoppers.md @@ -0,0 +1,35 @@ +# The `Test_DiskChoppers` Instrument + +*McStas: Simple test instrument that compares the use of 2 DiskChoppers with one MultiDiskChopper* + +## Identification + +- **Site:** Tests_optics +- **Author:** Peter Willendrup +- **Origin:** DTU +- **Date:** September 2018 + +## Description + +```text +Simple test instrument that compares the use of 2 DiskChoppers with one MultiDiskChopper +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| chopper | int | chopper=0 selects two DiskChoppers, chopper=1 selects one MultiDiskChopper | 0 | +| lambda | AA | Mean wavelength produced from the source | 10 | +| dlambda | AA | Halfwidth of wavelenghts produced from the source | 9.9 | +| deltay | m | Vertical displacement of MultiDiskChopper vertical centre of rotation (default is to be positioned like DiskChopper) | -0.19 | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/examples/Tests_optics/Test_DiskChoppers/Test_DiskChoppers.instr) for `Test_DiskChoppers.instr`. + +--- + +*Generated for mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/examples/Tests_optics/Test_DiskChoppers2/Test_DiskChoppers2.md b/mcstas-comps/examples/Tests_optics/Test_DiskChoppers2/Test_DiskChoppers2.md new file mode 100644 index 000000000..3b784626b --- /dev/null +++ b/mcstas-comps/examples/Tests_optics/Test_DiskChoppers2/Test_DiskChoppers2.md @@ -0,0 +1,41 @@ +# The `Test_DiskChoppers2` Instrument + +*McStas: Simple test instrument that compares DiskChoppers with a simple, rotating Slit.* + +## Identification + +- **Site:** Tests_optics +- **Author:** Peter Willendrup +- **Origin:** DTU +- **Date:** September 2018 + +## Description + +```text +Simple test instrument that compares DiskChoppers with a simple, rotating Slit. +When ABSORBER is set, a slab of B4C is acts as absorbing medium. +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| chopper | int | chopper=0 selects DiskChopper, chopper=1 selects a rotating Slit | 0 | +| lambda | AA | Mean wavelength produced from the source | 10 | +| dlambda | AA | Halfwidth of wavelenghts produced from the source | 9.9 | +| deltay | m | Position of centre of rotation vs. beam in slit case | 0.19 | +| dx | | | 0.016 | +| nu | Hz | Chopper frequency | 10 | +| phase | deg | Chopper phase | 0 | +| ABSORBER | 1 | Flag to indicate if slab is B4C(=1) or perfect(=0) | 0 | +| tz | m | Thickness of B4C slab | 0.001 | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/examples/Tests_optics/Test_DiskChoppers2/Test_DiskChoppers2.instr) for `Test_DiskChoppers2.instr`. + +--- + +*Generated for mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/examples/Tests_optics/Test_Fermi/Test_Fermi.md b/mcstas-comps/examples/Tests_optics/Test_Fermi/Test_Fermi.md new file mode 100644 index 000000000..652f5d18c --- /dev/null +++ b/mcstas-comps/examples/Tests_optics/Test_Fermi/Test_Fermi.md @@ -0,0 +1,46 @@ +# The `Test_Fermi` Instrument + +*McStas: Cross comparison of Fermi Chopper components* + +## Identification + +- **Site:** Tests_optics +- **Author:** E. Farhi [farhi@ill.fr] +- **Origin:** ILL +- **Date:** Sept 1st, 2008 + +## Description + +```text +Cross comparison of Fermi Chopper components, using McStas and +contributed components, as well as rotating collimator approximations. It +shows that all implementations are equivalent. However, approximating rotating +guide are 30% faster than McStas Fermi chopper. +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| Fermi | 1 | Choice of Fermi chopper component to test, with 1=FermiChopper, 3=FermiChopper_ILL, 4=rotating Guide_gravity, 5=rotating Guide_channeled | 1 | +| lambda | AA | Mean wavelength from source | 3.39 | +| width_FC | m | total slit pack width | 0.044 | +| height_FC | m | height of FC slit pack | 0.064 | +| length_FC | m | length of FC slit pack | 0.012 | +| FC_Hz | Hz | rotation speed. Omega=2*PI*nu in rad/s, nu*60 in rpm | 100 | +| Nslit_FC | | Number of slits in FC slit package | 120 | +| d_SF | m | distance from Source to FC center | 3 | +| d_FD | m | distance from FC center to Detector | 3 | +| phase | deg | FC phase. Use -0 for automatic | 271.92 | +| time_to_arrival | | | 0 | +| time_window_width | | | 0 | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/examples/Tests_optics/Test_Fermi/Test_Fermi.instr) for `Test_Fermi.instr`. + +--- + +*Generated for mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/examples/Tests_optics/Test_FocalisationMirrors/Test_FocalisationMirrors.md b/mcstas-comps/examples/Tests_optics/Test_FocalisationMirrors/Test_FocalisationMirrors.md new file mode 100644 index 000000000..cd5c35a8a --- /dev/null +++ b/mcstas-comps/examples/Tests_optics/Test_FocalisationMirrors/Test_FocalisationMirrors.md @@ -0,0 +1,44 @@ +# The `Test_FocalisationMirrors` Instrument + +*McStas: Test instrument for neutron focalisation with a set of supermirrors. +No guide / velocity selector +One parabolic SM converges the incoming beam to its focal point, then one +elliptic SM (with primary focal point at same location as parabolic SM focal point) +images the focal point onto the detector.* + +## Identification + +- **Site:** Tests_optics +- **Author:** Sylvain Desert +- **Origin:** LLB +- **Date:** 2007. + +## Description + +```text +Test instrument for the MirrorElli and MirrorPara components +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| Qmin | AA^-1 | Minimum momentum transfer on the detector | .0001 | +| G | 1 | Ratio of the mirror focal length = increase in accepted divergence angle | 1 | +| H | m | Height of mirrors | .0001 | +| F | m | Parabolic focal | .00066 | +| DET | m | Distance between the two elliptic focal points | 8.2 | +| lambda | AA | Mean wavelength of neutrons | 14 | +| divergence | deg | Source divergence | .1 | +| BeamWidth | m | Length of the source to focalize | .05 | +| TetaMin | deg | Minimum angle that must be reflected by the device assuming m=3 SM (TetaMin=3 for 5A and above neutron) | 3 | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/examples/Tests_optics/Test_FocalisationMirrors/Test_FocalisationMirrors.instr) for `Test_FocalisationMirrors.instr`. + +--- + +*Generated for mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/examples/Tests_optics/Test_Guides/Test_Guides.md b/mcstas-comps/examples/Tests_optics/Test_Guides/Test_Guides.md new file mode 100644 index 000000000..3a18d82e0 --- /dev/null +++ b/mcstas-comps/examples/Tests_optics/Test_Guides/Test_Guides.md @@ -0,0 +1,34 @@ +# The `Test_Guides` Instrument + +*McStas: Cross comparison of Guide components* + +## Identification + +- **Site:** Tests_optics +- **Author:** E. Farhi [farhi@ill.fr] +- **Origin:** ILL +- **Date:** Sept 1st, 2008 + +## Description + +```text +Cross comparison of Guide components, using McStas and +contributed components. It shows that all implementations are equivalent, +except the Guide_honeycomb which has a different geometry. +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| Guide | 1 | Choice of Guide component to test, with 1=Guide, 2=Guide_channeled, 3=Guide_gravity, 4=Guide_wavy, 5=Guide_curved 6=Elliptic_guide_gravity 7=Guide_honeycomb | 1 | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/examples/Tests_optics/Test_Guides/Test_Guides.instr) for `Test_Guides.instr`. + +--- + +*Generated for mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/examples/Tests_optics/Test_Guides_Curved/Test_Guides_Curved.md b/mcstas-comps/examples/Tests_optics/Test_Guides_Curved/Test_Guides_Curved.md new file mode 100644 index 000000000..80a25d9d5 --- /dev/null +++ b/mcstas-comps/examples/Tests_optics/Test_Guides_Curved/Test_Guides_Curved.md @@ -0,0 +1,35 @@ +# The `Test_Guides_Curved` Instrument + +*McStas: Cross comparison of curved Guide components* + +## Identification + +- **Site:** Tests_optics +- **Author:** P. Willendrup, DTU Fysik +- **Origin:** DTU Fysik +- **Date:** Nov 1st, 2013 + +## Description + +```text +Cross comparison of curved Guide components, using McStas and +contributed components. It shows that all implementations are to good approximation equivalent. +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| Guide | 1 | Choice of Guide component to test, with 1=Guide_curved 2=Elliptic_guide_gravity, 3=Pol_bender, 4=Bender. | 1 | +| curvature | m | Radius of curvature | 1000 | +| length | m | Length of the guide | 100 | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/examples/Tests_optics/Test_Guides_Curved/Test_Guides_Curved.instr) for `Test_Guides_Curved.instr`. + +--- + +*Generated for mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/examples/Tests_optics/Test_Lens/Test_Lens.md b/mcstas-comps/examples/Tests_optics/Test_Lens/Test_Lens.md new file mode 100644 index 000000000..1dbfa1ee0 --- /dev/null +++ b/mcstas-comps/examples/Tests_optics/Test_Lens/Test_Lens.md @@ -0,0 +1,35 @@ +# The `Test_Lens` Instrument + +*McStas: Demonstrate focusing effect of refractive lenses + +%Example: lambda=10 position_PSD=8.2 Detector: Last_PSD_I=2.6829e-19* + +## Identification + +- **Site:** Tests_optics +- **Author:** E. Farhi/C. Monzat +- **Origin:** ILL +- **Date:** Dec 2009. + +## Description + +```text + +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| lambda | Angs | Source wavelength | 10 | +| position_PSD | m | Distance from last lens to first monitor | 8.2 | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/examples/Tests_optics/Test_Lens/Test_Lens.instr) for `Test_Lens.instr`. + +--- + +*Generated for mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/examples/Tests_optics/Test_Monochromator_bent/Test_Monochromator_bent.md b/mcstas-comps/examples/Tests_optics/Test_Monochromator_bent/Test_Monochromator_bent.md new file mode 100644 index 000000000..3e92e617a --- /dev/null +++ b/mcstas-comps/examples/Tests_optics/Test_Monochromator_bent/Test_Monochromator_bent.md @@ -0,0 +1,33 @@ +# The `Test_Monochromator_bent` Instrument + +*McStas: Basic test instrument for the Monochromator_bent component* + +## Identification + +- **Site:** Tests_optics +- **Author:** Daniel Lomholt Christensen +- **Origin:** ILL +- **Date:** 14:13:59 on January 23, 2024 + +## Description + +```text +Basic test instrument for the Monochromator_bent component +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| mono_rotation | deg | Rotation of the monochromator, relative to the z axis | 43.5337 | +| mono_mos | arcmin | Monochromator mosaicity | 0 | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/examples/Tests_optics/Test_Monochromator_bent/Test_Monochromator_bent.instr) for `Test_Monochromator_bent.instr`. + +--- + +*Generated for mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/examples/Tests_optics/Test_Monochromator_bent_complex/Test_Monochromator_bent_complex.md b/mcstas-comps/examples/Tests_optics/Test_Monochromator_bent_complex/Test_Monochromator_bent_complex.md new file mode 100644 index 000000000..590a939a9 --- /dev/null +++ b/mcstas-comps/examples/Tests_optics/Test_Monochromator_bent_complex/Test_Monochromator_bent_complex.md @@ -0,0 +1,43 @@ +# The `Test_Monochromator_bent_complex` Instrument + +*McStas: A test instrument that highlights Monochromator Bent complex's capabilities* + +## Identification + +- **Site:** Tests_optics +- **Author:** Jakob Lass (jakob.lass@psi.ch) and modified by Daniel Lomholt Christensen (daniel.lomholt.2000@gmail.com) +- **Origin:** PSI/LSN +- **Date:** 20250702 + +## Description + +```text +This is a first draft for the WARP instrument proposal, as created by +Daniel Gabriel Mazzone (daniel.mazzone@psi.ch) and Jakob Lass +(jakob.lass@psi.ch). This instrument introduces how to use the Monochromator_bent_complex +component in an instrument draft. +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| sample_x | m | Source horz illumination | 0.005 | +| sample_y | m | Source vert illumination | 0.015 | +| L0 | m | Z-displacement of detector wrt. rotation point | 1.38000 | +| L1 | m | Y-displacement of detector wrt. rotation point | 2.47143 | +| Ld | m | Detector width | 2 | +| det_rot | m | Detector rotation | -6.00000 | +| mos | arcmin | Monochromator mosaicity | 60 | +| extra | deg | Perturbation rotation angle | 0 | +| use_single_plane | flag | Flag indicating whether the crystal should be instantiated with a single plane of reflection, instead of 92 planes | 0 | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/examples/Tests_optics/Test_Monochromator_bent_complex/Test_Monochromator_bent_complex.instr) for `Test_Monochromator_bent_complex.instr`. + +--- + +*Generated for mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/examples/Tests_optics/Test_Monochromators/Test_Monochromators.md b/mcstas-comps/examples/Tests_optics/Test_Monochromators/Test_Monochromators.md new file mode 100644 index 000000000..e96b39dc9 --- /dev/null +++ b/mcstas-comps/examples/Tests_optics/Test_Monochromators/Test_Monochromators.md @@ -0,0 +1,57 @@ +# The `Test_Monochromators` Instrument + +*McStas: Compares intensities of Monochromator components.* + +## Identification + +- **Site:** Tests_optics +- **Author:** Peter Christiansen +- **Origin:** RISOE. +- **Date:** July 2006. + +## Description + +```text +Very simple setup to compare intensities diffracted by Monochromators. +It shows that implementations are equivalent. + +PG 002 oriented examples: +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| Mono | 1 | Choice of Monochromator component to use, with 1=Monochromator_flat 2=Monochromator_pol 3=Monochromator_pol (forcing 1% events to be reflected) 4=Monochromator_curved (in flat mode) 5=Monochromator_2foc (contrib, flat mode) 6=Single_crystal 7=NCrystal | 1 | +| lmin | Angs | Minimum wavelength produced from source | 1.6 | +| lmax | Angs | Maximum wavelength produced from source | 2.4 | +| Moz | arcmin | Mosaicity | 40 | +| reflections | str | input-file for Single_crystal (Mono=6) | "C_graphite.lau" | +| NXrefs | str | input-file for NCrystal (Mono=7) | "C_sg194_pyrolytic_graphite.ncmat" | +| DM | Angs | Mono lattice spacing (should be chosen compatible with file-unput when Mono=6/7 | 3.3539 | +| PG | 1 | PG-mode for Single_crystal (range 0-1) | 0 | +| powder | 1 | Powder-mode for Single_crystal | 0 | +| order | 1 | Maximum order of scattering in Single_crystal | 0 | +| ax | Angs or 1/Angs | x-coordinate of 1st direct/recip lattice unit cell vector (depends on recip setting) | 0 | +| ay | Angs or 1/Angs | y-coordinate of 1st direct/recip lattice unit cell vector (depends on recip setting) | 0 | +| az | Angs or 1/Angs | z-coordinate of 1st direct/recip lattice unit cell vector (depends on recip setting) | 0 | +| bx | Angs or 1/Angs | x-coordinate of 2nd direct/recip lattice unit cell vector (depends on recip setting) | 0 | +| by | Angs or 1/Angs | y-coordinate of 2nd direct/recip lattice unit cell vector (depends on recip setting) | 0 | +| bz | Angs or 1/Angs | z-coordinate of 2nd direct/recip lattice unit cell vector (depends on recip setting) | 0 | +| cx | Angs or 1/Angs | x-coordinate of 3rd direct/recip lattice unit cell vector (depends on recip setting) | 0 | +| cy | Angs or 1/Angs | y-coordinate of 3rd direct/recip lattice unit cell vector (depends on recip setting) | 0 | +| cz | Angs or 1/Angs | x-coordinate of 3rd direct/recip lattice unit cell vector (depends on recip setting) | 0 | +| recip | 1 | Flag to indicate if ax/y/z, bx/y/z, cx/y/z lattice corrdinates are in direct (=0) or reciprocal space units | 0 | +| dthick | m | Thickness of mono slab in Mono=6/7 cases | 0.0015 | +| p_transmit | 1 | Probability of transmission in Single_crystal Mono=6 case | 0.001 | +| lambda | Angs | Target mochromator wavelength | 2.0 | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/examples/Tests_optics/Test_Monochromators/Test_Monochromators.instr) for `Test_Monochromators.instr`. + +--- + +*Generated for mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/examples/Tests_optics/Test_NMO/Test_NMO.md b/mcstas-comps/examples/Tests_optics/Test_NMO/Test_NMO.md new file mode 100644 index 000000000..e52ad5173 --- /dev/null +++ b/mcstas-comps/examples/Tests_optics/Test_NMO/Test_NMO.md @@ -0,0 +1,55 @@ +# The `Test_NMO` Instrument + +*McStas: Implements a test instrument for the component FlatEllipse_finite_mirror.* + +## Identification + +- **Site:** Tests_optics +- **Author:** Christoph Herb, TUM +- **Origin:** TUM +- **Date:** 2022-2023 + +## Description + +```text +Implements a test instrument for the component FlatEllipse_finite_mirror, +implementing Nested Mirror Optic (NMO) as suggested by Böni et al. +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| det_width | m | Detector width | 0.218 | +| source_width | m | Source width | 0.03 | +| source_height | m | Source height | 0.00000001 | +| lam_source | AA | Central source wavelength | 5 | +| dL | AA | Source wavelength spread | 0.5 | +| v_divergence | deg | Source vertical divergence | 2.5 | +| h_divergence | deg | Source horizontal divergence | 0.000001 | +| b0 | m | Parameter r0 of mirrors (distance to the mirror at lStart) | 0.2076 | +| mf | 1 | M-value of the inner side of the coating | 100 | +| mb | 1 | M-value of the outer side of the coating | 0 | +| mirror_width | m | Width of mirrors | 0 | +| focal_length | m | Mirror focal-length | 6 | +| mirrors | 1 | Number of NMO mirrors | 29 | +| mirror_sidelength | m | Side-length of mirrors | 0.1 | +| lStart | m | Parameter lStart of the mirrors | -0.6 | +| lEnd | m | Parameter lEnd of the mirrors | 0.6 | +| pixels | 1 | Number of detector pixels | 100 | +| flux | n/s/cm^2/st/AA | Source flux | 1 | +| det_width_focus | m | Detector width at focusing pt. | 0.03 | +| rs_at_zero_str | str | Filename to specify mirror rfront_inner_file (e.g. "rs_at_lstart.txt") | "NULL" | +| activate_mirror | 1 | Flag to activate mirror | 1 | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/examples/Tests_optics/Test_NMO/Test_NMO.instr) for `Test_NMO.instr`. +- P Böni presentation at PSI NFO workshop +- Christoph Herb et al., Nucl. Instrum. Meth. A 1040, 1671564 (1-18) 2022. + +--- + +*Generated for mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/examples/Tests_optics/Test_PSD_Detector/Test_PSD_Detector.md b/mcstas-comps/examples/Tests_optics/Test_PSD_Detector/Test_PSD_Detector.md new file mode 100644 index 000000000..58d6b0bab --- /dev/null +++ b/mcstas-comps/examples/Tests_optics/Test_PSD_Detector/Test_PSD_Detector.md @@ -0,0 +1,34 @@ +# The `Test_PSD_Detector` Instrument + +*McStas: Test for PSD_Detector component* + +## Identification + +- **Site:** Tests_optics +- **Author:** Thorwald van Vuure +- **Origin:** ILL +- **Date:** Thorwald van Vuure + +## Description + +```text +Test for PSD_Detector component showing charge drift +and parallax effect when rotating detector with e.g. 'rot=10' +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| rot | deg | rotation angle of detector | 0 | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/examples/Tests_optics/Test_PSD_Detector/Test_PSD_Detector.instr) for `Test_PSD_Detector.instr`. +- The PSD_Detector component + +--- + +*Generated for mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/examples/Tests_optics/Test_Pol_Bender_Vs_Guide_Curved/Test_Pol_Bender_Vs_Guide_Curved.md b/mcstas-comps/examples/Tests_optics/Test_Pol_Bender_Vs_Guide_Curved/Test_Pol_Bender_Vs_Guide_Curved.md new file mode 100644 index 000000000..daef98291 --- /dev/null +++ b/mcstas-comps/examples/Tests_optics/Test_Pol_Bender_Vs_Guide_Curved/Test_Pol_Bender_Vs_Guide_Curved.md @@ -0,0 +1,37 @@ +# The `Test_Pol_Bender_Vs_Guide_Curved` Instrument + +*McStas: Test that Pol_bender and Guide_curved intensities are the same.* + +## Identification + +- **Site:** Tests_optics +- **Author:** Peter Christiansen (peter.christiansen@risoe.dk) +- **Origin:** RISOE +- **Date:** July 2006 + +## Description + +```text +Using the WHEN keyword 2 Pol_bender (pos and neg radius) are +compared to a Pol_guide. +The intensity on the monitor should be roughly 0.000228 +with mean 8.65+-0.62 AA. +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| guideLength | m | Bender/Guide length | 10.0 | +| guideRadius | m | Bender/Guide radius | 100.0 | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/examples/Tests_optics/Test_Pol_Bender_Vs_Guide_Curved/Test_Pol_Bender_Vs_Guide_Curved.instr) for `Test_Pol_Bender_Vs_Guide_Curved.instr`. +- A reference/HTML link for more information + +--- + +*Generated for mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/examples/Tests_optics/Test_Rotator/Test_Rotator.md b/mcstas-comps/examples/Tests_optics/Test_Rotator/Test_Rotator.md new file mode 100644 index 000000000..8d52b3d29 --- /dev/null +++ b/mcstas-comps/examples/Tests_optics/Test_Rotator/Test_Rotator.md @@ -0,0 +1,37 @@ +# The `Test_Rotator` Instrument + +*McStas: Unittest for Rotator/Derotator* + +## Identification + +- **Site:** Tests_optics +- **Author:** Peter Willendrup +- **Origin:** ESS +- **Date:** October 2023 + +## Description + +```text +Unittest for Rotator/Derotator + +Example: mcrun test.instr +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| nu | Hz | Rotation frequency | 10 | +| phase | deg | Rotatoion phase | 5 | +| dir | int | Rotation axis direction x=1, y=2, z=3 | 2 | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/examples/Tests_optics/Test_Rotator/Test_Rotator.instr) for `Test_Rotator.instr`. +- A reference/HTML link for more information + +--- + +*Generated for mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/examples/Tests_optics/Test_Selectors/Test_Selectors.md b/mcstas-comps/examples/Tests_optics/Test_Selectors/Test_Selectors.md new file mode 100644 index 000000000..dd72995cd --- /dev/null +++ b/mcstas-comps/examples/Tests_optics/Test_Selectors/Test_Selectors.md @@ -0,0 +1,36 @@ +# The `Test_Selectors` Instrument + +*McStas: Cross comparison of velocity selector components* + +## Identification + +- **Site:** Tests_optics +- **Author:** E. Farhi [farhi@ill.fr] +- **Origin:** ILL +- **Date:** Sept 28th, 2010 + +## Description + +```text +Cross comparison of Selector components, using McStas and +contributed components. It shows that all implementations are equivalent. +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| selector | 1 | Choice of the velocity selector to test, with | 1 | +| lambda | Angs | neutron wavelength selected by the velocity selector | 4 | +| phi | deg | velocity selector twist angle | 48.3 | +| d_vs | m | velocity selector rotating drum length | 0.25 | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/examples/Tests_optics/Test_Selectors/Test_Selectors.instr) for `Test_Selectors.instr`. + +--- + +*Generated for mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/examples/Tests_optics/Test_Source_pulsed/Test_Source_pulsed.md b/mcstas-comps/examples/Tests_optics/Test_Source_pulsed/Test_Source_pulsed.md new file mode 100644 index 000000000..28bff8b4d --- /dev/null +++ b/mcstas-comps/examples/Tests_optics/Test_Source_pulsed/Test_Source_pulsed.md @@ -0,0 +1,34 @@ +# The `Test_Source_pulsed` Instrument + +*McStas: A test instrument to check the component 'Source_pulsed'* + +## Identification + +- **Site:** Tests_optics +- **Author:** Klaus LIEUTENANT (k.lieutenant@fz-juelich.de) based on 'Test_9-Sources' by Emmanuel FARHI (farhi@ill.fr) +- **Origin:** FZJ +- **Date:** Mar 17, 2021 + +## Description + +```text +A test instrument to check if the component 'Source_pulsed' provides valid spectra and intensities. +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| source | 1 | selection of the source to use in 1=Source_pulsed for HBS thermal, 2=Source_pulsed for HBS cold, 3=Source_pulsed for HBS bispectral | 1 | +| Lmin | Ang | Minimum wavelength produced at source | 0.1 | +| Lmax | Ang | Maximum wavelength produced at source | 10.1 | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/examples/Tests_optics/Test_Source_pulsed/Test_Source_pulsed.instr) for `Test_Source_pulsed.instr`. + +--- + +*Generated for mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/examples/Tests_optics/Test_Sources/Test_Sources.md b/mcstas-comps/examples/Tests_optics/Test_Sources/Test_Sources.md new file mode 100644 index 000000000..f939dc1c6 --- /dev/null +++ b/mcstas-comps/examples/Tests_optics/Test_Sources/Test_Sources.md @@ -0,0 +1,41 @@ +# The `Test_Sources` Instrument + +*McStas: A test instrument to compare sources* + +## Identification + +- **Site:** Tests_optics +- **Author:** FARHI Emmanuel (farhi@ill.fr) +- **Origin:** ILL +- **Date:** Aug 3, 2008 + +## Description + +```text +A test instrument to compare sources and check they provide the valid +sprectrum and intensity. It shows that the first 4 flat sources are equivalent, +the 2 Maxwellian sources as well. + +WARNING: Result of test no. 1 for Source_adapt.comp is not correct if MPI is used, as +that source component does not support MPI. + +Example: source=1 Detector: m1_I=9.97273e+11 +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| source | 1 | selection of the source to use in 1=Source_adapt, 2=Source_div, 3=Source_simple, 4=Source_gen (simple), 5=Source_gen, 6=Source_Maxwell_3, 7=ESS_butterfly, 8=Moderator | 0 | +| Lmin | AA | Minimum wavelength produced at source | 1 | +| Lmax | AA | Maximum wavelength produced at source | 11 | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/examples/Tests_optics/Test_Sources/Test_Sources.instr) for `Test_Sources.instr`. + +--- + +*Generated for mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/examples/Tests_optics/Test_StatisticalChopper/Test_StatisticalChopper.md b/mcstas-comps/examples/Tests_optics/Test_StatisticalChopper/Test_StatisticalChopper.md new file mode 100644 index 000000000..74ab2d619 --- /dev/null +++ b/mcstas-comps/examples/Tests_optics/Test_StatisticalChopper/Test_StatisticalChopper.md @@ -0,0 +1,34 @@ +# The `Test_StatisticalChopper` Instrument + +*McStas: An example using a statistical/correlation chopper and its de-correlation monitor* + +## Identification + +- **Site:** Tests_optics +- **Author:** Emmanuel Farhi +- **Origin:** ILL (France) +- **Date:** 1st Dec 2009. + +## Description + +```text +This instrument is a simple model of a kind of TOF instrument, with powder sample +and statistical chopper. The de-correlation is also performed in a dedicated monitor. +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| lambda | Angs | source wavelength | 1 | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/examples/Tests_optics/Test_StatisticalChopper/Test_StatisticalChopper.instr) for `Test_StatisticalChopper.instr`. +- R. Von Jan and R. Scherm. The statistical chopper for neutron time-of-flight spectroscopy. Nuclear Instruments and Methods, 80 (1970) 69-76. + +--- + +*Generated for mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/examples/Tests_optics/Test_Vertical_Bender/Test_Vertical_Bender.md b/mcstas-comps/examples/Tests_optics/Test_Vertical_Bender/Test_Vertical_Bender.md new file mode 100644 index 000000000..1054b3ce0 --- /dev/null +++ b/mcstas-comps/examples/Tests_optics/Test_Vertical_Bender/Test_Vertical_Bender.md @@ -0,0 +1,40 @@ +# The `Test_Vertical_Bender` Instrument + +*McStas: Quick and dirty test instrument write-up for Vertical_Bender.* + +## Identification + +- **Site:** Tests_optics +- **Author:** Peter Willendrup +- **Origin:** DTU +- **Date:** January 2023 + +## Description + +```text +Quick and dirty test instrument write-up for Vertical_Bender. +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| Lmin | AA | Minimum wavelength from source | 9.9 | +| Lmax | AA | Maximum wavelength from source | 10.1 | +| curvature | m | Radius of curvature of vertical bender | 10000 | +| length | m | Length of vertical bender | 10 | +| xwidth | m | Width of vertical bender | 0.1 | +| yheight | m | Height of vertical bender | 0.1 | +| nchan | 1 | Number of channels in vertical bender | 1 | +| d | m | Channel-spacer width | 0 | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/examples/Tests_optics/Test_Vertical_Bender/Test_Vertical_Bender.instr) for `Test_Vertical_Bender.instr`. +- + +--- + +*Generated for mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/examples/Tests_optics/Test_filters/Test_filters.md b/mcstas-comps/examples/Tests_optics/Test_filters/Test_filters.md new file mode 100644 index 000000000..917734c3a --- /dev/null +++ b/mcstas-comps/examples/Tests_optics/Test_filters/Test_filters.md @@ -0,0 +1,42 @@ +# The `Test_filters` Instrument + +*McStas: Test instrument for McStas components as Be-filters* + +## Identification + +- **Site:** PSI +- **Author:** Peter Willendrup +- **Origin:** ESS +- **Date:** March 2026 + +## Description + +```text +Test instrument for cross-checking McStas components for use as Be-filters. +Where applicable, the temperature is set to 80K (corresponding to the header +of the Be.trm file used in Filter_gen +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| Lmin | Angs | Lowest wavelength from source | 0.5 | +| Lmax | Angs | Highest wavelength from source | 10 | +| Filter | 1 | Choice of filter 0: Filter_gen, 1: NCrystal, 2: PowderN, 3: Isotropic_Sqw | 0 | +| nL | 1 | Number of wavelength bins in [Lmin Lmax] interval | 101 | +| zdepth | m | Depth of Be-filter | 0.15 | +| T | K | Filter temperature (NCrystal only) | 80 | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/examples/Tests_optics/Test_filters/Test_filters.instr) for `Test_filters.instr`. +- Acta Cryst. (1978). A34, 61-65 +- Rev. Sci. Instrum. 59, 380-381 (1988) +- Test instrument written by P Willendrup ESS, March 2026 + +--- + +*Generated for mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/examples/Tests_optics/Test_focus/Test_focus.md b/mcstas-comps/examples/Tests_optics/Test_focus/Test_focus.md new file mode 100644 index 000000000..561e9100c --- /dev/null +++ b/mcstas-comps/examples/Tests_optics/Test_focus/Test_focus.md @@ -0,0 +1,42 @@ +# The `Test_focus` Instrument + +*McStas: Focus testing, comparing Single_crystal and Monochromator_curved* + +## Identification + +- **Site:** Tests_optics +- **Author:** Tobias Weber (tweber@ill.fr) +- **Origin:** ILL +- **Date:** 3-Feb-2018 + +## Description + +```text +For mono_ideal=0 the Single_crystal component is used as monochromator, +for mono_ideal=1 Monochromator_curved is used with the same settings. + +The curvature of the monochromator can be set using mono_curvh and mono_curvv +for horizontal and vertical focusing, respectively. +For mono_curvh=0, mono_curvv=0 the monochromator is flat. +For mono_curvh=-1, mono_curvv=-1 optimal horizontal and vertical focusing is chosen. +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| src_lam | AA | Source mean wavelength | 4.5 | +| src_dlam | AA | Source wavelength spread | 1.0 | +| mono_ideal | | Selection of mono-model 0=Single_crystal, 1=Monochromator_curved | 0 | +| mono_curvh | m | Monochromator horizontal curvature. -1: optimal, 0: flat | -1 | +| mono_curvv | m | Monochromator vertical curvature -1: optimal, 0: flat | -1 | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/examples/Tests_optics/Test_focus/Test_focus.instr) for `Test_focus.instr`. + +--- + +*Generated for mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/examples/Tests_other/test_File/test_File.md b/mcstas-comps/examples/Tests_other/test_File/test_File.md new file mode 100644 index 000000000..9cfb24974 --- /dev/null +++ b/mcstas-comps/examples/Tests_other/test_File/test_File.md @@ -0,0 +1,33 @@ +# The `test_File` Instrument + +*McStas: Demonstrates how to use the File.comp component for storing instrument +input-files as METADATA blocks* + +## Identification + +- **Site:** Tests_other +- **Author:** Greg Tucker +- **Origin:** ESS +- **Date:** 2024 + +## Description + +```text + +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/examples/Tests_other/test_File/test_File.instr) for `test_File.instr`. +- From https://github.com/g5t/mccode-file + +--- + +*Generated for mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/examples/Tests_polarization/He3_spin_filter/He3_spin_filter.md b/mcstas-comps/examples/Tests_polarization/He3_spin_filter/He3_spin_filter.md new file mode 100644 index 000000000..335fec1d1 --- /dev/null +++ b/mcstas-comps/examples/Tests_polarization/He3_spin_filter/He3_spin_filter.md @@ -0,0 +1,41 @@ +# The `He3_spin_filter` Instrument + +*McStas: Test instrument for He3_cell* + +## Identification + +- **Site:** Tests_polarization +- **Author:** Pietro Tozzi and Erik B Knudsen +- **Origin:** DTU Physics et. +- **Date:** Nov 20 + +## Description + +```text +Simple instrument model serving as an example and unit tyest of the He3-cell model. +For the values POLHE=.8 and .5 results comply with "Batz, M et al. “(3) He Spin Filter for Neutrons.” +Journal of research of the National Institute of Standards and Technology vol. 110,3 293-8. 1 Jun. 2005, doi:10.6028/jres.110.042" +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| pol | | If "x","y", or "z" set polarization along that axis. If "0" use a zero polarization. | "y" | +| lamb_1 | AA | Lower wavelength limit to simulate | 1 | +| lamb_2 | AA | Upper wavelegnth limit to simulate | 10 | +| RANDOM | | Randomize polarization vector in the (ideal) polariser | 0 | +| polval | | Set polarization to (polval,polval,polval). Gets overridden by pol | 1 | +| POLHE | | Polarization of the 3He-gas in the cell. | 0.7 | +| box | | Flag to indicate if cell geometry is cylindrical (0) or box-shaped (1) | 0 | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/examples/Tests_polarization/He3_spin_filter/He3_spin_filter.instr) for `He3_spin_filter.instr`. +- + +--- + +*Generated for mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/examples/Tests_polarization/SE_example/SE_example.md b/mcstas-comps/examples/Tests_polarization/SE_example/SE_example.md new file mode 100644 index 000000000..1ebf9ccf0 --- /dev/null +++ b/mcstas-comps/examples/Tests_polarization/SE_example/SE_example.md @@ -0,0 +1,45 @@ +# The `SE_example` Instrument + +*McStas: Mockup of transmission Spin-Echo, written for PNCMI 2010 school in Delft.* + +## Identification + +- **Site:** Tests_polarization +- **Author:** Erik Knudsen, Peter Willendrup +- **Origin:** Risoe +- **Date:** June 2010 + +## Description + +```text +This instrument shows the use of essential McStas polarisation components, including Pol_mirror, Pol_Bfield and MeanPolLambda_monitor. + +Pol_mirror is used to polarize and analyze the incoming and scattered beams. +Pol_Bfield is used to define guidefields and flippers. +MeanPolLambda_montior is used to monitor beam polarisation. + +Example: mcrun SE_example.instr dBz=-0.0001,0.0001 -N41 -n1e5 +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| POL_ANGLE | deg | Reflection angle of polarizer/analyzer | 2 | +| SAMPLE | 1 | Flag to include (0) or exclude incoherent scatterer | 0 | +| Bguide | T | Field magnitude in guide fields | 0.1 | +| Bflip | T | Magnitude of flipper fields, | 3e-4 | +| dBz | T | Magnitude field perturbation in first guide field | 0 | +| Lam | Angstrom | Mean wavelength of neutrons emitted from source | 8 | +| dLam | Angstrom | Wavelength spread of neutrons emitted from source | 0.8 | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/examples/Tests_polarization/SE_example/SE_example.instr) for `SE_example.instr`. +- Requires mcstas 1.12b (or beta). PolLambda_monitor has been modified to work (nL->nlam) + +--- + +*Generated for mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/examples/Tests_polarization/SE_example2/SE_example2.md b/mcstas-comps/examples/Tests_polarization/SE_example2/SE_example2.md new file mode 100644 index 000000000..a05f79fae --- /dev/null +++ b/mcstas-comps/examples/Tests_polarization/SE_example2/SE_example2.md @@ -0,0 +1,45 @@ +# The `SE_example2` Instrument + +*McStas: Mockup of transmission Spin-Echo, written for PNCMI 2010 school in Delft. This version uses Pol_FieldBox for description of the fields.* + +## Identification + +- **Site:** Tests_polarization +- **Author:** Erik Knudsen, Peter Willendrup +- **Origin:** Risoe +- **Date:** June 2010 + +## Description + +```text +This instrument shows the use of essential McStas polarisation components, including Pol_mirror, Pol_FieldBox and MeanPolLambda_monitor. + +Pol_mirror is used to polarize and analyze the incoming and scattered beams. +Pol_FieldBox is used to define guidefields and flippers. +MeanPolLambda_montior is used to monitor beam polarisation. + +Example: mcrun SE_example2.instr dBz=-0.0001,0.0001 -N41 -n1e5 +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| POL_ANGLE | deg | Reflection angle of polarizer/analyzer | 2 | +| SAMPLE | 1 | Flag to include (0) or exclude incoherent scatterer | 0 | +| Bguide | T | Field magnitude in guide fields | 0.1 | +| Bflip | T | Magnitude of flipper fields, | 3e-4 | +| dBz | T | Magnitude field perturbation in first guide field | 0 | +| Lam | Angstrom | Mean wavelength of neutrons emitted from source | 8 | +| dLam | Angstrom | Wavelength spread of neutrons emitted from source | 0.8 | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/examples/Tests_polarization/SE_example2/SE_example2.instr) for `SE_example2.instr`. +- Requires mcstas 1.12b (or beta). PolLambda_monitor has been modified to work (nL->nlam) + +--- + +*Generated for mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/examples/Tests_polarization/Supermirror_thin_substrate/Supermirror_thin_substrate.md b/mcstas-comps/examples/Tests_polarization/Supermirror_thin_substrate/Supermirror_thin_substrate.md new file mode 100644 index 000000000..f91754e63 --- /dev/null +++ b/mcstas-comps/examples/Tests_polarization/Supermirror_thin_substrate/Supermirror_thin_substrate.md @@ -0,0 +1,54 @@ +# The `Supermirror_thin_substrate` Instrument + +*McStas: Test instrument for a thin-substrate supermirrror (component SupermirrorFlat)* + +## Identification + +- **Site:** Tests_polarization +- **Author:** Hal Lee +- **Origin:** ESS +- **Date:** 2024 + +## Description + +```text +Test instrument for a thin-substrate supermirrror (component SupermirrorFlat) +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| src_x | m | Width of source | 0.01 | +| src_y | m | Height of source | 0.09 | +| W_Centre | AA | Central wavelength from source spectrum | 5 | +| W_Half_Width | AA | Source spectrum wavelength half-width | 3 | +| A_FWHM | deg | Angular divergence from source | 0.05 | +| Detector_Distance | m | End-of-supermirror to detector distance | 1 | +| Length | m | Supermirrror length,projection along z-axis | 4 | +| Thickness_In_mm | mm | Supermirror thickness in mm | 0.5 | +| Mirror_Coated_Side | str | Specification of coating type | "BothCoated" | +| Mirror_Plus | str | Specification of coating on positive mirror side | "FeSiPlus" | +| Mirror_Plus_m | 1 | Specification m value, positive mirror side | 3.5 | +| Mirror_Minus | str | Specification of coating on negative mirror side | "FeSiMinus" | +| Absorber_Coated_Side | str | Specification of coating type, absorber coated side | "BothNotCoated" | +| Absorber | str | Specification of absorber material | "Empty" | +| Absorber_Thickness_In_Micron | mu-m | Absorber thickness in mu-m | 0 | +| Substrate | str | Specification of substrate material | "GlassNoAttenuation" | +| Initial_Placement_At_Origin | str | Mirror orientation specifier ("TopFrontEdgeCentre","FrontSubstrateCentre","BottomFrontEdgeCentre") | "TopFrontEdgeCentre" | +| Tilt_Axis_Location | str | Mirror axis location specifier ("TopFrontEdge","TopMirrorCentre","TopBackEdge","FrontSubstrateCentre","SubstrateCentre","BackSubstrateCentre","BottomFrontEdge","BottomMirrorCentre","BottomBackEdge") | "TopMirrorCentre" | +| Tilt_Angle_First_In_Degree | deg | Mirror tilt angle (around global y) | 0.64 | +| Translation_Second_Y | m | Mirror translation (along global y) | 0 | +| Rot_Angle_Third_In_Degree | deg | Mirror rotation angle (around global z) | 0 | +| Tracking | str | Mirror event-tracking option specifier ("NoTracking", "DetailTracking") | "DetailTracking" | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/examples/Tests_polarization/Supermirror_thin_substrate/Supermirror_thin_substrate.instr) for `Supermirror_thin_substrate.instr`. +- A reference/HTML link for more information + +--- + +*Generated for mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/examples/Tests_polarization/Test_Magnetic_Constant/Test_Magnetic_Constant.md b/mcstas-comps/examples/Tests_polarization/Test_Magnetic_Constant/Test_Magnetic_Constant.md new file mode 100644 index 000000000..a6ef493e7 --- /dev/null +++ b/mcstas-comps/examples/Tests_polarization/Test_Magnetic_Constant/Test_Magnetic_Constant.md @@ -0,0 +1,38 @@ +# The `Test_Magnetic_Constant` Instrument + +*McStas: This instrument demonstrates how to use the Pol_Bfield +component with a constant field.* + +## Identification + +- **Site:** Tests_polarization +- **Author:** Peter Christiansen and Peter Willendrup +- **Origin:** RISOE +- **Date:** August 2006 + +## Description + +```text +This instrument demonstrates how to use the component +Pol_Bfield with a constant field to make a Mezei Spin flipper. + +This instrument matches the example: Test_Pol_MSF (under tests) +made with the old component: Pol_constBfield +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| ROT_ANGLE | deg | Angle that the spin of a 5AA neutron rotates in the 0.2 m magnet | 180 | +| ONOFF | | Should we use a window description (with a _stop comp) to turn the field on and off. | 0 | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/examples/Tests_polarization/Test_Magnetic_Constant/Test_Magnetic_Constant.instr) for `Test_Magnetic_Constant.instr`. + +--- + +*Generated for mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/examples/Tests_polarization/Test_Magnetic_Majorana/Test_Magnetic_Majorana.md b/mcstas-comps/examples/Tests_polarization/Test_Magnetic_Majorana/Test_Magnetic_Majorana.md new file mode 100644 index 000000000..a933981ad --- /dev/null +++ b/mcstas-comps/examples/Tests_polarization/Test_Magnetic_Majorana/Test_Magnetic_Majorana.md @@ -0,0 +1,41 @@ +# The `Test_Magnetic_Majorana` Instrument + +*McStas: This instrument demonstrates how to use the Pol_Bfield +component with a Majorana field.* + +## Identification + +- **Site:** Tests_polarization +- **Author:** Peter Christiansen and Peter Willendrup +- **Origin:** RISOE +- **Date:** August 2006 + +## Description + +```text +This instrument demonstrates how to use the component +Pol_Bfield with a so called Majorana field. + +See: +Seeger et al. NIM A: Volume 457, Issues 1-2 , 11 January 2001, Pages 338-346 + +Note that there are some sytematic fluctuation with the current solution. +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| Blarge | T | Large linear decreasing field along x axis (+Blarge to -Blarge). | 1.0 | +| Bsmall | T | Constant small component of field along y axis. | 0.003 | +| magnetLength | m | Magnet length. | 1.0 | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/examples/Tests_polarization/Test_Magnetic_Majorana/Test_Magnetic_Majorana.instr) for `Test_Magnetic_Majorana.instr`. + +--- + +*Generated for mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/examples/Tests_polarization/Test_Magnetic_Rotation/Test_Magnetic_Rotation.md b/mcstas-comps/examples/Tests_polarization/Test_Magnetic_Rotation/Test_Magnetic_Rotation.md new file mode 100644 index 000000000..cf7980a02 --- /dev/null +++ b/mcstas-comps/examples/Tests_polarization/Test_Magnetic_Rotation/Test_Magnetic_Rotation.md @@ -0,0 +1,37 @@ +# The `Test_Magnetic_Rotation` Instrument + +*McStas: This instrument demonstrates how to use the Pol_constBfield +component.* + +## Identification + +- **Site:** Tests_polarization +- **Author:** Peter Christiansen and Peter Willendrup +- **Origin:** RISOE +- **Date:** August 2006 + +## Description + +```text +This instrument demonstrates how to use the component +Pol_constBfield to make a Mezei Spin flipper. + +See: +Seeger et al. NIM A: Volume 457, Issues 1-2 , 11 January 2001, Pages 338-346 +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| RESTORENEUT | | RESTORE_NEUTRON flag for last monitor within field region. | 1 | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/examples/Tests_polarization/Test_Magnetic_Rotation/Test_Magnetic_Rotation.instr) for `Test_Magnetic_Rotation.instr`. + +--- + +*Generated for mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/examples/Tests_polarization/Test_Pol_Bender/Test_Pol_Bender.md b/mcstas-comps/examples/Tests_polarization/Test_Pol_Bender/Test_Pol_Bender.md new file mode 100644 index 000000000..4bb7cf5a3 --- /dev/null +++ b/mcstas-comps/examples/Tests_polarization/Test_Pol_Bender/Test_Pol_Bender.md @@ -0,0 +1,38 @@ +# The `Test_Pol_Bender` Instrument + +*McStas: Test Pol_bender.* + +## Identification + +- **Site:** Tests_polarization +- **Author:** Peter Christiansen +- **Origin:** RISOE +- **Date:** July 2006 + +## Description + +```text +Test that Pol_bender polarizes an unpolarized beam, and allows one +to test the different options. +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| GUIDELENGTH | m | Length of bender | 1.0 | +| GUIDERADIUS | m | Radius of curvature of bender | 10.0 | +| ENDOPTION | | Setting for parallel start/end planes of bender | 0 | +| NSLITS | | Number of channels in bender | 5 | +| WSPACER | m | Spacer dimension | 0.005 | +| DRAWOPTION | | Bender drawing option 1: fine(all slits/90 points per arc), 2: normal (max 20/40), 3: rough (max 5/10) | 1 | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/examples/Tests_polarization/Test_Pol_Bender/Test_Pol_Bender.instr) for `Test_Pol_Bender.instr`. + +--- + +*Generated for mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/examples/Tests_polarization/Test_Pol_FieldBox/Test_Pol_FieldBox.md b/mcstas-comps/examples/Tests_polarization/Test_Pol_FieldBox/Test_Pol_FieldBox.md new file mode 100644 index 000000000..55ae03e16 --- /dev/null +++ b/mcstas-comps/examples/Tests_polarization/Test_Pol_FieldBox/Test_Pol_FieldBox.md @@ -0,0 +1,35 @@ +# The `Test_Pol_FieldBox` Instrument + +*McStas: Unit test instrument for Pol_FieldBox* + +## Identification + +- **Site:** Tests_polarization +- **Author:** Erik B Knudsen +- **Origin:** DTU Physics +- **Date:** Jan 20 + +## Description + +```text +An instrument with a single field box with a 1 mT magnetic field along the y-axis. +A neutron beam polarized aling the x-axis is emitted with central wavelength such +that the polarization is rotated pihalfturns radians in the field. +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| pihalfturns | | beam polarization (for the cetral wavelength) is rotated pihalfturns by the field | 1 | +| BOX | | flag to select between 0:Pol_FieldBox and 1:Pol_constBfield | 0 | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/examples/Tests_polarization/Test_Pol_FieldBox/Test_Pol_FieldBox.instr) for `Test_Pol_FieldBox.instr`. + +--- + +*Generated for mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/examples/Tests_polarization/Test_Pol_Guide_Vmirror/Test_Pol_Guide_Vmirror.md b/mcstas-comps/examples/Tests_polarization/Test_Pol_Guide_Vmirror/Test_Pol_Guide_Vmirror.md new file mode 100644 index 000000000..5760ad440 --- /dev/null +++ b/mcstas-comps/examples/Tests_polarization/Test_Pol_Guide_Vmirror/Test_Pol_Guide_Vmirror.md @@ -0,0 +1,33 @@ +# The `Test_Pol_Guide_Vmirror` Instrument + +*McStas: Test Pol_guide_Vmirror.* + +## Identification + +- **Site:** Tests_polarization +- **Author:** Peter Christiansen +- **Origin:** RISOE +- **Date:** July 2006 + +## Description + +```text +A simple description of the V4 instrument in Berlin as explained in: +NIM A 451 (2000) 474-479 +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| polariserIn | | Flag to select between 1:POLguidevmirror and 2:POLguidemirror | 1 | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/examples/Tests_polarization/Test_Pol_Guide_Vmirror/Test_Pol_Guide_Vmirror.instr) for `Test_Pol_Guide_Vmirror.instr`. + +--- + +*Generated for mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/examples/Tests_polarization/Test_Pol_Guide_mirror/Test_Pol_Guide_mirror.md b/mcstas-comps/examples/Tests_polarization/Test_Pol_Guide_mirror/Test_Pol_Guide_mirror.md new file mode 100644 index 000000000..668f8f4ec --- /dev/null +++ b/mcstas-comps/examples/Tests_polarization/Test_Pol_Guide_mirror/Test_Pol_Guide_mirror.md @@ -0,0 +1,34 @@ +# The `Test_Pol_Guide_mirror` Instrument + +*McStas: Test Pol_guide_mirror.* + +## Identification + +- **Site:** Tests_polarization +- **Author:** Peter Christiansen +- **Origin:** RISOE +- **Date:** July 2006 + +## Description + +```text +Unit test for Pol_guide_mirror. In this unit test we use the Pol_guide_mirror +in a non-polarizing setting, with absorbing walls. This is how it would be set to be used +as a frame-overlap mirror. +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| mirrorIn | | If zero the in-guide mirror is disabled | 1 | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/examples/Tests_polarization/Test_Pol_Guide_mirror/Test_Pol_Guide_mirror.instr) for `Test_Pol_Guide_mirror.instr`. + +--- + +*Generated for mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/examples/Tests_polarization/Test_Pol_MSF/Test_Pol_MSF.md b/mcstas-comps/examples/Tests_polarization/Test_Pol_MSF/Test_Pol_MSF.md new file mode 100644 index 000000000..f66fb5a52 --- /dev/null +++ b/mcstas-comps/examples/Tests_polarization/Test_Pol_MSF/Test_Pol_MSF.md @@ -0,0 +1,33 @@ +# The `Test_Pol_MSF` Instrument + +*McStas: This instrument demonstrates how to use the Pol_constBfield +component.* + +## Identification + +- **Site:** Tests_polarization +- **Author:** Peter Christiansen +- **Origin:** RISOE +- **Date:** July 2006 + +## Description + +```text +This instrument demonstrates how to use the component +Pol_constBfield to make a Mezei Spin flipper. +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/examples/Tests_polarization/Test_Pol_MSF/Test_Pol_MSF.instr) for `Test_Pol_MSF.instr`. + +--- + +*Generated for mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/examples/Tests_polarization/Test_Pol_Mirror/Test_Pol_Mirror.md b/mcstas-comps/examples/Tests_polarization/Test_Pol_Mirror/Test_Pol_Mirror.md new file mode 100644 index 000000000..1eacaa8e0 --- /dev/null +++ b/mcstas-comps/examples/Tests_polarization/Test_Pol_Mirror/Test_Pol_Mirror.md @@ -0,0 +1,38 @@ +# The `Test_Pol_Mirror` Instrument + +*McStas: Test that Pol_mirror reflects, transmits, and polarizes.* + +## Identification + +- **Site:** Tests_polarization +- **Author:** Peter Christiansen +- **Origin:** RISOE +- **Date:** July 2006 + +## Description + +```text +An unpolarized beam is shot into a polarizing mirror and the +intensity and polarization of the transmitted and reflected beam +is measured. + +The intensity on the first monitor should be the same as the sum +of the two polarization monitors. +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| mirrorOption | 1 | Fraction of neutrons to reflect | 0.5 | +| polarize | | | 0 | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/examples/Tests_polarization/Test_Pol_Mirror/Test_Pol_Mirror.instr) for `Test_Pol_Mirror.instr`. + +--- + +*Generated for mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/examples/Tests_polarization/Test_Pol_SF_ideal/Test_Pol_SF_ideal.md b/mcstas-comps/examples/Tests_polarization/Test_Pol_SF_ideal/Test_Pol_SF_ideal.md new file mode 100644 index 000000000..074b6c544 --- /dev/null +++ b/mcstas-comps/examples/Tests_polarization/Test_Pol_SF_ideal/Test_Pol_SF_ideal.md @@ -0,0 +1,36 @@ +# The `Test_Pol_SF_ideal` Instrument + +*McStas: Unit test of the Pol_SF_ideal component* + +## Identification + +- **Site:** Tests_polarization +- **Author:** Erik B Knudsen (erkn@fysik.dtu.dk) +- **Origin:** DTU Physics +- **Date:** Current Date + +## Description + +```text +Simply test the ideal spin flippers function + +Example: mcrun test.instr +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| SX | | x-component of initial polarization | 0 | +| SY | | y-component of initial polarization | 1 | +| SZ | | z-component of initial polarization | 0 | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/examples/Tests_polarization/Test_Pol_SF_ideal/Test_Pol_SF_ideal.instr) for `Test_Pol_SF_ideal.instr`. + +--- + +*Generated for mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/examples/Tests_polarization/Test_Pol_Set/Test_Pol_Set.md b/mcstas-comps/examples/Tests_polarization/Test_Pol_Set/Test_Pol_Set.md new file mode 100644 index 000000000..61aa98d82 --- /dev/null +++ b/mcstas-comps/examples/Tests_polarization/Test_Pol_Set/Test_Pol_Set.md @@ -0,0 +1,34 @@ +# The `Test_Pol_Set` Instrument + +*McStas: Tests Set_pol, Incoherent, and pol monitors.* + +## Identification + +- **Site:** Tests_polarization +- **Author:** Peter Christiansen +- **Origin:** RISOE +- **Date:** July 2006 + +## Description + +```text +First check is that the randmly generated spin gives uniform (flat) +distributions on all 3 pol monitor. +Second check is that when the polarisation is hardcoded to (0, 1, 0) +after Incoherent it is (0, -1/3, 0). +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/examples/Tests_polarization/Test_Pol_Set/Test_Pol_Set.instr) for `Test_Pol_Set.instr`. + +--- + +*Generated for mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/examples/Tests_polarization/Test_Pol_Tabled/Test_Pol_Tabled.md b/mcstas-comps/examples/Tests_polarization/Test_Pol_Tabled/Test_Pol_Tabled.md new file mode 100644 index 000000000..92605e662 --- /dev/null +++ b/mcstas-comps/examples/Tests_polarization/Test_Pol_Tabled/Test_Pol_Tabled.md @@ -0,0 +1,37 @@ +# The `Test_Pol_Tabled` Instrument + +*McStas: Test the tabled magnetic field option* + +## Identification + +- **Site:** Tests_polarization +- **Author:** Your name (email) +- **Origin:** Your institution +- **Date:** Current Date + +## Description + +```text +A test instrument to check that supplying a magnetic field as a vector field point cloud +is working. The field referred to by the default input parameter MF is 10 \mu T along the z-axis +at entry and flips to l0 \mu T along the negative z-axis halfway through +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| MF | string | Field definition file | "flipfield.dat" | +| zdepth | m | Z-dimension of field | 1 | +| interpol_method | string | Choice of interpolation method "kdtree" (default on CPU) / "regular" (default on GPU) | "default" | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/examples/Tests_polarization/Test_Pol_Tabled/Test_Pol_Tabled.instr) for `Test_Pol_Tabled.instr`. +- A reference/HTML link for more information + +--- + +*Generated for mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/examples/Tests_polarization/Test_Pol_TripleAxis/Test_Pol_TripleAxis.md b/mcstas-comps/examples/Tests_polarization/Test_Pol_TripleAxis/Test_Pol_TripleAxis.md new file mode 100644 index 000000000..268309e25 --- /dev/null +++ b/mcstas-comps/examples/Tests_polarization/Test_Pol_TripleAxis/Test_Pol_TripleAxis.md @@ -0,0 +1,43 @@ +# The `Test_Pol_TripleAxis` Instrument + +*McStas: Based on Emmanuel Farhi's thermal H8 triple-axis spectrometer from +Brookhaven reactor* + +## Identification + +- **Site:** Tests_polarization +- **Author:** Peter Christiansen +- **Origin:** RISOE +- **Date:** July 2006. + +## Description + +```text +This instrument is a simple model of the thermal H8 triple-axis +spectrometer from former Brookhaven reactor. It has an (polarizing) +monochromator and a (polarizaing) analyzer. The sample is a vanadium +cylinder. +Three cases can be done: +-1) Spin flip (flipper is inserted): Up->Down +0) No polarization: Up/Down->Up/Down +1) No spin flip: Up->Up +The Vanadium sample should give I(0)=2*(I(-1)+I(1)) and I(-1)=2*I(1). +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| OPTION | 1 | See above | 0 | +| LAMBDA | Angs | Source wavelength | 2.0 | +| MOZ | Arc minutes | Mosaicity | 40 | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/examples/Tests_polarization/Test_Pol_TripleAxis/Test_Pol_TripleAxis.instr) for `Test_Pol_TripleAxis.instr`. + +--- + +*Generated for mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/examples/Tests_polarization/Test_V_cavity_SNAG_double_side/Test_V_cavity_SNAG_double_side.md b/mcstas-comps/examples/Tests_polarization/Test_V_cavity_SNAG_double_side/Test_V_cavity_SNAG_double_side.md new file mode 100644 index 000000000..cfbe9383c --- /dev/null +++ b/mcstas-comps/examples/Tests_polarization/Test_V_cavity_SNAG_double_side/Test_V_cavity_SNAG_double_side.md @@ -0,0 +1,46 @@ +# The `Test_V_cavity_SNAG_double_side` Instrument + +*McStas: Test instrument for Transmission_V_polarisator, double layer reflectivity.* + +## Identification + +- **Site:** Tests_polarization +- **Author:** Michael Schneider (SNAG) +- **Origin:** SNAG +- **Date:** 2024 + +## Description + +```text +Test instrument for Transmission_V_polarisator, double layer reflectivity. +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| Lam | AA | Central wavelength produced at source | 7.0 | +| dLam | AA | Wavelength spread produced at source | 6.0 | +| l_guide0 | | | 2 | +| m_hori | 1 | m-value of feeding guide, horizontal mirrors | 1.0 | +| m_vert | 1 | m-value of feeding guide, vertical mirrors | 3.0 | +| m_pol_h | 1 | m-value of guide body, horizontal (m of FeSi is defined by data files) | 1.0 | +| m_pol_v | 1 | m-value of guide body, vertical (m of FeSi is defined by data files) | 3.0 | +| W | m | Width of guide and cavity | 0.024 | +| H | m | Height of guide and cavity | 0.058 | +| Length_C | m | Length of guide body | 1.300 | +| tap_ang | deg | Taper angle with respect to optical axis of V-cavity | 0.55 | +| distK | m | Distance between V-cavities (applicable, if 2 cavities are installed) | 1.23864 | +| d_Fe | m | Thickness of Fe in one supermirror coating | 6.95e-6 | +| d | m | Distance from source to guide entrance | 2.0 | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/examples/Tests_polarization/Test_V_cavity_SNAG_double_side/Test_V_cavity_SNAG_double_side.instr) for `Test_V_cavity_SNAG_double_side.instr`. +- P. Böni, W. Münzer and A. Ostermann: Physica B: Condensed Matter Volume 404, Issue 17, 1 September 2009, Pages 2620-2623 + +--- + +*Generated for mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/examples/Tests_polarization/Test_V_cavity_SNAG_single_side/Test_V_cavity_SNAG_single_side.md b/mcstas-comps/examples/Tests_polarization/Test_V_cavity_SNAG_single_side/Test_V_cavity_SNAG_single_side.md new file mode 100644 index 000000000..4d45547a7 --- /dev/null +++ b/mcstas-comps/examples/Tests_polarization/Test_V_cavity_SNAG_single_side/Test_V_cavity_SNAG_single_side.md @@ -0,0 +1,46 @@ +# The `Test_V_cavity_SNAG_single_side` Instrument + +*McStas: Test instrument for Transmission_V_polarisator, single layer reflectivity.* + +## Identification + +- **Site:** Tests_polarization +- **Author:** Michael Schneider (SNAG) +- **Origin:** SNAG +- **Date:** 2024 + +## Description + +```text +Test instrument for Transmission_V_polarisator, single layer reflectivity. +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| Lam | AA | Central wavelength produced at source | 7.0 | +| dLam | AA | Wavelength spread produced at source | 6.0 | +| l_guide0 | | | 2 | +| m_hori | 1 | m-value of feeding guide, horizontal mirrors | 1.0 | +| m_vert | 1 | m-value of feeding guide, vertical mirrors | 3.0 | +| m_pol_h | 1 | m-value of guide body, horizontal (m of FeSi is defined by data files) | 1.0 | +| m_pol_v | 1 | m-value of guide body, vertical (m of FeSi is defined by data files) | 3.0 | +| W | m | Width of guide and cavity | 0.024 | +| H | m | Height of guide and cavity | 0.058 | +| Length_C | m | Length of guide body | 1.300 | +| tap_ang | deg | Taper angle with respect to optical axis of V-cavity | 0.55 | +| distK | m | Distance between V-cavities (applicable, if 2 cavities are installed) | 1.23864 | +| d_Fe | m | Thickness of Fe in one supermirror coating | 6.95e-6 | +| d | m | Distance from source to guide entrance | 2.0 | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/examples/Tests_polarization/Test_V_cavity_SNAG_single_side/Test_V_cavity_SNAG_single_side.instr) for `Test_V_cavity_SNAG_single_side.instr`. +- P. Böni, W. Münzer and A. Ostermann: Physica B: Condensed Matter Volume 404, Issue 17, 1 September 2009, Pages 2620-2623 + +--- + +*Generated for mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/examples/Tests_polarization/Test_pol_ideal/Test_pol_ideal.md b/mcstas-comps/examples/Tests_polarization/Test_pol_ideal/Test_pol_ideal.md new file mode 100644 index 000000000..b623625b2 --- /dev/null +++ b/mcstas-comps/examples/Tests_polarization/Test_pol_ideal/Test_pol_ideal.md @@ -0,0 +1,32 @@ +# The `Test_pol_ideal` Instrument + +*McStas: Unit test instrument for Set_pol, PolAnalyser_ideal, and Pol_monitor* + +## Identification + +- **Site:** Tests_polarization +- **Author:** Erik B Knudsen (erkn@fysik.dtu.dk) +- **Origin:** DTU Physics +- **Date:** Nov 20 + +## Description + +```text +Simply runs a short test to check that Set_pol, Pol_analyser_ideal, and Pol_monitor really do work +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| xory | | 1:check polarisatoin along x, 0:check polarisation along y | 1 | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/examples/Tests_polarization/Test_pol_ideal/Test_pol_ideal.instr) for `Test_pol_ideal.instr`. + +--- + +*Generated for mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/examples/Tests_samples/GISANS_tests/GISANS_tests.md b/mcstas-comps/examples/Tests_samples/GISANS_tests/GISANS_tests.md new file mode 100644 index 000000000..e09797f0c --- /dev/null +++ b/mcstas-comps/examples/Tests_samples/GISANS_tests/GISANS_tests.md @@ -0,0 +1,36 @@ +# The `GISANS_tests` Instrument + +*McStas: Instrument to test features of newly developed sample model for GISANS from H. Frielinghaus.* + +## Identification + +- **Site:** Tests_samples +- **Author:** Peter Willendrup (DTU/ESS) and Henrich Frielinghaus (MLZ) +- **Origin:** MLZ +- **Date:** 2023-2024 + +## Description + +```text +Instrument to test features of newly developed sample model for GISANS from H. Frielinghaus, +developed to model the GISANS features described in M. S. Hellsing et. al [1] + +Test case 1, grazing incidence from front +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| mode | | | 1 | +| BEAMSTOP | | | 0 | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/examples/Tests_samples/GISANS_tests/GISANS_tests.instr) for `GISANS_tests.instr`. + +--- + +*Generated for mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/examples/Tests_samples/Samples_Incoherent/Samples_Incoherent.md b/mcstas-comps/examples/Tests_samples/Samples_Incoherent/Samples_Incoherent.md new file mode 100644 index 000000000..799f5a5f3 --- /dev/null +++ b/mcstas-comps/examples/Tests_samples/Samples_Incoherent/Samples_Incoherent.md @@ -0,0 +1,76 @@ +# The `Samples_Incoherent` Instrument + +*McStas: This instrument allows to compare incoherent scattering from different McStas +sample components.* + +## Identification + +- **Site:** Tests_samples +- **Author:** Peter Willendrup, Erik Knudsen, Aziz Aziz Daoud-aladine +- **Origin:** RISOE +- **Date:** August 14th, 2007 + +## Description + +```text +This instrument allows to compare incoherent scattering from different McStas +sample components: + +* PowderN +Single_crystal +Isotropic_sqw +Incoherent + +Examples: + +Compare incoherent scattering from all sample comps, beamstop in place. + +mcrun Samples_Incoherent -d Some_directory -N5 SAMPLE=1,5 STOP=1 + +Compare incoherent scattering and direct beam attenuation for PowderN, Single_crystal +and Isotroic_sqw: + +mcrun Samples_Incoherent -d Some_other_directory -N4 SAMPLE=2,5 STOP=0 + +Have a closer look of direct beam attentuation for PowderN, Single_crystal +and Isotroic_sqw (has the side-effect that back-scattered neutrons are absorbed): + +mcrun Samples_Incoherent -d Some_third_directory -N4 SAMPLE=2,5 STOP=0 DB=1 + +The sample type selection is: +box: 1=Vanadium +2=PowderN +3=Single_Crystal +4=Isotropic_Sqw +5=Incoherent +10=Isotropic_Sqw with V.lau +cube.off: 6=PowderN, +7=Single_Crystal +8=Isotropic_Sqw +9=Incoherent +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| L_min | AA | Minimum wavelength of neutrons | 0.5 | +| L_max | AA | Maximum wavelength of neutrons | 7 | +| SAMPLE | | Sample choice, 1:Incoherent, 2:PowderN, 3:Single_crystal, 4:Isotropic_Sqw, 5:Incoherent with multiple scattering, 6:PowderN with OFF geometry, 7:Single_crystal with OFF geometry, 8:Isotropic_Sqw with OFF geometry, 9:Incoherent with OFF geometry, 10:Isotropic_Sqw with .laz input | 1 | +| STOP | 1 | Beamstop inserted? (Needed in case of comparison between V and SX/sqw). | 0 | +| Order | 1 | Maximum order of multiple scattering in SX/sqw | 0 | +| INC | barns | Incoherent scattering cross section | 5.08 | +| ABS | barns | Absorption cross section | 5.08 | +| DB | 1 | Direct Beam monitor inserted? (Side-effect: absorbs 'backscattered' neutrons). | 0 | +| ISISFACE | string | ISIS moderator face to look at | "hydrogen" | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/examples/Tests_samples/Samples_Incoherent/Samples_Incoherent.instr) for `Samples_Incoherent.instr`. +- Validation of Single_crystal is now in progress! + +--- + +*Generated for mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/examples/Tests_samples/Samples_Incoherent_off/Samples_Incoherent_off.md b/mcstas-comps/examples/Tests_samples/Samples_Incoherent_off/Samples_Incoherent_off.md new file mode 100644 index 000000000..992df1994 --- /dev/null +++ b/mcstas-comps/examples/Tests_samples/Samples_Incoherent_off/Samples_Incoherent_off.md @@ -0,0 +1,35 @@ +# The `Samples_Incoherent_off` Instrument + +*McStas: Instrument to demonstrate the usage of OFF shape samples with totally absorbing material.* + +## Identification + +- **Site:** Tests_samples +- **Author:** Reynald ARNERIN +- **Origin:** ILL +- **Date:** June 12th, 2008 + +## Description + +```text +Instrument to demonstrate the usage of OFF shape samples with totally absorbing material. +The Incoherent component is here used with a description file. The shape may be scaled +forcing the size of the bounding box. +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| geometry | string | Name of the OFF file describing the sample shape | "socket.off" | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/examples/Tests_samples/Samples_Incoherent_off/Samples_Incoherent_off.instr) for `Samples_Incoherent_off.instr`. +- http://shape.cs.princeton.edu/benchmark/documentation/off_format.html + +--- + +*Generated for mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/examples/Tests_samples/Samples_Isotropic_Sqw/Samples_Isotropic_Sqw.md b/mcstas-comps/examples/Tests_samples/Samples_Isotropic_Sqw/Samples_Isotropic_Sqw.md new file mode 100644 index 000000000..3975c4514 --- /dev/null +++ b/mcstas-comps/examples/Tests_samples/Samples_Isotropic_Sqw/Samples_Isotropic_Sqw.md @@ -0,0 +1,37 @@ +# The `Samples_Isotropic_Sqw` Instrument + +*McStas: A test instrument for the S(q,w) sample* + +## Identification + +- **Site:** Tests_samples +- **Author:** E. Farhi +- **Origin:** ILL +- **Date:** Jan 2004 + +## Description + +```text +This instrument is a test instrument for the S(q,w) sample. +It produces a tof-angle and angle-energy detectors and also exports the +S(q,w) and S(q) data. +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| lambda | Angs | source energy | 3.4 | +| sample_coh | str | name of coherent Sqw data file | "Rb_liq_coh.sqw" | +| sample_inc | str | name of incoherent Sqw data file | "Rb_liq_inc.sqw" | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/examples/Tests_samples/Samples_Isotropic_Sqw/Samples_Isotropic_Sqw.instr) for `Samples_Isotropic_Sqw.instr`. +- The Isotropic_Sqw sample + +--- + +*Generated for mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/examples/Tests_samples/Samples_Phonon/Samples_Phonon.md b/mcstas-comps/examples/Tests_samples/Samples_Phonon/Samples_Phonon.md new file mode 100644 index 000000000..9916d9e99 --- /dev/null +++ b/mcstas-comps/examples/Tests_samples/Samples_Phonon/Samples_Phonon.md @@ -0,0 +1,41 @@ +# The `Samples_Phonon` Instrument + +*McStas: Simple test instrument for the Phonon_simple component* + +## Identification + +- **Site:** Tests_samples +- **Author:** Kim Lefmann +- **Origin:** RISOE +- **Date:** Feb 2004 + +## Description + +```text +Simple test instrument for the Phonon_simple component. +Refer to the component documentation for further instructions. +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| E | meV | Mean energy at source | 10 | +| DE | meV | Energy spread at source | 0 | +| HDIV | deg | Horizontal divergence produced from source | 1e-4 | +| VDIV | deg | Vertical divergence produced from source | 1e-4 | +| TT | deg | Two-theta detetector-angle | 72.69 | +| OM | deg | Sample rotation angle | -43.3 | +| C | meV/AA^(-1) | Sample velocity of sound | 8 | +| focus_r | | | 0 | +| focus_a | | | 0 | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/examples/Tests_samples/Samples_Phonon/Samples_Phonon.instr) for `Samples_Phonon.instr`. + +--- + +*Generated for mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/examples/Tests_samples/Samples_vanadium/Samples_vanadium.md b/mcstas-comps/examples/Tests_samples/Samples_vanadium/Samples_vanadium.md new file mode 100644 index 000000000..79a33d87a --- /dev/null +++ b/mcstas-comps/examples/Tests_samples/Samples_vanadium/Samples_vanadium.md @@ -0,0 +1,35 @@ +# The `Samples_vanadium` Instrument + +*McStas: A test instrument using a vanadium cylinder* + +## Identification + +- **Site:** Tests_samples +- **Author:** Kristian Nielsen and Kim Lefmann +- **Origin:** Risoe +- **Date:** 1998 + +## Description + +```text +This instrument shows the vanadium sample scattering anisotropy. +This is an effect of attenuation of the beam in the cylindrical sample. +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| ROT | deg | Rotation angle of the PSD monitor | 0 | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/examples/Tests_samples/Samples_vanadium/Samples_vanadium.instr) for `Samples_vanadium.instr`. +- The McStas User manual +- The McStas tutorial + +--- + +*Generated for mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/examples/Tests_samples/Test_Incoherent/Test_Incoherent.md b/mcstas-comps/examples/Tests_samples/Test_Incoherent/Test_Incoherent.md new file mode 100644 index 000000000..ad6754289 --- /dev/null +++ b/mcstas-comps/examples/Tests_samples/Test_Incoherent/Test_Incoherent.md @@ -0,0 +1,33 @@ +# The `Test_Incoherent` Instrument + +*McStas: Test output of Incoherent on two spherical monitor.* + +## Identification + +- **Site:** Tests_samples +- **Author:** P. Willendrup +- **Origin:** DTU +- **Date:** October 1st 2020 + +## Description + +```text +A test instrument for Incoherent output on spherical monitor. +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| lambda | Angs | Wavelength emitted from source, 1% wl-interval around. | 1 | +| L1 | m | Source-sample distance | 10 | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/examples/Tests_samples/Test_Incoherent/Test_Incoherent.instr) for `Test_Incoherent.instr`. + +--- + +*Generated for mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/examples/Tests_samples/Test_Incoherent_MS/Test_Incoherent_MS.md b/mcstas-comps/examples/Tests_samples/Test_Incoherent_MS/Test_Incoherent_MS.md new file mode 100644 index 000000000..29f510273 --- /dev/null +++ b/mcstas-comps/examples/Tests_samples/Test_Incoherent_MS/Test_Incoherent_MS.md @@ -0,0 +1,66 @@ +# The `Test_Incoherent_MS` Instrument + +*McStas: Test instrument for validation of magnitude of multiple scattering in Incoherent.comp.* + +## Identification + +- **Site:** Tests_samples +- **Author:** Daniel Lomholt Christensen and Peter Willendrup +- **Origin:** NBI +- **Date:** 20250603 + +## Description + +```text +Test instrument for validation of magnitude of multiple scattering in Incoherent.comp. +The instrument considers "thin" and "thick" sample conditions. + + +For the thin sample conditions, the following analytical calulations find the +Neutron intensity at the detector to be 27.12: +
    +$$ +\frac{dN_{\rm real}}{dt}= \Psi A \rho_{\rm c}\sigma_{\rm inc} +\frac{\Delta \Omega}{4 \pi} a_{\rm lin} l_{unscattered}. +$$ +Where $\Psi=1e7$, $A=1$, $\rho=0.0723$, $\sigma_{\rm inc}=\sigma_{\rm abs} = 5.08$, $\frac{\Delta \Omega}{4 \pi} = 10/99.95^2$ +and $a_{\rm lin}= \exp(-(\sigma_{\rm inc} + \sigma_{\rm abs}\lambda/1.7982)\rho l_{avg})$. +$l_{unscattered}=0.1cm$ and is the path through the sample eg. unscattered path length. +
    + + +For the thick sample condition, the general formula is the same, +But the attenuation is calculated using the effective length, instead of the actual +length: +
    +\begin{equation} \label{eq:inc_layer_l} +l_{\rm app} = \int _{0}^{l_{\rm max}} a_{\rm lin}(z) dz += \int _{0}^{l_{\rm max}} e^{-2\mu z}dz += \frac{1-e^{-2\mu l_{\rm max}}}{2\mu }, +\end{equation} +
    + +By scanning across thickness values, one then finds a curve, that should fit the +analytical calculations. +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| flux_mult | 1/(s*cm**2*st*meV) | Source flux x 1e14 multiplier for source | 0.5512 | +| thick | m | Sample thickness | 0.001 | +| total_scattering | 1 | Flag to indicate if sample focuses (=0) or not (=1) | 0 | +| sample | str | Sample state "thick", "thin", "none" supported | "thin" | +| order | 1 | Maximal order of multiple scattering | 1 | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/examples/Tests_samples/Test_Incoherent_MS/Test_Incoherent_MS.instr) for `Test_Incoherent_MS.instr`. +- A reference/HTML link for more information + +--- + +*Generated for mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/examples/Tests_samples/Test_Magnon_bcc_2D/Test_Magnon_bcc_2D.md b/mcstas-comps/examples/Tests_samples/Test_Magnon_bcc_2D/Test_Magnon_bcc_2D.md new file mode 100644 index 000000000..eb0008bfe --- /dev/null +++ b/mcstas-comps/examples/Tests_samples/Test_Magnon_bcc_2D/Test_Magnon_bcc_2D.md @@ -0,0 +1,41 @@ +# The `Test_Magnon_bcc_2D` Instrument + +*McStas: Test instrument for the Sqq_w_monitor and Magnon_bcc components, derived from template_Laue* + +## Identification + +- **Site:** Tests_samples +- **Author:** P. Willendrup +- **Origin:** DTU +- **Date:** June, 2018 + +## Description + +```text + +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| lambda | AA | Central wavelength of wavelength distribution | 10 | +| dlambda | AA | Width of wavelength distribution | 9.9 | +| Rotation | deg | Sample orientation | 0 | +| inelastic | in 0:1 | Fraction of statistics to scatter inelastically | 1 | +| aa | AA | BCC lattice constant | 6.283185307179586 | +| sample_J | meV | Magnitude of sample nearest-neighbour interaction | 2 | +| TT | K | Sample temperature | 300 | +| FerroMagnet | boolean | Flag to choose if sample is FM or AFM | 0 | +| Verbose | | | 0 | +| imultiplier | 1 | Parameter to rescale intensity-output from Magnon comp | 1 | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/examples/Tests_samples/Test_Magnon_bcc_2D/Test_Magnon_bcc_2D.instr) for `Test_Magnon_bcc_2D.instr`. + +--- + +*Generated for mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/examples/Tests_samples/Test_Magnon_bcc_TAS/Test_Magnon_bcc_TAS.md b/mcstas-comps/examples/Tests_samples/Test_Magnon_bcc_TAS/Test_Magnon_bcc_TAS.md new file mode 100644 index 000000000..3cb114c27 --- /dev/null +++ b/mcstas-comps/examples/Tests_samples/Test_Magnon_bcc_TAS/Test_Magnon_bcc_TAS.md @@ -0,0 +1,43 @@ +# The `Test_Magnon_bcc_TAS` Instrument + +*McStas: Generic TAS instrument for test of samples with dispersions.* + +## Identification + +- **Site:** Tests_samples +- **Author:** Kim Lefmann (lefmann@nbi.ku.dk) +- **Origin:** UCPH +- **Date:** 22.07.2018 + +## Description + +```text +Generic TAS instrument for test of samples with dispersions. Modeled over the RITA-2 instrument at PSI (one analyzer only). The instrument is able to position in q-space at q=(h 0 0) and fixed Ei and Ef. This can be used to longitudinal constant-E scans or constant-q scans. In addition, transverse constant-E scans can be made by scanning the sample orientation A3. +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| hw | meV | Neutron energy transfer | 0.5 | +| Ef | meV | Final neutron energy | 5 | +| A3offset | deg | sample rotation around a vertical axis | 0 | +| A3auto | 1 | Flag for selecting automatic setting of A3 to have q-vector along [h 0 0] (0=manual; 1=auto) | 1 | +| aa | AA | lattice parameter for cubic system (passed on to the sample component) | 4.5 | +| qh | 1 | Length of the q-vector in r.l.u., sets the value of scattering angle A4. If A3auto=1, then A3 is set to q=[qh 0 0] | 1.1 | +| highres | 1 | Flag for setting unrealistic high resolution (used for fine testing) (0=standard TAS / RITA2; 1=high resolution TAS) | 0 | +| sample_J | meV | Nearest Neighbor magnetic interaction in sample | 0.2 | +| TT | K | temperature | 300 | +| FerroMagnet | | Flag: 1 if ferromagnet, 0 if AFM | 0 | +| Verbose | 1 | Flag for printing of test statements from magnon component (0=silent, 1=print) | 0 | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/examples/Tests_samples/Test_Magnon_bcc_TAS/Test_Magnon_bcc_TAS.instr) for `Test_Magnon_bcc_TAS.instr`. +- + +--- + +*Generated for mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/examples/Tests_samples/Test_PowderN/Test_PowderN.md b/mcstas-comps/examples/Tests_samples/Test_PowderN/Test_PowderN.md new file mode 100644 index 000000000..87a9a85f5 --- /dev/null +++ b/mcstas-comps/examples/Tests_samples/Test_PowderN/Test_PowderN.md @@ -0,0 +1,40 @@ +# The `Test_PowderN` Instrument + +*McStas: Test output of PowderN on a spherical monitor.* + +## Identification + +- **Site:** Tests_samples +- **Author:** P. Willendrup +- **Origin:** DTU +- **Date:** October 1st 2020 + +## Description + +```text +A test instrument for PowderN output on a spherical monitor. +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| lambda | Angs | Wavelength emitted from source, 1% wl-interval around. | 1 | +| L1 | m | Source-sample distance | 10 | +| directbeam | 1 | Suppress direct beam or not | 0 | +| reflections | str | List of powder reflections | "Fe.laz" | +| SPLITS | 1 | Number of SPLIT's before sample | 1 | +| frac_c | 1 | Fraction of stats assigned to coherent scattering | 0.8 | +| frac_i | 1 | Fraction of stats assigned to incoherent scattering | 0.1 | +| frac_t | 1 | Fraction of stats assigned to unscattered, "direct beam" | 0.1 | +| d_phi | deg | d_phi focusing setting in PowderN | 0 | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/examples/Tests_samples/Test_PowderN/Test_PowderN.instr) for `Test_PowderN.instr`. + +--- + +*Generated for mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/examples/Tests_samples/Test_PowderN_Res/Test_PowderN_Res.md b/mcstas-comps/examples/Tests_samples/Test_PowderN_Res/Test_PowderN_Res.md new file mode 100644 index 000000000..848a1b009 --- /dev/null +++ b/mcstas-comps/examples/Tests_samples/Test_PowderN_Res/Test_PowderN_Res.md @@ -0,0 +1,46 @@ +# The `Test_PowderN_Res` Instrument + +*McStas: Idealized powder diffractometer, to illustrate the difference between 'banana,theta' and 'banana,divergence' in Monitor_nD.* + +## Identification + +- **Site:** Tests_samples +- **Author:** Peter Willendrup +- **Origin:** DTU +- **Date:** 20160309 + +## Description + +```text +Idealized powder diffractometer, to illustrate the difference between 'banana,theta' and 'banana,divergence' in Monitor_nD. Includes a Na2Ca3Al2F14 powder sample. + +The beam from the source is very low-divergent, to allow studying effects at the sample "only". + +By default, absorption in the sample is effectively suppressed. + +Example: Lambda0=2.5667 dLambda=0.01 radius=0.001,0.021 TT=71.8 D_PHI=6 SPLITS=117 Distance=30 sig_abs=1e-09 -N21 +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| Lambda0 | AA | Central wavelength of the source | 2.5667 | +| dLambda | AA | Width of wavelength band from the source | 0.01 | +| radius | m | Radius of cylindrical powder sample | 0.01 | +| TT | deg | Two-theta (scattering angle) of small banana detectors | 72 | +| D_PHI | deg | d_phi focusing around detector "plane" in degrees | 6 | +| SPLITS | 1 | SPLIT statistics booster at sample position | 117 | +| Distance | m | Distance between source and sample | 30 | +| sig_abs | barns | Absorption cross-section in the sample | 1e-9 | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/examples/Tests_samples/Test_PowderN_Res/Test_PowderN_Res.instr) for `Test_PowderN_Res.instr`. +- A reference/HTML link for more information + +--- + +*Generated for mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/examples/Tests_samples/Test_PowderN_concentric/Test_PowderN_concentric.md b/mcstas-comps/examples/Tests_samples/Test_PowderN_concentric/Test_PowderN_concentric.md new file mode 100644 index 000000000..fc4f043b7 --- /dev/null +++ b/mcstas-comps/examples/Tests_samples/Test_PowderN_concentric/Test_PowderN_concentric.md @@ -0,0 +1,36 @@ +# The `Test_PowderN_concentric` Instrument + +*McStas: Test output of PowderN on a spherical monitor.* + +## Identification + +- **Site:** Tests_samples +- **Author:** P. Willendrup +- **Origin:** DTU +- **Date:** October 1st 2020 + +## Description + +```text +A test instrument for PowderN output on a spherical monitor. +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| lambda | Angs | Wavelength emitted from source, 1% wl-interval around. | 1 | +| L1 | m | Source-sample distance | 10 | +| directbeam | 1 | Suppress direct beam or not | 1 | +| reflections | str | List of powder reflections | "Fe.laz" | +| SPLITS | 1 | Number of SPLIT's before sample | 1 | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/examples/Tests_samples/Test_PowderN_concentric/Test_PowderN_concentric.instr) for `Test_PowderN_concentric.instr`. + +--- + +*Generated for mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/examples/Tests_samples/Test_Powders/Test_Powders.md b/mcstas-comps/examples/Tests_samples/Test_Powders/Test_Powders.md new file mode 100644 index 000000000..1795f3e2c --- /dev/null +++ b/mcstas-comps/examples/Tests_samples/Test_Powders/Test_Powders.md @@ -0,0 +1,40 @@ +# The `Test_PowderN` Instrument + +*McStas: Test output of PowderN, NCrystal and Single_crystal on a spherical monitor / PSD.* + +## Identification + +- **Site:** Tests_samples +- **Author:** M. Bertelsen and P. Willendrup +- **Origin:** ESS DMSC +- **Date:** November 2024 + +## Description + +```text +A test instrument for Powder output from different sample components. +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| comp | 1 | 1=PowderN, 2=Single_crystal, 3=NCrystal | 1 | +| lambda | Angs | Wavelength emitted from source, 1% wl-interval around. | 2.5 | +| L1 | m | Source-sample distance | 10 | +| directbeam | 1 | Suppress direct beam or not | 0 | +| material | str | Material string for picking up CIF (PowderN/Single_Crystal) and ncmat (NCrystal) | "Ge" | +| SPLITS | 1 | Number of SPLIT's before sample | 1 | +| frac_t | 1 | Fraction of stats assigned to unscattered, "direct beam" | 0.1 | +| sxmos | arcmin | Mosaicity to use in Single_crystal case | 60 | +| twotheta | deg | Angle for 2\theta detector for detailed view | 94 | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/examples/Tests_samples/Test_Powders/Test_Powders.instr) for `Test_Powders.instr`. + +--- + +*Generated for mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/examples/Tests_samples/Test_SANS/Test_SANS.md b/mcstas-comps/examples/Tests_samples/Test_SANS/Test_SANS.md new file mode 100644 index 000000000..0bec2034c --- /dev/null +++ b/mcstas-comps/examples/Tests_samples/Test_SANS/Test_SANS.md @@ -0,0 +1,54 @@ +# The `Test_SANS` Instrument + +*McStas: Toy model used for testing various sample components for solution-SANS.* + +## Identification + +- **Site:** Tests_samples +- **Author:** Martin Cramer Pedersen (mcpe@nbi.dk) and Søren Kynde (kynde@nbi.dk) +- **Origin:** KU-Science +- **Date:** October 29th, 2012 + +## Description + +```text +Toy model used for testing various sample components for solution-SANS. + +The following SANS samples are handled: +SANSSpheres SAMPLE=0 +SANSShells SAMPLE=1 +SANSCylinders SAMPLE=2 +SANSEllipticCylinders SAMPLE=3 +SANSLiposomes SAMPLE=4 +SANSNanodiscs SAMPLE=5 +SANSNanodiscsWithTags SAMPLE=6 +SANSPDB SAMPLE=7 (very slow, rather use SANSPDBFast) +SANSCurve SAMPLE=8 (inactivated) +SANSNanodiscsFast SAMPLE=9 +SANSNanodiscsWithTagsFast SAMPLE=10 +SANSPDBFast SAMPLE=11 +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| DistanceFromSourceToFirstPinhole | m | Distance to first pinhole from source. | 1.0 | +| DistanceFromSourceToSecondPinhole | m | Distance to second pinhole - used for focusing rays. | 10.0 | +| DistanceFromSecondPinholeToSample | m | Collimation length. | 1.0 | +| DistanceFromSampleToDetector | m | Sample-detector-distance. | 10.0 | +| RadiusOfDetector | m | Radius of the circular detector. | 4.0 | +| Lambda | AA | Wavelength of the rays emitted from source. | 4.5 | +| DLambda | | Relative deviation of wavelength of the rays emitted from source. | 0.1 | +| SAMPLE | | Index of sample model, see above. | 0 | +| Ncount | 1 | Override the number of rays to simulate. | 0 | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/examples/Tests_samples/Test_SANS/Test_SANS.instr) for `Test_SANS.instr`. + +--- + +*Generated for mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/examples/Tests_samples/Test_SX/Test_SX.md b/mcstas-comps/examples/Tests_samples/Test_SX/Test_SX.md new file mode 100644 index 000000000..bf2d3203e --- /dev/null +++ b/mcstas-comps/examples/Tests_samples/Test_SX/Test_SX.md @@ -0,0 +1,42 @@ +# The `Test_SX` Instrument + +*McStas: Test output of Single Crystal on a spherical monitor.* + +## Identification + +- **Site:** Tests_samples +- **Author:** P. Willendrup +- **Origin:** DTU +- **Date:** October 1st 2020 + +## Description + +```text +A test instrument to compare Monitor_nD output against basic 1D and 2D monitors. +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| lambda | Angs | Central wavelength emitted from source | 5 | +| dlambda | Angs | Witdth of wavelength spectrom emitted from source | 9.8 | +| L1 | m | Source-sample distance | 30 | +| directbeam | 1 | Suppress direct beam or not | 0 | +| beamstop | | Toggle beamstop | 0 | +| reflections | str | File name for reflection list | "YBaCuO.lau" | +| SPLITS | 1 | Number of SPLIT's before sample | 1 | +| order | | Maximum order of multiple scattering, Single_crystal | 0 | +| inc | barns | Incoherent cross-section | 0 | +| trans | | Fraction of statistics assigned to transmitted beam | 0.001 | +| omega | deg | Rotation angle of sample | 0 | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/examples/Tests_samples/Test_SX/Test_SX.instr) for `Test_SX.instr`. + +--- + +*Generated for mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/examples/Tests_samples/Test_Single_crystal_inelastic/Test_Single_crystal_inelastic.md b/mcstas-comps/examples/Tests_samples/Test_Single_crystal_inelastic/Test_Single_crystal_inelastic.md new file mode 100644 index 000000000..cfb071c9f --- /dev/null +++ b/mcstas-comps/examples/Tests_samples/Test_Single_crystal_inelastic/Test_Single_crystal_inelastic.md @@ -0,0 +1,49 @@ +# The `Test_Single_crystal_inelastic` Instrument + +*McStas: Test instrument for the Single_crystal_inelastic component.* + +## Identification + +- **Site:** Tests_samples +- **Author:** Duc Le +- **Origin:** ISIS +- **Date:** Feb 2015 + +## Description + +```text +Simple test instrument for Single_crystal_inelastic in Horace mode + +Example: mcrun Test_Single_crystal_inelastic.instr + +once your instrument is written and functional: +- replace INSTRUMENT_SITE entry above with your Institution name as a single word +- rename the instrument name after DEFINE INSTRUMENT below +- update the parameter help in the following Parameters section +- update the instrument description, and better add a usage example with a +sensible parameter set. +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| E | meV | Mean energy produced at the source | 10 | +| DE | meV | Energy spread produced at the source | 0.1 | +| HDIV | deg | Horizontal divergence from the source | 0.5 | +| VDIV | deg | Vertical divergence from the source | 0.5 | +| OM | deg | Sample orientation around y | 0 | +| TH | deg | Sample orientation around x | 0 | +| FI | deg | Sample orientation around z | 0 | +| SQW | str | 4D Sqw input file | "example.sqw4" | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/examples/Tests_samples/Test_Single_crystal_inelastic/Test_Single_crystal_inelastic.instr) for `Test_Single_crystal_inelastic.instr`. +- Duc Le (2015) - duc.le@stfc.ac.uk + +--- + +*Generated for mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/examples/Tests_samples/Test_Sqw/Test_Sqw.md b/mcstas-comps/examples/Tests_samples/Test_Sqw/Test_Sqw.md new file mode 100644 index 000000000..f50a89cff --- /dev/null +++ b/mcstas-comps/examples/Tests_samples/Test_Sqw/Test_Sqw.md @@ -0,0 +1,36 @@ +# The `Test_Sqw` Instrument + +*McStas: Test output of Isotropic_Sqw on a spherical monitor.* + +## Identification + +- **Site:** Tests_samples +- **Author:** P. Willendrup +- **Origin:** DTU +- **Date:** October 1st 2020 + +## Description + +```text +A test instrument for testing Isotropic_Sqw output on a spherical monitor. +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| lambda | Angs | Wavelength emitted from source, 1% wl-interval around. | 1 | +| L1 | m | Source-sample distance | 10 | +| directbeam | 1 | Suppress direct beam or not | 0 | +| sqw_coh | str | Sqw material definition | "Rb_liq_tot.sqw" | +| SPLITS | 1 | Number of SPLIT's before sample | 1 | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/examples/Tests_samples/Test_Sqw/Test_Sqw.instr) for `Test_Sqw.instr`. + +--- + +*Generated for mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/examples/Tests_samples/Test_Sqw_monitor/Test_Sqw_monitor.md b/mcstas-comps/examples/Tests_samples/Test_Sqw_monitor/Test_Sqw_monitor.md new file mode 100644 index 000000000..8c8459351 --- /dev/null +++ b/mcstas-comps/examples/Tests_samples/Test_Sqw_monitor/Test_Sqw_monitor.md @@ -0,0 +1,116 @@ +# The `Test_Sqw_monitor` Instrument + +*McStas: A simple ToF with cylindrical/spherical sample, and furnace/cryostat/container. The sample can be hollow.* + +## Identification + +- **Site:** Tests_samples +- **Author:** E. Farhi +- **Origin:** ILL +- **Date:** Feb 2014 + +## Description + +```text +This instrument models a generic, tunable, neutron time-of-flight spectrometer. + +The incoming flux at the sample brings neutrons with 'beam_wavelength_Angs' wavelength. +The energy resolution at the sample is given as 'beam_resolution_meV'. +The beam size at the sample is set to the sample cross section (e.g. ~2 x 5 cm). + +The sample geometry is either cylindrical ('sample_radius_m' and 'sample_height_m') +or spherical ('sample_height_m=0'). The sample can be hollow when given a thickness +'sample_thickness_m', or filled ('sample_thickness_m=0'). When in cylindrical geometry, +it is surrounded by a container with thickness 'container_thickness_m'. The container +material is specified as a powder file name 'container' in the McStas Sqw or PowderN format, +e.g. 'Al.laz' or 'Nb.laz'. Setting 'container=0' removes the container. + +The sample scattering is characterised by its coherent and incoherent contributions +given as 'sample_coh' and 'sample_inc' file names in McStas Sqw or PowderN format. +Setting the 'sample_coh=sample_inc=0' removes the sample, e.g. to study the container or +environment only contribution. + +The sample and its container are located inside a cylindrical shield with radius +'environment_radius_m' and thickness 'environment_thickness_m'. The material is set from +the 'environment' file name in the McStas Sqw or PowderN format (e.g. 'Al.laz'). +This way, it is possible to estimate the contribution of a cryostat or furnace. +Setting 'environment=0' removes the environment. + +The detector has a cylindrical geometry, with a radius 'sample_detector_distance_m' +and tubes with height 'detector_height_m'. The detector covers a -30 to 140 deg angular range +with 2.54 cm diameter tubes (the number of tubes is computed from the distance). +The direct beam (non scattered neutrons) is discarded. + +The detector produces both (angle,tof) and (q,w) data sets, for: +total scattering +coherent single scattering from sample +incoherent single scattering from sample +multiple scattering from sample +scattering from the container and sample environment +The (angle,tof) results are corrected for the parallax effect from the detector height. + +Known configurations: +ILL_IN4: +beam_wavelength_Angs=2, beam_resolution_meV=0.5, +sample_detector_distance_m=2.0, detector_height_m=0.3 +ILL_IN5: +beam_wavelength_Angs=5, beam_resolution_meV=0.1, +sample_detector_distance_m=4.0, detector_height_m=3.0 +ILL_IN6: +beam_wavelength_Angs=4.1, beam_resolution_meV=0.1, +sample_detector_distance_m=2.48, detector_height_m=1.2 +PSI_Focus: +beam_wavelength_Angs=4.1, beam_resolution_meV=0.1, +sample_detector_distance_m=2.5, detector_height_m=1.2 +FRM2_TOFTOF: +beam_wavelength_Angs=3.0, beam_resolution_meV=0.3, +sample_detector_distance_m=4.0, detector_height_m=2.0 +SNS_SEQUOIA: +beam_wavelength_Angs=1.0, beam_resolution_meV=3.0, +sample_detector_distance_m=5.5, detector_height_m=1.2 +SNS_ARCS: +beam_wavelength_Angs=0.3, beam_resolution_meV=20.0, +sample_detector_distance_m=3.0, detector_height_m=1.46 +NIST_DCS: +beam_wavelength_Angs=3.0, beam_resolution_meV=0.2, +sample_detector_distance_m=4.0, detector_height_m=1.2 +ISIS_MERLIN: +beam_wavelength_Angs=1.0, beam_resolution_meV=2.4, +sample_detector_distance_m=2.5, detector_height_m=3.0 +ISIS_LET: +beam_wavelength_Angs=4.0, beam_resolution_meV=0.1, +sample_detector_distance_m=3.5, detector_height_m=4.0 +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| beam_wavelength_Angs | Angs | incident neutron beam wavelength | 2 | +| beam_resolution_meV | meV | incident energy range full width | 0.1 | +| sample_coh | str | sample coherent Sqw data file or NULL | "Rb_liq_coh.sqw" | +| sample_inc | str | sample incoherent Sqw data file or NULL | "Rb_liq_inc.sqw" | +| sample_thickness_m | m | thickness of sample. 0=filled | 1e-3 | +| sample_height_m | m | height of sample. 0=sphere | 0.03 | +| sample_radius_m | m | radius of sample (outer) | 0.005 | +| container | str | container material or NULL | "Al.laz" | +| container_thickness_m | m | container thickness | 50e-6 | +| environment | str | sample environment material or NULL | "Al.laz" | +| environment_radius_m | m | sample environment outer radius | 0.025 | +| environment_thickness_m | m | sample environment thickness | 2e-3 | +| detector_height_m | m | detector tubes height | 3 | +| sample_detector_distance_m | m | distance from sample to detector | 4.0 | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/examples/Tests_samples/Test_Sqw_monitor/Test_Sqw_monitor.instr) for `Test_Sqw_monitor.instr`. +- The Isotropic_Sqw sample +- The PowderN sample +- The Samples_Isotropic_Sqw example instrument +- The nMoldyn package to create Sqw data sets from MD trajectories + +--- + +*Generated for mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/examples/Tests_samples/Test_TOFRes_sample/Test_TOFRes_sample.md b/mcstas-comps/examples/Tests_samples/Test_TOFRes_sample/Test_TOFRes_sample.md new file mode 100644 index 000000000..d09241991 --- /dev/null +++ b/mcstas-comps/examples/Tests_samples/Test_TOFRes_sample/Test_TOFRes_sample.md @@ -0,0 +1,42 @@ +# The `Test_TOFRes_sample` Instrument + +*McStas: Testing resolution of a TOF spectrometer, use "reso.dat" output with mcresplot.py* + +## Identification + +- **Site:** Tests_samples +- **Author:** Peter Willendrup (adapted from ancient Kim Lefmann instrument) +- **Origin:** DTU +- **Date:** 25-Oct-2023 + +## Description + +```text +Testing resolution of a TOF spectrometer, use "reso.dat" output with mcresplot.py + +TOF resolution test instrument. +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| Chop_W1 | m | Width of 1st chopper slit | 0.1 | +| Chop_ph1 | s | Temporal phase of 1st chopper | 0.0009 | +| Chop_W2 | m | Width of 2nd chopper slit | 0.2 | +| Chop_ph2 | s | Temporal phase of 2nd chopper | 0.003 | +| Chop_W3 | m | Width of 3rd chopper slit | 0.1 | +| Chop_ph3 | s | Temporal phase of 3rd chopper | 0.006 | +| TIME_BIN | us | Target detection time | 10000 | +| BIN_WIDTH | us | Width of detection times | 10 | +| TWOTHETA | deg | Scattering angle | 60 | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/examples/Tests_samples/Test_TOFRes_sample/Test_TOFRes_sample.instr) for `Test_TOFRes_sample.instr`. + +--- + +*Generated for mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/examples/Tests_samples/Test_TasReso/Test_TasReso.md b/mcstas-comps/examples/Tests_samples/Test_TasReso/Test_TasReso.md new file mode 100644 index 000000000..7bb8c1bcc --- /dev/null +++ b/mcstas-comps/examples/Tests_samples/Test_TasReso/Test_TasReso.md @@ -0,0 +1,59 @@ +# The `Test_TasReso` Instrument + +*McStas: Testing the triple-axis resolution, use "reso.dat" output with mcresplot.py* + +## Identification + +- **Site:** Tests_samples +- **Author:** Tobias Weber (tweber@ill.fr) +- **Origin:** ILL +- **Date:** 30-Mar-2019 + +## Description + +```text +Testing the triple-axis resolution, use "reso.dat" output with mcresplot.py + +Triple-axis resolution test instrument, +forked from the Hercules McStas course: +https://code.ill.fr/tweber/hercules + +This program is free software: you can redistribute it and/or modify +it under the terms of the GNU General Public License as published by +the Free Software Foundation, version 3 of the License. + +This program is distributed in the hope that it will be useful, +but WITHOUT ANY WARRANTY; without even the implied warranty of +MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +GNU General Public License for more details. + +You should have received a copy of the GNU General Public License +along with this program. If not, see http://www.gnu.org/licenses/. +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| src_lam | AA | Source mean wavelength | 4.5 | +| src_dlam | AA | Source wavelength spread | 1.0 | +| ki | AA^-1 | Monochromator ki | -1 | +| kf | AA^-1 | Analyser kf | -1 | +| sample_num | | Selection of sample-model 0=vanadium, 1=single crystal, 2=resolution | 2 | +| mono_curvh | m | Monochromator horizontal curvature. -1: optimal, 0: flat | -1 | +| mono_curvv | m | Monochromator vertical curvature -1: optimal, 0: flat | -1 | +| ana_curvh | m | Analyzer horizontal curvature. -1: optimal, 0: flat | -1 | +| ana_curvv | m | Analyzer vertical curvature -1: optimal, 0: flat | -1 | +| coll_presample_div | arcmin | Collimation before sample | 30.0 | +| coll_postsample_div | arcmin | Collimation after sample | 30.0 | +| k_filter_cutoff | AA^-1 | Filter cutoff | 1.6 | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/examples/Tests_samples/Test_TasReso/Test_TasReso.instr) for `Test_TasReso.instr`. + +--- + +*Generated for mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/examples/Tests_samples/Test_single_magnetic_crystal/Test_single_magnetic_crystal.md b/mcstas-comps/examples/Tests_samples/Test_single_magnetic_crystal/Test_single_magnetic_crystal.md new file mode 100644 index 000000000..87773898d --- /dev/null +++ b/mcstas-comps/examples/Tests_samples/Test_single_magnetic_crystal/Test_single_magnetic_crystal.md @@ -0,0 +1,44 @@ +# The `Test_single_magnetic_crystal` Instrument + +*McStas: Unit test instrument for magnetic single crystal* + +## Identification + +- **Site:** Tests_samples +- **Author:** Erik B Knudsen (erkn@fysik.dtu.dk) +- **Origin:** DTU Physics +- **Date:** Jan 2020 + +## Description + +```text +A very simple unit test/example instrument for the experimental Single_magnetic_crystal +component. It is a very simple implementation of a Laue camera using 4PI spherical +monitors. +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| L0 | AA | Centre wavelength to simulate | 4 | +| dL | AA | Half wavelength spread to sample | 3.91 | +| OM | deg | Sample rotation | 0 | +| TT | deg | Rotation of detector arm | 0 | +| PX | | x-component of initial polarization | 0 | +| PY | | y-component of initial polarization | 1 | +| PZ | | z-component of initial polarization | 0 | +| MOS | arcmin | Isotropic mosaic of the crystal. | 100 | +| QMIN | AA^-1 | lower boundary of momentum transfer range to generate hkls in | 0.1 | +| QMAX | AA^-1 | upper boundary of momentum transfer range to generate hkls in | 5 | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/examples/Tests_samples/Test_single_magnetic_crystal/Test_single_magnetic_crystal.instr) for `Test_single_magnetic_crystal.instr`. +- A reference/HTML link for more information + +--- + +*Generated for mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/examples/Tests_samples/Unittest_SANS_benchmark2/Unittest_SANS_benchmark2.md b/mcstas-comps/examples/Tests_samples/Unittest_SANS_benchmark2/Unittest_SANS_benchmark2.md new file mode 100644 index 000000000..c6eed2463 --- /dev/null +++ b/mcstas-comps/examples/Tests_samples/Unittest_SANS_benchmark2/Unittest_SANS_benchmark2.md @@ -0,0 +1,39 @@ +# The `Unittest_SANS_benchmark2` Instrument + +*McStas: Test instrument for the SANS_benchmark2 component. No guide / velocity selector.* + +## Identification + +- **Site:** Tests_samples +- **Author:** Peter Willendrup +- **Origin:** ESS +- **Date:** April 2023 + +## Description + +```text +Very simple test instrument for the SANS_benchmark2 component from H. Frielinghaus. +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| lambda | AA | Mean wavelength of neutrons | 6 | +| dlambda | AA | Wavelength spread of neutrons | 0.05 | +| r | AA | Radius of scattering hard spheres | 150 | +| PHI | 1 | Particle volume fraction | 1e-3 | +| Delta_Rho | cm^-2 | Scattering length density | 6e10 | +| frac_dir | 1 | Fraction of statistics for direct beam | 0.03 | +| frac_inc | 1 | Fraction of statistics for incoherent scattering in scattered beam | 0.01 | +| modnum | int | Sample "modle number" from SANS_benchmark2 | 1 | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/examples/Tests_samples/Unittest_SANS_benchmark2/Unittest_SANS_benchmark2.instr) for `Unittest_SANS_benchmark2.instr`. + +--- + +*Generated for mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/examples/Tests_sources/Test_Source_custom/test_Source_custom.md b/mcstas-comps/examples/Tests_sources/Test_Source_custom/test_Source_custom.md new file mode 100644 index 000000000..0a1ca1445 --- /dev/null +++ b/mcstas-comps/examples/Tests_sources/Test_Source_custom/test_Source_custom.md @@ -0,0 +1,32 @@ +# The `test_Source_custom` Instrument + +*McStas: Test instrument for the Source_custom component* + +## Identification + +- **Site:** Tests_sources +- **Author:** Pablo Gila-Herranz +- **Origin:** Materials Physics Center (CFM-MPC), CSIC-UPV/EHU +- **Date:** 15:36:54 on April 04, 2025 + +## Description + +```text +This is a test file for the Source_custom component +Using the parameters for the HBS bi-spectral source +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/examples/Tests_sources/Test_Source_custom/test_Source_custom.instr) for `test_Source_custom.instr`. + +--- + +*Generated for mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/examples/Tests_sources/Test_Source_quasi/Test_Source_quasi.md b/mcstas-comps/examples/Tests_sources/Test_Source_quasi/Test_Source_quasi.md new file mode 100644 index 000000000..fe50ce65c --- /dev/null +++ b/mcstas-comps/examples/Tests_sources/Test_Source_quasi/Test_Source_quasi.md @@ -0,0 +1,32 @@ +# The `Test_Source_quasi` Instrument + +*McStas: Test instrument to show that the quasi-stcohastic source component works* + +## Identification + +- **Site:** Tests_sources +- **Author:** Erik B Knudsen (erkn@fysik.dtu.dk) +- **Origin:** DTU Fysik +- **Date:** Feb 1st 2013 + +## Description + +```text +This instrument is a unit test for the quasi-stochastic source component. +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| SRC | | Integer parameter picks a source model. 0 normal Source_div, Quasi-stochastic | 1 | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/examples/Tests_sources/Test_Source_quasi/Test_Source_quasi.instr) for `Test_Source_quasi.instr`. + +--- + +*Generated for mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/examples/Tests_union/Conditional_test/Conditional_test.md b/mcstas-comps/examples/Tests_union/Conditional_test/Conditional_test.md new file mode 100644 index 000000000..fa69ebbc8 --- /dev/null +++ b/mcstas-comps/examples/Tests_union/Conditional_test/Conditional_test.md @@ -0,0 +1,32 @@ +# The `Conditional_test` Instrument + +*McStas: Test of all Union conditional components* + +## Identification + +- **Site:** Tests_union +- **Author:** Mads Bertelsen +- **Origin:** University of Copenhagen +- **Date:** September 2015 + +## Description + +```text +Use of all conditional components in one instrument file +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| dummy | | Dummy input parameter | 1 | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/examples/Tests_union/Conditional_test/Conditional_test.instr) for `Conditional_test.instr`. + +--- + +*Generated for mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/examples/Tests_union/External_component_test/External_component_test.md b/mcstas-comps/examples/Tests_union/External_component_test/External_component_test.md new file mode 100644 index 000000000..5f83e21e9 --- /dev/null +++ b/mcstas-comps/examples/Tests_union/External_component_test/External_component_test.md @@ -0,0 +1,32 @@ +# The `External_component_test` Instrument + +*McStas: Inserts external component in Union system with exit volumes and number_of_activations* + +## Identification + +- **Site:** Tests_union +- **Author:** Mads Bertelsen +- **Origin:** University of Copenhagen +- **Date:** September 2015 + +## Description + +```text +Demonstration of the use of "number_of_activations" and exit volumes to +include a regular McStas component in an ensemble of Union components. +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/examples/Tests_union/External_component_test/External_component_test.instr) for `External_component_test.instr`. + +--- + +*Generated for mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/examples/Tests_union/Geometry_test/Geometry_test.md b/mcstas-comps/examples/Tests_union/Geometry_test/Geometry_test.md new file mode 100644 index 000000000..20ab10638 --- /dev/null +++ b/mcstas-comps/examples/Tests_union/Geometry_test/Geometry_test.md @@ -0,0 +1,32 @@ +# The `Geometry_test` Instrument + +*McStas: Test of all Union geometry components in one file* + +## Identification + +- **Site:** Tests_union +- **Author:** Mads Bertelsen +- **Origin:** University of Copenhagen +- **Date:** September 2015 + +## Description + +```text +Use of all basic geometries, mesh(as a torus), sphere, cylinder, cone and box +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| meshfile | | | "torus.STL" | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/examples/Tests_union/Geometry_test/Geometry_test.instr) for `Geometry_test.instr`. + +--- + +*Generated for mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/examples/Tests_union/Hidden_Cylinder/Hidden_Cylinder.md b/mcstas-comps/examples/Tests_union/Hidden_Cylinder/Hidden_Cylinder.md new file mode 100644 index 000000000..fd950d5d8 --- /dev/null +++ b/mcstas-comps/examples/Tests_union/Hidden_Cylinder/Hidden_Cylinder.md @@ -0,0 +1,41 @@ +# The `Hidden_Cylinder` Instrument + +*McStas: Small test instrument testing placement of low-priority Union cylinder within higher-priority Union cylinder.* + +## Identification + +- **Site:** Tests_union +- **Author:** Daniel Lomholt Christensen +- **Origin:** UCPH@NBI, Funded by ACTNXT +- **Date:** 15:54:48 on January 20, 2026 + +## Description + +```text +A small test instrument testing the placement of one cylinder with a low priority +fully inside another cylinder with a higher priority. This was added to test +for an mcdisplay error that used to occur, when a cylinder is completely +enclosed in another cylinder. +To test this simply do +a "mcdisplay Hidden_Cylinder.instr -c -y" +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| pin_rad | m | Radius of source | 0.0025 | +| d | m | Distance between source and sample center | 10 | +| detector_x | m | Detector Width | 0.01 | +| detector_y | m | Detector Height | 0.04 | +| det_dist | m | Distance between detector and sample center | 0.005 | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/examples/Tests_union/Hidden_Cylinder/Hidden_Cylinder.instr) for `Hidden_Cylinder.instr`. + +--- + +*Generated for mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/examples/Tests_union/IncoherentPhonon_test/IncoherentPhonon_test.md b/mcstas-comps/examples/Tests_union/IncoherentPhonon_test/IncoherentPhonon_test.md new file mode 100644 index 000000000..9f3140f1e --- /dev/null +++ b/mcstas-comps/examples/Tests_union/IncoherentPhonon_test/IncoherentPhonon_test.md @@ -0,0 +1,56 @@ +# The `IncoherentPhonon_test` Instrument + +*McStas: Test of IncoherentPhonon_process* + +## Identification + +- **Site:** Tests_union +- **Author:** Mads Bertelsen +- **Origin:** Johns Hopkins University, Baltimore +- **Date:** May 2016 + +## Description + +```text +Test instrument for the IncoherentPhonon_process physics process from +V. Laliena, Uni Zaragoza. + +Example: comp_select=1 Detector: energy_mon_2_I=1156.84 +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| comp_select | | 1: Union components, 2: Incoherent | 1 | +| sample_radius | m | Radius of sample | 0.01 | +| sample_height | m | Height of sample | 0.03 | +| pack | | Packing factor | 1 | +| sigma_inc_vanadium | barns | Incoherent cross-section | 5.08 | +| sigma_abs_vanadium | barns | Absorption cross-section | 5.08 | +| Vc_vanadium | AA^3 | Unit cell volume | 13.827 | +| geometry_interact | | p_interact for the Union sample | 0.5 | +| nphe_exact | | | 1 | +| nphe_approx | | | 0 | +| approx | | | 0 | +| mph_resum | | | 0 | +| T | | | 294 | +| density | | | 6.0 | +| M | | | 50.94 | +| sigmaCoh | | | 0.0184 | +| sigmaInc | | | 5.08 | +| dosfn | | | "dos_meV.txt" | +| nxs | | | 1000 | +| kabsmin | | | 0.1 | +| kabsmax | | | 25 | +| interact_fraction | | | -1 | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/examples/Tests_union/IncoherentPhonon_test/IncoherentPhonon_test.instr) for `IncoherentPhonon_test.instr`. + +--- + +*Generated for mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/examples/Tests_union/Logger_test/Logger_test.md b/mcstas-comps/examples/Tests_union/Logger_test/Logger_test.md new file mode 100644 index 000000000..73018f89a --- /dev/null +++ b/mcstas-comps/examples/Tests_union/Logger_test/Logger_test.md @@ -0,0 +1,33 @@ +# The `Logger_test` Instrument + +*McStas: Test of all Union loggers* + +## Identification + +- **Site:** Tests_union +- **Author:** Mads Bertelsen +- **Origin:** University of Copenhagen +- **Date:** September 2015 + +## Description + +```text +Reconstruction of a sample holder from picture. +All arms are 30 cm below the actual center point in order to avoid arms +in the mcdisplay picture. Uses all Union loggers. +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/examples/Tests_union/Logger_test/Logger_test.instr) for `Logger_test.instr`. + +--- + +*Generated for mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/examples/Tests_union/Many_meshes/Many_meshes.md b/mcstas-comps/examples/Tests_union/Many_meshes/Many_meshes.md new file mode 100644 index 000000000..9663b65a1 --- /dev/null +++ b/mcstas-comps/examples/Tests_union/Many_meshes/Many_meshes.md @@ -0,0 +1,40 @@ +# The `Many_meshes` Instrument + +*McStas: Instrument testing placement of overlapping mesh components.* + +## Identification + +- **Site:** Tests_union +- **Author:** Daniel Lomholt Christensen +- **Origin:** UCPH@NBI, Funded by ACTNXT +- **Date:** 15:54:48 on January 20, 2026 + +## Description + +```text +A small test instrument testing the placement of many overlapping +mesh components. +Test with: +mcdisplay -y -c +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| pin_rad | m | Radius of source | 0.0025 | +| d | m | Distance between source and sample center | 10 | +| detector_x | m | Detector Width | 0.01 | +| detector_y | m | Detector Height | 0.04 | +| det_dist | m | Distance between detector and sample center | 0.005 | +| crack_width | m | Height masking crack should be raised from the original crack | 0.003 | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/examples/Tests_union/Many_meshes/Many_meshes.instr) for `Many_meshes.instr`. + +--- + +*Generated for mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/examples/Tests_union/Test_absorption/Test_absorption.md b/mcstas-comps/examples/Tests_union/Test_absorption/Test_absorption.md new file mode 100644 index 000000000..a9913ac8f --- /dev/null +++ b/mcstas-comps/examples/Tests_union/Test_absorption/Test_absorption.md @@ -0,0 +1,33 @@ +# The `Test_absorption` Instrument + +*McStas: Test of Union material with only absorption* + +## Identification + +- **Site:** Tests_union +- **Author:** Mads Bertelsen +- **Origin:** University of Copenhagen +- **Date:** September 2015 + +## Description + +```text +Testing an absorber made using the Union components. An absorber is made +without processes and just the make_material component, and requires +a few special cases. +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/examples/Tests_union/Test_absorption/Test_absorption.instr) for `Test_absorption.instr`. + +--- + +*Generated for mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/examples/Tests_union/Test_absorption_image/Test_absorption_image.md b/mcstas-comps/examples/Tests_union/Test_absorption_image/Test_absorption_image.md new file mode 100644 index 000000000..e69b113e1 --- /dev/null +++ b/mcstas-comps/examples/Tests_union/Test_absorption_image/Test_absorption_image.md @@ -0,0 +1,33 @@ +# The `Test_absorption_image` Instrument + +*McStas: Image of cryostat with sample* + +## Identification + +- **Site:** Tests_union +- **Author:** Mads Bertelsen +- **Origin:** University of Copenhagen +- **Date:** September 2015 + +## Description + +```text +Simple test instrument showing absorption image of a cryostat with vanadium +sample using the Union components. +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| stick_displacement | m | Displacement of sample stick | 0 | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/examples/Tests_union/Test_absorption_image/Test_absorption_image.instr) for `Test_absorption_image.instr`. + +--- + +*Generated for mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/examples/Tests_union/Test_box/Test_box.md b/mcstas-comps/examples/Tests_union/Test_box/Test_box.md new file mode 100644 index 000000000..2267069a2 --- /dev/null +++ b/mcstas-comps/examples/Tests_union/Test_box/Test_box.md @@ -0,0 +1,34 @@ +# The `Test_box` Instrument + +*McStas: Simple test instrument for Union box component.* + +## Identification + +- **Site:** Tests_union +- **Author:** Mads Bertelsen +- **Origin:** University of Copenhagen +- **Date:** September 2015 + +## Description + +```text +One of the union geometries that can be used in conjuction +with the others to create a complex geometry. The priority needs to +be set, and when two or more geometries overlap, the one with highest +priority determines what material is simulated in that region. +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/examples/Tests_union/Test_box/Test_box.instr) for `Test_box.instr`. + +--- + +*Generated for mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/examples/Tests_union/Test_mask/Test_mask.md b/mcstas-comps/examples/Tests_union/Test_mask/Test_mask.md new file mode 100644 index 000000000..0f5ddedb7 --- /dev/null +++ b/mcstas-comps/examples/Tests_union/Test_mask/Test_mask.md @@ -0,0 +1,32 @@ +# The `Test_mask` Instrument + +*McStas: Simple test instrument for mask functionality in Union framework.* + +## Identification + +- **Site:** Tests_union +- **Author:** Mads Bertelsen +- **Origin:** University of Copenhagen +- **Date:** September 2015 + +## Description + +```text +Masks allow restricing some geometry to the internal part of a mask +geometry. All Union geometry components can be used as masks. +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/examples/Tests_union/Test_mask/Test_mask.instr) for `Test_mask.instr`. + +--- + +*Generated for mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/examples/Tests_union/Test_powder/Test_powder.md b/mcstas-comps/examples/Tests_union/Test_powder/Test_powder.md new file mode 100644 index 000000000..b63ffd057 --- /dev/null +++ b/mcstas-comps/examples/Tests_union/Test_powder/Test_powder.md @@ -0,0 +1,31 @@ +# The `Test_powder` Instrument + +*McStas: Simple test instrument for powder process in Union framework.* + +## Identification + +- **Site:** Tests_union +- **Author:** Mads Bertelsen +- **Origin:** University of Copenhagen +- **Date:** September 2015 + +## Description + +```text +Simple test instrument for powder sample simulated using Union components. +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/examples/Tests_union/Test_powder/Test_powder.instr) for `Test_powder.instr`. + +--- + +*Generated for mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/examples/Tests_union/Test_texture/Test_texture.md b/mcstas-comps/examples/Tests_union/Test_texture/Test_texture.md new file mode 100644 index 000000000..82b113053 --- /dev/null +++ b/mcstas-comps/examples/Tests_union/Test_texture/Test_texture.md @@ -0,0 +1,37 @@ +# The `Test_texture` Instrument + +*McStas: Simple test instrument for Texture functionality in Union framework.* + +## Identification + +- **Site:** Tests_union +- **Author:** +- **Origin:** +- **Date:** + +## Description + +```text +Simple test instrument for texture sample component. + +Example: lmax=0 Detector: monitor_I=8.08899e-05 +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| lmax | AA | Maximum wavelength treated by texture process | 0 | +| crystal_fn | string | Crystal structure file name | "Zr.laz" | +| fcoef_fn | string | Fourier component file name | "coef_Four_L2.txt" | +| barns | | Flag to indicate if \|F 2\| from "crystal_fn" is in barns or fm2 (barns = 1 for laz, barns = 0 for lau type files). | 1 | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/examples/Tests_union/Test_texture/Test_texture.instr) for `Test_texture.instr`. + +--- + +*Generated for mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/examples/Tests_union/Unit_test_abs_logger_1D_space/Unit_test_abs_logger_1D_space.md b/mcstas-comps/examples/Tests_union/Unit_test_abs_logger_1D_space/Unit_test_abs_logger_1D_space.md new file mode 100644 index 000000000..a6a763b39 --- /dev/null +++ b/mcstas-comps/examples/Tests_union/Unit_test_abs_logger_1D_space/Unit_test_abs_logger_1D_space.md @@ -0,0 +1,33 @@ +# The `Unit_test_abs_logger_1D_space` Instrument + +*McStas: Test of the 1 dimensional spatial absorption logger* + +## Identification + +- **Site:** Tests_union +- **Author:** Mads Bertelsen +- **Origin:** ESS +- **Date:** June 2020 + +## Description + +```text +Test of the 1 dimensional spatial absorption logger that investigates +the amount of absorbed intensity projected onto a axis along its y coordinate. +Often used for detectors. +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/examples/Tests_union/Unit_test_abs_logger_1D_space/Unit_test_abs_logger_1D_space.instr) for `Unit_test_abs_logger_1D_space.instr`. + +--- + +*Generated for mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/examples/Tests_union/Unit_test_abs_logger_1D_space_event/Unit_test_abs_logger_1D_space_event.md b/mcstas-comps/examples/Tests_union/Unit_test_abs_logger_1D_space_event/Unit_test_abs_logger_1D_space_event.md new file mode 100644 index 000000000..9dbef506c --- /dev/null +++ b/mcstas-comps/examples/Tests_union/Unit_test_abs_logger_1D_space_event/Unit_test_abs_logger_1D_space_event.md @@ -0,0 +1,31 @@ +# The `Unit_test_abs_logger_1D_space_event` Instrument + +*McStas: Test of Union_abs_logger_1D_space_event* + +## Identification + +- **Site:** Tests_union +- **Author:** Mads Bertelsen +- **Origin:** ESS +- **Date:** June 2020 + +## Description + +```text + +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/examples/Tests_union/Unit_test_abs_logger_1D_space_event/Unit_test_abs_logger_1D_space_event.instr) for `Unit_test_abs_logger_1D_space_event.instr`. + +--- + +*Generated for mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/examples/Tests_union/Unit_test_abs_logger_1D_space_tof/Unit_test_abs_logger_1D_space_tof.md b/mcstas-comps/examples/Tests_union/Unit_test_abs_logger_1D_space_tof/Unit_test_abs_logger_1D_space_tof.md new file mode 100644 index 000000000..3616d4219 --- /dev/null +++ b/mcstas-comps/examples/Tests_union/Unit_test_abs_logger_1D_space_tof/Unit_test_abs_logger_1D_space_tof.md @@ -0,0 +1,32 @@ +# The `Unit_test_abs_logger_1D_space_tof` Instrument + +*McStas: Test of abs_logger_1D_space_tof* + +## Identification + +- **Site:** Tests_union +- **Author:** Mads Bertelsen +- **Origin:** ESS +- **Date:** June 2020 + +## Description + +```text +Tests absorption logger measuring position projected onto a line and the +time of absorption in a histogram. +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/examples/Tests_union/Unit_test_abs_logger_1D_space_tof/Unit_test_abs_logger_1D_space_tof.instr) for `Unit_test_abs_logger_1D_space_tof.instr`. + +--- + +*Generated for mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/examples/Tests_union/Unit_test_abs_logger_1D_space_tof_to_lambda/Unit_test_abs_logger_1D_space_tof_to_lambda.md b/mcstas-comps/examples/Tests_union/Unit_test_abs_logger_1D_space_tof_to_lambda/Unit_test_abs_logger_1D_space_tof_to_lambda.md new file mode 100644 index 000000000..d549ce726 --- /dev/null +++ b/mcstas-comps/examples/Tests_union/Unit_test_abs_logger_1D_space_tof_to_lambda/Unit_test_abs_logger_1D_space_tof_to_lambda.md @@ -0,0 +1,39 @@ +# The `Unit_test_abs_logger_1D_space_tof_to_lambda` Instrument + +*McStas: Test of abs_logger_1D_space_tof_to_lambda that calculates wavelength from tof* + +## Identification + +- **Site:** Tests_union +- **Author:** Mads Bertelsen +- **Origin:** ESS +- **Date:** June 2020 + +## Description + +```text +This component works as other absorption loggers, but converts the tof and +position data to wavelength, which is then compared to the actual wavelength +calculated from the neutron state. The neutron position used to calculate +the wavelength is pixelated while the time of flight is continous. The +distance from source to sample is an input parameter, and the distance from +sample to a detector pixel is calculated using the reference component position +which should be specified with a relative component index. This test checks +both the standard view with measured and true wavelength on each axis, and the +relative where they have been normalized and a value of 1 is expected. +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/examples/Tests_union/Unit_test_abs_logger_1D_space_tof_to_lambda/Unit_test_abs_logger_1D_space_tof_to_lambda.instr) for `Unit_test_abs_logger_1D_space_tof_to_lambda.instr`. + +--- + +*Generated for mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/examples/Tests_union/Unit_test_abs_logger_2D_space/Unit_test_abs_logger_2D_space.md b/mcstas-comps/examples/Tests_union/Unit_test_abs_logger_2D_space/Unit_test_abs_logger_2D_space.md new file mode 100644 index 000000000..2201016ed --- /dev/null +++ b/mcstas-comps/examples/Tests_union/Unit_test_abs_logger_2D_space/Unit_test_abs_logger_2D_space.md @@ -0,0 +1,31 @@ +# The `Unit_test_abs_logger_2D_space` Instrument + +*McStas: Test for Union_abs_logger_2D_space* + +## Identification + +- **Site:** Tests_union +- **Author:** Mads Bertelsen +- **Origin:** ESS +- **Date:** June 2020 + +## Description + +```text +Test of absorption logger with basic geometry from Unit_test_loggers_base. +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/examples/Tests_union/Unit_test_abs_logger_2D_space/Unit_test_abs_logger_2D_space.instr) for `Unit_test_abs_logger_2D_space.instr`. + +--- + +*Generated for mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/examples/Tests_union/Unit_test_abs_logger_event/Unit_test_abs_logger_event.md b/mcstas-comps/examples/Tests_union/Unit_test_abs_logger_event/Unit_test_abs_logger_event.md new file mode 100644 index 000000000..d01b4cba7 --- /dev/null +++ b/mcstas-comps/examples/Tests_union/Unit_test_abs_logger_event/Unit_test_abs_logger_event.md @@ -0,0 +1,31 @@ +# The `Unit_test_abs_logger_event` Instrument + +*McStas: Test of Union_abs_logger_event* + +## Identification + +- **Site:** Tests_union +- **Author:** Mads Bertelsen +- **Origin:** ESS +- **Date:** June 2020 + +## Description + +```text + +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/examples/Tests_union/Unit_test_abs_logger_event/Unit_test_abs_logger_event.instr) for `Unit_test_abs_logger_event.instr`. + +--- + +*Generated for mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/examples/Tests_union/Unit_test_abs_logger_nD/Unit_test_abs_logger_nD.md b/mcstas-comps/examples/Tests_union/Unit_test_abs_logger_nD/Unit_test_abs_logger_nD.md new file mode 100644 index 000000000..e8ed41ca5 --- /dev/null +++ b/mcstas-comps/examples/Tests_union/Unit_test_abs_logger_nD/Unit_test_abs_logger_nD.md @@ -0,0 +1,33 @@ +# The `Unit_test_abs_logger_1D_space` Instrument + +*McStas: Test of the monitor_nD like absorption logger* + +## Identification + +- **Site:** Tests_union +- **Author:** Mads Bertelsen +- **Origin:** ESS +- **Date:** November 2025 + +## Description + +```text +Test of the monitor_nD like absorption logger that investigates the amount +of absorbed intensity as with a monitor_nD that use the previous keyword for +geometry, leaving the ray positions where they were. +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/examples/Tests_union/Unit_test_abs_logger_nD/Unit_test_abs_logger_nD.instr) for `Unit_test_abs_logger_nD.instr`. + +--- + +*Generated for mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/examples/Tests_union/Unit_test_conditional_PSD/Unit_test_conditional_PSD.md b/mcstas-comps/examples/Tests_union/Unit_test_conditional_PSD/Unit_test_conditional_PSD.md new file mode 100644 index 000000000..a2f9fba7b --- /dev/null +++ b/mcstas-comps/examples/Tests_union/Unit_test_conditional_PSD/Unit_test_conditional_PSD.md @@ -0,0 +1,33 @@ +# The `Unit_test_conditional_PSD` Instrument + +*McStas: Test of conditional_PSD* + +## Identification + +- **Site:** Tests_union +- **Author:** Mads Bertelsen +- **Origin:** ESS +- **Date:** June 2020 + +## Description + +```text +Test of conditional_PSD component that attaches to a logger and reduces +its output to neutrons that reached the conditional_PSD area in specified +time interval. This is used to investigate origin of interesting signals. +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/examples/Tests_union/Unit_test_conditional_PSD/Unit_test_conditional_PSD.instr) for `Unit_test_conditional_PSD.instr`. + +--- + +*Generated for mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/examples/Tests_union/Unit_test_conditional_standard/Unit_test_conditional_standard.md b/mcstas-comps/examples/Tests_union/Unit_test_conditional_standard/Unit_test_conditional_standard.md new file mode 100644 index 000000000..7e4dcfcf2 --- /dev/null +++ b/mcstas-comps/examples/Tests_union/Unit_test_conditional_standard/Unit_test_conditional_standard.md @@ -0,0 +1,33 @@ +# The `Unit_test_conditional_standard` Instrument + +*McStas: Test of Union_conditional_standard* + +## Identification + +- **Site:** Tests_union +- **Author:** Mads Bertelsen +- **Origin:** ESS +- **Date:** June 2020 + +## Description + +```text +Union_conditional_standard can limit loggers to only record rays that end +their trace in Union_master within certain set limits. Here two loggers +are modified by a single conditional component that requires a final time. +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/examples/Tests_union/Unit_test_conditional_standard/Unit_test_conditional_standard.instr) for `Unit_test_conditional_standard.instr`. + +--- + +*Generated for mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/examples/Tests_union/Unit_test_logger_1D/Unit_test_logger_1D.md b/mcstas-comps/examples/Tests_union/Unit_test_logger_1D/Unit_test_logger_1D.md new file mode 100644 index 000000000..98af57cc1 --- /dev/null +++ b/mcstas-comps/examples/Tests_union/Unit_test_logger_1D/Unit_test_logger_1D.md @@ -0,0 +1,31 @@ +# The `Unit_test_logger_1D` Instrument + +*McStas: Test of Union 1D logger* + +## Identification + +- **Site:** Tests_union +- **Author:** Mads Bertelsen +- **Origin:** ESS +- **Date:** June 2020 + +## Description + +```text + +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/examples/Tests_union/Unit_test_logger_1D/Unit_test_logger_1D.instr) for `Unit_test_logger_1D.instr`. + +--- + +*Generated for mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/examples/Tests_union/Unit_test_logger_2DQ/Unit_test_logger_2DQ.md b/mcstas-comps/examples/Tests_union/Unit_test_logger_2DQ/Unit_test_logger_2DQ.md new file mode 100644 index 000000000..2dcc9cc25 --- /dev/null +++ b/mcstas-comps/examples/Tests_union/Unit_test_logger_2DQ/Unit_test_logger_2DQ.md @@ -0,0 +1,31 @@ +# The `Unit_test_logger_2DQ` Instrument + +*McStas: Test of the Union 2DQ logger that shows scattering vector projected onto 2D plane* + +## Identification + +- **Site:** Tests_union +- **Author:** Mads Bertelsen +- **Origin:** ESS +- **Date:** June 2020 + +## Description + +```text + +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/examples/Tests_union/Unit_test_logger_2DQ/Unit_test_logger_2DQ.instr) for `Unit_test_logger_2DQ.instr`. + +--- + +*Generated for mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/examples/Tests_union/Unit_test_logger_2D_kf/Unit_test_logger_2D_kf.md b/mcstas-comps/examples/Tests_union/Unit_test_logger_2D_kf/Unit_test_logger_2D_kf.md new file mode 100644 index 000000000..d58467c27 --- /dev/null +++ b/mcstas-comps/examples/Tests_union/Unit_test_logger_2D_kf/Unit_test_logger_2D_kf.md @@ -0,0 +1,31 @@ +# The `Unit_test_logger_2D_kf` Instrument + +*McStas: Test of Union logger 2D kf that records the final wavevector* + +## Identification + +- **Site:** Tests_union +- **Author:** Mads Bertelsen +- **Origin:** ESS +- **Date:** June 2020 + +## Description + +```text + +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/examples/Tests_union/Unit_test_logger_2D_kf/Unit_test_logger_2D_kf.instr) for `Unit_test_logger_2D_kf.instr`. + +--- + +*Generated for mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/examples/Tests_union/Unit_test_logger_2D_kf_time/Unit_test_logger_2D_kf_time.md b/mcstas-comps/examples/Tests_union/Unit_test_logger_2D_kf_time/Unit_test_logger_2D_kf_time.md new file mode 100644 index 000000000..c1aac133d --- /dev/null +++ b/mcstas-comps/examples/Tests_union/Unit_test_logger_2D_kf_time/Unit_test_logger_2D_kf_time.md @@ -0,0 +1,31 @@ +# The `Unit_test_logger_2D_kf_time` Instrument + +*McStas: Tests Logger_2D_kf_time that records final wavevector in several time steps* + +## Identification + +- **Site:** Tests_union +- **Author:** Mads Bertelsen +- **Origin:** ESS +- **Date:** June 2020 + +## Description + +```text + +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/examples/Tests_union/Unit_test_logger_2D_kf_time/Unit_test_logger_2D_kf_time.instr) for `Unit_test_logger_2D_kf_time.instr`. + +--- + +*Generated for mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/examples/Tests_union/Unit_test_logger_2D_space/Unit_test_logger_2D_space.md b/mcstas-comps/examples/Tests_union/Unit_test_logger_2D_space/Unit_test_logger_2D_space.md new file mode 100644 index 000000000..3615c016e --- /dev/null +++ b/mcstas-comps/examples/Tests_union/Unit_test_logger_2D_space/Unit_test_logger_2D_space.md @@ -0,0 +1,33 @@ +# The `Unit_test_logger_2D_space` Instrument + +*McStas: Test of 2 dimensional spatial logger* + +## Identification + +- **Site:** Tests_union +- **Author:** Mads Bertelsen +- **Origin:** ESS +- **Date:** June 2020 + +## Description + +```text +Test of 2 dimensional spatial logger that shows scattered intensity +projected onto a plane spanned by two of the coordinate axis, for +example z and x. +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/examples/Tests_union/Unit_test_logger_2D_space/Unit_test_logger_2D_space.instr) for `Unit_test_logger_2D_space.instr`. + +--- + +*Generated for mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/examples/Tests_union/Unit_test_logger_2D_space_time/Unit_test_logger_2D_space_time.md b/mcstas-comps/examples/Tests_union/Unit_test_logger_2D_space_time/Unit_test_logger_2D_space_time.md new file mode 100644 index 000000000..13a572b6d --- /dev/null +++ b/mcstas-comps/examples/Tests_union/Unit_test_logger_2D_space_time/Unit_test_logger_2D_space_time.md @@ -0,0 +1,31 @@ +# The `Unit_test_logger_2D_space_time` Instrument + +*McStas: Test of Union logger 2D space time that records spatial distribution of scattering in time steps* + +## Identification + +- **Site:** Tests_union +- **Author:** Mads Bertelsen +- **Origin:** ESS +- **Date:** June 2020 + +## Description + +```text + +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/examples/Tests_union/Unit_test_logger_2D_space_time/Unit_test_logger_2D_space_time.instr) for `Unit_test_logger_2D_space_time.instr`. + +--- + +*Generated for mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/examples/Tests_union/Unit_test_logger_3D_space/Unit_test_logger_3D_space.md b/mcstas-comps/examples/Tests_union/Unit_test_logger_3D_space/Unit_test_logger_3D_space.md new file mode 100644 index 000000000..ae9de6909 --- /dev/null +++ b/mcstas-comps/examples/Tests_union/Unit_test_logger_3D_space/Unit_test_logger_3D_space.md @@ -0,0 +1,31 @@ +# The `Unit_test_logger_3D_space` Instrument + +*McStas: Test of the Union_logger_3D_space* + +## Identification + +- **Site:** Tests_union +- **Author:** Mads Bertelsen +- **Origin:** ESS +- **Date:** June 2020 + +## Description + +```text + +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/examples/Tests_union/Unit_test_logger_3D_space/Unit_test_logger_3D_space.instr) for `Unit_test_logger_3D_space.instr`. + +--- + +*Generated for mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/examples/Tests_union/Unit_test_loggers_base/Unit_test_loggers_base.md b/mcstas-comps/examples/Tests_union/Unit_test_loggers_base/Unit_test_loggers_base.md new file mode 100644 index 000000000..94b3124b0 --- /dev/null +++ b/mcstas-comps/examples/Tests_union/Unit_test_loggers_base/Unit_test_loggers_base.md @@ -0,0 +1,31 @@ +# The `Unit_test_loggers_base` Instrument + +*McStas: Base instrument for logger unit tests* + +## Identification + +- **Site:** Tests_union +- **Author:** Mads Bertelsen +- **Origin:** ESS +- **Date:** June 2020 + +## Description + +```text + +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/examples/Tests_union/Unit_test_loggers_base/Unit_test_loggers_base.instr) for `Unit_test_loggers_base.instr`. + +--- + +*Generated for mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/examples/Tools/Histogrammer/Histogrammer.md b/mcstas-comps/examples/Tools/Histogrammer/Histogrammer.md new file mode 100644 index 000000000..8177673d4 --- /dev/null +++ b/mcstas-comps/examples/Tools/Histogrammer/Histogrammer.md @@ -0,0 +1,58 @@ +# The `Histogrammer` Instrument + +*McStas: Takes eventfile input (Virtual_input/Vitess/MCNP/Tripoli4/MCPL formats) and applies Monitor_nD to generate +histograms. Histograms can be chosen freely using the options string, see mcdoc Monitor_nD.comp* + +## Identification + +- **Site:** Tools +- **Author:** Peter Willendrup (peter.willendrup@risoe.dk) +- **Origin:** Risoe +- **Date:** 2007-03-19 + +## Description + +```text +Takes any possible McStas eventfile inputs (Virtual_input/Vitess/MCNP/Tripoli4 formats) and applies +Monitor_nD to generate user-selectable neutron histograms. + +The 'options' parameter allows to customize the type of histogram to generate. +We suggest: +"sphere theta phi outgoing previous" (this is the default) +"previous, multiple, auto, x, y, z, vx, vy, vz, hdiv, vdiv, tof, lambda" +"previous, auto, x, y" +"previous, auto, tof, lambda" + +Example: mcrun Histogrammer.instr MODE=0 +- Gives information on the input parameters + +Example: mcrun Histogrammer.instr filename="events.dat" MODE=1 options="sphere theta phi outgoing previous" +- Reads a Virtual_output generated event file and applies a spherical PSD +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| filename | string | Specifies input event file | 0 | +| MODE | int | Input file mode/format - 0 for help on usage 1=McStas,2=Vitess,3=MCNP,4=Tripoli4,5=MCPL | 0 | +| options | string | Specifies the histogramming rules used by Monitor_nD. | "sphere theta phi outgoing previous" | +| bufsize | int | Vitess_input 'buffersize' parameter - see mcdoc Vitess_input | 10000 | +| xwidth | m | Horizontal width of detector, or diameter for banana,cylinder and shpere geometry | 0.1 | +| yheight | m | Vertical height of detector, for plate, cylinder, banana shape | 0.1 | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/examples/Tools/Histogrammer/Histogrammer.instr) for `Histogrammer.instr`. +- Virtual_input component (McStas event file) +- Vitess_input component (Vitess event file) +- Virtual_mcnp_input component (MCNP PTRAC event file) +- Virtual_tripoli4_input component (Tripoli4 BATCH event file) +- Monitor_nD component (detector/histogrammer) +- MCPL_input component (MCPL event file) + +--- + +*Generated for mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/examples/Tools/MCPL2Mantid_flat/MCPL2Mantid_flat.md b/mcstas-comps/examples/Tools/MCPL2Mantid_flat/MCPL2Mantid_flat.md new file mode 100644 index 000000000..9b5279e5a --- /dev/null +++ b/mcstas-comps/examples/Tools/MCPL2Mantid_flat/MCPL2Mantid_flat.md @@ -0,0 +1,58 @@ +# The `MCPL2Mantid_flat` Instrument + +*McStas: Instrument taking MCPL input giving Mantid-compatible NeXus output.* + +## Identification + +- **Site:** Tools +- **Author:** Peter Willendrup +- **Origin:** DTU +- **Date:** 2019-03 + +## Description + +```text +Instrument taking MCPL input giving Mantid-compatible NeXus output. + +1) The instrument coordintate system coincides with the MCPL-file coordinates. +2) The sourceMantid position is freely positionable in that space +3) The sampleMantid position is freely positionable in that space +4) The detector is a single, flat pixellated panel freely positionable in that space + +An example mcpl input file corresponding to the default geometry can be generated using +templateSANS_MCPL +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| MCPLfile | str | Defines the MCPL input file to process | "my.mcpl.gz" | +| sourceX | m | sourceMantid x-position wrt. MCPL coords | 0 | +| sourceY | m | sourceMantid y-position wrt. MCPL coords | 0 | +| sourceZ | m | sourceMantid z-position wrt. MCPL coords | -10 | +| sampleX | m | sampleMantid x-position wrt. MCPL coords | 0 | +| sampleY | m | sampleMantid y-position wrt. MCPL coords | 0 | +| sampleZ | m | sampleMantid z-position wrt. MCPL coords | 0 | +| detectorX | m | nD_Mantid_0 x-position wrt. MCPL coords | 0 | +| detectorY | m | nD_Mantid_0 y-position wrt. MCPL coords | 0 | +| detectorZ | m | nD_Mantid_0 z-position wrt. MCPL coords | 6 | +| detrotX | m | nD_Mantid_0 x-rotation wrt. MCPL coords | 0 | +| detrotY | m | nD_Mantid_0 y-rotation wrt. MCPL coords | 0 | +| detrotZ | m | nD_Mantid_0 z-rotation wrt. MCPL coords | 0 | +| xwidth | m | nD_Mantid_0 xwidth | 0.6 | +| yheight | m | nD_Mantid_0 yheight | 0.6 | +| xbins | 1 | nD_Mantid_0 x-bins | 128 | +| ybins | 1 | nD_Mantid_0 y-bins | 128 | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/examples/Tools/MCPL2Mantid_flat/MCPL2Mantid_flat.instr) for `MCPL2Mantid_flat.instr`. +- +- MCPL website at https://mctools.github.io/mcpl/ + +--- + +*Generated for mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/examples/Tools/MCPL2hist/MCPL2hist.md b/mcstas-comps/examples/Tools/MCPL2hist/MCPL2hist.md new file mode 100644 index 000000000..9a3b28444 --- /dev/null +++ b/mcstas-comps/examples/Tools/MCPL2hist/MCPL2hist.md @@ -0,0 +1,44 @@ +# The `MCPL2hist` Instrument + +*McStas: Flexible histogramming instrument file for processing MCPL input files using Monitor_nD* + +## Identification + +- **Site:** Tools +- **Author:** Peter Willendrup +- **Origin:** DTU +- **Date:** 2017-04 + +## Description + +```text +Flexible histogramming instrument file for processing MCPL input files using Monitor_nD. + +Example1: Multiple 1D histograms of position, velocity, divergence, time and wavelength, use +NDoptions=1 defines options="previous, multiple, auto, x, y, z, vx, vy, vz, hdiv, vdiv, tof, lambda" + +Example2: 2D x-y plot of beam cross section: +NDoptions=2 defines options="previous, auto, x, y" + +Example3: 2D TOF-lambda plot of beam: +NDoptions=3 defines options="previous, auto, tof, lambda" +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| MCPLfile | str | Defines the MCPL input file to process | "my.mcpl.gz" | +| NDoptions | int | Defines what Monitor_nD measures, see example list | 1 | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/examples/Tools/MCPL2hist/MCPL2hist.instr) for `MCPL2hist.instr`. +- +- MCPL website at https://mctools.github.io/mcpl/ + +--- + +*Generated for mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/examples/Tools/MCPL_filter_energy/MCPL_filter_energy.md b/mcstas-comps/examples/Tools/MCPL_filter_energy/MCPL_filter_energy.md new file mode 100644 index 000000000..d1366b6f3 --- /dev/null +++ b/mcstas-comps/examples/Tools/MCPL_filter_energy/MCPL_filter_energy.md @@ -0,0 +1,39 @@ +# The `MCPL_filter_energy` Instrument + +*McStas: Filtering-by-energy instrument file for processing MCPL input files* + +## Identification + +- **Site:** Tools +- **Author:** Peter Willendrup +- **Origin:** DTU +- **Date:** 2019-03 + +## Description + +```text +Example: Split an MCPL file at an energy of 0.5 meV +mcrun MCPL_filter_energy MCPLfile=my.mcpl.gz energy=0.5 +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| MCPLfile | str | Defines the MCPL input file to process | "my.mcpl.gz" | +| energy | meV | Defines a threshold energy to split the MCPLfile at | 40 | +| max | meV | Maximum energy in Monitor_nD plots | 100 | +| min | meV | Minimum energy in Monitor_nD plots | 0 | +| bins | 1 | Number of bins in Monitor_nD plots | 100 | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/examples/Tools/MCPL_filter_energy/MCPL_filter_energy.instr) for `MCPL_filter_energy.instr`. +- +- MCPL website at https://mctools.github.io/mcpl/ + +--- + +*Generated for mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/examples/Tools/MCPL_filter_radius/MCPL_filter_radius.md b/mcstas-comps/examples/Tools/MCPL_filter_radius/MCPL_filter_radius.md new file mode 100644 index 000000000..48e08e54b --- /dev/null +++ b/mcstas-comps/examples/Tools/MCPL_filter_radius/MCPL_filter_radius.md @@ -0,0 +1,36 @@ +# The `MCPL_filter_radius` Instrument + +*McStas: Filtering-by-radius instrument file for processing MCPL input files* + +## Identification + +- **Site:** Tools +- **Author:** Peter Willendrup +- **Origin:** DTU +- **Date:** 2019-03 + +## Description + +```text +Example: Split an MCPL file at a radius of 2.5 m from the origin +mcrun MCPL_filter_radius MCPLfile=my.mcpl.gz radius=2.5 +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| MCPLfile | str | Defines the MCPL input file to process | "my.mcpl.gz" | +| radius | m | Defines a threshold distance to split the MCPLfile at | 2.5 | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/examples/Tools/MCPL_filter_radius/MCPL_filter_radius.instr) for `MCPL_filter_radius.instr`. +- +- MCPL website at https://mctools.github.io/mcpl/ + +--- + +*Generated for mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/examples/Tools/MCPL_filter_wavelength/MCPL_filter_wavelength.md b/mcstas-comps/examples/Tools/MCPL_filter_wavelength/MCPL_filter_wavelength.md new file mode 100644 index 000000000..93b1403af --- /dev/null +++ b/mcstas-comps/examples/Tools/MCPL_filter_wavelength/MCPL_filter_wavelength.md @@ -0,0 +1,39 @@ +# The `MCPL_filter_wavelength` Instrument + +*McStas: Filtering-by-wavelength instrument file for processing MCPL input files* + +## Identification + +- **Site:** Tools +- **Author:** Peter Willendrup +- **Origin:** DTU +- **Date:** 2019-03 + +## Description + +```text +Example: Split an MCPL file at a wavelength of 0.5 AA +mcrun MCPL_filter_wavelength MCPLfile=my.mcpl.gz wavelength=0.5 +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| MCPLfile | str | Defines the MCPL input file to process | "my.mcpl.gz" | +| wavelength | AA | Defines a threshold wavelength to split the MCPLfile at | 0.5 | +| max | AA | Maximum wavelength in Monitor_nD plots | 20 | +| min | AA | Minimum wavelength in Monitor_nD plots | 0 | +| bins | 1 | Number of bins in Monitor_nD plots | 100 | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/examples/Tools/MCPL_filter_wavelength/MCPL_filter_wavelength.instr) for `MCPL_filter_wavelength.instr`. +- +- MCPL website at https://mctools.github.io/mcpl/ + +--- + +*Generated for mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/examples/Tools/vinput2mcpl/vinput2mcpl.md b/mcstas-comps/examples/Tools/vinput2mcpl/vinput2mcpl.md new file mode 100644 index 000000000..ba358571f --- /dev/null +++ b/mcstas-comps/examples/Tools/vinput2mcpl/vinput2mcpl.md @@ -0,0 +1,36 @@ +# The `vinput2mcpl` Instrument + +*McStas: Instrument for conversion of Virtual input files to MCPL.* + +## Identification + +- **Site:** Tools +- **Author:** Peter Willendrup +- **Origin:** DTU +- **Date:** Jan 7th 2023 + +## Description + +```text +Instrument for conversion of Virtual input files to MCPL. + +Example: vinput2mcpl inputfile=C8_L214.dat outputfile=C8_L214.mcpl,gz +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| inputfile | | | "input" | +| outputfile | | | "output" | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/examples/Tools/vinput2mcpl/vinput2mcpl.instr) for `vinput2mcpl.instr`. +- + +--- + +*Generated for mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/examples/Union_demos/Bispectral/Bispectral.md b/mcstas-comps/examples/Union_demos/Bispectral/Bispectral.md new file mode 100644 index 000000000..00f969d3b --- /dev/null +++ b/mcstas-comps/examples/Union_demos/Bispectral/Bispectral.md @@ -0,0 +1,37 @@ +# The `Bispectral` Instrument + +*McStas: Example of bispectral extraction on ESS Butterfly moderator using Union components* + +## Identification + +- **Site:** ESS +- **Author:** Mads Bertelsen (mads.bertelsen@ess.eu) +- **Origin:** ESS +- **Date:** October 2025 + +## Description + +```text +Bispectral switch conisting of Si blades with supermirror coating and Cu walls, +with different coatings. Materials are simulated using NCrystal. + +Example: mcrun Bispectral.instr l_min=0.5 l_max=6.0 +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| l_min | AA | Shortest simulated wavelength | 0.5 | +| l_max | AA | Longest simulated wavelength | 6.0 | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/examples/Union_demos/Bispectral/Bispectral.instr) for `Bispectral.instr`. +- A reference/HTML link for more information + +--- + +*Generated for mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/examples/Union_demos/Demonstration/Demonstration.md b/mcstas-comps/examples/Union_demos/Demonstration/Demonstration.md new file mode 100644 index 000000000..d6206b660 --- /dev/null +++ b/mcstas-comps/examples/Union_demos/Demonstration/Demonstration.md @@ -0,0 +1,39 @@ +# The `Demonstration` Instrument + +*McStas: General demonstration of Union* + +## Identification + +- **Site:** Union_demos +- **Author:** Mads Bertelsen +- **Origin:** University of Copenhagen +- **Date:** September 2015 + +## Description + +```text +Demonstration of Union components. Here four different powder samples are +placed in a can each connected to a weird sample holder and contained in +a cryostat. This unrealistic example is meant to show the syntax and the +new possibilities when using the Union components. +With the standard source only two of the samples are illuminated, yet +multiple scattering occur and events are thus taking place in the last +two samples. +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| stick_displacement | m | height displacement of sample stick | 0 | +| transmission_picture | 1 | if 1, a transmission image of the entire cryostat is made instead of a scattering experiment | 0 | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/examples/Union_demos/Demonstration/Demonstration.instr) for `Demonstration.instr`. + +--- + +*Generated for mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/examples/Union_demos/External_component/External_component.md b/mcstas-comps/examples/Union_demos/External_component/External_component.md new file mode 100644 index 000000000..99290b182 --- /dev/null +++ b/mcstas-comps/examples/Union_demos/External_component/External_component.md @@ -0,0 +1,35 @@ +# The `External_component` Instrument + +*McStas: Union example: External_component* + +## Identification + +- **Site:** Union_demos +- **Author:** Mads Bertelsen +- **Origin:** University of Copenhagen +- **Date:** September 2015 + +## Description + +```text +Example showing the use of the "number_of_activations" parameter to include +an external component into an ensamle of Union components + +Example: stick_displacement=0 Detector: detector_I=189.144 +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| stick_displacement | m | height displacement of sample stick | 0 | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/examples/Union_demos/External_component/External_component.instr) for `External_component.instr`. + +--- + +*Generated for mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/examples/Union_demos/Laue_camera/Laue_camera.md b/mcstas-comps/examples/Union_demos/Laue_camera/Laue_camera.md new file mode 100644 index 000000000..2454db626 --- /dev/null +++ b/mcstas-comps/examples/Union_demos/Laue_camera/Laue_camera.md @@ -0,0 +1,45 @@ +# The `Laue_camera` Instrument + +*McStas: Union example: Laue camera* + +## Identification + +- **Site:** Union_demos +- **Author:** Mads Bertelsen +- **Origin:** University of Copenhagen +- **Date:** September 2015 + +## Description + +```text +Laue camera using Union components for the sample +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| delta_d_d | | Lattice spacing variation in sample | 1e-4 | +| mosaic | arcmin | Sample mosaicity | 5 | +| lam0 | AA | Source mean wavelength | 7 | +| dlam | AA | Source wavelength spread | 5 | +| radius | m | Sample radius | 0.01 | +| height | m | Sample height | 0.01 | +| x_rotation_geometry | deg | Rotates union geometry component around x | 0 | +| y_rotation_geometry | deg | Rotates union geometry component around y | 0 | +| x_rotation_geometry_ref | deg | Rotates reference component around x | 0 | +| y_rotation_geometry_ref | deg | Rotates reference component around y | 0 | +| x_rotation_process | deg | Rotates crystal process (crystal orientation), x | 0 | +| y_rotation_process | deg | Rotates crystal process (crystal orientation), y | 0 | +| z_rotation_process | deg | Rotates crystal process (crystal orientation), z | 0 | +| geometry_interact | | p_interact of Union sample | 0 | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/examples/Union_demos/Laue_camera/Laue_camera.instr) for `Laue_camera.instr`. + +--- + +*Generated for mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/examples/Union_demos/Manual_example/Manual_example.md b/mcstas-comps/examples/Union_demos/Manual_example/Manual_example.md new file mode 100644 index 000000000..ab91833a9 --- /dev/null +++ b/mcstas-comps/examples/Union_demos/Manual_example/Manual_example.md @@ -0,0 +1,33 @@ +# The `Manual_example` Instrument + +*McStas: Union example from Union project manual* + +## Identification + +- **Site:** Union_demos +- **Author:** Mads Bertelsen +- **Origin:** University of Copenhagen +- **Date:** September 2015 + +## Description + +```text +Example on using Union components from the Union project manual + +Example: Detector: Banana_monitor_I=3.823e-05 +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/examples/Union_demos/Manual_example/Manual_example.instr) for `Manual_example.instr`. + +--- + +*Generated for mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/examples/Union_demos/Sample_picture_replica/Sample_picture_replica.md b/mcstas-comps/examples/Union_demos/Sample_picture_replica/Sample_picture_replica.md new file mode 100644 index 000000000..e61fd95ca --- /dev/null +++ b/mcstas-comps/examples/Union_demos/Sample_picture_replica/Sample_picture_replica.md @@ -0,0 +1,33 @@ +# The `Sample_picture_replica` Instrument + +*McStas: Union demo: Reconstruction of a sample holder from picture.* + +## Identification + +- **Site:** Union_demos +- **Author:** Mads Bertelsen +- **Origin:** University of Copenhagen +- **Date:** September 2015 + +## Description + +```text +Reconstruction of a sample holder from picture. +All arms are 30 cm below the actual center point in order to avoid arms +in the mcdisplay picture. +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/examples/Union_demos/Sample_picture_replica/Sample_picture_replica.instr) for `Sample_picture_replica.instr`. + +--- + +*Generated for mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/examples/Union_demos/Tagging_demo/Tagging_demo.md b/mcstas-comps/examples/Union_demos/Tagging_demo/Tagging_demo.md new file mode 100644 index 000000000..fb80e7a5c --- /dev/null +++ b/mcstas-comps/examples/Union_demos/Tagging_demo/Tagging_demo.md @@ -0,0 +1,44 @@ +# The `Tagging_demo` Instrument + +*McStas: Union demo: How to use tagging* + +## Identification + +- **Site:** Union_demos +- **Author:** Mads Bertelsen +- **Origin:** Johns Hopkins University, Baltimore +- **Date:** May 2016 + +## Description + +```text +Powder in Al can + +Example: Detector: Banana_monitor_I=9.84391e-09 +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| material_data_file | string | Name of data file for powder sample | "Cu.laz" | +| E0 | meV | Source mean energy | 100 | +| dE | meV | Source energy spread | 2 | +| sample_radius | m | Sample radius | 0.01 | +| sample_height | m | Sample height | 0.01 | +| pack | 1 | Packing factor, 1 is full density | 1 | +| sigma_inc | barns | Incoherent cross section for powder sample | 2.2 | +| sigma_abs | barns | Absorption cross section for powder sample | 15.12 | +| Vc | AA | Unit cell volume for powder sample | 47.22 | +| geometry_interact | 1 | Fraction of beam to interact with geometry | 0.5 | +| incoherent_fraction | 1 | Fraction of scattered events that select the powder process | 0.2 | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/examples/Union_demos/Tagging_demo/Tagging_demo.instr) for `Tagging_demo.instr`. + +--- + +*Generated for mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/examples/Union_demos/Time_of_flight/Time_of_flight.md b/mcstas-comps/examples/Union_demos/Time_of_flight/Time_of_flight.md new file mode 100644 index 000000000..9a39a8519 --- /dev/null +++ b/mcstas-comps/examples/Union_demos/Time_of_flight/Time_of_flight.md @@ -0,0 +1,34 @@ +# The `Time_of_flight` Instrument + +*McStas: Simple test instrument for sample component.* + +## Identification + +- **Site:** Union_demos +- **Author:** Mads Bertelsen +- **Origin:** University of Copenhagen +- **Date:** September 2015 + +## Description + +```text +simple test instrument for sample component. + +Example: stick_displacement=0 Detector: banana_detector_tof_I=566.295 +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| stick_displacement | m | Displacement of sample stick | 0 | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/examples/Union_demos/Time_of_flight/Time_of_flight.instr) for `Time_of_flight.instr`. + +--- + +*Generated for mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/examples/Union_sample_environments/SE_usage_example/SE_usage_example.md b/mcstas-comps/examples/Union_sample_environments/SE_usage_example/SE_usage_example.md new file mode 100644 index 000000000..c4c1fdc75 --- /dev/null +++ b/mcstas-comps/examples/Union_sample_environments/SE_usage_example/SE_usage_example.md @@ -0,0 +1,34 @@ +# The `SE_usage_example` Instrument + +*McStas: Sample in cryostat included from other instrument file* + +## Identification + +- **Site:** Union_sample_environments +- **Author:** Mads Bertelsen +- **Origin:** ESS DMSC +- **Date:** July 2024 + +## Description + +```text +This instrument demonstrates how to include a sample environment +from another instrument file and add a sample to the Union system. +See the cryostat_example.instr file for details on the used sample +environment. +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/examples/Union_sample_environments/SE_usage_example/SE_usage_example.instr) for `SE_usage_example.instr`. + +--- + +*Generated for mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/examples/Union_sample_environments/cryostat_example/cryostat_example.md b/mcstas-comps/examples/Union_sample_environments/cryostat_example/cryostat_example.md new file mode 100644 index 000000000..45bf56e4c --- /dev/null +++ b/mcstas-comps/examples/Union_sample_environments/cryostat_example/cryostat_example.md @@ -0,0 +1,40 @@ +# The `Cryostat_example` Instrument + +*McStas: Cryostat model made with Union components that can be included in other instruments* + +## Identification + +- **Site:** Union_sample_environments +- **Author:** Mads Bertelsen +- **Origin:** ESS DMSC +- **Date:** July 2024 + +## Description + +```text +Model of a cryostat made using Union components that can be included in another +instrument or executed on its own. Several components are marked with the +removable keyword, meaning these are not included when this instrument is included +in another McStas instrument. This includes the source, but also the Union components +init, master and stop, which the instrument including this sample environment will need +to supply. This is done such that a sample can easily be added. +Only a simple model of Al is used for this cryostat, and it has been named Al_cryostat +to avoid conflicting with existing models of Al in the instrument file that includes this +sample environment. +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| stick_displacement | m | height displacement of sample stick | 0 | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/examples/Union_sample_environments/cryostat_example/cryostat_example.instr) for `cryostat_example.instr`. + +--- + +*Generated for mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/examples/Union_validation/Incoherent_validation/Incoherent_validation.md b/mcstas-comps/examples/Union_validation/Incoherent_validation/Incoherent_validation.md new file mode 100644 index 000000000..90d165797 --- /dev/null +++ b/mcstas-comps/examples/Union_validation/Incoherent_validation/Incoherent_validation.md @@ -0,0 +1,39 @@ +# The `Incoherent_validation` Instrument + +*McStas: Validation of Union components against incoherent scattering component* + +## Identification + +- **Site:** Union_validation +- **Author:** Mads Bertelsen +- **Origin:** Johns Hopkins University, Baltimore +- **Date:** May 2016 + +## Description + +```text +Validation of Union components against incoherent scattering component +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| comp_select | | 1: Union components, 2: Incoherent | 1 | +| sample_radius | m | Radius of sample | 0.01 | +| sample_height | m | Height of sample | 0.01 | +| pack | | Packing factor | 1 | +| sigma_inc_vanadium | barns | Incoherent cross-section | 5.08 | +| sigma_abs_vanadium | barns | Absorption cross-section | 5.08 | +| Vc_vanadium | AA^3 | Unit cell volume | 13.827 | +| geometry_interact | | p_interact for the Union sample | 0.5 | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/examples/Union_validation/Incoherent_validation/Incoherent_validation.instr) for `Incoherent_validation.instr`. + +--- + +*Generated for mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/examples/Union_validation/Mirror_validation/Mirror_validation.md b/mcstas-comps/examples/Union_validation/Mirror_validation/Mirror_validation.md new file mode 100644 index 000000000..0ba274983 --- /dev/null +++ b/mcstas-comps/examples/Union_validation/Mirror_validation/Mirror_validation.md @@ -0,0 +1,49 @@ +# The `Mirror_validation` Instrument + +*McStas: Comparison of Mirror component and Union version* + +## Identification + +- **Site:** ESS +- **Author:** Mads Bertelsen (mads.bertelsen@ess.eu) +- **Origin:** ESS +- **Date:** October 2025 + +## Description + +```text +Comparison of Mirror component and a similar system made with Union components +though with a key difference that a substrate is simulated which results in two +effects: At large angles where no reflection occur, there will be some intensity +from the scattering in the substrate. At very small angles, the reflectivity can +exceed the R0 of the mirror coating, as the ray can be reflected by the Ni +substrate. NCrystal is used to simulate the Ni substrate. +The instrument includes a detector that ignores scattered rays, which should +produce identical results for large angles, though there can still be a tiny +discrepancy at small angles especially if R0 of the mirror coating is lowered. + +Example: mcrun Mirror_validation.instr angle=0.7 +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| angle | deg | Rotation of sample | 0.4 | +| ref_component | 1 | 0 to use Union components, 1 for reference Mirror component | 0 | +| R0_value | 1 | Low-angle reflectivity | 0.99 | +| m_value | 1 | m-value of material | 3 | +| Qc_value | AA-1 | Critical scattering vector | 0.0219 | +| alpha_value | AA | Slope of reflectivity | 6.07 | +| W_value | AA-1 | Width of supermirror cut-off | 0.003 | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/examples/Union_validation/Mirror_validation/Mirror_validation.instr) for `Mirror_validation.instr`. +- A reference/HTML link for more information + +--- + +*Generated for mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/examples/Union_validation/Powder_validation/Powder_validation.md b/mcstas-comps/examples/Union_validation/Powder_validation/Powder_validation.md new file mode 100644 index 000000000..20cd636d5 --- /dev/null +++ b/mcstas-comps/examples/Union_validation/Powder_validation/Powder_validation.md @@ -0,0 +1,45 @@ +# The `Powder_validation` Instrument + +*McStas: Validation of Union powder against standard PowderN component.* + +## Identification + +- **Site:** Union_validation +- **Author:** Mads Bertelsen +- **Origin:** Johns Hopkins University, Baltimore +- **Date:** May 2016 + +## Description + +```text +Validation of Union powder against standard PowderN component. +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| comp_select | 1 | 1=Union components, 2=PowderN | 1 | +| material_data_file | string | Powder sample definition | "Al.laz" | +| E0 | meV | Source mean energy | 100 | +| dE | meV | Source energy spread | 2 | +| sample_radius | m | Sample radius | 0.01 | +| sample_height | m | Sample height | 0.01 | +| pack | | Sample packing factor | 1 | +| sigma_inc | barns | Sample incoherent cross-section | 0.0328 | +| sigma_abs | barns | Sample absorption cross-section | 0.924 | +| Vc | AA | Sample unit cell volume | 66.4 | +| geometry_interact | | p_interact for the sample | 0.5 | +| incoherent_fraction | | Fraction of statistics assigned for incoherent scattering | 0.2 | +| div | deg | Source divergence (angular w and h) | 1.5 | +| d_phi | deg | Restriction of Debye-Scherrer cones around scattering plane 0=full illumination | 30 | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/examples/Union_validation/Powder_validation/Powder_validation.instr) for `Powder_validation.instr`. + +--- + +*Generated for mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/examples/Union_validation/Single_crystal_validation/Single_crystal_validation.md b/mcstas-comps/examples/Union_validation/Single_crystal_validation/Single_crystal_validation.md new file mode 100644 index 000000000..66f6ee0e6 --- /dev/null +++ b/mcstas-comps/examples/Union_validation/Single_crystal_validation/Single_crystal_validation.md @@ -0,0 +1,53 @@ +# The `Single_crystal_validation` Instrument + +*McStas: Validation of Union single crystal against standard single_crystal.* + +## Identification + +- **Site:** Union_validation +- **Author:** Mads Bertelsen +- **Origin:** Johns Hopkins University, Baltimore +- **Date:** May 2016 + +## Description + +```text +Validation of Union single crystal against standard single_crystal. +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| comp_select | 1 | 1: Union components, 2: Single crystal | 1 | +| material_data_file | string | Sample material defintion | "YBaCuO.lau" | +| sigma_inc | barns | Sample incoherent cross-section | 2.105 | +| my_absorption_union | m^-1 | Sample mass-absorption coefficient | 8.55 | +| sigma_abs_sc | banrs | Sample absorption cross-section | 0 | +| delta_d_d | | Sample latttice spacing variation | 1e-4 | +| mosaic | arcmin | Sample mosaicity | 5 | +| unit_cell_volume | AA | Sample unit cell volume | 173.28 | +| lam0 | AA | Source mean wavelength | 7 | +| dlam | AA | Source wavelength spread | 5 | +| xwidth | m | Sample x-dimension | 0.01 | +| yheight | m | Sample y-dimension | 0.01 | +| zdepth | m | Sample z-dimension | 0.01 | +| x_rotation_geometry | deg | Rotates union geometry component around x | 0 | +| y_rotation_geometry | deg | Rotates union geometry component around y | 0 | +| x_rotation_geometry_ref | deg | Rotates reference component around x | 0 | +| y_rotation_geometry_ref | deg | Rotates reference component around y | 0 | +| x_rotation_process | deg | Rotates crystal process (crystal orientation), x | 0 | +| y_rotation_process | deg | Rotates crystal process (crystal orientation), y | 0 | +| geometry_interact | deg | Rotates crystal process (crystal orientation), z | 0 | +| PG | | Sample PG-mode | 0 | +| powder | | Sample powder-mode | 0 | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/examples/Union_validation/Single_crystal_validation/Single_crystal_validation.instr) for `Single_crystal_validation.instr`. + +--- + +*Generated for mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/examples/elearning/Radiography_absorbing_edge/Radiography_absorbing_edge.md b/mcstas-comps/examples/elearning/Radiography_absorbing_edge/Radiography_absorbing_edge.md new file mode 100644 index 000000000..9f48f3a36 --- /dev/null +++ b/mcstas-comps/examples/elearning/Radiography_absorbing_edge/Radiography_absorbing_edge.md @@ -0,0 +1,42 @@ +# The `Radiography_absorbing_edge` Instrument + +*McStas: Instrument to study radiographic imaging of an absobing edge sample used for "Spacial resolution in neutron imaging" Moodle quiz in the Virtual Neutrons for Teaching project +http://vnt.nmi3.org/moodle/mod/quiz/view.php?id=56* + +## Identification + +- **Site:** elearning +- **Author:** Linda Udby and Peter Willendrup +- **Origin:** University of Copenhagen +- **Date:** July 4th, 2014 + +## Description + +```text +Instrument to study radiographic imaging of an absobing edge sample used for "Spacial resolution in neutron imaging" Moodle quiz in the Virtual Neutrons for Teaching project +http://vnt.nmi3.org/moodle/mod/quiz/view.php?id=56 + +Example: mcrun Radiography_absorbing_edge.instr -n5e8 l=0.2 -d EdgeImaging +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| D | m | Diameter of pinhole before sample | 0.01 | +| L | m | Distance between pinhole and sample | 5 | +| l | m | Distance between sample and detector | 0.10 | +| sigma_abs | barns | Absorption cross-section of the sample | 5.08 | +| Vc | AA^3 | Unit cell volume in the sample | 13.827 | +| sample_z | | | 0.01 | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/examples/elearning/Radiography_absorbing_edge/Radiography_absorbing_edge.instr) for `Radiography_absorbing_edge.instr`. +- http://vnt.nmi3.org/mcstas-web + +--- + +*Generated for mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/examples/elearning/Reflectometer/Reflectometer.md b/mcstas-comps/examples/elearning/Reflectometer/Reflectometer.md new file mode 100644 index 000000000..376779374 --- /dev/null +++ b/mcstas-comps/examples/elearning/Reflectometer/Reflectometer.md @@ -0,0 +1,55 @@ +# The `Reflectometer` Instrument + +*McStas: Simple reflectometer with two slits, a sample (either none, mirror or multilayer), +and a detector. For use in the OMIC summer school 2012.* + +## Identification + +- **Site:** elearning +- **Author:** Pia Jensen (bozack@bozack.dk) +- **Origin:** Niels Bohr Instute, University of Copenhagen +- **Date:** 13.08.2012 + +## Description + +```text +This simple reflectometer consists of a source (using the standard PSI parameters +for three Maxwellian distributions), on which the user can control the bandwidth +by simply choosing a minumum and maximum value. Two slits handle the divergence +distribution on the sample. The sample itself can either be an empty spot, a simple +mirror, or a multilayer. A simple PSD detector is used for detecting the scattered +beam. The scattering is in the horizontal plane. + +Example: mcrun reflectometer.instr +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| lambda_min | AA | Minimum wavelength from source | 5.3 | +| lambda_max | AA | Maximum wavelength from source | 5.45 | +| slittranslation | m | Translation of slit (horizontal) | 0 | +| sampletranslation | m | Sample translation (horizontal) | 0 | +| slitwidth | m | Width of slit pinholes | 0.001 | +| slitheight | m | Height of slit pinholes | 0.002 | +| dist_source2slit | m | Distance between source and first slit | 1 | +| dist_slit2slit | m | Distance between slits | 3.2 | +| dist_slit2sample | m | Distance between second slit and sample | 0.18 | +| dist_sample2detector | m | Distance between sample and detector | 2 | +| sampletype | 1 | Sample type: 0 none, 1 mirror, 2+ multilayer | 1 | +| samplesize | m | Side-length of the (quadratic) sample plate | 0.15 | +| substratethickness | m | Thickness of the substrate | 0.003 | +| MR_Qc | AA | Critical Q-vector length of mirror sample | 0.15 | +| sampleangle | deg | Rotation angle of sample (theta) | 2.5 | +| detectorangle | deg | Rotation angle of detector (2 theta) | 5 | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/examples/elearning/Reflectometer/Reflectometer.instr) for `Reflectometer.instr`. + +--- + +*Generated for mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/examples/elearning/SANSsimple/SANSsimple.md b/mcstas-comps/examples/elearning/SANSsimple/SANSsimple.md new file mode 100644 index 000000000..a05b10b5f --- /dev/null +++ b/mcstas-comps/examples/elearning/SANSsimple/SANSsimple.md @@ -0,0 +1,48 @@ +# The `SANS2_liposomes` Instrument + +*McStas: SANSsimple from e-neutrons.org* + +## Identification + +- **Site:** elearning +- **Author:** Linda +- **Origin:** Copenhagen +- **Date:** 05.09.10 + +## Description + +```text +Instrument longer description (type, elements, usage...) + +Example: mcrun SANSsimple.instr +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| pinhole_rad | m | radius of the collimating pinholes | 0.004 | +| LC | m | length of the collimator - distance between pinholes | 3 | +| LD | m | distance between the last pinhole slit and detector | 3 | +| Lambda | AA | Average wavelength traced from source | 6 | +| DLambda | AA | Wavelength band +/- traced from source | 0.6 | +| R | AA | radius of the hard, monodisperse spheres in the sample | 400 | +| dR | AA | Normal variance of Radius | 0 | +| dbilayer | AA | Thickness of spherical shell, only relevant when SAMPLE==2 | 35 | +| PHI | 1 | Volumefraction of the hard, monodisperse spheres in the sample | 1e-2 | +| Delta_Rho | fm/AA^3 | Volume specific scattering length density contrast of the hard, monodisperse spheres in the sample as compared to the solution | 0.6 | +| Qmax | AA^-1 | Maximum scattering vector allowed by geometry to hit the detector area | 0.3 | +| BEAMSTOP | 0/1 | If set, the beamstop is inserted in front of the detector in order to block the transmitted beam | 1 | +| SAMPLE | 0/1/2 | When SAMPLE==0, no sample is used, SAMPLE==1 sample is composed of hard spheres, if SAMPLE==2 sample is composed ofspherical shells. | 1 | +| Sigma_a | barn | Absorption crossection of the sample | 0 | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/examples/elearning/SANSsimple/SANSsimple.instr) for `SANSsimple.instr`. +- A reference/HTML link for more information + +--- + +*Generated for mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/examples/elearning/SANSsimpleSpheres/SANSsimpleSpheres.md b/mcstas-comps/examples/elearning/SANSsimpleSpheres/SANSsimpleSpheres.md new file mode 100644 index 000000000..f0693b3b6 --- /dev/null +++ b/mcstas-comps/examples/elearning/SANSsimpleSpheres/SANSsimpleSpheres.md @@ -0,0 +1,46 @@ +# The `SANSsimpleSpheres` Instrument + +*McStas: SANS_simple from e-neutrons.org, including polydisperse hard spheres.* + +## Identification + +- **Site:** elearning +- **Author:** Linda Udby (udby@nbi.dk) +- **Origin:** Niels Bohr Institute +- **Date:** 20.09.2016 + +## Description + +```text +Instrument longer description (type, elements, usage...) +This simple SANS instrument is used for the SANS simulation quiz on th e-learning platform www.e-neutrons.org + +Example: mcrun SANSsimple.instr Lambda=10 DLambda=0 +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| pinhole_rad | m | radius of the collimating pinholes. Also used to optimise the sample size. | 0.004 | +| LC | m | length of the collimator - distance between pinholes | 3 | +| LD | m | distance between the last pinhole slit and detector | 3 | +| Lambda | Angs | Average wavelength traced from source | 6 | +| DLambda | Angs | Wavelength band +/- traced from source | 0.001 | +| R | m | average radius of the monodisperse spheres in the sample | 400 | +| dR | AA | Normal variance of the radius of spheres in the sample. If zero the sample is monodisperse. | 0 | +| PHI | 1 | Volumefraction of the hard spheres in the sample | 1e-2 | +| Delta_Rho | fm/Angs^3 | Volume specific scattering length density contrast of the hard, monodisperse spheres in the sample as compared to the solution | 0.6 | +| BEAMSTOP | 0/1 | If set, the beamstop is inserted in front of the detector in order to block the transmitted beam | 1 | +| SAMPLE | 0/1 | If set, a sample of spheres or spherical shells is inserted | 1 | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/examples/elearning/SANSsimpleSpheres/SANSsimpleSpheres.instr) for `SANSsimpleSpheres.instr`. +- https://sim.e-neutrons.org/instrument/intro-ns/SANSsimple + +--- + +*Generated for mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/examples/elearning/SimplePowderDiffractometer/SimplePowderDiffractometer.md b/mcstas-comps/examples/elearning/SimplePowderDiffractometer/SimplePowderDiffractometer.md new file mode 100644 index 000000000..54407998c --- /dev/null +++ b/mcstas-comps/examples/elearning/SimplePowderDiffractometer/SimplePowderDiffractometer.md @@ -0,0 +1,41 @@ +# The `SimplePowderDIffractometer` Instrument + +*McStas: SimplePowderDIffractometer from e-neutrons.org: A simple monochromatic powder diffractometer with variable bandwidth, aluminium sample container with powder sample (default nickel powder).* + +## Identification + +- **Site:** elearning +- **Author:** Linda Udby +- **Origin:** Your institution +- **Date:** 26/02/2015 + +## Description + +```text +A simple monochromatic powder diffractometer with variable bandwidth, collimation, aluminium sample container and powder sample. +The sample container (Al can) is optional. +A banana detector records scattering agles [20,100] + +Example: mcrun SimplePowderDIffractometer.instr coll=40, container=1 +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| lambda0 | AA | The mean value of incoming wavelegths (Gaussian distribution) | 1 | +| dlambda | AA | Gaussian sigma of incoming wavelength distribution | 0.005 | +| coll | arcmin | horizontal collimation | 120 | +| container | 1 | When >0 a 2mm thick Al pressed powder can is inserted around the sample | 0 | +| sample | 1 | 0=Ni, 1=Fe, 2=SiO2, 3=C_diamond, otherwise empty | 0 | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/examples/elearning/SimplePowderDiffractometer/SimplePowderDiffractometer.instr) for `SimplePowderDiffractometer.instr`. +- http://vnt.nmi3.org/mcstas-web + +--- + +*Generated for mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/misc/Annulus.md b/mcstas-comps/misc/Annulus.md new file mode 100644 index 000000000..28b15304d --- /dev/null +++ b/mcstas-comps/misc/Annulus.md @@ -0,0 +1,41 @@ +# The `Annulus` Component + +*McStas: A geometric shape without effect on neutron, for instrument display purpose.* + +## Identification + +- **Site:** +- **Author:** E. Farhi +- **Origin:** ILL +- **Date:** June 23rd 2009 + +## Description + +```text +An inactive geometrical shape (annulus), for drawing purposes only. +Derived from the Shape component + +Example: Annulus(radius=0.05, yheight=0.1) +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| outer_radius | m | Outer radius of geometry in (x,z) plane | 0 | +| inner_radius | m | Inner radius of geometry in (x,z) plane | 0 | +| radius | m | Outer radius of geometry in (x,z) plane | 0 | +| xwidth | m | Horiz. dimension of geometry as a width | 0 | +| yheight | m | Vert. | 0 | +| zdepth | m | Depth dimension of geometry | 0 | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/misc/Annulus.comp) for `Annulus.comp`. +- mcdoc page of Shape component + +--- + +*Generated on mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/misc/Circle.md b/mcstas-comps/misc/Circle.md new file mode 100644 index 000000000..1962c15e9 --- /dev/null +++ b/mcstas-comps/misc/Circle.md @@ -0,0 +1,39 @@ +# The `Circle` Component + +*McStas: A geometric shape without effect on neutron, for instrument display purpose.* + +## Identification + +- **Site:** +- **Author:** E. Farhi +- **Origin:** ILL +- **Date:** June 23rd 2009 + +## Description + +```text +An inactive geometrical shape (circle), for drawing purposes only. +Derived from the Shape component + +Example: Circle(radius=0.05, yheight=0.1) +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| radius | m | Outer radius of geometry in (x,z) plane | 0 | +| xwidth | m | Horiz. dimension of geometry | 0 | +| yheight | m | Vert. dimension of geometry | 0 | +| zdepth | m | Depth dimension of geometry | 0 | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/misc/Circle.comp) for `Circle.comp`. +- mcdoc page of Shape component + +--- + +*Generated on mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/misc/Cone.md b/mcstas-comps/misc/Cone.md new file mode 100644 index 000000000..6d1cd759f --- /dev/null +++ b/mcstas-comps/misc/Cone.md @@ -0,0 +1,39 @@ +# The `Cone` Component + +*McStas: An inactive geometrical shape (cone), for drawing purposes only. +Derived from the Shape component + +Example: Cone(radius=0.05, yheight=0.1)* + +## Identification + +- **Site:** +- **Author:** E. Farhi +- **Origin:** ILL +- **Date:** June 23rd 2009 + +## Description + +```text + +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| radius | m | Outer radius of geometry in (x,z) plane | 0 | +| xwidth | m | Horiz. dimension of geometry as a width | 0 | +| yheight | m | Vert. | 0 | +| zdepth | m | Depth dimension of geometry | 0 | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/misc/Cone.comp) for `Cone.comp`. +- mcdoc page of Shape component + +--- + +*Generated on mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/misc/Disc.md b/mcstas-comps/misc/Disc.md new file mode 100644 index 000000000..a85f16346 --- /dev/null +++ b/mcstas-comps/misc/Disc.md @@ -0,0 +1,42 @@ +# The `Disc` Component + +*McStas: A geometric shape without effect on neutron, for instrument display purpose.* + +## Identification + +- **Site:** +- **Author:** E. Farhi +- **Origin:** ILL +- **Date:** June 23rd 2009 + +## Description + +```text +An inactive geometrical shape (annulus), for drawing purposes only. +Derived from the Shape component + +Example: Annulus(radius=0.05, yheight=0.1) +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| radius | m | Outer radius of geometry in (x,z) plane | 0 | +| xwidth | m | Horiz. dimension of geometry | 0 | +| yheight | m | Vert. dimensuon of geometry | 0 | +| zdepth | m | Depth dimension of geometry | 0 | +| nx | 1 | x-comp of orientation vector | 0 | +| ny | 1 | y-comp of orientation vector | 1 | +| nz | 1 | z-comp of orientation vector | 0 | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/misc/Disc.comp) for `Disc.comp`. +- mcdoc page of Shape component + +--- + +*Generated on mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/misc/File.md b/mcstas-comps/misc/File.md new file mode 100644 index 000000000..c2e940336 --- /dev/null +++ b/mcstas-comps/misc/File.md @@ -0,0 +1,36 @@ +# The `File` Component + +*McStas: File.comp - allows to generate instrument/component input-files +from METADATA blocks* + +## Identification + +- **Site:** +- **Author:** Greg Tucker +- **Origin:** ESS +- **Date:** 2024 + +## Description + +```text +File.comp - allows to generate instrument/component input-files +from METADATA blocks - see test_File.instr for an example. +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| filename | string | Filename for output-file generated from metadata block | 0 | +| **metadatakey** | string | METADATA-key for looking up file content (may belong to File instance or another comp) | | +| keep | 1 | Flag to indicate if file should be kept post-simulation | 0 | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/misc/File.comp) for `File.comp`. + +--- + +*Generated on mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/misc/Legacy_circle.md b/mcstas-comps/misc/Legacy_circle.md new file mode 100644 index 000000000..6df82931f --- /dev/null +++ b/mcstas-comps/misc/Legacy_circle.md @@ -0,0 +1,56 @@ +# The `Legacy_circle` Component + +*McStas: A geometric shape without effect on neutron, for instrument display purpose.* + +## Identification + +- **Site:** +- **Author:** E. Farhi +- **Origin:** ILL +- **Date:** June 23rd 2009 + +## Description + +```text +An inactive geometrical shape, for drawing purposes only. +It does not propagate neutron, nor interact. +Shape: +Geometric shape may be a cylinder, a sphere, a box or any other shape +box/plate: xwidth x yheight x zdepth (thickness=0) +hollow box/plate:xwidth x yheight x zdepth and thickness>0 +cylinder: radius x yheight (thickness=0) +hollow cylinder: radius x yheight and thickness>0 +sphere: radius (yheight=0 thickness=0) +hollow sphere: radius and thickness>0 (yheight=0) +any shape: geometry=OFF file + +The complex geometry option handles any closed non-convex polyhedra. +It computes the intersection points of the neutron ray with the object +transparently, so that it can be used like a regular sample object. +It supports the OFF and NOFF file format but not COFF (colored faces). +Such files may be generated from XYZ data using qhull/powercrust, and +viewed with geomview +The default size of the object depends of the OFF file data, but its +bounding box may be resized using xwidth,yheight and zdepth. + +Example: Shape(radius=0.05, yheight=0.1) +Shape(geometry="socket.off") +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| radius | m | Outer radius of sample in (x,z) plane | 0 | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/misc/Legacy_circle.comp) for `Legacy_circle.comp`. +- Geomview and Object File Format (OFF) +- Powercrust/qhull + +--- + +*Generated on mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/misc/MCPL_input.md b/mcstas-comps/misc/MCPL_input.md new file mode 100644 index 000000000..ad879c2e9 --- /dev/null +++ b/mcstas-comps/misc/MCPL_input.md @@ -0,0 +1,49 @@ +# The `MCPL_input` Component + +*McStas: Source-like component that reads neutron state parameters from an mcpl-file.* + +## Identification + +- **Site:** +- **Author:** Erik B Knudsen +- **Origin:** DTU Physics +- **Date:** Mar 2016 + +## Description + +```text +Source-like component that reads neutron state parameters from a binary mcpl-file. + +MCPL is short for Monte Carlo Particle List, and is a new format for sharing events +between e.g. MCNP(X), Geant4 and McStas. + +When used with MPI, the --ncount given on the commandline is overwritten by +#MPI nodes x #events in the file. + +Example: MCPL_input(filename=voutput,verbose=1,repeat_count=1,v_smear=0.1,pos_smear=0.001,dir_smear=0.01) +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| filename | str | Name of neutron mcpl file to read | 0 | +| polarisationuse | | If !=0 read polarisation vectors from file | 1 | +| verbose | | Print debugging information for first 10 particles read | 1 | +| Emin | meV | Lower energy bound. Particles found in the MCPL-file below the limit are skipped | 0 | +| Emax | meV | Upper energy bound. Particles found in the MCPL-file above the limit are skipped | FLT_MAX | +| repeat_count | 1 | Repeat contents of the MCPL file this number of times. NB: When running MPI, repeating is implicit and is taken into account by integer division. MUST be combined with _smear options! | 1 | +| v_smear | 1 | When repeating events, make a Gaussian MC choice within v_smear*V around particle velocity V | 0 | +| pos_smear | m | When repeating events, make a flat MC choice of position within pos_smear around particle starting position | 0 | +| dir_smear | deg | When repeating events, make a Gaussian MC choice of direction within dir_smear around particle direction | 0 | +| preload | | Load particles during INITIALIZE. On GPU preload is forced | 0 | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/misc/MCPL_input.comp) for `MCPL_input.comp`. + +--- + +*Generated on mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/misc/MCPL_input_once.md b/mcstas-comps/misc/MCPL_input_once.md new file mode 100644 index 000000000..87eb5f464 --- /dev/null +++ b/mcstas-comps/misc/MCPL_input_once.md @@ -0,0 +1,49 @@ +# The `MCPL_input_once` Component + +*McStas: Source-like component that reads neutron state parameters from a MCPL-file one time.* + +## Identification + +- **Site:** +- **Author:** Gregory S Tucker +- **Origin:** European Spallation Source ERIC +- **Date:** Sep 2024 + +## Description + +```text +Source-like component that reads neutron state parameters from a MCPL-file one time. + +MCPL is short for Monte Carlo Particle List, and is a format for sharing events +between e.g. MCNP(X), Geant4 and McStas. + +When used with MPI, the file contents are shared between workers with each accessing +approximately (#events in the file) / (#MPI nodes) + +%BUGS +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| filename | str | Name of neutron mcpl file to read. | 0 | +| polarisationuse | | If !=0 read polarisation vectors from file. | 1 | +| Emin | meV | Lower energy bound. Particles found in the MCPL-file below the limit are skipped. | 0 | +| Emax | meV | Upper energy bound. Particles found in the MCPL-file above the limit are skipped. | FLT_MAX | +| v_smear | 1 | Relative fraction for randomness in replayed particle velocity v *= (1 + v_smear * randpm1()) | 0 | +| pos_smear | m | Maximum extent of random position for replayed particles | 0 | +| dir_smear | deg | Maximum deviation of random direction for replayed particles | 0 | +| always_smear | | Finite values force particle property smearing for all particles | 0 | +| preload | | Load particles during INITIALIZE. On GPU preload is forced. | 0 | +| verbose | | Finite values may cause extra output (at some point in the future) | 0 | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/misc/MCPL_input_once.comp) for `MCPL_input_once.comp`. + +--- + +*Generated on mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/misc/MCPL_output.md b/mcstas-comps/misc/MCPL_output.md new file mode 100644 index 000000000..70ed4eb2b --- /dev/null +++ b/mcstas-comps/misc/MCPL_output.md @@ -0,0 +1,58 @@ +# The `MCPL_output` Component + +*McStas: Detector-like component that writes neutron state parameters into an mcpl-format +binary, virtual-source neutron file.* + +## Identification + +- **Site:** +- **Author:** Erik B Knudsen +- **Origin:** DTU Physics +- **Date:** Mar 2016 + +## Description + +```text +Detector-like component that writes neutron state parameters into an mcpl-format +binary, virtual-source neutron file. + +MCPL is short for Monte Carlo Particle List, and is a new format for sharing events +between e.g. MCNP(X), Geant4 and McStas. + +When used with MPI, the component will output #MPI nodes individual MCPL files that +can be merged using the mcpltool. + +MCPL_output allows a few flags to tweak the output files: +1. If use_polarisation is unset (default) the polarisation vector will not be stored (saving space) +2. If doubleprec is unset (default) data will be stored as 32 bit floating points, effectively cutting the output file size in half. +3. Extra information may be attached to each ray in the form of a userflag, a user-defined variable wich is packed into 32 bits. If +the user variable does not fit in 32 bits the value will be truncated and likely garbage. If more than one variable is to be attached to +each neutron this must be packed into the 32 bits. + +These features are set this way to keep file sizes as manageable as possible. + +Example: MCPL_output( filename="voutput", verbose=1, userflag="flag", userflagcomment="Neutron Id" ) +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| filename | str | Name of neutron file to write. If not given, the component name will be used. | 0 | +| weight_mode | 1 | weight_mode=1: record initial ray count in MCPL stat:sum entry and rescale particle weights. weight_mode=2: classical (deprecated) mode of outputting particle weights directly. | -1 | +| verbose | 1 | If 1) Print summary information for created MCPL file. 2) Also print summary of first 10 particles information stored in the MCPL file. >2) Also print information for first 10 particles as they are being stored by McStas | 0 | +| polarisationuse | 1 | Enable storing the polarisation state of the neutron. | 0 | +| doubleprec | 1 | Use double precision storage | 0 | +| userflag | 1 | Extra variable to attach to each neutron. The value of this variable will be packed into a 32 bit integer. | "" | +| userflagcomment | str | String variable to describe the userflag. If this string is empty (the default) no userflags will be stored. | "" | +| buffermax | 1 | Maximal number of events to save ( <= MAXINT), GPU/OpenACC only | 0 | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/misc/MCPL_output.comp) for `MCPL_output.comp`. + +--- + +*Generated on mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/misc/MCPL_output_noacc.md b/mcstas-comps/misc/MCPL_output_noacc.md new file mode 100644 index 000000000..df696c9cb --- /dev/null +++ b/mcstas-comps/misc/MCPL_output_noacc.md @@ -0,0 +1,58 @@ +# The `MCPL_output_noacc` Component + +*McStas: Detector-like component that writes neutron state parameters into an mcpl-format +binary, virtual-source neutron file.* + +## Identification + +- **Site:** +- **Author:** Erik B Knudsen +- **Origin:** DTU Physics +- **Date:** Mar 2016 + +## Description + +```text +Detector-like component that writes neutron state parameters into an mcpl-format +binary, virtual-source neutron file. + +MCPL is short for Monte Carlo Particle List, and is a new format for sharing events +between e.g. MCNP(X), Geant4 and McStas. + +When used with MPI, the component will output #MPI nodes individual MCPL files that +can be merged using the mcpltool. + +MCPL_output allows a few flags to tweak the output files: +1. If use_polarisation is unset (default) the polarisation vector will not be stored (saving space) +2. If doubleprec is unset (default) data will be stored as 32 bit floating points, effectively cutting the output file size in half. +3. Extra information may be attached to each ray in the form of a userflag, a user-defined variable wich is packed into 32 bits. If +the user variable does not fit in 32 bits the value will be truncated and likely garbage. If more than one variable is to be attached to +each neutron this must be packed into the 32 bits. + +These features are set this way to keep file sizes as manageable as possible. + +%BUGS +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| filename | str | Name of neutron file to write. If not given, the component name will be used. | 0 | +| weight_mode | 1 | weight_mode=1: record initial ray count in MCPL stat:sum entry and rescale particle weights. weight_mode=2: classical (deprecated) mode of outputting particle weights directly. | -1 | +| verbose | 1 | If 1) Print summary information for created MCPL file. 2) Also print summary of first 10 particles information stored in the MCPL file. >2) Also print information for first 10 particles as they are being stored by McStas | 0 | +| polarisationuse | 1 | Enable storing the polarisation state of the neutron. | 0 | +| doubleprec | 1 | Use double precision storage | 0 | +| userflag | 1 | Extra variable to attach to each neutron. The value of this variable will be packed into a 32 bit integer. | "" | +| userflagcomment | str | String variable to describe the userflag. If this string is empty (the default) no userflags will be stored. | "" | +| buffermax | 1 | Maximal number of events to save ( <= MAXINT), GPU/OpenACC only | 0 | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/misc/MCPL_output_noacc.comp) for `MCPL_output_noacc.comp`. + +--- + +*Generated on mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/misc/Progress_bar.md b/mcstas-comps/misc/Progress_bar.md new file mode 100644 index 000000000..ec830f58a --- /dev/null +++ b/mcstas-comps/misc/Progress_bar.md @@ -0,0 +1,42 @@ +# The `Progress_bar` Component + +*McStas: A simulation progress bar* + +## Identification + +- **Site:** +- **Author:** Emmanuel Farhi +- **Origin:** ILL +- **Date:** 2002 + +## Description + +```text +An indicator of the progress of the simulation, monitoring +the Init, Trace with the achieved percentage, and the Finally section. +Intermediate savings (e.g. triggered by USR2 signal) are also shown. +This component should be positioned at the very begining of the instrument +The profile option will save the intensity and number of events for each +component It may be used to evaluate the simulation efficiency. + +Example: Progress_bar(percent=10,flag_save=1) AT (0,0,0) +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| profile | str | file name to save the simulation profile if set to "", it is set to the name of the instrument. | "NULL" | +| percent | 0-100 | percentage interval between updates. Default is 10%. | 10 | +| flag_save | 0\|1 | flag to enable intermediate saving for all monitors | 0 | +| minutes | min | time in minutes between updates (Overrides percent flag). | 0 | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/misc/Progress_bar.comp) for `Progress_bar.comp`. + +--- + +*Generated on mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/misc/Shape.md b/mcstas-comps/misc/Shape.md new file mode 100644 index 000000000..fde1c4c2c --- /dev/null +++ b/mcstas-comps/misc/Shape.md @@ -0,0 +1,65 @@ +# The `Shape` Component + +*McStas: A geometric shape without effect on neutron, for instrument display purpose.* + +## Identification + +- **Site:** +- **Author:** E. Farhi +- **Origin:** ILL +- **Date:** June 23rd 2009 + +## Description + +```text +An inactive geometrical shape, for drawing purposes only. +It does not propagate neutron, nor interact. +Shape: +Geometric shape may be a cylinder, a sphere, a box or any other shape +box/plate: xwidth x yheight x zdepth (thickness=0) +hollow box/plate:xwidth x yheight x zdepth and thickness>0 +cylinder: radius x yheight (thickness=0) +hollow cylinder: radius x yheight and thickness>0 +sphere: radius (yheight=0 thickness=0) +hollow sphere: radius and thickness>0 (yheight=0) +any shape: geometry=OFF file + +The complex geometry option handles any closed non-convex polyhedra. +It computes the intersection points of the neutron ray with the object +transparently, so that it can be used like a regular sample object. +It supports the OFF and NOFF file format but not COFF (colored faces). +Such files may be generated from XYZ data using qhull/powercrust, and +viewed with geomview +The default size of the object depends of the OFF file data, but its +bounding box may be resized using xwidth,yheight and zdepth. + +Example: Shape(radius=0.05, yheight=0.1) +Shape(geometry="socket.off") +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| geometry | str | Name of an Object File Format (OFF) file for complex geometry. The OFF file may be generated from XYZ coordinates using qhull/powercrust | 0 | +| radius | m | Outer radius of sample in (x,z) plane | 0 | +| xwidth | m | Horiz. dimension of sample (bounding box if off file), as a width | 0 | +| yheight | m | Vert. dimension of sample (bounding box if off file), as a height. A sphere shape is used when 0 and radius is set | 0 | +| zdepth | m | Depth of sample (bounding box if off file) | 0 | +| thickness | m | Thickness of hollow sample | 0 | +| nx | 1 | x-comp of orientation vector | 0 | +| ny | 1 | y-comp of orientation vector | 1 | +| nz | 1 | z-comp of orientation vector | 0 | +| center | 1 | Flag to determine if OFF object is centered on its centre of mass. | 1 | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/misc/Shape.comp) for `Shape.comp`. +- Geomview and Object File Format (OFF) +- Powercrust/qhull + +--- + +*Generated on mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/misc/Shape_simple.md b/mcstas-comps/misc/Shape_simple.md new file mode 100644 index 000000000..c4663be0a --- /dev/null +++ b/mcstas-comps/misc/Shape_simple.md @@ -0,0 +1,62 @@ +# The `Shape_simple` Component + +*McStas: A geometric shape without effect on neutron, for instrument display purpose.* + +## Identification + +- **Site:** +- **Author:** E. Farhi +- **Origin:** ILL +- **Date:** June 23rd 2009 + +## Description + +```text +An inactive geometrical shape, for drawing purposes only. +It does not propagate neutron, nor interact. +Shape: +Geometric shape may be a cylinder, a sphere, a box or any other shape +box/plate: xwidth x yheight x zdepth (thickness=0) +hollow box/plate:xwidth x yheight x zdepth and thickness>0 +cylinder: radius x yheight (thickness=0) +hollow cylinder: radius x yheight and thickness>0 +sphere: radius (yheight=0 thickness=0) +hollow sphere: radius and thickness>0 (yheight=0) +any shape: geometry=OFF file + +The complex geometry option handles any closed non-convex polyhedra. +It computes the intersection points of the neutron ray with the object +transparently, so that it can be used like a regular sample object. +It supports the OFF and NOFF file format but not COFF (colored faces). +Such files may be generated from XYZ data using qhull/powercrust, and +viewed with geomview +The default size of the object depends of the OFF file data, but its +bounding box may be resized using xwidth,yheight and zdepth. + +Example: Shape(radius=0.05, yheight=0.1) +Shape(geometry="socket.off") +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| geometry | str | Name of an Object File Format (OFF) file for complex geometry. The OFF file may be generated from XYZ coordinates using qhull/powercrust | 0 | +| radius | m | Outer radius of sample in (x,z) plane | 0 | +| xwidth | m | Horiz. dimension of sample (bounding box if off file), as a width | 0 | +| yheight | m | Vert. dimension of sample (bounding box if off file), as a height. A sphere shape is used when 0 and radius is set | 0 | +| zdepth | m | Depth of sample (bounding box if off file) | 0 | +| thickness | m | Thickness of hollow sample | 0 | +| center | 1 | Flag to determine if OFF object is centered on its centre of mass. | 1 | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/misc/Shape_simple.comp) for `Shape_simple.comp`. +- Geomview and Object File Format (OFF) +- Powercrust/qhull + +--- + +*Generated on mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/monitors/Brilliance_monitor.md b/mcstas-comps/monitors/Brilliance_monitor.md new file mode 100644 index 000000000..c9230f29b --- /dev/null +++ b/mcstas-comps/monitors/Brilliance_monitor.md @@ -0,0 +1,69 @@ +# The `Brilliance_monitor` Component + +*McStas: Special "Brilliance" monitor.* + +## Identification + +- **Site:** +- **Author:** Peter Willendrup, derived from TOF_lambda_monitor.comp +- **Origin:** DTU Physics +- **Date:** May 23, 2012 + +## Description + +```text +If used in the right setting, will output "instantaneous" and "mean" brilliances in units of Neutrons/cm^2/ster/AA/s. Conditions for proper units: +
      +
    • Use a with a source of area 1x1cm +
    • The source must illuminate/focus to an area of 1x1cm a 1m distance +
    • Parametrise the Brilliance_monitor with the frequency of the source +
    • To not change the source TOF distribution, place the Brilliance monitor close to the source! +
    + +with a source of area 1x1cm illuminating/focusing to an area of 1x1cm a 1m distance, this monitor will output "instantaneous" and "mean" brilliances in units of Neutrons/cm^2/ster/AA/s + +Here is an example of the use of the component. Note how the mentioned Unit conditions are implemented in instrument code. + +COMPONENT Source = ESS_moderator_long( +l_low = lambdamin, l_high = lambdamax, dist = 1, xw = 0.01, yh = 0.01, +freq = 14, T=50, tau=287e-6, tau1=0, tau2=20e-6, +n=20, n2=5, d=0.00286, chi2=0.9, I0=6.9e11, I2=27.6e10, +branch1=0, branch2=0.5, twopulses=0, size=0.01) +AT (0, 0, 0) RELATIVE Origin + +COMPONENT BRIL = Brilliance_monitor(nlam=196,nt=401,filename="bril.sim", +t_0=0,t_1=4000,lambda_0=lambdamin, +lambda_1=lambdamax, Freq=14) +AT (0,0,0.000001) RELATIVE Source +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| nlam | 1 | Number of bins in wavelength | 101 | +| nt | 1 | Number of bins in TOF | 1001 | +| nowritefile | 1 | If set, monitor will skip writing to disk | 0 | +| lambda_0 | AA | Minimum wavelength detected | 0 | +| lambda_1 | AA | Maximum wavelength detected | 20 | +| restore_neutron | 1 | If set, the monitor does not influence the neutron state | 0 | +| **Freq** | Hz | Source frequency. Use freq=1 for reactor source | | +| tofcuts | 1 | Flag to generate TOF-distributions as function of wavelength | 0 | +| toflambda | 1 | Flag to generate TOF-lambda distribution output | 0 | +| xwidth | m | width of monitor | 0.01 | +| yheight | m | height of monitor | 0.01 | +| source_dist | m | Distance from source. Beware when transporting through neutron optics! | 1 | +| filename | string | Defines filenames for the detector images. Stored as:
    Peak_<filename> and Mean_<filename> | 0 | +| t_0 | us | Minimum time | 0 | +| t_1 | us | Maximum time | 20000 | +| srcarea | cm^2 | Source area | 1 | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/monitors/Brilliance_monitor.comp) for `Brilliance_monitor.comp`. + +--- + +*Generated on mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/monitors/Cyl_monitor.md b/mcstas-comps/monitors/Cyl_monitor.md new file mode 100644 index 000000000..91332ea35 --- /dev/null +++ b/mcstas-comps/monitors/Cyl_monitor.md @@ -0,0 +1,43 @@ +# The `Cyl_monitor` Component + +*McStas: A 2D Position-sensitive monitor. The shape is cylindrical with +the axis vertical. The monitor covers the whole cylinder (360 degrees).* + +## Identification + +- **Site:** +- **Author:** Kim Lefmann +- **Origin:** Risoe +- **Date:** October 26, 2000 + +## Description + +```text +An (n times m) pixel PSD monitor with cylinder shape, +vertical axis, centered at (0,0,0). + +Example: PSDcyl_monitor(nr=20, ny=20, filename="Output.cyl", yheight=0.2, radius=0.1) +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| nr | 1 | Number of pixel (radial) columns | 20 | +| filename | string | Name of file in which to store the detector image | 0 | +| yheight | m | Height of detector | 10 | +| radius | m | Radius of detector | 1 | +| restore_neutron | 1 | If set, the monitor does not influence the neutron state | 0 | +| thmin | deg | Minimum angle covered/measured | -180 | +| thmax | deg | Maximum angle covered/measured | 180 | +| nowritefile | 1 | If set, monitor will skip writing to disk | 0 | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/monitors/Cyl_monitor.comp) for `Cyl_monitor.comp`. + +--- + +*Generated on mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/monitors/Cyl_monitor_PSD.md b/mcstas-comps/monitors/Cyl_monitor_PSD.md new file mode 100644 index 000000000..2ed861614 --- /dev/null +++ b/mcstas-comps/monitors/Cyl_monitor_PSD.md @@ -0,0 +1,44 @@ +# The `Cyl_monitor_PSD` Component + +*McStas: A 2D Position-sensitive monitor. The shape is cylindrical with +the axis vertical. The monitor covers the whole cylinder (360 degrees).* + +## Identification + +- **Site:** +- **Author:** Kim Lefmann +- **Origin:** Risoe +- **Date:** October 26, 2000 + +## Description + +```text +An (n times m) pixel PSD monitor with cylinder shape, +vertical axis, centered at (0,0,0). + +Example: PSDcyl_monitor(nr=20, ny=20, filename="Output.cyl", yheight=0.2, radius=0.1) +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| nr | 1 | Number of pixel (radial) columns | 20 | +| filename | string | Name of file in which to store the detector image | 0 | +| yheight | m | Height of detector | 10 | +| radius | m | Radius of detector | 1 | +| restore_neutron | 1 | If set, the monitor does not influence the neutron state | 0 | +| thmin | deg | Minimum angle covered/measured | -180 | +| thmax | deg | Maximum angle covered/measured | 180 | +| ny | 1 | Number of pixel rows | 100 | +| nowritefile | 1 | If set, monitor will skip writing to disk | 0 | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/monitors/Cyl_monitor_PSD.comp) for `Cyl_monitor_PSD.comp`. + +--- + +*Generated on mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/monitors/Cyl_monitor_TOF.md b/mcstas-comps/monitors/Cyl_monitor_TOF.md new file mode 100644 index 000000000..cd41544f0 --- /dev/null +++ b/mcstas-comps/monitors/Cyl_monitor_TOF.md @@ -0,0 +1,46 @@ +# The `Cyl_monitor_TOF` Component + +*McStas: A 2D Position-sensitive monitor. The shape is cylindrical with +the axis vertical. The monitor covers the whole cylinder (360 degrees).* + +## Identification + +- **Site:** +- **Author:** Kim Lefmann +- **Origin:** Risoe +- **Date:** October 26, 2000 + +## Description + +```text +An (n times m) pixel PSD monitor with cylinder shape, +vertical axis, centered at (0,0,0). + +Example: PSDcyl_monitor(nr=20, ny=20, filename="Output.cyl", yheight=0.2, radius=0.1) +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| nr | 1 | Number of pixel (radial) columns | 20 | +| filename | string | Name of file in which to store the detector image | 0 | +| yheight | m | Height of detector | 10 | +| radius | m | Radius of detector | 1 | +| restore_neutron | 1 | If set, the monitor does not influence the neutron state | 0 | +| thmin | deg | Minimum angle covered/measured | -180 | +| thmax | deg | Maximum angle covered/measured | 180 | +| nt | 1 | Number of t-bins | 100 | +| **tmin** | s | Minimum time measured | | +| **tmax** | s | Maximum time measured | | +| nowritefile | 1 | If set, monitor will skip writing to disk | 0 | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/monitors/Cyl_monitor_TOF.comp) for `Cyl_monitor_TOF.comp`. + +--- + +*Generated on mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/monitors/Div1D_monitor.md b/mcstas-comps/monitors/Div1D_monitor.md new file mode 100644 index 000000000..bcc2790a9 --- /dev/null +++ b/mcstas-comps/monitors/Div1D_monitor.md @@ -0,0 +1,46 @@ +# The `Div1D_monitor` Component + +*McStas: A 1D divergence sensitive monitor.* + +## Identification + +- **Site:** +- **Author:** KL, +- **Origin:** Risoe +- **Date:** Nov. 11, 1998 + +## Description + +```text +A divergence sensitive monitor. The counts are distributed in +ndiv pixels along either the horizontal axis x (default) or the vertical y. + +Example: Div1D_monitor(xmin=-0.1, xmax=0.1, ymin=-0.1, ymax=0.1, ndiv=20, filename="Output.hd", maxdiv=2) +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| ndiv | 1 | Number of pixel rows | 20 | +| filename | str | Name of file in which to store the detector image | 0 | +| xmin | m | Lower x bound of detector opening | -0.05 | +| xmax | m | Upper x bound of detector opening | 0.05 | +| ymin | m | Lower y bound of detector opening | -0.05 | +| ymax | m | Upper y bound of detector opening | 0.05 | +| xwidth | m | Width of detector. Overrides xmin,xmax. | 0 | +| yheight | m | Height of detector. Overrides ymin,ymax. | 0 | +| maxdiv | deg | Maximal divergence detected | 2 | +| restore_neutron | 1 | If set, the monitor does not influence the neutron state | 0 | +| nowritefile | 1 | If set, monitor will skip writing to disk | 0 | +| vertical | 1 | If set, measure vertical divergence instead of horizontal. | 0 | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/monitors/Div1D_monitor.comp) for `Div1D_monitor.comp`. + +--- + +*Generated on mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/monitors/DivLambda_monitor.md b/mcstas-comps/monitors/DivLambda_monitor.md new file mode 100644 index 000000000..5df4d4176 --- /dev/null +++ b/mcstas-comps/monitors/DivLambda_monitor.md @@ -0,0 +1,53 @@ +# The `DivLambda_monitor` Component + +*McStas: Divergence/wavelength monitor.* + +## Identification + +- **Site:** +- **Author:** Kristian Nielsen +- **Origin:** Risoe +- **Date:** 1999 + +## Description + +```text +2D detector for intensity as a function of both horizontal divergence +and wavelength. + +Example: DivLambda_monitor(nL=20, nh=20, filename="Output.div", +xmin=-0.1, xmax=0.1, ymin=-0.1, ymax=0.1, +maxdiv_h=2, Lmin=2, Lmax=10) +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| nL | 1 | Number of bins in wavelength | 20 | +| nh | 1 | Number of bins in divergence | 20 | +| nowritefile | 1 | If set, monitor will skip writing to disk | 0 | +| filename | string | Name of file in which to store the detector image | 0 | +| xmin | m | Lower x bound of detector opening | -0.05 | +| xmax | m | Upper x bound of detector opening | 0.05 | +| ymin | m | Lower y bound of detector opening | -0.05 | +| ymax | m | Upper y bound of detector opening | 0.05 | +| xwidth | m | Width of detector. Overrides xmin,xmax. | 0 | +| yheight | m | Height of detector. Overrides ymin,ymax. | 0 | +| maxdiv_h | degrees | Maximal horizontal divergence detected | 2 | +| **Lmin** | AA | Minimum wavelength detected | | +| **Lmax** | AA | Maximum wavelength detected | | +| restore_neutron | 1 | If set, the monitor does not influence the neutron state | 0 | +| nx | 1 | | 0 | +| ny | 1 | Vector definition of "forward" direction wrt. divergence, to be used e.g. when the monitor is rotated into the horizontal plane. | 0 | +| nz | 1 | | 1 | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/monitors/DivLambda_monitor.comp) for `DivLambda_monitor.comp`. + +--- + +*Generated on mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/monitors/DivPos_monitor.md b/mcstas-comps/monitors/DivPos_monitor.md new file mode 100644 index 000000000..0a03127f3 --- /dev/null +++ b/mcstas-comps/monitors/DivPos_monitor.md @@ -0,0 +1,53 @@ +# The `DivPos_monitor` Component + +*McStas: Divergence/position monitor (acceptance diagram).* + +## Identification + +- **Site:** +- **Author:** Kristian Nielsen +- **Origin:** Risoe +- **Date:** 1999 + +## Description + +```text +2D detector for intensity as a function of position +and divergence, either horizontally or vertically (depending on the flag vertical). +This gives information similar to an aceptance diagram used +eg. to investigate beam profiles in neutron guides. + +Example: DivPos_monitor(nh=20, ndiv=20, filename="Output.dip", +xmin=-0.1, xmax=0.1, ymin=-0.1, ymax=0.1, maxdiv_h=2) +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| nb | 1 | Number of bins in position. | 20 | +| ndiv | 1 | Number of bins in divergence. | 20 | +| filename | string | Name of file in which to store the detector image. | 0 | +| xmin | m | Lower x bound of detector opening | -0.05 | +| xmax | m | Upper x bound of detector opening | 0.05 | +| ymin | m | Lower y bound of detector opening | -0.05 | +| ymax | m | Upper y bound of detector opening | 0.05 | +| xwidth | m | Width of detector. Overrides xmin,xmax. | 0 | +| yheight | m | Height of detector. Overrides ymin,ymax. | 0 | +| maxdiv | degrees | Maximal divergence detected. | 2 | +| restore_neutron | 1 | If set, the monitor does not influence the neutron state. | 0 | +| nx | 1 | | 0 | +| ny | 1 | Vector definition of "forward" direction wrt. divergence, to be used e.g. when the monitor is rotated into the horizontal plane | 0 | +| nz | 1 | | 1 | +| vertical | 1 | Monitor intensity as a function of vertical divergence and position. | 0 | +| nowritefile | 1 | If set, monitor will skip writing to disk | 0 | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/monitors/DivPos_monitor.comp) for `DivPos_monitor.comp`. + +--- + +*Generated on mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/monitors/Divergence_monitor.md b/mcstas-comps/monitors/Divergence_monitor.md new file mode 100644 index 000000000..3edcac32f --- /dev/null +++ b/mcstas-comps/monitors/Divergence_monitor.md @@ -0,0 +1,52 @@ +# The `Divergence_monitor` Component + +*McStas: Horizontal+vertical divergence monitor.* + +## Identification + +- **Site:** +- **Author:** Kim Lefmann +- **Origin:** Risoe +- **Date:** Nov. 11, 1998 + +## Description + +```text +A divergence sensitive monitor. The counts are distributed in +(n times m) pixels. + +Example: Divergence_monitor(nh=20, nv=20, filename="Output.pos", +xmin=-0.1, xmax=0.1, ymin=-0.1, ymax=0.1, +maxdiv_h=2, maxdiv_v=2) +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| nh | 1 | Number of pixel rows | 20 | +| nv | 1 | Number of pixel columns | 20 | +| filename | str | Name of file in which to store the detector image text | 0 | +| xmin | m | Lower x bound of detector opening | -0.05 | +| xmax | m | Upper x bound of detector opening | 0.05 | +| ymin | m | Lower y bound of detector opening | -0.05 | +| ymax | m | Upper y bound of detector opening | 0.05 | +| nowritefile | 1 | If set, monitor will skip writing to disk | 0 | +| xwidth | m | Width of detector. Overrides xmin, xmax | 0 | +| yheight | m | Height of detector. Overrides ymin, ymax | 0 | +| maxdiv_h | degrees | Maximal vertical divergence detected | 2 | +| maxdiv_v | degrees | Maximal vertical divergence detected | 2 | +| restore_neutron | 1 | If set, the monitor does not influence the neutron state | 0 | +| nx | 1 | | 0 | +| ny | 1 | Vector definition of "forward" direction wrt. divergence, to be used e.g. when the monitor is rotated into the horizontal plane | 0 | +| nz | 1 | | 1 | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/monitors/Divergence_monitor.comp) for `Divergence_monitor.comp`. + +--- + +*Generated on mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/monitors/EPSD_monitor.md b/mcstas-comps/monitors/EPSD_monitor.md new file mode 100644 index 000000000..a3c6733d5 --- /dev/null +++ b/mcstas-comps/monitors/EPSD_monitor.md @@ -0,0 +1,47 @@ +# The `EPSD_monitor` Component + +*McStas: A monitor measuring neutron intensity vs. position, x, and neutron energy, E* + +## Identification + +- **Site:** +- **Author:** Kim Lefmann +- **Origin:** Risoe +- **Date:** 16.4.00 + +## Description + +```text +A monitor measuring neutron intensity vs. position, x, and neutron energy, E + +Example: EPSD_monitor(xmin=-0.1, xmax=0.1, ymin=-0.1, ymax=0.1, +Emin=1, Emax=50, nx=20, nE=20, filename="Output.poe") +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| nx | 1 | Number of pixel columns in scattering plane | 20 | +| nE | 1 | Number of energy bins | 20 | +| filename | string | Name of file in which to store the detector image | 0 | +| xmin | m | Lower x bound of detector opening | -0.05 | +| xmax | m | Upper x bound of detector opening | 0.05 | +| ymin | m | Lower y bound of detector opening | -0.05 | +| ymax | m | Upper y bound of detector opening | 0.05 | +| nowritefile | 1 | If set, monitor will skip writing to disk | 0 | +| xwidth | m | Width of detector. Overrides xmin,xmax. | 0 | +| yheight | m | Height of detector. Overrides ymin,ymax. | 0 | +| **Emin** | meV | Lower bound of energy | | +| **Emax** | meV | Upper bound of energy | | +| restore_neutron | 1 | If set, the monitor does not influence the neutron state | 0 | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/monitors/EPSD_monitor.comp) for `EPSD_monitor.comp`. + +--- + +*Generated on mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/monitors/E_monitor.md b/mcstas-comps/monitors/E_monitor.md new file mode 100644 index 000000000..e0c6372a3 --- /dev/null +++ b/mcstas-comps/monitors/E_monitor.md @@ -0,0 +1,46 @@ +# The `E_monitor` Component + +*McStas: Energy-sensitive monitor.* + +## Identification + +- **Site:** +- **Author:** Kristian Nielsen and Kim Lefmann +- **Origin:** Risoe +- **Date:** April 20, 1998 + +## Description + +```text +A square single monitor that measures the energy of the incoming neutrons. + +Example: E_monitor(xmin=-0.1, xmax=0.1, ymin=-0.1, ymax=0.1, +Emin=1, Emax=50, nE=20, filename="Output.nrj") +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| nE | 1 | Number of energy channels | 20 | +| filename | string | Name of file in which to store the detector image | 0 | +| xmin | m | Lower x bound of detector opening | -0.05 | +| xmax | m | Upper x bound of detector opening | 0.05 | +| ymin | m | Lower y bound of detector opening | -0.05 | +| ymax | m | Upper y bound of detector opening | 0.05 | +| nowritefile | 1 | If set, monitor will skip writing to disk | 0 | +| xwidth | m | Width of detector. Overrides xmin, xmax. | 0 | +| yheight | m | Height of detector. Overrides ymin, ymax. | 0 | +| **Emin** | meV | Minimum energy to detect | | +| **Emax** | meV | Maximum energy to detect | | +| restore_neutron | 1 | If set, the monitor does not influence the neutron state | 0 | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/monitors/E_monitor.comp) for `E_monitor.comp`. + +--- + +*Generated on mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/monitors/Event_monitor_simple.md b/mcstas-comps/monitors/Event_monitor_simple.md new file mode 100644 index 000000000..e9470ad71 --- /dev/null +++ b/mcstas-comps/monitors/Event_monitor_simple.md @@ -0,0 +1,34 @@ +# The `Event_monitor_simple` Component + +*McStas: Low-key event-monitor for debugging purposes.* + +## Identification + +- **Site:** +- **Author:** Peter Willendrup +- **Origin:** DTU +- **Date:** Oct 3rd, 2020 + +## Description + +```text +Simple, low-key event-monitor for debugging purposes. No propagation, +no MPI support. Simply prints the event list to a log file in the SAVE section. +The filename is "comp-instance".log +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| nevents | 1 | Number of events to store and print | 1e6 | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/monitors/Event_monitor_simple.comp) for `Event_monitor_simple.comp`. + +--- + +*Generated on mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/monitors/Flex_monitor_1D.md b/mcstas-comps/monitors/Flex_monitor_1D.md new file mode 100644 index 000000000..9da2a5338 --- /dev/null +++ b/mcstas-comps/monitors/Flex_monitor_1D.md @@ -0,0 +1,42 @@ +# The `Flex_monitor_1D` Component + +*McStas: Flexible monitor.* + +## Identification + +- **Site:** +- **Author:** Erik B Knudsen & Peter Willendrup +- **Origin:** DTU Physics +- **Date:** Oct '20 + +## Description + +```text +A square 1D single monitor that measures intensity (or something else) as a function of some variable or parameter. + +Example: Flex_monitor_1D(nU=20, filename="Output", ustring="x", Umin=-.1, Umax=.1) +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| nU | 1 | Number of U channels | 20 | +| filename | string | Name of file in which to store the detector image | 0 | +| **Umin** | | Minimum U to detect | | +| **Umax** | | Maximum U to detect | | +| uid | 1 | Integer index of uservar to be monitored. Overrides ustring. | -1 | +| ustring | string | Name of variable (user or neutron state parameter as a string) to be monitored. | "" | +| restore_neutron | 1 | If set, the monitor does not influence the neutron state | 0 | +| signal | string | Name of variable to be used as an additive signal to be monitored. Default is intensity. | "p" | +| nowritefile | 1 | Flag to indicate if monitor should not save any data. | 0 | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/monitors/Flex_monitor_1D.comp) for `Flex_monitor_1D.comp`. + +--- + +*Generated on mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/monitors/Flex_monitor_2D.md b/mcstas-comps/monitors/Flex_monitor_2D.md new file mode 100644 index 000000000..78f042f7a --- /dev/null +++ b/mcstas-comps/monitors/Flex_monitor_2D.md @@ -0,0 +1,47 @@ +# The `Flex_monitor_2D` Component + +*McStas: Flexible monitor.* + +## Identification + +- **Site:** +- **Author:** Erik B Knudsen & Peter Willendrup +- **Origin:** DTU Physics +- **Date:** Oct '20 + +## Description + +```text +A square 2D single monitor that measures intensity (or something else) as a function of two selectable variables or parameters. + +Example: Flex_monitor_2D(nU1=20, nU2=20, filename="Output", ustring1="x", ustring2="y", Umin1=-.1, Umax1=.1, Umin2=-.1, Umax2=.1) +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| nU1 | 1 | Number of U1 channels | 20 | +| nU2 | 1 | Number of U1 channels | 20 | +| filename | string | Name of file in which to store the detector image | 0 | +| **Umin1** | | Minimum U1 to detect | | +| **Umax1** | | Maximum U1 to detect | | +| uid1 | 1 | Integer index of uservar to be monitored. Overrides ustring1. | -1 | +| ustring1 | string | Name of variable U1 (user or neutron state parameter as a string) to be monitored. | "" | +| **Umin2** | | Minimum U1 to detect | | +| **Umax2** | | Maximum U1 to detect | | +| uid2 | 1 | Integer index of uservar to be monitored. Overrides ustring2. | -1 | +| ustring2 | string | Name of variable U2 (user or neutron state parameter as a string) to be monitored. | "" | +| restore_neutron | 1 | If set, the monitor does not influence the neutron state | 0 | +| signal | string | Name of variable to be used as an additive signal to be monitored. Default is intensity. | "p" | +| nowritefile | 1 | Flag to indicate if monitor should not save any data. | 0 | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/monitors/Flex_monitor_2D.comp) for `Flex_monitor_2D.comp`. + +--- + +*Generated on mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/monitors/Flex_monitor_3D.md b/mcstas-comps/monitors/Flex_monitor_3D.md new file mode 100644 index 000000000..a21777c82 --- /dev/null +++ b/mcstas-comps/monitors/Flex_monitor_3D.md @@ -0,0 +1,52 @@ +# The `Flex_monitor_3D` Component + +*McStas: Flexible monitor.* + +## Identification + +- **Site:** +- **Author:** Erik B Knudsen & Peter Willendrup +- **Origin:** DTU Physics +- **Date:** Oct '20 + +## Description + +```text +A square 3D single monitor that measures intensity (or something else) as a function of two selectable variables or parameters. + +Example: Flex_monitor_3D(nU1=20, nU2=20, nU3=20, filename="Output", ustring1="x", ustring2="y", ustring1="z", Umin1=-.1, Umax1=.1, Umin2=-.1, Umax2=.1, Umin3=-.1, Umax3=.1) +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| nU1 | 1 | Number of U1 channels | 20 | +| nU2 | 1 | Number of U1 channels | 20 | +| nU3 | 1 | Number of U3 channels | 20 | +| filename | string | Name of file in which to store the detector image | 0 | +| **Umin1** | | Minimum U1 to detect | | +| **Umax1** | | Maximum U1 to detect | | +| uid1 | 1 | Integer index of uservar to be monitored. Overrides ustring1. | -1 | +| ustring1 | string | Name of variable U1 (user or neutron state parameter as a string) to be monitored. | "" | +| **Umin2** | | Minimum U1 to detect | | +| **Umax2** | | Maximum U1 to detect | | +| uid2 | 1 | Integer index of uservar to be monitored. Overrides ustring2. | -1 | +| ustring2 | string | Name of variable U2 (user or neutron state parameter as a string) to be monitored. | "" | +| **Umin3** | | Minimum U3 to detect | | +| **Umax3** | | Maximum U3 to detect | | +| uid3 | 1 | Integer index of uservar to be monitored. Overrides ustring3. | -1 | +| ustring3 | string | Name of variable U3 (user or neutron state parameter as a string) to be monitored. | "" | +| restore_neutron | 1 | If set, the monitor does not influence the neutron state | 0 | +| signal | string | Name of variable to be used as an additive signal to be monitored. Default is intensity. | "p" | +| nowritefile | 1 | Flag to indicate if monitor should not save any data. | 0 | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/monitors/Flex_monitor_3D.comp) for `Flex_monitor_3D.comp`. + +--- + +*Generated on mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/monitors/L_monitor.md b/mcstas-comps/monitors/L_monitor.md new file mode 100644 index 000000000..a7f79c07a --- /dev/null +++ b/mcstas-comps/monitors/L_monitor.md @@ -0,0 +1,46 @@ +# The `L_monitor` Component + +*McStas: Wavelength-sensitive monitor.* + +## Identification + +- **Site:** +- **Author:** Kristian Nielsen and Kim Lefmann +- **Origin:** Risoe +- **Date:** April 20, 1998 + +## Description + +```text +A square single monitor that measures the wavelength of the incoming +neutrons. + +Example: L_monitor(xmin=-0.1, xmax=0.1, ymin=-0.1, ymax=0.1, nL=20, filename="Output.L", Lmin=2, Lmax=10) +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| nL | 1 | Number of wavelength channels | 20 | +| filename | string | Name of file in which to store the detector image | 0 | +| nowritefile | 1 | If set, monitor will skip writing to disk | 0 | +| xmin | m | Lower x bound of detector opening | -0.05 | +| xmax | m | Upper x bound of detector opening | 0.05 | +| ymin | m | Lower y bound of detector opening | -0.05 | +| ymax | m | Upper y bound of detector opening | 0.05 | +| xwidth | m | Width of detector. Overrides xmin, xmax. | 0 | +| yheight | m | Height of detector. Overrides ymin, ymax. | 0 | +| **Lmin** | AA | Minimum wavelength to detect | | +| **Lmax** | AA | Maximum wavelength to detect | | +| restore_neutron | 1 | If set, the monitor does not influence the neutron state | 0 | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/monitors/L_monitor.comp) for `L_monitor.comp`. + +--- + +*Generated on mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/monitors/MeanPolLambda_monitor.md b/mcstas-comps/monitors/MeanPolLambda_monitor.md new file mode 100644 index 000000000..3eee68d25 --- /dev/null +++ b/mcstas-comps/monitors/MeanPolLambda_monitor.md @@ -0,0 +1,46 @@ +# The `MeanPolLambda_monitor` Component + +*McStas: Polarisation and wavelength sensitive monitor.* + +## Identification + +- **Site:** +- **Author:** Peter Christiansen +- **Origin:** Risoe +- **Date:** July 2006 + +## Description + +```text +A square single monitor that measures the MEAN projection of the +polarisation along a given normalized m-vector (mx, my, mz) as a +function of wavelength. + +Example: MeanPollambda_monitor(xwidth=0.1, yheight=0.1, npol=11, my=1, filename="meanpollambdaMon.data") +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| xwidth | m | Width of detector | 0.1 | +| yheight | m | Height of detector | 0.1 | +| nL | 1 | Number of bins in wavelength | 20 | +| restore_neutron | 1 | If set, the monitor does not influence the neutron state | 0 | +| filename | string | Name of file in which to store the data | 0 | +| nowritefile | 1 | If set, monitor will skip writing to disk | 0 | +| mx | 1 | X-component of monitor vector (can be negative) | 0 | +| my | 1 | Y-component of monitor vector (can be negative) | 0 | +| mz | 1 | Z-component of monitor vector (can be negative) | 0 | +| **Lmin** | AA | Minimum wavelength detected | | +| **Lmax** | AA | Maximum wavelength detected | | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/monitors/MeanPolLambda_monitor.comp) for `MeanPolLambda_monitor.comp`. + +--- + +*Generated on mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/monitors/Monitor.md b/mcstas-comps/monitors/Monitor.md new file mode 100644 index 000000000..827cf8dd7 --- /dev/null +++ b/mcstas-comps/monitors/Monitor.md @@ -0,0 +1,41 @@ +# The `Monitor` Component + +*McStas: Simple single detector/monitor.* + +## Identification + +- **Site:** +- **Author:** Kim Lefmann +- **Origin:** Risoe +- **Date:** October 4, 1997 + +## Description + +```text +Sums neutrons (0th, 1st, and 2nd moment of p) flying through +the rectangular monitor opening. May also be used as detector. + +Example: Monitor(xmin=-0.1, xmax=0.1, ymin=-0.1, ymax=0.1) +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| xmin | m | Lower x bound of opening | -0.05 | +| xmax | m | Upper x bound of opening | 0.05 | +| ymin | m | Lower y bound of opening | -0.05 | +| ymax | m | Upper y bound of opening | 0.05 | +| xwidth | m | Width of detector. Overrides xmin,xmax. | 0 | +| yheight | m | Height of detector. Overrides ymin,ymax. | 0 | +| restore_neutron | 1 | If set, the monitor does not influence the neutron state | 0 | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/monitors/Monitor.comp) for `Monitor.comp`. + +--- + +*Generated on mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/monitors/Monitor_4PI.md b/mcstas-comps/monitors/Monitor_4PI.md new file mode 100644 index 000000000..dea626498 --- /dev/null +++ b/mcstas-comps/monitors/Monitor_4PI.md @@ -0,0 +1,36 @@ +# The `Monitor_4PI` Component + +*McStas: Release: McStas 1.6 + +Monitor that detects ALL non-absorbed neutrons. + +Example: Monitor_4PI()* + +## Identification + +- **Site:** +- **Author:** Kim Lefmann and Kristian Nielsen +- **Origin:** Risoe +- **Date:** April 17, 1998 + +## Description + +```text +Counts ALL neutrons that propagate this far in the instrument, regardless +of origin or direction. Mostly used for test purposes. +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/monitors/Monitor_4PI.comp) for `Monitor_4PI.comp`. + +--- + +*Generated on mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/monitors/Monitor_nD.md b/mcstas-comps/monitors/Monitor_nD.md new file mode 100644 index 000000000..d3108e5a5 --- /dev/null +++ b/mcstas-comps/monitors/Monitor_nD.md @@ -0,0 +1,221 @@ +# The `Monitor_nD` Component + +*McStas: Release: McStas 1.6 +Version: $Revision$ + +This component is a general Monitor that can output 0/1/2D signals +(Intensity or signal vs. [something] and vs. [something] ...)* + +## Identification + +- **Site:** +- **Author:** Emmanuel Farhi +- **Origin:** ILL +- **Date:** 14th Feb 2000. + +## Description + +```text +This component is a general Monitor that can output 0/1/2D signals +It can produce many 1D signals (one for any variable specified in +option list), or a single 2D output (two variables correlation). +Also, an additional 'list' of neutron events can be produced. +By default, monitor is square (in x/y plane). A disk shape is also possible +The 'cylinder' and 'banana' option will change that for a banana shape +The 'sphere' option simulates spherical detector. The 'box' is a box. +The cylinder, sphere and banana should be centered on the scattering point. +The monitored flux may be per monitor unit area, and weighted by +a lambda/lambda(2200m/s) factor to obtain standard integrated capture flux. +In normal configuration, the Monitor_nD measures the current parameters +of the neutron that is beeing detected. But a PreMonitor_nD component can +be used in order to study correlations between a neutron being detected in +a Monitor_nD place, and given parameters that are monitored elsewhere +(at PreMonitor_nD). +The monitor can also act as a 3He gas detector, taking into account the +detection efficiency. + +The 'bins' and 'limits' modifiers are to be used after each variable, +and 'auto','log' and 'abs' come before it. (eg: auto abs log hdiv bins=10 +limits=[-5 5]) When placed after all variables, these two latter modifiers +apply to the signal (e.g. intensity). Unknown keywords are ignored. +If no limits are specified for a given observable, reasonable defaults will be +applied. Note that these implicit limits are even applied in list mode. + +Implicit limits for typical variables: +(consult monitor_nd-lib.c if you don't find your variable here) +x, y, z: Derived from detection-object geometry +k: [0 10] Angs-1 +v: [0 1e6] m/s +t: [0 1] s +p: [0 FLT_MAX] in intensity-units +vx, vy: [-1000 1000] m/s +vz: [0 10000] m/s +kx, ky: [-1 1] Angs-1 +kz: [-10 10] Angs-1 +energy, omega: [0 100] meV +lambda,wavelength: [0 100] Angs +sx, sy, sz: [-1 1] in polarisation-units +angle: [-50 50] deg +divergence, vdiv, hdiv, xdiv, ydiv: [-5 5] deg +longitude, lattitude: [-180 180] deg +neutron: [0 simulaton_ncount] +id, pixel id: [0 FLT_MAX] +uservars u1,u2,u3: [-1e10 1e10] + +In the case of multiple components at the same position, the 'parallel' +keyword must be used in each instance instead of defining a GROUP. + +Possible options are +Variables to record: +kx ky kz k wavevector [Angs-1] Wavevector on x,y,z and norm +vx vy vz v [m/s] Velocity on x,y,z and norm +x y z radius [m] Distance, Position and norm +xy, yz, xz [m] Radial position in xy, yz and xz plane +kxy kyz kxz [Angs-1] Radial wavevector in xy, yz and xz plane +vxy vyz vxz [m/s] Radial velocity in xy, yz and xz plane +t time [s] Time of Flight +energy omega [meV] energy of neutron +lambda wavelength [Angs] wavelength of neutron +sx sy sz [1] Spin +vdiv ydiv dy [deg] vertical divergence (y) +hdiv divergence xdiv [deg] horizontal divergence (x) +angle [deg] divergence from direction +theta longitude [deg] longitude (x/z) for sphere and cylinder +phi lattitude [deg] lattitude (y/z) for sphere and cylinder + +user user1 will monitor the [Mon_Name]_Vars.UserVariable{1|2|3} +user2 user3 to be assigned in an other component (see below) + +p intensity flux [n/s or n/cm^2/s] +ncounts n neutron [1] neutron ID, i.e current event index +pixel id [1] pixelID in histogram made of preceeding vars, e.g. 'theta y'. To set an offset PixelID use the 'min=value' keyword. Sets event mode. + +Other options keywords are: +abs Will monitor the abs of the following variable or of the signal (if used after all variables) +auto Automatically set detector limits for one/all +all {limits|bins|auto} To set all limits or bins values or auto mode +binary {float|double} with 'source' option, saves in compact files +bins=[bins=20] Number of bins in the detector along dimension +borders To also count off-limits neutrons (X < min or X > max) +capture weight by lambda/lambda(2200m/s) capture flux +file=string Detector image file name. default is component name, plus date and variable extension. +incoming Monitor incoming beam in non flat det +limits=[min max] Lower/Upper limits for axes (see up for the variable unit) +list=[counts=1000] or all For a long file of neutron characteristics with [counts] or all events +log Will monitor the log of the following variable or of the signal (if used after all variables) +min=[min_value] Same as limits, but only sets the min or max +max=[max_value] +multiple Create multiple independant 1D monitors files +no or not Revert next option +outgoing Monitor outgoing beam (default) +parallel Use this option when the next component is at the same position (parallel components) +per cm2 Intensity will be per cm^2 (detector area). Displays beam section. +per steradian Displays beam solid angle in steradian +premonitor Will monitor neutron parameters stored previously with PreMonitor_nD. +signal=[var] Will monitor [var] instead of usual intensity +slit or absorb Absorb neutrons that are out detector +source The monitor will save neutron states +inactivate To inactivate detector (0D detector) +verbose To display additional informations +3He_pressure=[3 in bars] The 3He gas pressure in detector. 3He_pressure=0 is perfect detector (default) + +Detector shape options (specified as xwidth,yheight,zdepth or x/y/z/min/max) +box Box of size xwidth, yheight, zdepth. +cylinder To get a cylindrical monitor (diameter is xwidth or set radius, height is yheight). +banana Same as cylinder, without top/bottom, on restricted angular area; use theta variable with limits to define arc. (diameter is xwidth or set radius, height is yheight). +disk Disk flat xy monitor. diameter is xwidth. +sphere To get a spherical monitor (e.g. a 4PI) (diameter is xwidth or set radius). +square Square flat xy monitor (xwidth, yheight). +previous The monitor uses PREVIOUS component as detector surface. Or use 'geometry' parameter to specify any PLY/OFF geometry file. + +EXAMPLES: +
      +
    • MyMon = Monitor_nD(xwidth = 0.1, yheight = 0.1, zdepth = 0, +  options = "intensity per cm2 angle,limits=[-5 5] bins=10,with +  borders, file = mon1"); +will monitor neutron angle from [z] axis, between -5 +and 5 degrees, in 10 bins, into "mon1.A" output 1D file + +
    • options = "sphere theta phi outgoing" +for a sphere PSD detector (out beam) and saves into file "MyMon_[Date_ID].th_ph" + +
    • options = "banana, theta limits=[10,130], bins=120, y" +a theta/height banana detector + +
    • options = "angle radius all auto" +is a 2D monitor with automatic limits + +
    • options = "list=1000 kx ky kz energy" +records 1000 neutron event in a file + +
    • options = "multiple kx ky kz, auto abs log t, and list all neutrons" +makes 4 output 1D files and produces a complete list for all neutrons +and monitor log(abs(tof)) within automatic limits (for t) + +
    • options = "theta y, sphere, pixel min=100" +a 4pi detector which outputs an event list with pixelID from the actual +detector surface, starting from index 100. + +
    +To dynamically define a number of bins, or limits: +Use in DECLARE: char op[256]; +Use in INITIALIZE: sprintf(op, "lambda limits=[%g %g], bins=%i", lmin, lmax, lbin); +Use in TRACE: Monitor_nD(... options=op ...) + +How to monitor any instrument/component variable into a Monitor_nD +Suppose you want to monitor a variable 'age' which you assign somwhere in +the instrument: +COMPONENT MyMonitor = Monitor_nD( +xwidth = 0.1, yheight = 0.1, +user1="age", username1="Age of the Captain [years]", +options="user1, auto") +AT ... + +See also the example in PreMonitor_nD to +monitor neutron parameters cross-correlations. + +%BUGS +The 'auto' option for guessing optimal variable bounds should NOT be used with MPI +as each process may use different limits. +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| user1 | str | Variable name of USERVAR to be monitored by user1. | "" | +| user2 | str | Variable name of USERVAR to be monitored by user2. | "" | +| user3 | str | Variable name of USERVAR to be monitored by user3. | "" | +| xwidth | m | Width of detector. | 0 | +| yheight | m | Height of detector. | 0 | +| zdepth | m | Thickness of detector (z). | 0 | +| xmin | m | Lower x bound of opening | 0 | +| xmax | m | Upper x bound of opening | 0 | +| ymin | m | Lower y bound of opening | 0 | +| ymax | m | Upper y bound of opening | 0 | +| zmin | m | Lower z bound of opening | 0 | +| zmax | m | Upper z bound of opening | 0 | +| bins | 1 | Number of bins to force for all variables. Use 'bins' keyword in 'options' for heterogeneous bins | 0 | +| min | u | Minimum range value to force for all variables. Use 'min' or 'limits' keyword in 'options' for other limits | -1e40 | +| max | u | Maximum range value to force for all variables. Use 'max' or 'limits' keyword in 'options' for other limits | 1e40 | +| restore_neutron | 0\|1 | If set, the monitor does not influence the neutron state. Equivalent to setting the 'parallel' option. | 0 | +| radius | m | Radius of sphere/banana shape monitor | 0 | +| options | str | String that specifies the configuration of the monitor. The general syntax is "[x] options..." (see Descr.). | "NULL" | +| filename | str | Output file name (overrides file=XX option). | "NULL" | +| geometry | str | Name of an OFF file to specify a complex geometry detector | "NULL" | +| nowritefile | 1 | If set, monitor will skip writing to disk | 0 | +| nexus_bins | 1 | NeXus mode only: store component BIN information
    (-1 disable, 0 enable for list mode monitor, 1 enable for any montor) | 0 | +| username1 | str | Name assigned to User1 | "NULL" | +| username2 | str | Name assigned to User2 | "NULL" | +| username3 | str | Name assigned to User3 | "NULL" | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/monitors/Monitor_nD.comp) for `Monitor_nD.comp`. +- PreMonitor_nD + +--- + +*Generated on mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/monitors/Monitor_nD_noacc.md b/mcstas-comps/monitors/Monitor_nD_noacc.md new file mode 100644 index 000000000..53c848ac2 --- /dev/null +++ b/mcstas-comps/monitors/Monitor_nD_noacc.md @@ -0,0 +1,221 @@ +# The `Monitor_nD_noacc` Component + +*McStas: Release: McStas 1.6 +Version: $Revision$ + +This component is a general Monitor that can output 0/1/2D signals +(Intensity or signal vs. [something] and vs. [something] ...)* + +## Identification + +- **Site:** +- **Author:** Emmanuel Farhi +- **Origin:** ILL +- **Date:** 14th Feb 2000. + +## Description + +```text +This component is a general Monitor that can output 0/1/2D signals +It can produce many 1D signals (one for any variable specified in +option list), or a single 2D output (two variables correlation). +Also, an additional 'list' of neutron events can be produced. +By default, monitor is square (in x/y plane). A disk shape is also possible +The 'cylinder' and 'banana' option will change that for a banana shape +The 'sphere' option simulates spherical detector. The 'box' is a box. +The cylinder, sphere and banana should be centered on the scattering point. +The monitored flux may be per monitor unit area, and weighted by +a lambda/lambda(2200m/s) factor to obtain standard integrated capture flux. +In normal configuration, the Monitor_nD measures the current parameters +of the neutron that is beeing detected. But a PreMonitor_nD component can +be used in order to study correlations between a neutron being detected in +a Monitor_nD place, and given parameters that are monitored elsewhere +(at PreMonitor_nD). +The monitor can also act as a 3He gas detector, taking into account the +detection efficiency. + +The 'bins' and 'limits' modifiers are to be used after each variable, +and 'auto','log' and 'abs' come before it. (eg: auto abs log hdiv bins=10 +limits=[-5 5]) When placed after all variables, these two latter modifiers +apply to the signal (e.g. intensity). Unknown keywords are ignored. +If no limits are specified for a given observable, reasonable defaults will be +applied. Note that these implicit limits are even applied in list mode. + +Implicit limits for typical variables: +(consult monitor_nd-lib.c if you don't find your variable here) +x, y, z: Derived from detection-object geometry +k: [0 10] Angs-1 +v: [0 1e6] m/s +t: [0 1] s +p: [0 FLT_MAX] in intensity-units +vx, vy: [-1000 1000] m/s +vz: [0 10000] m/s +kx, ky: [-1 1] Angs-1 +kz: [-10 10] Angs-1 +energy, omega: [0 100] meV +lambda,wavelength: [0 100] Angs +sx, sy, sz: [-1 1] in polarisation-units +angle: [-50 50] deg +divergence, vdiv, hdiv, xdiv, ydiv: [-5 5] deg +longitude, lattitude: [-180 180] deg +neutron: [0 simulaton_ncount] +id, pixel id: [0 FLT_MAX] +uservars u1,u2,u3: [-1e10 1e10] + +In the case of multiple components at the same position, the 'parallel' +keyword must be used in each instance instead of defining a GROUP. + +Possible options are +Variables to record: +kx ky kz k wavevector [Angs-1] Wavevector on x,y,z and norm +vx vy vz v [m/s] Velocity on x,y,z and norm +x y z radius [m] Distance, Position and norm +xy, yz, xz [m] Radial position in xy, yz and xz plane +kxy kyz kxz [Angs-1] Radial wavevector in xy, yz and xz plane +vxy vyz vxz [m/s] Radial velocity in xy, yz and xz plane +t time [s] Time of Flight +energy omega [meV] energy of neutron +lambda wavelength [Angs] wavelength of neutron +sx sy sz [1] Spin +vdiv ydiv dy [deg] vertical divergence (y) +hdiv divergence xdiv [deg] horizontal divergence (x) +angle [deg] divergence from direction +theta longitude [deg] longitude (x/z) for sphere and cylinder +phi lattitude [deg] lattitude (y/z) for sphere and cylinder + +user user1 will monitor the [Mon_Name]_Vars.UserVariable{1|2|3} +user2 user3 to be assigned in an other component (see below) + +p intensity flux [n/s or n/cm^2/s] +ncounts n neutron [1] neutron ID, i.e current event index +pixel id [1] pixelID in histogram made of preceeding vars, e.g. 'theta y'. To set an offset PixelID use the 'min=value' keyword. Sets event mode. + +Other options keywords are: +abs Will monitor the abs of the following variable or of the signal (if used after all variables) +auto Automatically set detector limits for one/all +all {limits|bins|auto} To set all limits or bins values or auto mode +binary {float|double} with 'source' option, saves in compact files +bins=[bins=20] Number of bins in the detector along dimension +borders To also count off-limits neutrons (X < min or X > max) +capture weight by lambda/lambda(2200m/s) capture flux +file=string Detector image file name. default is component name, plus date and variable extension. +incoming Monitor incoming beam in non flat det +limits=[min max] Lower/Upper limits for axes (see up for the variable unit) +list=[counts=1000] or all For a long file of neutron characteristics with [counts] or all events +log Will monitor the log of the following variable or of the signal (if used after all variables) +min=[min_value] Same as limits, but only sets the min or max +max=[max_value] +multiple Create multiple independant 1D monitors files +no or not Revert next option +outgoing Monitor outgoing beam (default) +parallel Use this option when the next component is at the same position (parallel components) +per cm2 Intensity will be per cm^2 (detector area). Displays beam section. +per steradian Displays beam solid angle in steradian +premonitor Will monitor neutron parameters stored previously with PreMonitor_nD. +signal=[var] Will monitor [var] instead of usual intensity +slit or absorb Absorb neutrons that are out detector +source The monitor will save neutron states +inactivate To inactivate detector (0D detector) +verbose To display additional informations +3He_pressure=[3 in bars] The 3He gas pressure in detector. 3He_pressure=0 is perfect detector (default) + +Detector shape options (specified as xwidth,yheight,zdepth or x/y/z/min/max) +box Box of size xwidth, yheight, zdepth. +cylinder To get a cylindrical monitor (diameter is xwidth or set radius, height is yheight). +banana Same as cylinder, without top/bottom, on restricted angular area; use theta variable with limits to define arc. (diameter is xwidth or set radius, height is yheight). +disk Disk flat xy monitor. diameter is xwidth. +sphere To get a spherical monitor (e.g. a 4PI) (diameter is xwidth or set radius). +square Square flat xy monitor (xwidth, yheight). +previous The monitor uses PREVIOUS component as detector surface. Or use 'geometry' parameter to specify any PLY/OFF geometry file. + +EXAMPLES: +
      +
    • MyMon = Monitor_nD(xwidth = 0.1, yheight = 0.1, zdepth = 0, +  options = "intensity per cm2 angle,limits=[-5 5] bins=10,with +  borders, file = mon1"); +will monitor neutron angle from [z] axis, between -5 +and 5 degrees, in 10 bins, into "mon1.A" output 1D file + +
    • options = "sphere theta phi outgoing" +for a sphere PSD detector (out beam) and saves into file "MyMon_[Date_ID].th_ph" + +
    • options = "banana, theta limits=[10,130], bins=120, y" +a theta/height banana detector + +
    • options = "angle radius all auto" +is a 2D monitor with automatic limits + +
    • options = "list=1000 kx ky kz energy" +records 1000 neutron event in a file + +
    • options = "multiple kx ky kz, auto abs log t, and list all neutrons" +makes 4 output 1D files and produces a complete list for all neutrons +and monitor log(abs(tof)) within automatic limits (for t) + +
    • options = "theta y, sphere, pixel min=100" +a 4pi detector which outputs an event list with pixelID from the actual +detector surface, starting from index 100. + +
    +To dynamically define a number of bins, or limits: +Use in DECLARE: char op[256]; +Use in INITIALIZE: sprintf(op, "lambda limits=[%g %g], bins=%i", lmin, lmax, lbin); +Use in TRACE: Monitor_nD(... options=op ...) + +How to monitor any instrument/component variable into a Monitor_nD +Suppose you want to monitor a variable 'age' which you assign somwhere in +the instrument: +COMPONENT MyMonitor = Monitor_nD( +xwidth = 0.1, yheight = 0.1, +user1="age", username1="Age of the Captain [years]", +options="user1, auto") +AT ... + +See also the example in PreMonitor_nD to +monitor neutron parameters cross-correlations. + +%BUGS +The 'auto' option for guessing optimal variable bounds should NOT be used with MPI +as each process may use different limits. +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| user1 | str | Variable name of USERVAR to be monitored by user1. | "" | +| user2 | str | Variable name of USERVAR to be monitored by user2. | "" | +| user3 | str | Variable name of USERVAR to be monitored by user3. | "" | +| xwidth | m | Width of detector. | 0 | +| yheight | m | Height of detector. | 0 | +| zdepth | m | Thickness of detector (z). | 0 | +| xmin | m | Lower x bound of opening | 0 | +| xmax | m | Upper x bound of opening | 0 | +| ymin | m | Lower y bound of opening | 0 | +| ymax | m | Upper y bound of opening | 0 | +| zmin | m | Lower z bound of opening | 0 | +| zmax | m | Upper z bound of opening | 0 | +| bins | 1 | Number of bins to force for all variables. Use 'bins' keyword in 'options' for heterogeneous bins | 0 | +| min | u | Minimum range value to force for all variables. Use 'min' or 'limits' keyword in 'options' for other limits | -1e40 | +| max | u | Maximum range value to force for all variables. Use 'max' or 'limits' keyword in 'options' for other limits | 1e40 | +| restore_neutron | 0\|1 | If set, the monitor does not influence the neutron state. Equivalent to setting the 'parallel' option. | 0 | +| radius | m | Radius of sphere/banana shape monitor | 0 | +| options | str | String that specifies the configuration of the monitor. The general syntax is "[x] options..." (see Descr.). | "NULL" | +| filename | str | Output file name (overrides file=XX option). | "NULL" | +| geometry | str | Name of an OFF file to specify a complex geometry detector | "NULL" | +| nowritefile | 1 | If set, monitor will skip writing to disk | 0 | +| nexus_bins | 1 | NeXus mode only: store component BIN information
    (-1 disable, 0 enable for list mode monitor, 1 enable for any montor) | 0 | +| username1 | str | Name assigned to User1 | "NULL" | +| username2 | str | Name assigned to User2 | "NULL" | +| username3 | str | Name assigned to User3 | "NULL" | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/monitors/Monitor_nD_noacc.comp) for `Monitor_nD_noacc.comp`. +- PreMonitor_nD + +--- + +*Generated on mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/monitors/PSD_TOF_monitor.md b/mcstas-comps/monitors/PSD_TOF_monitor.md new file mode 100644 index 000000000..42c1b45eb --- /dev/null +++ b/mcstas-comps/monitors/PSD_TOF_monitor.md @@ -0,0 +1,49 @@ +# The `PSD_TOF_monitor` Component + +*McStas: Position-sensitive monitor with TOF slices.* + +## Identification + +- **Site:** +- **Author:** Peter Willendrup, derived from PSD_monitor by Kim Lefmann +- **Origin:** Risoe +- **Date:** Feb 3, 1998 + +## Description + +```text +An (nx times ny) pixel PSD monitor with nt time bins pr pixel. + +Will output nt PSD images plus 1 integrated image. + +Example: PSD_TOF_monitor(xmin=-0.1, xmax=0.1, ymin=-0.1, ymax=0.1, nx=90, ny=90, tmin=4000, tmax=7000, nt=3, filename="Output") +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| nx | 1 | Number of pixel columns | 90 | +| ny | 1 | Number of pixel rows | 90 | +| nt | 1 | Number of TOF bins | 10 | +| restore_neutron | 1 | If set, the monitor does not influence the neutron state | 0 | +| filename | string | Name of file in which to store the detector image | 0 | +| xmin | m | Lower x bound of detector opening | 0 | +| xmax | m | Upper x bound of detector opening | 0 | +| ymin | m | Lower y bound of detector opening | 0 | +| ymax | m | Upper y bound of detector opening | 0 | +| xwidth | m | Width/diameter of detector (x). Overrides xmin, xmax | 0 | +| yheight | m | Height of detector (y). Overrides ymin, ymax | 0 | +| tmin | mu-s | Lower time bound | 0 | +| tmax | mu-s | Upper time bound | 0 | +| nowritefile | 1 | If set, monitor will skip writing to disk | 0 | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/monitors/PSD_TOF_monitor.comp) for `PSD_TOF_monitor.comp`. + +--- + +*Generated on mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/monitors/PSD_monitor.md b/mcstas-comps/monitors/PSD_monitor.md new file mode 100644 index 000000000..c45e695c3 --- /dev/null +++ b/mcstas-comps/monitors/PSD_monitor.md @@ -0,0 +1,45 @@ +# The `PSD_monitor` Component + +*McStas: Position-sensitive monitor.* + +## Identification + +- **Site:** +- **Author:** Kim Lefmann +- **Origin:** Risoe +- **Date:** Feb 3, 1998 + +## Description + +```text +An (n times m) pixel PSD monitor. This component may also be used as a beam +detector. + +Example: PSD_monitor(xmin=-0.1, xmax=0.1, ymin=-0.1, ymax=0.1, nx=90, ny=90, filename="Output.psd") +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| nx | 1 | Number of pixel columns | 90 | +| ny | 1 | Number of pixel rows | 90 | +| filename | string | Name of file in which to store the detector image | 0 | +| xmin | m | Lower x bound of detector opening | -0.05 | +| xmax | m | Upper x bound of detector opening | 0.05 | +| ymin | m | Lower y bound of detector opening | -0.05 | +| ymax | m | Upper y bound of detector opening | 0.05 | +| xwidth | m | Width of detector. Overrides xmin, xmax | 0 | +| yheight | m | Height of detector. Overrides ymin, ymax | 0 | +| restore_neutron | 1 | If set, the monitor does not influence the neutron state | 0 | +| nowritefile | 1 | If set, monitor will skip writing to disk | 0 | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/monitors/PSD_monitor.comp) for `PSD_monitor.comp`. + +--- + +*Generated on mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/monitors/PSD_monitor_4PI.md b/mcstas-comps/monitors/PSD_monitor_4PI.md new file mode 100644 index 000000000..cc0a2abde --- /dev/null +++ b/mcstas-comps/monitors/PSD_monitor_4PI.md @@ -0,0 +1,42 @@ +# The `PSD_monitor_4PI` Component + +*McStas: Spherical position-sensitive detector.* + +## Identification + +- **Site:** +- **Author:** Kim Lefmann and Kristian Nielsen +- **Origin:** Risoe +- **Date:** April 17, 1998 + +## Description + +```text +An (n times m) pixel spherical PSD monitor using a cylindrical projection. +Mostly for test and debugging purposes. + +Example: PSD_monitor_4PI(radius=0.1, nx=90, ny=90, filename="Output.psd") +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| nx | 1 | Number of pixel columns | 90 | +| ny | 1 | Number of pixel rows | 90 | +| filename | string | Name of file in which to store the detector image | 0 | +| nowritefile | 1 | If set, monitor will skip writing to disk | 0 | +| radius | m | Radius of detector | 1 | +| restore_neutron | 1 | If set, the monitor does not influence the neutron state | 0 | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/monitors/PSD_monitor_4PI.comp) for `PSD_monitor_4PI.comp`. +- Test +- results (not up-to-date). + +--- + +*Generated on mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/monitors/PSD_monitor_4PI_spin.md b/mcstas-comps/monitors/PSD_monitor_4PI_spin.md new file mode 100644 index 000000000..91b72bdf3 --- /dev/null +++ b/mcstas-comps/monitors/PSD_monitor_4PI_spin.md @@ -0,0 +1,43 @@ +# The `PSD_monitor_4PI_spin` Component + +*McStas: Spherical position-sensitive detector with spin weighting* + +## Identification + +- **Site:** +- **Author:** Erik B Knudsen +- **Origin:** DTU +- **Date:** April 17, 2010 + +## Description + +```text +An (n times m) pixel spherical PSD monitor using a cylindrical projection. +Mostly for test and debugging purposes. + +Example: PSD_monitor_4PI(radius=0.1, +nx=90, ny=90, filename="Output.psd") +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| nx | 1 | Number of pixel columns | 90 | +| ny | 1 | Number of pixel rows | 90 | +| **radius** | m | Radius of detector | | +| filename | str | Name of file in which to store the detector image | 0 | +| restore_neutron | 1 | If set, the monitor does not influence the neutron state x | 0 | +| mx | 1 | x-component of spin reference-vector | 0 | +| my | 1 | y-component of spin reference-vector | 1 | +| mz | 1 | z-component of spin reference-vector | 0 | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/monitors/PSD_monitor_4PI_spin.comp) for `PSD_monitor_4PI_spin.comp`. + +--- + +*Generated on mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/monitors/PSD_monitor_TOF.md b/mcstas-comps/monitors/PSD_monitor_TOF.md new file mode 100644 index 000000000..2ac7c678d --- /dev/null +++ b/mcstas-comps/monitors/PSD_monitor_TOF.md @@ -0,0 +1,49 @@ +# The `PSD_monitor_TOF` Component + +*McStas: Position-sensitive monitor with a TOF signal pr. bin.* + +## Identification + +- **Site:** +- **Author:** Peter Willendrup, derived from PSD_monitor by Kim Lefmann +- **Origin:** Risoe +- **Date:** Feb 3, 1998 + +## Description + +```text +An (nx times ny) pixel PSD monitor with nt time bins pr pixel. + +Will output 1 integrated PSD images plus an nt time bin TOF signal pr pixel. + +Example: PSD_monitor_TOF(xmin=-0.1, xmax=0.1, ymin=-0.1, ymax=0.1, nx=90, ny=90, tmin=4000, tmax=7000, nt=1000, filename="Output") +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| nx | 1 | Number of pixel columns | 90 | +| ny | 1 | Number of pixel rows | 90 | +| nt | 1 | Number of TOF bins | 10 | +| restore_neutron | 1 | If set, the monitor does not influence the neutron state | 0 | +| filename | string | Name of file in which to store the detector image | 0 | +| nowritefile | 1 | If set, monitor will skip writing to disk | 0 | +| xmin | m | Lower x bound of detector opening | 0 | +| xmax | m | Upper x bound of detector opening | 0 | +| ymin | m | Lower y bound of detector opening | 0 | +| ymax | m | Upper y bound of detector opening | 0 | +| xwidth | m | Width/diameter of detector (x). Overrides xmin, xmax | 0 | +| yheight | m | Height of detector (y). Overrides ymin, ymax | 0 | +| tmin | mu-s | Lower time bound | 0 | +| tmax | mu-s | Upper time bound | 0 | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/monitors/PSD_monitor_TOF.comp) for `PSD_monitor_TOF.comp`. + +--- + +*Generated on mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/monitors/PSD_monitor_psf.md b/mcstas-comps/monitors/PSD_monitor_psf.md new file mode 100644 index 000000000..bc3161cad --- /dev/null +++ b/mcstas-comps/monitors/PSD_monitor_psf.md @@ -0,0 +1,46 @@ +# The `PSD_monitor_psf` Component + +*McStas: Position-sensitive monitor.* + +## Identification + +- **Site:** +- **Author:** Kim Lefmann, Linda Udby +- **Origin:** Risoe +- **Date:** Feb 3, 1998 + +## Description + +```text +An (n times m) pixel PSD monitor. This component may also be used as a beam +detector. + +Example: PSD_monitor(xmin=-0.1, xmax=0.1, ymin=-0.1, ymax=0.1, nx=90, ny=90, filename="Output.psd") +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| nx | 1 | Number of pixel columns | 90 | +| ny | 1 | Number of pixel rows | 90 | +| restore_neutron | 1 | If set, the monitor does not influence the neutron state | 0 | +| filename | string | Name of file in which to store the detector image | 0 | +| nowritefile | 1 | If set, monitor will skip writing to disk | 0 | +| xmin | m | Lower x bound of detector opening | 0 | +| xmax | m | Upper x bound of detector opening | 0 | +| ymin | m | Lower y bound of detector opening | 0 | +| ymax | m | Upper y bound of detector opening | 0 | +| xwidth | m | Width/diameter of detector (x). Overrides xmin, xmax | 0 | +| yheight | m | Height of detector (y). Overrides ymin, ymax | 0 | +| psf | m | Point spread function, ray (x,y) coordinate randomized by gaussion of sigma psf | 0 | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/monitors/PSD_monitor_psf.comp) for `PSD_monitor_psf.comp`. + +--- + +*Generated on mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/monitors/PSD_monitor_psf_eff.md b/mcstas-comps/monitors/PSD_monitor_psf_eff.md new file mode 100644 index 000000000..3580efe6a --- /dev/null +++ b/mcstas-comps/monitors/PSD_monitor_psf_eff.md @@ -0,0 +1,48 @@ +# The `PSD_monitor_psf_eff` Component + +*McStas: Position-sensitive monitor.* + +## Identification + +- **Site:** +- **Author:** Kim Lefmann, Linda Udby +- **Origin:** Risoe +- **Date:** Feb 3, 1998 + +## Description + +```text +An (n times m) pixel PSD monitor. This component may also be used as a beam +detector. Models 1/k behaviour and efficiency, based on user defined k0 and eff parameters. + +Example: PSD_monitor(xmin=-0.1, xmax=0.1, ymin=-0.1, ymax=0.1, nx=90, ny=90, filename="Output.psd") +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| nx | 1 | Number of pixel columns | 90 | +| ny | 1 | Number of pixel rows | 90 | +| filename | string | Name of file in which to store the detector image | 0 | +| xmin | m | Lower x bound of detector opening | 0 | +| xmax | m | Upper x bound of detector opening | 0 | +| ymin | m | Lower y bound of detector opening | 0 | +| ymax | m | Upper y bound of detector opening | 0 | +| nowritefile | 1 | If set, monitor will skip writing to disk | 0 | +| xwidth | m | Width/diameter of detector (x). Overrides xmin, xmax | 0 | +| yheight | m | Height of detector (y). Overrides ymin, ymax | 0 | +| psf | m | Point spread function, ray (x,y) coordinate randomized by gaussion of sigma psf | 0 | +| k0 | AA^-1 | Numerator in k0/k weighting | 1 | +| eff | 1 | Detector efficiency | 1 | +| restore_neutron | 1 | If set, the monitor does not influence the neutron state | 0 | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/monitors/PSD_monitor_psf_eff.comp) for `PSD_monitor_psf_eff.comp`. + +--- + +*Generated on mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/monitors/PSDcyl_monitor.md b/mcstas-comps/monitors/PSDcyl_monitor.md new file mode 100644 index 000000000..2639fc7e8 --- /dev/null +++ b/mcstas-comps/monitors/PSDcyl_monitor.md @@ -0,0 +1,44 @@ +# The `PSDcyl_monitor` Component + +*McStas: A 2D Position-sensitive monitor. The shape is cylindrical with +the axis vertical. The monitor covers the whole cylinder (360 degrees).* + +## Identification + +- **Site:** +- **Author:** Kim Lefmann +- **Origin:** Risoe +- **Date:** October 26, 2000 + +## Description + +```text +An (n times m) pixel PSD monitor with cylinder shape, +vertical axis, centered at (0,0,0). + +Example: PSDcyl_monitor(nr=20, ny=20, filename="Output.cyl", yheight=0.2, radius=0.1) +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| nr | 1 | Number of pixel (radial) columns | 20 | +| ny | 1 | Number of pixel rows | 20 | +| filename | string | Name of file in which to store the detector image | 0 | +| yheight | m | Height of detector | 0.3 | +| radius | m | Radius of detector | 1 | +| restore_neutron | 1 | If set, the monitor does not influence the neutron state | 0 | +| thmin | deg | Minimum angle covered/measured | 0 | +| thmax | deg | Maximum angle covered/measured | 360 | +| nowritefile | 1 | If set, monitor will skip writing to disk | 0 | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/monitors/PSDcyl_monitor.comp) for `PSDcyl_monitor.comp`. + +--- + +*Generated on mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/monitors/PSDlin_diff_monitor.md b/mcstas-comps/monitors/PSDlin_diff_monitor.md new file mode 100644 index 000000000..2daddf4c3 --- /dev/null +++ b/mcstas-comps/monitors/PSDlin_diff_monitor.md @@ -0,0 +1,43 @@ +# The `PSDlin_diff_monitor` Component + +*McStas: Rectangular 1D PSD, measuring intensity vs. horizontal position, x +A second monitor shows the difference of intensities between in n'th and (n-1)'th pixels.* + +## Identification + +- **Site:** +- **Author:** Kim Lefmann, Peter Willendrup, Linda Udby +- **Origin:** Risoe +- **Date:** May 7, 2001 + +## Description + +```text +Example: PSDlin_diff_monitor(nx=20, filename="Output.x", +xmin=-0.1, xmax=0.1, ymin=-0.1, ymax=0.1) +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| nx | 1 | Number of x bins | 20 | +| filename | string | Name of file in which to store the detector image | 0 | +| xmin | m | Lower x bound of detector opening | -0.05 | +| xmax | m | Upper x bound of detector opening | 0.05 | +| ymin | m | Lower y bound of detector opening | -0.05 | +| ymax | m | Upper y bound of detector opening | 0.05 | +| nowritefile | 1 | If set, monitor will skip writing to disk | 0 | +| xwidth | m | Width of detector. Overrides xmin,xmax. | 0 | +| yheight | m | Height of detector. Overrides ymin,ymax. | 0 | +| restore_neutron | 1 | If set, the monitor does not influence the neutron state | 0 | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/monitors/PSDlin_diff_monitor.comp) for `PSDlin_diff_monitor.comp`. + +--- + +*Generated on mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/monitors/PSDlin_monitor.md b/mcstas-comps/monitors/PSDlin_monitor.md new file mode 100644 index 000000000..2a80bfdce --- /dev/null +++ b/mcstas-comps/monitors/PSDlin_monitor.md @@ -0,0 +1,46 @@ +# The `PSDlin_monitor` Component + +*McStas: Rectangular 1D PSD, measuring intensity vs. position along an axis,* + +## Identification + +- **Site:** +- **Author:** Kim Lefmann +- **Origin:** Risoe +- **Date:** May 7, 2001 + +## Description + +```text +A 1-dimensional PSD measuring intensity along either the horizontal axis x (default) or +the vertical axis y. + + +Example: PSDlin_monitor(nbins=20, filename="Output.x", xmin=-0.1, xmax=0.1, ymin=-0.1, ymax=0.1) +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| nbins | 1 | Number of positional bins. | 20 | +| filename | str | Name of file in which to store the detector image. | 0 | +| xmin | m | Lower x bound of detector opening. | -0.05 | +| xmax | m | Upper x bound of detector opening. | 0.05 | +| ymin | m | Lower y bound of detector opening. | -0.05 | +| ymax | m | Upper y bound of detector opening. | 0.05 | +| nowritefile | 1 | If set, monitor will skip writing to disk | 0 | +| xwidth | m | Width of detector. Overrides xmin, xmax. | 0 | +| yheight | m | Height of detector. Overrides ymin, ymax. | 0 | +| restore_neutron | 1 | If set, the monitor does not influence the neutron state. | 0 | +| vertical | 1 | Flag to indicate whether the monitor measures along the horiz. or vert. axis | 0 | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/monitors/PSDlin_monitor.comp) for `PSDlin_monitor.comp`. + +--- + +*Generated on mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/monitors/PolLambda_monitor.md b/mcstas-comps/monitors/PolLambda_monitor.md new file mode 100644 index 000000000..e2634a588 --- /dev/null +++ b/mcstas-comps/monitors/PolLambda_monitor.md @@ -0,0 +1,47 @@ +# The `PolLambda_monitor` Component + +*McStas: Polarisation and wavelength sensitive monitor.* + +## Identification + +- **Site:** +- **Author:** Peter Christiansen +- **Origin:** Risoe +- **Date:** July 2006 + +## Description + +```text +A square single monitor that measures the projection of the +polarisation along a given normalized m-vector (mx, my, mz) as a +function of wavelength. + +Example: Pollambda_monitor(Lmin=1, Lmax=20, nL=20, xwidth=0.1, yheight=0.1, npol=11, mx=0, my=1, mz=0, filename="pollambdaMon.data") +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| xwidth | m | Width of detector | 0.1 | +| yheight | m | Height of detector | 0.1 | +| nL | 1 | Number of bins in wavelength | 20 | +| npol | 1 | Number of bins in Pol | 21 | +| restore_neutron | 1 | If set, the monitor does not influence the neutron state | 0 | +| filename | string | Name of file in which to store the data | 0 | +| nowritefile | 1 | If set, monitor will skip writing to disk | 0 | +| mx | 1 | X-component of monitor vector (can be negative) | 0 | +| my | 1 | Y-component of monitor vector (can be negative) | 0 | +| mz | 1 | Z-component of monitor vector (can be negative) | 0 | +| **Lmin** | AA | Minimum wavelength detected | | +| **Lmax** | AA | Maximum wavelength detected | | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/monitors/PolLambda_monitor.comp) for `PolLambda_monitor.comp`. + +--- + +*Generated on mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/monitors/Pol_monitor.md b/mcstas-comps/monitors/Pol_monitor.md new file mode 100644 index 000000000..7bde859ef --- /dev/null +++ b/mcstas-comps/monitors/Pol_monitor.md @@ -0,0 +1,42 @@ +# The `Pol_monitor` Component + +*McStas: Polarisation sensitive monitor.* + +## Identification + +- **Site:** +- **Author:** Peter Christiansen +- **Origin:** Risoe +- **Date:** July 2006 + +## Description + +```text +A square single monitor that measures the projection of the +polarisation along a given normalized m-vector (mx, my, mz). +The measured quantity is: sx*mx+sy*my+mz*sz + +Example: Pol_monitor(xwidth=0.1, yheight=0.1, nchan=11, mx=0, my=1, mz=0) +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| xwidth | m | Width of detector | 0.1 | +| yheight | m | Height of detector | 0.1 | +| restore_neutron | 1 | If set, the monitor does not influence the neutron state | 0 | +| mx | 1 | X-component of monitor vector (can be negative) | 0 | +| my | 1 | Y-component of monitor vector (can be negative) | 0 | +| mz | 1 | Z-component of monitor vector (can be negative) | 0 | +| nowritefile | 1 | If set, monitor will skip writing to disk | 0 | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/monitors/Pol_monitor.comp) for `Pol_monitor.comp`. + +--- + +*Generated on mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/monitors/Res_monitor.md b/mcstas-comps/monitors/Res_monitor.md new file mode 100644 index 000000000..2b77b2b93 --- /dev/null +++ b/mcstas-comps/monitors/Res_monitor.md @@ -0,0 +1,62 @@ +# The `Res_monitor` Component + +*McStas: Monitor for resolution calculations* + +## Identification + +- **Site:** +- **Author:** Kristian Nielsen +- **Origin:** Risoe +- **Date:** 1999 + +## Description + +```text +A single detector/monitor, used together with the Res_sample component to +compute instrument resolution functions. Outputs a list of neutron +scattering events in the sample along with their intensities in the +detector. The output file may be analyzed with the mcresplot front-end. + +Example: Res_monitor(filename="Output.res", res_sample_comp="RSample", xmin=-0.1, xmax=0.1, ymin=-0.1, ymax=0.1) + +Setting the monitor geometry. +The optional parameter 'options' may be set as a string with the +following keywords. Default is rectangular ('square'): +box Box of size xwidth, yheight, zdepth +cylinder To get a cylindrical monitor (diameter is xwidth, height is yheight). +banana Same as cylinder, without top/bottom, on restricted angular area +disk Disk flat xy monitor. diameter is xwidth. +sphrere To get a spherical monitor (e.g. a 4PI) (diameter is xwidth). +square Square flat xy monitor (xwidth, yheight) +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| **res_sample_comp** | WITH quotes | Name of Res_sample component in the instrument definition | | +| filename | string | Name of output file. If unset, use automatic name | 0 | +| options | str | String that specifies the geometry of the monitor | 0 | +| xwidth | m | Width/diameter of detector | .1 | +| yheight | m | Height of detector | .1 | +| zdepth | m | Thichness of detector | 0 | +| radius | m | Radius of sphere/cylinder monitor | 0 | +| xmin | m | Lower x bound of detector opening | 0 | +| xmax | m | Upper x bound of detector opening | 0 | +| ymin | m | Lower y bound of detector opening | 0 | +| ymax | m | Upper y bound of detector opening | 0 | +| zmin | m | Lower z bound of detector opening | 0 | +| zmax | m | Upper z bound of detector opening | 0 | +| bufsize | 1 | Number of events to store. Use 0 to store all | 0 | +| restore_neutron | 1 | If set, the monitor does not influence the neutron state | 0 | +| live_calc | 1 | If set, the monitor directly outputs the resolution matrix | 1 | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/monitors/Res_monitor.comp) for `Res_monitor.comp`. + +--- + +*Generated on mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/monitors/Sqq_w_monitor.md b/mcstas-comps/monitors/Sqq_w_monitor.md new file mode 100644 index 000000000..58b982071 --- /dev/null +++ b/mcstas-comps/monitors/Sqq_w_monitor.md @@ -0,0 +1,63 @@ +# The `Sqq_w_monitor` Component + +*McStas: Monitor outputting a series of energy-planes in a subset of reciprocal space, spanned by +scattering vectors qa(x,z) and qb(x,z) in the component x-z plane.* + +## Identification + +- **Site:** +- **Author:** Peter Willendrup +- **Origin:** DTU +- **Date:** June-July, 2018 + +## Description + +```text +Cylindrical monitor on the x-z plane outputting a series of energy-planes in a subset of reciprocal +space, spanned by scattering vectors qa(x,z) and qb(x,z). + +The radius and yheight parameters are not used for propagation, but only to define the outgoing divergence +limit considered when estimating k_f + +The assumption is that the "current" neutron represents the final state, whereas the incoming state +is found by restoring the neutron state "index" components earlier. + +Example: Sqq_w_monitor(filename="output",radius=1, yheight=0.05, Emin=0,Emax=5,nE=11,nqa=100,nqb=100,qamin=1,qamax=10,qbmin=1qbmax=10, vix="vix", viy="viy", viz="viz") +AT (0,0,0) RELATIVE sample +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| radius | m | Cylinder radius | 1 | +| yheight | m | Cylinder height | 0.05 | +| qax | 1 | x-component of 1st q-vector | 1 | +| qaz | 1 | z-component of 1st q-vector | 0 | +| qbx | 1 | x-component of 2nd q-vector | 0 | +| qbz | 1 | z-component of 2nd q-vector | 1 | +| qamin | AA^-1 | Defines interval (qamin,qamax) where monitor measures in nqa bins | 0 | +| qamax | AA^-1 | Defines interval (qamin,qamax) where monitor measures in nqa bins | 2 | +| qbmin | AA^-1 | Defines interval (qbmin,qbmax) where monitor measures in nqb bins | 0 | +| qbmax | AA^-1 | Defines interval (qbmin,qbmax) where monitor measures in nqb bins | 2 | +| Emin | meV | Defines the energy-transfer [Emin,Emax] window to monitor in nE bins | 0 | +| Emax | meV | Defines the energy-transfer [Emax,Emax] window to monitor in nE bins | 5 | +| nqa | int | Number of bins along qa direction | 90 | +| nqb | int | Number of bins along qb direction | 90 | +| nE | int | Number of energy slices | 10 | +| filename | string | Base filename to use, nE+1 files will be output | 0 | +| nowritefile | 1 | If set, monitor will skip writing to disk | 0 | +| nosum | 1 | If set, monitor will skip writing the energy-summed array to disk | 0 | +| vix | string | Points to instrument-level USERVAR for reading an earlier x-velocity | "" | +| viy | string | Points to instrument-level USERVAR for reading an earlier y-velocity | "" | +| viz | string | Points to instrument-level USERVAR for reading an earlier z-velocity | "" | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/monitors/Sqq_w_monitor.comp) for `Sqq_w_monitor.comp`. + +--- + +*Generated on mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/monitors/Sqw_monitor.md b/mcstas-comps/monitors/Sqw_monitor.md new file mode 100644 index 000000000..8a9d9b952 --- /dev/null +++ b/mcstas-comps/monitors/Sqw_monitor.md @@ -0,0 +1,48 @@ +# The `Sqw_monitor` Component + +*McStas: Monitor outputting S(q,w)* + +## Identification + +- **Site:** +- **Author:** Peter Willendrup +- **Origin:** DTU +- **Date:** November, 2020 + +## Description + +```text +The assumption is that the "current" neutron represents the final state, whereas the incoming state +is found by restoring the neutron state "index" components earlier. + +Example: Sqw_monitor(filename="output", Emin=0,Emax=5,nE=11,nq=100,nqb=100,qmin=0,qmax=1,index=-2) +AT (0,0,0) RELATIVE sample +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| qmin | AA^-1 | Defines interval (qmin,qmax) where monitor measures in nq bins | 0 | +| qmax | AA^-1 | Defines interval (qmin,qmax) where monitor measures in nq bins | 2 | +| Emin | meV | Defines the energy-transfer [Emin,Emax] window to monitor in nE bins | 0 | +| Emax | meV | Defines the energy-transfer [Emax,Emax] window to monitor in nE bins | 5 | +| nq | int | Number of bins in q | 90 | +| nE | int | Number of energy slices | 90 | +| filename | string | Base filename to use, nE+1 files will be output | 0 | +| nowritefile | 1 | If set, monitor will skip writing to disk | 0 | +| vix | string | Points to instrument-level USERVAR for reading an earlier x-velocity | "" | +| viy | string | Points to instrument-level USERVAR for reading an earlier y-velocity | "" | +| viz | string | Points to instrument-level USERVAR for reading an earlier z-velocity | "" | +| radius | m | Cylinder radius (optional) | 0 | +| yheight | m | Cylinder height (optional) | 0 | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/monitors/Sqw_monitor.comp) for `Sqw_monitor.comp`. + +--- + +*Generated on mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/monitors/TOF2E_monitor.md b/mcstas-comps/monitors/TOF2E_monitor.md new file mode 100644 index 000000000..6077aaffa --- /dev/null +++ b/mcstas-comps/monitors/TOF2E_monitor.md @@ -0,0 +1,48 @@ +# The `TOF2E_monitor` Component + +*McStas: TOF-sensitive monitor, converting to energy* + +## Identification + +- **Site:** +- **Author:** Kim Lefmann and Helmuth Schoeber +- **Origin:** Risoe +- **Date:** Sept. 13, 2006 + +## Description + +```text +A square single monitor that measures the energy of the incoming neutrons +from their time-of-flight + +Example: TOF2E_monitor(xmin=-0.1, xmax=0.1, ymin=-0.1, ymax=0.1, Emin=1, Emax=50, nE=20, filename="Output.nrj", L_flight=20, T_zero=0) +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| nE | 1 | Number of energy channels | 20 | +| filename | string | Name of file in which to store the detector image | 0 | +| nowritefile | 1 | If set, monitor will skip writing to disk | 0 | +| xmin | m | Lower x bound of detector opening | -0.05 | +| xmax | m | Upper x bound of detector opening | 0.05 | +| ymin | m | Lower y bound of detector opening | -0.05 | +| ymax | m | Upper y bound of detector opening | 0.05 | +| xwidth | m | Width of detector. Overrides xmin, xmax | 0 | +| yheight | m | Height of detector. Overrides ymin, ymax | 0 | +| **Emin** | meV | Minimum energy to detect | | +| **Emax** | meV | Maximum energy to detect | | +| **T_zero** | s | Zero point in time | | +| **L_flight** | m | flight length user in conversion | | +| restore_neutron | 1 | If set, the monitor does not influence the neutron state | 0 | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/monitors/TOF2E_monitor.comp) for `TOF2E_monitor.comp`. + +--- + +*Generated on mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/monitors/TOF2Q_cylPSD_monitor.md b/mcstas-comps/monitors/TOF2Q_cylPSD_monitor.md new file mode 100644 index 000000000..0d3df4920 --- /dev/null +++ b/mcstas-comps/monitors/TOF2Q_cylPSD_monitor.md @@ -0,0 +1,48 @@ +# The `TOF2Q_cylPSD_monitor` Component + +*McStas: Cylindrical (2pi) Time-of-flight to Q monitor. +Calculates Q from TOF and known nominal grazing angle theta: +E = VS2E*(L_flight/(t-T_zero))*(L_flight/(t-T_zero)); +Q=2*sqrt(E/2.072)*sin(theta);* + +## Identification + +- **Site:** +- **Author:** Anette Vickery, derived from Lefmann TOF_cylPSD +- **Origin:** Risoe +- **Date:** October 2000 + +## Description + +```text + +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| **nQ** | 1 | Number of Q bins | | +| **ny** | 1 | Number of y bins | | +| filename | string | Name of file in which to store the detector image | 0 | +| nowritefile | 1 | If set, monitor will skip writing to disk | 0 | +| **radius** | m | Cylinder radius | | +| **yheight** | m | Cylinder height | | +| **Qmin** | AA^-1 | Beginning of Q-range | | +| **Qmax** | AA^-1 | End of Q-range | | +| ymin | m | Minimum value of y monitored | 0 | +| ymax | m | Maximum value of y monitored | 0 | +| **T_zero** | s | Beginning of time window | | +| **L_flight** | m | Nominal flightpath moderator--detector | | +| restore_neutron | 1 | If set, the monitor does not influence the neutron state | 0 | +| **theta** | rad | Nominal grazing angle | | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/monitors/TOF2Q_cylPSD_monitor.comp) for `TOF2Q_cylPSD_monitor.comp`. + +--- + +*Generated on mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/monitors/TOFLambda_monitor.md b/mcstas-comps/monitors/TOFLambda_monitor.md new file mode 100644 index 000000000..017b455e7 --- /dev/null +++ b/mcstas-comps/monitors/TOFLambda_monitor.md @@ -0,0 +1,47 @@ +# The `TOFLambda_monitor` Component + +*McStas: Time-of-flight/wavelength monitor.* + +## Identification + +- **Site:** +- **Author:** KL +- **Origin:** Risoe +- **Date:** September 28, 2001 + +## Description + +```text +2D detector for intensity as a function of both time-of-flight +and wavelength. +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| nowritefile | 1 | If set, monitor will skip writing to disk | 0 | +| nL | 1 | Number of bins in wavelength | 20 | +| nt | 1 | Number of bins in TOF | 128 | +| **tmin** | us | Minimum time | | +| **tmax** | us | Maximum time | | +| filename | string | Name of file in which to store the detector image | 0 | +| xmin | m | Lower x bound of detector opening | -0.05 | +| xmax | m | Upper x bound of detector opening | 0.05 | +| ymin | m | Lower y bound of detector opening | -0.05 | +| ymax | m | Upper y bound of detector opening | 0.05 | +| xwidth | m | Width/diameter of detector (x). Overrides xmin, xmax | 0 | +| yheight | m | Height of detector (y). Overrides ymin, ymax | 0 | +| **Lmin** | AA | Minimum wavelength detected | | +| **Lmax** | AA | Maximum wavelength detected | | +| restore_neutron | 1 | If set, the monitor does not influence the neutron state | 0 | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/monitors/TOFLambda_monitor.comp) for `TOFLambda_monitor.comp`. + +--- + +*Generated on mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/monitors/TOFRes_monitor.md b/mcstas-comps/monitors/TOFRes_monitor.md new file mode 100644 index 000000000..750613dc3 --- /dev/null +++ b/mcstas-comps/monitors/TOFRes_monitor.md @@ -0,0 +1,62 @@ +# The `TOFRes_monitor` Component + +*McStas: Monitor for resolution calculations, TOFRes version, for use with TOFRes_sample in 3.x* + +## Identification + +- **Site:** +- **Author:** Kristian Nielsen +- **Origin:** Risoe +- **Date:** 1999 + +## Description + +```text +A single detector/monitor, used together with the TOFRes_sample component to +compute instrument resolution functions. Outputs a list of neutron +scattering events in the sample along with their intensities in the +detector. The output file may be analyzed with the mcresplot front-end. + +Example: TOFRes_monitor(filename="Output.res", res_sample_comp="RSample", xmin=-0.1, xmax=0.1, ymin=-0.1, ymax=0.1) + +Setting the monitor geometry. +The optional parameter 'options' may be set as a string with the +following keywords. Default is rectangular ('square'): +box Box of size xwidth, yheight, zdepth +cylinder To get a cylindrical monitor (diameter is xwidth, height is yheight). +banana Same as cylinder, without top/bottom, on restricted angular area +disk Disk flat xy monitor. diameter is xwidth. +sphrere To get a spherical monitor (e.g. a 4PI) (diameter is xwidth). +square Square flat xy monitor (xwidth, yheight) +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| **res_sample_comp** | WITH quotes | Name of TOFRes_sample component in the instrument definition | | +| filename | string | Name of output file. If unset, use automatic name | 0 | +| options | str | String that specifies the geometry of the monitor | 0 | +| xwidth | m | Width/diameter of detector | .1 | +| yheight | m | Height of detector | .1 | +| zdepth | m | Thichness of detector | 0 | +| radius | m | Radius of sphere/cylinder monitor | 0 | +| xmin | m | Lower x bound of detector opening | 0 | +| xmax | m | Upper x bound of detector opening | 0 | +| ymin | m | Lower y bound of detector opening | 0 | +| ymax | m | Upper y bound of detector opening | 0 | +| zmin | m | Lower z bound of detector opening | 0 | +| zmax | m | Upper z bound of detector opening | 0 | +| bufsize | 1 | Number of events to store. Use 0 to store all | 0 | +| restore_neutron | 1 | If set, the monitor does not influence the neutron state | 0 | +| live_calc | 1 | If set, the monitor directly outputs the resolution matrix | 1 | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/monitors/TOFRes_monitor.comp) for `TOFRes_monitor.comp`. + +--- + +*Generated on mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/monitors/TOF_PSD_monitor_rad.md b/mcstas-comps/monitors/TOF_PSD_monitor_rad.md new file mode 100644 index 000000000..487d4594a --- /dev/null +++ b/mcstas-comps/monitors/TOF_PSD_monitor_rad.md @@ -0,0 +1,45 @@ +# The `TOF_PSD_monitor_rad` Component + +*McStas: Position-sensitive TOF monitor with radially averaging.* + +## Identification + +- **Site:** +- **Author:** Kim Lefmann +- **Origin:** UCPH +- **Date:** March 2012 + +## Description + +```text +TOF monitor that performs radial averaging. +Comment: The intensity is given as two 2D files: +1) a radial sum vs. TOF +2) a radial average (i.e. intensity per area) vs. TOF + +Example: TOF_PSD_monitor_rad(rmax=0.2, nr=100, filename="Output.psd", filename_av="Output_av.psd") +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| nr | 1 | Number of concentric circles | 100 | +| nt | 1 | Number of time bins | 100 | +| nowritefile | 1 | If set, monitor will skip writing to disk | 0 | +| filename | string | Name of file in which to store the detector image | 0 | +| filename_av | string | Name of file in which to store the averaged detector image | 0 | +| rmax | m | Outer radius of detector | 0.2 | +| **tmin** | mu-s | Beginning of time window | | +| **tmax** | mu-s | End of time window | | +| restore_neutron | 1 | If set, the monitor does not influence the neutron state | 0 | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/monitors/TOF_PSD_monitor_rad.comp) for `TOF_PSD_monitor_rad.comp`. + +--- + +*Generated on mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/monitors/TOF_cylPSD_monitor.md b/mcstas-comps/monitors/TOF_cylPSD_monitor.md new file mode 100644 index 000000000..d6ddfaff5 --- /dev/null +++ b/mcstas-comps/monitors/TOF_cylPSD_monitor.md @@ -0,0 +1,40 @@ +# The `TOF_cylPSD_monitor` Component + +*McStas: Cylindrical (2pi) PSD Time-of-flight monitor.* + +## Identification + +- **Site:** +- **Author:** Kim Lefmann +- **Origin:** Risoe +- **Date:** October 2000 + +## Description + +```text + +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| nt | 1 | Number of time bins | 128 | +| nphi | deg | Number of angular bins | 90 | +| filename | string | Name of file in which to store the detector image | 0 | +| nowritefile | 1 | If set, monitor will skip writing to disk | 0 | +| radius | m | Cylinder radius | 1 | +| yheight | m | Cylinder height | 0.3 | +| **tmin** | mu-s | Beginning of time window | | +| **tmax** | mu-s | End of time window | | +| restore_neutron | 1 | If set, the monitor does not influence the neutron state | 0 | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/monitors/TOF_cylPSD_monitor.comp) for `TOF_cylPSD_monitor.comp`. + +--- + +*Generated on mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/monitors/TOF_monitor.md b/mcstas-comps/monitors/TOF_monitor.md new file mode 100644 index 000000000..53d52cf71 --- /dev/null +++ b/mcstas-comps/monitors/TOF_monitor.md @@ -0,0 +1,44 @@ +# The `TOF_monitor` Component + +*McStas: Rectangular Time-of-flight monitor.* + +## Identification + +- **Site:** +- **Author:** KN, M. Hagen +- **Origin:** Risoe +- **Date:** August 1998 + +## Description + +```text + +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| nt | 1 | Number of time bins | 20 | +| filename | string | Name of file in which to store the detector image | 0 | +| xmin | m | Lower x bound of detector opening | -0.05 | +| xmax | m | Upper x bound of detector opening | 0.05 | +| ymin | m | Lower y bound of detector opening | -0.05 | +| ymax | m | Upper y bound of detector opening | 0.05 | +| xwidth | m | Width of detector. Overrides xmin, xmax | 0 | +| yheight | m | Height of detector. Overrides ymin, ymax | 0 | +| tmin | mu-s | Lower time limit | 0 | +| tmax | mu-s | Upper time limit | 0 | +| dt | mu-s | Length of each time bin | 1.0 | +| restore_neutron | 1 | If set, the monitor does not influence the neutron state | 0 | +| nowritefile | 1 | If set, monitor will skip writing to disk | 0 | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/monitors/TOF_monitor.comp) for `TOF_monitor.comp`. + +--- + +*Generated on mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/monitors/TOFlog_monitor.md b/mcstas-comps/monitors/TOFlog_monitor.md new file mode 100644 index 000000000..cf5063e34 --- /dev/null +++ b/mcstas-comps/monitors/TOFlog_monitor.md @@ -0,0 +1,44 @@ +# The `TOFlog_monitor` Component + +*McStas: Rectangular Time-of-flight monitor with logarithmic time binning.* + +## Identification + +- **Site:** +- **Author:** Kim Lefmann +- **Origin:** Risoe +- **Date:** October 2000 + +## Description + +```text +A rectangular time-of-flight monitor with logarithmic time binning. +(The neutron intensity is NOT given logarithmically) +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| **tmin** | mus | Lower bound for time bins | | +| **tmax** | mus | Higher bound for time bins | | +| ndec | 1 | Number of time bins per decade | 10 | +| nowritefile | 1 | If set, monitor will skip writing to disk | 0 | +| filename | string | Name of file in which to store the detector image | 0 | +| xmin | m | Lower x bound of detector opening | -0.05 | +| xmax | m | Upper x bound of detector opening | 0.05 | +| ymin | m | Lower y bound of detector opening | -0.05 | +| ymax | m | Upper y bound of detector opening | 0.05 | +| xwidth | m | Width of detector. Overrides xmin, xmax | 0 | +| yheight | m | Height of detector. Overrides ymin, ymax | 0 | +| restore_neutron | 1 | If set, the monitor does not influence the neutron state | 0 | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/monitors/TOFlog_monitor.comp) for `TOFlog_monitor.comp`. + +--- + +*Generated on mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/obsolete/Beam_spy.md b/mcstas-comps/obsolete/Beam_spy.md new file mode 100644 index 000000000..8a2484f05 --- /dev/null +++ b/mcstas-comps/obsolete/Beam_spy.md @@ -0,0 +1,36 @@ +# The `Beam_spy` Component + +*McStas: Beam analyzer for previous component* + +## Identification + +- **Site:** +- **Author:** E. Farhi +- **Origin:** Risoe +- **Date:** Nov 2005 + +## Description + +```text +This component displays informations about the beam at the previous component +position. No data file is produced. +It behaves as the Monitor component, but No propagation to the Beam_spy is +performed, and all events are analyzed. +The component should be located at the same position as the previous one. +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/obsolete/Beam_spy.comp) for `Beam_spy.comp`. +- Monitor component + +--- + +*Generated on mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/obsolete/ESS_moderator_short.md b/mcstas-comps/obsolete/ESS_moderator_short.md new file mode 100644 index 000000000..81e5c2f6f --- /dev/null +++ b/mcstas-comps/obsolete/ESS_moderator_short.md @@ -0,0 +1,94 @@ +# The `ESS_moderator_short` Component + +*McStas: A parametrised pulsed source for modelling ESS short pulses.* + +## Identification + +- **Site:** +- **Author:** KL, February 2001 +- **Origin:** Risoe +- **Date:** + +## Description + +```text +Produces a time-of-flight spectrum, from the ESS parameters +Chooses evenly in lambda, exponentially decaying in time . +Adapted from Moderator by: KN, M.Hagen, August 1998 + +Units of flux: n/cm^2/s/AA/ster +(McStas units are in general neutrons/second) + +Example general parameters (general): +size=0.12 Lmin=0.1 Lmax=10 dist=2 focus_xw=0.06 yh=0.12 nu=50 +branchframe=0.5 + +Example moderator specific parameters +(From F. Mezei, "ESS reference moderator characteristics for ...", 4/12/00: +Defining the normalised Maxwelian +M(lam,T) = 2 a^2 lam^-5 exp(-a/lam^2); a=949/T; lam in AA; T in K, +and the normalised pulse shape function +F(t,tau,n) = ( exp(-t/tau) - exp(-nt/tau) ) n/(n-1)/tau, +the flux distribution is given as +Phi(t,lam) = I0 M(lam,T) F(t,tau,n) ++ I2/(1+exp(chi2 lam-2.2))/lam*F(t,tau2*lam,n2) ) + +a1: Ambient H20, short pulse, decoupled poisoned +T=325 tau=22e-6 tau1=0 tau2=7e-6 n=5 n2=5 chi2=2.5 +I0=9e10 I2=4.6e10 branch1=0 branch2=0.5 + +a2: Ambient H20, short pulse, decoupled un-poisoned +T=325 tau=35e-6 tau1=0 tau2=12e-6 n=5 n2=5 chi2=2.5 +I0=1.8e11 I2=9.2e10 branch1=0 branch2=0.5 + +a3: Ambient H20, short pulse, coupled +T=325 tau=80e-6 tau1=400e-6 tau2=12e-6 n=20 n2=5 chi2=2.5 +I0=4.5e11 I2=9.2e10 branch1=0.5 branch2=0.5 + +b1: Liquid H2, short pulse, decoupled poisoned +T=50 tau=49e-6 tau1=0 tau2=7e-6 n=5 n2=5 chi2=0.9 +I0=2.7e10 I2=4.6e10 branch1=0 branch2=0.5 + +b2: Liquid H2, short pulse, decoupled un-poisoned +T=50 tau=78e-6 tau1=0 tau2=12e-6 n=5 n2=5 chi2=0.9 +I0=5.4e10 I2=9.2e10 branch1=0 branch2=0.5 + +b3: Liquid H2, short pulse, coupled +T=50 tau=287e-6 tau1=0 tau2=12e-6 n=20 n2=5 chi2=0.9 +I0=2.3e11 I2=9.2e10 branch1=0 branch2=0.5 +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| **size** | m | Edge of cube shaped source | | +| **Lmin** | AA | Lower edge of wavelength distribution | | +| **Lmax** | AA | Upper edge of wavelength distribution | | +| **dist** | m | Distance from source to focusing rectangle; at (0,0,dist) | | +| **focus_xw** | m | Width of focusing rectangle | | +| **focus_yh** | m | Height of focusing rectangle | | +| nu | Hz | Frequency of pulses | 50 | +| T | K | Temperature of source | 325 | +| tau | s | long time decay constant for pulse, 1a | 22e-6 | +| tau1 | s | long time decay constant for pulse, 1b (only for coupled water, else 0) | 0 | +| tau2 | s/AA | long time decay constant for pulse, 2 | 7e-6 | +| n | 1 | pulse shape parameter 1 | 5 | +| n2 | 1 | pulse shape parameter 2 | 5 | +| chi2 | 1/AA | lambda-distribution parameter in pulse 2 | 2.5 | +| I0 | flux | integrated flux 1 (in flux units, see above) (default 9e10) | 9e10 | +| I2 | flux*AA | integrated flux 2 (default 4.6e10) | 4.6e10 | +| branch1 | 1 | limit for switching between distribution 1 and 2. (has effect only for coupled water, tau1>0) | 0 | +| branch2 | 1 | limit for switching between distribution 1 and 2. (default value 0.5) | 0.5 | +| branchframe | 1 | limit for switching between 1st and 2nd pulse (if only one pulse wanted: 1) | 0 | +| target_index | 1 | relative index of component to focus at, e.g. next is +1 this is used to compute 'dist' automatically. | 1 | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/obsolete/ESS_moderator_short.comp) for `ESS_moderator_short.comp`. + +--- + +*Generated on mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/obsolete/V_sample.md b/mcstas-comps/obsolete/V_sample.md new file mode 100644 index 000000000..2a3575683 --- /dev/null +++ b/mcstas-comps/obsolete/V_sample.md @@ -0,0 +1,80 @@ +# The `V_sample` Component + +*McStas: Vanadium sample.* + +## Identification + +- **Site:** +- **Author:** Kim Lefmann and Kristian Nielsen +- **Origin:** Risoe +- **Date:** 15.4.98 + +## Description + +```text +A Double-cylinder shaped incoherent scatterer (a V-sample) +with both elastic and quasielastic (Lorentzian) components. +No multiple scattering. Absorbtion included. +The shape of the sample may be a box with dimensions xwidth, yheight, zthick. +The area to scatter to is a disk of radius 'focus_r' situated at the target. +This target area may also be rectangular if specified focus_xw and focus_yh +or focus_aw and focus_ah, respectively in meters and degrees. +The target itself is either situated according to given coordinates (x,y,z), +or defined with the relative target_index of the component to focus +to (next is +1). +This target position will be set to its AT position. When targeting to +centered components, such as spheres or cylinders, define an Arm component +where to focus to. + +Example: V_sample(radius_i=0.001,radius_o=0.01,h=0.02,focus_r=0.035,pack=1, +target_index=1) +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| radius | m | Outer radius of sample in (x,z) plane | 0 | +| thickness | m | Thickness of outer wall | 0 | +| zdepth | m | depth of box sample | 0 | +| Vc | | Unit cell volume [AA^3] | 13.827 | +| sigma_abs | barns | Absorbtion cross section pr. unit cell | 5.08 | +| sigma_inc | barns | Incoherent scattering cross section pr. unit cell | 5.08 | +| radius_i | m | radius-thickness | 0 | +| radius_o | m | Same as radius | 0 | +| h | m | Same as yheight | 0 | +| focus_r | m | Radius of disk containing target. Use 0 for full space | 0 | +| pack | 1 | Packing factor | 1 | +| frac | 1 | MC Probability for scattering the ray; otherwise penetrate | 1 | +| f_QE | 1 | Fraction of quasielastic scattering (rest is elastic) | 0 | +| gamma | 1 | Lorentzian width of quasielastic broadening (HWHM) | 0 | +| target_x | | | 0 | +| target_y | m | position of target to focus at | 0 | +| target_z | | | 0 | +| focus_xw | m | horiz. dimension of a rectangular area | 0 | +| focus_yh | m | vert. dimension of a rectangular area | 0 | +| focus_aw | deg | angular width dimension of a rectangular area | 0 | +| focus_ah | deg | angular height dimension of a rectangular area | 0 | +| xwidth | m | horiz. dimension of sample | 0 | +| yheight | m | vert. dimension of sample | 0 | +| zthick | m | Same as zdepth | 0 | +| rad_sphere | m | Radius for a spherical sample | 0 | +| sig_a | barns | Same as sigma_abs | 0 | +| sig_i | barns | Same as sigma_inc | 0 | +| V0 | | Same as Vc [AA^3] | 0 | +| target_index | 1 | relative index of component to focus at, e.g. next is +1 | 0 | +| multiples | 1 | Apply crude estimate for multiple scattering | 1 | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/obsolete/V_sample.comp) for `V_sample.comp`. +- Test +- results (not up-to-date). +- The test/example instrument vanadium_example.instr. +- The test/example instrument QENS_test.instr. + +--- + +*Generated on mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/obsolete/Virtual_input.md b/mcstas-comps/obsolete/Virtual_input.md new file mode 100644 index 000000000..65fa16501 --- /dev/null +++ b/mcstas-comps/obsolete/Virtual_input.md @@ -0,0 +1,64 @@ +# The `Virtual_input` Component + +*McStas: Source-like component that generates neutron events from an ascii +'virtual source' filename.* + +## Identification + +- **Site:** +- **Author:** E. Farhi +- **Origin:** ILL +- **Date:** Sep 28th, 2001 + +## Description + +```text +This component reads neutron events stored from a file, and sends them into +the instrument. It thus replaces a Source component, using a previously +computed neutron set. The 'source' file type is an ascii text file with the +format listed below. The number of neutron events for the +simulation is set to the length of the 'source' file times the +repetition parameter 'repeat_count' (1 by default). +It is particularly useful to generate a virtual source at a point that few +neutron reach. A long simulation will then only be performed once, to create +the 'source' filename. Further simulations are much faster if they start from +this low flux position with the 'source' filename. + +The input file format is: +text column formatted with lines containing 11 values in the order: +p x y z vx vy vz t sx sy sz stored into about 83 bytes/n. + +%BUGS +We recommend NOT to use parallel execution (MPI) with this component. If you +need to, set parameter 'smooth=1'. + +EXAMPLE: +To create a 'source' file collecting all neutron states, use: +COMPONENT MySourceCreator = Virtual_output(filename = "MySource.list") +at the position where will be the Virtual_input. +Then inactivate the part of the simulation description before (and including) +the component MySourceCreator. Put the new instrument source: +COMPONENT Source = Virtual_input(filename="MySource.list") +at the same position as 'MySourceCreator'. +A Vitess filename may be obtained from the 'Vitess_output' component or from a +Vitess simulation (104 bytes per neutron) and read with Vitess_input. +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| filename | str | Name of the neutron input file. Empty string "" inactivates component | 0 | +| verbose | 0/1 | Display additional information about source, recommended | 0 | +| repeat_count | 1 | Number of times the source must be generated/repeated | 1 | +| smooth | 0/1 | Smooth sparsed event files for filename repetitions. Use this option with MPI. This will apply gaussian distributions around initial events from the file | 1 | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/obsolete/Virtual_input.comp) for `Virtual_input.comp`. + +--- + +*Generated on mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/obsolete/Virtual_mcnp_input.md b/mcstas-comps/obsolete/Virtual_mcnp_input.md new file mode 100644 index 000000000..b37858bd3 --- /dev/null +++ b/mcstas-comps/obsolete/Virtual_mcnp_input.md @@ -0,0 +1,80 @@ +# The `Virtual_mcnp_input` Component + +*McStas: This component uses a filename of recorded neutrons from the reactor monte carlo +code MCNP as a source of particles.* + +## Identification + +- **Site:** +- **Author:** Chama Hennane and E. Farhi +- **Origin:** ILL +- **Date:** June 28th, 2006 + +## Description + +```text +This component generates neutron events from a filename created using the +MCNP Monte Carlo code for nuclear reactors. It is used to +calculate flux exiting from hot or cold neutron sources. +Neutron position and velocity is set from the filename. The neutron time is +left at zero. + +Note that axes orientation may be different between MCNP and McStas. +The component has the ability to center and orient the neutron beam to the Z-axis. +It also may change the coordinate system from the MCNP frame to the McStas one. +The verbose mode is highly recommended as it displays lots of useful informations. +To obtain absolute intensity, set 'intensity' and 'nps' parameters. +The source total intensity is 1.054e18 for LLB/Saclay (14 MW) and 4.28e18 for +ILL/Grenoble (58 MW). + +Format of MCNP events are : + +position_X position_Y position_Z dir_X dir_Y dir_Z Energy Weight Time + +energy is in Mega eV, time in shakes (1e-8 s), +positions are in cm and the direction vector is normalized to 1. + +%BUGS +We recommend NOT to use parallel execution (MPI) with this component. If you +need to, set parameter 'smooth=1'. + +EXAMPLE: +To generate PTRAC files using MCNP/MCNPX, add at the end of your input file: +f1:n 2001 // tally +(...) +ptrac filename = asc +max = -1000000 // number of neutrons to generate and stop +write = all +event = sur +filter = 2001,jsu // surface tally id +To create a 'source' from a MCNP simulation event file for the ILL: +COMPONENT source = Virtual_mcnp_input( +filename = "H10p", intensity=4.28e18, nps=11328982, +verbose = 1, autocenter="translate rotate rescale") +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| filename | str | Name of the MCNP PTRAC neutron input file. Empty string "" unactivates component | 0 | +| autocenter | str | String which may contain following keywords. "translate" or "center" to center the beam area AT (0,0,0) "rotate" or "orient" to center the beam velocity along Z "change axes" to change coordinate system definition "rescale" to adapt intensity to abs. units. with factor intensity/nps. Other words are ignored. | 0 | +| repeat_count | 1 | Number of times the source must be generated. 0 unactivates the component | 1 | +| verbose | 0\|1 | Displays additional informations if set to 1 | 0 | +| intensity | n/s | Intensity multiplication factor | 0 | +| MCNP_ANALYSE | 1 | Number of neutron events to read for file pre-analysis. Use 0 to analyze them all. | 10000 | +| surface_id | 1 | Index of the emitting MCNP surface to use. -1 for all. | -1 | +| nps | 1 | Number of total events shot by MCNP to generate the PTRAC as indicated at the end of the MCNP 'o' file as 'source particle weight for summary table normalization' or alternatively 'nps = '. | 0 | +| smooth | 0/1 | Smooth sparsed event files for file repetitions. | 1 | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/obsolete/Virtual_mcnp_input.comp) for `Virtual_mcnp_input.comp`. +- MCNP +- MCNP -- A General Monte Carlo N-Particle Transport Code, Version 5, Volume II: User's Guide, p177 + +--- + +*Generated on mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/obsolete/Virtual_mcnp_output.md b/mcstas-comps/obsolete/Virtual_mcnp_output.md new file mode 100644 index 000000000..d1d9b64ca --- /dev/null +++ b/mcstas-comps/obsolete/Virtual_mcnp_output.md @@ -0,0 +1,53 @@ +# The `Virtual_mcnp_output` Component + +*McStas: Detector-like component that writes neutron state parameters into a +'virtual source' neutron file with MCNP/PTRAC format.* + +## Identification + +- **Site:** +- **Author:** Chama Hennane and E. Farhi +- **Origin:** ILL +- **Date:** July 7th, 2006 + +## Description + +```text +Detector-like component writing neutron state parameters to a +virtual source neutron file with MCNP/PTRAC format. +The component geometry is the full plane, and saves the neutron state as +it exits from the previous component. +Format is the one used by MCNP 5 files : + +position_X position_Y position_Z dir_X dir_Y dir_Z energy weight time + +energy is in Mega eV +positions are in cm and the direction vector is normalized to 1. + +%BUGS +This component will NOT work with parallel execution (MPI). + +EXAMPLE: +To create a file collecting all neutron states with MCNP5 format +COMPONENT fichier_sortie = Virtual_mcnp_output( +filename = "exit_guide_result.dat") +at the position where will be the Virtual_mcnp_input. +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| filename | str | name of the MCNP5 neutron output file, | 0 | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/obsolete/Virtual_mcnp_output.comp) for `Virtual_mcnp_output.comp`. +- MCNP +- MCNP -- A General Monte Carlo N-Particle Transport Code, Version 5, Volume II: User's Guide, p177 + +--- + +*Generated on mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/obsolete/Virtual_mcnp_ss_Guide.md b/mcstas-comps/obsolete/Virtual_mcnp_ss_Guide.md new file mode 100644 index 000000000..2ca11d586 --- /dev/null +++ b/mcstas-comps/obsolete/Virtual_mcnp_ss_Guide.md @@ -0,0 +1,70 @@ +# The `Virtual_mcnp_ss_Guide` Component + +*McStas: Neutron guide initiated using Virtual_mcnp_ss_input.comp, and replacing Virtual_mcnp_ss_output.comp - see examples//Test_SSR_SSW_Guide.instr* + +## Identification + +- **Site:** +- **Author:** Esben klinkby and Peter Willendrup +- **Origin:** Risoe-DTU +- **Date:** Marts 2012 + +## Description + +```text +Based on Kristian Nielsens Guide.comp +Models a rectangular guide tube centered on the Z axis. The entrance lies +in the X-Y plane. +The component must be initiated after Virtual_mcnp_ss_input.comp, +and replaces Virtual_mcnp_ss_output.comp - see examples/Test_SSR_SSW_Guide.instr. +The basic idea is, that rather than discarding unreflected (i.e. absorbed) +neutrons at the guide mirrors, these neutron states are stored on disk. +Thus, after the McStas simulation a MCNP simulation can be performed based +on the un-reflected neutrons - intended for shielding studies. +(details: we don't deal with actual neutrons, so what is transferred between +simulations suites is neutron state parameters: pos,mom,time,weight. The latter is +whatever remains after reflection. + +For details on the geometry calculation see the description in the McStas +reference manual. +The reflectivity profile may either use an analytical mode (see Component +Manual) or a 2-columns reflectivity free text file with format +[q(Angs-1) R(0-1)]. + +Example: Virtual_mcnp_ss_Guide(w1=0.1, h1=0.1, w2=0.1, h2=0.1, l=2.0, +R0=0.99, Qc=0.021, alpha=6.07, m=2, W=0.003 + +%VALIDATION +Upcomming in 2012 based on ESS shielding +Validated by: D. Ene & E. Klinkby + +%BUGS +This component does not work with gravitation on. Use component Guide_gravity then +(doesn't work with SSR/SSW unfortunately) +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| reflect | str | Reflectivity file name. Format | 0 | +| **w1** | m | Width at the guide entry | | +| **h1** | m | Height at the guide entry | | +| **w2** | m | Width at the guide exit | | +| **h2** | m | Height at the guide exit | | +| **l** | m | length of guide | | +| R0 | 1 | Low-angle reflectivity | 0.99 | +| Qc | AA-1 | Critical scattering vector | 0.0219 | +| alpha | AA | Slope of reflectivity | 6.07 | +| m | 1 | m-value of material. Zero means completely absorbing. | 2 | +| W | AA-1 | Width of supermirror cut-off | 0.003 | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/obsolete/Virtual_mcnp_ss_Guide.comp) for `Virtual_mcnp_ss_Guide.comp`. + +--- + +*Generated on mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/obsolete/Virtual_mcnp_ss_input.md b/mcstas-comps/obsolete/Virtual_mcnp_ss_input.md new file mode 100644 index 000000000..60afcb6d6 --- /dev/null +++ b/mcstas-comps/obsolete/Virtual_mcnp_ss_input.md @@ -0,0 +1,72 @@ +# The `Virtual_mcnp_ss_input` Component + +*McStas: This component uses a Source Surface type file of recorded neutrons from the +reactor monte carlo code MCNP as a source of particles.* + +## Identification + +- **Site:** +- **Author:** Esben Klinkby and Peter Willendrup +- **Origin:** DTU +- **Date:** January, 2012 + +## Description + +```text +This component draws neutron events from a Source Surface file created using the +MCNP Monte Carlo code and converts them to make them suitable for a McStas simulation + +Note that axes orientation may be different between MCNP and McStas! +Note also that the conversion of between McStas and MCNP units and parameters +is done automatically by this component - but the user must ensure that +geometry description matches between the two Monte Carlo codes. + +The verbose mode is highly recommended as it displays lots of useful informations. + +This interface uses the MCNP Source Surface Read/Write format (SSW/SSR). +Infomation transfer from(to) SSW files proceeds via a set of Fortran modules +and subroutines collected in "subs.f" +For succesful compilation, it is required that these subroutines are compiled +and linked to the instrument file: + +mcstas dummy.instr -> generates dummy.c +gfortran -c subs.f -> generates subs.f +gcc -o runme.out dummy.c subs.o -lm -lgfortran -> generates runme.out + +Note that this requires a fortran compiler (here gfortran) and gcc. + +%BUGS +None known bugs so far. But surely this will change... +Caveat: when writing the header for the output wssa file, the number of histories and tracks are assumed to be that of the +input MNCP run. This is generally not the case, due to losses in the McStas simulation step. +In case of losses any subsequel MCNP run based on the McStas output, can be confused by inconsistency between +header and file content. To resolve, either ensure that NPS is lower than the actual number of events in the McStas output. +Or hardcode values of nhis & ntrk in either subs.f or Virtual_mcnp_ss_output.comp. + +EXAMPLE of usage: +first a MCNP simulation is run +and at a relevant surface, a Source Surface Write card is given (e.g. for MCNP surface #1, add the line: +SSW 1 +to the end of the input file. +By this a ".w" file is produced, which then serves as input to the McStas simulation. +Present version: rename *.w to rssa, and make sure to put it in the dir from which McStas is run +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| file | str | Name of the MCNP SSW neutron input file. Not active: Name assumed to be 'rssa' | "rssa" | +| verbose | 1 | Toggles debugging info on/off | 1 | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/obsolete/Virtual_mcnp_ss_input.comp) for `Virtual_mcnp_ss_input.comp`. +- MCNP +- MCNP -- A General Monte Carlo N-Particle Transport Code, Version 5, Volume II: User's Guide, p177 + +--- + +*Generated on mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/obsolete/Virtual_mcnp_ss_output.md b/mcstas-comps/obsolete/Virtual_mcnp_ss_output.md new file mode 100644 index 000000000..6c5424f9c --- /dev/null +++ b/mcstas-comps/obsolete/Virtual_mcnp_ss_output.md @@ -0,0 +1,72 @@ +# The `Virtual_mcnp_ss_output` Component + +*McStas: This component uses a Source Surface type file of recorded neutrons from the +reactor monte carlo code MCNP as a source of particles.* + +## Identification + +- **Site:** +- **Author:** Esben Klinkby and Peter Willendrup +- **Origin:** DTU +- **Date:** January, 2012 + +## Description + +```text +This component draws neutron events from a Source Surface file created using the +MCNP Monte Carlo code and converts them to make them suitable for a McStas simulation + +Note that axes orientation may be different between MCNP and McStas! +Note also that the conversion of between McStas and MCNP units and parameters +is done automatically by this component - but the user must ensure that +geometry description matches between the two Monte Carlo codes. + +The verbose mode is highly recommended as it displays lots of useful informations. + +This interface uses the MCNP Source Surface Read/Write format (SSW/SSR). +Infomation transfer from(to) SSW files proceeds via a set of Fortran modules +and subroutines collected in "subs.f" +For succesful compilation, it is required that these subroutines are compiled +and linked to the instrument file: + +mcstas dummy.instr -> generates dummy.c +gfortran -c subs.f -> generates subs.f +gcc -o runme.out dummy.c subs.o -lm -lgfortran -> generates runme.out + +Note that this requires a fortran compiler (here gfortran) and gcc. + +%BUGS +None known bugs so far. But surely this will change... +Caveat: when writing the header for the output wssa file, the number of histories and tracks are assumed to be that of the +input MNCP run. This is generally not the case, due to losses in the McStas simulation step. +In case of losses any subsequel MCNP run based on the McStas output, can be confused by inconsistency between +header and file content. To resolve, either ensure that NPS is lower than the actual number of events in the McStas output. +Or hardcode values of nhis & ntrk in either subs.f or Virtual_mcnp_ss_output.comp. + +EXAMPLE of usage: +first a MCNP simulation is run +and at a relevant surface, a Source Surface Write card is given (e.g. for MCNP surface #1, add the line: +SSW 1 +to the end of the input file. +By this a ".w" file is produced, which then serves as input to the McStas simulation. +Present version: rename *.w to rssa, and make sure to put it in the dir from which McStas is run (or use symbolic links) +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| file | str | Name of the MCNP SSW neutron input file. Not active: Name assumed to be 'rssa' | "rssa" | +| verbose | 1 | Toggles debugging info on/off | 1 | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/obsolete/Virtual_mcnp_ss_output.comp) for `Virtual_mcnp_ss_output.comp`. +- MCNP +- MCNP -- A General Monte Carlo N-Particle Transport Code, Version 5, Volume II: User's Guide, p177 + +--- + +*Generated on mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/obsolete/Virtual_output.md b/mcstas-comps/obsolete/Virtual_output.md new file mode 100644 index 000000000..695e564db --- /dev/null +++ b/mcstas-comps/obsolete/Virtual_output.md @@ -0,0 +1,62 @@ +# The `Virtual_output` Component + +*McStas: Detector-like component that writes neutron state parameters into an ascci-format +'virtual source' neutron file.* + +## Identification + +- **Site:** +- **Author:** E. Farhi +- **Origin:** ILL +- **Date:** Dec 17th, 2002 + +## Description + +```text +Detector-like component writing neutron state parameters to a +virtual source neutron filename. The component geometry is the full +plane, and saves the neutron state as it exits from the previous +component. + +It is particularly useful to generate a virtual source at a point that few +neutron reach. A long simulation will then only be performed once, to create +the upstream 'source' file. Further simulations are much faster if they start +from this low flux position with the 'source' filename. + +The output file format is: +text column formatted with lines containing 11 values in the order: +p x y z vx vy vz t sx sy sz stored into about 83 bytes/n. + +Beware the size of generated files ! When saving all events (bufsize=0) the +required memory has been optimized and remains very small. On the other hand +using large bufsize values (not recommended) requires huge storage memory. +Moreover, using the 'bufsize' parameter will often lead to wrong intensities. +Both methods will generate huge files. + +A Vitess file may be obtained from the 'Vitess_output' component or from a +Vitess simulation (104 bytes per neutron) and read with Vitess_input. + +Example: Virtual_output(filename="MySource.dat") +will generate a 9 Mo text file for 1e5 events stored. + +%BUGS +Using bufsize non-zero may generate a virtual source with wrong intensity. This +component works with MPI (parallel execution mode). +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| filename | str | Name of neutron file to write. Default is standard output [string]. If not given, a unique name will be used. | 0 | +| bufsize | 1 | Size of neutron output buffer default is 0, i.e. save all - recommended. | 0 | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/obsolete/Virtual_output.comp) for `Virtual_output.comp`. + +--- + +*Generated on mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/obsolete/Virtual_tripoli4_input.md b/mcstas-comps/obsolete/Virtual_tripoli4_input.md new file mode 100644 index 000000000..84d1cad1c --- /dev/null +++ b/mcstas-comps/obsolete/Virtual_tripoli4_input.md @@ -0,0 +1,78 @@ +# The `Virtual_tripoli4_input` Component + +*McStas: This component reads a file of recorded neutrons from the reactor Monte Carlo +code TRIPOLI4.4 as a source of particles.* + +## Identification + +- **Site:** +- **Author:** Guillaume Campioni +- **Origin:** SERMA +- **Date:** Sep 28th, 2001 + +## Description + +```text +This component generates neutron events from a file created using the +TRIPOLI4 Monte Carlo code for nuclear reactors (as MCNP). It is used to +calculate flux exiting from hot or cold neutron sources. +Neutron position and velocity is set from the file. The neutron time is +left at zero. +Storage files from TRIPOLI4.4 contain several batches of particules, all +of them having the same statictical weight. + +Note that axes orientation may be different between TRIPOLI4.4 and McStas. +The component has the ability to center and orient the neutron beam to the Z-axis. +It also changes the coordinate system from the Tripoli frame to the McStas one. +The verbose mode is highly recommended as it displays lots of useful informations, +including the absolute intensity normalisation factor. All neutron fluxes in the +instrument should be multiplied by this factor. Such a renormalization is done +when 'autocenter' contains the word 'rescale'. +The source total intensity is 1.054e18 for LLB/Saclay (14 MW) and 4.28e18 for +ILL/Grenoble (58 MW). + +Format of TRIPOLI4.4 event files is : + +NEUTRON energy position_X position_Y position_Z dir_X dir_Y dir_Z weight + +energy is in Mega eV +positions are in cm and the direction vector is normalized to 1. + +%BUGS +We recommend NOT to use parallel execution (MPI) with this component. If you +need to, set parameter 'smooth=1'. + +EXAMPLE: +To create a 'source' from a Tripoli4 simulation event file for the ILL: +COMPONENT source = Virtual_tripoli4_input( +filename = "ILL_SFH.dat", intensity=4.28e18, +verbose = 1, autocenter="translate rotate rescale") +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| filename | str | Name of the Tripoli4.4 neutron input file. Empty string "" unactivates component | 0 | +| autocenter | str | String which may contain following keywords. "translate" or "center" to center the beam area AT (0,0,0) "rotate" or "orient" to center the beam velocity along Z "rescale" to adapt intensity to abs. units. Other words are ignored. | 0 | +| repeat_count | 1 | Number of times the source must be generated. 0 unactivates the component | 1 | +| verbose | 0\|1 | Displays additional informations if set to 1 | 0 | +| intensity | n/s | Initial total Source integrated intensity | 1 | +| T4_ANALYSE | 1 | Number of neutron events to read for file pre-analysis. Use 0 to analyze them all. | 10000 | +| radius | m | In the case the Tripoli4 batch file is a point, you may specify a disk emission area for the source. | 0 | +| T4_ANALYSE_EMIN | meV | Minimal energy to use for file pre-analysis | 0 | +| T4_ANALYSE_EMAX | meV | Maximal energy to use for file pre-analysis | 0 | +| smooth | 0/1 | Smooth sparsed event files for file repetitions. | 1 | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/obsolete/Virtual_tripoli4_input.comp) for `Virtual_tripoli4_input.comp`. +- Tripoli +- Virtual_tripoli4_output +- CAMPIONI Guillaume, Etude et Modelisation des Sources Froides de Neutrons, These de Doctorat, CEA Saclay/UJF (2004) + +--- + +*Generated on mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/obsolete/Virtual_tripoli4_output.md b/mcstas-comps/obsolete/Virtual_tripoli4_output.md new file mode 100644 index 000000000..d19b9f5a6 --- /dev/null +++ b/mcstas-comps/obsolete/Virtual_tripoli4_output.md @@ -0,0 +1,56 @@ +# The `Virtual_tripoli4_output` Component + +*McStas: Detector-like component that writes neutron state parameters into a +'virtual source' neutron file when neutrons come from the source : +Virtual_tripoli4_input.comp* + +## Identification + +- **Site:** +- **Author:** Guillaume Campioni +- **Origin:** LLB +- **Date:** Sep 28th, 2001 + +## Description + +```text +Detector-like component writing neutron state parameters to a +virtual source neutron file when neutron are coming from a +Virtual_tripoli4_input.comp. +The component geometry is the full plane, and saves the neutron state as +it exits from the previous component. +Format is the one used by TRIPOLI4.4 stock files : + +NEUTRON energy position_X position_Y position_Z dir_X dir_Y dir_Z weight + +energy is in [Mega eV] +positions are in [cm] and the direction vector is normalized to 1. + +%BUGS +This component will NOT work with parallel execution (MPI/GPU). + +EXAMPLE: +To create a file collecting all neutron states with TRIPOLI4 format +COMPONENT T4output = Virtual_tripoli4_output( +filename = "exit_guide_result.dat", batch = 1 ) +at the position where will be the Virtual_tripoli4_input when reading the file. +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| filename | str | Name of the Tripoli4 neutron output file, | 0 | +| batch | 1 | Index of the Tripoli batch to generate, when no | 1 | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/obsolete/Virtual_tripoli4_output.comp) for `Virtual_tripoli4_output.comp`. +- Tripoli +- Virtual_tripoli4_input + +--- + +*Generated on mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/obsolete/Vitess_input.md b/mcstas-comps/obsolete/Vitess_input.md new file mode 100644 index 000000000..62d8b029b --- /dev/null +++ b/mcstas-comps/obsolete/Vitess_input.md @@ -0,0 +1,41 @@ +# The `Vitess_input` Component + +*McStas: Read neutron state parameters from VITESS neutron filename.* + +## Identification + +- **Site:** +- **Author:** Kristian Nielsen +- **Origin:** Risoe/ILL +- **Date:** June 6, 2000 + +## Description + +```text +Source-like component reading neutron state parameters from a +VITESS neutron filename. Used to interface McStas components or +simulations into VITESS. Each neutron is 104 bytes. + +Example: Vitess_input(filename="MySource.vit", bufsize = 10000, repeat_count = 2) + +%BUGS +We recommend NOT to use parallel execution (MPI) with this component. +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| filename | string | Filename of neutron file to read. Default (NULL) is standard input. Empty string "" unactivates component | 0 | +| bufsize | records | Size of neutron input buffer | 10000 | +| repeat_count | 1 | Number of times to repeat each neutron read | 1 | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/obsolete/Vitess_input.comp) for `Vitess_input.comp`. + +--- + +*Generated on mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/obsolete/Vitess_output.md b/mcstas-comps/obsolete/Vitess_output.md new file mode 100644 index 000000000..229539438 --- /dev/null +++ b/mcstas-comps/obsolete/Vitess_output.md @@ -0,0 +1,46 @@ +# The `Vitess_output` Component + +*McStas: Write neutron state parameters to VITESS neutron filename.* + +## Identification + +- **Site:** +- **Author:** Kristian Nielsen +- **Origin:** Risoe/ILL +- **Date:** June 6, 2000 + +## Description + +```text +Detector-like component writing neutron state parameters to a +VITESS neutron filename. Used to interface McStas components or +simulations into VITESS. Each neutron is 104 bytes. + +Note that when standard output is used, as is the default, no +monitors or other components that produce terminal output must be +used, or the neutron output from this component will become +corrupted. + +Example: Vitess_output(filename="MySource.vit", bufsize = 10000, progress = 1) + +%BUGS +This component will NOT work with parallel execution (MPI). +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| filename | string | Filename of neutron file to write. Default is standard output | 0 | +| bufsize | records | Size of neutron output buffer | 10000 | +| progress | flag | If not zero, output dots as progress indicator | 0 | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/obsolete/Vitess_output.comp) for `Vitess_output.comp`. + +--- + +*Generated on mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/optics/Absorber.md b/mcstas-comps/optics/Absorber.md new file mode 100644 index 000000000..fe7c80e4c --- /dev/null +++ b/mcstas-comps/optics/Absorber.md @@ -0,0 +1,39 @@ +# The `Absorber` Component + +*McStas: Box-shaped absorbing slab.* + +## Identification + +- **Site:** +- **Author:** Peter Willendrup +- **Origin:** Risoe +- **Date:** November 2008 + +## Description + +```text +Infinitely absorbing slab of material. + +Example: Absorber(xmin=-0.01, xmax=0.01, ymin=-0.05, ymax=0.05, zmin=-0.2, zmax=0) +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| xmin | m | Lower x bound | 0 | +| xmax | m | Upper x bound | 0 | +| ymin | m | Lower y bound | 0 | +| ymax | m | Upper y bound | 0 | +| zmin | m | Lower z bound | 0 | +| zmax | m | Upper z bound | 0 | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/optics/Absorber.comp) for `Absorber.comp`. + +--- + +*Generated on mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/optics/Arm.md b/mcstas-comps/optics/Arm.md new file mode 100644 index 000000000..64ebec6c5 --- /dev/null +++ b/mcstas-comps/optics/Arm.md @@ -0,0 +1,34 @@ +# The `Arm` Component + +*McStas: Arm/optical bench* + +## Identification + +- **Site:** +- **Author:** Kim Lefmann and Kristian Nielsen +- **Origin:** Risoe +- **Date:** September 1997 + +## Description + +```text +An arm does not actually do anything, it is just there to set +up a new coordinate system. + +Example: Arm() +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/optics/Arm.comp) for `Arm.comp`. + +--- + +*Generated on mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/optics/Beamstop.md b/mcstas-comps/optics/Beamstop.md new file mode 100644 index 000000000..782b9faf4 --- /dev/null +++ b/mcstas-comps/optics/Beamstop.md @@ -0,0 +1,44 @@ +# The `Beamstop` Component + +*McStas: Rectangular/circular beam stop.* + +## Identification + +- **Site:** +- **Author:** Kristian Nielsen +- **Origin:** Risoe +- **Date:** January 2000 + +## Description + +```text +A simple rectangular or circular beam stop. +Infinitely thin and infinitely absorbing. +The beam stop is by default rectangular. You may either +specify the radius (circular shape), or the rectangular bounds. + +Example: Beamstop(xmin=-0.05, xmax=0.05, ymin=-0.05, ymax=0.05) +Beamstop(radius=0.1) +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| xmin | m | Lower x bound | -0.05 | +| xmax | m | Upper x bound | 0.05 | +| ymin | m | Lower y bound | -0.05 | +| ymax | m | Upper y bound | 0.05 | +| xwidth | m | Width of beamstop (x). Overrides xmin, xmax. | 0 | +| yheight | m | Height of beamstop (y). Overrides ymin, ymax. | 0 | +| radius | m | radius of the beam stop in the z=0 plane, centered at Origo | 0 | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/optics/Beamstop.comp) for `Beamstop.comp`. + +--- + +*Generated on mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/optics/Bender.md b/mcstas-comps/optics/Bender.md new file mode 100644 index 000000000..582736dcf --- /dev/null +++ b/mcstas-comps/optics/Bender.md @@ -0,0 +1,87 @@ +# The `Bender` Component + +*McStas: Models a curved neutron guide.* + +## Identification + +- **Site:** +- **Author:** Philipp Bernhardt +- **Origin:** Uni. Erlangen (Germany) +- **Date:** Februar 7 1999 + +## Description + +```text +Models a curved neutron guide with cylindrical walls. + +Bender radius, entrance width and height are necessary input data. To define +the bender, you may either enter the deviation angle 'Win' or the length 'l'. +The bender may consist of 'k' vertical channels, separated by partitioning walls +of thickness 'd'. Three different reflectivity profiles can be given: for outer +walls, for inner walls and for the top and bottom walls. The partitioning walls +have the same coating as the exterior walls. + +The entrance lies in the X-Y plane, centered on the Z axis. The neutrons will +also leave the bender in the X-Y plane at the z-value l=r*Win, i.e. they are +centred on (0,0,r*Win); they have an (average) flight direction along the z-axis. +Therefore, the following component is adjacent, if positioned AT (0,0,r*Win) +without rotation. +So, seen from outside, it behaves like a straight guide along the Z axis. As a +consequence, it is shown straight in 'mcdisplay'. +This behaviour results from a co-ordinate transformation inside the component. +It is done to facilitate its use. Neither rotation nor shift along the x-axis +need to be calculated; a new arm is not necessary. Internally, the bender is +bent to the negative X axis; + +Example: +Bender of 120 mm height, 50 mm width, 250 m radius and 0.04 rad (or 2.292 deg) curvature +not channeled, with a standard m=2 coating on + +Bender(w=0.05,h=0.12,r=250,Win=0.04, +R0a=0.99,Qca=0.021,alphaa=6.07,ma=2,Wa=0.003, +R0i=0.99,Qci=0.021,alphai=6.07,mi=2,Wi=0.003, +R0s=0.99,Qcs=0.021,alphas=6.07,ms=2,Ws=0.003) + +%BUGS +Some users have reported potentially strange behaviours with this component. +This component does not work with gravitation on. +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| **w** | m | Width at the bender entry and exit | | +| **h** | m | Height at the bender entry and exit | | +| **r** | m | Radius of the bender | | +| Win | rad | Angle of the deflection of the whole bender | 0.04 | +| k | 1 | Number of channels inside the bender | 1 | +| d | m | Thickness of one blade separating the channels | 0.001 | +| l | m | length of bender l=r*Win | 0 | +| R0a | 1 | Low-angle reflectivity at the outer side of the bender | 0.99 | +| Qca | AA-1 | Critical scattering vector | 0.021 | +| alphaa | AA | Slope of reflectivity | 6.07 | +| ma | 1 | m-value of material | 2 | +| Wa | AA-1 | Width of supermirror cut-off | 0.003 | +| R0i | 1 | Low-angle reflectivity at the inner side of the bender | 0.99 | +| Qci | AA-1 | Critical scattering vector | 0.021 | +| alphai | AA | Slope of reflectivity | 6.07 | +| mi | 1 | m-value of material | 2 | +| Wi | AA-1 | Width of supermirror cut-off | 0.003 | +| R0s | 1 | Low-angle reflectivity at the top and bottom side of the bender | 0.99 | +| Qcs | AA-1 | Critical scattering vector | 0.021 | +| alphas | AA | Slope of reflectivity | 6.07 | +| ms | 1 | m-value of material | 2 | +| Ws | AA-1 | Width of supermirror cut-off | 0.003 | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/optics/Bender.comp) for `Bender.comp`. +- Additional note from Philipp Bernhardt. + +--- + +*Generated on mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/optics/Collimator_linear.md b/mcstas-comps/optics/Collimator_linear.md new file mode 100644 index 000000000..2ce66e791 --- /dev/null +++ b/mcstas-comps/optics/Collimator_linear.md @@ -0,0 +1,46 @@ +# The `Collimator_linear` Component + +*McStas: A simple analytical Soller collimator (with triangular transmission).* + +## Identification + +- **Site:** +- **Author:** Kristian Nielsen +- **Origin:** Risoe +- **Date:** August 1998 + +## Description + +```text +Soller collimator with rectangular opening and specified length. The +transmission function is an average and does not utilize knowledge of the +actual neutron trajectory. A zero divergence disables collimation (then the +component works as a double slit). + +Example: Collimator_linear(xmin=-0.1, xmax=0.1, ymin=-0.1, ymax=0.1, length=0.25, divergence=40,transmission=0.7) +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| xmin | m | Lower x bound on slits | -0.02 | +| xmax | m | Upper x bound on slits | 0.02 | +| ymin | m | Lower y bound on slits | -0.05 | +| ymax | m | Upper y bound on slits | 0.05 | +| xwidth | m | Width of slits | 0 | +| yheight | m | Height of slits | 0 | +| length | m | Distance between input and output slits | 0.3 | +| divergence | minutes of arc | Divergence horizontal angle (calculated as atan(d/length), where d is the blade spacing) | 40 | +| transmission | 1 | Transmission of Soller (0<=t<=1) | 1 | +| divergenceV | minutes of arc | Divergence vertical angle | 0 | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/optics/Collimator_linear.comp) for `Collimator_linear.comp`. + +--- + +*Generated on mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/optics/Collimator_radial.md b/mcstas-comps/optics/Collimator_radial.md new file mode 100644 index 000000000..83ffad59d --- /dev/null +++ b/mcstas-comps/optics/Collimator_radial.md @@ -0,0 +1,73 @@ +# The `Collimator_radial` Component + +*McStas: A radial Soller collimator.* + +## Identification + +- **Site:** +- **Author:** Emmanuel Farhi +- **Origin:** ILL +- **Date:** July 2005 + +## Description + +```text +Radial Soller collimator with rectangular opening and specified length. +The collimator is made of many rectangular channels stacked radially. +Each channel is a set of transmitting layers (nslit), separated by an absorbing +material (infinitely thin), the whole stuff is inside an absorbing housing. + +When specifying the number of channels (nchan), each channel has a total +entrance width=radius*fabs(theta_max-theta_min)/nchan, but only the central +portion 'xwidth' accepts neutrons. When xwidth=0, it is set to the full +apperture so that all neutrons enter the channels (all walls are infinitely thin). + +When using zero as the number of channels (nchan), the collimator is continuous, +whithout shadowing effect. + +The component should be positioned at the radius center. +The component can be made oscillating (usual on diffractometers and TOF +machines) with the 'roc' parameter. +The neutron beam outside the collimator angular area is transmitted unaffected. + +When used as a focusing collimator, the focusing parameter should be set to 1. + +An example of a instrument that uses this collimator can be found in the SALSA instrument, +in the example folder + +Example: +Channelled radial collimator with shadow parts +Collimator_radial(xwidth=0.015, yheight=.3, length=.35, divergence=40,transmission=1, theta_min=5, theta_max=165, nchan=128, radius=0.9) +A continuous radial collimator +Collimator_radial(yheight=.3, length=.35, divergence=40,transmission=1, theta_min=5, theta_max=165, radius=0.9) +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| xwidth | m | Soller window width, filled with nslit slits. Use 0 value for continuous collimator. | 0 | +| yheight | m | Collimator height. If yheight_inner is specified, then this is the outer cylinders height | .3 | +| length | m | Length/Distance between inner and outer slits. | .35 | +| divergence | min of arc | Divergence angle. May also be specified with the nslit parameter. A zero value unactivates component. | 0 | +| transmission | 1 | Maximum transmission of Soller (0<=t<=1). | 1 | +| theta_min | deg | Minimum Theta angle for the radial setting. | 5 | +| theta_max | deg | Maximum Theta angle for the radial setting. | 165 | +| nchan | 1 | Number of Soller channels in the theta range. Use 0 value for continuous collimator. | 0 | +| radius | m | Radius of the collimator (to entry window). | 1.3 | +| nslit | 1 | Number of blades composing each Soller. Overrides the divergence parameter. | 0 | +| roc | deg | Amplitude of oscillation of collimator. 0=fixed. | 0 | +| verbose | | Gives additional information. | 0 | +| approx | | Use Soller triangular transmission approximation. | 0 | +| focusing | 1 | When set allows you to use the collimators for focusing, rather than dispersing. | 0 | +| yheight_inner | 1 | Defines the inner height of the collimator | 0 | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/optics/Collimator_radial.comp) for `Collimator_radial.comp`. + +--- + +*Generated on mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/optics/Derotator.md b/mcstas-comps/optics/Derotator.md new file mode 100644 index 000000000..0e3f47240 --- /dev/null +++ b/mcstas-comps/optics/Derotator.md @@ -0,0 +1,40 @@ +# The `Derotator` Component + +*McStas: The counterpart of the Rotator component.* + +## Identification + +- **Site:** +- **Author:** Emmanuel Farhi +- **Origin:** ILL +- **Date:** June 20th 2013 + +## Description + +```text +A component which stops the rotative frame set by the Rotator component. +Its position should better coincide with the Rotator instance. +Components preceding the Derotator are rotating, all following are steady. + +Example: +R=Rotator(nu=14, phase=0) +... +DR=Derotator(rotator="R") +AT (0,0,0) RELATIVE R +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| **rotator** | string | the name of the Rotator component used to initiate the rotation | | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/optics/Derotator.comp) for `Derotator.comp`. + +--- + +*Generated on mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/optics/Diaphragm.md b/mcstas-comps/optics/Diaphragm.md new file mode 100644 index 000000000..3e082a847 --- /dev/null +++ b/mcstas-comps/optics/Diaphragm.md @@ -0,0 +1,39 @@ +# The `Diaphragm` Component + +*McStas: Rectangular/circular diaphragm (alias of the Slit component)* + +## Identification + +- **Site:** +- **Author:** Peter Willendrup +- **Origin:** DTU +- **Date:** February 2016 + +## Description + +```text +A simple rectangular or circular diaphragm. You may either +specify the radius (circular shape), or the rectangular bounds. +No transmission around the diaphragm is allowed. + +Example: Diaphragm(xmin=-0.01, xmax=0.01, ymin=-0.01, ymax=0.01) +Diaphragm(radius=0.01) + + +For INPUT PARAMETERS - please consult Slit.comp as Diaphragm is a copy of that component. +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/optics/Diaphragm.comp) for `Diaphragm.comp`. + +--- + +*Generated on mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/optics/DiskChopper.md b/mcstas-comps/optics/DiskChopper.md new file mode 100644 index 000000000..8addee238 --- /dev/null +++ b/mcstas-comps/optics/DiskChopper.md @@ -0,0 +1,68 @@ +# The `DiskChopper` Component + +*McStas: Based on Chopper (Philipp Bernhardt), Jitter and beamstop from work by +Kaspar Hewitt Klenoe (jan 2006), adjustments by Rob Bewey (march 2006)* + +## Identification + +- **Site:** +- **Author:** Peter Willendrup +- **Origin:** Risoe +- **Date:** March 9 2006 + +## Description + +```text +Models a disc chopper with nslit identical slits, which are symmetrically distributed +on the disc. At time t=0, the centre of the first slit opening will be situated at the +vertical axis when phase=0, assuming the chopper centre of rotation is placed BELOW the beam axis. +If you want to place the chopper ABOVE the beam axis, please use a 180 degree rotation around Z +(otherwise unexpected beam splitting can occur in combination with the isfirst=1 setting, see +related bug on GitHub) + +For more complicated gemometries, see component manual example of DiskChopper GROUPing. + +If the chopper is the 1st chopper of a continuous source instrument, you should use the "isfirst" parameter. +This parameter SETS the neutron time to match the passage of the chooper slit(s), taking into account the +chopper timing and phasing (thus conserving your simulated statistics). + +The isfirst parameter is ONLY relevant for use in continuous source settings. + +Example: DiskChopper(radius=0.2, theta_0=10, nu=41.7, nslit=3, delay=0, isfirst=1) First chopper +DiskChopper(radius=0.2, theta_0=10, nu=41.7, nslit=3, delay=0, isfirst=0) + +NOTA BENE wrt. GROUPing and isfirst: +When setting up a GROUP of DiskChoppers for a steady-state / reactor source, you will need +to set up +1) An initial chopper with isfirst=1, NOT part of the GROUP - and using a "big" chopper opening +that spans the full angular extent of the openings of the subsequent GROUP +2) Add your DiskChopper GROUP setting isfirst=0 +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| theta_0 | deg | Angular width of the slits. | 0 | +| radius | m | Radius of the disc | 0.5 | +| **yheight** | m | Slit height (if = 0, equal to radius). Auto centering of beam at half height. | | +| **nu** | Hz | Frequency of the Chopper, omega=2*PI*nu (algebraic sign defines the direction of rotation) | | +| nslit | 1 | Number of slits, regularly arranged around the disk | 3 | +| jitter | s | Jitter in the time phase | 0 | +| delay | s | Time 'delay' | 0 | +| isfirst | 0/1 | Set it to 1 for the first chopper position in a cw source (it then spreads the neutron time distribution) | 0 | +| n_pulse | 1 | Number of pulses (Only if isfirst) | 1 | +| abs_out | 0/1 | Absorb neutrons hitting outside of chopper radius? | 1 | +| phase | deg | Angular 'delay' (overrides delay) | 0 | +| xwidth | m | Horizontal slit width opening at beam center | 0 | +| verbose | 1 | Set to 1 to display Disk chopper configuration | 0 | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/optics/DiskChopper.comp) for `DiskChopper.comp`. + +--- + +*Generated on mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/optics/Elliptic_guide_gravity.md b/mcstas-comps/optics/Elliptic_guide_gravity.md new file mode 100644 index 000000000..c36d0f675 --- /dev/null +++ b/mcstas-comps/optics/Elliptic_guide_gravity.md @@ -0,0 +1,127 @@ +# The `Elliptic_guide_gravity` Component + +*McStas: Perfect elliptic guide which allow for simulations with gravity. +The guide mirrors can be divided into segments with individual m-values. +Parabolic guide components can also be simulated.* + +## Identification + +- **Site:** +- **Author:** Henrik Bo Hoffmann Carlsen and Mads Bertelsen +- **Origin:** NBI +- **Date:** 27 Aug 2012 + +## Description + +```text +The perfect elliptic guide is centered along the z-axis with the entrance +and exit in the xy-plane. The horizontal and vertical ellipses defining +the guide geometry is by default set by two focal points. +These are placed a distance away from the guide openings along the z-axis; +if distance given is positive, when the focal point is outside the guide. + +Multiple options for defining these ellipse exist including approximation of +parabolas and half ellipses (mid point of the ellipse or one of the guide openings) + +The guide coating parameters can be set for each side of the guide. +Furthermore the m-value can be specified for user defined segments +of the guide. + +Example 1, Elliptical definition using focal points: + +Elliptic_guide_gravity( +l=50, +linxw=5,linyh=5,loutxw=10,loutyh=10, +xwidth=0.05,yheight=0.05, +R0=0.99,Qc=0.0219,alpha=6.07,m=1.0,W=0.003 +) + +Example 2: Half elliptical definition: + +Elliptic_guide_gravity( +l=50, +linxw=5,linyh=5,loutxw=10,loutyh=10, +xwidth=0.1,yheight=0.1, +R0=0.99,Qc=0.0219,alpha=6.07,m=1.0,W=0.003, +option = "halfEllipse", +dimensionsAt = "entrance" +) + +Example 3: Parabolic approximation: + +Elliptic_guide_gravity( +l=50, +linxw=5,linyh=5,loutxw=1e6,loutyh=1e6, // values larger than 1e8 may cause erroneous results +xwidth=0.1,yheight=0.1, +R0 = 0.99,Qc=0.0219,alpha=6.07,m=1.0,W=0.003, +dimensionsAt = "exit" +) + +Example 4: Elliptical definition with varying m-values: + +Elliptic_guide_gravity( +l=50, +linxw=5,linyh=5,loutxw=10,loutyh=10, +xwidth=0.1,yheight=0.1, +R0 = 0.99,Qc=0.0219,alpha=6.07,m=1.0,W=0.003, +mvaluesright=marray,mvaluesleft=marray,mvaluestop=marray,mvaluesbottom=marray +) + +where marray is initialized as +for(iter=0; iter < 50; iter++){ marray[iter] = 2; } +And Declared as +double mValues[50]; +If you are using the array-based coating-specification, you **must** give nSegments a compatible value. +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| xwidth | m | width at the guide entry, mid or exit (see dimensionsAt) | 0 | +| yheight | m | height at the guide entry, mid or exit (see dimensionsAt) | 0 | +| **l** | m | length of the guide | | +| linxw | m | distance from 1st focal point to guide entrance - left and right horizontal mirrors | 0 | +| loutxw | m | distance from 2nd focal point to guide exit - left and right horizontal mirrors | 0 | +| linyh | m | distance from 1st focal point to guide entrance - top and bottom vertical mirrors | 0 | +| loutyh | m | distance from 2nd focal point to guide exit - top and bottom vertical mirrors | 0 | +| majorAxisxw | m | direct defination of the guide geometry, will ignore w,h lin and lout parameters if this is nonzero. Length of the axis parallel to the z for the horizontal ellipse | 0 | +| minorAxisxw | m | direct defination of the guide geometry, will ignore w,h lin and lout parameters if this is nonzero. Length of the axis Perpendicular to the z for the horizontal ellipse | 0 | +| majorAxisyh | m | direct defination of the guide geometry, will ignore w,h lin and lout parameters if this is nonzero. Length of the axis parallel to the z for the vertical ellipse | 0 | +| minorAxisyh | m | direct defination of the guide geometry, will ignore w,h lin and lout parameters if this is nonzero. Length of the axis Perpendicular to the z for the vertical ellipse | 0 | +| majorAxisoffsetxw | m | direct defination of the guide geometry, distance between the center of the horizontal ellipse and the guide entrance | 0 | +| majorAxisoffsetyh | m | direct defination of the guide geometry, distance between the center of the vertical ellipse and the guide entrance | 0 | +| dimensionsAt | string | define whether xwidth and yheight sets the size of the opening, minor axis or the end of the guide. | "entrance" | +| option | string | options are 'ellipse' and 'halfEllipse'. Ellipse is defined by both the focal points, while halfEllipse locked the center of the ellipse either the entrance or exit of the guide, and use the focal point of the other end to define the ellipse | "ellipse" | +| R0 | 1 | Low-angle reflectivity | 0.99 | +| Qc | AA-1 | Critical scattering vector | 0.0218 | +| alpha | AA | Slope of reflectivity | 6.07 | +| m | 1 | m-value of material for all mirrors, zero means complete absorption. | 2 | +| W | AA-1 | Width of supermirror cut-off | 0.003 | +| alpharight | AA | Slope of reflectivity for right vertical mirror | -1 | +| mright | 1 | m-value of material for right vertical mirror | -1 | +| alphaleft | AA | Slope of reflectivity for left vertical mirror | -1 | +| mleft | 1 | m-value of material for left vertical mirror | -1 | +| alphatop | AA | Slope of reflectivity for top horizontal mirror, overwrites alpha | -1 | +| mtop | 1 | m-value of material for top horizontal mirror, overwrites m | -1 | +| alphabottom | AA | Slope of reflectivity for bottom horizontal mirror | -1 | +| mbottom | 1 | m-value of material for bottom horizontal mirror | -1 | +| verbose | bool | Give extra information about calculations | "on" | +| enableGravity | m | Flag to select propagation with gravity. | 1.0 | +| curvature | m | Simulate horizontal radius of curvature by centripetal force added to the gravity. Note: Does not curve the guide in mcdisplay but "curves the neutron". Has opposite sign definition of Guide_curved. | 0 | +| nSegments | m | Must be used to specify number of guide segments, i.e. when giving inputs mvaluesright ... etc. | -1 | +| mvaluesright | pointer | Pointer to array of m-values, right mirror | NULL | +| mvaluesleft | pointer | - same, left mirror | NULL | +| mvaluestop | pointer | - same, top mirror | NULL | +| mvaluesbottom | pointer | - same, bottom mirror | NULL | +| seglength | pointer | Pointer to array of segment lengths for discrete mirror description | NULL | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/optics/Elliptic_guide_gravity.comp) for `Elliptic_guide_gravity.comp`. + +--- + +*Generated on mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/optics/FZP_simple.md b/mcstas-comps/optics/FZP_simple.md new file mode 100644 index 000000000..34fd81622 --- /dev/null +++ b/mcstas-comps/optics/FZP_simple.md @@ -0,0 +1,47 @@ +# The `FZP_simple` Component + +*McStas: Fresnel zone-plate as a thin object approximation.* + +## Identification + +- **Site:** +- **Author:** A Komar Ravn, and Erik B Knudsen +- **Origin:** NBI/DTU +- **Date:** Aug, 2015 + +## Description + +```text +A simple phenomenological thin-object approximation of a Fresnel Zone Plate. +This component was adapted for neutrons from the original component +written for helium scattering. +The focal length of the Zone Plate is determined by the formula: +\[f = 2*r*dr/(lambda)\] +If a diffraction order other than 1 is wanted the focal distance is scaled accordingly. +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| **rad** | m | Radius of the zone-plate. | | +| **dr** | m | Width of the outermost ring-slit. | | +| bs0rad | m | Radius of the central blocking zone. | 0 | +| order | m | Use this diffaction order. | 1 | +| eta | | Efficiency of the FZP. For neutrons and (order==1) typically {5...30}%. Overrides the sigma_x cross sections. | 0.1 | +| sigma_abs | barn | 2200 m/s absorption cross section. | 0 | +| sigma_inc | barn | Incoherent scattering cross section. | 0 | +| sigma_coh | barn | Coherent scattering cross section. | 0 | +| rho | g/cm3 | Density of Zone plate material - used merely for absorption estimation. | 1 | +| thickness | m | Thickness of the FZP. Note that the FZP still is modelled as a thin object. The thickness is used in conjunction with the sigma_x cross sections. | 0 | +| gamma | | Duty cycle of the Zone plate - used merely for absorption estimation. | 0.5 | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/optics/FZP_simple.comp) for `FZP_simple.comp`. + +--- + +*Generated on mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/optics/FermiChopper.md b/mcstas-comps/optics/FermiChopper.md new file mode 100644 index 000000000..37e2902bf --- /dev/null +++ b/mcstas-comps/optics/FermiChopper.md @@ -0,0 +1,69 @@ +# The `FermiChopper` Component + +*McStas: Fermi Chopper with rotating frame.* + +## Identification + +- **Site:** +- **Author:** M. Poehlmann, C. Carbogno, H. Schober, E. Farhi +- **Origin:** ILL Grenoble / TU Muenchen +- **Date:** May 2002 + +## Description + +```text +Models a fermi chopper with optional supermirror coated blades +supermirror facilities may be disabled by setting m = 0, R0=0 +Slit packages are straight. Chopper slits are separated by an infinitely +thin absorbing material. The effective transmission (resulting from fraction +of the transparent material and its transmission) may be specified. +The chopper slit package width may be specified through the total width 'xwidth' +of the full package or the width 'w' of each single slit. The other parameter +is calculated by: xwidth = nslit*w. The slit package may be made curved and use +super-mirror coating. + +Example: +FermiChopper(phase=-50.0, radius=0.04, nu=100, yheight=0.08, w=0.00022475, nslit=200.0, R0=0.0, Qc=0.02176, alpha=2.33, m=0.0, length=0.012, eff=0.95) + +%VALIDATION +Apr 2005: extensive external test, most problems solved (cf. 'Bugs') +Validated by: K. Lieutenant, E. Farhi + +limitations: +no absorbing blade width used +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| phase | deg | chopper phase at t=0 | 0 | +| radius | m | chopper cylinder radius | 0.04 | +| nu | Hz | chopper frequency. Omega=2*PI*nu in rad/s, nu*60 in rpm. Positive value corresponds to a counter-clockwise rotation around y. | 100 | +| w | m | width of one chopper slit | 0.00022475 | +| nslit | 1 | number of chopper slits | 200 | +| R0 | 1 | low-angle reflectivity | 0.0 | +| Qc | AA-1 | critical scattering vector | 0.02176 | +| alpha | AA | slope of reflectivity | 2.33 | +| m | 1 | m-value of material. Zero means completely absorbing. | 0.0 | +| W | AA-1 | width of supermirror cut-off | 2e-3 | +| length | m | channel length of the Fermi chopper | 0.012 | +| eff | 1 | efficiency = transmission x fraction of transparent material | 0.95 | +| zero_time | 1 | set time to zero: 0=no, 1=once per half cycle, 2=auto adjust phase | 0 | +| xwidth | m | optional total width of slit package | 0 | +| verbose | 1 | set to 1,2 or 3 gives debugging information | 0 | +| yheight | m | height of slit package | 0.08 | +| curvature | m-1 | Curvature of slits (1/radius of curvature). | 0 | +| delay | s | sets phase so that transmision is centered on 'delay' | 0 | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/optics/FermiChopper.comp) for `FermiChopper.comp`. +- Vitess_ChopperFermi component by +- G. Zsigmond, imported from Vitess by K. Lieutenant. + +--- + +*Generated on mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/optics/Filter_gen.md b/mcstas-comps/optics/Filter_gen.md new file mode 100644 index 000000000..8f10bb216 --- /dev/null +++ b/mcstas-comps/optics/Filter_gen.md @@ -0,0 +1,81 @@ +# The `Filter_gen` Component + +*McStas: Release: McStas 1.6 + +This components may either set the flux or change it (filter-like), using +an external data filename.* + +## Identification + +- **Site:** +- **Author:** E. Farhi +- **Origin:** ILL +- **Date:** Dec, 15th, 2002 + +## Description + +```text +This component changes the neutron flux (weight) in order to match +a reference table in a filename. +Typically you may set the neutron flux (source-like), or multiply it +using a transmission table (filter-like). +The component may be placed after a source, in order to e.g. +simulate a real source from a reference table, or used as a filter (BeO) +or as a window (Al). The behaviour of the component is +specified using the 'options' parameter, or from the filename itself (see below) +If the thickness for the transmission data filename D was t0, and a different +thickness t1 would be required, then the resulting transmission is: +D^(t1/t0). +You may use the 'thickness' and 'scaling' parameter for that purpose. + +File format: +This filename may be of any 2-columns free format (k[Angs-1],p), (omega[meV],p) +and (lambda[Angs],p) where p is the weight. The type of the filename may be +written explicitely in the filename, as a comment, or using the 'options' +parameter. +Non mumerical content in filename is treated as comment (e.g. lines starting +with '#' character). +A table rebinning and linear interpolation are performed. + +EXAMPLE : in order to simulate a PG filter, using the lib/data/HOPG.trm file +Filter_gen(xwidth=.1 yheight=.1, filename="HOPG.trm") +A Sapphire filter, using the lib/data/Al2O3_sapphire.trm file +Filter_gen(xwidth=.1 yheight=.1, filename="Al2O3_sapphire.trm") +A Berylium filter, using the lib/data/Be.trm file +Filter_gen(xwidth=.1 yheight=.1, filename="Be.trm") +an other possibility to simulate a Be filter is to use the PowderN component: +PowderN(xwidth=.1, yheight=.1, zdepth=.1, reflections="Be.laz", p_inc=1e-4) + +in this filename, the comment line +# wavevector multiply +sets the behaviour of the component. One may as well have used +options="wavevector multiply" +in the component instance parameters. +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| filename | str | name of the filename to look at (first two columns data). Data D should rather be sorted (ascending order) and monotonic filename may contain options (see below) as comment | 0 | +| options | str | string that can contain: "[ k p ]" or "wavevector" for filename type, "[ omega p]" or "energy", "[ lambda p ]" or "wavelength", "set" to set the weight according to the table,"multiply" to multiply (instead of set) the weight by factor,"add" to add to current flux,"verbose" to display additional informations. | 0 | +| xmin | m | dimension of filter | -0.05 | +| xmax | m | dimension of filter | 0.05 | +| ymin | m | dimension of filter | -0.05 | +| ymax | m | dimension of filter | 0.05 | +| xwidth | m | Width/diameter of filter). Overrides xmin,xmax. | 0 | +| yheight | m | Height of filter. Overrides ymin,ymax. | 0 | +| thickness | 1 | relative thickness. D = D^(thickness). | 1 | +| scaling | 1 | scaling factor. D = D*scaling. | 1 | +| verbose | 1 | Flag to select verbose output. | 0 | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/optics/Filter_gen.comp) for `Filter_gen.comp`. +- HOPG.trm filename as an example. + +--- + +*Generated on mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/optics/Guide.md b/mcstas-comps/optics/Guide.md new file mode 100644 index 000000000..b9adaf72f --- /dev/null +++ b/mcstas-comps/optics/Guide.md @@ -0,0 +1,57 @@ +# The `Guide` Component + +*McStas: Neutron guide.* + +## Identification + +- **Site:** +- **Author:** Kristian Nielsen +- **Origin:** Risoe +- **Date:** September 2 1998 + +## Description + +```text +Models a rectangular guide tube centered on the Z axis. The entrance lies +in the X-Y plane. +For details on the geometry calculation see the description in the McStas +reference manual. +The reflectivity profile may either use an analytical mode (see Component +Manual) or a 2-columns reflectivity free text file with format +[q(Angs-1) R(0-1)]. + +Example: Guide(w1=0.1, h1=0.1, w2=0.1, h2=0.1, l=2.0, R0=0.99, Qc=0.021, alpha=6.07, m=2, W=0.003 + +%VALIDATION +May 2005: extensive internal test, no bugs found +Validated by: K. Lieutenant + +%BUGS +This component does not work with gravitation on. Use component Guide_gravity then. +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| reflect | str | Reflectivity file name. Format | 0 | +| **w1** | m | Width at the guide entry | | +| **h1** | m | Height at the guide entry | | +| w2 | m | Width at the guide exit | 0 | +| h2 | m | Height at the guide exit | 0 | +| **l** | m | length of guide | | +| R0 | 1 | Low-angle reflectivity | 0.99 | +| Qc | AA-1 | Critical scattering vector | 0.0219 | +| alpha | AA | Slope of reflectivity | 6.07 | +| m | 1 | m-value of material. Zero means completely absorbing. glass/SiO2 Si Ni Ni58 supermirror Be Diamond m= 0.65 0.47 1 1.18 2-6 1.01 1.12 | 2 | +| W | AA-1 | Width of supermirror cut-off | 0.003 | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/optics/Guide.comp) for `Guide.comp`. + +--- + +*Generated on mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/optics/Guide_anyshape.md b/mcstas-comps/optics/Guide_anyshape.md new file mode 100644 index 000000000..8c3519310 --- /dev/null +++ b/mcstas-comps/optics/Guide_anyshape.md @@ -0,0 +1,66 @@ +# The `Guide_anyshape` Component + +*McStas: Reflecting surface (guide and mirror) with any shape, defined from an OFF file.* + +## Identification + +- **Site:** +- **Author:** Emmanuel Farhi +- **Origin:** ILL +- **Date:** August 4th 2010 + +## Description + +```text +This is a reflecting object component. Its shape is defined from an OFF file, +given with its file name. The object size is set as given from the file, where +dimensions should be in meters. The bounding box may be re-scaled by specifying +xwidth,yheight,zdepth parameters. The object may optionally be centered when +using 'center=1'. + +The reflectivity is specified either from the usual parametric description +R0,Qc,alpha,W,m, or from a reflectivity file 'reflect' with a 2 column +format [q(Angs-1) R(0-1)]. + +The complex OFF/PLY geometry option handles any closed non-convex polyhedra. +It supports the OFF and NOFF file format but not COFF (colored faces). +Such files may be generated from XYZ data using: +qhull < coordinates.xyz Qx Qv Tv o > geomview.off +or +powercrust coordinates.xyz +and viewed with geomview or java -jar jroff.jar (see below). +The default size of the object depends of the OFF file data, but its +bounding box may be resized using xwidth,yheight and zdepth. +PLY geometry files are also supported. +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| xwidth | m | Redimension the object bounding box on X axis is non-zero | 0 | +| yheight | m | Redimension the object bounding box on Y axis is non-zero | 0 | +| zdepth | m | Redimension the object bounding box on Z axis is non-zero | 0 | +| center | 1 | When set to 1, the object will be centered w.r.t. the local coordinate frame | 0 | +| transmit | 1 | When true, non reflected neutrons are transmitted through the surfaces, instead of being absorbed. No material absorption is taken into account though | 0 | +| R0 | 1 | Low-angle reflectivity | 0.99 | +| Qc | AA-1 | Critical scattering vector | 0.0219 | +| alpha | AA | Slope of reflectivity | 3 | +| m | 1 | m-value of material. Zero means completely absorbing. | 2 | +| W | AA-1 | Width of supermirror cut-off | 0.003 | +| reflect | q(Angs-1) R(0-1) | (str) Reflectivity file name. Format | 0 | +| geometry | str | Name of the OFF/PLY file describing the guide geometry | 0 | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/optics/Guide_anyshape.comp) for `Guide_anyshape.comp`. +- Geomview and Object File Format (OFF) +- Java version of Geomview (display only) jroff.jar +- qhull +- powercrust + +--- + +*Generated on mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/optics/Guide_channeled.md b/mcstas-comps/optics/Guide_channeled.md new file mode 100644 index 000000000..1e8c38376 --- /dev/null +++ b/mcstas-comps/optics/Guide_channeled.md @@ -0,0 +1,69 @@ +# The `Guide_channeled` Component + +*McStas: Neutron guide with channels (bender section).* + +## Identification + +- **Site:** +- **Author:** Christian Nielsen +- **Origin:** Risoe +- **Date:** 1999 + +## Description + +```text +Models a rectangular guide tube centered on the Z axis. The entrance lies +in the X-Y plane. +The guide may be tapered, and may have vertical subdivisions (used for +bender devices). + +There is a special rotating mode in order to approximate a Fermi Chopper +behaviour, in the case the neutron trajectory is nearly linear inside the +chopper slits, i.e. the neutrons are fast w/r/ to the chopper speed. +Slits are straight, but may be super-mirror coated. In this case, the +component is NOT centered, but located at its entry window. It should then +be shifted by -l/2. + +Example: Guide_channeled(w1=0.1, h1=0.1, w2=0.1, h2=0.1, l=2.0, +R0=0.99, Qcx=0.0219, Qcy=0.0219, alphax=6.07, alphay=6.07, W=0.003, nslit=1, +d=0.0005, mx=1, my=1) + +%BUGS +This component does not work with gravitation on. Use Guide_gravity. +This component does not work in multichannel focusing geometry. +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| **w1** | m | Width at the guide entry | | +| **h1** | m | Height at the guide entry | | +| w2 | m | Width at the guide exit | 0 | +| h2 | m | Height at the guide exit | 0 | +| **l** | m | Length of guide | | +| R0 | 1 | Low-angle reflectivity | 0.995 | +| Qc | AA-1 | Critical scattering vector | 0 | +| alpha | AA | Slope of reflectivity | 0 | +| m | 1 | m-value of material. Zero means completely absorbing. | 0 | +| nslit | 1 | Number of channels in the guide (>= 1) | 1 | +| d | m | Thickness of subdividing absorbing walls | 0.0005 | +| Qcx | AA-1 | Critical scattering vector for left and right vertical mirrors in each channel | 0.0218 | +| Qcy | AA-1 | Critical scattering vector for top and bottom mirrors | 0.0218 | +| alphax | AA | Slope of reflectivity for left and right vertical mirrors in each channel | 4.38 | +| alphay | AA | Slope of reflectivity for top and bottom mirrors | 4.38 | +| W | AA-1 | Width of supermirror cut-off for all mirrors | 0.003 | +| mx | 1 | m-value of material for left and right vertical mirrors in each channel. Zero means completely absorbing. | 1 | +| my | 1 | m-value of material for top and bottom mirrors. Zero means completely absorbing. | 1 | +| nu | Hz | Rotation frequency (round/s) for Fermi Chopper approximation | 0 | +| phase | deg | Phase shift for the Fermi Chopper approximation | 0 | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/optics/Guide_channeled.comp) for `Guide_channeled.comp`. + +--- + +*Generated on mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/optics/Guide_gravity.md b/mcstas-comps/optics/Guide_gravity.md new file mode 100644 index 000000000..003df788c --- /dev/null +++ b/mcstas-comps/optics/Guide_gravity.md @@ -0,0 +1,96 @@ +# The `Guide_gravity` Component + +*McStas: Neutron straight guide with gravity. Can be channeled and focusing. +Waviness may be specified, as well as side chamfers (on substrate).* + +## Identification + +- **Site:** +- **Author:** Emmanuel Farhi +- **Origin:** ILL (France). +- **Date:** Aug 03 2001 + +## Description + +```text +Models a rectangular straight guide tube centered on the Z axis, with +gravitation handling. The entrance lies in the X-Y plane. +The guide can be channeled (nslit,d,nhslit parameters). The guide coating +specifications may be entered via different ways (global, or for +each wall m-value). + +Waviness (random) may be specified either globally or for each mirror type. +Side chamfers (due to substrate processing) may be specified the same way. +In order to model a realistic straight guide assembly, a long guide of +length 'l' may be splitted into 'nelements' between which chamfers/gaps are +positioned. + +The reflectivity may be specified either using an analytical mode (see +Component manual) or as a text file in free format, with 1st +column as q[Angs-1] and 2nd column as the reflectivity R in [0-1]. +For details on the geometry calculation see the description in the McStas +component manual. + +There is a special rotating mode in order to approximate a Fermi Chopper +behaviour, in the case the neutron trajectory is nearly linear inside the +chopper slits, i.e. the neutrons are fast w/r/ to the chopper speed. +Slits are straight, but may be super-mirror coated. In this case, the +component is NOT centered, but located at its entry window. It should then +be shifted by -l/2. + +Example: Guide_gravity(w1=0.1, h1=0.1, w2=0.1, h2=0.1, l=12, +R0=0.99, Qc=0.0219, alpha=6.07, m=1.0, W=0.003) + +%VALIDATION +May 2005: extensive internal test, all problems solved +Validated by: nslit. Lieutenant +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| **w1** | m | Width at the guide entry | | +| **h1** | m | Height at the guide entry | | +| w2 | m | Width at the guide exit. If 0, use w1. | 0 | +| h2 | m | Height at the guide exit. If 0, use h1. | 0 | +| **l** | m | length of guide | | +| R0 | 1 | Low-angle reflectivity | 0.995 | +| Qc | AA-1 | Critical scattering vector | 0.0218 | +| alpha | AA | Slope of reflectivity | 4.38 | +| m | 1 | m-value of material. Zero means completely absorbing. m=0.65 glass/SiO2 Si Ni Ni58 supermirror Be Diamond m= 0.65 0.47 1 1.18 2-6 1.01 1.12 for glass/SiO2, m=1 for Ni, 1.2 for Ni58, m=2-6 for supermirror. m=0.47 for Si | 1.0 | +| W | AA-1 | Width of supermirror cut-off | 0.003 | +| nslit | 1 | Number of vertical channels in the guide (>= 1) (nslit-1 vertical dividing walls). | 1 | +| d | m | Thickness of subdividing walls | 0.0005 | +| mleft | 1 | m-value of material for left. vert. mirror | -1 | +| mright | 1 | m-value of material for right. vert. mirror | -1 | +| mtop | 1 | m-value of material for top. horz. mirror | -1 | +| mbottom | 1 | m-value of material for bottom. horz. mirror | -1 | +| nhslit | 1 | Number of horizontal channels in the guide (>= 1). (nhslit-1 horizontal dividing walls). this enables to have nslit*nhslit rectangular channels | 1 | +| G | m/s2 | Gravitation norm. 0 value disables G effects. | 0 | +| aleft | 1 | alpha-value of left vert. mirror | -1 | +| aright | 1 | alpha-value of right vert. mirror | -1 | +| atop | 1 | alpha-value of top horz. mirror | -1 | +| abottom | 1 | alpha-value of left horz. mirror | -1 | +| wavy | deg | Global guide waviness | 0 | +| wavy_z | deg | Partial waviness along propagation axis | 0 | +| wavy_tb | deg | Partial waviness in transverse direction for top/bottom mirrors | 0 | +| wavy_lr | deg | Partial waviness in transverse direction for left/right mirrors | 0 | +| chamfers | m | Global chamfers specifications (in/out/mirror sides). | 0 | +| chamfers_z | m | Input and output chamfers | 0 | +| chamfers_lr | m | Chamfers on left/right mirror sides | 0 | +| chamfers_tb | m | Chamfers on top/bottom mirror sides | 0 | +| nelements | 1 | Number of sections in the guide (length l/nelements). | 1 | +| nu | Hz | Rotation frequency (round/s) for Fermi Chopper approximation | 0 | +| phase | deg | Phase shift for the Fermi Chopper approximation | 0 | +| reflect | str | Reflectivity file name. Format | "NULL" | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/optics/Guide_gravity.comp) for `Guide_gravity.comp`. + +--- + +*Generated on mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/optics/Guide_simple.md b/mcstas-comps/optics/Guide_simple.md new file mode 100644 index 000000000..5a0765489 --- /dev/null +++ b/mcstas-comps/optics/Guide_simple.md @@ -0,0 +1,56 @@ +# The `Guide_simple` Component + +*McStas: Neutron guide.* + +## Identification + +- **Site:** +- **Author:** Kristian Nielsen +- **Origin:** Risoe +- **Date:** September 2 1998 + +## Description + +```text +Models a rectangular guide tube centered on the Z axis. The entrance lies +in the X-Y plane. +For details on the geometry calculation see the description in the McStas +reference manual. +The reflectivity profile may either use an analytical mode (see Component +Manual) or a 2-columns reflectivity free text file with format +[q(Angs-1) R(0-1)]. + +Example: Guide(w1=0.1, h1=0.1, w2=0.1, h2=0.1, l=2.0, R0=0.99, Qc=0.021, alpha=6.07, m=2, W=0.003 + +%VALIDATION +May 2005: extensive internal test, no bugs found +Validated by: K. Lieutenant + +%BUGS +This component does not work with gravitation on. Use component Guide_gravity then. +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| **w1** | m | Width at the guide entry | | +| **h1** | m | Height at the guide entry | | +| w2 | m | Width at the guide exit | 0 | +| h2 | m | Height at the guide exit | 0 | +| **l** | m | length of guide | | +| R0 | 1 | Low-angle reflectivity | 0.99 | +| Qc | AA-1 | Critical scattering vector | 0.0219 | +| alpha | AA | Slope of reflectivity | 6.07 | +| m | 1 | m-value of material. Zero means completely absorbing. glass/SiO2 Si Ni Ni58 supermirror Be Diamond m= 0.65 0.47 1 1.18 2-6 1.01 1.12 | 2 | +| W | AA-1 | Width of supermirror cut-off | 0.003 | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/optics/Guide_simple.comp) for `Guide_simple.comp`. + +--- + +*Generated on mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/optics/Guide_tapering.md b/mcstas-comps/optics/Guide_tapering.md new file mode 100644 index 000000000..5e6d39bbd --- /dev/null +++ b/mcstas-comps/optics/Guide_tapering.md @@ -0,0 +1,84 @@ +# The `Guide_tapering` Component + +*McStas: Models a rectangular tapered guide (many shapes)* + +## Identification + +- **Site:** +- **Author:** Uwe Filges +- **Origin:** PSI +- **Date:** 22/10/2003 + +## Description + +```text +Models a rectangular guide tube centered on the Z axis. The entrance lies +in the X-Y plane. +The guide may be tapered. + +The component includes a feature to read in self-defined functions for +guide tapering. Under the parameter 'option' the KEYWORD 'file=' offers +the possibility to read in parameters from an ASC-file. The file structure +is shown below in the example. It is important to know that the first +3 lines will be interpreted as comments. +Afterwards the dimension of each guide segment must be defined. The +length of each segment is constant l(i)=l/segments . The number of +segments is defined through the number of lines minus the first 3 +lines taken from the Input-File. +The guide can be made curved both horizontally and vertically (not shown in 3d +view), and m-coating, when set negative, is varied in 1/width. + +Example Input-File: + +c Guide_tapering.comp +c i = 0 - 199 segments +c h1(i) h2(i) w1(i) w2(i) +0.120000 0.119850 0.020000 0.020000 +0.119850 0.119700 0.020000 0.020000 +0.119700 0.119550 0.020000 0.020000 +0.119550 0.119400 0.020000 0.020000 +0.119400 0.119250 0.020000 0.020000 +0.119250 0.119100 0.020000 0.020000 +... + +Example1: Guide_tapering(w1=0.1, h1=0.18, linw=0.1, loutw=0.1, linh=0.1, louth=0.1, l=1.5, option="elliptical", R0=0.99, Qcx=0.021, Qcy=0.021, alphax=6.07, alphay=6.07, W=0.003, mx=1, my=1, segno=800) + +Example2: Guide_tapering(w1=0, h1=0, linw=0, loutw=0, linh=0, louth=0, l=1.5, option="file=ownfunction.txt", R0=0.99, Qcx=0.021, Qcy=0.021, alphax=6.07, alphay=6.07, W=0.003, mx=1, my=1) + +%BUGS +This component does not work with gravitation on. Use component Guide_gravity then. +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| option | str | define the input function for the curve of the guide walls options are: "elliptical" - define elliptical function of guide walls "parabolical" - define parabolical function of guide walls "straight" - define a straight elements guide"file=[filename]" - read in ASC-file with arbitrary definition for the curve of the guide walls | 0 | +| w1 | m | Width at the guide entry | 0 | +| h1 | m | Height at the guide entry | 0 | +| **l** | m | length of guide | | +| linw | m | distance from 1st focal point to real guide entry - left and right horizontal mirrors | 0 | +| loutw | m | distance from real guide exit to 2nd focal point - left and right horizontal mirrors | 0 | +| linh | m | distance from 1st focal point to real guide entry - top and bottom vertical mirrors | 0 | +| louth | m | distance from real guide exit to 2nd focal point - top and bottom vertical mirrors | 0 | +| R0 | 1 | Low-angle reflectivity | 0.99 | +| Qcx | AA-1 | Critical scattering vector for left and right vertical mirrors in each channel | 0.021 | +| Qcy | AA-1 | Critical scattering vector for top and bottom mirrors | 0.021 | +| alphax | AA | Slope of reflectivity for left and right vertical mirrors in each channel | 6.07 | +| alphay | AA | Slope of reflectivity for top and bottom mirrors | 6.07 | +| W | AA-1 | Width of supermirror cut-off for all mirrors | 0.003 | +| mx | 1 | m-value of material for left and right vertical mirrors in each channel. Zero means completely absorbing. Negative value will adapt coating as e.g. m=mx*w1/w | 1 | +| my | 1 | m-value of material for top and bottom mirrors. Zero means completely absorbing. Negative value will adapt coating as e.g. m=my*h1/h | 1 | +| segno | 1 | number of segments (z-axis) for cutting the tube | 800 | +| curvature | m | guide horizontal radius of curvature. Zero means straight. | 0 | +| curvature_v | m | guide vertical radius of curvature. Zero means straight. | 0 | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/optics/Guide_tapering.comp) for `Guide_tapering.comp`. + +--- + +*Generated on mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/optics/Guide_wavy.md b/mcstas-comps/optics/Guide_wavy.md new file mode 100644 index 000000000..68ccef9e7 --- /dev/null +++ b/mcstas-comps/optics/Guide_wavy.md @@ -0,0 +1,63 @@ +# The `Guide_wavy` Component + +*McStas: Neutron guide with gaussian waviness.* + +## Identification + +- **Site:** +- **Author:** Kim Lefmann +- **Origin:** Risoe +- **Date:** + +## Description + +```text +Models a rectangular guide tube centered on the Z axis. The entrance lies +in the X-Y plane. +For details on the geometry calculation see the description in the McStas +reference manual. + +Example: m=2 Qc=0.0218 (nat. Ni) W=1/300 alpha=4.38 R0=0.995 (given by Daniel Clemens, PSI) + +%BUGS +This component does not work with gravitation on. Use component Guide_gravity then. +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| **w1** | m | Width at the guide entry | | +| **h1** | m | Height at the guide entry | | +| w2 | m | Width at the guide exit | 0 | +| h2 | m | Height at the guide exit | 0 | +| **l** | m | length of guide | | +| R0 | 1 | Low-angle reflectivity | 0.995 | +| Qc | AA-1 | Critical scattering vector | 0.0218 | +| alpha | AA | Slope of reflectivity | 0 | +| m | 1 | m-value of material. Zero means completely absorbing. | 0 | +| W | AA-1 | Width of supermirror cut-off for all mirrors | 0 | +| alpha1 | AA | Slope of reflectivity left | 4.38 | +| m1 | 1 | m-value of material, left | 2 | +| W1 | AA-1 | Width of supermirror cut-off left | 0.003 | +| alpha2 | AA | Slope of reflectivity right | 4.38 | +| m2 | 1 | m-value of material, right. | 2 | +| W2 | AA-1 | Width of supermirror cut-off right | 0.003 | +| alpha3 | AA | Slope of reflectivity top | 4.38 | +| m3 | 1 | m-value of material, top. | 2 | +| W3 | AA-1 | Width of supermirror cut-off top | 0.003 | +| alpha4 | AA | Slope of reflectivity bottom | 4.38 | +| m4 | 1 | m-value of material, bottom. | 2 | +| W4 | AA-1 | Width of supermirror cut-off bottom | 0.003 | +| wavy_z | deg | Waviness in the z-(flight-)direction | 0 | +| wavy_xy | deg | Waviness in the transverse direction | 0 | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/optics/Guide_wavy.comp) for `Guide_wavy.comp`. + +--- + +*Generated on mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/optics/He3_cell.md b/mcstas-comps/optics/He3_cell.md new file mode 100644 index 000000000..95a2a04f7 --- /dev/null +++ b/mcstas-comps/optics/He3_cell.md @@ -0,0 +1,49 @@ +# The `He3_cell` Component + +*McStas: version: $Revision$ + +Polarised 3He cell* + +## Identification + +- **Site:** +- **Author:** Trefor Roberts & Erik B Knudsen +- **Origin:** ILL/DTU Physics +- **Date:** March 1999 + +## Description + +```text +Simple polarised 3He neutron spin filter cell, defaults to a cylindrical geometry but may be +used with a sphere or box geometry also. +The glass container for the cell is not included in the model. + +This component has been validated against: +Batz, M, Baessler, S, Heil, W, et al., J Res Natl Inst Stand Technol. 2005;110(3):293–298. + +Example: He3_cell(radius=0.1,length=.2,pressure=3,p3he=0.7,bx=0,by=1e-3,bz=0) +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| xwidth | m | width of box geometry | 0 | +| yheight | m | height of the box geometry | 0 | +| radius | m | radius of the cylinder / sphere geometry | 0.11 | +| length | m | length of the cylinder / box geometry along z | 0.01 | +| pressure | bar | pressure of the gas in the cell | 3 | +| p3he | | polarisation of the 3He gas [-1 to +1] | 0.7 | +| bx | tesla | x component of field at the cell | 0 | +| by | tesla | y component of field at the cell | 1e-3 | +| bz | tesla | z component of field at the cell | 0 | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/optics/He3_cell.comp) for `He3_cell.comp`. + +--- + +*Generated on mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/optics/Mask.md b/mcstas-comps/optics/Mask.md new file mode 100644 index 000000000..e766b2f8e --- /dev/null +++ b/mcstas-comps/optics/Mask.md @@ -0,0 +1,56 @@ +# The `Mask` Component + +*McStas: A masking image object* + +## Identification + +- **Site:** +- **Author:** Erik Knudsen +- **Origin:** DTU Physics +- **Date:** March 2014 + +## Description + +```text +The Mask component takes an image as input either as an standard image file in png or pnm format, or as an ascii file (see below for format), +and uses the image as a mask. For instance as a manner of measuring resolution for imaging applications. +If the image is supplied as a png or pnm file, they interpretation of the pixels varies depending on the file. If the image is grayscale the pixel values are directly mapped +to opacity (or transparency if invert is set) values in the range [0..1]. If the image has RGB channels the R channel is considered most significant, the B channel least significant. +The resulting number, e.g. R*255^2 + G*255 + B, is then mapped to a real valued opacity. +Additionally png images may have an alpha channel - which is then considered the least significant channel. Palette mapped pngs are as of yet _not_ supported. +A regular ascii file may be supplied - in which case the file is like the one below +#any initial line starting with a hash is silently ignored +0.0 1.0 0.0 1.0 0.0 +0.5 0.0 0.5 0.0 0.5 +0.0 0.25 0.0 0.25 0.0 +0.75 0.0 0.75 0.0 0.75 +1.0 0.0 1.0 0.0 1.0 + +...which defines a 5x5 mask with a kind of checkerboard pattern- + +N.b. If you want to use the png-option of the component you must have libpng installed _and_ link your compiled instrument to it. Assuming libpng is installed you may do this +by adding "-DUSE_PNG=1 -lpng" to 1) the MCXTRACE_CFLAGS environment variable or 2) to the compiler flags textbox in the GUI. Open File->Configuration and edit the textbox. + +The virtual option of the Mask, is intended as a help to use a png-image as a grayscale distribution. If the virtual flag is set, rays are porpagated to the mask plane +and the pixel value at the intersection point is read, but the rays reamin unaffected. By extracting the output parameter masking it can subsequently be used. +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| **xwidth** | m | Width of the masking object | | +| **yheight** | m | Height of the masking object | | +| **mask** | | Name of file containing the masking image | | +| invert | | By default the values from the masking image are interepreted as opacity (1 is fully blocking). If invert is nonzero this is inverted and the values are considered as transparency (1 is fully transmissive) | 0 | +| virtual | | Mask does not affect the neutron, but does read the pixel value of the pixel hit. Could be useful to have as a packing factor for a crystal . | 0 | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/optics/Mask.comp) for `Mask.comp`. + +--- + +*Generated on mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/optics/Mirror.md b/mcstas-comps/optics/Mirror.md new file mode 100644 index 000000000..883bee35a --- /dev/null +++ b/mcstas-comps/optics/Mirror.md @@ -0,0 +1,55 @@ +# The `Mirror` Component + +*McStas: Single mirror plate.* + +## Identification + +- **Site:** +- **Author:** Kristian Nielsen +- **Origin:** Risoe +- **Date:** August 1998 + +## Description + +```text +Single mirror plate (used to build guides in compound components). +The component Mirror models a single rectangular neutron mirror plate. +It can be used as a sample component or to e.g. assemble a complete neutron +guide by putting multiple mirror components at appropriate locations and +orientations in the instrument definition, much like a real guide is build +from individual mirrors. +Additionally, it may be centered in order to be used as a sample or +monochromator plate, else it starts from AT position. +Reflectivity is either defined by an analytical model (see Component Manual) +or from a two-columns file with q [Angs-1] as first and R [0-1] as second. +In the local coordinate system, the mirror lies in the first quadrant of the +x-y plane, with one corner at (0, 0, 0). Plane is thus perpendicular to the +incoming beam, and should usually be rotated. + +Example: Mirror(xwidth=.1, yheight=.1,R0=0.99,Qc=0.021,alpha=6.1,m=2,W=0.003) +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| reflect | str | Name of reflectivity file. Format q(Angs-1) R(0-1) | 0 | +| **xwidth** | m | width of mirror plate | | +| **yheight** | m | height of mirror plate | | +| R0 | 1 | Low-angle reflectivity | 0.99 | +| Qc | AA-1 | Critical scattering vector | 0.021 | +| alpha | AA | Slope of reflectivity | 6.07 | +| m | 1 | m-value of material. Zero means completely absorbing. | 2 | +| W | AA-1 | Width of supermirror cut-off | 0.003 | +| center | 1 | if true (1), the Mirror is centered arount AT position. | 0 | +| transmit | 1 | When true, non reflected neutrons are transmitted through the mirror, instead of being absorbed. | 0 | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/optics/Mirror.comp) for `Mirror.comp`. + +--- + +*Generated on mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/optics/Monochromator_curved.md b/mcstas-comps/optics/Monochromator_curved.md new file mode 100644 index 000000000..fbfc216fb --- /dev/null +++ b/mcstas-comps/optics/Monochromator_curved.md @@ -0,0 +1,87 @@ +# The `Monochromator_curved` Component + +*McStas: Double bent multiple crystal slabs with anisotropic gaussian mosaic.* + +## Identification + +- **Site:** +- **Author:** Emmanuel Farhi, Kim, Lefmann, Peter Link +- **Origin:** ILL +- **Date:** Aug. 24th 2001 + +## Description + +```text +Double bent infinitely thin mosaic crystal, useful as a monochromator or +analyzer. which uses a small-mosaicity approximation and taking into account +higher order scattering. The mosaic is anisotropic gaussian, with different +FWHMs in the Y and Z directions. The scattering vector is perpendicular to the +surface. For an unrotated monochromator component, the crystal plane lies in +the y-z plane (ie. parallel to the beam). The component works in reflection, but +also transmits the non-diffracted beam. Reflectivity and transmission files may +be used. The slabs are positioned in the vertical plane (not on a +cylinder/sphere), and are rotated according to the curvature radius. +When curvatures are set to 0, the monochromator is flat. +The curvatures approximation for parallel beam focusing to distance L, with +monochromator rotation angle A1 are: +RV = 2*L*sin(DEG2RAD*A1); +RH = 2*L/sin(DEG2RAD*A1); + +When you rotate the component by A1 = asin(Q/2/Ki)*RAD2DEG, do not forget to +rotate the following components by A2=2*A1 (for 1st order) ! + +Example: Monochromator_curved(zwidth=0.01, yheight=0.01, gap=0.0005, NH=11, NV=11, mosaich=30.0, mosaicv=30.0, r0=0.7, Q=1.8734) + +Monochromator lattice parameter +PG 002 DM=3.355 AA (Highly Oriented Pyrolythic Graphite) +PG 004 DM=1.677 AA +Heusler 111 DM=3.362 AA (Cu2MnAl) +CoFe DM=1.771 AA (Co0.92Fe0.08) +Ge 111 DM=3.266 AA +Ge 311 DM=1.714 AA +Ge 511 DM=1.089 AA +Ge 533 DM=0.863 AA +Si 111 DM=3.135 AA +Cu 111 DM=2.087 AA +Cu 002 DM=1.807 AA +Cu 220 DM=1.278 AA +Cu 111 DM=2.095 AA +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| reflect | str | reflectivity file name of text file as 2 columns [k, R] | "NULL" | +| transmit | str | transmission file name of text file as 2 columns [k, T] | "NULL" | +| zwidth | m | horizontal width of an individual slab | 0.01 | +| yheight | m | vertical height of an individual slab | 0.01 | +| gap | m | typical gap between adjacent slabs | 0.0005 | +| NH | int | number of slabs horizontal | 11 | +| NV | int | number of slabs vertical | 11 | +| mosaich | arc minutes | Horisontal mosaic FWHM | 30.0 | +| mosaicv | arc minutes | Vertical mosaic FWHM | 30.0 | +| r0 | 1 | Maximum reflectivity. O unactivates component | 0.7 | +| t0 | 1 | transmission efficiency | 1.0 | +| Q | AA-1 | Scattering vector | 1.8734 | +| RV | m | radius of vertical focussing. flat for 0 | 0 | +| RH | m | radius of horizontal focussing. flat for 0 | 0 | +| DM | AA | monochromator d-spacing instead of Q=2*pi/DM | 0 | +| mosaic | arc minutes | sets mosaich=mosaicv | 0 | +| width | m | total width of monochromator, along Z | 0 | +| height | m | total height of monochromator, along Y | 0 | +| verbose | 0/1 | verbosity level | 0 | +| order | 1 | specify the diffraction order, 1 is usually prefered. Use 0 for all | 0 | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/optics/Monochromator_curved.comp) for `Monochromator_curved.comp`. +- Additional note from Peter Link. +- Obsolete Mosaic_anisotropic by Kristian Nielsen +- Contributed Monochromator_2foc by Peter Link + +--- + +*Generated on mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/optics/Monochromator_flat.md b/mcstas-comps/optics/Monochromator_flat.md new file mode 100644 index 000000000..d70448d84 --- /dev/null +++ b/mcstas-comps/optics/Monochromator_flat.md @@ -0,0 +1,63 @@ +# The `Monochromator_flat` Component + +*McStas: Flat Monochromator crystal with anisotropic mosaic.* + +## Identification + +- **Site:** +- **Author:** Kristian Nielsen +- **Origin:** Risoe +- **Date:** 1999 + +## Description + +```text +Flat, infinitely thin mosaic crystal, useful as a monochromator or analyzer. +For an unrotated monochromator component, the crystal surface lies in the Y-Z +plane (ie. parallel to the beam). +The mosaic is anisotropic gaussian, with different FWHMs in the Y and Z +directions. The scattering vector is perpendicular to the surface. + +Example: Monochromator_flat(zmin=-0.1, zmax=0.1, ymin=-0.1, ymax=0.1, mosaich=30.0, mosaicv=30.0, r0=0.7, Q=1.8734) + +Monochromator lattice parameter +PG 002 DM=3.355 AA (Highly Oriented Pyrolythic Graphite) +PG 004 DM=1.677 AA +Heusler 111 DM=3.362 AA (Cu2MnAl) +CoFe DM=1.771 AA (Co0.92Fe0.08) +Ge 111 DM=3.266 AA +Ge 311 DM=1.714 AA +Ge 511 DM=1.089 AA +Ge 533 DM=0.863 AA +Si 111 DM=3.135 AA +Cu 111 DM=2.087 AA +Cu 002 DM=1.807 AA +Cu 220 DM=1.278 AA +Cu 111 DM=2.095 AA +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| zmin | m | Lower horizontal (z) bound of crystal | -0.05 | +| zmax | m | Upper horizontal (z) bound of crystal | 0.05 | +| ymin | m | Lower vertical (y) bound of crystal | -0.05 | +| ymax | m | Upper vertical (y) bound of crystal | 0.05 | +| zwidth | m | Width of crystal, instead of zmin and zmax | 0 | +| yheight | m | Height of crystal, instead of ymin and ymax | 0 | +| mosaich | arc minutes | Horizontal mosaic (in z direction) (FWHM) | 30.0 | +| mosaicv | arc minutes | Vertical mosaic (in y direction) (FWHM) | 30.0 | +| r0 | 1 | Maximum reflectivity | 0.7 | +| Q | 1/angstrom | Magnitude of scattering vector | 1.8734 | +| DM | AA | monochromator d-spacing, instead of Q = 2*pi/DM | 0 | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/optics/Monochromator_flat.comp) for `Monochromator_flat.comp`. + +--- + +*Generated on mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/optics/Monochromator_pol.md b/mcstas-comps/optics/Monochromator_pol.md new file mode 100644 index 000000000..b7a8430a9 --- /dev/null +++ b/mcstas-comps/optics/Monochromator_pol.md @@ -0,0 +1,88 @@ +# The `Monochromator_pol` Component + +*McStas: Flat polarizaing monochromator crystal.* + +## Identification + +- **Site:** +- **Author:** Peter Christiansen +- **Origin:** RISOE +- **Date:** 2006 + +## Description + +```text +Based on Monochromator_flat. +Flat, infinitely thin mosaic crystal, useful as a monochromator or analyzer. +For an unrotated monochromator component, the crystal surface lies in the Y-Z +plane (ie. parallel to the beam). +The mosaic and d-spread distributions are both Gaussian. +Neutrons are just reflected (billard ball like). No correction is done for +mosaicity of reflecting crystal. +The crystal is assumed to be a ferromagnet with spin pointing up +eta-tilde = (0, 1, 0) (along y-axis), so that the magnetic field is +pointing opposite (0, -|B|, 0). + +The polarisation is done by defining the reflectivity for spin up +(Rup) and spin down (Rdown) (which can be negative, see now!) and +based on this the nuclear and magnetic structure factors are +calculated: +FM = sign(Rup)*sqrt(|Rup|) + sign(Rdown)*sqrt(|Rdown|) +FN = sign(Rup)*sqrt(|Rup|) - sign(Rdown)*sqrt(|Rdown|) +and the physics is calculated as +Pol in = (sx_in, sy_in, sz_in) +Reflectivity R0 = FN*FN + 2*FN*FM*sy_in + FM*FM +(= |Rup| + |Rdown| (for sy_in=0)) +Pol out: +sx = (FN*FN - FM*FM)*sx_in/R0; +sy = ((FN*FN - FM*FM)*sy_in + 2*FN*FM + FM*FM*sy_in)/R0; +sz = (FN*FN - FM*FM)*sz_in/R0; + +These equations are taken from: +Lovesey: "Theory of neutron scattering from condensed matter, Volume +2", Eq. 10.96 and Eq. 10.110 + +This component works with gravity (uses PROP_X0). + +Example: Monochromator_pol(zwidth=0.2, yheight=0.2, mosaic=30.0, dspread=0.0025, Rup=1.0, Rdown=0.0, Q=1.8734) + +Monochromator lattice parameter +PG 002 DM=3.355 AA (Highly Oriented Pyrolythic Graphite) +PG 004 DM=1.677 AA +Heusler 111 DM=3.362 AA (Cu2MnAl) +CoFe DM=1.771 AA (Co0.92Fe0.08) +Ge 111 DM=3.266 AA +Ge 311 DM=1.714 AA +Ge 511 DM=1.089 AA +Ge 533 DM=0.863 AA +Si 111 DM=3.135 AA +Cu 111 DM=2.087 AA +Cu 002 DM=1.807 AA +Cu 220 DM=1.278 AA +Cu 111 DM=2.095 AA +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| zwidth | m | Width of crystal | 0.1 | +| yheight | m | Height of crystal | 0.1 | +| mosaic | | Mosaicity (FWHM) [arc minutes] | 30.0 | +| dspread | 1 | Relative d-spread (FWHM) | 0 | +| Q | AA-1 | Magnitude of scattering vector | 1.8734 | +| DM | AA | monochromator d-spacing instead of Q = 2*pi/DM | 0 | +| pThreshold | | if probability>pThreshold then accept and weight else random | 0 | +| Rup | 1 | Reflectivity of neutrons with polarization up | 1 | +| Rdown | 1 | Reflectivity of neutrons with polarization down | 1 | +| debug | | if debug > 0, print out some info about the calculations | 0 | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/optics/Monochromator_pol.comp) for `Monochromator_pol.comp`. + +--- + +*Generated on mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/optics/Place.md b/mcstas-comps/optics/Place.md new file mode 100644 index 000000000..70f8dbbbb --- /dev/null +++ b/mcstas-comps/optics/Place.md @@ -0,0 +1,34 @@ +# The `Place` Component + +*McStas: A place in space - alias of Arm* + +## Identification + +- **Site:** +- **Author:** Peter Willendrup +- **Origin:** DTU +- **Date:** June 2025 + +## Description + +```text +Just like Arm, Place does not actually do anything, it is just there to set +up a new coordinate system. + +Example: Place() +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/optics/Place.comp) for `Place.comp`. + +--- + +*Generated on mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/optics/PolAnalyser_ideal.md b/mcstas-comps/optics/PolAnalyser_ideal.md new file mode 100644 index 000000000..61f730538 --- /dev/null +++ b/mcstas-comps/optics/PolAnalyser_ideal.md @@ -0,0 +1,38 @@ +# The `PolAnalyser_ideal` Component + +*McStas: (Unphysical) ideal analyzer.* + +## Identification + +- **Site:** +- **Author:** Erik Knudsen +- **Origin:** Risoe +- **Date:** June 2010 + +## Description + +```text +This is an ideal model of a polarization analyser device. Given a polarization vector +it "lets through" a scaled neutron weight. An imperfect analyzer could be modelled by an +analysis vector M with |M|<1. + +Example: PolAnalyser_ideal(mx=0, my=1, mz=0) +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| mx | 1 | X-component of polarisation analysis vector -1 xwidth +<------> xwidth/nslit (nslit=3) +<> d + +The reflection functions and parameters defaults as follows: +Bot defaults to Top, Left defaults to Top, Right defaults to left. +Down defaults to down and up defaults to up for all functions and +Top(Up and Down) defaults to StdReflecFunc and {0.99,0.0219,6.07,2.0,0.003} +which stands for {R0, Qc, alpha, m, W}. + +Example: +Pol_bender(xwidth = 0.08, yheight = 0.08, length = 1.0, radius= 10.0, +nslit=5, d=0.0, endFlat=0, drawOption=2, +rTopUpPar={0.99, 0.0219, 6.07, 3.0, 0.003}, +rTopDownPar={0.99, 0.0219, 6.07, 1.0, 0.003}) + +See also the example instruments Test_Pol_Bender and +Test_Pol_Bender_Vs_Guide_Curved (under tests). + +%BUGS +This component has been against tested Guide_curved and found to +give the same intensities. Gravity option has not been tested. + +GRAVITY: YES (when gravity is along y-axis) +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| **xwidth** | m | Width at the guide entry | | +| **yheight** | m | Height at the guide entry | | +| **length** | m | length of guide along center | | +| **radius** | m | Radius of curvature of the guide (+:curve left/-:right) | | +| G | m/s^2 | Gravitational constant | 9.8 | +| nslit | 1 | Number of slits | 1 | +| d | m | Width of spacers (subdividing absorbing walls) | 0.0 | +| debug | 1 | if debug > 0 print out some internal parameters | 0 | +| endFlat | 1 | If endflat>0 then entrance and exit planes are parallel. | 0 | +| rTopUpPar | 1 | Top mirror Parameters for spin up standard reflectivity function | {0.99,0.0219,6.07,2.0,0.003} | +| rTopDownPar | 1 | Top mirror Parameters for spin down standard reflectivity function | {0.99,0.0219,6.07,2.0,0.003} | +| rBotUpPar | 1 | Bottom mirror Parameters for spin up standard reflectivity function | {0.99,0.0219,6.07,2.0,0.003} | +| rBotDownPar | 1 | Bottom mirror Parameters for spin down standard reflectivity function | {0.99,0.0219,6.07,2.0,0.003} | +| rLeftUpPar | 1 | Left mirror Parameters for spin up standard reflectivity function | {0.99,0.0219,6.07,2.0,0.003} | +| rLeftDownPar | 1 | Left mirror Parameters for spin down standard reflectivity function | {0.99,0.0219,6.07,2.0,0.003} | +| rRightUpPar | 1 | Right mirror Parameters for spin up standard reflectivity function | {0.99,0.0219,6.07,2.0,0.003} | +| rRightDownPar | 1 | Right mirror Parameters for spin down standard reflectivity function | {0.99,0.0219,6.07,2.0,0.003} | +| rTopUpData | 1 | Reflectivity file for top mirror, spin up | "" | +| rTopDownData | 1 | Reflectivity file for top mirror, spin down | "" | +| rBotUpData | 1 | Reflectivity file for bottom mirror, spin up | "" | +| rBotDownData | 1 | Reflectivity file for bottom mirror, spin down | "" | +| rLeftUpData | 1 | Reflectivity file for left mirror, spin up | "" | +| rLeftDownData | 1 | Reflectivity file for left mirror, spin down | "" | +| rRightUpData | 1 | Reflectivity file for right mirror, spin up | "" | +| rRightDownData | 1 | Reflectivity file for right mirror, spin down | "" | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/optics/Pol_bender.comp) for `Pol_bender.comp`. + +--- + +*Generated on mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/optics/Pol_constBfield.md b/mcstas-comps/optics/Pol_constBfield.md new file mode 100644 index 000000000..782b67d35 --- /dev/null +++ b/mcstas-comps/optics/Pol_constBfield.md @@ -0,0 +1,42 @@ +# The `Pol_constBfield` Component + +*McStas: Constant magnetic field.* + +## Identification + +- **Site:** +- **Author:** Peter Christiansen +- **Origin:** RISOE +- **Date:** July 2006 + +## Description + +```text +Rectangular box with constant B field along y-axis (up). The +component can be rotated to make either a guide field or a spin +flipper. A neutron hitting outside the box opening or the box sides +is absorbed. + +Example: Pol_constBfield(xwidth=0.1, yheight=0.1, zdepth=0.2, fliplambda=5.0) +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| **xwidth** | m | Width of opening | | +| **yheight** | m | Height of opening | | +| **zdepth** | m | Length of field | | +| B | Gauss | Magnetic field along y-direction | 0 | +| fliplambda | AA | lambda for calculating B field | 0 | +| flipangle | deg | Angle flipped for lambda = fliplambda fliplambda and flipangle overrides B so a neutron with s= (1, 0, 0) and v = (0, 0, v(fliplambda)) will have s =(cos(flipangle), sin(flipangle), 0) after the section. | 180 | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/optics/Pol_constBfield.comp) for `Pol_constBfield.comp`. + +--- + +*Generated on mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/optics/Pol_guide_mirror.md b/mcstas-comps/optics/Pol_guide_mirror.md new file mode 100644 index 000000000..37b62d12d --- /dev/null +++ b/mcstas-comps/optics/Pol_guide_mirror.md @@ -0,0 +1,65 @@ +# The `Pol_guide_mirror` Component + +*McStas: Polarising guide with a supermirror along its diagonal.* + +## Identification + +- **Site:** +- **Author:** Erik B Knudsen +- **Origin:** DTU Physics +- **Date:** July 2018 + +## Description + +```text +Based on Pol_guide_vmirror by P. Christiansen. +Models a rectangular guide with entrance centered on the Z axis and +with one supermirror sitting on the diagonal inside. +The entrance lies in the X-Y plane. Draws a true depiction +of the guide with mirror and trajectories. +The polarisation is handled similar to in Monochromator_pol. +The reflec functions are handled similar to Pol_mirror. +The up direction is hardcoded to be along the y-axis (0, 1, 0) + +Note that this component can also be used as a frame overlap-mirror +if the up and down reflectivities are set equal. In this case the wall +reflectivity (rPar) should probably be set to 0. + +Reflectivity values can either come from datafiles or from +sets of parameters to the standard analytic reflectivity function commonly +used for neutron guides: +R=R0; q 0 print out some internal runtime parameters | 0 | +| allow_inside_start | 1 | Allow neutron to start inside cavity (no propagation to entry plane) | 0 | +| rPar | 1 | Cavity wall parameters array for rFunc, use with inputType = 0 | {1.0, 0.0217, 6.5, 2, 0.00157, 80} | +| rUpPar | 1 | Mirror Parameters array for rUpFunc, use with inputType = 0 | {1.0, 0.0217, 2.47, 4, 0.0014} | +| rDownPar | 1 | Mirror Parameters for rDownFunc, use with inputType = 0 | {1.0, 0.0217, 1, 0.65, 0.003} | +| rParFile | | Cavity wall parameters filename for rFunc, use with inputType = 1 | "" | +| rUpParFile | | Mirror Parameters filename for rUpFunc, use with inputType = 1 | "" | +| rDownParFile | | Mirror Parameters filename for rDownFunc, use with inputType = 1 | "" | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/optics/Pol_guide_vmirror.comp) for `Pol_guide_vmirror.comp`. + +--- + +*Generated on mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/optics/Pol_mirror.md b/mcstas-comps/optics/Pol_mirror.md new file mode 100644 index 000000000..cc84c11c5 --- /dev/null +++ b/mcstas-comps/optics/Pol_mirror.md @@ -0,0 +1,76 @@ +# The `Pol_mirror` Component + +*McStas: Polarising mirror.* + +## Identification + +- **Site:** +- **Author:** Peter Christiansen +- **Origin:** RISOE +- **Date:** July 2006 + +## Description + +```text +This component models a rectangular infinitely thin mirror. +For an unrotated component, the mirror surface lies in the Y-Z +plane (ie. parallel to the beam). +It relies on similar physics as the Monochromator_pol. +The reflectivity function (see e.g. share/ref-lib for examples) and parameters +are passed to this component to give a bigger freedom. +The up direction is hardcoded to be along the y-axis (0, 1, 0) +IMPORTANT: At present the component only works correctly for polarization along the up/down +direction and for completely unpolarized beams, i.e. sx=sy=sz=0 for all rays. + +For now we assume: +P(Transmit|Q) = 1 - P(Reflect|Q) +i.e. NO ABSORPTION! + + +The component can both reflect and transmit neutrons with a respective proportion +depending on the p_reflect parameter: +p_reflect=-1 Reflect and transmit (proportions given from reflectivity) [default] +p_reflect=1 Only handle reflected events +p_reflect=0 Only handle transmitted events (reduce weight) +p_reflect=0-1 Both transmit and reflect with fixed statistics proportions + +The parameters can either be +double pointer initializations (e.g. {R0, Qc, alpha, m, W}) +or table names (e.g."supermirror_m2.rfl" AND useTables=1). +NB! This might cause warnings by the compiler that can be ignored. + +Examples: +Reflection function parametrization +Pol_mirror(zwidth = 0.40, yheight = 0.40, rUpFunc=StdReflecFunc, rUpPar={1.0, 0.0219, 6.07, 2.0, 0.003}) + +Table function +Pol_mirror(zwidth = 0.40, yheight = 0.40, rUpFunc=TableReflecFunc, rUpPar="supermirror_m2.rfl", rDownFunc=TableReflecFunc, rDownPar="supermirror_m3.rfl", useTables=1) + +See also the example instrument Test_Pol_Mirror (under tests). + +GRAVITY: YES + +%BUGS +NO ABSORPTION +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| rUpPar | 1 | Parameters for rUpFunc | {0.99,0.0219,6.07,2.0,0.003} | +| rDownPar | 1 | Parameters for rDownFunc | {0.99,0.0219,6.07,2.0,0.003} | +| rUpData | str | Mirror Reflectivity data file for spin up | "" | +| rDownData | str | Mirror Reflectivity data file for spin down | "" | +| p_reflect | 1 | Proportion of reflected events. Use 0 to only get the transmitted beam, and 1 to get only the reflected beam. Use -1 to use the mirror reflectivity. This value is purely computational and is not related to the actual reflectivity | -1 | +| **zwidth** | m | Width of the mirror | | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/optics/Pol_mirror.comp) for `Pol_mirror.comp`. + +--- + +*Generated on mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/optics/Pol_tabled_field.md b/mcstas-comps/optics/Pol_tabled_field.md new file mode 100644 index 000000000..99a0d2d61 --- /dev/null +++ b/mcstas-comps/optics/Pol_tabled_field.md @@ -0,0 +1,45 @@ +# The `Pol_tabled_field` Component + +*McStas: Magnetic field component.* + +## Identification + +- **Site:** +- **Author:** Erik B Knudsen, Peter Christiansen and Peter Willendrup +- **Origin:** RISOE +- **Date:** July 2011 + +## Description + +```text +Region with a tabled magnetic field read from file. +The magnetic field is read from a text file where it is +specified as a point cloud with N rows of 6 columns: +x y z Bx By Bz +the B field map is resampled with Stepx*Stepy*Stepz points. +Use Stepx=Stepy=Stepz=0 to skip resampling and use the table as is. +The regions itself may be either a 3D rectangular block, a cylinder with axis along y, +or spherical. Interpolation is done between data-points. +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| xwidth | m | Width of opening. | 0 | +| yheight | m | Height of opening. | 0 | +| zdepth | m | Length of field. | 0 | +| radius | m | Radius of field if it is cylindrical or spherical. | 0 | +| filename | str | File where the magnetic field is tabulated. | "bfield.dat" | +| geometry | str | Name of an Object File Format (OFF) or PLY file for complex field-geometry. | NULL | +| interpol_method | str | Choice of interpolation method "kdtree" (default on CPU) / "regular" (default on GPU) | "default" | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/optics/Pol_tabled_field.comp) for `Pol_tabled_field.comp`. + +--- + +*Generated on mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/optics/Refractor.md b/mcstas-comps/optics/Refractor.md new file mode 100644 index 000000000..5882ddcd6 --- /dev/null +++ b/mcstas-comps/optics/Refractor.md @@ -0,0 +1,130 @@ +# The `Refractor` Component + +*McStas: A refractor material/shape, which can be used to model e.g. lenses and prisms.* + +## Identification + +- **Site:** +- **Author:** E. Farhi, B. Cubitt +- **Origin:** ILL +- **Date:** Oct 2014 + +## Description + +```text +Single bulk material shape that can be used as a prism or lens. + +NEUTRON INTERACTION PROCESSES: +The bulk material can reflect, refract, scatter and absorb neutrons, depending +on the material cross sections and incident angles. + +The refracting material is specified from its molar weight, density, coherent +scattering cross section. The refractive index is computed as: +n = sqrt(1-(lambda*lambda*rho*bc/PI)) is the refraction index + +The surface can be coated when specifying a critical wavevector Qc, with e.g. +Qc=m*0.0219 for a super mirror coating. The mirror coating can be suppressed +by setting Qc=0. The critical wavevector is then set to +Qc = 4*sqrt(PI*rho*bc); with +rho= density*6.02214179*1e23*1e-24/weight; +bc = sqrt(fabs(sigma_coh)*100/4/PI)*1e-5; + +COMPONENT GEOMETRY: +The component shape can be a sphere, box, cylinder, biconcave spherical lens +or any other shape defined from an external OFF/PLY file. +sphere: radius +cylinder: radius, yheight +box: xwidth, yheight, zdepth +OFF/PLY: geometry="filename.off or ply", xwidth, yheight, zdepth (bounding box) +lens_sphere: geometry="lens_sphere", radius, zdepth (thickness) + +The lens_sphere geometry is composed of two concave half spheres of same radius, +separated with a minimal thickness zdepth along the Z axis. + +Optionally, you can specify the 'geometry' parameter as a OFF/PLY file name. +The complex geometry option handles any closed non-convex polyhedra. +It computes the intersection points of the neutron ray with the object +transparently, so that it can be used like a regular sample object. +It supports the PLY, OFF and NOFF file format but not COFF (colored faces). +Such files may be generated from XYZ data using: +qhull < coordinates.xyz Qx Qv Tv o > geomview.off +or +powercrust coordinates.xyz +and viewed with geomview or java -jar jroff.jar (see below). + +All geometries are centred. The bulk material fills the shape, but can be +set 'outside' when density is given a negative value. In this case, the material +outside the bulk is void (vacuum). + +Usually, you should stack more than one of these to get a significant effect +on the neutron beam, so-called 'compound refractive lens'. +The focal length for N lenses with focal 'f' is f/N, where f=R/(1-n) +and R = r/2 for a spherical lens with curvature radius 'r' + +COMMON MATERIALS: +Should have high coherent, and low incoherent and absorption cross sections +Be: density=1.85, weight=9.0121, sigma_coh=7.63, sigma_inc=0.0018,sigma_abs=0.0076 +Pb: density=11.115,weight=207.2, sigma_coh=11.115,sigma_inc=0.003, sigma_abs=0.171 +Pb206: sigma_coh=10.68, sigma_inc=0 , sigma_abs=0.03 +Pb208: sigma_coh=11.34, sigma_inc=0 , sigma_abs=0.00048 +Zr: density=6.52, weight=91.224, sigma_coh=6.44, sigma_inc=0.02, sigma_abs=0.185 +Zr90: sigma_coh=5.1, sigma_inc=0 , sigma_abs=0.011 +Zr94: sigma_coh=8.4, sigma_inc=0 , sigma_abs=0.05 +Bi: density=9.78, weight=208.98, sigma_coh=9.148, sigma_inc=0.0084,sigma_abs=0.0338 +Mg: density=1.738, weight=24.3, sigma_coh=3.631, sigma_inc=0.08, sigma_abs=0.063 +MgF2: density=3.148, weight=62.3018,sigma_coh=11.74, sigma_inc=0.0816,sigma_abs=0.0822 +diamond: density=3.52, weight=12.01, sigma_coh=5.551, sigma_inc=0.001, sigma_abs=0.0035 +Quartz/silica: density=2.53, weight=60.08, sigma_coh=10.625,sigma_inc=0.0056,sigma_abs=0.1714 +Si: density=2.329, weight=28.0855,sigma_coh=2.1633,sigma_inc=0.004, sigma_abs=0.171 +Al: density=2.7, weight=26.98, sigma_coh=1.495, sigma_inc=0.0082,sigma_abs=0.231 +Ni: density=8.908, weight=58.69, sigma_coh=13.3, sigma_inc=5.2, sigma_abs=4.49 +Mn: (bc < 0) density=7.21, weight=54.94, sigma_coh=-1.75, sigma_inc=0.4, sigma_abs=13.3 +perfluoropolymer(PTFE/Teflon/CF2): +density=2.2, weight=50.007, sigma_coh=13.584,sigma_inc=0.0026,sigma_abs=0.0227 +Organic molecules with C,O,H,F + +Among the most commonly available and machinable materials are MgF2, SiO2, Si, and Al. +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| xwidth | m | width of box | 0 | +| yheight | m | height of box/cylinder | 0 | +| zdepth | m | depth of box | 0 | +| radius | m | radius of sphere/cylinder | 0 | +| geometry | str | OFF/PLY geometry file name, or NULL to use simple shape A spherical bi-concave lens can be obtained with geometry="lens_sphere" and given radius and zdepth | "NULL" | +| R0 | 1 | Low-angle reflectivity | 0.99 | +| sigma_coh | barn | coherent cross section of refracting material. Use negative value to indicate a negative coherent scattering length | 11.74 | +| density | g/cm3 | density of the refracting material. density < 0 means the material is outside/before the shape. | 3.148 | +| weight | g/mol | molar mass of the refracting material | 62.3018 | +| sigma_inc | barn | incoherent cross section | 0 | +| sigma_abs | barn | thermal absorption cross section | 0 | +| Qc | Angs-1 | critical scattering vector, e.g. Qc=0.0219 for Ni coating. Set Qc=0 to use the bulk critical grazing angles. | 0 | +| p_interact | 1 | MC Probability for scattering the ray; otherwise transmit. Use 0 to compute true probability, or specify it as e.g. 0.05 | 0.05 | +| RMS | Angs | root mean square wavyness of the surface | 0 | +| focus_scatter | deg | angle in which to scatter in bulk, with probability 'p_interact' | 10 | +| verbose | 1 | flag to display detailed component behaviour | 0 | +| p_scatter | 1 | flag to allow scattering in the refractor bulk | 1 | +| p_reflect | 1 | flag to allow reflection (grazing angle) at the surface | 1 | +| p_refract | 1 | flag to allow refraction at the refractor surface | 1 | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/optics/Refractor.comp) for `Refractor.comp`. +- M. L. Goldberger et al, Phys. Rev. 71, 294 - 310 (1947) +- Sears V.F. Neutron optics. An introduction to the theory of neutron optical phenomena and their applications. Oxford University Press, 1989. +- H. Park et al. Measured operational neutron energies of compound refractive lenses. Nuclear Instruments and Methods B, 251:507-511, 2006. +- J. Feinstein and R. H. Pantell. Characteristics of the thick, compound refractive lens. Applied Optics, 42 No. 4:719-723, 2001. +- Geomview and Object File Format (OFF) +- Java version of Geomview (display only) jroff.jar +- Meshlab can view OFF and PLY files +- qhull for points to OFF conversion +- powercrust for points to OFF conversion + +--- + +*Generated on mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/optics/Rotator.md b/mcstas-comps/optics/Rotator.md new file mode 100644 index 000000000..0b45f8189 --- /dev/null +++ b/mcstas-comps/optics/Rotator.md @@ -0,0 +1,45 @@ +# The `Rotator` Component + +*McStas: A rotative frame along vertical axis* + +## Identification + +- **Site:** +- **Author:** Emmanuel Farhi +- **Origin:** ILL +- **Date:** June 20th 2013 + +## Description + +```text +All components positioned after this one are rotating at frequency 'nu' with +phase 'phase'. Use the Derotator component to put back the model steady. +The rotation is performed w.r.t. the position of the component, along a chosen +main axis (use directon=1 for x, direction=2 for y, direction=3 for z). + +Default rotation axis is vertical axis / 'y'. + +Example: +R=Rotator(nu=14, phase=0) +... +DR=Derotator(rotator=R) +AT (0,0,0) RELATIVE R +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| nu | Hz | Rotation frequency (round/s) in the rotating option (vertical axis) | 0 | +| phase | deg | Phase shift | 0 | +| direction | 1 | Rotation axis selection 1=x, 2=y, 3=z | 2 | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/optics/Rotator.comp) for `Rotator.comp`. + +--- + +*Generated on mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/optics/Selector.md b/mcstas-comps/optics/Selector.md new file mode 100644 index 000000000..12a07dbc1 --- /dev/null +++ b/mcstas-comps/optics/Selector.md @@ -0,0 +1,59 @@ +# The `Selector` Component + +*McStas: velocity selector (helical lamella type) such as V_selector component* + +## Identification + +- **Site:** +- **Author:** Peter Link, Andreas Ostermann +- **Origin:** Uni. Gottingen (Germany) +- **Date:** MARCH 1999 + +## Description + +```text +Velocity selector consisting of rotating Soller-like blades +defining a helically twisted passage. +Geometry is defined by two identical apertures at 12 o'clock position, +The origin is at the ENTRANCE of the selector. + +Example: Selector(xmin=-0.015, xmax=0.015, ymin=-0.025, ymax=0.025, length=0.25, +nslit=72,d=0.0004, radius=0.12, alpha=48.298, nu=500) +These are values for the D11@ILL Dornier 'Dolores' Velocity Selector (NVS 023) + +%VALIDATION +Jun 2005: extensive external test, one minor problem +Jan 2006: problem solved (for McStas-1.9.1) +Validated by: K. Lieutenant + +%BUGS +for transmission calculation, each neutron is supposed to be in the guide centre +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| xmin | m | Lower x bound of entry aperture | -0.015 | +| xmax | m | Upper x bound of entry aperture | 0.015 | +| ymin | m | Lower y bound of entry aperture | -0.025 | +| ymax | m | Upper y bound of entry aperture | 0.025 | +| length | m | rotor length | 0.25 | +| xwidth | m | Width of entry. Overrides xmin,xmax. | 0 | +| yheight | m | Height of entry. Overrides ymin,ymax. | 0 | +| nslit | 1 | number of absorbing subdivinding spokes/lamella | 72 | +| d | m | width of spokes at beam-center | 0.0004 | +| radius | m | radius of beam-center | 0.12 | +| alpha | deg | angle of torsion | 48.298 | +| nu | Hz | frequency of rotation, which is ideally 3956*alpha*DEG2RAD/2/PI/lambda/length | 500 | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/optics/Selector.comp) for `Selector.comp`. +- See also Additional notes March 1999 and Jan 2000. + +--- + +*Generated on mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/optics/Set_pol.md b/mcstas-comps/optics/Set_pol.md new file mode 100644 index 000000000..71d033085 --- /dev/null +++ b/mcstas-comps/optics/Set_pol.md @@ -0,0 +1,42 @@ +# The `Set_pol` Component + +*McStas: (Unphysical) way of setting the polarization.* + +## Identification + +- **Site:** +- **Author:** Peter Christiansen +- **Origin:** Risoe +- **Date:** August 2006 + +## Description + +```text +This component has no physical size (like Arm - also drawn that +way), but is used to set the polarisation in one of four ways: +1) (randomOn=0, normalize=0) Hardcode the polarisation to the vector (px, py, pz) +2) (randomOn!=0, normalize!=0) Set the polarisation to a random vector on the unit sphere +3) (randomOn!=0, normalize=0) Set the polarisation to a radnom vector within the unit sphere +4) (randomOn=0, normalize!=0) Hardcode the polarisation to point in the direction of (px,py,pz) but with polarization=1. +Example: Set_pol(px=0, py=-1, pz=0) +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| px | 1 | X-component of polarisation vector (can be negative) | 0 | +| py | 1 | Y-component of polarisation vector (can be negative) | 0 | +| pz | 1 | Z-component of polarisation vector (can be negative) | 0 | +| randomOn | 1 | Generate random values if randomOn!=0. | 0 | +| normalize | 1 | Normalize the polarization vector to unity length. | 0 | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/optics/Set_pol.comp) for `Set_pol.comp`. + +--- + +*Generated on mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/optics/Slit.md b/mcstas-comps/optics/Slit.md new file mode 100644 index 000000000..fc08e0879 --- /dev/null +++ b/mcstas-comps/optics/Slit.md @@ -0,0 +1,46 @@ +# The `Slit` Component + +*McStas: Rectangular/circular slit* + +## Identification + +- **Site:** +- **Author:** Kim Lefmann and Henrik M. Roennow +- **Origin:** Risoe +- **Date:** June 16, 1997 + +## Description + +```text +A simple rectangular or circular slit. You may either +specify the radius (circular shape), or the rectangular bounds. +No transmission around the slit is allowed. + +Example: Slit(xmin=-0.01, xmax=0.01, ymin=-0.01, ymax=0.01) +Slit(xwidth=0.02, yheight=0.02) +Slit(radius=0.01) + +The Slit will issue a warning if run as "closed" +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| xmin | m | Lower x bound | UNSET | +| xmax | m | Upper x bound | UNSET | +| ymin | m | Lower y bound | UNSET | +| ymax | m | Upper y bound | UNSET | +| radius | m | Radius of slit in the z=0 plane, centered at Origin | UNSET | +| xwidth | m | Width of slit. Overrides xmin,xmax if they are unset. | UNSET | +| yheight | m | Height of slit. Overrides ymin,ymax if they are unset. | UNSET | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/optics/Slit.comp) for `Slit.comp`. + +--- + +*Generated on mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/optics/V_selector.md b/mcstas-comps/optics/V_selector.md new file mode 100644 index 000000000..7fade51b7 --- /dev/null +++ b/mcstas-comps/optics/V_selector.md @@ -0,0 +1,51 @@ +# The `V_selector` Component + +*McStas: Velocity selector.* + +## Identification + +- **Site:** +- **Author:** Kim Lefmann +- **Origin:** Risoe +- **Date:** Nov 25, 1998 + +## Description + +```text +Velocity selector consisting of rotating Soller-like blades +defining a helically twisted passage. +Geometry defined by two identical, centered apertures at 12 o'clock +position, Origo is at the centre of the selector (input is at -zdepth/2). +Transmission is analytical assuming a continuous source. + +Example: V_selector(xwidth=0.03, yheight=0.05, zdepth=0.30, radius=0.12, alpha=48.298, length=0.25, d=0.0004, nu=20000, nslit=72) +These are values for the D11@ILL Dornier 'Dolores' Velocity Selector (NVS 023) + +%VALIDATION +Jun 2005: extensive external test, no problems found +Validated by: K. Lieutenant +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| xwidth | m | Width of entry aperture | 0.03 | +| yheight | m | Height of entry aperture | 0.05 | +| zdepth | m | Distance between apertures, for housing containing the rotor | 0.30 | +| radius | m | Height from aperture centre to rotation axis | 0.12 | +| alpha | deg | Twist angle along the cylinder | 48.298 | +| length | m | Length of cylinder/rotor (less than zdepth) | 0.25 | +| d | m | Thickness of blades | 0.0004 | +| nu | Hz | Cylinder rotation speed, counter-clockwise, which is ideally 3956*alpha*DEG2RAD/2/PI/lambda/length | 300 | +| nslit | 1 | Number of Soller blades | 72 | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/optics/V_selector.comp) for `V_selector.comp`. + +--- + +*Generated on mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/optics/Vitess_ChopperFermi.md b/mcstas-comps/optics/Vitess_ChopperFermi.md new file mode 100644 index 000000000..082402b36 --- /dev/null +++ b/mcstas-comps/optics/Vitess_ChopperFermi.md @@ -0,0 +1,96 @@ +# The `Vitess_ChopperFermi` Component + +*McStas: Fermi chopper with absorbing walls using the VITESS module 'chopper_fermi'* + +## Identification + +- **Site:** +- **Author:** Geza Zsigmond +- **Origin:** VITESS module 'chopper_fermi' +- **Date:** Sep 2004 + +## Description + +```text +This component simulates a Fermi chopper with absorbing walls. The rotation axis is +vertical (y-axis), i.e. the path length through the channels is given by the length +'depth' along the z-axis. +The shape of the channels can be straight, curved with circular, or curved with ideal +(i.e. close to a parabolic) shape. This is determined by the parameter 'GeomOption'. + +Geometry for straight and circular channels: +The geometry of the chopper consists of a rectangular shaped object with a channel +system. In transmission position, there are 'Nchannels' slits along the x-axis, +separated by absorbing walls of thickness 'wallwidth' giving a total width 'width'. +The rectangular channel system is surrounded by a so-called shadowing cylinder +(cf component manual). + +Geometry for parabolic channels: +In this case, the Fermi chopper is supposed to be a full cylinder, i.e. the central +channels are longer than those on the edges (cf. figure in the component manual). +The other features are the same as for the other options. + +Apart from the frequency of rotation, the phase of the chopper at t=0 has to be given; +phase = 0 means transmission orientation. + +The option 'zerotime' may be used to reset the time at the chopper position. The +consequence is that only 1 pulse is generated instead of several. + +NOTE: This component must NOT be located at the same position as the previous one. +This also stands for monitors and Arms. A non zero distance must be defined. + +Examples: +straight Fermi chopper, 18000 rpm, 20 channels a 0.9 mm separated by 0.1 mm walls, +16 mm channel length, minimal shadowing cylinder, phased to be open at 1 ms, +generation of only 1 pulse, normal precision (for short wavelength neutrons) +Vitess_ChopperFermi(GeomOption=0, zerotime=1, Nchannels=20, Ngates=4, +freq=300.0, height=0.06, width=0.0201, +depth=0.016, r_curv=0.0, diameter=0.025691, Phase=-108.0, +wallwidth=0.0001, sGeomFileName="FC_geom_str.dat") + +Fermi chopper with circular channels, 12000 rpm, optimized for 6 Ang, several pulses, +highest accuracy (because of long wavelength neutrons used), rest as above +Vitess_ChopperFermi(GeomOption=2, zerotime=0, Nchannels=20, Ngates=8, +freq=200.0, height=0.06, width=0.0201, +depth=0.016, r_curv=0.2623, diameter=0.025691, Phase=-72.0, +wallwidth=0.0001, sGeomFileName="FC_geom_circ.dat") + +%VALIDATION +Apr 2005: extensive external test, most problems solved (cf. 'Bugs' and source header) +Validated by: K. Lieutenant + +limitations: slow (10 times slower than FermiChopper), especially for a high number of channels + +%BUGS +reduction of transmission by a large shadowing cylinder underestimated +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| sGeomFileName | str | name of output file for geometry information | 0 | +| GeomOption | 1 | option: 0:straight 1:parabolic 2:circular | 0 | +| zerotime | 1 | option: 1:'set time to zero' 0: 'do not' | 0 | +| Nchannels | 1 | number of channels of the Fermi chopper | 20 | +| Ngates | 1 | number of gates defining the channel: 4=default, 6 or 8 for long wavelengths | 4 | +| freq | Hz | number of rotations per second | 300.0 | +| height | m | height of the Fermi chopper | 0.05 | +| width | m | total width of the Fermi chopper | 0.04 | +| depth | m | channel length of the Fermi chopper | 0.03 | +| r_curv | m | radius of curvature of the curved Fermi chopper | 0.5 | +| diameter | m | diameter of the shadowing cylinder | 0.071 | +| Phase | deg | dephasing angle at zero time | 0.0 | +| wallwidth | m | thickness of walls separating the channels | 0.0002 | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/optics/Vitess_ChopperFermi.comp) for `Vitess_ChopperFermi.comp`. +- straight VITESS Fermi chopper +- curved VITESS Fermi chopper + +--- + +*Generated on mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/samples/Incoherent.md b/mcstas-comps/samples/Incoherent.md new file mode 100644 index 000000000..2953d4f5d --- /dev/null +++ b/mcstas-comps/samples/Incoherent.md @@ -0,0 +1,104 @@ +# The `Incoherent` Component + +*McStas: Incoherent sample (such as Vanadium) sample, with quasielastic component OR or global energy transfer.* + +## Identification + +- **Site:** +- **Author:** Kim Lefmann and Kristian Nielsen +- **Origin:** Risoe +- **Date:** 15.4.98 + +## Description + +```text +A Double-cylinder shaped incoherent scatterer (like Vanadium) +with both elastic and quasielastic (Lorentzian) components. +No multiple scattering (but approximation available). Absorption included. +Sample focusing: +The area to scatter to is a disk of radius 'focus_r' situated at the target. +This target area may also be rectangular if specified focus_xw and focus_yh +or focus_aw and focus_ah, respectively in meters and degrees. +The target itself is either situated according to given coordinates (x,y,z), +or defined with the relative target_index of the component to focus +to (next is +1). +This target position will be set to its AT position. When targeting to +centered components, such as spheres or cylinders, define an Arm component +where to focus to. +Sample shape: +Sample shape may be a cylinder, a sphere, a box or any other shape +box/plate: xwidth x yheight x zdepth (thickness=0) +hollow box/plate:xwidth x yheight x zdepth and thickness>0 +cylinder: radius x yheight (thickness=0) +hollow cylinder: radius x yheight and thickness>0 +sphere: radius (yheight=0 thickness=0) +hollow sphere: radius and thickness>0 (yheight=0) +any shape: geometry=OFF file + +The complex geometry option handles any closed non-convex polyhedra. +It computes the intersection points of the neutron ray with the object +transparently, so that it can be used like a regular sample object. +It supports the PLY, OFF and NOFF file format but not COFF (colored faces). +Such files may be generated from XYZ data using: +qhull < coordinates.xyz Qx Qv Tv o > geomview.off +or +powercrust coordinates.xyz +and viewed with geomview or java -jar jroff.jar (see below). +The default size of the object depends of the OFF file data, but its +bounding box may be resized using xwidth,yheight and zdepth. + +Example: Incoherent(radius=0.05,focus_r=0.035, pack=1, target_index=1) +Incoherent(geometry="socket.off",focus_r=0.035, pack=1, target_index=1) +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| geometry | str | Name of an Object File Format (OFF) or PLY file for complex geometry. The OFF/PLY file may be generated from XYZ coordinates using qhull/powercrust | 0 | +| radius | m | Outer radius of sample in (x,z) plane | 0 | +| xwidth | m | Horiz. dimension of sample (bounding box if off file), as a width | 0 | +| yheight | m | Vert. dimension of sample (bounding box if off file), as a height. A sphere shape is used when 0 and radius is set | 0 | +| zdepth | m | Depth of sample (bounding box if off file) | 0 | +| thickness | m | Thickness of hollow sample | 0 | +| target_x | | | 0 | +| target_y | m | position of target to focus at | 0 | +| target_z | | | 0 | +| focus_r | m | Radius of disk containing target. Use 0 for full space | 0 | +| focus_xw | m | horiz. dimension of a rectangular area | 0 | +| focus_yh | m | vert. dimension of a rectangular area | 0 | +| focus_aw | deg | horiz. angular dimension of a rectangular area | 0 | +| focus_ah | deg | vert. angular dimension of a rectangular area | 0 | +| target_index | 1 | Relative index of component to focus at, e.g. next is +1 | 0 | +| pack | 1 | Packing factor | 1 | +| p_interact | 1 | MC Probability for scattering the ray; otherwise transmit | 1 | +| f_QE | 1 | Fraction of quasielastic scattering (rest is elastic) | 0 | +| gamma | 1 | Lorentzian width of quasielastic broadening (HWHM) | 0 | +| Etrans | meV | Global energy-transfer, for use in inelastic settings | 0 | +| deltaE | meV | Width in energy around Etrans, for use in inelastic settings | 0 | +| sigma_abs | barns | Absorption cross section pr. unit cell at 2200 m/s | 5.08 | +| sigma_inc | barns | Incoherent scattering cross section pr. unit cell | 5.08 | +| Vc | AA^3 | Unit cell volume | 13.827 | +| concentric | 1 | Indicate that this component has a hollow geometry and may contain other components. It should then be duplicated after the inside part (only for box, cylinder, sphere) | 0 | +| order | 1 | Limit multiple scattering up to given order 0 means all (default), 1 means single, 2 means double, ... | 0 | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/samples/Incoherent.comp) for `Incoherent.comp`. +- Cross sections for single elements +- Web Elements +- Test +- results (not up-to-date). +- The test/example instrument vanadium_example.instr. +- The test/example instrument QENS_test.instr. +- Geomview and Object File Format (OFF) +- Java version of Geomview (display only) jroff.jar +- qhull +- powercrust + +--- + +*Generated on mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/samples/Isotropic_Sqw.md b/mcstas-comps/samples/Isotropic_Sqw.md new file mode 100644 index 000000000..326aea922 --- /dev/null +++ b/mcstas-comps/samples/Isotropic_Sqw.md @@ -0,0 +1,244 @@ +# The `Isotropic_Sqw` Component + +*McStas: Isotropic sample handling multiple scattering and absorption for a general +S(q,w) (coherent and/or incoherent/self)* + +## Identification + +- **Site:** +- **Author:** E. Farhi, V. Hugouvieux +- **Origin:** ILL +- **Date:** August 2003 + +## Description + +```text +An isotropic sample handling multiple scattering and including as input the +dynamic structure factor of the chosen sample (e.g. from Molecular +Dynamics). Handles elastic/inelastic, coherent and incoherent scattering - +depending on the input S(q,w) - with multiple scattering and absorption. +Only the norm of q is handled (not the vector), and thus suitable for +liquids, gazes, amorphous and powder samples. + +If incoherent/self S(q,w) file is specified as empty (0 or "") then the +scattering is constant isotropic (Vanadium like). +In case you only have one S(q,w) data containing both coherent and +incoherent contributions you should e.g. use 'Sqw_coh' and set 'sigma_coh' +to the total scattering cross section. Set sigma_coh and sigma_inc to -1 to inactivate. + +The implementation will automatically nornalise S(q,w) so that S(q) -> 1 at +large q (parameter norm=-1). Alternatively, the S(q,w) data will be multiplied +by 'norm' for positive values. Use norm=0 or 1 to use the raw data as input. + +The material temperature can be defined in the S(q,w) data files (see below) +or set manually as parameter T. Setting T=-1 disables detailed balance. +Setting T=-2 attempts to guess the temperature from the input S(q,w) data +which must then be non-classical and extend on both energy sides (+/-). +To use the S(q,w) data as is, without temperature effect, set T=-1 and norm=1. + +Both non symmetric (quantum) and classical S(q,w) data sets can be given by mean +of the 'classical' parameter (see below). + +Additionally, for single order scattering (order=1), you may restrict the +vertical spreading of the scattering area using d_phi parameter. + +An important option to enhance statistics is to set 'p_interact' to, say, +30 percent (0.3) in order to force a fraction of the beam to scatter. This +will result on a larger number of scattered events, retaining intensity. + +If you use this component and produce valuable scientific results, please +cite authors with references bellow (in Links). +E. Farhi et al, J Comp Phys 228 (2009) 5251 + +Sample shape: +Sample shape may be a cylinder, a sphere, a box or any other shape +box/plate: xwidth x yheight x zdepth (thickness=0) +hollow box/plate:xwidth x yheight x zdepth and thickness>0 +cylinder: radius x yheight (thickness=0) +hollow cylinder: radius x yheight and thickness>0 +sphere: radius (yheight=0 thickness=0) +hollow sphere: radius and thickness>0 (yheight=0) +any shape: geometry=OFF file + +The complex geometry option handles any closed non-convex polyhedra. +It computes the intersection points of the neutron ray with the object +transparently, so that it can be used like a regular sample object. +It supports the OFF, PLY and NOFF file format but not COFF (colored faces). +Such files may be generated from XYZ data using: +qhull < coordinates.xyz Qx Qv Tv o > geomview.off +or +powercrust coordinates.xyz +and viewed with geomview or java -jar jroff.jar (see below). +The default size of the object depends of the OFF file data, but its +bounding box may be resized using xwidth,yheight and zdepth. + +Concentric components: +This component has the ability to contain other components when used in +hollow cylinder geometry (namely sample environment, e.g. cryostat and +furnace structure). Such component 'shells' should be split into input and +output side surrounding the 'inside' components. First part must then use +'concentric=1' flag to enter the inside part. The component itself must be +repeated to mark the end of the concentric zone. The number of concentric +shells and number of components inside is not limited. + +COMPONENT S_in = Isotropic_Sqw(Sqw_coh="Al.laz", concentric=1, ...) +AT (0,0,0) RELATIVE sample_position + +COMPONENT something_inside ... // e.g. the sample itself or other materials + +COMPONENT S_out = COPY(S_in)(concentric=0) +AT (0,0,0) RELATIVE sample_position + +Sqw file format: +File format for S(Q,w) (coherent and incoherent) should contain 3 numerical +blocks, defining q axis values (vector), then energy axis values (vector), +then a matrix with one line per q axis value, containing Sqw values for +each energy axis value. Comments (starting with '#') and non numerical lines +are ignored and used to separate blocks. Sampling must be regular. +Some parameters can be specified in comment lines, namely (00 is a numerical value): + +# sigma_abs 00 absorption scattering cross section in [barn] +# sigma_inc 00 coherent scattering cross section in [barn] +# sigma_coh 00 incoherent scattering cross section in [barn] +# Temperature 00 in [K] +# V_rho 00 atom density per Angs^3 +# density 00 in [g/cm^3] +# weight 00 in [g/mol] +# classical 00 [0=contains Bose factor (measurement) ; 1=classical symmetric] + +Example: +# q axis values +# vector of m values in Angstroem-1 +0.001000 .... 3.591000 +# w axis values +# vector of n values in meV +0.001391 ... 1.681391 +# sqw values (one line per q axis value) +# matrix of S(q,w) values (m rows x n values), one line per q value, +9.721422 10.599145 ... 0.000000 +10.054191 11.025244 ... 0.000000 +... +0.000000 ... 3.860253 + +See for instance file He4_liq_coh.sqw. Such files may be obtained from e.g. INX, +Nathan, Lamp and IDA softwares, as well as Molecular Dynamics (nMoldyn). +When the provided S(q,w) data is obtained from the classical correlation function +G(r,t), which is real and symmetric in time, the 'classical=1' parameter +should be set in order to multiply the file data with exp(hw/2kT). Otherwise, +the S(q,w) is NOT symmetrised (classical). If the S(q,w) data set includes both +negative and positive energy values, setting 'classical=-1' will attempt to +guess what type of S(q,w) it is. The temperature can also be determined this way. +In case you do not know if the data is classical or quantum, assume it is usually classical +at high temperatures, and quantum otherwise (T < typical mode excitations). +The positive energy values correspond to Stokes processes, i.e. material gains +energy, and neutrons loose energy. The energy range is symmetrized to allow up +and down scattering, taking into account detailed balance exp(-hw/2kT). + +You may also generate such S(q,w) 2D files using iFit + +Powder file format: +Files for coherent elastic powder scattering may also be used. +Format specification follows the same principle as in the PowderN +component, with parameters: + +powder_format= +Crystallographica: { 4,5,7,0,0,0,0, 0,0 } +Fullprof: { 4,0,8,0,0,5,0, 0,0 } +Undefined: { 0,0,0,0,0,0,0, 0,0 } +Lazy: {17,6,0,0,0,0,0,13,0 } +qSq: {-1,0,0,0,0,0,1, 0,0 } // special case for [q,Sq] table +or: {j,d,F2,DW,Delta_d/d,1/2d,q,F,strain} + +or column indexes (starting from 1) given as comments in the file header +(e.g. '#column_j 4'). Refer to the PowderN component for more details. +Delta_d/d and Debye-Waller factor may be specified for all lines with the +'powder_Dd' and 'powder_DW' parameters. +The reflection list should be ordered by decreasing d-spacing values. + +Additionally a special [q,Sq] format is also defined with: +powder_format=qSq +for which column 1 is 'q' and column 2 is 'S(q)'. + +Examples: +1- Vanadium-like incoherent elastic scattering +Isotropic_Sqw(radius=0.005, yheight=0.01, V_rho=1/13.827, +sigma_abs=5.08, sigma_inc=4.935, sigma_coh=0) + +2- liq-4He parameters +Isotropic_Sqw(..., Sqw_coh="He4_liq_coh.sqw", T=10, p_interact=0.3) + +3- powder sample +Isotropic_Sqw(..., Sqw_coh="Al.laz") + +%BUGS: +When used in concentric mode, multiple bouncing scattering +(traversing the hollow part) is not taken into account. + +%VALIDATION +For Vanadium incoherent scattering mode, V_sample, PowderN, Single_crystal +and Isotropic_Sqw produce equivalent results, eventhough the two later are +more accurate (geometry, multiple scattering). Isotropic_Sqw gives same +powder patterns as PowderN, with an intensity within 20 %. +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| powder_format | no quotes | name or definition of column indexes in file | {0,0,0,0,0,0,0,0,0} | +| Sqw_coh | str | Name of the file containing the values of Q, w and S(Q,w) Coherent part; Q in Angs-1, E in meV, S(q,w) in meV-1. Use 0, NULL or "" to disable. | 0 | +| Sqw_inc | str | Name of the file containing the values of Q, w and S(Q,w). Incoherent (self) part. Use 0, NULL or "" to scatter isotropically (V-like). | 0 | +| geometry | str | Name of an Object File Format (OFF) or PLY file for complex geometry. The OFF/PLY file may be generated from XYZ coordinates using qhull/powercrust | 0 | +| radius | m | Outer radius of sample in (x,z) plane. cylinder/sphere. | 0 | +| thickness | m | Thickness of hollow sample Negative value extends the hollow volume outside of the box/cylinder. | 0 | +| xwidth | m | width for a box sample shape | 0 | +| yheight | m | Height of sample in vertical direction for box/cylinder shapes | 0 | +| zdepth | m | depth for a box sample shape | 0 | +| threshold | 1 | Value under which S(Q,w) is not accounted for. to set according to the S(Q,w) values, i.e. not too low. | 1e-20 | +| order | 1 | Limit multiple scattering up to given order 0:all (default), 1:single, 2:double, ... | 0 | +| T | K | Temperature of sample, detailed balance. Use T=-1 to disable it, and T=-2 to guess it from non-classical S(q,w) input. | 0 | +| verbose | 1 | Verbosity level (0:silent, 1:normal, 2:verbose, 3:debug). A verbosity>1 also computes dispersions and S(q,w) analysis. | 1 | +| d_phi | deg | scattering vertical angular spreading (usually the height of the next component/detector). Use 0 for full space. This is only relevant for single scattering (order=1). | 0 | +| concentric | 1 | Indicate that this component has a hollow geometry and may contain other components. It should then be duplicated after the inside part (only for box, cylinder, sphere) [1] | 0 | +| rho | AA-3 | Density of scattering elements (nb atoms/unit cell V_0). | 0 | +| sigma_abs | barns | Absorption cross-section at 2200 m/s. Use -1 to inactivate. | 0 | +| sigma_coh | barns | Coherent Scattering cross-section. Use -1 to inactivate. | 0 | +| sigma_inc | barns | Incoherent Scattering cross-section. Use -1 to inactivate. | 0 | +| classical | 1 | Assumes the S(q,w) data from the files is a classical S(q,w), and multiply that data by exp(hw/2kT) on up/down energy sides. Use 0 when obtained from raw experiments, 1 from molecular dynamics. Use -1 to guess from a data set including both energy sides. | -1 | +| powder_Dd | 1 | global Delta_d/d spreading, or 0 if ideal. | 0 | +| powder_DW | 1 | global Debey-Waller factor, if not in \|F2\| or 1. | 0 | +| powder_Vc | AA^3 | volume of the unit cell | 0 | +| density | g/cm^3 | density of material. V_rho=density/weight/1e24*N_A | 0 | +| weight | g/mol | atomic/molecular weight of material | 0 | +| p_interact | 1 | Force a given fraction of the beam to scatter, keeping intensity right, to enhance small signals (-1 inactivate). | -1 | +| norm | 1 | Normalize S(q,w) when -1 (default). Use raw data when 1, multiplier for S(q,w) when norm>0. | -1 | +| powder_barns | 1 | 0 when \|F2\| data in powder file are fm^2, 1 when in barns (barns=1 for laz, barns=0 for lau type files). | 1 | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/samples/Isotropic_Sqw.comp) for `Isotropic_Sqw.comp`. +- E. Farhi, V. Hugouvieux, M.R. Johnson, and W. Kob, Journal of Computational Physics 228 (2009) 5251-5261 "Virtual experiments: Combining realistic neutron scattering instrument and sample simulations" +- Hugouvieux V, Farhi E, Johnson MR, Physica B, 350 (2004) 151 "Virtual neutron scattering experiments" +- Hugouvieux V, PhD, University of Montpellier II, France (2004). +- H. Schober, Collection SFN 10 (2010) 159-336 +- H.E. Fischer, A.C. Barnes, and P.S. Salmon. Rep. Prog. Phys., 69 (2006) 233 +- P.A. Egelstaff, An Introduction to the Liquid State, 2nd Ed., Oxford Science Pub., Clarendon Press (1992). +- S. W. Lovesey, Theory of Neutron Scattering from Condensed Matter, Vol1, Oxford Science Pub., Clarendon Press (1984). +- Cross sections for single elements +- Web Elements +- Fullprof powder refinement +- Crystallographica software +- Example data file He4_liq_coh.sqw +- The PowderN component. +- The test/example instrument Test_Isotropic_Sqw.instr. +- Geomview and Object File Format (OFF) +- Java version of Geomview (display only) jroff.jar +- qhull +- powercrust + +--- + +*Generated on mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/samples/Magnon_bcc.md b/mcstas-comps/samples/Magnon_bcc.md new file mode 100644 index 000000000..23ba0c74b --- /dev/null +++ b/mcstas-comps/samples/Magnon_bcc.md @@ -0,0 +1,79 @@ +# The `Magnon_bcc` Component + +*McStas: A sample for AFM or FM magnon scattering +based on cross section expressions from Squires, Ch.8.2* + +## Identification + +- **Site:** +- **Author:** Kim Lefmann +- **Origin:** KU +- **Date:** 23.10.08 - 24.07.18 + +## Description + +```text +Single-cylinder shape. +Absorption included. +No multiple scattering. +No incoherent scattering emitted. +No attenuation from coherent scattering. No Bragg scattering. +bcc crystal n.n. and n.n.n. interactions only +Can do either FM or AFM order upon a flag +Assume J>0 for both FM and AFM. MUST BE CHANGED FOR CONSISTENCY +If AFM, the order is two-sublattice, e.g. the AFM Bragg ordering vectors are Q = (1 0 0) and equivalent. +One magnon branch only +Assume spin along z +Possible easy axis anisotropy along z +No external field + +KNOWN BUGS: +Gives zero scattering for too large J values (for AFM J=0.362, h approx 1). Probably this is a malfunction of zridd or call thereof +The value of the absolute scattered intensity is clearly too high. This is probably due to unit confusion. The relative intensity scaling seems about right. + +Algorithm: +0. Always perform the scattering if possible (otherwise ABSORB) +1. Choose direction within a focusing solid angle +2. Calculate the zeros of (E_i-E_f-hbar omega(kappa)) as a function of k_f +3. Choose one value of k_f (always at least one is possible!) +4. Perform the correct weight transformation +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| **radius** | m | Outer radius of sample in (x,z) plane | | +| **yheight** | m | Height of sample in y direction | | +| **sigma_abs** | barns | Absorption cross section at 2200 m/s per atom | | +| **sigma_inc** | barns | Incoherent scattering cross section per atom | | +| **a** | AA | bcc Lattice constant | | +| FM | 1 | Flag for whether the order if FM (0 means AFM) | 0 | +| **J1** | meV | spin-spin interaction 1 (nn) | | +| **J2** | meV | spin-spin interaction 2 (nnn) | | +| **D** | mev | single ion anisotropy | | +| **s** | 1 | spin | | +| **DW** | 1 | Debye-Waller factor | | +| **T** | K | Temperature | | +| target_x | m | position of target to focus at . Transverse coordinate | 0 | +| target_y | m | position of target to focus at. Vertical coordinate | 0 | +| target_z | m | position of target to focus at. Straight ahead. | 0 | +| target_index | 1 | relative index of component to focus at, e.g. next is +1 | 0 | +| F2 | 1 | magnetic form factor squared | 1 | +| focus_r | m | Radius of sphere containing target. | 0 | +| focus_xw | m | horiz. dimension of a rectangular area | 0 | +| focus_yh | m | vert. dimension of a rectangular area | 0 | +| focus_aw | deg | horiz. angular dimension of a rectangular area | 0 | +| focus_ah | deg | vert. angular dimension of a rectangular area | 0 | +| verbose | 1 | flag for test printing (print if verbose==1) | 0 | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/samples/Magnon_bcc.comp) for `Magnon_bcc.comp`. +- The test/example instrument Test_Magnon.instr. + +--- + +*Generated on mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/samples/NCrystal_sample.md b/mcstas-comps/samples/NCrystal_sample.md new file mode 100644 index 000000000..165755af6 --- /dev/null +++ b/mcstas-comps/samples/NCrystal_sample.md @@ -0,0 +1,56 @@ +# The `NCrystal_sample` Component + +*McStas: McStas sample component for the NCrystal library for thermal neutron transport +(www).* + +## Identification + +- **Site:** +- **Author:** NCrystal developers +- **Origin:** NCrystal Developers (European Spallation Source ERIC and DTU Nutech) +- **Date:** 2015 + +## Description + +```text +McStas sample component using the NCrystal library for thermal neutron +transport in a single bulk material filling a single simple convex volume +(box, sphere or cylinder). + +The geometrical layout of the volume is determined via the xwidth, yheight, +zdepth, and radius parameters, and the material being modelled is determined +via an NCrystal configuration string ("cfg-string"). + +For more information about NCrystal and cfg-strings, refer to the NCrystal wiki. +In particular, browse the available datafiles at Data-library and read about the +format of the cfg-string expected in the "cfg" parameter at Using-NCrystal. + +For more complicated geometries, it might be desirable to use NCrystal via the +McStas Union components instead. + +Note that the physics backend of this component will be whichever NCrystal +installation is available and associated with the "ncrystal-config" command. +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| cfg | str | NCrystal material configuration string (details on this page). | "void" | +| xwidth | m | x-dimension (width) of sample, if box shape is desired | 0 | +| yheight | m | y-dimension (height) of sample, if box or cylinder shape is desired | 0 | +| zdepth | m | z-dimension (depth) of sample, if box shape is desired | 0 | +| radius | m | radius of sample, if sphere or cylinder shape is desired | 0 | +| absorptionmode | 0\|1\|2 | 0 : disable absorption. 1 : enable absorption via intensity reduction. 2 : enable absorption by terminating the tracking. | 1 | +| multscat | 0\|1 | 0 : disable multiple scattering. 1 : enable multiple scattering | 1 | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/samples/NCrystal_sample.comp) for `NCrystal_sample.comp`. +- The NCrystal wiki at https://github.com/mctools/ncrystal/wiki. + +--- + +*Generated on mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/samples/Phonon_simple.md b/mcstas-comps/samples/Phonon_simple.md new file mode 100644 index 000000000..d4dede674 --- /dev/null +++ b/mcstas-comps/samples/Phonon_simple.md @@ -0,0 +1,69 @@ +# The `Phonon_simple` Component + +*McStas: A sample for phonon scattering based on cross section expressions from Squires, Ch.3. +Possibility for adding an (unphysical) bandgap.* + +## Identification + +- **Site:** +- **Author:** Kim Lefmann +- **Origin:** Risoe +- **Date:** 04.02.04 + +## Description + +```text +Single-cylinder shape. +Absorption included. +No multiple scattering. +No incoherent scattering emitted. +No attenuation from coherent scattering. No Bragg scattering. +fcc crystal n.n. interactions only +One phonon branch only -> phonon polarization not accounted for. +Bravais lattice only. (i.e. just one atom per unit cell) + +Algorithm: +0. Always perform the scattering if possible (otherwise ABSORB) +1. Choose direction within a focusing solid angle +2. Calculate the zeros of (E_i-E_f-hbar omega(kappa)) as a function of k_f +3. Choose one value of k_f (always at least one is possible!) +4. Perform the correct weight transformation +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| **radius** | m | Outer radius of sample in (x,z) plane | | +| **yheight** | m | Height of sample in y direction | | +| **sigma_abs** | barns | Absorption cross section at 2200 m/s per atom | | +| **sigma_inc** | barns | Incoherent scattering cross section per atom | | +| **a** | AA | fcc Lattice constant | | +| **b** | fm | Scattering length | | +| **M** | a.u. | Atomic mass | | +| **c** | meV/AA^(-1) | Velocity of sound | | +| **DW** | 1 | Debye-Waller factor | | +| **T** | K | Temperature | | +| target_x | m | position of target to focus at . Transverse coordinate | 0 | +| target_y | m | position of target to focus at. Vertical coordinate | 0 | +| target_z | m | position of target to focus at. Straight ahead. | 0 | +| target_index | 1 | relative index of component to focus at, e.g. next is +1 | 0 | +| focus_r | m | Radius of sphere containing target. | 0 | +| focus_xw | m | horiz. dimension of a rectangular area | 0 | +| focus_yh | m | vert. dimension of a rectangular area | 0 | +| focus_aw | deg | horiz. angular dimension of a rectangular area | 0 | +| focus_ah | deg | vert. angular dimension of a rectangular area | 0 | +| gap | meV | Bandgap energy (unphysical) | 0 | +| e_steps_low | 1 | Amount of possible intersections beneath the elastic line | 50 | +| e_steps_high | 1 | Amount of possible intersections above the elastic line | 50 | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/samples/Phonon_simple.comp) for `Phonon_simple.comp`. +- The test/example instrument Test_Phonon.instr. + +--- + +*Generated on mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/samples/Powder1.md b/mcstas-comps/samples/Powder1.md new file mode 100644 index 000000000..1dfbbacce --- /dev/null +++ b/mcstas-comps/samples/Powder1.md @@ -0,0 +1,56 @@ +# The `Powder1` Component + +*McStas: General powder sample with a single scattering vector.* + +## Identification + +- **Site:** +- **Author:** E.M.Lauridsen, N.B.Christensen, A.B.Abrahamsen +- **Origin:** Risoe +- **Date:** 4.2.98 + +## Description + +```text +General powder sample with a single scattering vector. No multiple , +scattering, no incoherent scattering, no secondary extinction. +The shape of the sample may be a cylinder of given radius or a box with +dimensions xwidth, yheight, zdepth. +The efficient is highly improved when restricting the vertical scattering +range on the Debye-Scherrer cone (with 'd_phi'). +You may use PowderN to use N scattering lines defined in a file. + +Example: Powder1(radius=0.015,yheight=0.05,q =1.8049,d_phi=0.07,pack=1, +j=6,DW=1,F2=56.8,Vc=85.0054,sigma_abs=0.463) +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| radius | m | Radius of sample in (x,z) plane | 0.01 | +| yheight | m | Height of sample y direction | 0.05 | +| xwidth | m | horiz. dimension of sample, as a width | 0 | +| zdepth | m | depth of box sample | 0 | +| q | AA^-1 | Scattering vector of reflection | 1.8049 | +| d | AA | d-spacing for sample, overrides 'q' | 0 | +| d_phi | deg,0-180 | Angle corresponding to the vertical angular range to focus to, e.g. detector height. 0 for no focusing | 0 | +| pack | 1 | Packing factor | 1 | +| j | 1 | Multiplicity of reflection | 6 | +| DW | 1 | Debye-Waller factor of reflection | 1 | +| F2 | barns | Structure factor of reflection | 56.8 | +| Vc | AA^3 | Volume of unit cell | 85.0054 | +| sigma_abs | barns | Absorption cross section per unit cell at 2200 m/s | 0.463 | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/samples/Powder1.comp) for `Powder1.comp`. +- +- Test results (not up-to-date). +- See also: Powder1, Powder2 and PowderN + +--- + +*Generated on mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/samples/PowderN.md b/mcstas-comps/samples/PowderN.md new file mode 100644 index 000000000..cbbf5cd50 --- /dev/null +++ b/mcstas-comps/samples/PowderN.md @@ -0,0 +1,182 @@ +# The `PowderN` Component + +*McStas: General powder sample (N lines, single scattering, incoherent scattering)* + +## Identification + +- **Site:** +- **Author:** P. Willendrup, L. Chapon, K. Lefmann, A.B.Abrahamsen, N.B.Christensen, E.M.Lauridsen. +- **Origin:** McStas release +- **Date:** 4.2.98 + +## Description + +```text +General powder sample with +many scattering vectors +possibility for intrinsic line broadening +incoherent elastic background ratio is specified by user +No multiple scattering. No secondary extinction. + +Based on Powder1/Powder2/Single_crystal. +Geometry is a powder filled cylinder, sphere, box or any shape from an OFF file. +Incoherent scattering is only provided here to account for a background. +The efficient is highly improved when restricting the vertical scattering +range on the Debye-Scherrer cone (with 'd_phi' and 'focus_flip'). +The unit cell volume Vc may also be computed when giving the density, +the atomic/molecular weight and the number of atoms per unit cell. +A simple strain handling is available by mean of either a global Strain parameter, +or a column with a strain value per Bragg reflection. The strain values are +specified in ppm (1e-6). +The Single_crystal component can also handle a powder mode, as well as an +approximated texture. + +Sample shape: +Sample shape may be a cylinder, a sphere, a box or any other shape. +box/plate: xwidth x yheight x zdepth (thickness=0) +hollow box/plate:xwidth x yheight x zdepth and thickness>0 +cylinder: radius x yheight (thickness=0) +hollow cylinder: radius x yheight and thickness>0 +sphere: radius (yheight=0 thickness=0) +hollow sphere: radius and thickness>0 (yheight=0) +any shape: geometry=OFF_file + +The complex geometry option handles any closed non-convex polyhedra. +It computes the intersection points of the neutron ray with the object +transparently, so that it can be used like a regular sample object. +It supports the PLY, OFF and NOFF file format but not COFF (colored faces). +Such files may be generated from XYZ data using: +qhull < coordinates.xyz Qx Qv Tv o > geomview.off +or +powercrust coordinates.xyz +and viewed with geomview or java -jar jroff.jar (see below). +The default size of the object depends of the OFF file data, but its +bounding box may be resized using xwidth,yheight and zdepth. + +If you use this component and produce valuable scientific results, please +cite authors with references bellow (in Links). + +Example: PowderN(reflections = "c60.lau", d_phi = 15 , radius = 0.01, +yheight = 0.05, Vc = 1076.89, sigma_abs = 0, delta_d_d=0, DW=1)) + +Powder definition file format +Powder structure is specified with an ascii data file 'reflections'. +The powder data are free-text column based files. +The reflection list should be ordered by decreasing d-spacing values. +... d ... F2 +Lines begining by '#' are read as comments (ignored) but they may contain +the following keywords (in the header): +#Vc +#sigma_abs +#sigma_inc +#Debye_Waller +#delta_d_d/d +These values are not read if entered as component parameters (Vc=...) + +The signification of the columns in the numerical block may be +set using the 'format' parameter, by defining signification of the +columns as a vector of indexes in the order +format={j,d,F2,DW,delta_d_d/d,1/2d,q,F,Strain} + +Signification of the symbols is given below. Indices start at 1. +Indices with zero means that the column are not present, so that: +Crystallographica={ 4,5,7,0,0,0,0,0,0 } +Fullprof ={ 4,0,8,0,0,5,0,0,0 } +Lazy ={17,6,0,0,0,0,0,13,0} + +At last, the format may be overridden by direct definition of the +column indexes in the file itself by using the following keywords +in the header (e.g. '#column_j 4'): +#column_j +#column_d +#column_F2 +#column_F +#column_DW +#column_Dd +#column_inv2d +#column_q +#column_strain + +Last, CIF, FullProf and ShelX files can be read, and converted to F2(hkl) lists +if 'cif2hkl' is installed. The CIF2HKL env variable can be used to point to a +proper executable, else the McCode, then the system installed versions are used. + +Concentricity + +PowderN assumes 'concentric' shape, i.e. can contain other components inside its +optional inner hollow. Example, Sample in Al cryostat: + + +COMPONENT Cryo = PowderN(reflections="Al.laz", radius = 0.01, thickness = 0.001, +concentric = 1, p_interact=0.1) +AT (0,0,0) RELATIVE Somewhere + +COMPONENT Sample = some_other_component(with geometry FULLY enclosed in the hollow) +AT (0,0,0) RELATIVE Somewhere + +COMPONENT Cryo2 = COPY(Cryo)(concentric = 0) +AT (0,0,0) RELATIVE Somewhere + + +(The second instance of the cryostat component can also be written out completely +using PowderN(...). In both cases, this second instance needs concentric = 0.) +The concentric arrangment can not be used with OFF geometry specification. + +This sample component can advantageously benefit from the SPLIT feature, e.g. +SPLIT COMPONENT pow = PowderN(...) +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| reflections | string | Input file for reflections (LAZ LAU CIF, FullProf, ShelX). Use only incoherent scattering if NULL or "" | "NULL" | +| geometry | str | Name of an Object File Format (OFF) or PLY file for complex geometry. The OFF/PLY file may be generated from XYZ coordinates using qhull/powercrust. | "NULL" | +| format | no quotes | Name of the format, or list of column indexes (see Description). | {0, 0, 0, 0, 0, 0, 0, 0, 0} | +| radius | m | Outer radius of sample in (x,z) plane | 0 | +| yheight | m | Height of sample y direction | 0 | +| xwidth | m | Horiz. dimension of sample, as a width | 0 | +| zdepth | m | Depth of box sample | 0 | +| thickness | m | Thickness of hollow sample. Negative value extends the hollow volume outside of the box/cylinder. | 0 | +| pack | 1 | Packing factor. | 1 | +| Vc | AA^3 | Volume of unit cell=nb atoms per cell/density of atoms. | 0 | +| sigma_abs | barns | Absorption cross section per unit cell at 2200 m/s. Use a negative value to inactivate it. | 0 | +| sigma_inc | barns | Incoherent cross section per unit cell. Use a negative value to inactivate it. | 0 | +| delta_d_d | 0/1 | Global relative delta_d_d/d broadening when the 'w' column is not available. Use 0 if ideal. | 0 | +| p_inc | 1 | Fraction of incoherently scattered neutron rays. | 0.1 | +| p_transmit | 1 | Fraction of transmitted (only attenuated) neutron rays. | 0.1 | +| DW | 1 | Global Debye-Waller factor when the 'DW' column is not available. Use 1 if included in F2 | 0 | +| nb_atoms | 1 | Number of sub-unit per unit cell, that is ratio of sigma for chemical formula to sigma per unit cell | 1 | +| d_omega | deg | Horizontal focus range (only for incoherent scattering), 0 for no focusing. | 0 | +| d_phi | deg | Angle corresponding to the vertical angular range to focus to, e.g. detector height. 0 for no focusing. | 0 | +| tth_sign | 1 | Sign of the scattering angle. If 0, the sign is chosen randomly (left and right). ONLY functional in combination with d_phi and ONLY applies to bragg lines. | 0 | +| p_interact | 1 | Fraction of events interacting coherently with sample. | 0.8 | +| concentric | 1 | Indicate that this component has a hollow geometry and may contain other components. It should then be duplicated after the inside part (only for box, cylinder, sphere). | 0 | +| density | g/cm^3 | Density of material. rho=density/weight/1e24*N_A. | 0 | +| weight | g/mol | Atomic/molecular weight of material. | 0 | +| barns | 1 | Flag to indicate if \|F\|^2 from 'reflections' is in barns or fm^2 (barns=1 for laz, barns=0 for lau type files). | 1 | +| Strain | ppm | Global relative delta_d_d/d shift when the 'Strain' column is not available. Use 0 if ideal. | 0 | +| focus_flip | 1 | Controls the sense of d_phi. If 0 d_phi is measured against the xz-plane. If !=0 d_phi is measured against zy-plane. | 0 | +| target_index | 1 | Relative index of component to focus incoherent scattering at, e.g. next is +1 | 0 | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/samples/PowderN.comp) for `PowderN.comp`. +- "Validation of a realistic powder sample using data from DMC at PSI" Willendrup P, Filges U, Keller L, Farhi E, Lefmann K, Physica B-Cond Matt 385 (2006) 1032. +- See also: Powder1, Single_crystal +- See ICSD Inorganic Crystal Structure Database +- Cross sections for single elements +- Web Elements +- Fullprof powder refinement +- Crystallographica software (free license) +- Geomview and Object File Format (OFF) +- Java version of Geomview (display only) jroff.jar +- qhull +- powercrust + +--- + +*Generated on mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/samples/Res_sample.md b/mcstas-comps/samples/Res_sample.md new file mode 100644 index 000000000..ecd3d6d36 --- /dev/null +++ b/mcstas-comps/samples/Res_sample.md @@ -0,0 +1,65 @@ +# The `Res_sample` Component + +*McStas: Sample for resolution function calculation.* + +## Identification + +- **Site:** +- **Author:** Kristian Nielsen +- **Origin:** Risoe +- **Date:** 1999 + +## Description + +```text +An inelastic sample with completely uniform scattering in both Q and +energy. This sample is used together with the Res_monitor component and +(optionally) the mcresplot front-end to compute the resolution function of +triple-axis or inverse-geometry time-of-flight instruments. + +The shape of the sample is either a hollow cylinder or a rectangular box. The +hollow cylinder shape is specified with an inner and outer radius. +The box is specified with dimensions xwidth, yheight, zdepth. + +The scattered neutrons will have directions towards a given disk and +energies betweed E0-dE and E0+dE. +This target area may also be rectangular if specified focus_xw and focus_yh +or focus_aw and focus_ah, respectively in meters and degrees. +The target itself is either situated according to given coordinates (x,y,z), or +setting the relative target_index of the component to focus at (next is +1). +This target position will be set to its AT position. When targeting to centered +components, such as spheres or cylinders, define an Arm component where to focus at. + +Example: Res_sample(thickness=0.001,radius=0.02,yheight=0.4,focus_r=0.05, E0=14.6,dE=2, target_x=0, target_y=0, target_z=1) +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| thickness | m | Thickness of hollow cylinder in (x,z) plane | 0 | +| radius | m | Outer radius of hollow cylinder | 0.01 | +| focus_r | m | Radius of sphere containing target. | 0.05 | +| E0 | meV | Center of scattered energy range | 14 | +| dE | meV | half width of scattered energy range | 2 | +| target_x | m | X-position of target to focus at [m] | 0 | +| target_y | m | Y-position of target to focus at | 0 | +| target_z | m | Z-position of target to focus at [m] | .5 | +| focus_xw | m | horiz. dimension of a rectangular area | 0 | +| focus_yh | m | vert. dimension of a rectangular area | 0 | +| focus_aw | deg | horiz. angular dimension of a rectangular area | 0 | +| focus_ah | deg | vert. angular dimension of a rectangular area | 0 | +| xwidth | m | horiz. dimension of sample, as a width | 0 | +| yheight | m | vert. dimension of sample, as a height | 0.05 | +| zdepth | m | depth of sample | 0 | +| target_index | 1 | relative index of component to focus at, e.g. next is +1 | 0 | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/samples/Res_sample.comp) for `Res_sample.comp`. + +--- + +*Generated on mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/samples/SANS_spheres2.md b/mcstas-comps/samples/SANS_spheres2.md new file mode 100644 index 000000000..350ee07b3 --- /dev/null +++ b/mcstas-comps/samples/SANS_spheres2.md @@ -0,0 +1,55 @@ +# The `SANS_spheres2` Component + +*McStas: Sample for Small Angle Neutron Scattering - hard spheres in thin solution, mono disperse.* + +## Identification + +- **Site:** +- **Author:** P. Willendrup, derived from H. Frielinghaus SANS_benchmark2 +- **Origin:** DTU +- **Date:** 16.12.2019 + +## Description + +```text +Sample for Small Angle Neutron Scattering - hard spheres in thin solution, mono disperse. + +For the scattering simulation a high fraction of neutron paths is directed to the scattering (exact fraction is sc_aim). +The remaining paths are used for the transmitted beams. The absolute intensities are treated accordingly, and the p-parameter is set accordingly. + +For the scattering probability, the integral of the scattering function between Q = 0.0001 and 1.0 AA-1 is calculated. +This is used in terms of transmisson, and of course for the scattering probability. +In this way, multiple scattering processes could be treated as well. + +The typical SANS range was considered to be between 0.0001 and 1.0 AA-1. +This means that the scattered neutrons are equally distributed in this range on logarithmic Q-scales. + +Example: SANS_spheres2(xwidth=0.01, yheight=0.01, zthick=0.001, model=1.0, dsdw_inc=0.02, sc_aim=0.97, sans_aim=0.95, R-150) +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| xwidth | m | Width of sample volume | 0.01 | +| yheight | m | Height of sample volume | 0.01 | +| zthick | m | Thickness of sample volume | 0.001 | +| dsdw_inc | cm^-1 | The incoherent background from the overall sample, should read ca. 1.0 for water, 0.5 for half D2O, half H2O, and ca. 0.02 for D2O | 0.02 | +| sc_aim | 1 | The fraction of neutron paths used to represent the scattered neutrons (including everything: incoherent and coherent). rest is transmission. | 0.97 | +| sans_aim | 1 | The fraction of neutron paths used to represent the scattered neutrons in the sans-range (up to 1.0AA-1). rest is incoherent with Q>1AA-1. | 0.95 | +| R | AA | Radius of dilute, monodisperse spheres | 150 | +| phi | 1 | Volume-ratio of the spheres wrt. solution | 1e-3 | +| drho | cm^-2 | Scattering length density | 6e10 | +| singlesp | 1 | Switches between multiple scattering (parameter zero 0.0) and single scattering (parameter 1.0). The sc_aim directs a fraction of paths to the first scattering process accordingly. The no. of paths for the second scattering process is derived from the real probability. Up to 10 scattering processes are considered. | 1 | +| Qmind | AA^-1 | Lower limit of "SANS" scattering | 0.0001 | +| Qmaxd | AA^-1 | Upper limit of "SANS" scattering | 2.1544346900319 | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/samples/SANS_spheres2.comp) for `SANS_spheres2.comp`. + +--- + +*Generated on mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/samples/Sans_spheres.md b/mcstas-comps/samples/Sans_spheres.md new file mode 100644 index 000000000..e5553d373 --- /dev/null +++ b/mcstas-comps/samples/Sans_spheres.md @@ -0,0 +1,54 @@ +# The `Sans_spheres` Component + +*McStas: Sample for Small Angle Neutron Scattering - hard spheres in thin solution, mono disperse.* + +## Identification + +- **Site:** +- **Author:** P. Willendrup, K. Lefmann, L. Arleth +- **Origin:** Risoe +- **Date:** 19.12.2003 + +## Description + +```text +Sample for use in a SANS instrument, models hard, mono disperse spheres in thin solution. +The shape of the sample may be a filled box with dimensions +xwidth, yheight, zdepth, a cylinder with dimensions radius and yheight, +a filled sphere with radius. + +Example: Sans_spheres(R = 100, Phi = 1e-3, Delta_rho = 0.6, sigma_abs = 50, xwidth=0.01, yheight=0.01, zdepth=0.005) +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| R | AA | Radius of scattering hard spheres | 100 | +| Phi | 1 | Particle volume fraction | 1e-3 | +| Delta_rho | fm/AA^3 | Excess scattering length density | 0.6 | +| sigma_abs | m^-1 | Absorption cross section density at 2200 m/s | 0.05 | +| xwidth | m | horiz. dimension of sample, as a width | 0 | +| yheight | m | vert . dimension of sample, as a height for cylinder/box | 0 | +| zdepth | m | depth of sample | 0 | +| radius | m | Outer radius of sample in (x,z) plane for cylinder/sphere | 0 | +| target_x | m | | 0 | +| target_y | m | position of target to focus at | 0 | +| target_z | m | | 6 | +| target_index | 1 | Relative index of component to focus at, e.g. next is +1 | 0 | +| focus_xw | m | horiz. dimension of a rectangular area | 0 | +| focus_yh | m | vert. dimension of a rectangular area | 0 | +| focus_aw | deg | horiz. angular dimension of a rectangular area | 0 | +| focus_ah | deg | vert. angular dimension of a rectangular area | 0 | +| focus_r | m | Detector (disk-shaped) radius | 0 | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/samples/Sans_spheres.comp) for `Sans_spheres.comp`. +- The test/example instrument SANS.instr. + +--- + +*Generated on mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/samples/SasView_model.md b/mcstas-comps/samples/SasView_model.md new file mode 100644 index 000000000..121b4988e --- /dev/null +++ b/mcstas-comps/samples/SasView_model.md @@ -0,0 +1,2150 @@ +# The `SasView_model` Component + +*McStas: This SANS sample exposes SasView's scattering kernels to McStas. In this way SasView's monodisperse scattering kernels can be call from McStas.* + +## Identification + +- **Site:** +- **Author:** Jakob Garde, Torben Nielsen, Peter Willendrup +- **Origin:** SasView, DTU, European Spallation Source ERIC +- **Date:** 03.02.2016 + +## Description + +```text +Sample for use in SANS instruments. The models describe mono disperse particles in thin solution. The sample geometry may have the shape: + +Shape: - A filled box with dimensions xwidth, yheight and zdepth. +- A cylinder with dimensions radius and yheight. +- A filled sphere given by radius. + +These parameters are mutually exclusive. + +Example using spheres in thin solution, with radius=200 AA and a delta_sld=0.6 fm/AA^3: +SasView_model(model_index=47, model_scale=1.0, model_pars={1, 7, 200}, model_abs=0.0, xwidth=0.01, yheight=0.01, zdepth=0.005,) + + +The algorithm of this component requires use of the ISO C standard c99, standard from McStas 2.7 and 3.0. + +The list of scattering models in SasView is called sasmodels. The list of McStas available SasView sasmodels are found in the table below. + +A few models may require manual documentation lookup using the above link to the SasView site. + +McStas does currently not support multiplication of formfactor models with structure factor models. + +The 2D scattering scattering kernels are denoted by modelname_xy. I.e. to evalulate scattering from aligned cylinders use model_index=10 to use cylinder_xy. + +MDOC + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    Model no.SasView nameParameters
    0NoneNone
    1barbell(sld, solvent_sld, bell_radius, radius, length)
    2barbell_xy(sld, solvent_sld, bell_radius, radius, length, theta, phi)
    3bcc_paracrystal(dnn, d_factor, radius, sld, solvent_sld)
    4bcc_paracrystal_xy(dnn, d_factor, radius, sld, solvent_sld, theta, phi, psi)
    5capped_cylinder(sld, solvent_sld, radius, cap_radius, length)
    6capped_cylinder_xy(sld, solvent_sld, radius, cap_radius, length, theta, phi)
    7core_shell_cylinder(core_sld, shell_sld, solvent_sld, radius, thickness, length)
    8core_shell_cylinder_xy(core_sld, shell_sld, solvent_sld, radius, thickness, length, theta, phi)
    9cylinder(sld, solvent_sld, radius, length)
    10cylinder_xy(sld, solvent_sld, radius, length, theta, phi)
    11dab(length)
    12dab_xy(length)
    13ellipsoid(sld, solvent_sld, rpolar, requatorial)
    14ellipsoid_xy(sld, solvent_sld, rpolar, requatorial, theta, phi)
    15fcc_paracrystal(dnn, d_factor, radius, sld, solvent_sld)
    16fcc_paracrystal_xy(dnn, d_factor, radius, sld, solvent_sld, theta, phi, psi)
    17flexible_cylinder_ex(length, kuhn_length, radius, axis_ratio, sld, solvent_sld)
    18flexible_cylinder_ex_xy(length, kuhn_length, radius, axis_ratio, sld, solvent_sld)
    19gaussian_peak(q0, sigma)
    20gaussian_peak_xy(q0, sigma)
    21guinier(rg)
    22guinier_xy(rg)
    23hardsphere(effect_radius, volfraction)
    24hardsphere_xy(effect_radius, volfraction)
    25HayterMSAsq(effect_radius, zz, VolFrac, Temp, csalt, dialec)
    26HayterMSAsq_xy(effect_radius, charge, volfraction, temperature, saltconc, dielectconst)
    27hollow_cylinder(radius, core_radius, length, sld, solvent_sld)
    28hollow_cylinder_xy(radius, core_radius, length, sld, solvent_sld, theta, phi)
    29lamellar(sld, solvent_sld, thickness)
    30lamellar_xy(sld, solvent_sld, thickness)
    31lamellar_FFHG(tail_length, head_length, sld, head_sld, solvent_sld)
    32lamellar_FFHG_xy(tail_length, head_length, sld, head_sld, solvent_sld)
    33lamellarCailleHG(tail_length, head_length, Nlayers, dd, Cp, tail_sld, head_sld, solvent_sld)
    34lamellarCailleHG_xy(tail_length, head_length, Nlayers, spacing, Caille_parameter, sld, head_sld, solvent_sld)
    35lamellarPC(th, Nlayers, davg, pd, sld, solvent_sld)
    36lamellarPC_xy(thickness, Nlayers, spacing, spacing_polydisp, sld, solvent_sld)
    37lamellarPS(del, Nlayers, dd, Cp, sld, solvent_sld)
    38lamellarPS_xy(thickness, Nlayers, spacing, Caille_parameter, sld, solvent_sld)
    39linear_pearls(radius, edge_sep, num_pearls, pearl_sld, solvent_sld)
    40linear_pearls_xy(radius, edge_sep, num_pearls, pearl_sld, solvent_sld)
    41lorentz(cor_length)
    42lorentz_xy(cor_length)
    43mass_fractal(radius, mass_dim, cutoff_length)
    44mass_fractal_xy(radius, mass_dim, cutoff_length)
    45mass_surface_fractal(mass_dim, surface_dim, cluster_rg, primary_rg)
    46mass_surface_fractal_xy(mass_dim, surface_dim, cluster_rg, primary_rg)
    47parallelepiped(sld, solvent_sld, a_side, b_side, c_side)
    48parallelepiped_xy(sld, solvent_sld, a_side, b_side, c_side, theta, phi, psi)
    49pearl_necklace(radius, edge_separation, string_thickness, number_of_pearls, sld, string_sld, solvent_sld)
    50pearl_necklace_xy(radius, edge_separation, string_thickness, number_of_pearls, sld, string_sld, solvent_sld)
    51sphere(sld, solvent_sld, radius)
    52sphere_xy(sld, solvent_sld, radius)
    53star_polymer(radius2, arms)
    54star_polymer_xy(radius2, arms)
    55stickyhardsphere(effect_radius, volfraction, perturb, stickiness)
    56stickyhardsphere_xy(effect_radius, volfraction, perturb, stickiness)
    57triaxial_ellipsoid(sld, solvent_sld, req_minor, req_major, rpolar)
    58triaxial_ellipsoid_xy(sld, solvent_sld, req_minor, req_major, rpolar, theta, phi, psi)
    + + + +

    Available SasView sasmodels - Extended parameters description

    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    sasmodels nameParameters UnitsRange
    barbell { 4, 1, 40, 20, 400 }  
    barbell_xy { 4, 1, 40, 20, 400, 60, 60 }  
        
     Parameters:  
     Barbell scattering length density4e-6/Ang^2[-inf, inf]
     Solvent scattering length density1e-6/Ang^2[-inf, inf]
     Spherical bell radiusAng[0, inf]
     Cylindrical bar radiusAng[0, inf]
     Cylinder bar lengthAng[0, inf]
     In plane angledegrees[-inf, inf]
     Out of plane angledegrees[-inf, inf]
        
    bcc { 220, 0.06, 40, 4, 1 }  
    bcc_xy { 220, 0.06, 40, 4, 1, 60, 60, 60 }  
        
     Parameters:  
     Nearest neighbour distanceAng[-inf, inf]
     Paracrystal distortion factor [-inf, inf]
     Particle radiusAng[0, inf]
     Particle scattering length density1e-6/Ang^2[-inf, inf]
     Solvent scattering length density1e-6/Ang^2[-inf, inf]
     In plane angledegrees[-inf, inf]
     Out of plane angledegrees[-inf, inf]
     Out of plane angledegrees[-inf, inf]
        
    capped_cylinder { 4, 1, 20, 20, 400 }  
    capped_cylinder_xy { 4, 1, 20, 20, 400, 60, 60 }  
        
     Parameters:  
     Cylinder scattering length density1e-6/Ang^2[-inf, inf]
     Solvent scattering length density1e-6/Ang^2[-inf, inf]
     Cylinder radiusAng[0, inf]
     Cap radiusAng[0, inf]
     Cylinder lengthAng[0, inf]
     In plane angledegrees[-inf, inf]
     Out of plane angledegrees[-inf, inf]
        
    core_shell_cylinder { 4, 4, 1, 20, 20, 400 }  
    core_shell_cylinder_xy { 4, 4, 1, 20, 20, 400, 60, 60 }  
        
     Parameters:  
     Cylinder core scattering length density1e-6/Ang^2[-inf, inf]
     Cylinder shell scattering length density1e-6/Ang^2[-inf, inf]
     Solvent scattering length density1e-6/Ang^2[-inf, inf]
     Cylinder core radiusAng[0, inf]
     Cylinder shell thicknessAng[0, inf]
     Cylinder lengthAng[0, inf]
     In plane angledegrees[-inf, inf]
     Out of plane angledegrees[-inf, inf]
        
    cylinder { 4, 1, 20, 400 }  
    cylinder_xy { 4, 1, 20, 400, 60, 60 }  
        
     Parameters:  
     Cylinder scattering length density4e-6/Ang^2[-inf, inf]
     Solvent scattering length density1e-6/Ang^2[-inf, inf]
     Cylinder radiusAng[0, inf]
     Cylinder lengthAng[0, inf]
     In plane angledegrees[-inf, inf]
     Out of plane angledegrees[-inf, inf]
        
    dab { 50.0 }  
    dab_xy { 50.0 }  
        
     Parameters:  
     correlation lengthAng[0, inf]
        
    ellipsoid { 4, 1, 20, 400 }  
    ellipsoid_xy { 4, 1, 20, 400, 60, 60 }  
        
     Parameters:  
     Ellipsoid scattering length density1e-6/Ang^2[-inf, inf]
     Solvent scattering length density1e-6/Ang^2[-inf, inf]
     Polar radiusAng[0, inf]
     Equatorial radiusAng[0, inf]
     In plane angledegrees[-inf, inf]
     Out of plane angledegrees[-inf, inf]
        
    fcc { 220, 0.06, 40, 4, 1 }  
    fcc_xy { 220, 0.06, 40, 4, 1, 60, 60, 60 }  
        
     Parameters:  
     Nearest neighbour distanceAng[-inf, inf]
     Paracrystal distortion factor [-inf, inf]
     Particle radiusAng[0, inf]
     Particle scattering length density1e-6/Ang^2[-inf, inf]
     Solvent scattering length density1e-6/Ang^2[-inf, inf]
     In plane angledegrees[-inf, inf]
     Out of plane angledegrees[-inf, inf]
     Out of plane angledegrees[-inf, inf]
        
    flexible_cylinder_ex { 1000.0, 100.0, 20.0, 1.5, 1.0, 6.3 }  
    flexible_cylinder_ex_xy { 1000.0, 100.0, 20.0, 1.5, 1.0, 6.3 }  
        
     Parameters:  
     Length of the flexible cylinderAng[0, inf]
     Kuhn length of the flexible cylinderAng[0, inf]
     Radius of the flexible cylinderAng[0, inf]
     Axis_ratio (major_radius/radius [0, inf]
     Cylinder scattering length density1e-6/Ang^2[-inf, inf]
     Solvent scattering length density1e-6/Ang^2[-inf, inf]
        
    gaussian_peak { 0.05, 0.005 }  
    gaussian_peak_xy { 0.05, 0.005 }  
        
     Parameters:  
     Peak position1/Ang[-inf, inf]
     Peak width (standard deviation)1/Ang[0, inf]
        
    guinier { 60.0 }  
    guinier_xy { 60.0 }  
        
     Parameters:  
     Radius of GyrationAng[0, inf]
        
    hardsphere { 50.0, 0.2 }  
    hardsphere_xy { 50.0, 0.2 }  
        
     Parameters:  
     effective radius of hard sphereAng[0, inf]
     volume fraction of hard spheres [0, 0.74]
        
    HayterMSAsq { 20.75, 19.0, 0.0192, 318.16, 0.0, 71.08 }  
    HayterMSAsq_xy { 20.75, 19.0, 0.0192, 318.16, 0.0, 71.08 }  
        
     Parameters:  
     effective radius of hard sphereAng[0, inf]
     charge on sphere (in electrons)e[0, inf]
     volume fraction of spheres [0, 0.74]
     temperature, in Kelvin, for Debye length calculationK[0, inf]
     conc of salt, 1:1 electolyte, for Debye lengthM[-inf, inf]
     dielectric constant of solvent (default water), for Debye length [-inf, inf]
        
    hollow_cylinder { 30.0, 20.0, 400.0, 6.3, 1 }  
    hollow_cylinder_xy { 30.0, 20.0, 400.0, 6.3, 1, 90, 0 }  
        
     Parameters:  
     Cylinder radiusAng[0, inf]
     Hollow core radiusAng[0, inf]
     Cylinder lengthAng[0, inf]
     Cylinder sld1/Ang^2[-inf, inf]
     Solvent sld1/Ang^2[-inf, inf]
     Theta angledegrees[-360, 360]
     Phi angledegrees[-360, 360]
        
    lamellar { 1, 6, 50 }  
    lamellar_xy { 1, 6, 50 }  
        
     Parameters:  
     Layer scattering length density1e-6/Ang^2[-inf, inf]
     Solvent scattering length density1e-6/Ang^2[-inf, inf]
     Bilayer thicknessAng[0, inf]
        
    lamellarCaille { 30.0, 20, 400.0, 0.1, 6.3, 1.0 }  
    lamellarCaille_xy { 30.0, 20, 400.0, 0.1, 6.3, 1.0 }  
        
     Parameters:  
     sheet thicknessAng[0, inf]
     Number of layers [0, inf]
     d-spacing of Caille S(Q)Ang[0.0, inf]
     Caille parameter1/Ang^2[0.0, 0.8]
     layer scattering length density1e-6/Ang^2[-inf, inf]
     Solvent scattering length density1e-6/Ang^2[-inf, inf]
        
    lamellarCailleHG { 10, 2, 30, 40.0, 0.001, 0.4, 2.0, 6 }  
    lamellarCailleHG_xy { 10, 2, 30, 40.0, 0.001, 0.4, 2.0, 6 }  
        
     Parameters:  
     Tail thicknessAng[0, inf]
     head thicknessAng[0, inf]
     Number of layers [0, inf]
     d-spacing of Caille S(Q)Ang[0.0, inf]
     Caille parameter [0.0, 0.8]
     Tail scattering length density1e-6/Ang^2[-inf, inf]
     Head scattering length density1e-6/Ang^2[-inf, inf]
     Solvent scattering length density1e-6/Ang^2[-inf, inf]
        
    lamellarFFHG { 15, 10, 0.4, 3.0, 6 }  
    lamellarFFHG_xy { 15, 10, 0.4, 3.0, 6 }  
        
     Parameters:  
     Tail thicknessAng[0, inf]
     head thicknessAng[0, inf]
     Tail scattering length density1e-6/Ang^2[-inf, inf]
     Head scattering length density1e-6/Ang^2[-inf, inf]
     Solvent scattering length density1e-6/Ang^2[-inf, inf]
        
    lamellarPC { 33.0, 20, 250.0, 0.0, 1.0, 6.34 }  
    lamellarPC_xy { 33.0, 20, 250.0, 0.0, 1.0, 6.34 }  
        
     Parameters:  
     sheet thicknessAng[0, inf]
     Number of layers [0, inf]
     d-spacing of paracrystal stackAng[0.0, inf]
     d-spacing polydispersityAng[0.0, inf]
     layer scattering length density1e-6/Ang^2[-inf, inf]
     Solvent scattering length density1e-6/Ang^2[-inf, inf]
        
    linear_pearls { 80.0, 350.0, 3.0, 1.0, 6.3 }  
    linear_pearls_xy { 80.0, 350.0, 3.0, 1.0, 6.3 }  
        
     Parameters:  
     Radius of the pearlsAng[0, inf]
     Length of the string segment - surface to surfaceAng[0, inf]
     Number of the pearls [0, inf]
     SLD of the pearl spheres1e-6/Ang^2[-inf, inf]
     SLD of the solvent1e-6/Ang^2[-inf, inf]
        
    lorentz { 50.0 }  
    lorentz_xy { 50.0 }  
        
     Parameters:  
     Screening lengthAng[0, inf]
        
    mass_fractal { 10.0, 1.9, 100.0 }  
    mass_fractal_xy { 10.0, 1.9, 100.0 }  
        
     Parameters:  
     Particle radiusAng[0.0, inf]
     Mass fractal dimension [1.0, 6.0]
     Cut-off lengthAng[0.0, inf]
        
    mass_surface_fractal { 1.8, 2.3, 86.7, 4000.0 }  
    mass_surface_fractal_xy { 1.8, 2.3, 86.7, 4000.0 }  
        
     Parameters:  
     Mass fractal dimension [1e-16, 6.0]
     Surface fractal dimension [1e-16, 6.0]
     Cluster radius of gyrationAng[0.0, inf]
     Primary particle radius of gyrationAng[0.0, inf]
        
    parallelepiped { 4, 1, 35, 75, 400 }  
    parallelepiped_xy { 4, 1, 35, 75, 400, 60, 60, 60 }  
        
     Parameters:  
     Parallelepiped scattering length density1e-6/Ang^2[-inf, inf]
     Solvent scattering length density1e-6/Ang^2[-inf, inf]
     Shorter side of the parallelepipedAng[0, inf]
     Second side of the parallelepipedAng[0, inf]
     Larger side of the parallelepipedAng[0, inf]
     In plane angledegrees[-inf, inf]
     Out of plane angledegrees[-inf, inf]
     Rotation angle around its own c axis against q planedegrees[-inf, inf]
        
    pearl_necklace { 80.0, 350.0, 2.5, 3, 1.0, 1.0, 6.3 }  
    pearl_necklace_xy { 80.0, 350.0, 2.5, 3, 1.0, 1.0, 6.3 }  
        
     Parameters:  
     Mean radius of the chained spheresAngstrom[0, inf]
     Mean separation of chained particlesAngstrom[0, inf]
     Thickness of the chain linkageAngstrom[0, inf]
     Mean number of pearls in each necklacenone[0, inf]
     Scattering length density of the chained spheresAngstrom^2[-inf, inf]
     Scattering length density of the chain linkageAngstrom^2[-inf, inf]
     Scattering length density of the solventAngstrom^2[-inf, inf]
        
    sphere { 1, 6, 50 }  
    sphere_xy { 1, 6, 50 }  
        
     Parameters:  
     Layer scattering length density1e-6/Ang^2[-inf, inf]
     Solvent scattering length density1e-6/Ang^2[-inf, inf]
     Sphere radiusAng[0, inf]
        
    star_polymer { 100.0, 3 }  
    star_polymer_xy { 100.0, 3 }  
        
     Parameters:  
     Ensemble radius of gyration squared of an armAng[0.0, inf]
     Number of arms in the model [1.0, 6.0]
        
    stickyhardsphere { 50.0, 0.2, 0.05, 0.2 }  
    stickyhardsphere_xy { 50.0, 0.2, 0.05, 0.2 }  
        
     Parameters:  
     effective radius of hard sphereAng[0, inf]
     volume fraction of hard spheres [0, 0.74]
     perturbation parameter, epsilon [0.01, 0.1]
     stickiness, tau [-inf, inf]
        
    triaxial_ellipsoid { 4, 1, 20, 400, 10 }  
    triaxial_ellipsoid_xy { 4, 1, 20, 400, 10, 60, 60, 60 }  
        
     Parameters:  
     Ellipsoid scattering length density1e-6/Ang^2[-inf, inf]
     Solvent scattering length density1e-6/Ang^2[-inf, inf]
     Minor equitorial radiusAng[0, inf]
     Major equatorial radiusAng[0, inf]
     Polar radiusAng[0, inf]
     In plane angledegrees[-inf, inf]
     Out of plane angledegrees[-inf, inf]
     Out of plane angledegrees[-inf, inf]
        
    +

    +

    +

    Name convention: SasView - sasmodels

    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    SasView namesasmodels name P(Q) S(Q)MultiplyMultiplicity
    BarBellbarbell - - --
    BCCrystalbcc - - --
    CappedCylindercapped_cylinder - - --
    CoreShellCylindercore_shell_cylinder - - --
    Cylindercylinder - - --
    DABdab - - --
    Ellipsoidellipsoid - - --
    FCCrystalfcc - - --
    FlexCylEllipXflexible_cylinder_ex - - --
    PeakGaussgaussian_peak - - --
    Guinierguinier - - --
    HardsphereStructurehardsphere - Y --
    HayterMSAStructureHayterMSAsq - Y --
    HollowCylinderhollow_cylinder - - --
    Lamellarlamellar - - --
    LamellarPSlamellarCaille - - --
    LamellarPSHGlamellarCailleHG - - --
    LamellarFFHGlamellarFFHG - - --
    LamellarPCrystallamellarPC - - --
    LinearPearlslinear_pearls - - --
    Lorentzlorentz - - --
    MassFractalmass_fractal - - --
    MassSurfaceFractalmass_surface_fractal - - --
    Parallelepipedparallelepiped - - --
    PearlNecklacepearl_necklace - - --
    Spheresphere - - --
    StarPolymerstar_polymer - - --
    StickyHSStructurestickyhardsphere - Y --
    TriaxialEllipsoidtriaxial_ellipsoid - - --
    + + +MDOC_END +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| model_index | | Index of the applied sasview model. Recompile instrument for changes to take effect. | 21 | +| model_scale | | Global scale factor for scattering kernel. For systems without inter-particle interference, the form factors can be related to the scattering intensity by the particle volume fraction. | 1.0 | +| model_pars | | Model parameters are given as a set of comma-separated values enclosed by {}, e.g. {60} for the model index 21 (the guinier model). Consult the sasview docs for further info. | {60,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0} | +| model_abs | 1/m | Absorption cross section density at 2200 m/s | 0.5 | +| xwidth | m | horiz. dimension of sample, as a width | 0 | +| yheight | m | vert . dimension of sample, as a height for cylinder/box | 0 | +| zdepth | m | depth of sample | 0 | +| radius | m | Outer radius of sample in (x,z) plane for cylinder/sphere | 0 | +| target_x | m | relative focus target position | 0 | +| target_y | m | relative focus target position | 0 | +| target_z | m | relative focus target position | 6 | +| target_index | 1 | Relative index of component to focus at, e.g. next is +1 | 0 | +| focus_xw | m | horiz. dimension of a rectangular area | 0 | +| focus_yh | m | vert. dimension of a rectangular area | 0 | +| focus_aw | deg | horiz. angular dimension of a rectangular area | 0 | +| focus_ah | deg | vert. angular dimension of a rectangular area | 0 | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/samples/SasView_model.comp) for `SasView_model.comp`. +- http://www.sasview.org/sasview/user/models/model_functions.html + +--- + +*Generated on mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/samples/Single_crystal.md b/mcstas-comps/samples/Single_crystal.md new file mode 100644 index 000000000..79761fa91 --- /dev/null +++ b/mcstas-comps/samples/Single_crystal.md @@ -0,0 +1,206 @@ +# The `Single_crystal` Component + +*McStas: Mosaic single crystal with multiple scattering vectors, optimised for speed +with large crystals and many reflections.* + +## Identification + +- **Site:** +- **Author:** Kristian Nielsen +- **Origin:** Risoe +- **Date:** December 1999 + +## Description + +```text +Single crystal with mosaic. Delta-D/D option for finite-size effects. +Rectangular geometry. Multiple scattering and secondary extinction included. +The mosaic may EITHER be specified isotropic by setting the mosaic input +parameter, OR anisotropic by setting the mosaic_a, mosaic_b, and mosaic_c +parameters. +The crystal lattice can be bent locally, keeping the external geometry unchanged. +Curvature is spherical along vertical and horizontal axes. + +Speed/stat optimisation using SPLIT +In order to dramatically improve the simulation efficiency, we recommend to +use a SPLIT keyword on this component (or prior to it), as well as to disable +the multiple scattering handling by setting order=1. This is especially powerful +for large reflection lists such as with macromolecular proteins. When an incoming +particle is identical to the preceeding, reciprocal space initialisation is +skipped, and a Monte Carlo choice is done on available reflections from the last +repciprocal space calculation! To assist the user in choosing a "relevant" value +of the SPLIT, a rolling average of the number of available reflections is +calculated and presented in the component output. + +Mosacitiy modes: +The component features three independent ways of parametrising mosaicity: +a) The original algorithm where mosaicity is implemented by extending each +reflection by a Gaussian "cigar" in reciprocal space, characterised by +the parameters mosaic and delta_d_d. +(Also known as "isotropic mosaicity".) +b) A similar mode where mosaicities can be non-isotropic and given as the +parameters mosaic_a, mosaic_b and mosaic_c, around the unit cell axes. +(Also known as "anisotropic mosaicity".) +c) Given two "macroscopically"/experimentally measured width/mosaicities +of two independent reflections, parametrised by the list +mosaic_AB = {mos_a, mos_b, a_h, a_k, a_l, b_h, b_k, b_l}, a set of +microscopic mosaicities as in b) are estimated (internally) and applied. +(Also known as "phenomenological mosaicity".) + +Powder- and PG-mode +When these two modes are used (powder=1 or PG=1), a randomised transformation +of the particle direction is made before and after scattering, thereby letting +the single crystal behave as a crystallite of either a powder (crystallite +orientation fully randomised) or pyrolytic graphite (crystallite randomised around +the c-axis). + +Curved crystal mode +The component features a method to curve the lattice planes slightly with respect +to the outer geometry of the crystal. The method is implemented as a transformation +on the particle direction vector, and should be used only in cases where +a) The reflection lattice vector is ~ orthogonal to the crystal surface +b) The modelled curvarture is "small" with respect to the crystal surface + +Sample shape: +Sample shape may be a cylinder, a sphere, a box or any other shape +box/plate: xwidth x yheight x zdepth +cylinder: radius x yheight +sphere: radius (yheight=0) +any shape: geometry=OFF file + +The complex geometry option handles any closed non-convex polyhedra. +It computes the intersection points of the neutron ray with the object +transparently, so that it can be used like a regular sample object. +It supports the PLY, OFF and NOFF file format but not COFF (colored faces). +Such files may be generated from XYZ data using: +qhull < coordinates.xyz Qx Qv Tv o > geomview.off +or +powercrust coordinates.xyz +and viewed with geomview or java -jar jroff.jar (see below). +The default size of the object depends on the OFF file data, but its +bounding box may be resized using xwidth,yheight and zdepth. + +Crystal definition file format +Crystal structure is specified with an ascii data file. Each line contains +4 or more numbers, separated by white spaces: + +h k l ... F2 + +The first three numbers are the (h,k,l) indices of the reciprocal lattice +point, and the 7-th number is the value of the structure factor |F|**2, in +barns. The rest of the numbers are not used; the file is in the format +output by the Crystallographica program. +The reflection list should be ordered by decreasing d-spacing values. +Lines begining by '#' are read as comments (ignored). Most sample parameters +may be defined from the data file header, following the same mechanism as +PowderN. + +Current data file header keywords include, for data format specification: +#column_h +#column_k +#column_l +#column_F2 +#column_F +and for material specification: +#sigma_abs +#sigma_inc +#Delta_d/d +#lattice_a +#lattice_b +#lattice_c +#lattice_aa +#lattice_bb +#lattice_cc + +Last, CIF, FullProf and ShelX files can be read, and converted to F2(hkl) lists +if 'cif2hkl' is installed. The CIF2HKL env variable can be used to point to a +proper executable, else the McCode, then the system installed versions are used. + +See the Component Manual for more defails. + +Example: Single_crystal(xwidth=0.01, yheight=0.01, zdepth=0.01, mosaic = 5, reflections="YBaCuO.lau") + +A PG graphite crystal plate, cut for (002) reflections +Single_crystal(xwidth = 0.002, yheight = 0.1, zdepth = 0.1, +mosaic = 30, reflections = "C_graphite.lau", +ax=0, ay=2.14, az=-1.24, +bx = 0, by = 0, bz = 2.47, +cx = 6.71, cy = 0, cz = 0) + +A leucine protein, without multiple scattering +Single_crystal(xwidth=0.005, yheight=0.005, zdepth=0.005, +mosaic = 5, reflections="leucine.lau", order=1) + +A Vanadium incoherent elastic scattering with multiple scattering +Single_crystal(xwidth=0.01, yheight=0.01, zdepth=0.01, +reflections="", sigma_abs=5.08, sigma_inc=4.935, +ax=3.0282, by=3.0282, cz=3.0282/2) + +Also, always use a non-zero value of delta_d_d. + +%VALIDATION: +This component has been validated. + +This sample component can advantageously benefit from the SPLIT feature, e.g. +SPLIT COMPONENT sx = Single_crystal(...) +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| reflections | string | File name containing structure factors of reflections (LAZ LAU CIF, FullProf, ShelX). Use empty ("") or NULL for incoherent scattering only | 0 | +| geometry | str | Name of an Object File Format (OFF) or PLY file for complex geometry. The OFF/PLY file may be generated from XYZ coordinates using qhull/powercrust | 0 | +| mosaic_AB | arc_minutes, arc_minutes,1, 1, 1, 1, 1, 1 | In Plane mosaic rotation and plane vectors (anisotropic), mosaic_A, mosaic_B, A_h,A_k,A_l, B_h,B_k,B_l. Puts the crystal in the in-plane mosaic state. Vectors A and B define plane in which the crystal roation is defined, and mosaic_A, mosaic_B, denotes the resp. mosaicities (gaussian RMS) with respect to the two reflections chosen by A and B (Miller indices). | {0,0, 0,0,0, 0,0,0} | +| xwidth | m | Width of crystal | 0 | +| yheight | m | Height of crystal | 0 | +| zdepth | m | Depth of crystal (no extinction simulated) | 0 | +| radius | m | Outer radius of sample in (x,z) plane | 0 | +| delta_d_d | 1 | Lattice spacing variance, gaussian RMS | 1e-4 | +| mosaic | arc minutes | Crystal mosaic (isotropic), gaussian RMS. Puts the crystal in the isotropic mosaic model state, thus disregarding other mosaicity parameters. | -1 | +| mosaic_a | arc minutes | Horizontal (rotation around lattice vector a) mosaic (anisotropic), gaussian RMS. Put the crystal in the anisotropic crystal vector state. I.e. model mosaicity through rotation around the crystal lattice vectors. Has precedence over in-plane mosaic model. | -1 | +| mosaic_b | arc minutes | Vertical (rotation around lattice vector b) mosaic (anisotropic), gaussian RMS. | -1 | +| mosaic_c | arc minutes | Out-of-plane (Rotation around lattice vector c) mosaic (anisotropic), gaussian RMS | -1 | +| recip_cell | 1 | Choice of direct/reciprocal (0/1) unit cell definition | 0 | +| barns | 1 | Flag to indicate if \|F\|^2 from 'reflections' is in barns or fm^2. barns=1 for laz and isotropic constant elastic scattering (reflections=NULL), barns=0 for lau type files | 0 | +| ax | AA or AA^-1 | Coordinates of first (direct/recip) unit cell vector | 0 | +| ay | | a on y axis | 0 | +| az | | a on z axis | 0 | +| bx | AA or AA^-1 | Coordinates of second (direct/recip) unit cell vector | 0 | +| by | | b on y axis | 0 | +| bz | | b on z axis | 0 | +| cx | AA or AA^-1 | Coordinates of third (direct/recip) unit cell vector | 0 | +| cy | | c on y axis | 0 | +| cz | | c on z axis | 0 | +| p_transmit | 1 | Monte Carlo probability for neutrons to be transmitted without any scattering. Used to improve statistics from weak reflections | 0.001 | +| sigma_abs | barns | Absorption cross-section per unit cell at 2200 m/s | 0 | +| sigma_inc | barns | Incoherent scattering cross-section per unit cell Use -1 to inactivate | 0 | +| aa | deg | Unit cell angles alpha, beta and gamma. Then uses norms of vectors a,b and c as lattice parameters | 0 | +| bb | deg | Beta angle | 0 | +| cc | deg | Gamma angle | 0 | +| order | 1 | Limit multiple scattering up to given order (0: all, 1: first, 2: second, ...) | 0 | +| extra_order | 1 | When using order, allow additional multiple scattering without coherent scattering, sensible with very large unit cells (0: disable, 1: one extra, 2: two extra, ...) | 0 | +| RX | m | Radius of horizontal along X lattice curvature. flat for 0 | 0 | +| RY | m | Radius of vertical along Y lattice curvature. flat for 0 | 0 | +| powder | 1 | Flag to indicate powder mode, for simulation of Debye-Scherrer cones via random crystallite orientation. A powder texture can be approximated with 0ICSD Inorganic Crystal Structure Database +- Cross sections for single elements +- Web Elements +- Fullprof powder refinement +- Crystallographica software +- Geomview and Object File Format (OFF) +- Java version of Geomview (display only) jroff.jar +- qhull +- powercrust + +--- + +*Generated on mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/samples/Single_magnetic_crystal.md b/mcstas-comps/samples/Single_magnetic_crystal.md new file mode 100644 index 000000000..a3d8a367a --- /dev/null +++ b/mcstas-comps/samples/Single_magnetic_crystal.md @@ -0,0 +1,97 @@ +# The `Single_magnetic_crystal` Component + +*McStas: Release: McStas 2.6 + +Mosaic magnetic single crystal with multiple scattering vectors.* + +## Identification + +- **Site:** +- **Author:** Erik B Knudsen and Linda Udby +- **Origin:** DTU Physics +- **Date:** Jan 2020 + +## Description + +```text +WARNING: This is an experimental component - no experimental validation has yet been done + +Single magnetic crystal with mosaic. Delta-D/D option for finite-size effects. +Multiple scattering and secondary extinction included. +The mosaic may EITHER be specified isotropic by setting the mosaic input +parameter, OR anisotropic by setting the mosaic_h, mosaic_v, and mosaic_n +parameters. + +The scattering is computed solely in an spin up-down configuration. That is the +scattering is considered in relation to the externally defined vector (mx,my,mz), where it +can be either SF or NSF. +Simplifications and comments : +Lande splitting factor is assumed to be g=2 +Magnetic form factors are set =1 + +Sample shape: +Sample shape may be a cylinder, a sphere, a box or any other shape +box/plate: xwidth x yheight x zdepth +cylinder: radius x yheight +sphere: radius (yheight=0) +any shape: geometry=OFF file + +The complex geometry option handles any closed non-convex polyhedra. +It computes the intersection points of the neutron ray with the object +transparently, so that it can be used like a regular sample object. +It supports the OFF and NOFF file format but not COFF (colored faces). +Such files may be generated from XYZ data using qhull/powercrust, and +viewed with geomview +The default size of the object depends of the OFF file data, but its +bounding box may be resized using xwidth,yheight and zdepth. + +Also, always use a non-zero value of delta_d_d. +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| atom_sites | str | File name containing the atoms present in the unit cell. Use empty ("") or NULL for sigma_inc scattering only | 0 | +| geometry | str | Name of an Object File Format (OFF) file for complex geometry. The OFF file may be generated from XYZ coordinates using qhull/powercrust | NULL | +| xwidth | m | Width of crystal | 0 | +| yheight | m | Height of crystal | 0 | +| zdepth | m | Depth of crystal (no extinction simulated) | 0 | +| radius | m | Outer radius of sample in (x,z) plane | 0 | +| delta_d_d | 1 | Lattice spacing variance, gaussian RMS | 1e-4 | +| mosaic | arcmin | Crystal mosaic (isotropic), gaussian RMS | -1 | +| mosaic_h | arcmin | Horizontal (rotation around Y) mosaic (anisotropic), gaussian RMS | -1 | +| mosaic_v | arcmin | Vertical (rotation around Z) mosaic (anisotropic), gaussian RMS | -1 | +| mosaic_n | arcmin | Out-of-plane (Rotation around X) mosaic (anisotropic), gaussian RMS | -1 | +| recip_cell | 1 | Choice of direct/reciprocal (0/1) unit cell definition | 0 | +| q_min | AA^-1 | lower boundary of momentum transfer range to generate hkls in | 0 | +| q_max | AA^-1 | upper boundary of momentum transfer range to generate hkls in | -1 | +| mx | 1 | | 0 | +| my | 1 | Coordinates of vector defining the SF/NSF direction | 1 | +| mz | 1 | | 0 | +| na | 1 | | 1 | +| nb | 1 | Unit cell multipliers. The specified unit cell vectors are scaled by these factors. Note that the mulitpliers are applied directly to the raw input data. I.e. if recip. cell vectors are given, multipliers should be <1 (= 1/n). F.i. used to specify a magnetic unit cell which is larger than the chemical unit cell. | 1 | +| nc | 1 | | 1 | +| ax | AA or AA^-1 | | 0 | +| ay | AA or AA^-1 | Coordinates of first (direct/recip) unit cell vector | 0 | +| az | AA or AA^-1 | | 0 | +| bx | AA or AA^-1 | | 0 | +| by | AA or AA^-1 | Coordinates of second (direct/recip) unit cell vector | 0 | +| bz | AA or AA^-1 | | 0 | +| cx | AA or AA^-1 | | 0 | +| cy | AA or AA^-1 | Coordinates of third (direct/recip) unit cell vector | 0 | +| cz | AA or AA^-1 | | 0 | +| p_transmit | 1 | Monte Carlo probability for neutrons to be transmitted without any scattering. Used to improve statistics from weak reflections | -1 | +| sigma_abs | barns | absorption cross-section per unit cell at 2200 m/s | 0 | +| sigma_inc | barns | incoherent scattering cross-section per unit cell | 0 | +| order | 1 | limit multiple scattering up to given order (0: all, 1: first, 2: second, ...) | 0 | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/samples/Single_magnetic_crystal.comp) for `Single_magnetic_crystal.comp`. + +--- + +*Generated on mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/samples/TOFRes_sample.md b/mcstas-comps/samples/TOFRes_sample.md new file mode 100644 index 000000000..b369d711b --- /dev/null +++ b/mcstas-comps/samples/TOFRes_sample.md @@ -0,0 +1,74 @@ +# The `TOFRes_sample` Component + +*McStas: Sample for TOF resolution function calculation.* + +## Identification + +- **Site:** +- **Author:** KL, 10 October 2004 +- **Origin:** Risoe +- **Date:** 1999 + +## Description + +```text +An inelastic sample with completely uniform scattering in both solid angle +and energy. This sample is used together with the TOFRes_monitor component +and (optionally) the mcresplot front-end to compute the resolution +function of all time-of-flight instruments. +The method of time focusing is used to optimize the simulations. + +The shape of the sample is either: +1. Hollow cylinder (Please note that the cylinder **must** be specified with both +a radius and a wall-thickness!) +2. A massive, rectangular box specified with dimensions xwidth, yheight, zdepth. +(i.e. **withouht** a thickness) + +hollow cylinder shape **must** be specified with both a radius and a wall-thickness. +The box is + +The scattered neutrons will have directions towards a given target and +detector arrival time in an interval of time_width centered on time_bin. +This target area is default disk shaped, but may also be rectangular +if specified focus_xw and focus_yh +or focus_aw and focus_ah, respectively in meters and degrees. +The target itself is either situated according to given coordinates (x,y,z), +or setting the relative target_index of the component to focus at +(next is +1). This target position will be set to its AT position. +When targeting to centered components, such as spheres or cylinders, +define an Arm component where to focus at. + +Example: TOFRes_sample(thickness=0.001, radius=0.01, yheight=0.04, focus_xw=0.025, focus_yh=0.025, time_bin=3e4, time_width=200, target_x=0, target_y=0, target_z=1) +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| thickness | m | Thickness of hollow cylinder in (x,z) plane | 0 | +| radius | m | Outer radius of hollow cylinder | 0.01 | +| yheight | m | vert. dimension of sample, as a height | 0.05 | +| focus_r | m | Radius of sphere containing target | 0.05 | +| time_bin | us | position of time bin | 20000 | +| time_width | us | width of time bin | 10 | +| f | 1 | Adaptive time-shortening factor | 50 | +| target_x | | | 0 | +| target_y | m | position of target to focus at | 0 | +| target_z | | | .5 | +| focus_xw | m | horiz. dimension of a rectangular area | 0 | +| focus_yh | m | vert. dimension of a rectangular area | 0 | +| focus_aw | deg | horiz. angular dimension of a rectangular area | 0 | +| focus_ah | deg | vert. angular dimension of a rectangular area | 0 | +| xwidth | m | horiz. dimension of sample, as a width | 0 | +| zdepth | m | depth of sample | 0 | +| target_index | 1 | relative index of component to focus at, e.g. next is +1 | 0 | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/samples/TOFRes_sample.comp) for `TOFRes_sample.comp`. + +--- + +*Generated on mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/samples/Tunneling_sample.md b/mcstas-comps/samples/Tunneling_sample.md new file mode 100644 index 000000000..69865d0dc --- /dev/null +++ b/mcstas-comps/samples/Tunneling_sample.md @@ -0,0 +1,76 @@ +# The `Tunneling_sample` Component + +*McStas: A Double-cylinder shaped all-incoherent scatterer +with elastic, quasielastic (Lorentzian), and tunneling (sharp) +components.* + +## Identification + +- **Site:** +- **Author:** Kim Lefmann +- **Origin:** Risoe +- **Date:** 10.05.07 + +## Description + +```text +A Double-cylinder shaped all-incoherent scatterer +with both elastic, quasielastic (Lorentzian), and tunneling (sharp) +components. No multiple scattering. Absorbtion included. +The shape of the sample may be a box with dimensions xwidth, yheight, zdepth. +The area to scatter to is a disk of radius 'focus_r' situated at the target. +This target area may also be rectangular if specified focus_xw and focus_yh +or focus_aw and focus_ah, respectively in meters and degrees. +The target itself is either situated according to given coordinates (x,y,z), +or defined with the relative target_index of the component to focus +to (next is +1). +This target position will be set to its AT position. When targeting to +centered components, such as spheres or cylinders, define an Arm component +where to focus to. + +The outgoing polarization is calculated as for nuclear spin incoherence: +P' = 1/3*P-2/3P = -1/3P +As above multiple scattering is ignored . + +Example: Tunneling_sample(thickness=0.001,radius=0.01,yheight=0.02,focus_r=0.035, +target_index=1) +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| thickness | m | Thickness of cylindrical sample in (x,z) plane | 0 | +| radius | m | Outer radius of sample in (x,z) plane | 0.01 | +| focus_r | m | Radius of disk containing target. Use 0 for full space | 0 | +| p_interact | 1 | MC Probability for scattering the ray; otherwise transmit | 1 | +| f_QE | 1 | Fraction of quasielastic scattering | 0 | +| f_tun | 1 | Fraction of tunneling scattering (f_QE+f_tun < 1) | 0 | +| gamma | meV | Lorentzian width of quasielastic broadening (HWHM) | 0 | +| E_tun | meV | Tunneling energy | 0 | +| target_x | m | X-position of target to focus at | 0 | +| target_y | m | Y-position of target to focus at | 0 | +| target_z | m | Z-position of target to focus at | 0.235 | +| focus_xw | m | horiz. dimension of a rectangular area | 0 | +| focus_yh | m | vert. dimension of a rectangular area | 0 | +| focus_aw | deg | horiz. angular dimension of a rectangular area | 0 | +| focus_ah | deg | vert. angular dimension of a rectangular area | 0 | +| xwidth | m | horiz. dimension of sample, as a width | 0 | +| yheight | m | vert. dimension of sample, as a height | 0.05 | +| zdepth | m | depth of sample | 0 | +| sigma_abs | barns | Absorbtion cross section pr. unit cell | 5.08 | +| sigma_inc | barns | Total incoherent scattering cross section pr. unit cell | 4.935 | +| Vc | AA^3 | Unit cell volume | 13.827 | +| target_index | 1 | relative index of component to focus at, e.g. next is +1 | 0 | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/samples/Tunneling_sample.comp) for `Tunneling_sample.comp`. +- Test +- results (not up-to-date). + +--- + +*Generated on mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/sasmodels/SasView_adsorbed_layer.md b/mcstas-comps/sasmodels/SasView_adsorbed_layer.md new file mode 100644 index 000000000..43d08bb08 --- /dev/null +++ b/mcstas-comps/sasmodels/SasView_adsorbed_layer.md @@ -0,0 +1,61 @@ +# The `SasView_adsorbed_layer` Component + +*McStas: SasView adsorbed_layer model component as sample description.* + +## Identification + +- **Site:** +- **Author:** Jose Robledo +- **Origin:** FZJ / DTU / ESS DMSC +- **Date:** + +## Description + +```text +SasView_adsorbed_layer component, generated from adsorbed_layer.c in sasmodels. + +Example: +SasView_adsorbed_layer(second_moment, adsorbed_amount, density_shell, radius, volfraction, sld_shell, sld_solvent, +model_scale=1.0, model_abs=0.0, xwidth=0.01, yheight=0.01, zdepth=0.005, R=0, +int target_index=1, target_x=0, target_y=0, target_z=1, +focus_xw=0.5, focus_yh=0.5, focus_aw=0, focus_ah=0, focus_r=0, +pd_radius=0.0) +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| second_moment | Ang | ([0.0, inf]) Second moment of polymer distribution. | 23.0 | +| adsorbed_amount | mg/m^2 | ([0.0, inf]) Adsorbed amount of polymer. | 1.9 | +| density_shell | g/cm^3 | ([0.0, inf]) Bulk density of polymer in the shell. | 0.7 | +| radius | Ang | ([0.0, inf]) Core particle radius. | 500.0 | +| volfraction | None | ([0.0, inf]) Core particle volume fraction. | 0.14 | +| sld_shell | 1e-6/Ang^2 | ([-inf, inf]) Polymer shell SLD. | 1.5 | +| sld_solvent | 1e-6/Ang^2 | ([-inf, inf]) Solvent SLD. | 6.3 | +| model_scale | | Global scale factor for scattering kernel. For systems without inter-particle interference, the form factors can be related to the scattering intensity by the particle volume fraction. | 1.0 | +| model_abs | | Absorption cross section density at 2200 m/s. | 0.0 | +| xwidth | m | ([-inf, inf]) Horiz. dimension of sample, as a width. | 0.01 | +| yheight | m | ([-inf, inf]) vert . dimension of sample, as a height for cylinder/box | 0.01 | +| zdepth | m | ([-inf, inf]) depth of sample | 0.005 | +| R | m | Outer radius of sample in (x,z) plane for cylinder/sphere. | 0 | +| target_x | m | relative focus target position. | 0 | +| target_y | m | relative focus target position. | 0 | +| target_z | m | relative focus target position. | 1 | +| target_index | | Relative index of component to focus at, e.g. next is +1. | 1 | +| focus_xw | m | horiz. dimension of a rectangular area. | 0.5 | +| focus_yh | m | , vert. dimension of a rectangular area. | 0.5 | +| focus_aw | deg | , horiz. angular dimension of a rectangular area. | 0 | +| focus_ah | deg | , vert. angular dimension of a rectangular area. | 0 | +| focus_r | m | case of circular focusing, focusing radius. | 0 | +| pd_radius | | (0,inf) defined as (dx/x), where x is de mean value and dx the standard devition of the variable | 0.0 | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/sasmodels/SasView_adsorbed_layer.comp) for `SasView_adsorbed_layer.comp`. + +--- + +*Generated on mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/sasmodels/SasView_barbell.md b/mcstas-comps/sasmodels/SasView_barbell.md new file mode 100644 index 000000000..4fb74595f --- /dev/null +++ b/mcstas-comps/sasmodels/SasView_barbell.md @@ -0,0 +1,61 @@ +# The `SasView_barbell` Component + +*McStas: SasView barbell model component as sample description.* + +## Identification + +- **Site:** +- **Author:** Jose Robledo +- **Origin:** FZJ / DTU / ESS DMSC +- **Date:** + +## Description + +```text +SasView_barbell component, generated from barbell.c in sasmodels. + +Example: +SasView_barbell(sld, sld_solvent, radius_bell, radius, length, +model_scale=1.0, model_abs=0.0, xwidth=0.01, yheight=0.01, zdepth=0.005, R=0, +int target_index=1, target_x=0, target_y=0, target_z=1, +focus_xw=0.5, focus_yh=0.5, focus_aw=0, focus_ah=0, focus_r=0, +pd_radius_bell=0.0, pd_radius=0.0, pd_length=0.0) +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| sld | 1e-6/Ang^2 | ([-inf, inf]) Barbell scattering length density. | 4 | +| sld_solvent | 1e-6/Ang^2 | ([-inf, inf]) Solvent scattering length density. | 1 | +| radius_bell | Ang | ([0, inf]) Spherical bell radius. | 40 | +| radius | Ang | ([0, inf]) Cylindrical bar radius. | 20 | +| length | Ang | ([0, inf]) Cylinder bar length. | 400 | +| model_scale | | Global scale factor for scattering kernel. For systems without inter-particle interference, the form factors can be related to the scattering intensity by the particle volume fraction. | 1.0 | +| model_abs | | Absorption cross section density at 2200 m/s. | 0.0 | +| xwidth | m | ([-inf, inf]) Horiz. dimension of sample, as a width. | 0.01 | +| yheight | m | ([-inf, inf]) vert . dimension of sample, as a height for cylinder/box | 0.01 | +| zdepth | m | ([-inf, inf]) depth of sample | 0.005 | +| R | m | Outer radius of sample in (x,z) plane for cylinder/sphere. | 0 | +| target_x | m | relative focus target position. | 0 | +| target_y | m | relative focus target position. | 0 | +| target_z | m | relative focus target position. | 1 | +| target_index | | Relative index of component to focus at, e.g. next is +1. | 1 | +| focus_xw | m | horiz. dimension of a rectangular area. | 0.5 | +| focus_yh | m | , vert. dimension of a rectangular area. | 0.5 | +| focus_aw | deg | , horiz. angular dimension of a rectangular area. | 0 | +| focus_ah | deg | , vert. angular dimension of a rectangular area. | 0 | +| focus_r | m | case of circular focusing, focusing radius. | 0 | +| pd_radius_bell | | (0,inf) defined as (dx/x), where x is de mean value and dx the standard devition of the variable. | 0.0 | +| pd_radius | | (0,inf) defined as (dx/x), where x is de mean value and dx the standard devition of the variable. | 0.0 | +| pd_length | | (0,inf) defined as (dx/x), where x is de mean value and dx the standard devition of the variable | 0.0 | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/sasmodels/SasView_barbell.comp) for `SasView_barbell.comp`. + +--- + +*Generated on mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/sasmodels/SasView_barbell_aniso.md b/mcstas-comps/sasmodels/SasView_barbell_aniso.md new file mode 100644 index 000000000..2b34eb871 --- /dev/null +++ b/mcstas-comps/sasmodels/SasView_barbell_aniso.md @@ -0,0 +1,65 @@ +# The `SasView_barbell_aniso` Component + +*McStas: SasView barbell model component as sample description.* + +## Identification + +- **Site:** +- **Author:** Jose Robledo +- **Origin:** FZJ / DTU / ESS DMSC +- **Date:** + +## Description + +```text +SasView_barbell component, generated from barbell.c in sasmodels. + +Example: +SasView_barbell_aniso(sld, sld_solvent, radius_bell, radius, length, theta, phi, +model_scale=1.0, model_abs=0.0, xwidth=0.01, yheight=0.01, zdepth=0.005, R=0, +int target_index=1, target_x=0, target_y=0, target_z=1, +focus_xw=0.5, focus_yh=0.5, focus_aw=0, focus_ah=0, focus_r=0, +pd_radius_bell=0.0, pd_radius=0.0, pd_length=0.0, pd_theta=0.0, pd_phi=0.0) +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| sld | 1e-6/Ang^2 | ([-inf, inf]) Barbell scattering length density. | 4 | +| sld_solvent | 1e-6/Ang^2 | ([-inf, inf]) Solvent scattering length density. | 1 | +| radius_bell | Ang | ([0, inf]) Spherical bell radius. | 40 | +| radius | Ang | ([0, inf]) Cylindrical bar radius. | 20 | +| length | Ang | ([0, inf]) Cylinder bar length. | 400 | +| theta | | | 60 | +| phi | | | 60 | +| model_scale | | Global scale factor for scattering kernel. For systems without inter-particle interference, the form factors can be related to the scattering intensity by the particle volume fraction. | 1.0 | +| model_abs | | Absorption cross section density at 2200 m/s. | 0.0 | +| xwidth | m | ([-inf, inf]) Horiz. dimension of sample, as a width. | 0.01 | +| yheight | m | ([-inf, inf]) vert . dimension of sample, as a height for cylinder/box | 0.01 | +| zdepth | m | ([-inf, inf]) depth of sample | 0.005 | +| R | m | Outer radius of sample in (x,z) plane for cylinder/sphere. | 0 | +| target_x | m | relative focus target position. | 0 | +| target_y | m | relative focus target position. | 0 | +| target_z | m | relative focus target position. | 1 | +| target_index | | Relative index of component to focus at, e.g. next is +1. | 1 | +| focus_xw | m | horiz. dimension of a rectangular area. | 0.5 | +| focus_yh | m | , vert. dimension of a rectangular area. | 0.5 | +| focus_aw | deg | , horiz. angular dimension of a rectangular area. | 0 | +| focus_ah | deg | , vert. angular dimension of a rectangular area. | 0 | +| focus_r | m | case of circular focusing, focusing radius. | 0 | +| pd_radius_bell | | (0,inf) defined as (dx/x), where x is de mean value and dx the standard devition of the variable. | 0.0 | +| pd_radius | | (0,inf) defined as (dx/x), where x is de mean value and dx the standard devition of the variable. | 0.0 | +| pd_length | | (0,inf) defined as (dx/x), where x is de mean value and dx the standard devition of the variable. | 0.0 | +| pd_theta | | (0,360) defined as (dx/x), where x is de mean value and dx the standard devition of the variable. | 0.0 | +| pd_phi | | (0,360) defined as (dx/x), where x is de mean value and dx the standard devition of the variable | 0.0 | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/sasmodels/SasView_barbell_aniso.comp) for `SasView_barbell_aniso.comp`. + +--- + +*Generated on mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/sasmodels/SasView_bcc_paracrystal.md b/mcstas-comps/sasmodels/SasView_bcc_paracrystal.md new file mode 100644 index 000000000..912e5fde0 --- /dev/null +++ b/mcstas-comps/sasmodels/SasView_bcc_paracrystal.md @@ -0,0 +1,59 @@ +# The `SasView_bcc_paracrystal` Component + +*McStas: SasView bcc_paracrystal model component as sample description.* + +## Identification + +- **Site:** +- **Author:** Jose Robledo +- **Origin:** FZJ / DTU / ESS DMSC +- **Date:** + +## Description + +```text +SasView_bcc_paracrystal component, generated from bcc_paracrystal.c in sasmodels. + +Example: +SasView_bcc_paracrystal(dnn, d_factor, radius, sld, sld_solvent, +model_scale=1.0, model_abs=0.0, xwidth=0.01, yheight=0.01, zdepth=0.005, R=0, +int target_index=1, target_x=0, target_y=0, target_z=1, +focus_xw=0.5, focus_yh=0.5, focus_aw=0, focus_ah=0, focus_r=0, +pd_radius=0.0) +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| dnn | Ang | ([-inf, inf]) Nearest neighbour distance. | 220 | +| d_factor | | ([-inf, inf]) Paracrystal distortion factor. | 0.06 | +| radius | Ang | ([0, inf]) Particle radius. | 40 | +| sld | 1e-6/Ang^2 | ([-inf, inf]) Particle scattering length density. | 4 | +| sld_solvent | 1e-6/Ang^2 | ([-inf, inf]) Solvent scattering length density. | 1 | +| model_scale | | Global scale factor for scattering kernel. For systems without inter-particle interference, the form factors can be related to the scattering intensity by the particle volume fraction. | 1.0 | +| model_abs | | Absorption cross section density at 2200 m/s. | 0.0 | +| xwidth | m | ([-inf, inf]) Horiz. dimension of sample, as a width. | 0.01 | +| yheight | m | ([-inf, inf]) vert . dimension of sample, as a height for cylinder/box | 0.01 | +| zdepth | m | ([-inf, inf]) depth of sample | 0.005 | +| R | m | Outer radius of sample in (x,z) plane for cylinder/sphere. | 0 | +| target_x | m | relative focus target position. | 0 | +| target_y | m | relative focus target position. | 0 | +| target_z | m | relative focus target position. | 1 | +| target_index | | Relative index of component to focus at, e.g. next is +1. | 1 | +| focus_xw | m | horiz. dimension of a rectangular area. | 0.5 | +| focus_yh | m | , vert. dimension of a rectangular area. | 0.5 | +| focus_aw | deg | , horiz. angular dimension of a rectangular area. | 0 | +| focus_ah | deg | , vert. angular dimension of a rectangular area. | 0 | +| focus_r | m | case of circular focusing, focusing radius. | 0 | +| pd_radius | | (0,inf) defined as (dx/x), where x is de mean value and dx the standard devition of the variable | 0.0 | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/sasmodels/SasView_bcc_paracrystal.comp) for `SasView_bcc_paracrystal.comp`. + +--- + +*Generated on mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/sasmodels/SasView_bcc_paracrystal_aniso.md b/mcstas-comps/sasmodels/SasView_bcc_paracrystal_aniso.md new file mode 100644 index 000000000..4cf693c0d --- /dev/null +++ b/mcstas-comps/sasmodels/SasView_bcc_paracrystal_aniso.md @@ -0,0 +1,65 @@ +# The `SasView_bcc_paracrystal_aniso` Component + +*McStas: SasView bcc_paracrystal model component as sample description.* + +## Identification + +- **Site:** +- **Author:** Jose Robledo +- **Origin:** FZJ / DTU / ESS DMSC +- **Date:** + +## Description + +```text +SasView_bcc_paracrystal component, generated from bcc_paracrystal.c in sasmodels. + +Example: +SasView_bcc_paracrystal_aniso(dnn, d_factor, radius, sld, sld_solvent, theta, phi, Psi, +model_scale=1.0, model_abs=0.0, xwidth=0.01, yheight=0.01, zdepth=0.005, R=0, +int target_index=1, target_x=0, target_y=0, target_z=1, +focus_xw=0.5, focus_yh=0.5, focus_aw=0, focus_ah=0, focus_r=0, +pd_radius=0.0, pd_theta=0.0, pd_phi=0.0, pd_Psi=0.0) +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| dnn | Ang | ([-inf, inf]) Nearest neighbour distance. | 220 | +| d_factor | | ([-inf, inf]) Paracrystal distortion factor. | 0.06 | +| radius | Ang | ([0, inf]) Particle radius. | 40 | +| sld | 1e-6/Ang^2 | ([-inf, inf]) Particle scattering length density. | 4 | +| sld_solvent | 1e-6/Ang^2 | ([-inf, inf]) Solvent scattering length density. | 1 | +| theta | | | 60 | +| phi | | | 60 | +| Psi | | | 60 | +| model_scale | | Global scale factor for scattering kernel. For systems without inter-particle interference, the form factors can be related to the scattering intensity by the particle volume fraction. | 1.0 | +| model_abs | | Absorption cross section density at 2200 m/s. | 0.0 | +| xwidth | m | ([-inf, inf]) Horiz. dimension of sample, as a width. | 0.01 | +| yheight | m | ([-inf, inf]) vert . dimension of sample, as a height for cylinder/box | 0.01 | +| zdepth | m | ([-inf, inf]) depth of sample | 0.005 | +| R | m | Outer radius of sample in (x,z) plane for cylinder/sphere. | 0 | +| target_x | m | relative focus target position. | 0 | +| target_y | m | relative focus target position. | 0 | +| target_z | m | relative focus target position. | 1 | +| target_index | | Relative index of component to focus at, e.g. next is +1. | 1 | +| focus_xw | m | horiz. dimension of a rectangular area. | 0.5 | +| focus_yh | m | , vert. dimension of a rectangular area. | 0.5 | +| focus_aw | deg | , horiz. angular dimension of a rectangular area. | 0 | +| focus_ah | deg | , vert. angular dimension of a rectangular area. | 0 | +| focus_r | m | case of circular focusing, focusing radius. | 0 | +| pd_radius | | (0,inf) defined as (dx/x), where x is de mean value and dx the standard devition of the variable. | 0.0 | +| pd_theta | | (0,360) defined as (dx/x), where x is de mean value and dx the standard devition of the variable. | 0.0 | +| pd_phi | | (0,360) defined as (dx/x), where x is de mean value and dx the standard devition of the variable. | 0.0 | +| pd_Psi | | (0,360) defined as (dx/x), where x is de mean value and dx the standard devition of the variable | 0.0 | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/sasmodels/SasView_bcc_paracrystal_aniso.comp) for `SasView_bcc_paracrystal_aniso.comp`. + +--- + +*Generated on mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/sasmodels/SasView_binary_hard_sphere.md b/mcstas-comps/sasmodels/SasView_binary_hard_sphere.md new file mode 100644 index 000000000..b4170d2b2 --- /dev/null +++ b/mcstas-comps/sasmodels/SasView_binary_hard_sphere.md @@ -0,0 +1,62 @@ +# The `SasView_binary_hard_sphere` Component + +*McStas: SasView binary_hard_sphere model component as sample description.* + +## Identification + +- **Site:** +- **Author:** Jose Robledo +- **Origin:** FZJ / DTU / ESS DMSC +- **Date:** + +## Description + +```text +SasView_binary_hard_sphere component, generated from binary_hard_sphere.c in sasmodels. + +Example: +SasView_binary_hard_sphere(radius_lg, radius_sm, volfraction_lg, volfraction_sm, sld_lg, sld_sm, sld_solvent, +model_scale=1.0, model_abs=0.0, xwidth=0.01, yheight=0.01, zdepth=0.005, R=0, +int target_index=1, target_x=0, target_y=0, target_z=1, +focus_xw=0.5, focus_yh=0.5, focus_aw=0, focus_ah=0, focus_r=0, +pd_radius_lg=0.0, pd_radius_sm=0.0) +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| radius_lg | Ang | ([0, inf]) radius of large particle. | 100 | +| radius_sm | Ang | ([0, inf]) radius of small particle. | 25 | +| volfraction_lg | | ([0, 1]) volume fraction of large particle. | 0.1 | +| volfraction_sm | | ([0, 1]) volume fraction of small particle. | 0.2 | +| sld_lg | 1e-6/Ang^2 | ([-inf, inf]) scattering length density of large particle. | 3.5 | +| sld_sm | 1e-6/Ang^2 | ([-inf, inf]) scattering length density of small particle. | 0.5 | +| sld_solvent | 1e-6/Ang^2 | ([-inf, inf]) Solvent scattering length density. | 6.36 | +| model_scale | | Global scale factor for scattering kernel. For systems without inter-particle interference, the form factors can be related to the scattering intensity by the particle volume fraction. | 1.0 | +| model_abs | | Absorption cross section density at 2200 m/s. | 0.0 | +| xwidth | m | ([-inf, inf]) Horiz. dimension of sample, as a width. | 0.01 | +| yheight | m | ([-inf, inf]) vert . dimension of sample, as a height for cylinder/box | 0.01 | +| zdepth | m | ([-inf, inf]) depth of sample | 0.005 | +| R | m | Outer radius of sample in (x,z) plane for cylinder/sphere. | 0 | +| target_x | m | relative focus target position. | 0 | +| target_y | m | relative focus target position. | 0 | +| target_z | m | relative focus target position. | 1 | +| target_index | | Relative index of component to focus at, e.g. next is +1. | 1 | +| focus_xw | m | horiz. dimension of a rectangular area. | 0.5 | +| focus_yh | m | , vert. dimension of a rectangular area. | 0.5 | +| focus_aw | deg | , horiz. angular dimension of a rectangular area. | 0 | +| focus_ah | deg | , vert. angular dimension of a rectangular area. | 0 | +| focus_r | m | case of circular focusing, focusing radius. | 0 | +| pd_radius_lg | | (0,inf) defined as (dx/x), where x is de mean value and dx the standard devition of the variable. | 0.0 | +| pd_radius_sm | | (0,inf) defined as (dx/x), where x is de mean value and dx the standard devition of the variable | 0.0 | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/sasmodels/SasView_binary_hard_sphere.comp) for `SasView_binary_hard_sphere.comp`. + +--- + +*Generated on mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/sasmodels/SasView_broad_peak.md b/mcstas-comps/sasmodels/SasView_broad_peak.md new file mode 100644 index 000000000..1d936236a --- /dev/null +++ b/mcstas-comps/sasmodels/SasView_broad_peak.md @@ -0,0 +1,61 @@ +# The `SasView_broad_peak` Component + +*McStas: SasView broad_peak model component as sample description.* + +## Identification + +- **Site:** +- **Author:** Jose Robledo +- **Origin:** FZJ / DTU / ESS DMSC +- **Date:** + +## Description + +```text +SasView_broad_peak component, generated from broad_peak.c in sasmodels. + +Example: +SasView_broad_peak(porod_scale, porod_exp, peak_scale, correlation_length, peak_pos, width_exp, shape_exp, +model_scale=1.0, model_abs=0.0, xwidth=0.01, yheight=0.01, zdepth=0.005, R=0, +int target_index=1, target_x=0, target_y=0, target_z=1, +focus_xw=0.5, focus_yh=0.5, focus_aw=0, focus_ah=0, focus_r=0, +pd_correlation_length=0.0) +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| porod_scale | | ([-inf, inf]) Power law scale factor. | 1e-05 | +| porod_exp | | ([-inf, inf]) Exponent of power law. | 3.0 | +| peak_scale | | ([-inf, inf]) Scale factor for broad peak. | 10.0 | +| correlation_length | Ang | ([-inf, inf]) screening length. | 50.0 | +| peak_pos | 1/Ang | ([-inf, inf]) Peak position in q. | 0.1 | +| width_exp | | ([-inf, inf]) Exponent of peak width. | 2.0 | +| shape_exp | | ([-inf, inf]) Exponent of peak shape. | 1.0 | +| model_scale | | Global scale factor for scattering kernel. For systems without inter-particle interference, the form factors can be related to the scattering intensity by the particle volume fraction. | 1.0 | +| model_abs | | Absorption cross section density at 2200 m/s. | 0.0 | +| xwidth | m | ([-inf, inf]) Horiz. dimension of sample, as a width. | 0.01 | +| yheight | m | ([-inf, inf]) vert . dimension of sample, as a height for cylinder/box | 0.01 | +| zdepth | m | ([-inf, inf]) depth of sample | 0.005 | +| R | m | Outer radius of sample in (x,z) plane for cylinder/sphere. | 0 | +| target_x | m | relative focus target position. | 0 | +| target_y | m | relative focus target position. | 0 | +| target_z | m | relative focus target position. | 1 | +| target_index | | Relative index of component to focus at, e.g. next is +1. | 1 | +| focus_xw | m | horiz. dimension of a rectangular area. | 0.5 | +| focus_yh | m | , vert. dimension of a rectangular area. | 0.5 | +| focus_aw | deg | , horiz. angular dimension of a rectangular area. | 0 | +| focus_ah | deg | , vert. angular dimension of a rectangular area. | 0 | +| focus_r | m | case of circular focusing, focusing radius. | 0 | +| pd_correlation_length | | (0,inf) defined as (dx/x), where x is de mean value and dx the standard devition of the variable | 0.0 | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/sasmodels/SasView_broad_peak.comp) for `SasView_broad_peak.comp`. + +--- + +*Generated on mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/sasmodels/SasView_capped_cylinder.md b/mcstas-comps/sasmodels/SasView_capped_cylinder.md new file mode 100644 index 000000000..1ceaff414 --- /dev/null +++ b/mcstas-comps/sasmodels/SasView_capped_cylinder.md @@ -0,0 +1,61 @@ +# The `SasView_capped_cylinder` Component + +*McStas: SasView capped_cylinder model component as sample description.* + +## Identification + +- **Site:** +- **Author:** Jose Robledo +- **Origin:** FZJ / DTU / ESS DMSC +- **Date:** + +## Description + +```text +SasView_capped_cylinder component, generated from capped_cylinder.c in sasmodels. + +Example: +SasView_capped_cylinder(sld, sld_solvent, radius, radius_cap, length, +model_scale=1.0, model_abs=0.0, xwidth=0.01, yheight=0.01, zdepth=0.005, R=0, +int target_index=1, target_x=0, target_y=0, target_z=1, +focus_xw=0.5, focus_yh=0.5, focus_aw=0, focus_ah=0, focus_r=0, +pd_radius=0.0, pd_radius_cap=0.0, pd_length=0.0) +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| sld | 1e-6/Ang^2 | ([-inf, inf]) Cylinder scattering length density. | 4 | +| sld_solvent | 1e-6/Ang^2 | ([-inf, inf]) Solvent scattering length density. | 1 | +| radius | Ang | ([0, inf]) Cylinder radius. | 20 | +| radius_cap | Ang | ([0, inf]) Cap radius. | 20 | +| length | Ang | ([0, inf]) Cylinder length. | 400 | +| model_scale | | Global scale factor for scattering kernel. For systems without inter-particle interference, the form factors can be related to the scattering intensity by the particle volume fraction. | 1.0 | +| model_abs | | Absorption cross section density at 2200 m/s. | 0.0 | +| xwidth | m | ([-inf, inf]) Horiz. dimension of sample, as a width. | 0.01 | +| yheight | m | ([-inf, inf]) vert . dimension of sample, as a height for cylinder/box | 0.01 | +| zdepth | m | ([-inf, inf]) depth of sample | 0.005 | +| R | m | Outer radius of sample in (x,z) plane for cylinder/sphere. | 0 | +| target_x | m | relative focus target position. | 0 | +| target_y | m | relative focus target position. | 0 | +| target_z | m | relative focus target position. | 1 | +| target_index | | Relative index of component to focus at, e.g. next is +1. | 1 | +| focus_xw | m | horiz. dimension of a rectangular area. | 0.5 | +| focus_yh | m | , vert. dimension of a rectangular area. | 0.5 | +| focus_aw | deg | , horiz. angular dimension of a rectangular area. | 0 | +| focus_ah | deg | , vert. angular dimension of a rectangular area. | 0 | +| focus_r | m | case of circular focusing, focusing radius. | 0 | +| pd_radius | | (0,inf) defined as (dx/x), where x is de mean value and dx the standard devition of the variable. | 0.0 | +| pd_radius_cap | | (0,inf) defined as (dx/x), where x is de mean value and dx the standard devition of the variable. | 0.0 | +| pd_length | | (0,inf) defined as (dx/x), where x is de mean value and dx the standard devition of the variable | 0.0 | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/sasmodels/SasView_capped_cylinder.comp) for `SasView_capped_cylinder.comp`. + +--- + +*Generated on mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/sasmodels/SasView_capped_cylinder_aniso.md b/mcstas-comps/sasmodels/SasView_capped_cylinder_aniso.md new file mode 100644 index 000000000..6031f6328 --- /dev/null +++ b/mcstas-comps/sasmodels/SasView_capped_cylinder_aniso.md @@ -0,0 +1,65 @@ +# The `SasView_capped_cylinder_aniso` Component + +*McStas: SasView capped_cylinder model component as sample description.* + +## Identification + +- **Site:** +- **Author:** Jose Robledo +- **Origin:** FZJ / DTU / ESS DMSC +- **Date:** + +## Description + +```text +SasView_capped_cylinder component, generated from capped_cylinder.c in sasmodels. + +Example: +SasView_capped_cylinder_aniso(sld, sld_solvent, radius, radius_cap, length, theta, phi, +model_scale=1.0, model_abs=0.0, xwidth=0.01, yheight=0.01, zdepth=0.005, R=0, +int target_index=1, target_x=0, target_y=0, target_z=1, +focus_xw=0.5, focus_yh=0.5, focus_aw=0, focus_ah=0, focus_r=0, +pd_radius=0.0, pd_radius_cap=0.0, pd_length=0.0, pd_theta=0.0, pd_phi=0.0) +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| sld | 1e-6/Ang^2 | ([-inf, inf]) Cylinder scattering length density. | 4 | +| sld_solvent | 1e-6/Ang^2 | ([-inf, inf]) Solvent scattering length density. | 1 | +| radius | Ang | ([0, inf]) Cylinder radius. | 20 | +| radius_cap | Ang | ([0, inf]) Cap radius. | 20 | +| length | Ang | ([0, inf]) Cylinder length. | 400 | +| theta | | | 60 | +| phi | | | 60 | +| model_scale | | Global scale factor for scattering kernel. For systems without inter-particle interference, the form factors can be related to the scattering intensity by the particle volume fraction. | 1.0 | +| model_abs | | Absorption cross section density at 2200 m/s. | 0.0 | +| xwidth | m | ([-inf, inf]) Horiz. dimension of sample, as a width. | 0.01 | +| yheight | m | ([-inf, inf]) vert . dimension of sample, as a height for cylinder/box | 0.01 | +| zdepth | m | ([-inf, inf]) depth of sample | 0.005 | +| R | m | Outer radius of sample in (x,z) plane for cylinder/sphere. | 0 | +| target_x | m | relative focus target position. | 0 | +| target_y | m | relative focus target position. | 0 | +| target_z | m | relative focus target position. | 1 | +| target_index | | Relative index of component to focus at, e.g. next is +1. | 1 | +| focus_xw | m | horiz. dimension of a rectangular area. | 0.5 | +| focus_yh | m | , vert. dimension of a rectangular area. | 0.5 | +| focus_aw | deg | , horiz. angular dimension of a rectangular area. | 0 | +| focus_ah | deg | , vert. angular dimension of a rectangular area. | 0 | +| focus_r | m | case of circular focusing, focusing radius. | 0 | +| pd_radius | | (0,inf) defined as (dx/x), where x is de mean value and dx the standard devition of the variable. | 0.0 | +| pd_radius_cap | | (0,inf) defined as (dx/x), where x is de mean value and dx the standard devition of the variable. | 0.0 | +| pd_length | | (0,inf) defined as (dx/x), where x is de mean value and dx the standard devition of the variable. | 0.0 | +| pd_theta | | (0,360) defined as (dx/x), where x is de mean value and dx the standard devition of the variable. | 0.0 | +| pd_phi | | (0,360) defined as (dx/x), where x is de mean value and dx the standard devition of the variable | 0.0 | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/sasmodels/SasView_capped_cylinder_aniso.comp) for `SasView_capped_cylinder_aniso.comp`. + +--- + +*Generated on mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/sasmodels/SasView_core_multi_shell.md b/mcstas-comps/sasmodels/SasView_core_multi_shell.md new file mode 100644 index 000000000..b463bf83a --- /dev/null +++ b/mcstas-comps/sasmodels/SasView_core_multi_shell.md @@ -0,0 +1,38 @@ +# The `SasView_core_multi_shell` Component + +*McStas: SasView core_multi_shell model component as sample description.* + +## Identification + +- **Site:** +- **Author:** Jose Robledo +- **Origin:** FZJ / DTU / ESS DMSC +- **Date:** + +## Description + +```text +SasView_core_multi_shell component, generated from core_multi_shell.c in sasmodels. + +Example: +SasView_core_multi_shell(sld_core, radius, sld_solvent, n, sld[n], thickness[n], +model_scale=1.0, model_abs=0.0, xwidth=0.01, yheight=0.01, zdepth=0.005, R=0, +int target_index=1, target_x=0, target_y=0, target_z=1, +focus_xw=0.5, focus_yh=0.5, focus_aw=0, focus_ah=0, focus_r=0, +pd_radius=0.0, pd_thickness[n]=0.0) +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/sasmodels/SasView_core_multi_shell.comp) for `SasView_core_multi_shell.comp`. + +--- + +*Generated on mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/sasmodels/SasView_core_shell_bicelle.md b/mcstas-comps/sasmodels/SasView_core_shell_bicelle.md new file mode 100644 index 000000000..627f6b3a3 --- /dev/null +++ b/mcstas-comps/sasmodels/SasView_core_shell_bicelle.md @@ -0,0 +1,65 @@ +# The `SasView_core_shell_bicelle` Component + +*McStas: SasView core_shell_bicelle model component as sample description.* + +## Identification + +- **Site:** +- **Author:** Jose Robledo +- **Origin:** FZJ / DTU / ESS DMSC +- **Date:** + +## Description + +```text +SasView_core_shell_bicelle component, generated from core_shell_bicelle.c in sasmodels. + +Example: +SasView_core_shell_bicelle(radius, thick_rim, thick_face, length, sld_core, sld_face, sld_rim, sld_solvent, +model_scale=1.0, model_abs=0.0, xwidth=0.01, yheight=0.01, zdepth=0.005, R=0, +int target_index=1, target_x=0, target_y=0, target_z=1, +focus_xw=0.5, focus_yh=0.5, focus_aw=0, focus_ah=0, focus_r=0, +pd_radius=0.0, pd_thick_rim=0.0, pd_thick_face=0.0, pd_length=0.0) +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| radius | Ang | ([0, inf]) Cylinder core radius. | 80 | +| thick_rim | Ang | ([0, inf]) Rim shell thickness. | 10 | +| thick_face | Ang | ([0, inf]) Cylinder face thickness. | 10 | +| length | Ang | ([0, inf]) Cylinder length. | 50 | +| sld_core | 1e-6/Ang^2 | ([-inf, inf]) Cylinder core scattering length density. | 1 | +| sld_face | 1e-6/Ang^2 | ([-inf, inf]) Cylinder face scattering length density. | 4 | +| sld_rim | 1e-6/Ang^2 | ([-inf, inf]) Cylinder rim scattering length density. | 4 | +| sld_solvent | 1e-6/Ang^2 | ([-inf, inf]) Solvent scattering length density. | 1 | +| model_scale | | Global scale factor for scattering kernel. For systems without inter-particle interference, the form factors can be related to the scattering intensity by the particle volume fraction. | 1.0 | +| model_abs | | Absorption cross section density at 2200 m/s. | 0.0 | +| xwidth | m | ([-inf, inf]) Horiz. dimension of sample, as a width. | 0.01 | +| yheight | m | ([-inf, inf]) vert . dimension of sample, as a height for cylinder/box | 0.01 | +| zdepth | m | ([-inf, inf]) depth of sample | 0.005 | +| R | m | Outer radius of sample in (x,z) plane for cylinder/sphere. | 0 | +| target_x | m | relative focus target position. | 0 | +| target_y | m | relative focus target position. | 0 | +| target_z | m | relative focus target position. | 1 | +| target_index | | Relative index of component to focus at, e.g. next is +1. | 1 | +| focus_xw | m | horiz. dimension of a rectangular area. | 0.5 | +| focus_yh | m | , vert. dimension of a rectangular area. | 0.5 | +| focus_aw | deg | , horiz. angular dimension of a rectangular area. | 0 | +| focus_ah | deg | , vert. angular dimension of a rectangular area. | 0 | +| focus_r | m | case of circular focusing, focusing radius. | 0 | +| pd_radius | | (0,inf) defined as (dx/x), where x is de mean value and dx the standard devition of the variable. | 0.0 | +| pd_thick_rim | | (0,inf) defined as (dx/x), where x is de mean value and dx the standard devition of the variable. | 0.0 | +| pd_thick_face | | (0,inf) defined as (dx/x), where x is de mean value and dx the standard devition of the variable. | 0.0 | +| pd_length | | (0,inf) defined as (dx/x), where x is de mean value and dx the standard devition of the variable | 0.0 | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/sasmodels/SasView_core_shell_bicelle.comp) for `SasView_core_shell_bicelle.comp`. + +--- + +*Generated on mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/sasmodels/SasView_core_shell_bicelle_aniso.md b/mcstas-comps/sasmodels/SasView_core_shell_bicelle_aniso.md new file mode 100644 index 000000000..b86eff05a --- /dev/null +++ b/mcstas-comps/sasmodels/SasView_core_shell_bicelle_aniso.md @@ -0,0 +1,69 @@ +# The `SasView_core_shell_bicelle_aniso` Component + +*McStas: SasView core_shell_bicelle model component as sample description.* + +## Identification + +- **Site:** +- **Author:** Jose Robledo +- **Origin:** FZJ / DTU / ESS DMSC +- **Date:** + +## Description + +```text +SasView_core_shell_bicelle component, generated from core_shell_bicelle.c in sasmodels. + +Example: +SasView_core_shell_bicelle_aniso(radius, thick_rim, thick_face, length, sld_core, sld_face, sld_rim, sld_solvent, theta, phi, +model_scale=1.0, model_abs=0.0, xwidth=0.01, yheight=0.01, zdepth=0.005, R=0, +int target_index=1, target_x=0, target_y=0, target_z=1, +focus_xw=0.5, focus_yh=0.5, focus_aw=0, focus_ah=0, focus_r=0, +pd_radius=0.0, pd_thick_rim=0.0, pd_thick_face=0.0, pd_length=0.0, pd_theta=0.0, pd_phi=0.0) +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| radius | Ang | ([0, inf]) Cylinder core radius. | 80 | +| thick_rim | Ang | ([0, inf]) Rim shell thickness. | 10 | +| thick_face | Ang | ([0, inf]) Cylinder face thickness. | 10 | +| length | Ang | ([0, inf]) Cylinder length. | 50 | +| sld_core | 1e-6/Ang^2 | ([-inf, inf]) Cylinder core scattering length density. | 1 | +| sld_face | 1e-6/Ang^2 | ([-inf, inf]) Cylinder face scattering length density. | 4 | +| sld_rim | 1e-6/Ang^2 | ([-inf, inf]) Cylinder rim scattering length density. | 4 | +| sld_solvent | 1e-6/Ang^2 | ([-inf, inf]) Solvent scattering length density. | 1 | +| theta | | | 90 | +| phi | | | 0 | +| model_scale | | Global scale factor for scattering kernel. For systems without inter-particle interference, the form factors can be related to the scattering intensity by the particle volume fraction. | 1.0 | +| model_abs | | Absorption cross section density at 2200 m/s. | 0.0 | +| xwidth | m | ([-inf, inf]) Horiz. dimension of sample, as a width. | 0.01 | +| yheight | m | ([-inf, inf]) vert . dimension of sample, as a height for cylinder/box | 0.01 | +| zdepth | m | ([-inf, inf]) depth of sample | 0.005 | +| R | m | Outer radius of sample in (x,z) plane for cylinder/sphere. | 0 | +| target_x | m | relative focus target position. | 0 | +| target_y | m | relative focus target position. | 0 | +| target_z | m | relative focus target position. | 1 | +| target_index | | Relative index of component to focus at, e.g. next is +1. | 1 | +| focus_xw | m | horiz. dimension of a rectangular area. | 0.5 | +| focus_yh | m | , vert. dimension of a rectangular area. | 0.5 | +| focus_aw | deg | , horiz. angular dimension of a rectangular area. | 0 | +| focus_ah | deg | , vert. angular dimension of a rectangular area. | 0 | +| focus_r | m | case of circular focusing, focusing radius. | 0 | +| pd_radius | | (0,inf) defined as (dx/x), where x is de mean value and dx the standard devition of the variable. | 0.0 | +| pd_thick_rim | | (0,inf) defined as (dx/x), where x is de mean value and dx the standard devition of the variable. | 0.0 | +| pd_thick_face | | (0,inf) defined as (dx/x), where x is de mean value and dx the standard devition of the variable. | 0.0 | +| pd_length | | (0,inf) defined as (dx/x), where x is de mean value and dx the standard devition of the variable. | 0.0 | +| pd_theta | | (0,360) defined as (dx/x), where x is de mean value and dx the standard devition of the variable. | 0.0 | +| pd_phi | | (0,360) defined as (dx/x), where x is de mean value and dx the standard devition of the variable | 0.0 | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/sasmodels/SasView_core_shell_bicelle_aniso.comp) for `SasView_core_shell_bicelle_aniso.comp`. + +--- + +*Generated on mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/sasmodels/SasView_core_shell_bicelle_elliptical.md b/mcstas-comps/sasmodels/SasView_core_shell_bicelle_elliptical.md new file mode 100644 index 000000000..78106483d --- /dev/null +++ b/mcstas-comps/sasmodels/SasView_core_shell_bicelle_elliptical.md @@ -0,0 +1,66 @@ +# The `SasView_core_shell_bicelle_elliptical` Component + +*McStas: SasView core_shell_bicelle_elliptical model component as sample description.* + +## Identification + +- **Site:** +- **Author:** Jose Robledo +- **Origin:** FZJ / DTU / ESS DMSC +- **Date:** + +## Description + +```text +SasView_core_shell_bicelle_elliptical component, generated from core_shell_bicelle_elliptical.c in sasmodels. + +Example: +SasView_core_shell_bicelle_elliptical(radius, x_core, thick_rim, thick_face, length, sld_core, sld_face, sld_rim, sld_solvent, +model_scale=1.0, model_abs=0.0, xwidth=0.01, yheight=0.01, zdepth=0.005, R=0, +int target_index=1, target_x=0, target_y=0, target_z=1, +focus_xw=0.5, focus_yh=0.5, focus_aw=0, focus_ah=0, focus_r=0, +pd_radius=0.0, pd_thick_rim=0.0, pd_thick_face=0.0, pd_length=0.0) +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| radius | Ang | ([0, inf]) Cylinder core radius r_minor. | 30 | +| x_core | None | ([0, inf]) Axial ratio of core, X = r_major/r_minor. | 3 | +| thick_rim | Ang | ([0, inf]) Rim shell thickness. | 8 | +| thick_face | Ang | ([0, inf]) Cylinder face thickness. | 14 | +| length | Ang | ([0, inf]) Cylinder length. | 50 | +| sld_core | 1e-6/Ang^2 | ([-inf, inf]) Cylinder core scattering length density. | 4 | +| sld_face | 1e-6/Ang^2 | ([-inf, inf]) Cylinder face scattering length density. | 7 | +| sld_rim | 1e-6/Ang^2 | ([-inf, inf]) Cylinder rim scattering length density. | 1 | +| sld_solvent | 1e-6/Ang^2 | ([-inf, inf]) Solvent scattering length density. | 6 | +| model_scale | | Global scale factor for scattering kernel. For systems without inter-particle interference, the form factors can be related to the scattering intensity by the particle volume fraction. | 1.0 | +| model_abs | | Absorption cross section density at 2200 m/s. | 0.0 | +| xwidth | m | ([-inf, inf]) Horiz. dimension of sample, as a width. | 0.01 | +| yheight | m | ([-inf, inf]) vert . dimension of sample, as a height for cylinder/box | 0.01 | +| zdepth | m | ([-inf, inf]) depth of sample | 0.005 | +| R | m | Outer radius of sample in (x,z) plane for cylinder/sphere. | 0 | +| target_x | m | relative focus target position. | 0 | +| target_y | m | relative focus target position. | 0 | +| target_z | m | relative focus target position. | 1 | +| target_index | | Relative index of component to focus at, e.g. next is +1. | 1 | +| focus_xw | m | horiz. dimension of a rectangular area. | 0.5 | +| focus_yh | m | , vert. dimension of a rectangular area. | 0.5 | +| focus_aw | deg | , horiz. angular dimension of a rectangular area. | 0 | +| focus_ah | deg | , vert. angular dimension of a rectangular area. | 0 | +| focus_r | m | case of circular focusing, focusing radius. | 0 | +| pd_radius | | (0,inf) defined as (dx/x), where x is de mean value and dx the standard devition of the variable. | 0.0 | +| pd_thick_rim | | (0,inf) defined as (dx/x), where x is de mean value and dx the standard devition of the variable. | 0.0 | +| pd_thick_face | | (0,inf) defined as (dx/x), where x is de mean value and dx the standard devition of the variable. | 0.0 | +| pd_length | | (0,inf) defined as (dx/x), where x is de mean value and dx the standard devition of the variable | 0.0 | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/sasmodels/SasView_core_shell_bicelle_elliptical.comp) for `SasView_core_shell_bicelle_elliptical.comp`. + +--- + +*Generated on mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/sasmodels/SasView_core_shell_bicelle_elliptical_aniso.md b/mcstas-comps/sasmodels/SasView_core_shell_bicelle_elliptical_aniso.md new file mode 100644 index 000000000..743135410 --- /dev/null +++ b/mcstas-comps/sasmodels/SasView_core_shell_bicelle_elliptical_aniso.md @@ -0,0 +1,72 @@ +# The `SasView_core_shell_bicelle_elliptical_aniso` Component + +*McStas: SasView core_shell_bicelle_elliptical model component as sample description.* + +## Identification + +- **Site:** +- **Author:** Jose Robledo +- **Origin:** FZJ / DTU / ESS DMSC +- **Date:** + +## Description + +```text +SasView_core_shell_bicelle_elliptical component, generated from core_shell_bicelle_elliptical.c in sasmodels. + +Example: +SasView_core_shell_bicelle_elliptical_aniso(radius, x_core, thick_rim, thick_face, length, sld_core, sld_face, sld_rim, sld_solvent, theta, phi, Psi, +model_scale=1.0, model_abs=0.0, xwidth=0.01, yheight=0.01, zdepth=0.005, R=0, +int target_index=1, target_x=0, target_y=0, target_z=1, +focus_xw=0.5, focus_yh=0.5, focus_aw=0, focus_ah=0, focus_r=0, +pd_radius=0.0, pd_thick_rim=0.0, pd_thick_face=0.0, pd_length=0.0, pd_theta=0.0, pd_phi=0.0, pd_Psi=0.0) +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| radius | Ang | ([0, inf]) Cylinder core radius r_minor. | 30 | +| x_core | None | ([0, inf]) Axial ratio of core, X = r_major/r_minor. | 3 | +| thick_rim | Ang | ([0, inf]) Rim shell thickness. | 8 | +| thick_face | Ang | ([0, inf]) Cylinder face thickness. | 14 | +| length | Ang | ([0, inf]) Cylinder length. | 50 | +| sld_core | 1e-6/Ang^2 | ([-inf, inf]) Cylinder core scattering length density. | 4 | +| sld_face | 1e-6/Ang^2 | ([-inf, inf]) Cylinder face scattering length density. | 7 | +| sld_rim | 1e-6/Ang^2 | ([-inf, inf]) Cylinder rim scattering length density. | 1 | +| sld_solvent | 1e-6/Ang^2 | ([-inf, inf]) Solvent scattering length density. | 6 | +| theta | | | 90.0 | +| phi | | | 0 | +| Psi | | | 0 | +| model_scale | | Global scale factor for scattering kernel. For systems without inter-particle interference, the form factors can be related to the scattering intensity by the particle volume fraction. | 1.0 | +| model_abs | | Absorption cross section density at 2200 m/s. | 0.0 | +| xwidth | m | ([-inf, inf]) Horiz. dimension of sample, as a width. | 0.01 | +| yheight | m | ([-inf, inf]) vert . dimension of sample, as a height for cylinder/box | 0.01 | +| zdepth | m | ([-inf, inf]) depth of sample | 0.005 | +| R | m | Outer radius of sample in (x,z) plane for cylinder/sphere. | 0 | +| target_x | m | relative focus target position. | 0 | +| target_y | m | relative focus target position. | 0 | +| target_z | m | relative focus target position. | 1 | +| target_index | | Relative index of component to focus at, e.g. next is +1. | 1 | +| focus_xw | m | horiz. dimension of a rectangular area. | 0.5 | +| focus_yh | m | , vert. dimension of a rectangular area. | 0.5 | +| focus_aw | deg | , horiz. angular dimension of a rectangular area. | 0 | +| focus_ah | deg | , vert. angular dimension of a rectangular area. | 0 | +| focus_r | m | case of circular focusing, focusing radius. | 0 | +| pd_radius | | (0,inf) defined as (dx/x), where x is de mean value and dx the standard devition of the variable. | 0.0 | +| pd_thick_rim | | (0,inf) defined as (dx/x), where x is de mean value and dx the standard devition of the variable. | 0.0 | +| pd_thick_face | | (0,inf) defined as (dx/x), where x is de mean value and dx the standard devition of the variable. | 0.0 | +| pd_length | | (0,inf) defined as (dx/x), where x is de mean value and dx the standard devition of the variable. | 0.0 | +| pd_theta | | (0,360) defined as (dx/x), where x is de mean value and dx the standard devition of the variable. | 0.0 | +| pd_phi | | (0,360) defined as (dx/x), where x is de mean value and dx the standard devition of the variable. | 0.0 | +| pd_Psi | | (0,360) defined as (dx/x), where x is de mean value and dx the standard devition of the variable | 0.0 | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/sasmodels/SasView_core_shell_bicelle_elliptical_aniso.comp) for `SasView_core_shell_bicelle_elliptical_aniso.comp`. + +--- + +*Generated on mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/sasmodels/SasView_core_shell_bicelle_elliptical_belt_rough.md b/mcstas-comps/sasmodels/SasView_core_shell_bicelle_elliptical_belt_rough.md new file mode 100644 index 000000000..2e1fbda90 --- /dev/null +++ b/mcstas-comps/sasmodels/SasView_core_shell_bicelle_elliptical_belt_rough.md @@ -0,0 +1,67 @@ +# The `SasView_core_shell_bicelle_elliptical_belt_rough` Component + +*McStas: SasView core_shell_bicelle_elliptical_belt_rough model component as sample description.* + +## Identification + +- **Site:** +- **Author:** Jose Robledo +- **Origin:** FZJ / DTU / ESS DMSC +- **Date:** + +## Description + +```text +SasView_core_shell_bicelle_elliptical_belt_rough component, generated from core_shell_bicelle_elliptical_belt_rough.c in sasmodels. + +Example: +SasView_core_shell_bicelle_elliptical_belt_rough(radius, x_core, thick_rim, thick_face, length, sld_core, sld_face, sld_rim, sld_solvent, sigma, +model_scale=1.0, model_abs=0.0, xwidth=0.01, yheight=0.01, zdepth=0.005, R=0, +int target_index=1, target_x=0, target_y=0, target_z=1, +focus_xw=0.5, focus_yh=0.5, focus_aw=0, focus_ah=0, focus_r=0, +pd_radius=0.0, pd_thick_rim=0.0, pd_thick_face=0.0, pd_length=0.0) +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| radius | Ang | ([0, inf]) Cylinder core radius r_minor. | 30 | +| x_core | None | ([0, inf]) Axial ratio of core, X = r_major/r_minor. | 3 | +| thick_rim | Ang | ([0, inf]) Rim or belt shell thickness. | 8 | +| thick_face | Ang | ([0, inf]) Cylinder face thickness. | 14 | +| length | Ang | ([0, inf]) Cylinder length. | 50 | +| sld_core | 1e-6/Ang^2 | ([-inf, inf]) Cylinder core scattering length density. | 4 | +| sld_face | 1e-6/Ang^2 | ([-inf, inf]) Cylinder face scattering length density. | 7 | +| sld_rim | 1e-6/Ang^2 | ([-inf, inf]) Cylinder rim scattering length density. | 1 | +| sld_solvent | 1e-6/Ang^2 | ([-inf, inf]) Solvent scattering length density. | 6 | +| sigma | Ang | ([0, inf]) Interfacial roughness. | 0 | +| model_scale | | Global scale factor for scattering kernel. For systems without inter-particle interference, the form factors can be related to the scattering intensity by the particle volume fraction. | 1.0 | +| model_abs | | Absorption cross section density at 2200 m/s. | 0.0 | +| xwidth | m | ([-inf, inf]) Horiz. dimension of sample, as a width. | 0.01 | +| yheight | m | ([-inf, inf]) vert . dimension of sample, as a height for cylinder/box | 0.01 | +| zdepth | m | ([-inf, inf]) depth of sample | 0.005 | +| R | m | Outer radius of sample in (x,z) plane for cylinder/sphere. | 0 | +| target_x | m | relative focus target position. | 0 | +| target_y | m | relative focus target position. | 0 | +| target_z | m | relative focus target position. | 1 | +| target_index | | Relative index of component to focus at, e.g. next is +1. | 1 | +| focus_xw | m | horiz. dimension of a rectangular area. | 0.5 | +| focus_yh | m | , vert. dimension of a rectangular area. | 0.5 | +| focus_aw | deg | , horiz. angular dimension of a rectangular area. | 0 | +| focus_ah | deg | , vert. angular dimension of a rectangular area. | 0 | +| focus_r | m | case of circular focusing, focusing radius. | 0 | +| pd_radius | | (0,inf) defined as (dx/x), where x is de mean value and dx the standard devition of the variable. | 0.0 | +| pd_thick_rim | | (0,inf) defined as (dx/x), where x is de mean value and dx the standard devition of the variable. | 0.0 | +| pd_thick_face | | (0,inf) defined as (dx/x), where x is de mean value and dx the standard devition of the variable. | 0.0 | +| pd_length | | (0,inf) defined as (dx/x), where x is de mean value and dx the standard devition of the variable | 0.0 | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/sasmodels/SasView_core_shell_bicelle_elliptical_belt_rough.comp) for `SasView_core_shell_bicelle_elliptical_belt_rough.comp`. + +--- + +*Generated on mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/sasmodels/SasView_core_shell_bicelle_elliptical_belt_rough_aniso.md b/mcstas-comps/sasmodels/SasView_core_shell_bicelle_elliptical_belt_rough_aniso.md new file mode 100644 index 000000000..7a747e9a4 --- /dev/null +++ b/mcstas-comps/sasmodels/SasView_core_shell_bicelle_elliptical_belt_rough_aniso.md @@ -0,0 +1,73 @@ +# The `SasView_core_shell_bicelle_elliptical_belt_rough_aniso` Component + +*McStas: SasView core_shell_bicelle_elliptical_belt_rough model component as sample description.* + +## Identification + +- **Site:** +- **Author:** Jose Robledo +- **Origin:** FZJ / DTU / ESS DMSC +- **Date:** + +## Description + +```text +SasView_core_shell_bicelle_elliptical_belt_rough component, generated from core_shell_bicelle_elliptical_belt_rough.c in sasmodels. + +Example: +SasView_core_shell_bicelle_elliptical_belt_rough_aniso(radius, x_core, thick_rim, thick_face, length, sld_core, sld_face, sld_rim, sld_solvent, sigma, theta, phi, Psi, +model_scale=1.0, model_abs=0.0, xwidth=0.01, yheight=0.01, zdepth=0.005, R=0, +int target_index=1, target_x=0, target_y=0, target_z=1, +focus_xw=0.5, focus_yh=0.5, focus_aw=0, focus_ah=0, focus_r=0, +pd_radius=0.0, pd_thick_rim=0.0, pd_thick_face=0.0, pd_length=0.0, pd_theta=0.0, pd_phi=0.0, pd_Psi=0.0) +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| radius | Ang | ([0, inf]) Cylinder core radius r_minor. | 30 | +| x_core | None | ([0, inf]) Axial ratio of core, X = r_major/r_minor. | 3 | +| thick_rim | Ang | ([0, inf]) Rim or belt shell thickness. | 8 | +| thick_face | Ang | ([0, inf]) Cylinder face thickness. | 14 | +| length | Ang | ([0, inf]) Cylinder length. | 50 | +| sld_core | 1e-6/Ang^2 | ([-inf, inf]) Cylinder core scattering length density. | 4 | +| sld_face | 1e-6/Ang^2 | ([-inf, inf]) Cylinder face scattering length density. | 7 | +| sld_rim | 1e-6/Ang^2 | ([-inf, inf]) Cylinder rim scattering length density. | 1 | +| sld_solvent | 1e-6/Ang^2 | ([-inf, inf]) Solvent scattering length density. | 6 | +| sigma | Ang | ([0, inf]) Interfacial roughness. | 0 | +| theta | | | 90.0 | +| phi | | | 0 | +| Psi | | | 0 | +| model_scale | | Global scale factor for scattering kernel. For systems without inter-particle interference, the form factors can be related to the scattering intensity by the particle volume fraction. | 1.0 | +| model_abs | | Absorption cross section density at 2200 m/s. | 0.0 | +| xwidth | m | ([-inf, inf]) Horiz. dimension of sample, as a width. | 0.01 | +| yheight | m | ([-inf, inf]) vert . dimension of sample, as a height for cylinder/box | 0.01 | +| zdepth | m | ([-inf, inf]) depth of sample | 0.005 | +| R | m | Outer radius of sample in (x,z) plane for cylinder/sphere. | 0 | +| target_x | m | relative focus target position. | 0 | +| target_y | m | relative focus target position. | 0 | +| target_z | m | relative focus target position. | 1 | +| target_index | | Relative index of component to focus at, e.g. next is +1. | 1 | +| focus_xw | m | horiz. dimension of a rectangular area. | 0.5 | +| focus_yh | m | , vert. dimension of a rectangular area. | 0.5 | +| focus_aw | deg | , horiz. angular dimension of a rectangular area. | 0 | +| focus_ah | deg | , vert. angular dimension of a rectangular area. | 0 | +| focus_r | m | case of circular focusing, focusing radius. | 0 | +| pd_radius | | (0,inf) defined as (dx/x), where x is de mean value and dx the standard devition of the variable. | 0.0 | +| pd_thick_rim | | (0,inf) defined as (dx/x), where x is de mean value and dx the standard devition of the variable. | 0.0 | +| pd_thick_face | | (0,inf) defined as (dx/x), where x is de mean value and dx the standard devition of the variable. | 0.0 | +| pd_length | | (0,inf) defined as (dx/x), where x is de mean value and dx the standard devition of the variable. | 0.0 | +| pd_theta | | (0,360) defined as (dx/x), where x is de mean value and dx the standard devition of the variable. | 0.0 | +| pd_phi | | (0,360) defined as (dx/x), where x is de mean value and dx the standard devition of the variable. | 0.0 | +| pd_Psi | | (0,360) defined as (dx/x), where x is de mean value and dx the standard devition of the variable | 0.0 | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/sasmodels/SasView_core_shell_bicelle_elliptical_belt_rough_aniso.comp) for `SasView_core_shell_bicelle_elliptical_belt_rough_aniso.comp`. + +--- + +*Generated on mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/sasmodels/SasView_core_shell_cylinder.md b/mcstas-comps/sasmodels/SasView_core_shell_cylinder.md new file mode 100644 index 000000000..afe3224b0 --- /dev/null +++ b/mcstas-comps/sasmodels/SasView_core_shell_cylinder.md @@ -0,0 +1,62 @@ +# The `SasView_core_shell_cylinder` Component + +*McStas: SasView core_shell_cylinder model component as sample description.* + +## Identification + +- **Site:** +- **Author:** Jose Robledo +- **Origin:** FZJ / DTU / ESS DMSC +- **Date:** + +## Description + +```text +SasView_core_shell_cylinder component, generated from core_shell_cylinder.c in sasmodels. + +Example: +SasView_core_shell_cylinder(sld_core, sld_shell, sld_solvent, radius, thickness, length, +model_scale=1.0, model_abs=0.0, xwidth=0.01, yheight=0.01, zdepth=0.005, R=0, +int target_index=1, target_x=0, target_y=0, target_z=1, +focus_xw=0.5, focus_yh=0.5, focus_aw=0, focus_ah=0, focus_r=0, +pd_radius=0.0, pd_thickness=0.0, pd_length=0.0) +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| sld_core | 1e-6/Ang^2 | ([-inf, inf]) Cylinder core scattering length density. | 4 | +| sld_shell | 1e-6/Ang^2 | ([-inf, inf]) Cylinder shell scattering length density. | 4 | +| sld_solvent | 1e-6/Ang^2 | ([-inf, inf]) Solvent scattering length density. | 1 | +| radius | Ang | ([0, inf]) Cylinder core radius. | 20 | +| thickness | Ang | ([0, inf]) Cylinder shell thickness. | 20 | +| length | Ang | ([0, inf]) Cylinder length. | 400 | +| model_scale | | Global scale factor for scattering kernel. For systems without inter-particle interference, the form factors can be related to the scattering intensity by the particle volume fraction. | 1.0 | +| model_abs | | Absorption cross section density at 2200 m/s. | 0.0 | +| xwidth | m | ([-inf, inf]) Horiz. dimension of sample, as a width. | 0.01 | +| yheight | m | ([-inf, inf]) vert . dimension of sample, as a height for cylinder/box | 0.01 | +| zdepth | m | ([-inf, inf]) depth of sample | 0.005 | +| R | m | Outer radius of sample in (x,z) plane for cylinder/sphere. | 0 | +| target_x | m | relative focus target position. | 0 | +| target_y | m | relative focus target position. | 0 | +| target_z | m | relative focus target position. | 1 | +| target_index | | Relative index of component to focus at, e.g. next is +1. | 1 | +| focus_xw | m | horiz. dimension of a rectangular area. | 0.5 | +| focus_yh | m | , vert. dimension of a rectangular area. | 0.5 | +| focus_aw | deg | , horiz. angular dimension of a rectangular area. | 0 | +| focus_ah | deg | , vert. angular dimension of a rectangular area. | 0 | +| focus_r | m | case of circular focusing, focusing radius. | 0 | +| pd_radius | | (0,inf) defined as (dx/x), where x is de mean value and dx the standard devition of the variable. | 0.0 | +| pd_thickness | | (0,inf) defined as (dx/x), where x is de mean value and dx the standard devition of the variable. | 0.0 | +| pd_length | | (0,inf) defined as (dx/x), where x is de mean value and dx the standard devition of the variable | 0.0 | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/sasmodels/SasView_core_shell_cylinder.comp) for `SasView_core_shell_cylinder.comp`. + +--- + +*Generated on mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/sasmodels/SasView_core_shell_cylinder_aniso.md b/mcstas-comps/sasmodels/SasView_core_shell_cylinder_aniso.md new file mode 100644 index 000000000..875ab091d --- /dev/null +++ b/mcstas-comps/sasmodels/SasView_core_shell_cylinder_aniso.md @@ -0,0 +1,66 @@ +# The `SasView_core_shell_cylinder_aniso` Component + +*McStas: SasView core_shell_cylinder model component as sample description.* + +## Identification + +- **Site:** +- **Author:** Jose Robledo +- **Origin:** FZJ / DTU / ESS DMSC +- **Date:** + +## Description + +```text +SasView_core_shell_cylinder component, generated from core_shell_cylinder.c in sasmodels. + +Example: +SasView_core_shell_cylinder_aniso(sld_core, sld_shell, sld_solvent, radius, thickness, length, theta, phi, +model_scale=1.0, model_abs=0.0, xwidth=0.01, yheight=0.01, zdepth=0.005, R=0, +int target_index=1, target_x=0, target_y=0, target_z=1, +focus_xw=0.5, focus_yh=0.5, focus_aw=0, focus_ah=0, focus_r=0, +pd_radius=0.0, pd_thickness=0.0, pd_length=0.0, pd_theta=0.0, pd_phi=0.0) +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| sld_core | 1e-6/Ang^2 | ([-inf, inf]) Cylinder core scattering length density. | 4 | +| sld_shell | 1e-6/Ang^2 | ([-inf, inf]) Cylinder shell scattering length density. | 4 | +| sld_solvent | 1e-6/Ang^2 | ([-inf, inf]) Solvent scattering length density. | 1 | +| radius | Ang | ([0, inf]) Cylinder core radius. | 20 | +| thickness | Ang | ([0, inf]) Cylinder shell thickness. | 20 | +| length | Ang | ([0, inf]) Cylinder length. | 400 | +| theta | | | 60 | +| phi | | | 60 | +| model_scale | | Global scale factor for scattering kernel. For systems without inter-particle interference, the form factors can be related to the scattering intensity by the particle volume fraction. | 1.0 | +| model_abs | | Absorption cross section density at 2200 m/s. | 0.0 | +| xwidth | m | ([-inf, inf]) Horiz. dimension of sample, as a width. | 0.01 | +| yheight | m | ([-inf, inf]) vert . dimension of sample, as a height for cylinder/box | 0.01 | +| zdepth | m | ([-inf, inf]) depth of sample | 0.005 | +| R | m | Outer radius of sample in (x,z) plane for cylinder/sphere. | 0 | +| target_x | m | relative focus target position. | 0 | +| target_y | m | relative focus target position. | 0 | +| target_z | m | relative focus target position. | 1 | +| target_index | | Relative index of component to focus at, e.g. next is +1. | 1 | +| focus_xw | m | horiz. dimension of a rectangular area. | 0.5 | +| focus_yh | m | , vert. dimension of a rectangular area. | 0.5 | +| focus_aw | deg | , horiz. angular dimension of a rectangular area. | 0 | +| focus_ah | deg | , vert. angular dimension of a rectangular area. | 0 | +| focus_r | m | case of circular focusing, focusing radius. | 0 | +| pd_radius | | (0,inf) defined as (dx/x), where x is de mean value and dx the standard devition of the variable. | 0.0 | +| pd_thickness | | (0,inf) defined as (dx/x), where x is de mean value and dx the standard devition of the variable. | 0.0 | +| pd_length | | (0,inf) defined as (dx/x), where x is de mean value and dx the standard devition of the variable. | 0.0 | +| pd_theta | | (0,360) defined as (dx/x), where x is de mean value and dx the standard devition of the variable. | 0.0 | +| pd_phi | | (0,360) defined as (dx/x), where x is de mean value and dx the standard devition of the variable | 0.0 | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/sasmodels/SasView_core_shell_cylinder_aniso.comp) for `SasView_core_shell_cylinder_aniso.comp`. + +--- + +*Generated on mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/sasmodels/SasView_core_shell_ellipsoid.md b/mcstas-comps/sasmodels/SasView_core_shell_ellipsoid.md new file mode 100644 index 000000000..137aabfdf --- /dev/null +++ b/mcstas-comps/sasmodels/SasView_core_shell_ellipsoid.md @@ -0,0 +1,62 @@ +# The `SasView_core_shell_ellipsoid` Component + +*McStas: SasView core_shell_ellipsoid model component as sample description.* + +## Identification + +- **Site:** +- **Author:** Jose Robledo +- **Origin:** FZJ / DTU / ESS DMSC +- **Date:** + +## Description + +```text +SasView_core_shell_ellipsoid component, generated from core_shell_ellipsoid.c in sasmodels. + +Example: +SasView_core_shell_ellipsoid(radius_equat_core, x_core, thick_shell, x_polar_shell, sld_core, sld_shell, sld_solvent, +model_scale=1.0, model_abs=0.0, xwidth=0.01, yheight=0.01, zdepth=0.005, R=0, +int target_index=1, target_x=0, target_y=0, target_z=1, +focus_xw=0.5, focus_yh=0.5, focus_aw=0, focus_ah=0, focus_r=0, +pd_radius_equat_core=0.0, pd_thick_shell=0.0) +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| radius_equat_core | Ang | ([0, inf]) Equatorial radius of core. | 20 | +| x_core | None | ([0, inf]) axial ratio of core, X = r_polar/r_equatorial. | 3 | +| thick_shell | Ang | ([0, inf]) thickness of shell at equator. | 30 | +| x_polar_shell | | ([0, inf]) ratio of thickness of shell at pole to that at equator. | 1 | +| sld_core | 1e-6/Ang^2 | ([-inf, inf]) Core scattering length density. | 2 | +| sld_shell | 1e-6/Ang^2 | ([-inf, inf]) Shell scattering length density. | 1 | +| sld_solvent | 1e-6/Ang^2 | ([-inf, inf]) Solvent scattering length density. | 6.3 | +| model_scale | | Global scale factor for scattering kernel. For systems without inter-particle interference, the form factors can be related to the scattering intensity by the particle volume fraction. | 1.0 | +| model_abs | | Absorption cross section density at 2200 m/s. | 0.0 | +| xwidth | m | ([-inf, inf]) Horiz. dimension of sample, as a width. | 0.01 | +| yheight | m | ([-inf, inf]) vert . dimension of sample, as a height for cylinder/box | 0.01 | +| zdepth | m | ([-inf, inf]) depth of sample | 0.005 | +| R | m | Outer radius of sample in (x,z) plane for cylinder/sphere. | 0 | +| target_x | m | relative focus target position. | 0 | +| target_y | m | relative focus target position. | 0 | +| target_z | m | relative focus target position. | 1 | +| target_index | | Relative index of component to focus at, e.g. next is +1. | 1 | +| focus_xw | m | horiz. dimension of a rectangular area. | 0.5 | +| focus_yh | m | , vert. dimension of a rectangular area. | 0.5 | +| focus_aw | deg | , horiz. angular dimension of a rectangular area. | 0 | +| focus_ah | deg | , vert. angular dimension of a rectangular area. | 0 | +| focus_r | m | case of circular focusing, focusing radius. | 0 | +| pd_radius_equat_core | | (0,inf) defined as (dx/x), where x is de mean value and dx the standard devition of the variable. | 0.0 | +| pd_thick_shell | | (0,inf) defined as (dx/x), where x is de mean value and dx the standard devition of the variable | 0.0 | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/sasmodels/SasView_core_shell_ellipsoid.comp) for `SasView_core_shell_ellipsoid.comp`. + +--- + +*Generated on mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/sasmodels/SasView_core_shell_ellipsoid_aniso.md b/mcstas-comps/sasmodels/SasView_core_shell_ellipsoid_aniso.md new file mode 100644 index 000000000..bae8b5bb0 --- /dev/null +++ b/mcstas-comps/sasmodels/SasView_core_shell_ellipsoid_aniso.md @@ -0,0 +1,66 @@ +# The `SasView_core_shell_ellipsoid_aniso` Component + +*McStas: SasView core_shell_ellipsoid model component as sample description.* + +## Identification + +- **Site:** +- **Author:** Jose Robledo +- **Origin:** FZJ / DTU / ESS DMSC +- **Date:** + +## Description + +```text +SasView_core_shell_ellipsoid component, generated from core_shell_ellipsoid.c in sasmodels. + +Example: +SasView_core_shell_ellipsoid_aniso(radius_equat_core, x_core, thick_shell, x_polar_shell, sld_core, sld_shell, sld_solvent, theta, phi, +model_scale=1.0, model_abs=0.0, xwidth=0.01, yheight=0.01, zdepth=0.005, R=0, +int target_index=1, target_x=0, target_y=0, target_z=1, +focus_xw=0.5, focus_yh=0.5, focus_aw=0, focus_ah=0, focus_r=0, +pd_radius_equat_core=0.0, pd_thick_shell=0.0, pd_theta=0.0, pd_phi=0.0) +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| radius_equat_core | Ang | ([0, inf]) Equatorial radius of core. | 20 | +| x_core | None | ([0, inf]) axial ratio of core, X = r_polar/r_equatorial. | 3 | +| thick_shell | Ang | ([0, inf]) thickness of shell at equator. | 30 | +| x_polar_shell | | ([0, inf]) ratio of thickness of shell at pole to that at equator. | 1 | +| sld_core | 1e-6/Ang^2 | ([-inf, inf]) Core scattering length density. | 2 | +| sld_shell | 1e-6/Ang^2 | ([-inf, inf]) Shell scattering length density. | 1 | +| sld_solvent | 1e-6/Ang^2 | ([-inf, inf]) Solvent scattering length density. | 6.3 | +| theta | | | 0 | +| phi | | | 0 | +| model_scale | | Global scale factor for scattering kernel. For systems without inter-particle interference, the form factors can be related to the scattering intensity by the particle volume fraction. | 1.0 | +| model_abs | | Absorption cross section density at 2200 m/s. | 0.0 | +| xwidth | m | ([-inf, inf]) Horiz. dimension of sample, as a width. | 0.01 | +| yheight | m | ([-inf, inf]) vert . dimension of sample, as a height for cylinder/box | 0.01 | +| zdepth | m | ([-inf, inf]) depth of sample | 0.005 | +| R | m | Outer radius of sample in (x,z) plane for cylinder/sphere. | 0 | +| target_x | m | relative focus target position. | 0 | +| target_y | m | relative focus target position. | 0 | +| target_z | m | relative focus target position. | 1 | +| target_index | | Relative index of component to focus at, e.g. next is +1. | 1 | +| focus_xw | m | horiz. dimension of a rectangular area. | 0.5 | +| focus_yh | m | , vert. dimension of a rectangular area. | 0.5 | +| focus_aw | deg | , horiz. angular dimension of a rectangular area. | 0 | +| focus_ah | deg | , vert. angular dimension of a rectangular area. | 0 | +| focus_r | m | case of circular focusing, focusing radius. | 0 | +| pd_radius_equat_core | | (0,inf) defined as (dx/x), where x is de mean value and dx the standard devition of the variable. | 0.0 | +| pd_thick_shell | | (0,inf) defined as (dx/x), where x is de mean value and dx the standard devition of the variable. | 0.0 | +| pd_theta | | (0,360) defined as (dx/x), where x is de mean value and dx the standard devition of the variable. | 0.0 | +| pd_phi | | (0,360) defined as (dx/x), where x is de mean value and dx the standard devition of the variable | 0.0 | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/sasmodels/SasView_core_shell_ellipsoid_aniso.comp) for `SasView_core_shell_ellipsoid_aniso.comp`. + +--- + +*Generated on mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/sasmodels/SasView_core_shell_parallelepiped.md b/mcstas-comps/sasmodels/SasView_core_shell_parallelepiped.md new file mode 100644 index 000000000..79e7aa860 --- /dev/null +++ b/mcstas-comps/sasmodels/SasView_core_shell_parallelepiped.md @@ -0,0 +1,70 @@ +# The `SasView_core_shell_parallelepiped` Component + +*McStas: SasView core_shell_parallelepiped model component as sample description.* + +## Identification + +- **Site:** +- **Author:** Jose Robledo +- **Origin:** FZJ / DTU / ESS DMSC +- **Date:** + +## Description + +```text +SasView_core_shell_parallelepiped component, generated from core_shell_parallelepiped.c in sasmodels. + +Example: +SasView_core_shell_parallelepiped(sld_core, sld_a, sld_b, sld_c, sld_solvent, length_a, length_b, length_c, thick_rim_a, thick_rim_b, thick_rim_c, +model_scale=1.0, model_abs=0.0, xwidth=0.01, yheight=0.01, zdepth=0.005, R=0, +int target_index=1, target_x=0, target_y=0, target_z=1, +focus_xw=0.5, focus_yh=0.5, focus_aw=0, focus_ah=0, focus_r=0, +pd_length_a=0.0, pd_length_b=0.0, pd_length_c=0.0, pd_thick_rim_a=0.0, pd_thick_rim_b=0.0, pd_thick_rim_c=0.0) +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| sld_core | 1e-6/Ang^2 | ([-inf, inf]) Parallelepiped core scattering length density. | 1 | +| sld_a | 1e-6/Ang^2 | ([-inf, inf]) Parallelepiped A rim scattering length density. | 2 | +| sld_b | 1e-6/Ang^2 | ([-inf, inf]) Parallelepiped B rim scattering length density. | 4 | +| sld_c | 1e-6/Ang^2 | ([-inf, inf]) Parallelepiped C rim scattering length density. | 2 | +| sld_solvent | 1e-6/Ang^2 | ([-inf, inf]) Solvent scattering length density. | 6 | +| length_a | Ang | ([0, inf]) Shorter side of the parallelepiped. | 35 | +| length_b | Ang | ([0, inf]) Second side of the parallelepiped. | 75 | +| length_c | Ang | ([0, inf]) Larger side of the parallelepiped. | 400 | +| thick_rim_a | Ang | ([0, inf]) Thickness of A rim. | 10 | +| thick_rim_b | Ang | ([0, inf]) Thickness of B rim. | 10 | +| thick_rim_c | Ang | ([0, inf]) Thickness of C rim. | 10 | +| model_scale | | Global scale factor for scattering kernel. For systems without inter-particle interference, the form factors can be related to the scattering intensity by the particle volume fraction. | 1.0 | +| model_abs | | Absorption cross section density at 2200 m/s. | 0.0 | +| xwidth | m | ([-inf, inf]) Horiz. dimension of sample, as a width. | 0.01 | +| yheight | m | ([-inf, inf]) vert . dimension of sample, as a height for cylinder/box | 0.01 | +| zdepth | m | ([-inf, inf]) depth of sample | 0.005 | +| R | m | Outer radius of sample in (x,z) plane for cylinder/sphere. | 0 | +| target_x | m | relative focus target position. | 0 | +| target_y | m | relative focus target position. | 0 | +| target_z | m | relative focus target position. | 1 | +| target_index | | Relative index of component to focus at, e.g. next is +1. | 1 | +| focus_xw | m | horiz. dimension of a rectangular area. | 0.5 | +| focus_yh | m | , vert. dimension of a rectangular area. | 0.5 | +| focus_aw | deg | , horiz. angular dimension of a rectangular area. | 0 | +| focus_ah | deg | , vert. angular dimension of a rectangular area. | 0 | +| focus_r | m | case of circular focusing, focusing radius. | 0 | +| pd_length_a | | (0,inf) defined as (dx/x), where x is de mean value and dx the standard devition of the variable. | 0.0 | +| pd_length_b | | (0,inf) defined as (dx/x), where x is de mean value and dx the standard devition of the variable. | 0.0 | +| pd_length_c | | (0,inf) defined as (dx/x), where x is de mean value and dx the standard devition of the variable. | 0.0 | +| pd_thick_rim_a | | (0,inf) defined as (dx/x), where x is de mean value and dx the standard devition of the variable. | 0.0 | +| pd_thick_rim_b | | (0,inf) defined as (dx/x), where x is de mean value and dx the standard devition of the variable. | 0.0 | +| pd_thick_rim_c | | (0,inf) defined as (dx/x), where x is de mean value and dx the standard devition of the variable | 0.0 | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/sasmodels/SasView_core_shell_parallelepiped.comp) for `SasView_core_shell_parallelepiped.comp`. + +--- + +*Generated on mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/sasmodels/SasView_core_shell_parallelepiped_aniso.md b/mcstas-comps/sasmodels/SasView_core_shell_parallelepiped_aniso.md new file mode 100644 index 000000000..35d6a74b3 --- /dev/null +++ b/mcstas-comps/sasmodels/SasView_core_shell_parallelepiped_aniso.md @@ -0,0 +1,76 @@ +# The `SasView_core_shell_parallelepiped_aniso` Component + +*McStas: SasView core_shell_parallelepiped model component as sample description.* + +## Identification + +- **Site:** +- **Author:** Jose Robledo +- **Origin:** FZJ / DTU / ESS DMSC +- **Date:** + +## Description + +```text +SasView_core_shell_parallelepiped component, generated from core_shell_parallelepiped.c in sasmodels. + +Example: +SasView_core_shell_parallelepiped_aniso(sld_core, sld_a, sld_b, sld_c, sld_solvent, length_a, length_b, length_c, thick_rim_a, thick_rim_b, thick_rim_c, theta, phi, Psi, +model_scale=1.0, model_abs=0.0, xwidth=0.01, yheight=0.01, zdepth=0.005, R=0, +int target_index=1, target_x=0, target_y=0, target_z=1, +focus_xw=0.5, focus_yh=0.5, focus_aw=0, focus_ah=0, focus_r=0, +pd_length_a=0.0, pd_length_b=0.0, pd_length_c=0.0, pd_thick_rim_a=0.0, pd_thick_rim_b=0.0, pd_thick_rim_c=0.0, pd_theta=0.0, pd_phi=0.0, pd_Psi=0.0) +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| sld_core | 1e-6/Ang^2 | ([-inf, inf]) Parallelepiped core scattering length density. | 1 | +| sld_a | 1e-6/Ang^2 | ([-inf, inf]) Parallelepiped A rim scattering length density. | 2 | +| sld_b | 1e-6/Ang^2 | ([-inf, inf]) Parallelepiped B rim scattering length density. | 4 | +| sld_c | 1e-6/Ang^2 | ([-inf, inf]) Parallelepiped C rim scattering length density. | 2 | +| sld_solvent | 1e-6/Ang^2 | ([-inf, inf]) Solvent scattering length density. | 6 | +| length_a | Ang | ([0, inf]) Shorter side of the parallelepiped. | 35 | +| length_b | Ang | ([0, inf]) Second side of the parallelepiped. | 75 | +| length_c | Ang | ([0, inf]) Larger side of the parallelepiped. | 400 | +| thick_rim_a | Ang | ([0, inf]) Thickness of A rim. | 10 | +| thick_rim_b | Ang | ([0, inf]) Thickness of B rim. | 10 | +| thick_rim_c | Ang | ([0, inf]) Thickness of C rim. | 10 | +| theta | | | 0 | +| phi | | | 0 | +| Psi | | | 0 | +| model_scale | | Global scale factor for scattering kernel. For systems without inter-particle interference, the form factors can be related to the scattering intensity by the particle volume fraction. | 1.0 | +| model_abs | | Absorption cross section density at 2200 m/s. | 0.0 | +| xwidth | m | ([-inf, inf]) Horiz. dimension of sample, as a width. | 0.01 | +| yheight | m | ([-inf, inf]) vert . dimension of sample, as a height for cylinder/box | 0.01 | +| zdepth | m | ([-inf, inf]) depth of sample | 0.005 | +| R | m | Outer radius of sample in (x,z) plane for cylinder/sphere. | 0 | +| target_x | m | relative focus target position. | 0 | +| target_y | m | relative focus target position. | 0 | +| target_z | m | relative focus target position. | 1 | +| target_index | | Relative index of component to focus at, e.g. next is +1. | 1 | +| focus_xw | m | horiz. dimension of a rectangular area. | 0.5 | +| focus_yh | m | , vert. dimension of a rectangular area. | 0.5 | +| focus_aw | deg | , horiz. angular dimension of a rectangular area. | 0 | +| focus_ah | deg | , vert. angular dimension of a rectangular area. | 0 | +| focus_r | m | case of circular focusing, focusing radius. | 0 | +| pd_length_a | | (0,inf) defined as (dx/x), where x is de mean value and dx the standard devition of the variable. | 0.0 | +| pd_length_b | | (0,inf) defined as (dx/x), where x is de mean value and dx the standard devition of the variable. | 0.0 | +| pd_length_c | | (0,inf) defined as (dx/x), where x is de mean value and dx the standard devition of the variable. | 0.0 | +| pd_thick_rim_a | | (0,inf) defined as (dx/x), where x is de mean value and dx the standard devition of the variable. | 0.0 | +| pd_thick_rim_b | | (0,inf) defined as (dx/x), where x is de mean value and dx the standard devition of the variable. | 0.0 | +| pd_thick_rim_c | | (0,inf) defined as (dx/x), where x is de mean value and dx the standard devition of the variable. | 0.0 | +| pd_theta | | (0,360) defined as (dx/x), where x is de mean value and dx the standard devition of the variable. | 0.0 | +| pd_phi | | (0,360) defined as (dx/x), where x is de mean value and dx the standard devition of the variable. | 0.0 | +| pd_Psi | | (0,360) defined as (dx/x), where x is de mean value and dx the standard devition of the variable | 0.0 | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/sasmodels/SasView_core_shell_parallelepiped_aniso.comp) for `SasView_core_shell_parallelepiped_aniso.comp`. + +--- + +*Generated on mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/sasmodels/SasView_core_shell_sphere.md b/mcstas-comps/sasmodels/SasView_core_shell_sphere.md new file mode 100644 index 000000000..1ecfa6936 --- /dev/null +++ b/mcstas-comps/sasmodels/SasView_core_shell_sphere.md @@ -0,0 +1,60 @@ +# The `SasView_core_shell_sphere` Component + +*McStas: SasView core_shell_sphere model component as sample description.* + +## Identification + +- **Site:** +- **Author:** Jose Robledo +- **Origin:** FZJ / DTU / ESS DMSC +- **Date:** + +## Description + +```text +SasView_core_shell_sphere component, generated from core_shell_sphere.c in sasmodels. + +Example: +SasView_core_shell_sphere(radius, thickness, sld_core, sld_shell, sld_solvent, +model_scale=1.0, model_abs=0.0, xwidth=0.01, yheight=0.01, zdepth=0.005, R=0, +int target_index=1, target_x=0, target_y=0, target_z=1, +focus_xw=0.5, focus_yh=0.5, focus_aw=0, focus_ah=0, focus_r=0, +pd_radius=0.0, pd_thickness=0.0) +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| radius | Ang | ([0, inf]) Sphere core radius. | 60.0 | +| thickness | Ang | ([0, inf]) Sphere shell thickness. | 10.0 | +| sld_core | 1e-6/Ang^2 | ([-inf, inf]) core scattering length density. | 1.0 | +| sld_shell | 1e-6/Ang^2 | ([-inf, inf]) shell scattering length density. | 2.0 | +| sld_solvent | 1e-6/Ang^2 | ([-inf, inf]) Solvent scattering length density. | 3.0 | +| model_scale | | Global scale factor for scattering kernel. For systems without inter-particle interference, the form factors can be related to the scattering intensity by the particle volume fraction. | 1.0 | +| model_abs | | Absorption cross section density at 2200 m/s. | 0.0 | +| xwidth | m | ([-inf, inf]) Horiz. dimension of sample, as a width. | 0.01 | +| yheight | m | ([-inf, inf]) vert . dimension of sample, as a height for cylinder/box | 0.01 | +| zdepth | m | ([-inf, inf]) depth of sample | 0.005 | +| R | m | Outer radius of sample in (x,z) plane for cylinder/sphere. | 0 | +| target_x | m | relative focus target position. | 0 | +| target_y | m | relative focus target position. | 0 | +| target_z | m | relative focus target position. | 1 | +| target_index | | Relative index of component to focus at, e.g. next is +1. | 1 | +| focus_xw | m | horiz. dimension of a rectangular area. | 0.5 | +| focus_yh | m | , vert. dimension of a rectangular area. | 0.5 | +| focus_aw | deg | , horiz. angular dimension of a rectangular area. | 0 | +| focus_ah | deg | , vert. angular dimension of a rectangular area. | 0 | +| focus_r | m | case of circular focusing, focusing radius. | 0 | +| pd_radius | | (0,inf) defined as (dx/x), where x is de mean value and dx the standard devition of the variable. | 0.0 | +| pd_thickness | | (0,inf) defined as (dx/x), where x is de mean value and dx the standard devition of the variable | 0.0 | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/sasmodels/SasView_core_shell_sphere.comp) for `SasView_core_shell_sphere.comp`. + +--- + +*Generated on mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/sasmodels/SasView_correlation_length.md b/mcstas-comps/sasmodels/SasView_correlation_length.md new file mode 100644 index 000000000..cf304ce36 --- /dev/null +++ b/mcstas-comps/sasmodels/SasView_correlation_length.md @@ -0,0 +1,59 @@ +# The `SasView_correlation_length` Component + +*McStas: SasView correlation_length model component as sample description.* + +## Identification + +- **Site:** +- **Author:** Jose Robledo +- **Origin:** FZJ / DTU / ESS DMSC +- **Date:** + +## Description + +```text +SasView_correlation_length component, generated from correlation_length.c in sasmodels. + +Example: +SasView_correlation_length(lorentz_scale, porod_scale, cor_length, porod_exp, lorentz_exp, +model_scale=1.0, model_abs=0.0, xwidth=0.01, yheight=0.01, zdepth=0.005, R=0, +int target_index=1, target_x=0, target_y=0, target_z=1, +focus_xw=0.5, focus_yh=0.5, focus_aw=0, focus_ah=0, focus_r=0, +pd_cor_length=0.0) +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| lorentz_scale | | ([0, inf]) Lorentzian Scaling Factor. | 10.0 | +| porod_scale | | ([0, inf]) Porod Scaling Factor. | 1e-06 | +| cor_length | Ang | ([0, inf]) Correlation length, xi, in Lorentzian. | 50.0 | +| porod_exp | | ([0, inf]) Porod Exponent, n, in q^-n. | 3.0 | +| lorentz_exp | | ([0, inf]) Lorentzian Exponent, m, in 1/( 1 + (q.xi)^m). | 2.0 | +| model_scale | | Global scale factor for scattering kernel. For systems without inter-particle interference, the form factors can be related to the scattering intensity by the particle volume fraction. | 1.0 | +| model_abs | | Absorption cross section density at 2200 m/s. | 0.0 | +| xwidth | m | ([-inf, inf]) Horiz. dimension of sample, as a width. | 0.01 | +| yheight | m | ([-inf, inf]) vert . dimension of sample, as a height for cylinder/box | 0.01 | +| zdepth | m | ([-inf, inf]) depth of sample | 0.005 | +| R | m | Outer radius of sample in (x,z) plane for cylinder/sphere. | 0 | +| target_x | m | relative focus target position. | 0 | +| target_y | m | relative focus target position. | 0 | +| target_z | m | relative focus target position. | 1 | +| target_index | | Relative index of component to focus at, e.g. next is +1. | 1 | +| focus_xw | m | horiz. dimension of a rectangular area. | 0.5 | +| focus_yh | m | , vert. dimension of a rectangular area. | 0.5 | +| focus_aw | deg | , horiz. angular dimension of a rectangular area. | 0 | +| focus_ah | deg | , vert. angular dimension of a rectangular area. | 0 | +| focus_r | m | case of circular focusing, focusing radius. | 0 | +| pd_cor_length | | (0,inf) defined as (dx/x), where x is de mean value and dx the standard devition of the variable | 0.0 | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/sasmodels/SasView_correlation_length.comp) for `SasView_correlation_length.comp`. + +--- + +*Generated on mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/sasmodels/SasView_cylinder.md b/mcstas-comps/sasmodels/SasView_cylinder.md new file mode 100644 index 000000000..aad41ecf8 --- /dev/null +++ b/mcstas-comps/sasmodels/SasView_cylinder.md @@ -0,0 +1,59 @@ +# The `SasView_cylinder` Component + +*McStas: SasView cylinder model component as sample description.* + +## Identification + +- **Site:** +- **Author:** Jose Robledo +- **Origin:** FZJ / DTU / ESS DMSC +- **Date:** + +## Description + +```text +SasView_cylinder component, generated from cylinder.c in sasmodels. + +Example: +SasView_cylinder(sld, sld_solvent, radius, length, +model_scale=1.0, model_abs=0.0, xwidth=0.01, yheight=0.01, zdepth=0.005, R=0, +int target_index=1, target_x=0, target_y=0, target_z=1, +focus_xw=0.5, focus_yh=0.5, focus_aw=0, focus_ah=0, focus_r=0, +pd_radius=0.0, pd_length=0.0) +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| sld | 1e-6/Ang^2 | ([-inf, inf]) Cylinder scattering length density. | 4 | +| sld_solvent | 1e-6/Ang^2 | ([-inf, inf]) Solvent scattering length density. | 1 | +| radius | Ang | ([0, inf]) Cylinder radius. | 20 | +| length | Ang | ([0, inf]) Cylinder length. | 400 | +| model_scale | | Global scale factor for scattering kernel. For systems without inter-particle interference, the form factors can be related to the scattering intensity by the particle volume fraction. | 1.0 | +| model_abs | | Absorption cross section density at 2200 m/s. | 0.0 | +| xwidth | m | ([-inf, inf]) Horiz. dimension of sample, as a width. | 0.01 | +| yheight | m | ([-inf, inf]) vert . dimension of sample, as a height for cylinder/box | 0.01 | +| zdepth | m | ([-inf, inf]) depth of sample | 0.005 | +| R | m | Outer radius of sample in (x,z) plane for cylinder/sphere. | 0 | +| target_x | m | relative focus target position. | 0 | +| target_y | m | relative focus target position. | 0 | +| target_z | m | relative focus target position. | 1 | +| target_index | | Relative index of component to focus at, e.g. next is +1. | 1 | +| focus_xw | m | horiz. dimension of a rectangular area. | 0.5 | +| focus_yh | m | , vert. dimension of a rectangular area. | 0.5 | +| focus_aw | deg | , horiz. angular dimension of a rectangular area. | 0 | +| focus_ah | deg | , vert. angular dimension of a rectangular area. | 0 | +| focus_r | m | case of circular focusing, focusing radius. | 0 | +| pd_radius | | (0,inf) defined as (dx/x), where x is de mean value and dx the standard devition of the variable. | 0.0 | +| pd_length | | (0,inf) defined as (dx/x), where x is de mean value and dx the standard devition of the variable | 0.0 | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/sasmodels/SasView_cylinder.comp) for `SasView_cylinder.comp`. + +--- + +*Generated on mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/sasmodels/SasView_cylinder_aniso.md b/mcstas-comps/sasmodels/SasView_cylinder_aniso.md new file mode 100644 index 000000000..22685c254 --- /dev/null +++ b/mcstas-comps/sasmodels/SasView_cylinder_aniso.md @@ -0,0 +1,63 @@ +# The `SasView_cylinder_aniso` Component + +*McStas: SasView cylinder model component as sample description.* + +## Identification + +- **Site:** +- **Author:** Jose Robledo +- **Origin:** FZJ / DTU / ESS DMSC +- **Date:** + +## Description + +```text +SasView_cylinder component, generated from cylinder.c in sasmodels. + +Example: +SasView_cylinder_aniso(sld, sld_solvent, radius, length, theta, phi, +model_scale=1.0, model_abs=0.0, xwidth=0.01, yheight=0.01, zdepth=0.005, R=0, +int target_index=1, target_x=0, target_y=0, target_z=1, +focus_xw=0.5, focus_yh=0.5, focus_aw=0, focus_ah=0, focus_r=0, +pd_radius=0.0, pd_length=0.0, pd_theta=0.0, pd_phi=0.0) +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| sld | 1e-6/Ang^2 | ([-inf, inf]) Cylinder scattering length density. | 4 | +| sld_solvent | 1e-6/Ang^2 | ([-inf, inf]) Solvent scattering length density. | 1 | +| radius | Ang | ([0, inf]) Cylinder radius. | 20 | +| length | Ang | ([0, inf]) Cylinder length. | 400 | +| theta | | | 60 | +| phi | | | 60 | +| model_scale | | Global scale factor for scattering kernel. For systems without inter-particle interference, the form factors can be related to the scattering intensity by the particle volume fraction. | 1.0 | +| model_abs | | Absorption cross section density at 2200 m/s. | 0.0 | +| xwidth | m | ([-inf, inf]) Horiz. dimension of sample, as a width. | 0.01 | +| yheight | m | ([-inf, inf]) vert . dimension of sample, as a height for cylinder/box | 0.01 | +| zdepth | m | ([-inf, inf]) depth of sample | 0.005 | +| R | m | Outer radius of sample in (x,z) plane for cylinder/sphere. | 0 | +| target_x | m | relative focus target position. | 0 | +| target_y | m | relative focus target position. | 0 | +| target_z | m | relative focus target position. | 1 | +| target_index | | Relative index of component to focus at, e.g. next is +1. | 1 | +| focus_xw | m | horiz. dimension of a rectangular area. | 0.5 | +| focus_yh | m | , vert. dimension of a rectangular area. | 0.5 | +| focus_aw | deg | , horiz. angular dimension of a rectangular area. | 0 | +| focus_ah | deg | , vert. angular dimension of a rectangular area. | 0 | +| focus_r | m | case of circular focusing, focusing radius. | 0 | +| pd_radius | | (0,inf) defined as (dx/x), where x is de mean value and dx the standard devition of the variable. | 0.0 | +| pd_length | | (0,inf) defined as (dx/x), where x is de mean value and dx the standard devition of the variable. | 0.0 | +| pd_theta | | (0,360) defined as (dx/x), where x is de mean value and dx the standard devition of the variable. | 0.0 | +| pd_phi | | (0,360) defined as (dx/x), where x is de mean value and dx the standard devition of the variable | 0.0 | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/sasmodels/SasView_cylinder_aniso.comp) for `SasView_cylinder_aniso.comp`. + +--- + +*Generated on mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/sasmodels/SasView_dab.md b/mcstas-comps/sasmodels/SasView_dab.md new file mode 100644 index 000000000..c77f649df --- /dev/null +++ b/mcstas-comps/sasmodels/SasView_dab.md @@ -0,0 +1,55 @@ +# The `SasView_dab` Component + +*McStas: SasView dab model component as sample description.* + +## Identification + +- **Site:** +- **Author:** Jose Robledo +- **Origin:** FZJ / DTU / ESS DMSC +- **Date:** + +## Description + +```text +SasView_dab component, generated from dab.c in sasmodels. + +Example: +SasView_dab(cor_length, +model_scale=1.0, model_abs=0.0, xwidth=0.01, yheight=0.01, zdepth=0.005, R=0, +int target_index=1, target_x=0, target_y=0, target_z=1, +focus_xw=0.5, focus_yh=0.5, focus_aw=0, focus_ah=0, focus_r=0, +pd_cor_length=0.0) +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| cor_length | Ang | ([0, inf]) correlation length. | 50.0 | +| model_scale | | Global scale factor for scattering kernel. For systems without inter-particle interference, the form factors can be related to the scattering intensity by the particle volume fraction. | 1.0 | +| model_abs | | Absorption cross section density at 2200 m/s. | 0.0 | +| xwidth | m | ([-inf, inf]) Horiz. dimension of sample, as a width. | 0.01 | +| yheight | m | ([-inf, inf]) vert . dimension of sample, as a height for cylinder/box | 0.01 | +| zdepth | m | ([-inf, inf]) depth of sample | 0.005 | +| R | m | Outer radius of sample in (x,z) plane for cylinder/sphere. | 0 | +| target_x | m | relative focus target position. | 0 | +| target_y | m | relative focus target position. | 0 | +| target_z | m | relative focus target position. | 1 | +| target_index | | Relative index of component to focus at, e.g. next is +1. | 1 | +| focus_xw | m | horiz. dimension of a rectangular area. | 0.5 | +| focus_yh | m | , vert. dimension of a rectangular area. | 0.5 | +| focus_aw | deg | , horiz. angular dimension of a rectangular area. | 0 | +| focus_ah | deg | , vert. angular dimension of a rectangular area. | 0 | +| focus_r | m | case of circular focusing, focusing radius. | 0 | +| pd_cor_length | | (0,inf) defined as (dx/x), where x is de mean value and dx the standard devition of the variable | 0.0 | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/sasmodels/SasView_dab.comp) for `SasView_dab.comp`. + +--- + +*Generated on mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/sasmodels/SasView_ellipsoid.md b/mcstas-comps/sasmodels/SasView_ellipsoid.md new file mode 100644 index 000000000..2995e186d --- /dev/null +++ b/mcstas-comps/sasmodels/SasView_ellipsoid.md @@ -0,0 +1,59 @@ +# The `SasView_ellipsoid` Component + +*McStas: SasView ellipsoid model component as sample description.* + +## Identification + +- **Site:** +- **Author:** Jose Robledo +- **Origin:** FZJ / DTU / ESS DMSC +- **Date:** + +## Description + +```text +SasView_ellipsoid component, generated from ellipsoid.c in sasmodels. + +Example: +SasView_ellipsoid(sld, sld_solvent, radius_polar, radius_equatorial, +model_scale=1.0, model_abs=0.0, xwidth=0.01, yheight=0.01, zdepth=0.005, R=0, +int target_index=1, target_x=0, target_y=0, target_z=1, +focus_xw=0.5, focus_yh=0.5, focus_aw=0, focus_ah=0, focus_r=0, +pd_radius_polar=0.0, pd_radius_equatorial=0.0) +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| sld | 1e-6/Ang^2 | ([-inf, inf]) Ellipsoid scattering length density. | 4 | +| sld_solvent | 1e-6/Ang^2 | ([-inf, inf]) Solvent scattering length density. | 1 | +| radius_polar | Ang | ([0, inf]) Polar radius. | 20 | +| radius_equatorial | Ang | ([0, inf]) Equatorial radius. | 400 | +| model_scale | | Global scale factor for scattering kernel. For systems without inter-particle interference, the form factors can be related to the scattering intensity by the particle volume fraction. | 1.0 | +| model_abs | | Absorption cross section density at 2200 m/s. | 0.0 | +| xwidth | m | ([-inf, inf]) Horiz. dimension of sample, as a width. | 0.01 | +| yheight | m | ([-inf, inf]) vert . dimension of sample, as a height for cylinder/box | 0.01 | +| zdepth | m | ([-inf, inf]) depth of sample | 0.005 | +| R | m | Outer radius of sample in (x,z) plane for cylinder/sphere. | 0 | +| target_x | m | relative focus target position. | 0 | +| target_y | m | relative focus target position. | 0 | +| target_z | m | relative focus target position. | 1 | +| target_index | | Relative index of component to focus at, e.g. next is +1. | 1 | +| focus_xw | m | horiz. dimension of a rectangular area. | 0.5 | +| focus_yh | m | , vert. dimension of a rectangular area. | 0.5 | +| focus_aw | deg | , horiz. angular dimension of a rectangular area. | 0 | +| focus_ah | deg | , vert. angular dimension of a rectangular area. | 0 | +| focus_r | m | case of circular focusing, focusing radius. | 0 | +| pd_radius_polar | | (0,inf) defined as (dx/x), where x is de mean value and dx the standard devition of the variable. | 0.0 | +| pd_radius_equatorial | | (0,inf) defined as (dx/x), where x is de mean value and dx the standard devition of the variable | 0.0 | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/sasmodels/SasView_ellipsoid.comp) for `SasView_ellipsoid.comp`. + +--- + +*Generated on mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/sasmodels/SasView_ellipsoid_aniso.md b/mcstas-comps/sasmodels/SasView_ellipsoid_aniso.md new file mode 100644 index 000000000..d1665d6c0 --- /dev/null +++ b/mcstas-comps/sasmodels/SasView_ellipsoid_aniso.md @@ -0,0 +1,63 @@ +# The `SasView_ellipsoid_aniso` Component + +*McStas: SasView ellipsoid model component as sample description.* + +## Identification + +- **Site:** +- **Author:** Jose Robledo +- **Origin:** FZJ / DTU / ESS DMSC +- **Date:** + +## Description + +```text +SasView_ellipsoid component, generated from ellipsoid.c in sasmodels. + +Example: +SasView_ellipsoid_aniso(sld, sld_solvent, radius_polar, radius_equatorial, theta, phi, +model_scale=1.0, model_abs=0.0, xwidth=0.01, yheight=0.01, zdepth=0.005, R=0, +int target_index=1, target_x=0, target_y=0, target_z=1, +focus_xw=0.5, focus_yh=0.5, focus_aw=0, focus_ah=0, focus_r=0, +pd_radius_polar=0.0, pd_radius_equatorial=0.0, pd_theta=0.0, pd_phi=0.0) +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| sld | 1e-6/Ang^2 | ([-inf, inf]) Ellipsoid scattering length density. | 4 | +| sld_solvent | 1e-6/Ang^2 | ([-inf, inf]) Solvent scattering length density. | 1 | +| radius_polar | Ang | ([0, inf]) Polar radius. | 20 | +| radius_equatorial | Ang | ([0, inf]) Equatorial radius. | 400 | +| theta | | | 60 | +| phi | | | 60 | +| model_scale | | Global scale factor for scattering kernel. For systems without inter-particle interference, the form factors can be related to the scattering intensity by the particle volume fraction. | 1.0 | +| model_abs | | Absorption cross section density at 2200 m/s. | 0.0 | +| xwidth | m | ([-inf, inf]) Horiz. dimension of sample, as a width. | 0.01 | +| yheight | m | ([-inf, inf]) vert . dimension of sample, as a height for cylinder/box | 0.01 | +| zdepth | m | ([-inf, inf]) depth of sample | 0.005 | +| R | m | Outer radius of sample in (x,z) plane for cylinder/sphere. | 0 | +| target_x | m | relative focus target position. | 0 | +| target_y | m | relative focus target position. | 0 | +| target_z | m | relative focus target position. | 1 | +| target_index | | Relative index of component to focus at, e.g. next is +1. | 1 | +| focus_xw | m | horiz. dimension of a rectangular area. | 0.5 | +| focus_yh | m | , vert. dimension of a rectangular area. | 0.5 | +| focus_aw | deg | , horiz. angular dimension of a rectangular area. | 0 | +| focus_ah | deg | , vert. angular dimension of a rectangular area. | 0 | +| focus_r | m | case of circular focusing, focusing radius. | 0 | +| pd_radius_polar | | (0,inf) defined as (dx/x), where x is de mean value and dx the standard devition of the variable. | 0.0 | +| pd_radius_equatorial | | (0,inf) defined as (dx/x), where x is de mean value and dx the standard devition of the variable. | 0.0 | +| pd_theta | | (0,360) defined as (dx/x), where x is de mean value and dx the standard devition of the variable. | 0.0 | +| pd_phi | | (0,360) defined as (dx/x), where x is de mean value and dx the standard devition of the variable | 0.0 | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/sasmodels/SasView_ellipsoid_aniso.comp) for `SasView_ellipsoid_aniso.comp`. + +--- + +*Generated on mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/sasmodels/SasView_elliptical_cylinder.md b/mcstas-comps/sasmodels/SasView_elliptical_cylinder.md new file mode 100644 index 000000000..ffa4a03b4 --- /dev/null +++ b/mcstas-comps/sasmodels/SasView_elliptical_cylinder.md @@ -0,0 +1,60 @@ +# The `SasView_elliptical_cylinder` Component + +*McStas: SasView elliptical_cylinder model component as sample description.* + +## Identification + +- **Site:** +- **Author:** Jose Robledo +- **Origin:** FZJ / DTU / ESS DMSC +- **Date:** + +## Description + +```text +SasView_elliptical_cylinder component, generated from elliptical_cylinder.c in sasmodels. + +Example: +SasView_elliptical_cylinder(radius_minor, r_ratio, length, sld, sld_solvent, +model_scale=1.0, model_abs=0.0, xwidth=0.01, yheight=0.01, zdepth=0.005, R=0, +int target_index=1, target_x=0, target_y=0, target_z=1, +focus_xw=0.5, focus_yh=0.5, focus_aw=0, focus_ah=0, focus_r=0, +pd_radius_minor=0.0, pd_length=0.0) +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| radius_minor | Ang | ([0, inf]) Ellipse minor radius. | 20.0 | +| r_ratio | | ([1, inf]) Ratio of major radius over minor radius. | 1.5 | +| length | Ang | ([1, inf]) Length of the cylinder. | 400.0 | +| sld | 1e-6/Ang^2 | ([-inf, inf]) Cylinder scattering length density. | 4.0 | +| sld_solvent | 1e-6/Ang^2 | ([-inf, inf]) Solvent scattering length density. | 1.0 | +| model_scale | | Global scale factor for scattering kernel. For systems without inter-particle interference, the form factors can be related to the scattering intensity by the particle volume fraction. | 1.0 | +| model_abs | | Absorption cross section density at 2200 m/s. | 0.0 | +| xwidth | m | ([-inf, inf]) Horiz. dimension of sample, as a width. | 0.01 | +| yheight | m | ([-inf, inf]) vert . dimension of sample, as a height for cylinder/box | 0.01 | +| zdepth | m | ([-inf, inf]) depth of sample | 0.005 | +| R | m | Outer radius of sample in (x,z) plane for cylinder/sphere. | 0 | +| target_x | m | relative focus target position. | 0 | +| target_y | m | relative focus target position. | 0 | +| target_z | m | relative focus target position. | 1 | +| target_index | | Relative index of component to focus at, e.g. next is +1. | 1 | +| focus_xw | m | horiz. dimension of a rectangular area. | 0.5 | +| focus_yh | m | , vert. dimension of a rectangular area. | 0.5 | +| focus_aw | deg | , horiz. angular dimension of a rectangular area. | 0 | +| focus_ah | deg | , vert. angular dimension of a rectangular area. | 0 | +| focus_r | m | case of circular focusing, focusing radius. | 0 | +| pd_radius_minor | | (0,inf) defined as (dx/x), where x is de mean value and dx the standard devition of the variable. | 0.0 | +| pd_length | | (0,inf) defined as (dx/x), where x is de mean value and dx the standard devition of the variable | 0.0 | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/sasmodels/SasView_elliptical_cylinder.comp) for `SasView_elliptical_cylinder.comp`. + +--- + +*Generated on mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/sasmodels/SasView_elliptical_cylinder_aniso.md b/mcstas-comps/sasmodels/SasView_elliptical_cylinder_aniso.md new file mode 100644 index 000000000..7ec7fbd8b --- /dev/null +++ b/mcstas-comps/sasmodels/SasView_elliptical_cylinder_aniso.md @@ -0,0 +1,66 @@ +# The `SasView_elliptical_cylinder_aniso` Component + +*McStas: SasView elliptical_cylinder model component as sample description.* + +## Identification + +- **Site:** +- **Author:** Jose Robledo +- **Origin:** FZJ / DTU / ESS DMSC +- **Date:** + +## Description + +```text +SasView_elliptical_cylinder component, generated from elliptical_cylinder.c in sasmodels. + +Example: +SasView_elliptical_cylinder_aniso(radius_minor, r_ratio, length, sld, sld_solvent, theta, phi, Psi, +model_scale=1.0, model_abs=0.0, xwidth=0.01, yheight=0.01, zdepth=0.005, R=0, +int target_index=1, target_x=0, target_y=0, target_z=1, +focus_xw=0.5, focus_yh=0.5, focus_aw=0, focus_ah=0, focus_r=0, +pd_radius_minor=0.0, pd_length=0.0, pd_theta=0.0, pd_phi=0.0, pd_Psi=0.0) +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| radius_minor | Ang | ([0, inf]) Ellipse minor radius. | 20.0 | +| r_ratio | | ([1, inf]) Ratio of major radius over minor radius. | 1.5 | +| length | Ang | ([1, inf]) Length of the cylinder. | 400.0 | +| sld | 1e-6/Ang^2 | ([-inf, inf]) Cylinder scattering length density. | 4.0 | +| sld_solvent | 1e-6/Ang^2 | ([-inf, inf]) Solvent scattering length density. | 1.0 | +| theta | | | 90.0 | +| phi | | | 0 | +| Psi | | | 0 | +| model_scale | | Global scale factor for scattering kernel. For systems without inter-particle interference, the form factors can be related to the scattering intensity by the particle volume fraction. | 1.0 | +| model_abs | | Absorption cross section density at 2200 m/s. | 0.0 | +| xwidth | m | ([-inf, inf]) Horiz. dimension of sample, as a width. | 0.01 | +| yheight | m | ([-inf, inf]) vert . dimension of sample, as a height for cylinder/box | 0.01 | +| zdepth | m | ([-inf, inf]) depth of sample | 0.005 | +| R | m | Outer radius of sample in (x,z) plane for cylinder/sphere. | 0 | +| target_x | m | relative focus target position. | 0 | +| target_y | m | relative focus target position. | 0 | +| target_z | m | relative focus target position. | 1 | +| target_index | | Relative index of component to focus at, e.g. next is +1. | 1 | +| focus_xw | m | horiz. dimension of a rectangular area. | 0.5 | +| focus_yh | m | , vert. dimension of a rectangular area. | 0.5 | +| focus_aw | deg | , horiz. angular dimension of a rectangular area. | 0 | +| focus_ah | deg | , vert. angular dimension of a rectangular area. | 0 | +| focus_r | m | case of circular focusing, focusing radius. | 0 | +| pd_radius_minor | | (0,inf) defined as (dx/x), where x is de mean value and dx the standard devition of the variable. | 0.0 | +| pd_length | | (0,inf) defined as (dx/x), where x is de mean value and dx the standard devition of the variable. | 0.0 | +| pd_theta | | (0,360) defined as (dx/x), where x is de mean value and dx the standard devition of the variable. | 0.0 | +| pd_phi | | (0,360) defined as (dx/x), where x is de mean value and dx the standard devition of the variable. | 0.0 | +| pd_Psi | | (0,360) defined as (dx/x), where x is de mean value and dx the standard devition of the variable | 0.0 | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/sasmodels/SasView_elliptical_cylinder_aniso.comp) for `SasView_elliptical_cylinder_aniso.comp`. + +--- + +*Generated on mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/sasmodels/SasView_fcc_paracrystal.md b/mcstas-comps/sasmodels/SasView_fcc_paracrystal.md new file mode 100644 index 000000000..32e636548 --- /dev/null +++ b/mcstas-comps/sasmodels/SasView_fcc_paracrystal.md @@ -0,0 +1,59 @@ +# The `SasView_fcc_paracrystal` Component + +*McStas: SasView fcc_paracrystal model component as sample description.* + +## Identification + +- **Site:** +- **Author:** Jose Robledo +- **Origin:** FZJ / DTU / ESS DMSC +- **Date:** + +## Description + +```text +SasView_fcc_paracrystal component, generated from fcc_paracrystal.c in sasmodels. + +Example: +SasView_fcc_paracrystal(dnn, d_factor, radius, sld, sld_solvent, +model_scale=1.0, model_abs=0.0, xwidth=0.01, yheight=0.01, zdepth=0.005, R=0, +int target_index=1, target_x=0, target_y=0, target_z=1, +focus_xw=0.5, focus_yh=0.5, focus_aw=0, focus_ah=0, focus_r=0, +pd_radius=0.0) +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| dnn | Ang | ([-inf, inf]) Nearest neighbour distance. | 220 | +| d_factor | | ([-inf, inf]) Paracrystal distortion factor. | 0.06 | +| radius | Ang | ([0, inf]) Particle radius. | 40 | +| sld | 1e-6/Ang^2 | ([-inf, inf]) Particle scattering length density. | 4 | +| sld_solvent | 1e-6/Ang^2 | ([-inf, inf]) Solvent scattering length density. | 1 | +| model_scale | | Global scale factor for scattering kernel. For systems without inter-particle interference, the form factors can be related to the scattering intensity by the particle volume fraction. | 1.0 | +| model_abs | | Absorption cross section density at 2200 m/s. | 0.0 | +| xwidth | m | ([-inf, inf]) Horiz. dimension of sample, as a width. | 0.01 | +| yheight | m | ([-inf, inf]) vert . dimension of sample, as a height for cylinder/box | 0.01 | +| zdepth | m | ([-inf, inf]) depth of sample | 0.005 | +| R | m | Outer radius of sample in (x,z) plane for cylinder/sphere. | 0 | +| target_x | m | relative focus target position. | 0 | +| target_y | m | relative focus target position. | 0 | +| target_z | m | relative focus target position. | 1 | +| target_index | | Relative index of component to focus at, e.g. next is +1. | 1 | +| focus_xw | m | horiz. dimension of a rectangular area. | 0.5 | +| focus_yh | m | , vert. dimension of a rectangular area. | 0.5 | +| focus_aw | deg | , horiz. angular dimension of a rectangular area. | 0 | +| focus_ah | deg | , vert. angular dimension of a rectangular area. | 0 | +| focus_r | m | case of circular focusing, focusing radius. | 0 | +| pd_radius | | (0,inf) defined as (dx/x), where x is de mean value and dx the standard devition of the variable | 0.0 | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/sasmodels/SasView_fcc_paracrystal.comp) for `SasView_fcc_paracrystal.comp`. + +--- + +*Generated on mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/sasmodels/SasView_fcc_paracrystal_aniso.md b/mcstas-comps/sasmodels/SasView_fcc_paracrystal_aniso.md new file mode 100644 index 000000000..59338c6d8 --- /dev/null +++ b/mcstas-comps/sasmodels/SasView_fcc_paracrystal_aniso.md @@ -0,0 +1,65 @@ +# The `SasView_fcc_paracrystal_aniso` Component + +*McStas: SasView fcc_paracrystal model component as sample description.* + +## Identification + +- **Site:** +- **Author:** Jose Robledo +- **Origin:** FZJ / DTU / ESS DMSC +- **Date:** + +## Description + +```text +SasView_fcc_paracrystal component, generated from fcc_paracrystal.c in sasmodels. + +Example: +SasView_fcc_paracrystal_aniso(dnn, d_factor, radius, sld, sld_solvent, theta, phi, Psi, +model_scale=1.0, model_abs=0.0, xwidth=0.01, yheight=0.01, zdepth=0.005, R=0, +int target_index=1, target_x=0, target_y=0, target_z=1, +focus_xw=0.5, focus_yh=0.5, focus_aw=0, focus_ah=0, focus_r=0, +pd_radius=0.0, pd_theta=0.0, pd_phi=0.0, pd_Psi=0.0) +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| dnn | Ang | ([-inf, inf]) Nearest neighbour distance. | 220 | +| d_factor | | ([-inf, inf]) Paracrystal distortion factor. | 0.06 | +| radius | Ang | ([0, inf]) Particle radius. | 40 | +| sld | 1e-6/Ang^2 | ([-inf, inf]) Particle scattering length density. | 4 | +| sld_solvent | 1e-6/Ang^2 | ([-inf, inf]) Solvent scattering length density. | 1 | +| theta | | | 60 | +| phi | | | 60 | +| Psi | | | 60 | +| model_scale | | Global scale factor for scattering kernel. For systems without inter-particle interference, the form factors can be related to the scattering intensity by the particle volume fraction. | 1.0 | +| model_abs | | Absorption cross section density at 2200 m/s. | 0.0 | +| xwidth | m | ([-inf, inf]) Horiz. dimension of sample, as a width. | 0.01 | +| yheight | m | ([-inf, inf]) vert . dimension of sample, as a height for cylinder/box | 0.01 | +| zdepth | m | ([-inf, inf]) depth of sample | 0.005 | +| R | m | Outer radius of sample in (x,z) plane for cylinder/sphere. | 0 | +| target_x | m | relative focus target position. | 0 | +| target_y | m | relative focus target position. | 0 | +| target_z | m | relative focus target position. | 1 | +| target_index | | Relative index of component to focus at, e.g. next is +1. | 1 | +| focus_xw | m | horiz. dimension of a rectangular area. | 0.5 | +| focus_yh | m | , vert. dimension of a rectangular area. | 0.5 | +| focus_aw | deg | , horiz. angular dimension of a rectangular area. | 0 | +| focus_ah | deg | , vert. angular dimension of a rectangular area. | 0 | +| focus_r | m | case of circular focusing, focusing radius. | 0 | +| pd_radius | | (0,inf) defined as (dx/x), where x is de mean value and dx the standard devition of the variable. | 0.0 | +| pd_theta | | (0,360) defined as (dx/x), where x is de mean value and dx the standard devition of the variable. | 0.0 | +| pd_phi | | (0,360) defined as (dx/x), where x is de mean value and dx the standard devition of the variable. | 0.0 | +| pd_Psi | | (0,360) defined as (dx/x), where x is de mean value and dx the standard devition of the variable | 0.0 | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/sasmodels/SasView_fcc_paracrystal_aniso.comp) for `SasView_fcc_paracrystal_aniso.comp`. + +--- + +*Generated on mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/sasmodels/SasView_flexible_cylinder.md b/mcstas-comps/sasmodels/SasView_flexible_cylinder.md new file mode 100644 index 000000000..bcf27d59c --- /dev/null +++ b/mcstas-comps/sasmodels/SasView_flexible_cylinder.md @@ -0,0 +1,61 @@ +# The `SasView_flexible_cylinder` Component + +*McStas: SasView flexible_cylinder model component as sample description.* + +## Identification + +- **Site:** +- **Author:** Jose Robledo +- **Origin:** FZJ / DTU / ESS DMSC +- **Date:** + +## Description + +```text +SasView_flexible_cylinder component, generated from flexible_cylinder.c in sasmodels. + +Example: +SasView_flexible_cylinder(length, kuhn_length, radius, sld, sld_solvent, +model_scale=1.0, model_abs=0.0, xwidth=0.01, yheight=0.01, zdepth=0.005, R=0, +int target_index=1, target_x=0, target_y=0, target_z=1, +focus_xw=0.5, focus_yh=0.5, focus_aw=0, focus_ah=0, focus_r=0, +pd_length=0.0, pd_kuhn_length=0.0, pd_radius=0.0) +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| length | Ang | ([0, inf]) Length of the flexible cylinder. | 1000.0 | +| kuhn_length | Ang | ([0, inf]) Kuhn length of the flexible cylinder. | 100.0 | +| radius | Ang | ([0, inf]) Radius of the flexible cylinder. | 20.0 | +| sld | 1e-6/Ang^2 | ([-inf, inf]) Cylinder scattering length density. | 1.0 | +| sld_solvent | 1e-6/Ang^2 | ([-inf, inf]) Solvent scattering length density. | 6.3 | +| model_scale | | Global scale factor for scattering kernel. For systems without inter-particle interference, the form factors can be related to the scattering intensity by the particle volume fraction. | 1.0 | +| model_abs | | Absorption cross section density at 2200 m/s. | 0.0 | +| xwidth | m | ([-inf, inf]) Horiz. dimension of sample, as a width. | 0.01 | +| yheight | m | ([-inf, inf]) vert . dimension of sample, as a height for cylinder/box | 0.01 | +| zdepth | m | ([-inf, inf]) depth of sample | 0.005 | +| R | m | Outer radius of sample in (x,z) plane for cylinder/sphere. | 0 | +| target_x | m | relative focus target position. | 0 | +| target_y | m | relative focus target position. | 0 | +| target_z | m | relative focus target position. | 1 | +| target_index | | Relative index of component to focus at, e.g. next is +1. | 1 | +| focus_xw | m | horiz. dimension of a rectangular area. | 0.5 | +| focus_yh | m | , vert. dimension of a rectangular area. | 0.5 | +| focus_aw | deg | , horiz. angular dimension of a rectangular area. | 0 | +| focus_ah | deg | , vert. angular dimension of a rectangular area. | 0 | +| focus_r | m | case of circular focusing, focusing radius. | 0 | +| pd_length | | (0,inf) defined as (dx/x), where x is de mean value and dx the standard devition of the variable. | 0.0 | +| pd_kuhn_length | | (0,inf) defined as (dx/x), where x is de mean value and dx the standard devition of the variable. | 0.0 | +| pd_radius | | (0,inf) defined as (dx/x), where x is de mean value and dx the standard devition of the variable | 0.0 | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/sasmodels/SasView_flexible_cylinder.comp) for `SasView_flexible_cylinder.comp`. + +--- + +*Generated on mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/sasmodels/SasView_flexible_cylinder_elliptical.md b/mcstas-comps/sasmodels/SasView_flexible_cylinder_elliptical.md new file mode 100644 index 000000000..bd36e57d8 --- /dev/null +++ b/mcstas-comps/sasmodels/SasView_flexible_cylinder_elliptical.md @@ -0,0 +1,62 @@ +# The `SasView_flexible_cylinder_elliptical` Component + +*McStas: SasView flexible_cylinder_elliptical model component as sample description.* + +## Identification + +- **Site:** +- **Author:** Jose Robledo +- **Origin:** FZJ / DTU / ESS DMSC +- **Date:** + +## Description + +```text +SasView_flexible_cylinder_elliptical component, generated from flexible_cylinder_elliptical.c in sasmodels. + +Example: +SasView_flexible_cylinder_elliptical(length, kuhn_length, radius, axis_ratio, sld, sld_solvent, +model_scale=1.0, model_abs=0.0, xwidth=0.01, yheight=0.01, zdepth=0.005, R=0, +int target_index=1, target_x=0, target_y=0, target_z=1, +focus_xw=0.5, focus_yh=0.5, focus_aw=0, focus_ah=0, focus_r=0, +pd_length=0.0, pd_kuhn_length=0.0, pd_radius=0.0) +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| length | Ang | ([0, inf]) Length of the flexible cylinder. | 1000.0 | +| kuhn_length | Ang | ([0, inf]) Kuhn length of the flexible cylinder. | 100.0 | +| radius | Ang | ([1, inf]) Radius of the flexible cylinder. | 20.0 | +| axis_ratio | | ([0, inf]) Axis_ratio (major_radius/minor_radius. | 1.5 | +| sld | 1e-6/Ang^2 | ([-inf, inf]) Cylinder scattering length density. | 1.0 | +| sld_solvent | 1e-6/Ang^2 | ([-inf, inf]) Solvent scattering length density. | 6.3 | +| model_scale | | Global scale factor for scattering kernel. For systems without inter-particle interference, the form factors can be related to the scattering intensity by the particle volume fraction. | 1.0 | +| model_abs | | Absorption cross section density at 2200 m/s. | 0.0 | +| xwidth | m | ([-inf, inf]) Horiz. dimension of sample, as a width. | 0.01 | +| yheight | m | ([-inf, inf]) vert . dimension of sample, as a height for cylinder/box | 0.01 | +| zdepth | m | ([-inf, inf]) depth of sample | 0.005 | +| R | m | Outer radius of sample in (x,z) plane for cylinder/sphere. | 0 | +| target_x | m | relative focus target position. | 0 | +| target_y | m | relative focus target position. | 0 | +| target_z | m | relative focus target position. | 1 | +| target_index | | Relative index of component to focus at, e.g. next is +1. | 1 | +| focus_xw | m | horiz. dimension of a rectangular area. | 0.5 | +| focus_yh | m | , vert. dimension of a rectangular area. | 0.5 | +| focus_aw | deg | , horiz. angular dimension of a rectangular area. | 0 | +| focus_ah | deg | , vert. angular dimension of a rectangular area. | 0 | +| focus_r | m | case of circular focusing, focusing radius. | 0 | +| pd_length | | (0,inf) defined as (dx/x), where x is de mean value and dx the standard devition of the variable. | 0.0 | +| pd_kuhn_length | | (0,inf) defined as (dx/x), where x is de mean value and dx the standard devition of the variable. | 0.0 | +| pd_radius | | (0,inf) defined as (dx/x), where x is de mean value and dx the standard devition of the variable | 0.0 | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/sasmodels/SasView_flexible_cylinder_elliptical.comp) for `SasView_flexible_cylinder_elliptical.comp`. + +--- + +*Generated on mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/sasmodels/SasView_fractal.md b/mcstas-comps/sasmodels/SasView_fractal.md new file mode 100644 index 000000000..9dbeff4e3 --- /dev/null +++ b/mcstas-comps/sasmodels/SasView_fractal.md @@ -0,0 +1,61 @@ +# The `SasView_fractal` Component + +*McStas: SasView fractal model component as sample description.* + +## Identification + +- **Site:** +- **Author:** Jose Robledo +- **Origin:** FZJ / DTU / ESS DMSC +- **Date:** + +## Description + +```text +SasView_fractal component, generated from fractal.c in sasmodels. + +Example: +SasView_fractal(volfraction, radius, fractal_dim, cor_length, sld_block, sld_solvent, +model_scale=1.0, model_abs=0.0, xwidth=0.01, yheight=0.01, zdepth=0.005, R=0, +int target_index=1, target_x=0, target_y=0, target_z=1, +focus_xw=0.5, focus_yh=0.5, focus_aw=0, focus_ah=0, focus_r=0, +pd_radius=0.0, pd_cor_length=0.0) +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| volfraction | | ([0.0, 1]) volume fraction of blocks. | 0.05 | +| radius | Ang | ([0.0, inf]) radius of particles. | 5.0 | +| fractal_dim | | ([0.0, 6.0]) fractal dimension. | 2.0 | +| cor_length | Ang | ([0.0, inf]) cluster correlation length. | 100.0 | +| sld_block | 1e-6/Ang^2 | ([-inf, inf]) scattering length density of particles. | 2.0 | +| sld_solvent | 1e-6/Ang^2 | ([-inf, inf]) scattering length density of solvent. | 6.4 | +| model_scale | | Global scale factor for scattering kernel. For systems without inter-particle interference, the form factors can be related to the scattering intensity by the particle volume fraction. | 1.0 | +| model_abs | | Absorption cross section density at 2200 m/s. | 0.0 | +| xwidth | m | ([-inf, inf]) Horiz. dimension of sample, as a width. | 0.01 | +| yheight | m | ([-inf, inf]) vert . dimension of sample, as a height for cylinder/box | 0.01 | +| zdepth | m | ([-inf, inf]) depth of sample | 0.005 | +| R | m | Outer radius of sample in (x,z) plane for cylinder/sphere. | 0 | +| target_x | m | relative focus target position. | 0 | +| target_y | m | relative focus target position. | 0 | +| target_z | m | relative focus target position. | 1 | +| target_index | | Relative index of component to focus at, e.g. next is +1. | 1 | +| focus_xw | m | horiz. dimension of a rectangular area. | 0.5 | +| focus_yh | m | , vert. dimension of a rectangular area. | 0.5 | +| focus_aw | deg | , horiz. angular dimension of a rectangular area. | 0 | +| focus_ah | deg | , vert. angular dimension of a rectangular area. | 0 | +| focus_r | m | case of circular focusing, focusing radius. | 0 | +| pd_radius | | (0,inf) defined as (dx/x), where x is de mean value and dx the standard devition of the variable. | 0.0 | +| pd_cor_length | | (0,inf) defined as (dx/x), where x is de mean value and dx the standard devition of the variable | 0.0 | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/sasmodels/SasView_fractal.comp) for `SasView_fractal.comp`. + +--- + +*Generated on mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/sasmodels/SasView_fractal_core_shell.md b/mcstas-comps/sasmodels/SasView_fractal_core_shell.md new file mode 100644 index 000000000..2584cc9c8 --- /dev/null +++ b/mcstas-comps/sasmodels/SasView_fractal_core_shell.md @@ -0,0 +1,64 @@ +# The `SasView_fractal_core_shell` Component + +*McStas: SasView fractal_core_shell model component as sample description.* + +## Identification + +- **Site:** +- **Author:** Jose Robledo +- **Origin:** FZJ / DTU / ESS DMSC +- **Date:** + +## Description + +```text +SasView_fractal_core_shell component, generated from fractal_core_shell.c in sasmodels. + +Example: +SasView_fractal_core_shell(radius, thickness, sld_core, sld_shell, sld_solvent, volfraction, fractal_dim, cor_length, +model_scale=1.0, model_abs=0.0, xwidth=0.01, yheight=0.01, zdepth=0.005, R=0, +int target_index=1, target_x=0, target_y=0, target_z=1, +focus_xw=0.5, focus_yh=0.5, focus_aw=0, focus_ah=0, focus_r=0, +pd_radius=0.0, pd_thickness=0.0, pd_cor_length=0.0) +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| radius | Ang | ([0.0, inf]) Sphere core radius. | 60.0 | +| thickness | Ang | ([0.0, inf]) Sphere shell thickness. | 10.0 | +| sld_core | 1e-6/Ang^2 | ([-inf, inf]) Sphere core scattering length density. | 1.0 | +| sld_shell | 1e-6/Ang^2 | ([-inf, inf]) Sphere shell scattering length density. | 2.0 | +| sld_solvent | 1e-6/Ang^2 | ([-inf, inf]) Solvent scattering length density. | 3.0 | +| volfraction | | ([0.0, inf]) Volume fraction of building block spheres. | 0.05 | +| fractal_dim | | ([0.0, 6.0]) Fractal dimension. | 2.0 | +| cor_length | Ang | ([0.0, inf]) Correlation length of fractal-like aggregates. | 100.0 | +| model_scale | | Global scale factor for scattering kernel. For systems without inter-particle interference, the form factors can be related to the scattering intensity by the particle volume fraction. | 1.0 | +| model_abs | | Absorption cross section density at 2200 m/s. | 0.0 | +| xwidth | m | ([-inf, inf]) Horiz. dimension of sample, as a width. | 0.01 | +| yheight | m | ([-inf, inf]) vert . dimension of sample, as a height for cylinder/box | 0.01 | +| zdepth | m | ([-inf, inf]) depth of sample | 0.005 | +| R | m | Outer radius of sample in (x,z) plane for cylinder/sphere. | 0 | +| target_x | m | relative focus target position. | 0 | +| target_y | m | relative focus target position. | 0 | +| target_z | m | relative focus target position. | 1 | +| target_index | | Relative index of component to focus at, e.g. next is +1. | 1 | +| focus_xw | m | horiz. dimension of a rectangular area. | 0.5 | +| focus_yh | m | , vert. dimension of a rectangular area. | 0.5 | +| focus_aw | deg | , horiz. angular dimension of a rectangular area. | 0 | +| focus_ah | deg | , vert. angular dimension of a rectangular area. | 0 | +| focus_r | m | case of circular focusing, focusing radius. | 0 | +| pd_radius | | (0,inf) defined as (dx/x), where x is de mean value and dx the standard devition of the variable. | 0.0 | +| pd_thickness | | (0,inf) defined as (dx/x), where x is de mean value and dx the standard devition of the variable. | 0.0 | +| pd_cor_length | | (0,inf) defined as (dx/x), where x is de mean value and dx the standard devition of the variable | 0.0 | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/sasmodels/SasView_fractal_core_shell.comp) for `SasView_fractal_core_shell.comp`. + +--- + +*Generated on mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/sasmodels/SasView_fuzzy_sphere.md b/mcstas-comps/sasmodels/SasView_fuzzy_sphere.md new file mode 100644 index 000000000..015032a5e --- /dev/null +++ b/mcstas-comps/sasmodels/SasView_fuzzy_sphere.md @@ -0,0 +1,58 @@ +# The `SasView_fuzzy_sphere` Component + +*McStas: SasView fuzzy_sphere model component as sample description.* + +## Identification + +- **Site:** +- **Author:** Jose Robledo +- **Origin:** FZJ / DTU / ESS DMSC +- **Date:** + +## Description + +```text +SasView_fuzzy_sphere component, generated from fuzzy_sphere.c in sasmodels. + +Example: +SasView_fuzzy_sphere(sld, sld_solvent, radius, fuzziness, +model_scale=1.0, model_abs=0.0, xwidth=0.01, yheight=0.01, zdepth=0.005, R=0, +int target_index=1, target_x=0, target_y=0, target_z=1, +focus_xw=0.5, focus_yh=0.5, focus_aw=0, focus_ah=0, focus_r=0, +pd_radius=0.0) +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| sld | 1e-6/Ang^2 | ([-inf, inf]) Particle scattering length density. | 1 | +| sld_solvent | 1e-6/Ang^2 | ([-inf, inf]) Solvent scattering length density. | 3 | +| radius | Ang | ([0, inf]) Sphere radius. | 60 | +| fuzziness | Ang | ([0, inf]) std deviation of Gaussian convolution for interface (must be << radius). | 10 | +| model_scale | | Global scale factor for scattering kernel. For systems without inter-particle interference, the form factors can be related to the scattering intensity by the particle volume fraction. | 1.0 | +| model_abs | | Absorption cross section density at 2200 m/s. | 0.0 | +| xwidth | m | ([-inf, inf]) Horiz. dimension of sample, as a width. | 0.01 | +| yheight | m | ([-inf, inf]) vert . dimension of sample, as a height for cylinder/box | 0.01 | +| zdepth | m | ([-inf, inf]) depth of sample | 0.005 | +| R | m | Outer radius of sample in (x,z) plane for cylinder/sphere. | 0 | +| target_x | m | relative focus target position. | 0 | +| target_y | m | relative focus target position. | 0 | +| target_z | m | relative focus target position. | 1 | +| target_index | | Relative index of component to focus at, e.g. next is +1. | 1 | +| focus_xw | m | horiz. dimension of a rectangular area. | 0.5 | +| focus_yh | m | , vert. dimension of a rectangular area. | 0.5 | +| focus_aw | deg | , horiz. angular dimension of a rectangular area. | 0 | +| focus_ah | deg | , vert. angular dimension of a rectangular area. | 0 | +| focus_r | m | case of circular focusing, focusing radius. | 0 | +| pd_radius | | (0,inf) defined as (dx/x), where x is de mean value and dx the standard devition of the variable | 0.0 | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/sasmodels/SasView_fuzzy_sphere.comp) for `SasView_fuzzy_sphere.comp`. + +--- + +*Generated on mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/sasmodels/SasView_gauss_lorentz_gel.md b/mcstas-comps/sasmodels/SasView_gauss_lorentz_gel.md new file mode 100644 index 000000000..3938d6c0b --- /dev/null +++ b/mcstas-comps/sasmodels/SasView_gauss_lorentz_gel.md @@ -0,0 +1,59 @@ +# The `SasView_gauss_lorentz_gel` Component + +*McStas: SasView gauss_lorentz_gel model component as sample description.* + +## Identification + +- **Site:** +- **Author:** Jose Robledo +- **Origin:** FZJ / DTU / ESS DMSC +- **Date:** + +## Description + +```text +SasView_gauss_lorentz_gel component, generated from gauss_lorentz_gel.c in sasmodels. + +Example: +SasView_gauss_lorentz_gel(gauss_scale, cor_length_static, lorentz_scale, cor_length_dynamic, +model_scale=1.0, model_abs=0.0, xwidth=0.01, yheight=0.01, zdepth=0.005, R=0, +int target_index=1, target_x=0, target_y=0, target_z=1, +focus_xw=0.5, focus_yh=0.5, focus_aw=0, focus_ah=0, focus_r=0, +pd_cor_length_static=0.0, pd_cor_length_dynamic=0.0) +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| gauss_scale | | ([-inf, inf]) Gauss scale factor. | 100.0 | +| cor_length_static | Ang | ([0, inf]) Static correlation length. | 100.0 | +| lorentz_scale | | ([-inf, inf]) Lorentzian scale factor. | 50.0 | +| cor_length_dynamic | Ang | ([0, inf]) Dynamic correlation length. | 20.0 | +| model_scale | | Global scale factor for scattering kernel. For systems without inter-particle interference, the form factors can be related to the scattering intensity by the particle volume fraction. | 1.0 | +| model_abs | | Absorption cross section density at 2200 m/s. | 0.0 | +| xwidth | m | ([-inf, inf]) Horiz. dimension of sample, as a width. | 0.01 | +| yheight | m | ([-inf, inf]) vert . dimension of sample, as a height for cylinder/box | 0.01 | +| zdepth | m | ([-inf, inf]) depth of sample | 0.005 | +| R | m | Outer radius of sample in (x,z) plane for cylinder/sphere. | 0 | +| target_x | m | relative focus target position. | 0 | +| target_y | m | relative focus target position. | 0 | +| target_z | m | relative focus target position. | 1 | +| target_index | | Relative index of component to focus at, e.g. next is +1. | 1 | +| focus_xw | m | horiz. dimension of a rectangular area. | 0.5 | +| focus_yh | m | , vert. dimension of a rectangular area. | 0.5 | +| focus_aw | deg | , horiz. angular dimension of a rectangular area. | 0 | +| focus_ah | deg | , vert. angular dimension of a rectangular area. | 0 | +| focus_r | m | case of circular focusing, focusing radius. | 0 | +| pd_cor_length_static | | (0,inf) defined as (dx/x), where x is de mean value and dx the standard devition of the variable. | 0.0 | +| pd_cor_length_dynamic | | (0,inf) defined as (dx/x), where x is de mean value and dx the standard devition of the variable | 0.0 | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/sasmodels/SasView_gauss_lorentz_gel.comp) for `SasView_gauss_lorentz_gel.comp`. + +--- + +*Generated on mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/sasmodels/SasView_gaussian_peak.md b/mcstas-comps/sasmodels/SasView_gaussian_peak.md new file mode 100644 index 000000000..2b3207ce9 --- /dev/null +++ b/mcstas-comps/sasmodels/SasView_gaussian_peak.md @@ -0,0 +1,55 @@ +# The `SasView_gaussian_peak` Component + +*McStas: SasView gaussian_peak model component as sample description.* + +## Identification + +- **Site:** +- **Author:** Jose Robledo +- **Origin:** FZJ / DTU / ESS DMSC +- **Date:** + +## Description + +```text +SasView_gaussian_peak component, generated from gaussian_peak.c in sasmodels. + +Example: +SasView_gaussian_peak(peak_pos, sigma, +model_scale=1.0, model_abs=0.0, xwidth=0.01, yheight=0.01, zdepth=0.005, R=0, +int target_index=1, target_x=0, target_y=0, target_z=1, +focus_xw=0.5, focus_yh=0.5, focus_aw=0, focus_ah=0, focus_r=0, +) +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| peak_pos | 1/Ang | ([-inf, inf]) Peak position. | 0.05 | +| sigma | 1/Ang | ([0, inf]) Peak width (standard deviation). | 0.005 | +| model_scale | | Global scale factor for scattering kernel. For systems without inter-particle interference, the form factors can be related to the scattering intensity by the particle volume fraction. | 1.0 | +| model_abs | | Absorption cross section density at 2200 m/s. | 0.0 | +| xwidth | m | ([-inf, inf]) Horiz. dimension of sample, as a width. | 0.01 | +| yheight | m | ([-inf, inf]) vert . dimension of sample, as a height for cylinder/box | 0.01 | +| zdepth | m | ([-inf, inf]) depth of sample | 0.005 | +| R | m | Outer radius of sample in (x,z) plane for cylinder/sphere. | 0 | +| target_x | m | relative focus target position. | 0 | +| target_y | m | relative focus target position. | 0 | +| target_z | m | relative focus target position. | 1 | +| target_index | | Relative index of component to focus at, e.g. next is +1. | 1 | +| focus_xw | m | horiz. dimension of a rectangular area. | 0.5 | +| focus_yh | m | , vert. dimension of a rectangular area. | 0.5 | +| focus_aw | deg | , horiz. angular dimension of a rectangular area. | 0 | +| focus_ah | deg | , vert. angular dimension of a rectangular area. | 0 | +| focus_r | m | case of circular focusing, focusing radius. | 0 | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/sasmodels/SasView_gaussian_peak.comp) for `SasView_gaussian_peak.comp`. + +--- + +*Generated on mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/sasmodels/SasView_gel_fit.md b/mcstas-comps/sasmodels/SasView_gel_fit.md new file mode 100644 index 000000000..c9306486e --- /dev/null +++ b/mcstas-comps/sasmodels/SasView_gel_fit.md @@ -0,0 +1,60 @@ +# The `SasView_gel_fit` Component + +*McStas: SasView gel_fit model component as sample description.* + +## Identification + +- **Site:** +- **Author:** Jose Robledo +- **Origin:** FZJ / DTU / ESS DMSC +- **Date:** + +## Description + +```text +SasView_gel_fit component, generated from gel_fit.c in sasmodels. + +Example: +SasView_gel_fit(guinier_scale, lorentz_scale, rg, fractal_dim, cor_length, +model_scale=1.0, model_abs=0.0, xwidth=0.01, yheight=0.01, zdepth=0.005, R=0, +int target_index=1, target_x=0, target_y=0, target_z=1, +focus_xw=0.5, focus_yh=0.5, focus_aw=0, focus_ah=0, focus_r=0, +pd_rg=0.0, pd_cor_length=0.0) +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| guinier_scale | cm^-1 | ([-inf, inf]) Guinier term scale. | 1.7 | +| lorentz_scale | cm^-1 | ([-inf, inf]) Lorentz term scale. | 3.5 | +| rg | Ang | ([2, inf]) Radius of gyration. | 104.0 | +| fractal_dim | | ([0, inf]) Fractal exponent. | 2.0 | +| cor_length | Ang | ([0, inf]) Correlation length. | 16.0 | +| model_scale | | Global scale factor for scattering kernel. For systems without inter-particle interference, the form factors can be related to the scattering intensity by the particle volume fraction. | 1.0 | +| model_abs | | Absorption cross section density at 2200 m/s. | 0.0 | +| xwidth | m | ([-inf, inf]) Horiz. dimension of sample, as a width. | 0.01 | +| yheight | m | ([-inf, inf]) vert . dimension of sample, as a height for cylinder/box | 0.01 | +| zdepth | m | ([-inf, inf]) depth of sample | 0.005 | +| R | m | Outer radius of sample in (x,z) plane for cylinder/sphere. | 0 | +| target_x | m | relative focus target position. | 0 | +| target_y | m | relative focus target position. | 0 | +| target_z | m | relative focus target position. | 1 | +| target_index | | Relative index of component to focus at, e.g. next is +1. | 1 | +| focus_xw | m | horiz. dimension of a rectangular area. | 0.5 | +| focus_yh | m | , vert. dimension of a rectangular area. | 0.5 | +| focus_aw | deg | , horiz. angular dimension of a rectangular area. | 0 | +| focus_ah | deg | , vert. angular dimension of a rectangular area. | 0 | +| focus_r | m | case of circular focusing, focusing radius. | 0 | +| pd_rg | | (0,inf) defined as (dx/x), where x is de mean value and dx the standard devition of the variable. | 0.0 | +| pd_cor_length | | (0,inf) defined as (dx/x), where x is de mean value and dx the standard devition of the variable | 0.0 | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/sasmodels/SasView_gel_fit.comp) for `SasView_gel_fit.comp`. + +--- + +*Generated on mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/sasmodels/SasView_guinier.md b/mcstas-comps/sasmodels/SasView_guinier.md new file mode 100644 index 000000000..00c585133 --- /dev/null +++ b/mcstas-comps/sasmodels/SasView_guinier.md @@ -0,0 +1,55 @@ +# The `SasView_guinier` Component + +*McStas: SasView guinier model component as sample description.* + +## Identification + +- **Site:** +- **Author:** Jose Robledo +- **Origin:** FZJ / DTU / ESS DMSC +- **Date:** + +## Description + +```text +SasView_guinier component, generated from guinier.c in sasmodels. + +Example: +SasView_guinier(rg, +model_scale=1.0, model_abs=0.0, xwidth=0.01, yheight=0.01, zdepth=0.005, R=0, +int target_index=1, target_x=0, target_y=0, target_z=1, +focus_xw=0.5, focus_yh=0.5, focus_aw=0, focus_ah=0, focus_r=0, +pd_rg=0.0) +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| rg | Ang | ([-inf, inf]) Radius of Gyration. | 60.0 | +| model_scale | | Global scale factor for scattering kernel. For systems without inter-particle interference, the form factors can be related to the scattering intensity by the particle volume fraction. | 1.0 | +| model_abs | | Absorption cross section density at 2200 m/s. | 0.0 | +| xwidth | m | ([-inf, inf]) Horiz. dimension of sample, as a width. | 0.01 | +| yheight | m | ([-inf, inf]) vert . dimension of sample, as a height for cylinder/box | 0.01 | +| zdepth | m | ([-inf, inf]) depth of sample | 0.005 | +| R | m | Outer radius of sample in (x,z) plane for cylinder/sphere. | 0 | +| target_x | m | relative focus target position. | 0 | +| target_y | m | relative focus target position. | 0 | +| target_z | m | relative focus target position. | 1 | +| target_index | | Relative index of component to focus at, e.g. next is +1. | 1 | +| focus_xw | m | horiz. dimension of a rectangular area. | 0.5 | +| focus_yh | m | , vert. dimension of a rectangular area. | 0.5 | +| focus_aw | deg | , horiz. angular dimension of a rectangular area. | 0 | +| focus_ah | deg | , vert. angular dimension of a rectangular area. | 0 | +| focus_r | m | case of circular focusing, focusing radius. | 0 | +| pd_rg | | (0,inf) defined as (dx/x), where x is de mean value and dx the standard devition of the variable | 0.0 | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/sasmodels/SasView_guinier.comp) for `SasView_guinier.comp`. + +--- + +*Generated on mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/sasmodels/SasView_guinier_porod.md b/mcstas-comps/sasmodels/SasView_guinier_porod.md new file mode 100644 index 000000000..689733568 --- /dev/null +++ b/mcstas-comps/sasmodels/SasView_guinier_porod.md @@ -0,0 +1,57 @@ +# The `SasView_guinier_porod` Component + +*McStas: SasView guinier_porod model component as sample description.* + +## Identification + +- **Site:** +- **Author:** Jose Robledo +- **Origin:** FZJ / DTU / ESS DMSC +- **Date:** + +## Description + +```text +SasView_guinier_porod component, generated from guinier_porod.c in sasmodels. + +Example: +SasView_guinier_porod(rg, s, porod_exp, +model_scale=1.0, model_abs=0.0, xwidth=0.01, yheight=0.01, zdepth=0.005, R=0, +int target_index=1, target_x=0, target_y=0, target_z=1, +focus_xw=0.5, focus_yh=0.5, focus_aw=0, focus_ah=0, focus_r=0, +pd_rg=0.0) +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| rg | Ang | ([0, inf]) Radius of gyration. | 60.0 | +| s | | ([0, inf]) Dimension variable. | 1.0 | +| porod_exp | | ([0, inf]) Porod exponent. | 3.0 | +| model_scale | | Global scale factor for scattering kernel. For systems without inter-particle interference, the form factors can be related to the scattering intensity by the particle volume fraction. | 1.0 | +| model_abs | | Absorption cross section density at 2200 m/s. | 0.0 | +| xwidth | m | ([-inf, inf]) Horiz. dimension of sample, as a width. | 0.01 | +| yheight | m | ([-inf, inf]) vert . dimension of sample, as a height for cylinder/box | 0.01 | +| zdepth | m | ([-inf, inf]) depth of sample | 0.005 | +| R | m | Outer radius of sample in (x,z) plane for cylinder/sphere. | 0 | +| target_x | m | relative focus target position. | 0 | +| target_y | m | relative focus target position. | 0 | +| target_z | m | relative focus target position. | 1 | +| target_index | | Relative index of component to focus at, e.g. next is +1. | 1 | +| focus_xw | m | horiz. dimension of a rectangular area. | 0.5 | +| focus_yh | m | , vert. dimension of a rectangular area. | 0.5 | +| focus_aw | deg | , horiz. angular dimension of a rectangular area. | 0 | +| focus_ah | deg | , vert. angular dimension of a rectangular area. | 0 | +| focus_r | m | case of circular focusing, focusing radius. | 0 | +| pd_rg | | (0,inf) defined as (dx/x), where x is de mean value and dx the standard devition of the variable | 0.0 | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/sasmodels/SasView_guinier_porod.comp) for `SasView_guinier_porod.comp`. + +--- + +*Generated on mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/sasmodels/SasView_hardsphere.md b/mcstas-comps/sasmodels/SasView_hardsphere.md new file mode 100644 index 000000000..949eab0f0 --- /dev/null +++ b/mcstas-comps/sasmodels/SasView_hardsphere.md @@ -0,0 +1,56 @@ +# The `SasView_hardsphere` Component + +*McStas: SasView hardsphere model component as sample description.* + +## Identification + +- **Site:** +- **Author:** Jose Robledo +- **Origin:** FZJ / DTU / ESS DMSC +- **Date:** + +## Description + +```text +SasView_hardsphere component, generated from hardsphere.c in sasmodels. + +Example: +SasView_hardsphere(radius_effective, volfraction, +model_scale=1.0, model_abs=0.0, xwidth=0.01, yheight=0.01, zdepth=0.005, R=0, +int target_index=1, target_x=0, target_y=0, target_z=1, +focus_xw=0.5, focus_yh=0.5, focus_aw=0, focus_ah=0, focus_r=0, +pd_radius_effective=0.0) +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| radius_effective | Ang | ([0, inf]) effective radius of hard sphere. | 50.0 | +| volfraction | | ([0, 0.74]) volume fraction of hard spheres. | 0.2 | +| model_scale | | Global scale factor for scattering kernel. For systems without inter-particle interference, the form factors can be related to the scattering intensity by the particle volume fraction. | 1.0 | +| model_abs | | Absorption cross section density at 2200 m/s. | 0.0 | +| xwidth | m | ([-inf, inf]) Horiz. dimension of sample, as a width. | 0.01 | +| yheight | m | ([-inf, inf]) vert . dimension of sample, as a height for cylinder/box | 0.01 | +| zdepth | m | ([-inf, inf]) depth of sample | 0.005 | +| R | m | Outer radius of sample in (x,z) plane for cylinder/sphere. | 0 | +| target_x | m | relative focus target position. | 0 | +| target_y | m | relative focus target position. | 0 | +| target_z | m | relative focus target position. | 1 | +| target_index | | Relative index of component to focus at, e.g. next is +1. | 1 | +| focus_xw | m | horiz. dimension of a rectangular area. | 0.5 | +| focus_yh | m | , vert. dimension of a rectangular area. | 0.5 | +| focus_aw | deg | , horiz. angular dimension of a rectangular area. | 0 | +| focus_ah | deg | , vert. angular dimension of a rectangular area. | 0 | +| focus_r | m | case of circular focusing, focusing radius. | 0 | +| pd_radius_effective | | (0,inf) defined as (dx/x), where x is de mean value and dx the standard devition of the variable | 0.0 | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/sasmodels/SasView_hardsphere.comp) for `SasView_hardsphere.comp`. + +--- + +*Generated on mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/sasmodels/SasView_hayter_msa.md b/mcstas-comps/sasmodels/SasView_hayter_msa.md new file mode 100644 index 000000000..fa20e27aa --- /dev/null +++ b/mcstas-comps/sasmodels/SasView_hayter_msa.md @@ -0,0 +1,61 @@ +# The `SasView_hayter_msa` Component + +*McStas: SasView hayter_msa model component as sample description.* + +## Identification + +- **Site:** +- **Author:** Jose Robledo +- **Origin:** FZJ / DTU / ESS DMSC +- **Date:** + +## Description + +```text +SasView_hayter_msa component, generated from hayter_msa.c in sasmodels. + +Example: +SasView_hayter_msa(radius_effective, volfraction, charge, temperature, concentration_salt, dielectconst, +model_scale=1.0, model_abs=0.0, xwidth=0.01, yheight=0.01, zdepth=0.005, R=0, +int target_index=1, target_x=0, target_y=0, target_z=1, +focus_xw=0.5, focus_yh=0.5, focus_aw=0, focus_ah=0, focus_r=0, +pd_radius_effective=0.0, pd_charge=0.0) +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| radius_effective | Ang | ([0, inf]) effective radius of charged sphere. | 20.75 | +| volfraction | None | ([0, 0.74]) volume fraction of spheres. | 0.0192 | +| charge | e | ([1e-06, 200]) charge on sphere (in electrons). | 19.0 | +| temperature | K | ([0, 450]) temperature, in Kelvin, for Debye length calculation. | 318.16 | +| concentration_salt | M | ([0, inf]) conc of salt, moles/litre, 1:1 electolyte, for Debye length. | 0.0 | +| dielectconst | None | ([-inf, inf]) dielectric constant (relative permittivity) of solvent, kappa, default water, for Debye length. | 71.08 | +| model_scale | | Global scale factor for scattering kernel. For systems without inter-particle interference, the form factors can be related to the scattering intensity by the particle volume fraction. | 1.0 | +| model_abs | | Absorption cross section density at 2200 m/s. | 0.0 | +| xwidth | m | ([-inf, inf]) Horiz. dimension of sample, as a width. | 0.01 | +| yheight | m | ([-inf, inf]) vert . dimension of sample, as a height for cylinder/box | 0.01 | +| zdepth | m | ([-inf, inf]) depth of sample | 0.005 | +| R | m | Outer radius of sample in (x,z) plane for cylinder/sphere. | 0 | +| target_x | m | relative focus target position. | 0 | +| target_y | m | relative focus target position. | 0 | +| target_z | m | relative focus target position. | 1 | +| target_index | | Relative index of component to focus at, e.g. next is +1. | 1 | +| focus_xw | m | horiz. dimension of a rectangular area. | 0.5 | +| focus_yh | m | , vert. dimension of a rectangular area. | 0.5 | +| focus_aw | deg | , horiz. angular dimension of a rectangular area. | 0 | +| focus_ah | deg | , vert. angular dimension of a rectangular area. | 0 | +| focus_r | m | case of circular focusing, focusing radius. | 0 | +| pd_radius_effective | | (0,inf) defined as (dx/x), where x is de mean value and dx the standard devition of the variable. | 0.0 | +| pd_charge | | (0,inf) defined as (dx/x), where x is de mean value and dx the standard devition of the variable | 0.0 | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/sasmodels/SasView_hayter_msa.comp) for `SasView_hayter_msa.comp`. + +--- + +*Generated on mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/sasmodels/SasView_hollow_cylinder.md b/mcstas-comps/sasmodels/SasView_hollow_cylinder.md new file mode 100644 index 000000000..e58f0c72d --- /dev/null +++ b/mcstas-comps/sasmodels/SasView_hollow_cylinder.md @@ -0,0 +1,61 @@ +# The `SasView_hollow_cylinder` Component + +*McStas: SasView hollow_cylinder model component as sample description.* + +## Identification + +- **Site:** +- **Author:** Jose Robledo +- **Origin:** FZJ / DTU / ESS DMSC +- **Date:** + +## Description + +```text +SasView_hollow_cylinder component, generated from hollow_cylinder.c in sasmodels. + +Example: +SasView_hollow_cylinder(radius, thickness, length, sld, sld_solvent, +model_scale=1.0, model_abs=0.0, xwidth=0.01, yheight=0.01, zdepth=0.005, R=0, +int target_index=1, target_x=0, target_y=0, target_z=1, +focus_xw=0.5, focus_yh=0.5, focus_aw=0, focus_ah=0, focus_r=0, +pd_radius=0.0, pd_thickness=0.0, pd_length=0.0) +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| radius | Ang | ([0, inf]) Cylinder core radius. | 20.0 | +| thickness | Ang | ([0, inf]) Cylinder wall thickness. | 10.0 | +| length | Ang | ([0, inf]) Cylinder total length. | 400.0 | +| sld | 1e-6/Ang^2 | ([-inf, inf]) Cylinder sld. | 6.3 | +| sld_solvent | 1e-6/Ang^2 | ([-inf, inf]) Solvent sld. | 1 | +| model_scale | | Global scale factor for scattering kernel. For systems without inter-particle interference, the form factors can be related to the scattering intensity by the particle volume fraction. | 1.0 | +| model_abs | | Absorption cross section density at 2200 m/s. | 0.0 | +| xwidth | m | ([-inf, inf]) Horiz. dimension of sample, as a width. | 0.01 | +| yheight | m | ([-inf, inf]) vert . dimension of sample, as a height for cylinder/box | 0.01 | +| zdepth | m | ([-inf, inf]) depth of sample | 0.005 | +| R | m | Outer radius of sample in (x,z) plane for cylinder/sphere. | 0 | +| target_x | m | relative focus target position. | 0 | +| target_y | m | relative focus target position. | 0 | +| target_z | m | relative focus target position. | 1 | +| target_index | | Relative index of component to focus at, e.g. next is +1. | 1 | +| focus_xw | m | horiz. dimension of a rectangular area. | 0.5 | +| focus_yh | m | , vert. dimension of a rectangular area. | 0.5 | +| focus_aw | deg | , horiz. angular dimension of a rectangular area. | 0 | +| focus_ah | deg | , vert. angular dimension of a rectangular area. | 0 | +| focus_r | m | case of circular focusing, focusing radius. | 0 | +| pd_radius | | (0,inf) defined as (dx/x), where x is de mean value and dx the standard devition of the variable. | 0.0 | +| pd_thickness | | (0,inf) defined as (dx/x), where x is de mean value and dx the standard devition of the variable. | 0.0 | +| pd_length | | (0,inf) defined as (dx/x), where x is de mean value and dx the standard devition of the variable | 0.0 | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/sasmodels/SasView_hollow_cylinder.comp) for `SasView_hollow_cylinder.comp`. + +--- + +*Generated on mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/sasmodels/SasView_hollow_cylinder_aniso.md b/mcstas-comps/sasmodels/SasView_hollow_cylinder_aniso.md new file mode 100644 index 000000000..2eff96968 --- /dev/null +++ b/mcstas-comps/sasmodels/SasView_hollow_cylinder_aniso.md @@ -0,0 +1,65 @@ +# The `SasView_hollow_cylinder_aniso` Component + +*McStas: SasView hollow_cylinder model component as sample description.* + +## Identification + +- **Site:** +- **Author:** Jose Robledo +- **Origin:** FZJ / DTU / ESS DMSC +- **Date:** + +## Description + +```text +SasView_hollow_cylinder component, generated from hollow_cylinder.c in sasmodels. + +Example: +SasView_hollow_cylinder_aniso(radius, thickness, length, sld, sld_solvent, theta, phi, +model_scale=1.0, model_abs=0.0, xwidth=0.01, yheight=0.01, zdepth=0.005, R=0, +int target_index=1, target_x=0, target_y=0, target_z=1, +focus_xw=0.5, focus_yh=0.5, focus_aw=0, focus_ah=0, focus_r=0, +pd_radius=0.0, pd_thickness=0.0, pd_length=0.0, pd_theta=0.0, pd_phi=0.0) +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| radius | Ang | ([0, inf]) Cylinder core radius. | 20.0 | +| thickness | Ang | ([0, inf]) Cylinder wall thickness. | 10.0 | +| length | Ang | ([0, inf]) Cylinder total length. | 400.0 | +| sld | 1e-6/Ang^2 | ([-inf, inf]) Cylinder sld. | 6.3 | +| sld_solvent | 1e-6/Ang^2 | ([-inf, inf]) Solvent sld. | 1 | +| theta | | | 90 | +| phi | | | 0 | +| model_scale | | Global scale factor for scattering kernel. For systems without inter-particle interference, the form factors can be related to the scattering intensity by the particle volume fraction. | 1.0 | +| model_abs | | Absorption cross section density at 2200 m/s. | 0.0 | +| xwidth | m | ([-inf, inf]) Horiz. dimension of sample, as a width. | 0.01 | +| yheight | m | ([-inf, inf]) vert . dimension of sample, as a height for cylinder/box | 0.01 | +| zdepth | m | ([-inf, inf]) depth of sample | 0.005 | +| R | m | Outer radius of sample in (x,z) plane for cylinder/sphere. | 0 | +| target_x | m | relative focus target position. | 0 | +| target_y | m | relative focus target position. | 0 | +| target_z | m | relative focus target position. | 1 | +| target_index | | Relative index of component to focus at, e.g. next is +1. | 1 | +| focus_xw | m | horiz. dimension of a rectangular area. | 0.5 | +| focus_yh | m | , vert. dimension of a rectangular area. | 0.5 | +| focus_aw | deg | , horiz. angular dimension of a rectangular area. | 0 | +| focus_ah | deg | , vert. angular dimension of a rectangular area. | 0 | +| focus_r | m | case of circular focusing, focusing radius. | 0 | +| pd_radius | | (0,inf) defined as (dx/x), where x is de mean value and dx the standard devition of the variable. | 0.0 | +| pd_thickness | | (0,inf) defined as (dx/x), where x is de mean value and dx the standard devition of the variable. | 0.0 | +| pd_length | | (0,inf) defined as (dx/x), where x is de mean value and dx the standard devition of the variable. | 0.0 | +| pd_theta | | (0,360) defined as (dx/x), where x is de mean value and dx the standard devition of the variable. | 0.0 | +| pd_phi | | (0,360) defined as (dx/x), where x is de mean value and dx the standard devition of the variable | 0.0 | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/sasmodels/SasView_hollow_cylinder_aniso.comp) for `SasView_hollow_cylinder_aniso.comp`. + +--- + +*Generated on mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/sasmodels/SasView_hollow_rectangular_prism.md b/mcstas-comps/sasmodels/SasView_hollow_rectangular_prism.md new file mode 100644 index 000000000..1ed028320 --- /dev/null +++ b/mcstas-comps/sasmodels/SasView_hollow_rectangular_prism.md @@ -0,0 +1,61 @@ +# The `SasView_hollow_rectangular_prism` Component + +*McStas: SasView hollow_rectangular_prism model component as sample description.* + +## Identification + +- **Site:** +- **Author:** Jose Robledo +- **Origin:** FZJ / DTU / ESS DMSC +- **Date:** + +## Description + +```text +SasView_hollow_rectangular_prism component, generated from hollow_rectangular_prism.c in sasmodels. + +Example: +SasView_hollow_rectangular_prism(sld, sld_solvent, length_a, b2a_ratio, c2a_ratio, thickness, +model_scale=1.0, model_abs=0.0, xwidth=0.01, yheight=0.01, zdepth=0.005, R=0, +int target_index=1, target_x=0, target_y=0, target_z=1, +focus_xw=0.5, focus_yh=0.5, focus_aw=0, focus_ah=0, focus_r=0, +pd_length_a=0.0, pd_thickness=0.0) +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| sld | 1e-6/Ang^2 | ([-inf, inf]) Parallelepiped scattering length density. | 6.3 | +| sld_solvent | 1e-6/Ang^2 | ([-inf, inf]) Solvent scattering length density. | 1 | +| length_a | Ang | ([0, inf]) Shortest, external, size of the parallelepiped. | 35 | +| b2a_ratio | Ang | ([0, inf]) Ratio sides b/a. | 1 | +| c2a_ratio | Ang | ([0, inf]) Ratio sides c/a. | 1 | +| thickness | Ang | ([0, inf]) Thickness of parallelepiped. | 1 | +| model_scale | | Global scale factor for scattering kernel. For systems without inter-particle interference, the form factors can be related to the scattering intensity by the particle volume fraction. | 1.0 | +| model_abs | | Absorption cross section density at 2200 m/s. | 0.0 | +| xwidth | m | ([-inf, inf]) Horiz. dimension of sample, as a width. | 0.01 | +| yheight | m | ([-inf, inf]) vert . dimension of sample, as a height for cylinder/box | 0.01 | +| zdepth | m | ([-inf, inf]) depth of sample | 0.005 | +| R | m | Outer radius of sample in (x,z) plane for cylinder/sphere. | 0 | +| target_x | m | relative focus target position. | 0 | +| target_y | m | relative focus target position. | 0 | +| target_z | m | relative focus target position. | 1 | +| target_index | | Relative index of component to focus at, e.g. next is +1. | 1 | +| focus_xw | m | horiz. dimension of a rectangular area. | 0.5 | +| focus_yh | m | , vert. dimension of a rectangular area. | 0.5 | +| focus_aw | deg | , horiz. angular dimension of a rectangular area. | 0 | +| focus_ah | deg | , vert. angular dimension of a rectangular area. | 0 | +| focus_r | m | case of circular focusing, focusing radius. | 0 | +| pd_length_a | | (0,inf) defined as (dx/x), where x is de mean value and dx the standard devition of the variable. | 0.0 | +| pd_thickness | | (0,inf) defined as (dx/x), where x is de mean value and dx the standard devition of the variable | 0.0 | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/sasmodels/SasView_hollow_rectangular_prism.comp) for `SasView_hollow_rectangular_prism.comp`. + +--- + +*Generated on mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/sasmodels/SasView_hollow_rectangular_prism_aniso.md b/mcstas-comps/sasmodels/SasView_hollow_rectangular_prism_aniso.md new file mode 100644 index 000000000..9f0e6612c --- /dev/null +++ b/mcstas-comps/sasmodels/SasView_hollow_rectangular_prism_aniso.md @@ -0,0 +1,67 @@ +# The `SasView_hollow_rectangular_prism_aniso` Component + +*McStas: SasView hollow_rectangular_prism model component as sample description.* + +## Identification + +- **Site:** +- **Author:** Jose Robledo +- **Origin:** FZJ / DTU / ESS DMSC +- **Date:** + +## Description + +```text +SasView_hollow_rectangular_prism component, generated from hollow_rectangular_prism.c in sasmodels. + +Example: +SasView_hollow_rectangular_prism_aniso(sld, sld_solvent, length_a, b2a_ratio, c2a_ratio, thickness, theta, phi, Psi, +model_scale=1.0, model_abs=0.0, xwidth=0.01, yheight=0.01, zdepth=0.005, R=0, +int target_index=1, target_x=0, target_y=0, target_z=1, +focus_xw=0.5, focus_yh=0.5, focus_aw=0, focus_ah=0, focus_r=0, +pd_length_a=0.0, pd_thickness=0.0, pd_theta=0.0, pd_phi=0.0, pd_Psi=0.0) +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| sld | 1e-6/Ang^2 | ([-inf, inf]) Parallelepiped scattering length density. | 6.3 | +| sld_solvent | 1e-6/Ang^2 | ([-inf, inf]) Solvent scattering length density. | 1 | +| length_a | Ang | ([0, inf]) Shortest, external, size of the parallelepiped. | 35 | +| b2a_ratio | Ang | ([0, inf]) Ratio sides b/a. | 1 | +| c2a_ratio | Ang | ([0, inf]) Ratio sides c/a. | 1 | +| thickness | Ang | ([0, inf]) Thickness of parallelepiped. | 1 | +| theta | | | 0 | +| phi | | | 0 | +| Psi | | | 0 | +| model_scale | | Global scale factor for scattering kernel. For systems without inter-particle interference, the form factors can be related to the scattering intensity by the particle volume fraction. | 1.0 | +| model_abs | | Absorption cross section density at 2200 m/s. | 0.0 | +| xwidth | m | ([-inf, inf]) Horiz. dimension of sample, as a width. | 0.01 | +| yheight | m | ([-inf, inf]) vert . dimension of sample, as a height for cylinder/box | 0.01 | +| zdepth | m | ([-inf, inf]) depth of sample | 0.005 | +| R | m | Outer radius of sample in (x,z) plane for cylinder/sphere. | 0 | +| target_x | m | relative focus target position. | 0 | +| target_y | m | relative focus target position. | 0 | +| target_z | m | relative focus target position. | 1 | +| target_index | | Relative index of component to focus at, e.g. next is +1. | 1 | +| focus_xw | m | horiz. dimension of a rectangular area. | 0.5 | +| focus_yh | m | , vert. dimension of a rectangular area. | 0.5 | +| focus_aw | deg | , horiz. angular dimension of a rectangular area. | 0 | +| focus_ah | deg | , vert. angular dimension of a rectangular area. | 0 | +| focus_r | m | case of circular focusing, focusing radius. | 0 | +| pd_length_a | | (0,inf) defined as (dx/x), where x is de mean value and dx the standard devition of the variable. | 0.0 | +| pd_thickness | | (0,inf) defined as (dx/x), where x is de mean value and dx the standard devition of the variable. | 0.0 | +| pd_theta | | (0,360) defined as (dx/x), where x is de mean value and dx the standard devition of the variable. | 0.0 | +| pd_phi | | (0,360) defined as (dx/x), where x is de mean value and dx the standard devition of the variable. | 0.0 | +| pd_Psi | | (0,360) defined as (dx/x), where x is de mean value and dx the standard devition of the variable | 0.0 | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/sasmodels/SasView_hollow_rectangular_prism_aniso.comp) for `SasView_hollow_rectangular_prism_aniso.comp`. + +--- + +*Generated on mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/sasmodels/SasView_hollow_rectangular_prism_thin_walls.md b/mcstas-comps/sasmodels/SasView_hollow_rectangular_prism_thin_walls.md new file mode 100644 index 000000000..7e2718f0b --- /dev/null +++ b/mcstas-comps/sasmodels/SasView_hollow_rectangular_prism_thin_walls.md @@ -0,0 +1,59 @@ +# The `SasView_hollow_rectangular_prism_thin_walls` Component + +*McStas: SasView hollow_rectangular_prism_thin_walls model component as sample description.* + +## Identification + +- **Site:** +- **Author:** Jose Robledo +- **Origin:** FZJ / DTU / ESS DMSC +- **Date:** + +## Description + +```text +SasView_hollow_rectangular_prism_thin_walls component, generated from hollow_rectangular_prism_thin_walls.c in sasmodels. + +Example: +SasView_hollow_rectangular_prism_thin_walls(sld, sld_solvent, length_a, b2a_ratio, c2a_ratio, +model_scale=1.0, model_abs=0.0, xwidth=0.01, yheight=0.01, zdepth=0.005, R=0, +int target_index=1, target_x=0, target_y=0, target_z=1, +focus_xw=0.5, focus_yh=0.5, focus_aw=0, focus_ah=0, focus_r=0, +pd_length_a=0.0) +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| sld | 1e-6/Ang^2 | ([-inf, inf]) Parallelepiped scattering length density. | 6.3 | +| sld_solvent | 1e-6/Ang^2 | ([-inf, inf]) Solvent scattering length density. | 1 | +| length_a | Ang | ([0, inf]) Shorter side of the parallelepiped. | 35 | +| b2a_ratio | Ang | ([0, inf]) Ratio sides b/a. | 1 | +| c2a_ratio | Ang | ([0, inf]) Ratio sides c/a. | 1 | +| model_scale | | Global scale factor for scattering kernel. For systems without inter-particle interference, the form factors can be related to the scattering intensity by the particle volume fraction. | 1.0 | +| model_abs | | Absorption cross section density at 2200 m/s. | 0.0 | +| xwidth | m | ([-inf, inf]) Horiz. dimension of sample, as a width. | 0.01 | +| yheight | m | ([-inf, inf]) vert . dimension of sample, as a height for cylinder/box | 0.01 | +| zdepth | m | ([-inf, inf]) depth of sample | 0.005 | +| R | m | Outer radius of sample in (x,z) plane for cylinder/sphere. | 0 | +| target_x | m | relative focus target position. | 0 | +| target_y | m | relative focus target position. | 0 | +| target_z | m | relative focus target position. | 1 | +| target_index | | Relative index of component to focus at, e.g. next is +1. | 1 | +| focus_xw | m | horiz. dimension of a rectangular area. | 0.5 | +| focus_yh | m | , vert. dimension of a rectangular area. | 0.5 | +| focus_aw | deg | , horiz. angular dimension of a rectangular area. | 0 | +| focus_ah | deg | , vert. angular dimension of a rectangular area. | 0 | +| focus_r | m | case of circular focusing, focusing radius. | 0 | +| pd_length_a | | (0,inf) defined as (dx/x), where x is de mean value and dx the standard devition of the variable | 0.0 | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/sasmodels/SasView_hollow_rectangular_prism_thin_walls.comp) for `SasView_hollow_rectangular_prism_thin_walls.comp`. + +--- + +*Generated on mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/sasmodels/SasView_lamellar_hg.md b/mcstas-comps/sasmodels/SasView_lamellar_hg.md new file mode 100644 index 000000000..72f5ef0d8 --- /dev/null +++ b/mcstas-comps/sasmodels/SasView_lamellar_hg.md @@ -0,0 +1,60 @@ +# The `SasView_lamellar_hg` Component + +*McStas: SasView lamellar_hg model component as sample description.* + +## Identification + +- **Site:** +- **Author:** Jose Robledo +- **Origin:** FZJ / DTU / ESS DMSC +- **Date:** + +## Description + +```text +SasView_lamellar_hg component, generated from lamellar_hg.c in sasmodels. + +Example: +SasView_lamellar_hg(length_tail, length_head, sld, sld_head, sld_solvent, +model_scale=1.0, model_abs=0.0, xwidth=0.01, yheight=0.01, zdepth=0.005, R=0, +int target_index=1, target_x=0, target_y=0, target_z=1, +focus_xw=0.5, focus_yh=0.5, focus_aw=0, focus_ah=0, focus_r=0, +pd_length_tail=0.0, pd_length_head=0.0) +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| length_tail | Ang | ([0, inf]) Tail thickness ( total = H+T+T+H). | 15 | +| length_head | Ang | ([0, inf]) Head thickness. | 10 | +| sld | 1e-6/Ang^2 | ([-inf, inf]) Tail scattering length density. | 0.4 | +| sld_head | 1e-6/Ang^2 | ([-inf, inf]) Head scattering length density. | 3.0 | +| sld_solvent | 1e-6/Ang^2 | ([-inf, inf]) Solvent scattering length density. | 6 | +| model_scale | | Global scale factor for scattering kernel. For systems without inter-particle interference, the form factors can be related to the scattering intensity by the particle volume fraction. | 1.0 | +| model_abs | | Absorption cross section density at 2200 m/s. | 0.0 | +| xwidth | m | ([-inf, inf]) Horiz. dimension of sample, as a width. | 0.01 | +| yheight | m | ([-inf, inf]) vert . dimension of sample, as a height for cylinder/box | 0.01 | +| zdepth | m | ([-inf, inf]) depth of sample | 0.005 | +| R | m | Outer radius of sample in (x,z) plane for cylinder/sphere. | 0 | +| target_x | m | relative focus target position. | 0 | +| target_y | m | relative focus target position. | 0 | +| target_z | m | relative focus target position. | 1 | +| target_index | | Relative index of component to focus at, e.g. next is +1. | 1 | +| focus_xw | m | horiz. dimension of a rectangular area. | 0.5 | +| focus_yh | m | , vert. dimension of a rectangular area. | 0.5 | +| focus_aw | deg | , horiz. angular dimension of a rectangular area. | 0 | +| focus_ah | deg | , vert. angular dimension of a rectangular area. | 0 | +| focus_r | m | case of circular focusing, focusing radius. | 0 | +| pd_length_tail | | (0,inf) defined as (dx/x), where x is de mean value and dx the standard devition of the variable. | 0.0 | +| pd_length_head | | (0,inf) defined as (dx/x), where x is de mean value and dx the standard devition of the variable | 0.0 | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/sasmodels/SasView_lamellar_hg.comp) for `SasView_lamellar_hg.comp`. + +--- + +*Generated on mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/sasmodels/SasView_lamellar_hg_stack_caille.md b/mcstas-comps/sasmodels/SasView_lamellar_hg_stack_caille.md new file mode 100644 index 000000000..d4ad3707c --- /dev/null +++ b/mcstas-comps/sasmodels/SasView_lamellar_hg_stack_caille.md @@ -0,0 +1,63 @@ +# The `SasView_lamellar_hg_stack_caille` Component + +*McStas: SasView lamellar_hg_stack_caille model component as sample description.* + +## Identification + +- **Site:** +- **Author:** Jose Robledo +- **Origin:** FZJ / DTU / ESS DMSC +- **Date:** + +## Description + +```text +SasView_lamellar_hg_stack_caille component, generated from lamellar_hg_stack_caille.c in sasmodels. + +Example: +SasView_lamellar_hg_stack_caille(length_tail, length_head, Nlayers, d_spacing, Caille_parameter, sld, sld_head, sld_solvent, +model_scale=1.0, model_abs=0.0, xwidth=0.01, yheight=0.01, zdepth=0.005, R=0, +int target_index=1, target_x=0, target_y=0, target_z=1, +focus_xw=0.5, focus_yh=0.5, focus_aw=0, focus_ah=0, focus_r=0, +pd_length_tail=0.0, pd_length_head=0.0) +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| length_tail | Ang | ([0, inf]) Tail thickness. | 10 | +| length_head | Ang | ([0, inf]) head thickness. | 2 | +| Nlayers | | ([1, inf]) Number of layers. | 30 | +| d_spacing | Ang | ([0.0, inf]) lamellar d-spacing of Caille S(Q). | 40.0 | +| Caille_parameter | | ([0.0, 0.8]) Caille parameter. | 0.001 | +| sld | 1e-6/Ang^2 | ([-inf, inf]) Tail scattering length density. | 0.4 | +| sld_head | 1e-6/Ang^2 | ([-inf, inf]) Head scattering length density. | 2.0 | +| sld_solvent | 1e-6/Ang^2 | ([-inf, inf]) Solvent scattering length density. | 6 | +| model_scale | | Global scale factor for scattering kernel. For systems without inter-particle interference, the form factors can be related to the scattering intensity by the particle volume fraction. | 1.0 | +| model_abs | | Absorption cross section density at 2200 m/s. | 0.0 | +| xwidth | m | ([-inf, inf]) Horiz. dimension of sample, as a width. | 0.01 | +| yheight | m | ([-inf, inf]) vert . dimension of sample, as a height for cylinder/box | 0.01 | +| zdepth | m | ([-inf, inf]) depth of sample | 0.005 | +| R | m | Outer radius of sample in (x,z) plane for cylinder/sphere. | 0 | +| target_x | m | relative focus target position. | 0 | +| target_y | m | relative focus target position. | 0 | +| target_z | m | relative focus target position. | 1 | +| target_index | | Relative index of component to focus at, e.g. next is +1. | 1 | +| focus_xw | m | horiz. dimension of a rectangular area. | 0.5 | +| focus_yh | m | , vert. dimension of a rectangular area. | 0.5 | +| focus_aw | deg | , horiz. angular dimension of a rectangular area. | 0 | +| focus_ah | deg | , vert. angular dimension of a rectangular area. | 0 | +| focus_r | m | case of circular focusing, focusing radius. | 0 | +| pd_length_tail | | (0,inf) defined as (dx/x), where x is de mean value and dx the standard devition of the variable. | 0.0 | +| pd_length_head | | (0,inf) defined as (dx/x), where x is de mean value and dx the standard devition of the variable | 0.0 | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/sasmodels/SasView_lamellar_hg_stack_caille.comp) for `SasView_lamellar_hg_stack_caille.comp`. + +--- + +*Generated on mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/sasmodels/SasView_lamellar_stack_caille.md b/mcstas-comps/sasmodels/SasView_lamellar_stack_caille.md new file mode 100644 index 000000000..b47643700 --- /dev/null +++ b/mcstas-comps/sasmodels/SasView_lamellar_stack_caille.md @@ -0,0 +1,60 @@ +# The `SasView_lamellar_stack_caille` Component + +*McStas: SasView lamellar_stack_caille model component as sample description.* + +## Identification + +- **Site:** +- **Author:** Jose Robledo +- **Origin:** FZJ / DTU / ESS DMSC +- **Date:** + +## Description + +```text +SasView_lamellar_stack_caille component, generated from lamellar_stack_caille.c in sasmodels. + +Example: +SasView_lamellar_stack_caille(thickness, Nlayers, d_spacing, Caille_parameter, sld, sld_solvent, +model_scale=1.0, model_abs=0.0, xwidth=0.01, yheight=0.01, zdepth=0.005, R=0, +int target_index=1, target_x=0, target_y=0, target_z=1, +focus_xw=0.5, focus_yh=0.5, focus_aw=0, focus_ah=0, focus_r=0, +pd_thickness=0.0) +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| thickness | Ang | ([0, inf]) sheet thickness. | 30.0 | +| Nlayers | | ([1, inf]) Number of layers. | 20 | +| d_spacing | Ang | ([0.0, inf]) lamellar d-spacing of Caille S(Q). | 400.0 | +| Caille_parameter | 1/Ang^2 | ([0.0, 0.8]) Caille parameter. | 0.1 | +| sld | 1e-6/Ang^2 | ([-inf, inf]) layer scattering length density. | 6.3 | +| sld_solvent | 1e-6/Ang^2 | ([-inf, inf]) Solvent scattering length density. | 1.0 | +| model_scale | | Global scale factor for scattering kernel. For systems without inter-particle interference, the form factors can be related to the scattering intensity by the particle volume fraction. | 1.0 | +| model_abs | | Absorption cross section density at 2200 m/s. | 0.0 | +| xwidth | m | ([-inf, inf]) Horiz. dimension of sample, as a width. | 0.01 | +| yheight | m | ([-inf, inf]) vert . dimension of sample, as a height for cylinder/box | 0.01 | +| zdepth | m | ([-inf, inf]) depth of sample | 0.005 | +| R | m | Outer radius of sample in (x,z) plane for cylinder/sphere. | 0 | +| target_x | m | relative focus target position. | 0 | +| target_y | m | relative focus target position. | 0 | +| target_z | m | relative focus target position. | 1 | +| target_index | | Relative index of component to focus at, e.g. next is +1. | 1 | +| focus_xw | m | horiz. dimension of a rectangular area. | 0.5 | +| focus_yh | m | , vert. dimension of a rectangular area. | 0.5 | +| focus_aw | deg | , horiz. angular dimension of a rectangular area. | 0 | +| focus_ah | deg | , vert. angular dimension of a rectangular area. | 0 | +| focus_r | m | case of circular focusing, focusing radius. | 0 | +| pd_thickness | | (0,inf) defined as (dx/x), where x is de mean value and dx the standard devition of the variable | 0.0 | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/sasmodels/SasView_lamellar_stack_caille.comp) for `SasView_lamellar_stack_caille.comp`. + +--- + +*Generated on mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/sasmodels/SasView_lamellar_stack_paracrystal.md b/mcstas-comps/sasmodels/SasView_lamellar_stack_paracrystal.md new file mode 100644 index 000000000..c86cec228 --- /dev/null +++ b/mcstas-comps/sasmodels/SasView_lamellar_stack_paracrystal.md @@ -0,0 +1,60 @@ +# The `SasView_lamellar_stack_paracrystal` Component + +*McStas: SasView lamellar_stack_paracrystal model component as sample description.* + +## Identification + +- **Site:** +- **Author:** Jose Robledo +- **Origin:** FZJ / DTU / ESS DMSC +- **Date:** + +## Description + +```text +SasView_lamellar_stack_paracrystal component, generated from lamellar_stack_paracrystal.c in sasmodels. + +Example: +SasView_lamellar_stack_paracrystal(thickness, Nlayers, d_spacing, sigma_d, sld, sld_solvent, +model_scale=1.0, model_abs=0.0, xwidth=0.01, yheight=0.01, zdepth=0.005, R=0, +int target_index=1, target_x=0, target_y=0, target_z=1, +focus_xw=0.5, focus_yh=0.5, focus_aw=0, focus_ah=0, focus_r=0, +pd_thickness=0.0) +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| thickness | Ang | ([0, inf]) sheet thickness. | 33.0 | +| Nlayers | | ([1, inf]) Number of layers. | 20 | +| d_spacing | Ang | ([0.0, inf]) lamellar spacing of paracrystal stack. | 250.0 | +| sigma_d | Ang | ([0.0, inf]) Sigma (polydispersity) of the lamellar spacing. | 0.0 | +| sld | 1e-6/Ang^2 | ([-inf, inf]) layer scattering length density. | 1.0 | +| sld_solvent | 1e-6/Ang^2 | ([-inf, inf]) Solvent scattering length density. | 6.34 | +| model_scale | | Global scale factor for scattering kernel. For systems without inter-particle interference, the form factors can be related to the scattering intensity by the particle volume fraction. | 1.0 | +| model_abs | | Absorption cross section density at 2200 m/s. | 0.0 | +| xwidth | m | ([-inf, inf]) Horiz. dimension of sample, as a width. | 0.01 | +| yheight | m | ([-inf, inf]) vert . dimension of sample, as a height for cylinder/box | 0.01 | +| zdepth | m | ([-inf, inf]) depth of sample | 0.005 | +| R | m | Outer radius of sample in (x,z) plane for cylinder/sphere. | 0 | +| target_x | m | relative focus target position. | 0 | +| target_y | m | relative focus target position. | 0 | +| target_z | m | relative focus target position. | 1 | +| target_index | | Relative index of component to focus at, e.g. next is +1. | 1 | +| focus_xw | m | horiz. dimension of a rectangular area. | 0.5 | +| focus_yh | m | , vert. dimension of a rectangular area. | 0.5 | +| focus_aw | deg | , horiz. angular dimension of a rectangular area. | 0 | +| focus_ah | deg | , vert. angular dimension of a rectangular area. | 0 | +| focus_r | m | case of circular focusing, focusing radius. | 0 | +| pd_thickness | | (0,inf) defined as (dx/x), where x is de mean value and dx the standard devition of the variable | 0.0 | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/sasmodels/SasView_lamellar_stack_paracrystal.comp) for `SasView_lamellar_stack_paracrystal.comp`. + +--- + +*Generated on mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/sasmodels/SasView_line.md b/mcstas-comps/sasmodels/SasView_line.md new file mode 100644 index 000000000..51971a484 --- /dev/null +++ b/mcstas-comps/sasmodels/SasView_line.md @@ -0,0 +1,55 @@ +# The `SasView_line` Component + +*McStas: SasView line model component as sample description.* + +## Identification + +- **Site:** +- **Author:** Jose Robledo +- **Origin:** FZJ / DTU / ESS DMSC +- **Date:** + +## Description + +```text +SasView_line component, generated from line.c in sasmodels. + +Example: +SasView_line(intercept, slope, +model_scale=1.0, model_abs=0.0, xwidth=0.01, yheight=0.01, zdepth=0.005, R=0, +int target_index=1, target_x=0, target_y=0, target_z=1, +focus_xw=0.5, focus_yh=0.5, focus_aw=0, focus_ah=0, focus_r=0, +) +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| intercept | 1/cm | ([-inf, inf]) intercept in linear model. | 1.0 | +| slope | Ang/cm | ([-inf, inf]) slope in linear model. | 1.0 | +| model_scale | | Global scale factor for scattering kernel. For systems without inter-particle interference, the form factors can be related to the scattering intensity by the particle volume fraction. | 1.0 | +| model_abs | | Absorption cross section density at 2200 m/s. | 0.0 | +| xwidth | m | ([-inf, inf]) Horiz. dimension of sample, as a width. | 0.01 | +| yheight | m | ([-inf, inf]) vert . dimension of sample, as a height for cylinder/box | 0.01 | +| zdepth | m | ([-inf, inf]) depth of sample | 0.005 | +| R | m | Outer radius of sample in (x,z) plane for cylinder/sphere. | 0 | +| target_x | m | relative focus target position. | 0 | +| target_y | m | relative focus target position. | 0 | +| target_z | m | relative focus target position. | 1 | +| target_index | | Relative index of component to focus at, e.g. next is +1. | 1 | +| focus_xw | m | horiz. dimension of a rectangular area. | 0.5 | +| focus_yh | m | , vert. dimension of a rectangular area. | 0.5 | +| focus_aw | deg | , horiz. angular dimension of a rectangular area. | 0 | +| focus_ah | deg | , vert. angular dimension of a rectangular area. | 0 | +| focus_r | m | case of circular focusing, focusing radius. | 0 | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/sasmodels/SasView_line.comp) for `SasView_line.comp`. + +--- + +*Generated on mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/sasmodels/SasView_linear_pearls.md b/mcstas-comps/sasmodels/SasView_linear_pearls.md new file mode 100644 index 000000000..7b687e939 --- /dev/null +++ b/mcstas-comps/sasmodels/SasView_linear_pearls.md @@ -0,0 +1,59 @@ +# The `SasView_linear_pearls` Component + +*McStas: SasView linear_pearls model component as sample description.* + +## Identification + +- **Site:** +- **Author:** Jose Robledo +- **Origin:** FZJ / DTU / ESS DMSC +- **Date:** + +## Description + +```text +SasView_linear_pearls component, generated from linear_pearls.c in sasmodels. + +Example: +SasView_linear_pearls(radius, edge_sep, num_pearls, sld, sld_solvent, +model_scale=1.0, model_abs=0.0, xwidth=0.01, yheight=0.01, zdepth=0.005, R=0, +int target_index=1, target_x=0, target_y=0, target_z=1, +focus_xw=0.5, focus_yh=0.5, focus_aw=0, focus_ah=0, focus_r=0, +pd_radius=0.0) +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| radius | Ang | ([0, inf]) Radius of the pearls. | 80.0 | +| edge_sep | Ang | ([0, inf]) Length of the string segment - surface to surface. | 350.0 | +| num_pearls | | ([1, inf]) Number of the pearls. | 3.0 | +| sld | 1e-6/Ang^2 | ([-inf, inf]) SLD of the pearl spheres. | 1.0 | +| sld_solvent | 1e-6/Ang^2 | ([-inf, inf]) SLD of the solvent. | 6.3 | +| model_scale | | Global scale factor for scattering kernel. For systems without inter-particle interference, the form factors can be related to the scattering intensity by the particle volume fraction. | 1.0 | +| model_abs | | Absorption cross section density at 2200 m/s. | 0.0 | +| xwidth | m | ([-inf, inf]) Horiz. dimension of sample, as a width. | 0.01 | +| yheight | m | ([-inf, inf]) vert . dimension of sample, as a height for cylinder/box | 0.01 | +| zdepth | m | ([-inf, inf]) depth of sample | 0.005 | +| R | m | Outer radius of sample in (x,z) plane for cylinder/sphere. | 0 | +| target_x | m | relative focus target position. | 0 | +| target_y | m | relative focus target position. | 0 | +| target_z | m | relative focus target position. | 1 | +| target_index | | Relative index of component to focus at, e.g. next is +1. | 1 | +| focus_xw | m | horiz. dimension of a rectangular area. | 0.5 | +| focus_yh | m | , vert. dimension of a rectangular area. | 0.5 | +| focus_aw | deg | , horiz. angular dimension of a rectangular area. | 0 | +| focus_ah | deg | , vert. angular dimension of a rectangular area. | 0 | +| focus_r | m | case of circular focusing, focusing radius. | 0 | +| pd_radius | | (0,inf) defined as (dx/x), where x is de mean value and dx the standard devition of the variable | 0.0 | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/sasmodels/SasView_linear_pearls.comp) for `SasView_linear_pearls.comp`. + +--- + +*Generated on mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/sasmodels/SasView_lorentz.md b/mcstas-comps/sasmodels/SasView_lorentz.md new file mode 100644 index 000000000..3dce5f39f --- /dev/null +++ b/mcstas-comps/sasmodels/SasView_lorentz.md @@ -0,0 +1,55 @@ +# The `SasView_lorentz` Component + +*McStas: SasView lorentz model component as sample description.* + +## Identification + +- **Site:** +- **Author:** Jose Robledo +- **Origin:** FZJ / DTU / ESS DMSC +- **Date:** + +## Description + +```text +SasView_lorentz component, generated from lorentz.c in sasmodels. + +Example: +SasView_lorentz(cor_length, +model_scale=1.0, model_abs=0.0, xwidth=0.01, yheight=0.01, zdepth=0.005, R=0, +int target_index=1, target_x=0, target_y=0, target_z=1, +focus_xw=0.5, focus_yh=0.5, focus_aw=0, focus_ah=0, focus_r=0, +pd_cor_length=0.0) +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| cor_length | Ang | ([0, inf]) Screening length. | 50.0 | +| model_scale | | Global scale factor for scattering kernel. For systems without inter-particle interference, the form factors can be related to the scattering intensity by the particle volume fraction. | 1.0 | +| model_abs | | Absorption cross section density at 2200 m/s. | 0.0 | +| xwidth | m | ([-inf, inf]) Horiz. dimension of sample, as a width. | 0.01 | +| yheight | m | ([-inf, inf]) vert . dimension of sample, as a height for cylinder/box | 0.01 | +| zdepth | m | ([-inf, inf]) depth of sample | 0.005 | +| R | m | Outer radius of sample in (x,z) plane for cylinder/sphere. | 0 | +| target_x | m | relative focus target position. | 0 | +| target_y | m | relative focus target position. | 0 | +| target_z | m | relative focus target position. | 1 | +| target_index | | Relative index of component to focus at, e.g. next is +1. | 1 | +| focus_xw | m | horiz. dimension of a rectangular area. | 0.5 | +| focus_yh | m | , vert. dimension of a rectangular area. | 0.5 | +| focus_aw | deg | , horiz. angular dimension of a rectangular area. | 0 | +| focus_ah | deg | , vert. angular dimension of a rectangular area. | 0 | +| focus_r | m | case of circular focusing, focusing radius. | 0 | +| pd_cor_length | | (0,inf) defined as (dx/x), where x is de mean value and dx the standard devition of the variable | 0.0 | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/sasmodels/SasView_lorentz.comp) for `SasView_lorentz.comp`. + +--- + +*Generated on mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/sasmodels/SasView_mass_fractal.md b/mcstas-comps/sasmodels/SasView_mass_fractal.md new file mode 100644 index 000000000..3be443605 --- /dev/null +++ b/mcstas-comps/sasmodels/SasView_mass_fractal.md @@ -0,0 +1,58 @@ +# The `SasView_mass_fractal` Component + +*McStas: SasView mass_fractal model component as sample description.* + +## Identification + +- **Site:** +- **Author:** Jose Robledo +- **Origin:** FZJ / DTU / ESS DMSC +- **Date:** + +## Description + +```text +SasView_mass_fractal component, generated from mass_fractal.c in sasmodels. + +Example: +SasView_mass_fractal(radius, fractal_dim_mass, cutoff_length, +model_scale=1.0, model_abs=0.0, xwidth=0.01, yheight=0.01, zdepth=0.005, R=0, +int target_index=1, target_x=0, target_y=0, target_z=1, +focus_xw=0.5, focus_yh=0.5, focus_aw=0, focus_ah=0, focus_r=0, +pd_radius=0.0, pd_cutoff_length=0.0) +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| radius | Ang | ([0.0, inf]) Particle radius. | 10.0 | +| fractal_dim_mass | | ([1.0, 6.0]) Mass fractal dimension. | 1.9 | +| cutoff_length | Ang | ([0.0, inf]) Cut-off length. | 100.0 | +| model_scale | | Global scale factor for scattering kernel. For systems without inter-particle interference, the form factors can be related to the scattering intensity by the particle volume fraction. | 1.0 | +| model_abs | | Absorption cross section density at 2200 m/s. | 0.0 | +| xwidth | m | ([-inf, inf]) Horiz. dimension of sample, as a width. | 0.01 | +| yheight | m | ([-inf, inf]) vert . dimension of sample, as a height for cylinder/box | 0.01 | +| zdepth | m | ([-inf, inf]) depth of sample | 0.005 | +| R | m | Outer radius of sample in (x,z) plane for cylinder/sphere. | 0 | +| target_x | m | relative focus target position. | 0 | +| target_y | m | relative focus target position. | 0 | +| target_z | m | relative focus target position. | 1 | +| target_index | | Relative index of component to focus at, e.g. next is +1. | 1 | +| focus_xw | m | horiz. dimension of a rectangular area. | 0.5 | +| focus_yh | m | , vert. dimension of a rectangular area. | 0.5 | +| focus_aw | deg | , horiz. angular dimension of a rectangular area. | 0 | +| focus_ah | deg | , vert. angular dimension of a rectangular area. | 0 | +| focus_r | m | case of circular focusing, focusing radius. | 0 | +| pd_radius | | (0,inf) defined as (dx/x), where x is de mean value and dx the standard devition of the variable. | 0.0 | +| pd_cutoff_length | | (0,inf) defined as (dx/x), where x is de mean value and dx the standard devition of the variable | 0.0 | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/sasmodels/SasView_mass_fractal.comp) for `SasView_mass_fractal.comp`. + +--- + +*Generated on mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/sasmodels/SasView_mass_surface_fractal.md b/mcstas-comps/sasmodels/SasView_mass_surface_fractal.md new file mode 100644 index 000000000..090666786 --- /dev/null +++ b/mcstas-comps/sasmodels/SasView_mass_surface_fractal.md @@ -0,0 +1,59 @@ +# The `SasView_mass_surface_fractal` Component + +*McStas: SasView mass_surface_fractal model component as sample description.* + +## Identification + +- **Site:** +- **Author:** Jose Robledo +- **Origin:** FZJ / DTU / ESS DMSC +- **Date:** + +## Description + +```text +SasView_mass_surface_fractal component, generated from mass_surface_fractal.c in sasmodels. + +Example: +SasView_mass_surface_fractal(fractal_dim_mass, fractal_dim_surf, rg_cluster, rg_primary, +model_scale=1.0, model_abs=0.0, xwidth=0.01, yheight=0.01, zdepth=0.005, R=0, +int target_index=1, target_x=0, target_y=0, target_z=1, +focus_xw=0.5, focus_yh=0.5, focus_aw=0, focus_ah=0, focus_r=0, +pd_rg_cluster=0.0, pd_rg_primary=0.0) +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| fractal_dim_mass | | ([0.0, 6.0]) Mass fractal dimension. | 1.8 | +| fractal_dim_surf | | ([0.0, 6.0]) Surface fractal dimension. | 2.3 | +| rg_cluster | Ang | ([0.0, inf]) Cluster radius of gyration. | 4000.0 | +| rg_primary | Ang | ([0.0, inf]) Primary particle radius of gyration. | 86.7 | +| model_scale | | Global scale factor for scattering kernel. For systems without inter-particle interference, the form factors can be related to the scattering intensity by the particle volume fraction. | 1.0 | +| model_abs | | Absorption cross section density at 2200 m/s. | 0.0 | +| xwidth | m | ([-inf, inf]) Horiz. dimension of sample, as a width. | 0.01 | +| yheight | m | ([-inf, inf]) vert . dimension of sample, as a height for cylinder/box | 0.01 | +| zdepth | m | ([-inf, inf]) depth of sample | 0.005 | +| R | m | Outer radius of sample in (x,z) plane for cylinder/sphere. | 0 | +| target_x | m | relative focus target position. | 0 | +| target_y | m | relative focus target position. | 0 | +| target_z | m | relative focus target position. | 1 | +| target_index | | Relative index of component to focus at, e.g. next is +1. | 1 | +| focus_xw | m | horiz. dimension of a rectangular area. | 0.5 | +| focus_yh | m | , vert. dimension of a rectangular area. | 0.5 | +| focus_aw | deg | , horiz. angular dimension of a rectangular area. | 0 | +| focus_ah | deg | , vert. angular dimension of a rectangular area. | 0 | +| focus_r | m | case of circular focusing, focusing radius. | 0 | +| pd_rg_cluster | | (0,inf) defined as (dx/x), where x is de mean value and dx the standard devition of the variable. | 0.0 | +| pd_rg_primary | | (0,inf) defined as (dx/x), where x is de mean value and dx the standard devition of the variable | 0.0 | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/sasmodels/SasView_mass_surface_fractal.comp) for `SasView_mass_surface_fractal.comp`. + +--- + +*Generated on mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/sasmodels/SasView_mono_gauss_coil.md b/mcstas-comps/sasmodels/SasView_mono_gauss_coil.md new file mode 100644 index 000000000..8fb255f14 --- /dev/null +++ b/mcstas-comps/sasmodels/SasView_mono_gauss_coil.md @@ -0,0 +1,56 @@ +# The `SasView_mono_gauss_coil` Component + +*McStas: SasView mono_gauss_coil model component as sample description.* + +## Identification + +- **Site:** +- **Author:** Jose Robledo +- **Origin:** FZJ / DTU / ESS DMSC +- **Date:** + +## Description + +```text +SasView_mono_gauss_coil component, generated from mono_gauss_coil.c in sasmodels. + +Example: +SasView_mono_gauss_coil(i_zero, rg, +model_scale=1.0, model_abs=0.0, xwidth=0.01, yheight=0.01, zdepth=0.005, R=0, +int target_index=1, target_x=0, target_y=0, target_z=1, +focus_xw=0.5, focus_yh=0.5, focus_aw=0, focus_ah=0, focus_r=0, +pd_rg=0.0) +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| i_zero | 1/cm | ([0.0, inf]) Intensity at q=0. | 70.0 | +| rg | Ang | ([0.0, inf]) Radius of gyration. | 75.0 | +| model_scale | | Global scale factor for scattering kernel. For systems without inter-particle interference, the form factors can be related to the scattering intensity by the particle volume fraction. | 1.0 | +| model_abs | | Absorption cross section density at 2200 m/s. | 0.0 | +| xwidth | m | ([-inf, inf]) Horiz. dimension of sample, as a width. | 0.01 | +| yheight | m | ([-inf, inf]) vert . dimension of sample, as a height for cylinder/box | 0.01 | +| zdepth | m | ([-inf, inf]) depth of sample | 0.005 | +| R | m | Outer radius of sample in (x,z) plane for cylinder/sphere. | 0 | +| target_x | m | relative focus target position. | 0 | +| target_y | m | relative focus target position. | 0 | +| target_z | m | relative focus target position. | 1 | +| target_index | | Relative index of component to focus at, e.g. next is +1. | 1 | +| focus_xw | m | horiz. dimension of a rectangular area. | 0.5 | +| focus_yh | m | , vert. dimension of a rectangular area. | 0.5 | +| focus_aw | deg | , horiz. angular dimension of a rectangular area. | 0 | +| focus_ah | deg | , vert. angular dimension of a rectangular area. | 0 | +| focus_r | m | case of circular focusing, focusing radius. | 0 | +| pd_rg | | (0,inf) defined as (dx/x), where x is de mean value and dx the standard devition of the variable | 0.0 | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/sasmodels/SasView_mono_gauss_coil.comp) for `SasView_mono_gauss_coil.comp`. + +--- + +*Generated on mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/sasmodels/SasView_multilayer_vesicle.md b/mcstas-comps/sasmodels/SasView_multilayer_vesicle.md new file mode 100644 index 000000000..262696e5f --- /dev/null +++ b/mcstas-comps/sasmodels/SasView_multilayer_vesicle.md @@ -0,0 +1,63 @@ +# The `SasView_multilayer_vesicle` Component + +*McStas: SasView multilayer_vesicle model component as sample description.* + +## Identification + +- **Site:** +- **Author:** Jose Robledo +- **Origin:** FZJ / DTU / ESS DMSC +- **Date:** + +## Description + +```text +SasView_multilayer_vesicle component, generated from multilayer_vesicle.c in sasmodels. + +Example: +SasView_multilayer_vesicle(volfraction, radius, thick_shell, thick_solvent, sld_solvent, sld, n_shells, +model_scale=1.0, model_abs=0.0, xwidth=0.01, yheight=0.01, zdepth=0.005, R=0, +int target_index=1, target_x=0, target_y=0, target_z=1, +focus_xw=0.5, focus_yh=0.5, focus_aw=0, focus_ah=0, focus_r=0, +pd_radius=0.0, pd_thick_shell=0.0, pd_thick_solvent=0.0) +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| volfraction | | ([0.0, 1]) volume fraction of vesicles. | 0.05 | +| radius | Ang | ([0.0, inf]) radius of solvent filled core. | 60.0 | +| thick_shell | Ang | ([0.0, inf]) thickness of one shell. | 10.0 | +| thick_solvent | Ang | ([0.0, inf]) solvent thickness between shells. | 10.0 | +| sld_solvent | 1e-6/Ang^2 | ([-inf, inf]) solvent scattering length density. | 6.4 | +| sld | 1e-6/Ang^2 | ([-inf, inf]) Shell scattering length density. | 0.4 | +| n_shells | | ([1.0, inf]) Number of shell plus solvent layer pairs (must be integer). | 2.0 | +| model_scale | | Global scale factor for scattering kernel. For systems without inter-particle interference, the form factors can be related to the scattering intensity by the particle volume fraction. | 1.0 | +| model_abs | | Absorption cross section density at 2200 m/s. | 0.0 | +| xwidth | m | ([-inf, inf]) Horiz. dimension of sample, as a width. | 0.01 | +| yheight | m | ([-inf, inf]) vert . dimension of sample, as a height for cylinder/box | 0.01 | +| zdepth | m | ([-inf, inf]) depth of sample | 0.005 | +| R | m | Outer radius of sample in (x,z) plane for cylinder/sphere. | 0 | +| target_x | m | relative focus target position. | 0 | +| target_y | m | relative focus target position. | 0 | +| target_z | m | relative focus target position. | 1 | +| target_index | | Relative index of component to focus at, e.g. next is +1. | 1 | +| focus_xw | m | horiz. dimension of a rectangular area. | 0.5 | +| focus_yh | m | , vert. dimension of a rectangular area. | 0.5 | +| focus_aw | deg | , horiz. angular dimension of a rectangular area. | 0 | +| focus_ah | deg | , vert. angular dimension of a rectangular area. | 0 | +| focus_r | m | case of circular focusing, focusing radius. | 0 | +| pd_radius | | (0,inf) defined as (dx/x), where x is de mean value and dx the standard devition of the variable. | 0.0 | +| pd_thick_shell | | (0,inf) defined as (dx/x), where x is de mean value and dx the standard devition of the variable. | 0.0 | +| pd_thick_solvent | | (0,inf) defined as (dx/x), where x is de mean value and dx the standard devition of the variable | 0.0 | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/sasmodels/SasView_multilayer_vesicle.comp) for `SasView_multilayer_vesicle.comp`. + +--- + +*Generated on mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/sasmodels/SasView_onion.md b/mcstas-comps/sasmodels/SasView_onion.md new file mode 100644 index 000000000..73029d620 --- /dev/null +++ b/mcstas-comps/sasmodels/SasView_onion.md @@ -0,0 +1,38 @@ +# The `SasView_onion` Component + +*McStas: SasView onion model component as sample description.* + +## Identification + +- **Site:** +- **Author:** Jose Robledo +- **Origin:** FZJ / DTU / ESS DMSC +- **Date:** + +## Description + +```text +SasView_onion component, generated from onion.c in sasmodels. + +Example: +SasView_onion(sld_core, radius_core, sld_solvent, n_shells, sld_in[n_shells], sld_out[n_shells], thickness[n_shells], A[n_shells], +model_scale=1.0, model_abs=0.0, xwidth=0.01, yheight=0.01, zdepth=0.005, R=0, +int target_index=1, target_x=0, target_y=0, target_z=1, +focus_xw=0.5, focus_yh=0.5, focus_aw=0, focus_ah=0, focus_r=0, +pd_radius_core=0.0, pd_thickness[n_shells]=0.0) +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/sasmodels/SasView_onion.comp) for `SasView_onion.comp`. + +--- + +*Generated on mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/sasmodels/SasView_parallelepiped.md b/mcstas-comps/sasmodels/SasView_parallelepiped.md new file mode 100644 index 000000000..76c5f1c04 --- /dev/null +++ b/mcstas-comps/sasmodels/SasView_parallelepiped.md @@ -0,0 +1,61 @@ +# The `SasView_parallelepiped` Component + +*McStas: SasView parallelepiped model component as sample description.* + +## Identification + +- **Site:** +- **Author:** Jose Robledo +- **Origin:** FZJ / DTU / ESS DMSC +- **Date:** + +## Description + +```text +SasView_parallelepiped component, generated from parallelepiped.c in sasmodels. + +Example: +SasView_parallelepiped(sld, sld_solvent, length_a, length_b, length_c, +model_scale=1.0, model_abs=0.0, xwidth=0.01, yheight=0.01, zdepth=0.005, R=0, +int target_index=1, target_x=0, target_y=0, target_z=1, +focus_xw=0.5, focus_yh=0.5, focus_aw=0, focus_ah=0, focus_r=0, +pd_length_a=0.0, pd_length_b=0.0, pd_length_c=0.0) +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| sld | 1e-6/Ang^2 | ([-inf, inf]) Parallelepiped scattering length density. | 4 | +| sld_solvent | 1e-6/Ang^2 | ([-inf, inf]) Solvent scattering length density. | 1 | +| length_a | Ang | ([0, inf]) Shorter side of the parallelepiped. | 35 | +| length_b | Ang | ([0, inf]) Second side of the parallelepiped. | 75 | +| length_c | Ang | ([0, inf]) Larger side of the parallelepiped. | 400 | +| model_scale | | Global scale factor for scattering kernel. For systems without inter-particle interference, the form factors can be related to the scattering intensity by the particle volume fraction. | 1.0 | +| model_abs | | Absorption cross section density at 2200 m/s. | 0.0 | +| xwidth | m | ([-inf, inf]) Horiz. dimension of sample, as a width. | 0.01 | +| yheight | m | ([-inf, inf]) vert . dimension of sample, as a height for cylinder/box | 0.01 | +| zdepth | m | ([-inf, inf]) depth of sample | 0.005 | +| R | m | Outer radius of sample in (x,z) plane for cylinder/sphere. | 0 | +| target_x | m | relative focus target position. | 0 | +| target_y | m | relative focus target position. | 0 | +| target_z | m | relative focus target position. | 1 | +| target_index | | Relative index of component to focus at, e.g. next is +1. | 1 | +| focus_xw | m | horiz. dimension of a rectangular area. | 0.5 | +| focus_yh | m | , vert. dimension of a rectangular area. | 0.5 | +| focus_aw | deg | , horiz. angular dimension of a rectangular area. | 0 | +| focus_ah | deg | , vert. angular dimension of a rectangular area. | 0 | +| focus_r | m | case of circular focusing, focusing radius. | 0 | +| pd_length_a | | (0,inf) defined as (dx/x), where x is de mean value and dx the standard devition of the variable. | 0.0 | +| pd_length_b | | (0,inf) defined as (dx/x), where x is de mean value and dx the standard devition of the variable. | 0.0 | +| pd_length_c | | (0,inf) defined as (dx/x), where x is de mean value and dx the standard devition of the variable | 0.0 | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/sasmodels/SasView_parallelepiped.comp) for `SasView_parallelepiped.comp`. + +--- + +*Generated on mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/sasmodels/SasView_parallelepiped_aniso.md b/mcstas-comps/sasmodels/SasView_parallelepiped_aniso.md new file mode 100644 index 000000000..b5de134ea --- /dev/null +++ b/mcstas-comps/sasmodels/SasView_parallelepiped_aniso.md @@ -0,0 +1,67 @@ +# The `SasView_parallelepiped_aniso` Component + +*McStas: SasView parallelepiped model component as sample description.* + +## Identification + +- **Site:** +- **Author:** Jose Robledo +- **Origin:** FZJ / DTU / ESS DMSC +- **Date:** + +## Description + +```text +SasView_parallelepiped component, generated from parallelepiped.c in sasmodels. + +Example: +SasView_parallelepiped_aniso(sld, sld_solvent, length_a, length_b, length_c, theta, phi, Psi, +model_scale=1.0, model_abs=0.0, xwidth=0.01, yheight=0.01, zdepth=0.005, R=0, +int target_index=1, target_x=0, target_y=0, target_z=1, +focus_xw=0.5, focus_yh=0.5, focus_aw=0, focus_ah=0, focus_r=0, +pd_length_a=0.0, pd_length_b=0.0, pd_length_c=0.0, pd_theta=0.0, pd_phi=0.0, pd_Psi=0.0) +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| sld | 1e-6/Ang^2 | ([-inf, inf]) Parallelepiped scattering length density. | 4 | +| sld_solvent | 1e-6/Ang^2 | ([-inf, inf]) Solvent scattering length density. | 1 | +| length_a | Ang | ([0, inf]) Shorter side of the parallelepiped. | 35 | +| length_b | Ang | ([0, inf]) Second side of the parallelepiped. | 75 | +| length_c | Ang | ([0, inf]) Larger side of the parallelepiped. | 400 | +| theta | | | 60 | +| phi | | | 60 | +| Psi | | | 60 | +| model_scale | | Global scale factor for scattering kernel. For systems without inter-particle interference, the form factors can be related to the scattering intensity by the particle volume fraction. | 1.0 | +| model_abs | | Absorption cross section density at 2200 m/s. | 0.0 | +| xwidth | m | ([-inf, inf]) Horiz. dimension of sample, as a width. | 0.01 | +| yheight | m | ([-inf, inf]) vert . dimension of sample, as a height for cylinder/box | 0.01 | +| zdepth | m | ([-inf, inf]) depth of sample | 0.005 | +| R | m | Outer radius of sample in (x,z) plane for cylinder/sphere. | 0 | +| target_x | m | relative focus target position. | 0 | +| target_y | m | relative focus target position. | 0 | +| target_z | m | relative focus target position. | 1 | +| target_index | | Relative index of component to focus at, e.g. next is +1. | 1 | +| focus_xw | m | horiz. dimension of a rectangular area. | 0.5 | +| focus_yh | m | , vert. dimension of a rectangular area. | 0.5 | +| focus_aw | deg | , horiz. angular dimension of a rectangular area. | 0 | +| focus_ah | deg | , vert. angular dimension of a rectangular area. | 0 | +| focus_r | m | case of circular focusing, focusing radius. | 0 | +| pd_length_a | | (0,inf) defined as (dx/x), where x is de mean value and dx the standard devition of the variable. | 0.0 | +| pd_length_b | | (0,inf) defined as (dx/x), where x is de mean value and dx the standard devition of the variable. | 0.0 | +| pd_length_c | | (0,inf) defined as (dx/x), where x is de mean value and dx the standard devition of the variable. | 0.0 | +| pd_theta | | (0,360) defined as (dx/x), where x is de mean value and dx the standard devition of the variable. | 0.0 | +| pd_phi | | (0,360) defined as (dx/x), where x is de mean value and dx the standard devition of the variable. | 0.0 | +| pd_Psi | | (0,360) defined as (dx/x), where x is de mean value and dx the standard devition of the variable | 0.0 | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/sasmodels/SasView_parallelepiped_aniso.comp) for `SasView_parallelepiped_aniso.comp`. + +--- + +*Generated on mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/sasmodels/SasView_peak_lorentz.md b/mcstas-comps/sasmodels/SasView_peak_lorentz.md new file mode 100644 index 000000000..43b2486ac --- /dev/null +++ b/mcstas-comps/sasmodels/SasView_peak_lorentz.md @@ -0,0 +1,55 @@ +# The `SasView_peak_lorentz` Component + +*McStas: SasView peak_lorentz model component as sample description.* + +## Identification + +- **Site:** +- **Author:** Jose Robledo +- **Origin:** FZJ / DTU / ESS DMSC +- **Date:** + +## Description + +```text +SasView_peak_lorentz component, generated from peak_lorentz.c in sasmodels. + +Example: +SasView_peak_lorentz(peak_pos, peak_hwhm, +model_scale=1.0, model_abs=0.0, xwidth=0.01, yheight=0.01, zdepth=0.005, R=0, +int target_index=1, target_x=0, target_y=0, target_z=1, +focus_xw=0.5, focus_yh=0.5, focus_aw=0, focus_ah=0, focus_r=0, +) +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| peak_pos | 1/Ang | ([-inf, inf]) Peak postion in q. | 0.05 | +| peak_hwhm | 1/Ang | ([-inf, inf]) HWHM of peak. | 0.005 | +| model_scale | | Global scale factor for scattering kernel. For systems without inter-particle interference, the form factors can be related to the scattering intensity by the particle volume fraction. | 1.0 | +| model_abs | | Absorption cross section density at 2200 m/s. | 0.0 | +| xwidth | m | ([-inf, inf]) Horiz. dimension of sample, as a width. | 0.01 | +| yheight | m | ([-inf, inf]) vert . dimension of sample, as a height for cylinder/box | 0.01 | +| zdepth | m | ([-inf, inf]) depth of sample | 0.005 | +| R | m | Outer radius of sample in (x,z) plane for cylinder/sphere. | 0 | +| target_x | m | relative focus target position. | 0 | +| target_y | m | relative focus target position. | 0 | +| target_z | m | relative focus target position. | 1 | +| target_index | | Relative index of component to focus at, e.g. next is +1. | 1 | +| focus_xw | m | horiz. dimension of a rectangular area. | 0.5 | +| focus_yh | m | , vert. dimension of a rectangular area. | 0.5 | +| focus_aw | deg | , horiz. angular dimension of a rectangular area. | 0 | +| focus_ah | deg | , vert. angular dimension of a rectangular area. | 0 | +| focus_r | m | case of circular focusing, focusing radius. | 0 | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/sasmodels/SasView_peak_lorentz.comp) for `SasView_peak_lorentz.comp`. + +--- + +*Generated on mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/sasmodels/SasView_pearl_necklace.md b/mcstas-comps/sasmodels/SasView_pearl_necklace.md new file mode 100644 index 000000000..d67fe0011 --- /dev/null +++ b/mcstas-comps/sasmodels/SasView_pearl_necklace.md @@ -0,0 +1,62 @@ +# The `SasView_pearl_necklace` Component + +*McStas: SasView pearl_necklace model component as sample description.* + +## Identification + +- **Site:** +- **Author:** Jose Robledo +- **Origin:** FZJ / DTU / ESS DMSC +- **Date:** + +## Description + +```text +SasView_pearl_necklace component, generated from pearl_necklace.c in sasmodels. + +Example: +SasView_pearl_necklace(radius, edge_sep, thick_string, num_pearls, sld, sld_string, sld_solvent, +model_scale=1.0, model_abs=0.0, xwidth=0.01, yheight=0.01, zdepth=0.005, R=0, +int target_index=1, target_x=0, target_y=0, target_z=1, +focus_xw=0.5, focus_yh=0.5, focus_aw=0, focus_ah=0, focus_r=0, +pd_radius=0.0, pd_thick_string=0.0) +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| radius | Ang | ([0, inf]) Mean radius of the chained spheres. | 80.0 | +| edge_sep | Ang | ([0, inf]) Mean separation of chained particles. | 350.0 | +| thick_string | Ang | ([0, inf]) Thickness of the chain linkage. | 2.5 | +| num_pearls | none | ([1, inf]) Number of pearls in the necklace (must be integer). | 3 | +| sld | 1e-6/Ang^2 | ([-inf, inf]) Scattering length density of the chained spheres. | 1.0 | +| sld_string | 1e-6/Ang^2 | ([-inf, inf]) Scattering length density of the chain linkage. | 1.0 | +| sld_solvent | 1e-6/Ang^2 | ([-inf, inf]) Scattering length density of the solvent. | 6.3 | +| model_scale | | Global scale factor for scattering kernel. For systems without inter-particle interference, the form factors can be related to the scattering intensity by the particle volume fraction. | 1.0 | +| model_abs | | Absorption cross section density at 2200 m/s. | 0.0 | +| xwidth | m | ([-inf, inf]) Horiz. dimension of sample, as a width. | 0.01 | +| yheight | m | ([-inf, inf]) vert . dimension of sample, as a height for cylinder/box | 0.01 | +| zdepth | m | ([-inf, inf]) depth of sample | 0.005 | +| R | m | Outer radius of sample in (x,z) plane for cylinder/sphere. | 0 | +| target_x | m | relative focus target position. | 0 | +| target_y | m | relative focus target position. | 0 | +| target_z | m | relative focus target position. | 1 | +| target_index | | Relative index of component to focus at, e.g. next is +1. | 1 | +| focus_xw | m | horiz. dimension of a rectangular area. | 0.5 | +| focus_yh | m | , vert. dimension of a rectangular area. | 0.5 | +| focus_aw | deg | , horiz. angular dimension of a rectangular area. | 0 | +| focus_ah | deg | , vert. angular dimension of a rectangular area. | 0 | +| focus_r | m | case of circular focusing, focusing radius. | 0 | +| pd_radius | | (0,inf) defined as (dx/x), where x is de mean value and dx the standard devition of the variable. | 0.0 | +| pd_thick_string | | (0,inf) defined as (dx/x), where x is de mean value and dx the standard devition of the variable | 0.0 | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/sasmodels/SasView_pearl_necklace.comp) for `SasView_pearl_necklace.comp`. + +--- + +*Generated on mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/sasmodels/SasView_poly_gauss_coil.md b/mcstas-comps/sasmodels/SasView_poly_gauss_coil.md new file mode 100644 index 000000000..1ed20f268 --- /dev/null +++ b/mcstas-comps/sasmodels/SasView_poly_gauss_coil.md @@ -0,0 +1,57 @@ +# The `SasView_poly_gauss_coil` Component + +*McStas: SasView poly_gauss_coil model component as sample description.* + +## Identification + +- **Site:** +- **Author:** Jose Robledo +- **Origin:** FZJ / DTU / ESS DMSC +- **Date:** + +## Description + +```text +SasView_poly_gauss_coil component, generated from poly_gauss_coil.c in sasmodels. + +Example: +SasView_poly_gauss_coil(i_zero, rg, polydispersity, +model_scale=1.0, model_abs=0.0, xwidth=0.01, yheight=0.01, zdepth=0.005, R=0, +int target_index=1, target_x=0, target_y=0, target_z=1, +focus_xw=0.5, focus_yh=0.5, focus_aw=0, focus_ah=0, focus_r=0, +pd_rg=0.0) +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| i_zero | 1/cm | ([0.0, inf]) Intensity at q=0. | 70.0 | +| rg | Ang | ([0.0, inf]) Radius of gyration. | 75.0 | +| polydispersity | None | ([1.0, inf]) Polymer Mw/Mn. | 2.0 | +| model_scale | | Global scale factor for scattering kernel. For systems without inter-particle interference, the form factors can be related to the scattering intensity by the particle volume fraction. | 1.0 | +| model_abs | | Absorption cross section density at 2200 m/s. | 0.0 | +| xwidth | m | ([-inf, inf]) Horiz. dimension of sample, as a width. | 0.01 | +| yheight | m | ([-inf, inf]) vert . dimension of sample, as a height for cylinder/box | 0.01 | +| zdepth | m | ([-inf, inf]) depth of sample | 0.005 | +| R | m | Outer radius of sample in (x,z) plane for cylinder/sphere. | 0 | +| target_x | m | relative focus target position. | 0 | +| target_y | m | relative focus target position. | 0 | +| target_z | m | relative focus target position. | 1 | +| target_index | | Relative index of component to focus at, e.g. next is +1. | 1 | +| focus_xw | m | horiz. dimension of a rectangular area. | 0.5 | +| focus_yh | m | , vert. dimension of a rectangular area. | 0.5 | +| focus_aw | deg | , horiz. angular dimension of a rectangular area. | 0 | +| focus_ah | deg | , vert. angular dimension of a rectangular area. | 0 | +| focus_r | m | case of circular focusing, focusing radius. | 0 | +| pd_rg | | (0,inf) defined as (dx/x), where x is de mean value and dx the standard devition of the variable | 0.0 | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/sasmodels/SasView_poly_gauss_coil.comp) for `SasView_poly_gauss_coil.comp`. + +--- + +*Generated on mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/sasmodels/SasView_polymer_excl_volume.md b/mcstas-comps/sasmodels/SasView_polymer_excl_volume.md new file mode 100644 index 000000000..e4f88eb43 --- /dev/null +++ b/mcstas-comps/sasmodels/SasView_polymer_excl_volume.md @@ -0,0 +1,56 @@ +# The `SasView_polymer_excl_volume` Component + +*McStas: SasView polymer_excl_volume model component as sample description.* + +## Identification + +- **Site:** +- **Author:** Jose Robledo +- **Origin:** FZJ / DTU / ESS DMSC +- **Date:** + +## Description + +```text +SasView_polymer_excl_volume component, generated from polymer_excl_volume.c in sasmodels. + +Example: +SasView_polymer_excl_volume(rg, porod_exp, +model_scale=1.0, model_abs=0.0, xwidth=0.01, yheight=0.01, zdepth=0.005, R=0, +int target_index=1, target_x=0, target_y=0, target_z=1, +focus_xw=0.5, focus_yh=0.5, focus_aw=0, focus_ah=0, focus_r=0, +pd_rg=0.0) +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| rg | Ang | ([0, inf]) Radius of Gyration. | 60.0 | +| porod_exp | | ([0, inf]) Porod exponent. | 3.0 | +| model_scale | | Global scale factor for scattering kernel. For systems without inter-particle interference, the form factors can be related to the scattering intensity by the particle volume fraction. | 1.0 | +| model_abs | | Absorption cross section density at 2200 m/s. | 0.0 | +| xwidth | m | ([-inf, inf]) Horiz. dimension of sample, as a width. | 0.01 | +| yheight | m | ([-inf, inf]) vert . dimension of sample, as a height for cylinder/box | 0.01 | +| zdepth | m | ([-inf, inf]) depth of sample | 0.005 | +| R | m | Outer radius of sample in (x,z) plane for cylinder/sphere. | 0 | +| target_x | m | relative focus target position. | 0 | +| target_y | m | relative focus target position. | 0 | +| target_z | m | relative focus target position. | 1 | +| target_index | | Relative index of component to focus at, e.g. next is +1. | 1 | +| focus_xw | m | horiz. dimension of a rectangular area. | 0.5 | +| focus_yh | m | , vert. dimension of a rectangular area. | 0.5 | +| focus_aw | deg | , horiz. angular dimension of a rectangular area. | 0 | +| focus_ah | deg | , vert. angular dimension of a rectangular area. | 0 | +| focus_r | m | case of circular focusing, focusing radius. | 0 | +| pd_rg | | (0,inf) defined as (dx/x), where x is de mean value and dx the standard devition of the variable | 0.0 | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/sasmodels/SasView_polymer_excl_volume.comp) for `SasView_polymer_excl_volume.comp`. + +--- + +*Generated on mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/sasmodels/SasView_polymer_micelle.md b/mcstas-comps/sasmodels/SasView_polymer_micelle.md new file mode 100644 index 000000000..c869d5635 --- /dev/null +++ b/mcstas-comps/sasmodels/SasView_polymer_micelle.md @@ -0,0 +1,65 @@ +# The `SasView_polymer_micelle` Component + +*McStas: SasView polymer_micelle model component as sample description.* + +## Identification + +- **Site:** +- **Author:** Jose Robledo +- **Origin:** FZJ / DTU / ESS DMSC +- **Date:** + +## Description + +```text +SasView_polymer_micelle component, generated from polymer_micelle.c in sasmodels. + +Example: +SasView_polymer_micelle(ndensity, v_core, v_corona, sld_solvent, sld_core, sld_corona, radius_core, rg, d_penetration, n_aggreg, +model_scale=1.0, model_abs=0.0, xwidth=0.01, yheight=0.01, zdepth=0.005, R=0, +int target_index=1, target_x=0, target_y=0, target_z=1, +focus_xw=0.5, focus_yh=0.5, focus_aw=0, focus_ah=0, focus_r=0, +pd_radius_core=0.0, pd_rg=0.0) +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| ndensity | 1e15/cm^3 | ([0.0, inf]) Number density of micelles. | 8.94 | +| v_core | Ang^3 | ([0.0, inf]) Core volume . | 62624.0 | +| v_corona | Ang^3 | ([0.0, inf]) Corona volume. | 61940.0 | +| sld_solvent | 1e-6/Ang^2 | ([0.0, inf]) Solvent scattering length density. | 6.4 | +| sld_core | 1e-6/Ang^2 | ([0.0, inf]) Core scattering length density. | 0.34 | +| sld_corona | 1e-6/Ang^2 | ([0.0, inf]) Corona scattering length density. | 0.8 | +| radius_core | Ang | ([0.0, inf]) Radius of core ( must be >> rg ). | 45.0 | +| rg | Ang | ([0.0, inf]) Radius of gyration of chains in corona. | 20.0 | +| d_penetration | | ([-inf, inf]) Factor to mimic non-penetration of Gaussian chains. | 1.0 | +| n_aggreg | | ([-inf, inf]) Aggregation number of the micelle. | 6.0 | +| model_scale | | Global scale factor for scattering kernel. For systems without inter-particle interference, the form factors can be related to the scattering intensity by the particle volume fraction. | 1.0 | +| model_abs | | Absorption cross section density at 2200 m/s. | 0.0 | +| xwidth | m | ([-inf, inf]) Horiz. dimension of sample, as a width. | 0.01 | +| yheight | m | ([-inf, inf]) vert . dimension of sample, as a height for cylinder/box | 0.01 | +| zdepth | m | ([-inf, inf]) depth of sample | 0.005 | +| R | m | Outer radius of sample in (x,z) plane for cylinder/sphere. | 0 | +| target_x | m | relative focus target position. | 0 | +| target_y | m | relative focus target position. | 0 | +| target_z | m | relative focus target position. | 1 | +| target_index | | Relative index of component to focus at, e.g. next is +1. | 1 | +| focus_xw | m | horiz. dimension of a rectangular area. | 0.5 | +| focus_yh | m | , vert. dimension of a rectangular area. | 0.5 | +| focus_aw | deg | , horiz. angular dimension of a rectangular area. | 0 | +| focus_ah | deg | , vert. angular dimension of a rectangular area. | 0 | +| focus_r | m | case of circular focusing, focusing radius. | 0 | +| pd_radius_core | | (0,inf) defined as (dx/x), where x is de mean value and dx the standard devition of the variable. | 0.0 | +| pd_rg | | (0,inf) defined as (dx/x), where x is de mean value and dx the standard devition of the variable | 0.0 | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/sasmodels/SasView_polymer_micelle.comp) for `SasView_polymer_micelle.comp`. + +--- + +*Generated on mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/sasmodels/SasView_porod.md b/mcstas-comps/sasmodels/SasView_porod.md new file mode 100644 index 000000000..b4907dde5 --- /dev/null +++ b/mcstas-comps/sasmodels/SasView_porod.md @@ -0,0 +1,53 @@ +# The `SasView_porod` Component + +*McStas: SasView porod model component as sample description.* + +## Identification + +- **Site:** +- **Author:** Jose Robledo +- **Origin:** FZJ / DTU / ESS DMSC +- **Date:** + +## Description + +```text +SasView_porod component, generated from porod.c in sasmodels. + +Example: +SasView_porod(, +model_scale=1.0, model_abs=0.0, xwidth=0.01, yheight=0.01, zdepth=0.005, R=0, +int target_index=1, target_x=0, target_y=0, target_z=1, +focus_xw=0.5, focus_yh=0.5, focus_aw=0, focus_ah=0, focus_r=0, +) +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| model_scale | | Global scale factor for scattering kernel. For systems without inter-particle interference, the form factors can be related to the scattering intensity by the particle volume fraction. | 1.0 | +| model_abs | | Absorption cross section density at 2200 m/s. | 0.0 | +| xwidth | m | ([-inf, inf]) Horiz. dimension of sample, as a width. | 0.01 | +| yheight | m | ([-inf, inf]) vert . dimension of sample, as a height for cylinder/box | 0.01 | +| zdepth | m | ([-inf, inf]) depth of sample | 0.005 | +| R | m | Outer radius of sample in (x,z) plane for cylinder/sphere. | 0 | +| target_x | m | relative focus target position. | 0 | +| target_y | m | relative focus target position. | 0 | +| target_z | m | relative focus target position. | 1 | +| target_index | | Relative index of component to focus at, e.g. next is +1. | 1 | +| focus_xw | m | horiz. dimension of a rectangular area. | 0.5 | +| focus_yh | m | , vert. dimension of a rectangular area. | 0.5 | +| focus_aw | deg | , horiz. angular dimension of a rectangular area. | 0 | +| focus_ah | deg | , vert. angular dimension of a rectangular area. | 0 | +| focus_r | m | case of circular focusing, focusing radius. | 0 | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/sasmodels/SasView_porod.comp) for `SasView_porod.comp`. + +--- + +*Generated on mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/sasmodels/SasView_power_law.md b/mcstas-comps/sasmodels/SasView_power_law.md new file mode 100644 index 000000000..7f70ad732 --- /dev/null +++ b/mcstas-comps/sasmodels/SasView_power_law.md @@ -0,0 +1,54 @@ +# The `SasView_power_law` Component + +*McStas: SasView power_law model component as sample description.* + +## Identification + +- **Site:** +- **Author:** Jose Robledo +- **Origin:** FZJ / DTU / ESS DMSC +- **Date:** + +## Description + +```text +SasView_power_law component, generated from power_law.c in sasmodels. + +Example: +SasView_power_law(power, +model_scale=1.0, model_abs=0.0, xwidth=0.01, yheight=0.01, zdepth=0.005, R=0, +int target_index=1, target_x=0, target_y=0, target_z=1, +focus_xw=0.5, focus_yh=0.5, focus_aw=0, focus_ah=0, focus_r=0, +) +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| power | | ([-inf, inf]) Power law exponent. | 4.0 | +| model_scale | | Global scale factor for scattering kernel. For systems without inter-particle interference, the form factors can be related to the scattering intensity by the particle volume fraction. | 1.0 | +| model_abs | | Absorption cross section density at 2200 m/s. | 0.0 | +| xwidth | m | ([-inf, inf]) Horiz. dimension of sample, as a width. | 0.01 | +| yheight | m | ([-inf, inf]) vert . dimension of sample, as a height for cylinder/box | 0.01 | +| zdepth | m | ([-inf, inf]) depth of sample | 0.005 | +| R | m | Outer radius of sample in (x,z) plane for cylinder/sphere. | 0 | +| target_x | m | relative focus target position. | 0 | +| target_y | m | relative focus target position. | 0 | +| target_z | m | relative focus target position. | 1 | +| target_index | | Relative index of component to focus at, e.g. next is +1. | 1 | +| focus_xw | m | horiz. dimension of a rectangular area. | 0.5 | +| focus_yh | m | , vert. dimension of a rectangular area. | 0.5 | +| focus_aw | deg | , horiz. angular dimension of a rectangular area. | 0 | +| focus_ah | deg | , vert. angular dimension of a rectangular area. | 0 | +| focus_r | m | case of circular focusing, focusing radius. | 0 | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/sasmodels/SasView_power_law.comp) for `SasView_power_law.comp`. + +--- + +*Generated on mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/sasmodels/SasView_pringle.md b/mcstas-comps/sasmodels/SasView_pringle.md new file mode 100644 index 000000000..6ea0274bd --- /dev/null +++ b/mcstas-comps/sasmodels/SasView_pringle.md @@ -0,0 +1,61 @@ +# The `SasView_pringle` Component + +*McStas: SasView pringle model component as sample description.* + +## Identification + +- **Site:** +- **Author:** Jose Robledo +- **Origin:** FZJ / DTU / ESS DMSC +- **Date:** + +## Description + +```text +SasView_pringle component, generated from pringle.c in sasmodels. + +Example: +SasView_pringle(radius, thickness, alpha, beta, sld, sld_solvent, +model_scale=1.0, model_abs=0.0, xwidth=0.01, yheight=0.01, zdepth=0.005, R=0, +int target_index=1, target_x=0, target_y=0, target_z=1, +focus_xw=0.5, focus_yh=0.5, focus_aw=0, focus_ah=0, focus_r=0, +pd_radius=0.0, pd_thickness=0.0) +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| radius | Ang | ([0, inf]) Pringle radius. | 60.0 | +| thickness | Ang | ([0, inf]) Thickness of pringle. | 10.0 | +| alpha | | ([-inf, inf]) Curvature parameter alpha. | 0.001 | +| beta | | ([-inf, inf]) Curvature paramter beta. | 0.02 | +| sld | 1e-6/Ang^2 | ([-inf, inf]) Pringle sld. | 1.0 | +| sld_solvent | 1e-6/Ang^2 | ([-inf, inf]) Solvent sld. | 6.3 | +| model_scale | | Global scale factor for scattering kernel. For systems without inter-particle interference, the form factors can be related to the scattering intensity by the particle volume fraction. | 1.0 | +| model_abs | | Absorption cross section density at 2200 m/s. | 0.0 | +| xwidth | m | ([-inf, inf]) Horiz. dimension of sample, as a width. | 0.01 | +| yheight | m | ([-inf, inf]) vert . dimension of sample, as a height for cylinder/box | 0.01 | +| zdepth | m | ([-inf, inf]) depth of sample | 0.005 | +| R | m | Outer radius of sample in (x,z) plane for cylinder/sphere. | 0 | +| target_x | m | relative focus target position. | 0 | +| target_y | m | relative focus target position. | 0 | +| target_z | m | relative focus target position. | 1 | +| target_index | | Relative index of component to focus at, e.g. next is +1. | 1 | +| focus_xw | m | horiz. dimension of a rectangular area. | 0.5 | +| focus_yh | m | , vert. dimension of a rectangular area. | 0.5 | +| focus_aw | deg | , horiz. angular dimension of a rectangular area. | 0 | +| focus_ah | deg | , vert. angular dimension of a rectangular area. | 0 | +| focus_r | m | case of circular focusing, focusing radius. | 0 | +| pd_radius | | (0,inf) defined as (dx/x), where x is de mean value and dx the standard devition of the variable. | 0.0 | +| pd_thickness | | (0,inf) defined as (dx/x), where x is de mean value and dx the standard devition of the variable | 0.0 | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/sasmodels/SasView_pringle.comp) for `SasView_pringle.comp`. + +--- + +*Generated on mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/sasmodels/SasView_raspberry.md b/mcstas-comps/sasmodels/SasView_raspberry.md new file mode 100644 index 000000000..720b966b4 --- /dev/null +++ b/mcstas-comps/sasmodels/SasView_raspberry.md @@ -0,0 +1,64 @@ +# The `SasView_raspberry` Component + +*McStas: SasView raspberry model component as sample description.* + +## Identification + +- **Site:** +- **Author:** Jose Robledo +- **Origin:** FZJ / DTU / ESS DMSC +- **Date:** + +## Description + +```text +SasView_raspberry component, generated from raspberry.c in sasmodels. + +Example: +SasView_raspberry(sld_lg, sld_sm, sld_solvent, volfraction_lg, volfraction_sm, surface_fraction, radius_lg, radius_sm, penetration, +model_scale=1.0, model_abs=0.0, xwidth=0.01, yheight=0.01, zdepth=0.005, R=0, +int target_index=1, target_x=0, target_y=0, target_z=1, +focus_xw=0.5, focus_yh=0.5, focus_aw=0, focus_ah=0, focus_r=0, +pd_radius_lg=0.0, pd_radius_sm=0.0) +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| sld_lg | 1e-6/Ang^2 | ([-inf, inf]) large particle scattering length density. | -0.4 | +| sld_sm | 1e-6/Ang^2 | ([-inf, inf]) small particle scattering length density. | 3.5 | +| sld_solvent | 1e-6/Ang^2 | ([-inf, inf]) solvent scattering length density. | 6.36 | +| volfraction_lg | | ([-inf, inf]) volume fraction of large spheres. | 0.05 | +| volfraction_sm | | ([-inf, inf]) volume fraction of small spheres. | 0.005 | +| surface_fraction | | ([-inf, inf]) fraction of small spheres at surface. | 0.4 | +| radius_lg | Ang | ([0, inf]) radius of large spheres. | 5000 | +| radius_sm | Ang | ([0, inf]) radius of small spheres. | 100 | +| penetration | Ang | ([-1, 1]) fractional penetration depth of small spheres into large sphere. | 0 | +| model_scale | | Global scale factor for scattering kernel. For systems without inter-particle interference, the form factors can be related to the scattering intensity by the particle volume fraction. | 1.0 | +| model_abs | | Absorption cross section density at 2200 m/s. | 0.0 | +| xwidth | m | ([-inf, inf]) Horiz. dimension of sample, as a width. | 0.01 | +| yheight | m | ([-inf, inf]) vert . dimension of sample, as a height for cylinder/box | 0.01 | +| zdepth | m | ([-inf, inf]) depth of sample | 0.005 | +| R | m | Outer radius of sample in (x,z) plane for cylinder/sphere. | 0 | +| target_x | m | relative focus target position. | 0 | +| target_y | m | relative focus target position. | 0 | +| target_z | m | relative focus target position. | 1 | +| target_index | | Relative index of component to focus at, e.g. next is +1. | 1 | +| focus_xw | m | horiz. dimension of a rectangular area. | 0.5 | +| focus_yh | m | , vert. dimension of a rectangular area. | 0.5 | +| focus_aw | deg | , horiz. angular dimension of a rectangular area. | 0 | +| focus_ah | deg | , vert. angular dimension of a rectangular area. | 0 | +| focus_r | m | case of circular focusing, focusing radius. | 0 | +| pd_radius_lg | | (0,inf) defined as (dx/x), where x is de mean value and dx the standard devition of the variable. | 0.0 | +| pd_radius_sm | | (0,inf) defined as (dx/x), where x is de mean value and dx the standard devition of the variable | 0.0 | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/sasmodels/SasView_raspberry.comp) for `SasView_raspberry.comp`. + +--- + +*Generated on mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/sasmodels/SasView_rectangular_prism.md b/mcstas-comps/sasmodels/SasView_rectangular_prism.md new file mode 100644 index 000000000..cbeaa16e0 --- /dev/null +++ b/mcstas-comps/sasmodels/SasView_rectangular_prism.md @@ -0,0 +1,52 @@ +# The `SasView_rectangular_prism` Component + +*McStas: SasView rectangular_prism model component as sample description.* + +## Identification + +- **Site:** +- **Author:** Jose Robledo +- **Origin:** FZJ / DTU / ESS DMSC +- **Date:** + +## Description + +```text + +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| sld | | | 6.3 | +| sld_solvent | | | 1 | +| length_a | | | 35 | +| b2a_ratio | | | 1 | +| c2a_ratio | | | 1 | +| model_scale | | | 1.0 | +| model_abs | | | 0.0 | +| xwidth | | | 0.01 | +| yheight | | | 0.01 | +| zdepth | | | 0.005 | +| R | | | 0 | +| target_x | | | 0 | +| target_y | | | 0 | +| target_z | | | 1 | +| target_index | | | 1 | +| focus_xw | | | 0.5 | +| focus_yh | | | 0.5 | +| focus_aw | | | 0 | +| focus_ah | | | 0 | +| focus_r | | | 0 | +| pd_length_a | | | 0.0 | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/sasmodels/SasView_rectangular_prism.comp) for `SasView_rectangular_prism.comp`. + +--- + +*Generated on mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/sasmodels/SasView_rectangular_prism_aniso.md b/mcstas-comps/sasmodels/SasView_rectangular_prism_aniso.md new file mode 100644 index 000000000..daae765f5 --- /dev/null +++ b/mcstas-comps/sasmodels/SasView_rectangular_prism_aniso.md @@ -0,0 +1,65 @@ +# The `SasView_rectangular_prism_aniso` Component + +*McStas: SasView rectangular_prism model component as sample description.* + +## Identification + +- **Site:** +- **Author:** Jose Robledo +- **Origin:** FZJ / DTU / ESS DMSC +- **Date:** + +## Description + +```text +SasView_rectangular_prism component, generated from rectangular_prism.c in sasmodels. + +Example: +SasView_rectangular_prism_aniso(sld, sld_solvent, length_a, b2a_ratio, c2a_ratio, theta, phi, Psi, +model_scale=1.0, model_abs=0.0, xwidth=0.01, yheight=0.01, zdepth=0.005, R=0, +int target_index=1, target_x=0, target_y=0, target_z=1, +focus_xw=0.5, focus_yh=0.5, focus_aw=0, focus_ah=0, focus_r=0, +pd_length_a=0.0, pd_theta=0.0, pd_phi=0.0, pd_Psi=0.0) +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| sld | 1e-6/Ang^2 | ([-inf, inf]) Parallelepiped scattering length density. | 6.3 | +| sld_solvent | 1e-6/Ang^2 | ([-inf, inf]) Solvent scattering length density. | 1 | +| length_a | Ang | ([0, inf]) Shorter side of the parallelepiped. | 35 | +| b2a_ratio | | ([0, inf]) Ratio sides b/a. | 1 | +| c2a_ratio | | ([0, inf]) Ratio sides c/a. | 1 | +| theta | | | 0 | +| phi | | | 0 | +| Psi | | | 0 | +| model_scale | | Global scale factor for scattering kernel. For systems without inter-particle interference, the form factors can be related to the scattering intensity by the particle volume fraction. | 1.0 | +| model_abs | | Absorption cross section density at 2200 m/s. | 0.0 | +| xwidth | m | ([-inf, inf]) Horiz. dimension of sample, as a width. | 0.01 | +| yheight | m | ([-inf, inf]) vert . dimension of sample, as a height for cylinder/box | 0.01 | +| zdepth | m | ([-inf, inf]) depth of sample | 0.005 | +| R | m | Outer radius of sample in (x,z) plane for cylinder/sphere. | 0 | +| target_x | m | relative focus target position. | 0 | +| target_y | m | relative focus target position. | 0 | +| target_z | m | relative focus target position. | 1 | +| target_index | | Relative index of component to focus at, e.g. next is +1. | 1 | +| focus_xw | m | horiz. dimension of a rectangular area. | 0.5 | +| focus_yh | m | , vert. dimension of a rectangular area. | 0.5 | +| focus_aw | deg | , horiz. angular dimension of a rectangular area. | 0 | +| focus_ah | deg | , vert. angular dimension of a rectangular area. | 0 | +| focus_r | m | case of circular focusing, focusing radius. | 0 | +| pd_length_a | | (0,inf) defined as (dx/x), where x is de mean value and dx the standard devition of the variable. | 0.0 | +| pd_theta | | (0,360) defined as (dx/x), where x is de mean value and dx the standard devition of the variable. | 0.0 | +| pd_phi | | (0,360) defined as (dx/x), where x is de mean value and dx the standard devition of the variable. | 0.0 | +| pd_Psi | | (0,360) defined as (dx/x), where x is de mean value and dx the standard devition of the variable | 0.0 | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/sasmodels/SasView_rectangular_prism_aniso.comp) for `SasView_rectangular_prism_aniso.comp`. + +--- + +*Generated on mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/sasmodels/SasView_rpa.md b/mcstas-comps/sasmodels/SasView_rpa.md new file mode 100644 index 000000000..77bf51156 --- /dev/null +++ b/mcstas-comps/sasmodels/SasView_rpa.md @@ -0,0 +1,38 @@ +# The `SasView_rpa` Component + +*McStas: SasView rpa model component as sample description.* + +## Identification + +- **Site:** +- **Author:** Jose Robledo +- **Origin:** FZJ / DTU / ESS DMSC +- **Date:** + +## Description + +```text +SasView_rpa component, generated from rpa.c in sasmodels. + +Example: +SasView_rpa(case_num, N[4], Phi[4], v[4], L[4], b[4], K12, K13, K14, K23, K24, K34, +model_scale=1.0, model_abs=0.0, xwidth=0.01, yheight=0.01, zdepth=0.005, R=0, +int target_index=1, target_x=0, target_y=0, target_z=1, +focus_xw=0.5, focus_yh=0.5, focus_aw=0, focus_ah=0, focus_r=0, +) +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/sasmodels/SasView_rpa.comp) for `SasView_rpa.comp`. + +--- + +*Generated on mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/sasmodels/SasView_sc_paracrystal.md b/mcstas-comps/sasmodels/SasView_sc_paracrystal.md new file mode 100644 index 000000000..cc505471a --- /dev/null +++ b/mcstas-comps/sasmodels/SasView_sc_paracrystal.md @@ -0,0 +1,59 @@ +# The `SasView_sc_paracrystal` Component + +*McStas: SasView sc_paracrystal model component as sample description.* + +## Identification + +- **Site:** +- **Author:** Jose Robledo +- **Origin:** FZJ / DTU / ESS DMSC +- **Date:** + +## Description + +```text +SasView_sc_paracrystal component, generated from sc_paracrystal.c in sasmodels. + +Example: +SasView_sc_paracrystal(dnn, d_factor, radius, sld, sld_solvent, +model_scale=1.0, model_abs=0.0, xwidth=0.01, yheight=0.01, zdepth=0.005, R=0, +int target_index=1, target_x=0, target_y=0, target_z=1, +focus_xw=0.5, focus_yh=0.5, focus_aw=0, focus_ah=0, focus_r=0, +pd_radius=0.0) +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| dnn | Ang | ([0.0, inf]) Nearest neighbor distance. | 220.0 | +| d_factor | | ([-inf, inf]) Paracrystal distortion factor. | 0.06 | +| radius | Ang | ([0.0, inf]) Radius of sphere. | 40.0 | +| sld | 1e-6/Ang^2 | ([0.0, inf]) Sphere scattering length density. | 3.0 | +| sld_solvent | 1e-6/Ang^2 | ([0.0, inf]) Solvent scattering length density. | 6.3 | +| model_scale | | Global scale factor for scattering kernel. For systems without inter-particle interference, the form factors can be related to the scattering intensity by the particle volume fraction. | 1.0 | +| model_abs | | Absorption cross section density at 2200 m/s. | 0.0 | +| xwidth | m | ([-inf, inf]) Horiz. dimension of sample, as a width. | 0.01 | +| yheight | m | ([-inf, inf]) vert . dimension of sample, as a height for cylinder/box | 0.01 | +| zdepth | m | ([-inf, inf]) depth of sample | 0.005 | +| R | m | Outer radius of sample in (x,z) plane for cylinder/sphere. | 0 | +| target_x | m | relative focus target position. | 0 | +| target_y | m | relative focus target position. | 0 | +| target_z | m | relative focus target position. | 1 | +| target_index | | Relative index of component to focus at, e.g. next is +1. | 1 | +| focus_xw | m | horiz. dimension of a rectangular area. | 0.5 | +| focus_yh | m | , vert. dimension of a rectangular area. | 0.5 | +| focus_aw | deg | , horiz. angular dimension of a rectangular area. | 0 | +| focus_ah | deg | , vert. angular dimension of a rectangular area. | 0 | +| focus_r | m | case of circular focusing, focusing radius. | 0 | +| pd_radius | | (0,inf) defined as (dx/x), where x is de mean value and dx the standard devition of the variable | 0.0 | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/sasmodels/SasView_sc_paracrystal.comp) for `SasView_sc_paracrystal.comp`. + +--- + +*Generated on mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/sasmodels/SasView_sc_paracrystal_aniso.md b/mcstas-comps/sasmodels/SasView_sc_paracrystal_aniso.md new file mode 100644 index 000000000..54e7e30c8 --- /dev/null +++ b/mcstas-comps/sasmodels/SasView_sc_paracrystal_aniso.md @@ -0,0 +1,65 @@ +# The `SasView_sc_paracrystal_aniso` Component + +*McStas: SasView sc_paracrystal model component as sample description.* + +## Identification + +- **Site:** +- **Author:** Jose Robledo +- **Origin:** FZJ / DTU / ESS DMSC +- **Date:** + +## Description + +```text +SasView_sc_paracrystal component, generated from sc_paracrystal.c in sasmodels. + +Example: +SasView_sc_paracrystal_aniso(dnn, d_factor, radius, sld, sld_solvent, theta, phi, Psi, +model_scale=1.0, model_abs=0.0, xwidth=0.01, yheight=0.01, zdepth=0.005, R=0, +int target_index=1, target_x=0, target_y=0, target_z=1, +focus_xw=0.5, focus_yh=0.5, focus_aw=0, focus_ah=0, focus_r=0, +pd_radius=0.0, pd_theta=0.0, pd_phi=0.0, pd_Psi=0.0) +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| dnn | Ang | ([0.0, inf]) Nearest neighbor distance. | 220.0 | +| d_factor | | ([-inf, inf]) Paracrystal distortion factor. | 0.06 | +| radius | Ang | ([0.0, inf]) Radius of sphere. | 40.0 | +| sld | 1e-6/Ang^2 | ([0.0, inf]) Sphere scattering length density. | 3.0 | +| sld_solvent | 1e-6/Ang^2 | ([0.0, inf]) Solvent scattering length density. | 6.3 | +| theta | | | 0 | +| phi | | | 0 | +| Psi | | | 0 | +| model_scale | | Global scale factor for scattering kernel. For systems without inter-particle interference, the form factors can be related to the scattering intensity by the particle volume fraction. | 1.0 | +| model_abs | | Absorption cross section density at 2200 m/s. | 0.0 | +| xwidth | m | ([-inf, inf]) Horiz. dimension of sample, as a width. | 0.01 | +| yheight | m | ([-inf, inf]) vert . dimension of sample, as a height for cylinder/box | 0.01 | +| zdepth | m | ([-inf, inf]) depth of sample | 0.005 | +| R | m | Outer radius of sample in (x,z) plane for cylinder/sphere. | 0 | +| target_x | m | relative focus target position. | 0 | +| target_y | m | relative focus target position. | 0 | +| target_z | m | relative focus target position. | 1 | +| target_index | | Relative index of component to focus at, e.g. next is +1. | 1 | +| focus_xw | m | horiz. dimension of a rectangular area. | 0.5 | +| focus_yh | m | , vert. dimension of a rectangular area. | 0.5 | +| focus_aw | deg | , horiz. angular dimension of a rectangular area. | 0 | +| focus_ah | deg | , vert. angular dimension of a rectangular area. | 0 | +| focus_r | m | case of circular focusing, focusing radius. | 0 | +| pd_radius | | (0,inf) defined as (dx/x), where x is de mean value and dx the standard devition of the variable. | 0.0 | +| pd_theta | | (0,360) defined as (dx/x), where x is de mean value and dx the standard devition of the variable. | 0.0 | +| pd_phi | | (0,360) defined as (dx/x), where x is de mean value and dx the standard devition of the variable. | 0.0 | +| pd_Psi | | (0,360) defined as (dx/x), where x is de mean value and dx the standard devition of the variable | 0.0 | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/sasmodels/SasView_sc_paracrystal_aniso.comp) for `SasView_sc_paracrystal_aniso.comp`. + +--- + +*Generated on mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/sasmodels/SasView_sphere.md b/mcstas-comps/sasmodels/SasView_sphere.md new file mode 100644 index 000000000..27b64439b --- /dev/null +++ b/mcstas-comps/sasmodels/SasView_sphere.md @@ -0,0 +1,57 @@ +# The `SasView_sphere` Component + +*McStas: SasView sphere model component as sample description.* + +## Identification + +- **Site:** +- **Author:** Jose Robledo +- **Origin:** FZJ / DTU / ESS DMSC +- **Date:** + +## Description + +```text +SasView_sphere component, generated from sphere.c in sasmodels. + +Example: +SasView_sphere(sld, sld_solvent, radius, +model_scale=1.0, model_abs=0.0, xwidth=0.01, yheight=0.01, zdepth=0.005, R=0, +int target_index=1, target_x=0, target_y=0, target_z=1, +focus_xw=0.5, focus_yh=0.5, focus_aw=0, focus_ah=0, focus_r=0, +pd_radius=0.0) +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| sld | 1e-6/Ang^2 | ([-inf, inf]) Layer scattering length density. | 1 | +| sld_solvent | 1e-6/Ang^2 | ([-inf, inf]) Solvent scattering length density. | 6 | +| radius | Ang | ([0, inf]) Sphere radius. | 50 | +| model_scale | | Global scale factor for scattering kernel. For systems without inter-particle interference, the form factors can be related to the scattering intensity by the particle volume fraction. | 1.0 | +| model_abs | | Absorption cross section density at 2200 m/s. | 0.0 | +| xwidth | m | ([-inf, inf]) Horiz. dimension of sample, as a width. | 0.01 | +| yheight | m | ([-inf, inf]) vert . dimension of sample, as a height for cylinder/box | 0.01 | +| zdepth | m | ([-inf, inf]) depth of sample | 0.005 | +| R | m | Outer radius of sample in (x,z) plane for cylinder/sphere. | 0 | +| target_x | m | relative focus target position. | 0 | +| target_y | m | relative focus target position. | 0 | +| target_z | m | relative focus target position. | 1 | +| target_index | | Relative index of component to focus at, e.g. next is +1. | 1 | +| focus_xw | m | horiz. dimension of a rectangular area. | 0.5 | +| focus_yh | m | , vert. dimension of a rectangular area. | 0.5 | +| focus_aw | deg | , horiz. angular dimension of a rectangular area. | 0 | +| focus_ah | deg | , vert. angular dimension of a rectangular area. | 0 | +| focus_r | m | case of circular focusing, focusing radius. | 0 | +| pd_radius | | (0,inf) defined as (dx/x), where x is de mean value and dx the standard devition of the variable | 0.0 | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/sasmodels/SasView_sphere.comp) for `SasView_sphere.comp`. + +--- + +*Generated on mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/sasmodels/SasView_spinodal.md b/mcstas-comps/sasmodels/SasView_spinodal.md new file mode 100644 index 000000000..3d838ee42 --- /dev/null +++ b/mcstas-comps/sasmodels/SasView_spinodal.md @@ -0,0 +1,55 @@ +# The `SasView_spinodal` Component + +*McStas: SasView spinodal model component as sample description.* + +## Identification + +- **Site:** +- **Author:** Jose Robledo +- **Origin:** FZJ / DTU / ESS DMSC +- **Date:** + +## Description + +```text +SasView_spinodal component, generated from spinodal.c in sasmodels. + +Example: +SasView_spinodal(gamma, q_0, +model_scale=1.0, model_abs=0.0, xwidth=0.01, yheight=0.01, zdepth=0.005, R=0, +int target_index=1, target_x=0, target_y=0, target_z=1, +focus_xw=0.5, focus_yh=0.5, focus_aw=0, focus_ah=0, focus_r=0, +) +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| gamma | | ([-inf, inf]) Exponent. | 3.0 | +| q_0 | 1/Ang | ([-inf, inf]) Correlation peak position. | 0.1 | +| model_scale | | Global scale factor for scattering kernel. For systems without inter-particle interference, the form factors can be related to the scattering intensity by the particle volume fraction. | 1.0 | +| model_abs | | Absorption cross section density at 2200 m/s. | 0.0 | +| xwidth | m | ([-inf, inf]) Horiz. dimension of sample, as a width. | 0.01 | +| yheight | m | ([-inf, inf]) vert . dimension of sample, as a height for cylinder/box | 0.01 | +| zdepth | m | ([-inf, inf]) depth of sample | 0.005 | +| R | m | Outer radius of sample in (x,z) plane for cylinder/sphere. | 0 | +| target_x | m | relative focus target position. | 0 | +| target_y | m | relative focus target position. | 0 | +| target_z | m | relative focus target position. | 1 | +| target_index | | Relative index of component to focus at, e.g. next is +1. | 1 | +| focus_xw | m | horiz. dimension of a rectangular area. | 0.5 | +| focus_yh | m | , vert. dimension of a rectangular area. | 0.5 | +| focus_aw | deg | , horiz. angular dimension of a rectangular area. | 0 | +| focus_ah | deg | , vert. angular dimension of a rectangular area. | 0 | +| focus_r | m | case of circular focusing, focusing radius. | 0 | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/sasmodels/SasView_spinodal.comp) for `SasView_spinodal.comp`. + +--- + +*Generated on mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/sasmodels/SasView_squarewell.md b/mcstas-comps/sasmodels/SasView_squarewell.md new file mode 100644 index 000000000..b22f851e3 --- /dev/null +++ b/mcstas-comps/sasmodels/SasView_squarewell.md @@ -0,0 +1,58 @@ +# The `SasView_squarewell` Component + +*McStas: SasView squarewell model component as sample description.* + +## Identification + +- **Site:** +- **Author:** Jose Robledo +- **Origin:** FZJ / DTU / ESS DMSC +- **Date:** + +## Description + +```text +SasView_squarewell component, generated from squarewell.c in sasmodels. + +Example: +SasView_squarewell(radius_effective, volfraction, welldepth, wellwidth, +model_scale=1.0, model_abs=0.0, xwidth=0.01, yheight=0.01, zdepth=0.005, R=0, +int target_index=1, target_x=0, target_y=0, target_z=1, +focus_xw=0.5, focus_yh=0.5, focus_aw=0, focus_ah=0, focus_r=0, +pd_radius_effective=0.0) +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| radius_effective | Ang | ([0, inf]) effective radius of hard sphere. | 50.0 | +| volfraction | | ([0, 0.08]) volume fraction of spheres. | 0.04 | +| welldepth | kT | ([0.0, 1.5]) depth of well, epsilon. | 1.5 | +| wellwidth | diameters | ([1.0, inf]) width of well in diameters (=2R) units, must be > 1. | 1.2 | +| model_scale | | Global scale factor for scattering kernel. For systems without inter-particle interference, the form factors can be related to the scattering intensity by the particle volume fraction. | 1.0 | +| model_abs | | Absorption cross section density at 2200 m/s. | 0.0 | +| xwidth | m | ([-inf, inf]) Horiz. dimension of sample, as a width. | 0.01 | +| yheight | m | ([-inf, inf]) vert . dimension of sample, as a height for cylinder/box | 0.01 | +| zdepth | m | ([-inf, inf]) depth of sample | 0.005 | +| R | m | Outer radius of sample in (x,z) plane for cylinder/sphere. | 0 | +| target_x | m | relative focus target position. | 0 | +| target_y | m | relative focus target position. | 0 | +| target_z | m | relative focus target position. | 1 | +| target_index | | Relative index of component to focus at, e.g. next is +1. | 1 | +| focus_xw | m | horiz. dimension of a rectangular area. | 0.5 | +| focus_yh | m | , vert. dimension of a rectangular area. | 0.5 | +| focus_aw | deg | , horiz. angular dimension of a rectangular area. | 0 | +| focus_ah | deg | , vert. angular dimension of a rectangular area. | 0 | +| focus_r | m | case of circular focusing, focusing radius. | 0 | +| pd_radius_effective | | (0,inf) defined as (dx/x), where x is de mean value and dx the standard devition of the variable | 0.0 | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/sasmodels/SasView_squarewell.comp) for `SasView_squarewell.comp`. + +--- + +*Generated on mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/sasmodels/SasView_stacked_disks.md b/mcstas-comps/sasmodels/SasView_stacked_disks.md new file mode 100644 index 000000000..401946f6a --- /dev/null +++ b/mcstas-comps/sasmodels/SasView_stacked_disks.md @@ -0,0 +1,64 @@ +# The `SasView_stacked_disks` Component + +*McStas: SasView stacked_disks model component as sample description.* + +## Identification + +- **Site:** +- **Author:** Jose Robledo +- **Origin:** FZJ / DTU / ESS DMSC +- **Date:** + +## Description + +```text +SasView_stacked_disks component, generated from stacked_disks.c in sasmodels. + +Example: +SasView_stacked_disks(thick_core, thick_layer, radius, n_stacking, sigma_d, sld_core, sld_layer, sld_solvent, +model_scale=1.0, model_abs=0.0, xwidth=0.01, yheight=0.01, zdepth=0.005, R=0, +int target_index=1, target_x=0, target_y=0, target_z=1, +focus_xw=0.5, focus_yh=0.5, focus_aw=0, focus_ah=0, focus_r=0, +pd_thick_core=0.0, pd_thick_layer=0.0, pd_radius=0.0) +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| thick_core | Ang | ([0, inf]) Thickness of the core disk. | 10.0 | +| thick_layer | Ang | ([0, inf]) Thickness of layer each side of core. | 10.0 | +| radius | Ang | ([0, inf]) Radius of the stacked disk. | 15.0 | +| n_stacking | | ([1, inf]) Number of stacked layer/core/layer disks. | 1.0 | +| sigma_d | Ang | ([0, inf]) Sigma of nearest neighbor spacing. | 0 | +| sld_core | 1e-6/Ang^2 | ([-inf, inf]) Core scattering length density. | 4 | +| sld_layer | 1e-6/Ang^2 | ([-inf, inf]) Layer scattering length density. | 0.0 | +| sld_solvent | 1e-6/Ang^2 | ([-inf, inf]) Solvent scattering length density. | 5.0 | +| model_scale | | Global scale factor for scattering kernel. For systems without inter-particle interference, the form factors can be related to the scattering intensity by the particle volume fraction. | 1.0 | +| model_abs | | Absorption cross section density at 2200 m/s. | 0.0 | +| xwidth | m | ([-inf, inf]) Horiz. dimension of sample, as a width. | 0.01 | +| yheight | m | ([-inf, inf]) vert . dimension of sample, as a height for cylinder/box | 0.01 | +| zdepth | m | ([-inf, inf]) depth of sample | 0.005 | +| R | m | Outer radius of sample in (x,z) plane for cylinder/sphere. | 0 | +| target_x | m | relative focus target position. | 0 | +| target_y | m | relative focus target position. | 0 | +| target_z | m | relative focus target position. | 1 | +| target_index | | Relative index of component to focus at, e.g. next is +1. | 1 | +| focus_xw | m | horiz. dimension of a rectangular area. | 0.5 | +| focus_yh | m | , vert. dimension of a rectangular area. | 0.5 | +| focus_aw | deg | , horiz. angular dimension of a rectangular area. | 0 | +| focus_ah | deg | , vert. angular dimension of a rectangular area. | 0 | +| focus_r | m | case of circular focusing, focusing radius. | 0 | +| pd_thick_core | | (0,inf) defined as (dx/x), where x is de mean value and dx the standard devition of the variable. | 0.0 | +| pd_thick_layer | | (0,inf) defined as (dx/x), where x is de mean value and dx the standard devition of the variable. | 0.0 | +| pd_radius | | (0,inf) defined as (dx/x), where x is de mean value and dx the standard devition of the variable | 0.0 | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/sasmodels/SasView_stacked_disks.comp) for `SasView_stacked_disks.comp`. + +--- + +*Generated on mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/sasmodels/SasView_stacked_disks_aniso.md b/mcstas-comps/sasmodels/SasView_stacked_disks_aniso.md new file mode 100644 index 000000000..567379d5d --- /dev/null +++ b/mcstas-comps/sasmodels/SasView_stacked_disks_aniso.md @@ -0,0 +1,68 @@ +# The `SasView_stacked_disks_aniso` Component + +*McStas: SasView stacked_disks model component as sample description.* + +## Identification + +- **Site:** +- **Author:** Jose Robledo +- **Origin:** FZJ / DTU / ESS DMSC +- **Date:** + +## Description + +```text +SasView_stacked_disks component, generated from stacked_disks.c in sasmodels. + +Example: +SasView_stacked_disks_aniso(thick_core, thick_layer, radius, n_stacking, sigma_d, sld_core, sld_layer, sld_solvent, theta, phi, +model_scale=1.0, model_abs=0.0, xwidth=0.01, yheight=0.01, zdepth=0.005, R=0, +int target_index=1, target_x=0, target_y=0, target_z=1, +focus_xw=0.5, focus_yh=0.5, focus_aw=0, focus_ah=0, focus_r=0, +pd_thick_core=0.0, pd_thick_layer=0.0, pd_radius=0.0, pd_theta=0.0, pd_phi=0.0) +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| thick_core | Ang | ([0, inf]) Thickness of the core disk. | 10.0 | +| thick_layer | Ang | ([0, inf]) Thickness of layer each side of core. | 10.0 | +| radius | Ang | ([0, inf]) Radius of the stacked disk. | 15.0 | +| n_stacking | | ([1, inf]) Number of stacked layer/core/layer disks. | 1.0 | +| sigma_d | Ang | ([0, inf]) Sigma of nearest neighbor spacing. | 0 | +| sld_core | 1e-6/Ang^2 | ([-inf, inf]) Core scattering length density. | 4 | +| sld_layer | 1e-6/Ang^2 | ([-inf, inf]) Layer scattering length density. | 0.0 | +| sld_solvent | 1e-6/Ang^2 | ([-inf, inf]) Solvent scattering length density. | 5.0 | +| theta | | | 0 | +| phi | | | 0 | +| model_scale | | Global scale factor for scattering kernel. For systems without inter-particle interference, the form factors can be related to the scattering intensity by the particle volume fraction. | 1.0 | +| model_abs | | Absorption cross section density at 2200 m/s. | 0.0 | +| xwidth | m | ([-inf, inf]) Horiz. dimension of sample, as a width. | 0.01 | +| yheight | m | ([-inf, inf]) vert . dimension of sample, as a height for cylinder/box | 0.01 | +| zdepth | m | ([-inf, inf]) depth of sample | 0.005 | +| R | m | Outer radius of sample in (x,z) plane for cylinder/sphere. | 0 | +| target_x | m | relative focus target position. | 0 | +| target_y | m | relative focus target position. | 0 | +| target_z | m | relative focus target position. | 1 | +| target_index | | Relative index of component to focus at, e.g. next is +1. | 1 | +| focus_xw | m | horiz. dimension of a rectangular area. | 0.5 | +| focus_yh | m | , vert. dimension of a rectangular area. | 0.5 | +| focus_aw | deg | , horiz. angular dimension of a rectangular area. | 0 | +| focus_ah | deg | , vert. angular dimension of a rectangular area. | 0 | +| focus_r | m | case of circular focusing, focusing radius. | 0 | +| pd_thick_core | | (0,inf) defined as (dx/x), where x is de mean value and dx the standard devition of the variable. | 0.0 | +| pd_thick_layer | | (0,inf) defined as (dx/x), where x is de mean value and dx the standard devition of the variable. | 0.0 | +| pd_radius | | (0,inf) defined as (dx/x), where x is de mean value and dx the standard devition of the variable. | 0.0 | +| pd_theta | | (0,360) defined as (dx/x), where x is de mean value and dx the standard devition of the variable. | 0.0 | +| pd_phi | | (0,360) defined as (dx/x), where x is de mean value and dx the standard devition of the variable | 0.0 | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/sasmodels/SasView_stacked_disks_aniso.comp) for `SasView_stacked_disks_aniso.comp`. + +--- + +*Generated on mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/sasmodels/SasView_star_polymer.md b/mcstas-comps/sasmodels/SasView_star_polymer.md new file mode 100644 index 000000000..62b565a5f --- /dev/null +++ b/mcstas-comps/sasmodels/SasView_star_polymer.md @@ -0,0 +1,56 @@ +# The `SasView_star_polymer` Component + +*McStas: SasView star_polymer model component as sample description.* + +## Identification + +- **Site:** +- **Author:** Jose Robledo +- **Origin:** FZJ / DTU / ESS DMSC +- **Date:** + +## Description + +```text +SasView_star_polymer component, generated from star_polymer.c in sasmodels. + +Example: +SasView_star_polymer(rg_squared, arms, +model_scale=1.0, model_abs=0.0, xwidth=0.01, yheight=0.01, zdepth=0.005, R=0, +int target_index=1, target_x=0, target_y=0, target_z=1, +focus_xw=0.5, focus_yh=0.5, focus_aw=0, focus_ah=0, focus_r=0, +pd_rg_squared=0.0) +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| rg_squared | Ang^2 | ([0.0, inf]) Ensemble radius of gyration SQUARED of the full polymer. | 100.0 | +| arms | | ([1.0, 6.0]) Number of arms in the model. | 3 | +| model_scale | | Global scale factor for scattering kernel. For systems without inter-particle interference, the form factors can be related to the scattering intensity by the particle volume fraction. | 1.0 | +| model_abs | | Absorption cross section density at 2200 m/s. | 0.0 | +| xwidth | m | ([-inf, inf]) Horiz. dimension of sample, as a width. | 0.01 | +| yheight | m | ([-inf, inf]) vert . dimension of sample, as a height for cylinder/box | 0.01 | +| zdepth | m | ([-inf, inf]) depth of sample | 0.005 | +| R | m | Outer radius of sample in (x,z) plane for cylinder/sphere. | 0 | +| target_x | m | relative focus target position. | 0 | +| target_y | m | relative focus target position. | 0 | +| target_z | m | relative focus target position. | 1 | +| target_index | | Relative index of component to focus at, e.g. next is +1. | 1 | +| focus_xw | m | horiz. dimension of a rectangular area. | 0.5 | +| focus_yh | m | , vert. dimension of a rectangular area. | 0.5 | +| focus_aw | deg | , horiz. angular dimension of a rectangular area. | 0 | +| focus_ah | deg | , vert. angular dimension of a rectangular area. | 0 | +| focus_r | m | case of circular focusing, focusing radius. | 0 | +| pd_rg_squared | | (0,inf) defined as (dx/x), where x is de mean value and dx the standard devition of the variable | 0.0 | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/sasmodels/SasView_star_polymer.comp) for `SasView_star_polymer.comp`. + +--- + +*Generated on mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/sasmodels/SasView_stickyhardsphere.md b/mcstas-comps/sasmodels/SasView_stickyhardsphere.md new file mode 100644 index 000000000..9e7e2b78a --- /dev/null +++ b/mcstas-comps/sasmodels/SasView_stickyhardsphere.md @@ -0,0 +1,58 @@ +# The `SasView_stickyhardsphere` Component + +*McStas: SasView stickyhardsphere model component as sample description.* + +## Identification + +- **Site:** +- **Author:** Jose Robledo +- **Origin:** FZJ / DTU / ESS DMSC +- **Date:** + +## Description + +```text +SasView_stickyhardsphere component, generated from stickyhardsphere.c in sasmodels. + +Example: +SasView_stickyhardsphere(radius_effective, volfraction, perturb, stickiness, +model_scale=1.0, model_abs=0.0, xwidth=0.01, yheight=0.01, zdepth=0.005, R=0, +int target_index=1, target_x=0, target_y=0, target_z=1, +focus_xw=0.5, focus_yh=0.5, focus_aw=0, focus_ah=0, focus_r=0, +pd_radius_effective=0.0) +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| radius_effective | Ang | ([0, inf]) effective radius of hard sphere. | 50.0 | +| volfraction | | ([0, 0.74]) volume fraction of hard spheres. | 0.2 | +| perturb | | ([0.01, 0.1]) perturbation parameter, tau. | 0.05 | +| stickiness | | ([-inf, inf]) stickiness, epsilon. | 0.2 | +| model_scale | | Global scale factor for scattering kernel. For systems without inter-particle interference, the form factors can be related to the scattering intensity by the particle volume fraction. | 1.0 | +| model_abs | | Absorption cross section density at 2200 m/s. | 0.0 | +| xwidth | m | ([-inf, inf]) Horiz. dimension of sample, as a width. | 0.01 | +| yheight | m | ([-inf, inf]) vert . dimension of sample, as a height for cylinder/box | 0.01 | +| zdepth | m | ([-inf, inf]) depth of sample | 0.005 | +| R | m | Outer radius of sample in (x,z) plane for cylinder/sphere. | 0 | +| target_x | m | relative focus target position. | 0 | +| target_y | m | relative focus target position. | 0 | +| target_z | m | relative focus target position. | 1 | +| target_index | | Relative index of component to focus at, e.g. next is +1. | 1 | +| focus_xw | m | horiz. dimension of a rectangular area. | 0.5 | +| focus_yh | m | , vert. dimension of a rectangular area. | 0.5 | +| focus_aw | deg | , horiz. angular dimension of a rectangular area. | 0 | +| focus_ah | deg | , vert. angular dimension of a rectangular area. | 0 | +| focus_r | m | case of circular focusing, focusing radius. | 0 | +| pd_radius_effective | | (0,inf) defined as (dx/x), where x is de mean value and dx the standard devition of the variable | 0.0 | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/sasmodels/SasView_stickyhardsphere.comp) for `SasView_stickyhardsphere.comp`. + +--- + +*Generated on mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/sasmodels/SasView_superball.md b/mcstas-comps/sasmodels/SasView_superball.md new file mode 100644 index 000000000..ffa3bddb8 --- /dev/null +++ b/mcstas-comps/sasmodels/SasView_superball.md @@ -0,0 +1,58 @@ +# The `SasView_superball` Component + +*McStas: SasView superball model component as sample description.* + +## Identification + +- **Site:** +- **Author:** Jose Robledo +- **Origin:** FZJ / DTU / ESS DMSC +- **Date:** + +## Description + +```text +SasView_superball component, generated from superball.c in sasmodels. + +Example: +SasView_superball(sld, sld_solvent, length_a, exponent_p, +model_scale=1.0, model_abs=0.0, xwidth=0.01, yheight=0.01, zdepth=0.005, R=0, +int target_index=1, target_x=0, target_y=0, target_z=1, +focus_xw=0.5, focus_yh=0.5, focus_aw=0, focus_ah=0, focus_r=0, +pd_length_a=0.0) +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| sld | 1e-6/Ang^2 | ([-inf, inf]) Superball scattering length density. | 4 | +| sld_solvent | 1e-6/Ang^2 | ([-inf, inf]) Solvent scattering length density. | 1 | +| length_a | Ang | ([0, inf]) Cube edge length of the superball. | 50 | +| exponent_p | | ([0, inf]) Exponent describing the roundness of the superball. | 2.5 | +| model_scale | | Global scale factor for scattering kernel. For systems without inter-particle interference, the form factors can be related to the scattering intensity by the particle volume fraction. | 1.0 | +| model_abs | | Absorption cross section density at 2200 m/s. | 0.0 | +| xwidth | m | ([-inf, inf]) Horiz. dimension of sample, as a width. | 0.01 | +| yheight | m | ([-inf, inf]) vert . dimension of sample, as a height for cylinder/box | 0.01 | +| zdepth | m | ([-inf, inf]) depth of sample | 0.005 | +| R | m | Outer radius of sample in (x,z) plane for cylinder/sphere. | 0 | +| target_x | m | relative focus target position. | 0 | +| target_y | m | relative focus target position. | 0 | +| target_z | m | relative focus target position. | 1 | +| target_index | | Relative index of component to focus at, e.g. next is +1. | 1 | +| focus_xw | m | horiz. dimension of a rectangular area. | 0.5 | +| focus_yh | m | , vert. dimension of a rectangular area. | 0.5 | +| focus_aw | deg | , horiz. angular dimension of a rectangular area. | 0 | +| focus_ah | deg | , vert. angular dimension of a rectangular area. | 0 | +| focus_r | m | case of circular focusing, focusing radius. | 0 | +| pd_length_a | | (0,inf) defined as (dx/x), where x is de mean value and dx the standard devition of the variable | 0.0 | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/sasmodels/SasView_superball.comp) for `SasView_superball.comp`. + +--- + +*Generated on mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/sasmodels/SasView_superball_aniso.md b/mcstas-comps/sasmodels/SasView_superball_aniso.md new file mode 100644 index 000000000..12c3b13e0 --- /dev/null +++ b/mcstas-comps/sasmodels/SasView_superball_aniso.md @@ -0,0 +1,64 @@ +# The `SasView_superball_aniso` Component + +*McStas: SasView superball model component as sample description.* + +## Identification + +- **Site:** +- **Author:** Jose Robledo +- **Origin:** FZJ / DTU / ESS DMSC +- **Date:** + +## Description + +```text +SasView_superball component, generated from superball.c in sasmodels. + +Example: +SasView_superball_aniso(sld, sld_solvent, length_a, exponent_p, theta, phi, Psi, +model_scale=1.0, model_abs=0.0, xwidth=0.01, yheight=0.01, zdepth=0.005, R=0, +int target_index=1, target_x=0, target_y=0, target_z=1, +focus_xw=0.5, focus_yh=0.5, focus_aw=0, focus_ah=0, focus_r=0, +pd_length_a=0.0, pd_theta=0.0, pd_phi=0.0, pd_Psi=0.0) +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| sld | 1e-6/Ang^2 | ([-inf, inf]) Superball scattering length density. | 4 | +| sld_solvent | 1e-6/Ang^2 | ([-inf, inf]) Solvent scattering length density. | 1 | +| length_a | Ang | ([0, inf]) Cube edge length of the superball. | 50 | +| exponent_p | | ([0, inf]) Exponent describing the roundness of the superball. | 2.5 | +| theta | | | 0 | +| phi | | | 0 | +| Psi | | | 0 | +| model_scale | | Global scale factor for scattering kernel. For systems without inter-particle interference, the form factors can be related to the scattering intensity by the particle volume fraction. | 1.0 | +| model_abs | | Absorption cross section density at 2200 m/s. | 0.0 | +| xwidth | m | ([-inf, inf]) Horiz. dimension of sample, as a width. | 0.01 | +| yheight | m | ([-inf, inf]) vert . dimension of sample, as a height for cylinder/box | 0.01 | +| zdepth | m | ([-inf, inf]) depth of sample | 0.005 | +| R | m | Outer radius of sample in (x,z) plane for cylinder/sphere. | 0 | +| target_x | m | relative focus target position. | 0 | +| target_y | m | relative focus target position. | 0 | +| target_z | m | relative focus target position. | 1 | +| target_index | | Relative index of component to focus at, e.g. next is +1. | 1 | +| focus_xw | m | horiz. dimension of a rectangular area. | 0.5 | +| focus_yh | m | , vert. dimension of a rectangular area. | 0.5 | +| focus_aw | deg | , horiz. angular dimension of a rectangular area. | 0 | +| focus_ah | deg | , vert. angular dimension of a rectangular area. | 0 | +| focus_r | m | case of circular focusing, focusing radius. | 0 | +| pd_length_a | | (0,inf) defined as (dx/x), where x is de mean value and dx the standard devition of the variable. | 0.0 | +| pd_theta | | (0,360) defined as (dx/x), where x is de mean value and dx the standard devition of the variable. | 0.0 | +| pd_phi | | (0,360) defined as (dx/x), where x is de mean value and dx the standard devition of the variable. | 0.0 | +| pd_Psi | | (0,360) defined as (dx/x), where x is de mean value and dx the standard devition of the variable | 0.0 | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/sasmodels/SasView_superball_aniso.comp) for `SasView_superball_aniso.comp`. + +--- + +*Generated on mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/sasmodels/SasView_surface_fractal.md b/mcstas-comps/sasmodels/SasView_surface_fractal.md new file mode 100644 index 000000000..4df496aeb --- /dev/null +++ b/mcstas-comps/sasmodels/SasView_surface_fractal.md @@ -0,0 +1,58 @@ +# The `SasView_surface_fractal` Component + +*McStas: SasView surface_fractal model component as sample description.* + +## Identification + +- **Site:** +- **Author:** Jose Robledo +- **Origin:** FZJ / DTU / ESS DMSC +- **Date:** + +## Description + +```text +SasView_surface_fractal component, generated from surface_fractal.c in sasmodels. + +Example: +SasView_surface_fractal(radius, fractal_dim_surf, cutoff_length, +model_scale=1.0, model_abs=0.0, xwidth=0.01, yheight=0.01, zdepth=0.005, R=0, +int target_index=1, target_x=0, target_y=0, target_z=1, +focus_xw=0.5, focus_yh=0.5, focus_aw=0, focus_ah=0, focus_r=0, +pd_radius=0.0, pd_cutoff_length=0.0) +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| radius | Ang | ([0, inf]) Particle radius. | 10.0 | +| fractal_dim_surf | | ([1, 3]) Surface fractal dimension. | 2.0 | +| cutoff_length | Ang | ([0.0, inf]) Cut-off Length. | 500.0 | +| model_scale | | Global scale factor for scattering kernel. For systems without inter-particle interference, the form factors can be related to the scattering intensity by the particle volume fraction. | 1.0 | +| model_abs | | Absorption cross section density at 2200 m/s. | 0.0 | +| xwidth | m | ([-inf, inf]) Horiz. dimension of sample, as a width. | 0.01 | +| yheight | m | ([-inf, inf]) vert . dimension of sample, as a height for cylinder/box | 0.01 | +| zdepth | m | ([-inf, inf]) depth of sample | 0.005 | +| R | m | Outer radius of sample in (x,z) plane for cylinder/sphere. | 0 | +| target_x | m | relative focus target position. | 0 | +| target_y | m | relative focus target position. | 0 | +| target_z | m | relative focus target position. | 1 | +| target_index | | Relative index of component to focus at, e.g. next is +1. | 1 | +| focus_xw | m | horiz. dimension of a rectangular area. | 0.5 | +| focus_yh | m | , vert. dimension of a rectangular area. | 0.5 | +| focus_aw | deg | , horiz. angular dimension of a rectangular area. | 0 | +| focus_ah | deg | , vert. angular dimension of a rectangular area. | 0 | +| focus_r | m | case of circular focusing, focusing radius. | 0 | +| pd_radius | | (0,inf) defined as (dx/x), where x is de mean value and dx the standard devition of the variable. | 0.0 | +| pd_cutoff_length | | (0,inf) defined as (dx/x), where x is de mean value and dx the standard devition of the variable | 0.0 | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/sasmodels/SasView_surface_fractal.comp) for `SasView_surface_fractal.comp`. + +--- + +*Generated on mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/sasmodels/SasView_teubner_strey.md b/mcstas-comps/sasmodels/SasView_teubner_strey.md new file mode 100644 index 000000000..2a6c44f92 --- /dev/null +++ b/mcstas-comps/sasmodels/SasView_teubner_strey.md @@ -0,0 +1,58 @@ +# The `SasView_teubner_strey` Component + +*McStas: SasView teubner_strey model component as sample description.* + +## Identification + +- **Site:** +- **Author:** Jose Robledo +- **Origin:** FZJ / DTU / ESS DMSC +- **Date:** + +## Description + +```text +SasView_teubner_strey component, generated from teubner_strey.c in sasmodels. + +Example: +SasView_teubner_strey(volfraction_a, sld_a, sld_b, d, xi, +model_scale=1.0, model_abs=0.0, xwidth=0.01, yheight=0.01, zdepth=0.005, R=0, +int target_index=1, target_x=0, target_y=0, target_z=1, +focus_xw=0.5, focus_yh=0.5, focus_aw=0, focus_ah=0, focus_r=0, +) +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| volfraction_a | | ([0, 1.0]) Volume fraction of phase a. | 0.5 | +| sld_a | 1e-6/Ang^2 | ([-inf, inf]) SLD of phase a. | 0.3 | +| sld_b | 1e-6/Ang^2 | ([-inf, inf]) SLD of phase b. | 6.3 | +| d | Ang | ([0, inf]) Domain size (periodicity). | 100.0 | +| xi | Ang | ([0, inf]) Correlation length. | 30.0 | +| model_scale | | Global scale factor for scattering kernel. For systems without inter-particle interference, the form factors can be related to the scattering intensity by the particle volume fraction. | 1.0 | +| model_abs | | Absorption cross section density at 2200 m/s. | 0.0 | +| xwidth | m | ([-inf, inf]) Horiz. dimension of sample, as a width. | 0.01 | +| yheight | m | ([-inf, inf]) vert . dimension of sample, as a height for cylinder/box | 0.01 | +| zdepth | m | ([-inf, inf]) depth of sample | 0.005 | +| R | m | Outer radius of sample in (x,z) plane for cylinder/sphere. | 0 | +| target_x | m | relative focus target position. | 0 | +| target_y | m | relative focus target position. | 0 | +| target_z | m | relative focus target position. | 1 | +| target_index | | Relative index of component to focus at, e.g. next is +1. | 1 | +| focus_xw | m | horiz. dimension of a rectangular area. | 0.5 | +| focus_yh | m | , vert. dimension of a rectangular area. | 0.5 | +| focus_aw | deg | , horiz. angular dimension of a rectangular area. | 0 | +| focus_ah | deg | , vert. angular dimension of a rectangular area. | 0 | +| focus_r | m | case of circular focusing, focusing radius. | 0 | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/sasmodels/SasView_teubner_strey.comp) for `SasView_teubner_strey.comp`. + +--- + +*Generated on mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/sasmodels/SasView_triaxial_ellipsoid.md b/mcstas-comps/sasmodels/SasView_triaxial_ellipsoid.md new file mode 100644 index 000000000..d5f69bd5e --- /dev/null +++ b/mcstas-comps/sasmodels/SasView_triaxial_ellipsoid.md @@ -0,0 +1,61 @@ +# The `SasView_triaxial_ellipsoid` Component + +*McStas: SasView triaxial_ellipsoid model component as sample description.* + +## Identification + +- **Site:** +- **Author:** Jose Robledo +- **Origin:** FZJ / DTU / ESS DMSC +- **Date:** + +## Description + +```text +SasView_triaxial_ellipsoid component, generated from triaxial_ellipsoid.c in sasmodels. + +Example: +SasView_triaxial_ellipsoid(sld, sld_solvent, radius_equat_minor, radius_equat_major, radius_polar, +model_scale=1.0, model_abs=0.0, xwidth=0.01, yheight=0.01, zdepth=0.005, R=0, +int target_index=1, target_x=0, target_y=0, target_z=1, +focus_xw=0.5, focus_yh=0.5, focus_aw=0, focus_ah=0, focus_r=0, +pd_radius_equat_minor=0.0, pd_radius_equat_major=0.0, pd_radius_polar=0.0) +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| sld | 1e-6/Ang^2 | ([-inf, inf]) Ellipsoid scattering length density. | 4 | +| sld_solvent | 1e-6/Ang^2 | ([-inf, inf]) Solvent scattering length density. | 1 | +| radius_equat_minor | Ang | ([0, inf]) Minor equatorial radius, Ra. | 20 | +| radius_equat_major | Ang | ([0, inf]) Major equatorial radius, Rb. | 400 | +| radius_polar | Ang | ([0, inf]) Polar radius, Rc. | 10 | +| model_scale | | Global scale factor for scattering kernel. For systems without inter-particle interference, the form factors can be related to the scattering intensity by the particle volume fraction. | 1.0 | +| model_abs | | Absorption cross section density at 2200 m/s. | 0.0 | +| xwidth | m | ([-inf, inf]) Horiz. dimension of sample, as a width. | 0.01 | +| yheight | m | ([-inf, inf]) vert . dimension of sample, as a height for cylinder/box | 0.01 | +| zdepth | m | ([-inf, inf]) depth of sample | 0.005 | +| R | m | Outer radius of sample in (x,z) plane for cylinder/sphere. | 0 | +| target_x | m | relative focus target position. | 0 | +| target_y | m | relative focus target position. | 0 | +| target_z | m | relative focus target position. | 1 | +| target_index | | Relative index of component to focus at, e.g. next is +1. | 1 | +| focus_xw | m | horiz. dimension of a rectangular area. | 0.5 | +| focus_yh | m | , vert. dimension of a rectangular area. | 0.5 | +| focus_aw | deg | , horiz. angular dimension of a rectangular area. | 0 | +| focus_ah | deg | , vert. angular dimension of a rectangular area. | 0 | +| focus_r | m | case of circular focusing, focusing radius. | 0 | +| pd_radius_equat_minor | | (0,inf) defined as (dx/x), where x is de mean value and dx the standard devition of the variable. | 0.0 | +| pd_radius_equat_major | | (0,inf) defined as (dx/x), where x is de mean value and dx the standard devition of the variable. | 0.0 | +| pd_radius_polar | | (0,inf) defined as (dx/x), where x is de mean value and dx the standard devition of the variable | 0.0 | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/sasmodels/SasView_triaxial_ellipsoid.comp) for `SasView_triaxial_ellipsoid.comp`. + +--- + +*Generated on mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/sasmodels/SasView_triaxial_ellipsoid_aniso.md b/mcstas-comps/sasmodels/SasView_triaxial_ellipsoid_aniso.md new file mode 100644 index 000000000..a3b178985 --- /dev/null +++ b/mcstas-comps/sasmodels/SasView_triaxial_ellipsoid_aniso.md @@ -0,0 +1,67 @@ +# The `SasView_triaxial_ellipsoid_aniso` Component + +*McStas: SasView triaxial_ellipsoid model component as sample description.* + +## Identification + +- **Site:** +- **Author:** Jose Robledo +- **Origin:** FZJ / DTU / ESS DMSC +- **Date:** + +## Description + +```text +SasView_triaxial_ellipsoid component, generated from triaxial_ellipsoid.c in sasmodels. + +Example: +SasView_triaxial_ellipsoid_aniso(sld, sld_solvent, radius_equat_minor, radius_equat_major, radius_polar, theta, phi, Psi, +model_scale=1.0, model_abs=0.0, xwidth=0.01, yheight=0.01, zdepth=0.005, R=0, +int target_index=1, target_x=0, target_y=0, target_z=1, +focus_xw=0.5, focus_yh=0.5, focus_aw=0, focus_ah=0, focus_r=0, +pd_radius_equat_minor=0.0, pd_radius_equat_major=0.0, pd_radius_polar=0.0, pd_theta=0.0, pd_phi=0.0, pd_Psi=0.0) +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| sld | 1e-6/Ang^2 | ([-inf, inf]) Ellipsoid scattering length density. | 4 | +| sld_solvent | 1e-6/Ang^2 | ([-inf, inf]) Solvent scattering length density. | 1 | +| radius_equat_minor | Ang | ([0, inf]) Minor equatorial radius, Ra. | 20 | +| radius_equat_major | Ang | ([0, inf]) Major equatorial radius, Rb. | 400 | +| radius_polar | Ang | ([0, inf]) Polar radius, Rc. | 10 | +| theta | | | 60 | +| phi | | | 60 | +| Psi | | | 60 | +| model_scale | | Global scale factor for scattering kernel. For systems without inter-particle interference, the form factors can be related to the scattering intensity by the particle volume fraction. | 1.0 | +| model_abs | | Absorption cross section density at 2200 m/s. | 0.0 | +| xwidth | m | ([-inf, inf]) Horiz. dimension of sample, as a width. | 0.01 | +| yheight | m | ([-inf, inf]) vert . dimension of sample, as a height for cylinder/box | 0.01 | +| zdepth | m | ([-inf, inf]) depth of sample | 0.005 | +| R | m | Outer radius of sample in (x,z) plane for cylinder/sphere. | 0 | +| target_x | m | relative focus target position. | 0 | +| target_y | m | relative focus target position. | 0 | +| target_z | m | relative focus target position. | 1 | +| target_index | | Relative index of component to focus at, e.g. next is +1. | 1 | +| focus_xw | m | horiz. dimension of a rectangular area. | 0.5 | +| focus_yh | m | , vert. dimension of a rectangular area. | 0.5 | +| focus_aw | deg | , horiz. angular dimension of a rectangular area. | 0 | +| focus_ah | deg | , vert. angular dimension of a rectangular area. | 0 | +| focus_r | m | case of circular focusing, focusing radius. | 0 | +| pd_radius_equat_minor | | (0,inf) defined as (dx/x), where x is de mean value and dx the standard devition of the variable. | 0.0 | +| pd_radius_equat_major | | (0,inf) defined as (dx/x), where x is de mean value and dx the standard devition of the variable. | 0.0 | +| pd_radius_polar | | (0,inf) defined as (dx/x), where x is de mean value and dx the standard devition of the variable. | 0.0 | +| pd_theta | | (0,360) defined as (dx/x), where x is de mean value and dx the standard devition of the variable. | 0.0 | +| pd_phi | | (0,360) defined as (dx/x), where x is de mean value and dx the standard devition of the variable. | 0.0 | +| pd_Psi | | (0,360) defined as (dx/x), where x is de mean value and dx the standard devition of the variable | 0.0 | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/sasmodels/SasView_triaxial_ellipsoid_aniso.comp) for `SasView_triaxial_ellipsoid_aniso.comp`. + +--- + +*Generated on mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/sasmodels/SasView_two_lorentzian.md b/mcstas-comps/sasmodels/SasView_two_lorentzian.md new file mode 100644 index 000000000..dc8955d3d --- /dev/null +++ b/mcstas-comps/sasmodels/SasView_two_lorentzian.md @@ -0,0 +1,61 @@ +# The `SasView_two_lorentzian` Component + +*McStas: SasView two_lorentzian model component as sample description.* + +## Identification + +- **Site:** +- **Author:** Jose Robledo +- **Origin:** FZJ / DTU / ESS DMSC +- **Date:** + +## Description + +```text +SasView_two_lorentzian component, generated from two_lorentzian.c in sasmodels. + +Example: +SasView_two_lorentzian(lorentz_scale_1, lorentz_length_1, lorentz_exp_1, lorentz_scale_2, lorentz_length_2, lorentz_exp_2, +model_scale=1.0, model_abs=0.0, xwidth=0.01, yheight=0.01, zdepth=0.005, R=0, +int target_index=1, target_x=0, target_y=0, target_z=1, +focus_xw=0.5, focus_yh=0.5, focus_aw=0, focus_ah=0, focus_r=0, +pd_lorentz_length_1=0.0, pd_lorentz_length_2=0.0) +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| lorentz_scale_1 | | ([-inf, inf]) First power law scale factor. | 10.0 | +| lorentz_length_1 | Ang | ([-inf, inf]) First Lorentzian screening length. | 100.0 | +| lorentz_exp_1 | | ([-inf, inf]) First exponent of power law. | 3.0 | +| lorentz_scale_2 | | ([-inf, inf]) Second scale factor for broad Lorentzian peak. | 1.0 | +| lorentz_length_2 | Ang | ([-inf, inf]) Second Lorentzian screening length. | 10.0 | +| lorentz_exp_2 | | ([-inf, inf]) Second exponent of power law. | 2.0 | +| model_scale | | Global scale factor for scattering kernel. For systems without inter-particle interference, the form factors can be related to the scattering intensity by the particle volume fraction. | 1.0 | +| model_abs | | Absorption cross section density at 2200 m/s. | 0.0 | +| xwidth | m | ([-inf, inf]) Horiz. dimension of sample, as a width. | 0.01 | +| yheight | m | ([-inf, inf]) vert . dimension of sample, as a height for cylinder/box | 0.01 | +| zdepth | m | ([-inf, inf]) depth of sample | 0.005 | +| R | m | Outer radius of sample in (x,z) plane for cylinder/sphere. | 0 | +| target_x | m | relative focus target position. | 0 | +| target_y | m | relative focus target position. | 0 | +| target_z | m | relative focus target position. | 1 | +| target_index | | Relative index of component to focus at, e.g. next is +1. | 1 | +| focus_xw | m | horiz. dimension of a rectangular area. | 0.5 | +| focus_yh | m | , vert. dimension of a rectangular area. | 0.5 | +| focus_aw | deg | , horiz. angular dimension of a rectangular area. | 0 | +| focus_ah | deg | , vert. angular dimension of a rectangular area. | 0 | +| focus_r | m | case of circular focusing, focusing radius. | 0 | +| pd_lorentz_length_1 | | (0,inf) defined as (dx/x), where x is de mean value and dx the standard devition of the variable. | 0.0 | +| pd_lorentz_length_2 | | (0,inf) defined as (dx/x), where x is de mean value and dx the standard devition of the variable | 0.0 | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/sasmodels/SasView_two_lorentzian.comp) for `SasView_two_lorentzian.comp`. + +--- + +*Generated on mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/sasmodels/SasView_two_power_law.md b/mcstas-comps/sasmodels/SasView_two_power_law.md new file mode 100644 index 000000000..edf85f02b --- /dev/null +++ b/mcstas-comps/sasmodels/SasView_two_power_law.md @@ -0,0 +1,57 @@ +# The `SasView_two_power_law` Component + +*McStas: SasView two_power_law model component as sample description.* + +## Identification + +- **Site:** +- **Author:** Jose Robledo +- **Origin:** FZJ / DTU / ESS DMSC +- **Date:** + +## Description + +```text +SasView_two_power_law component, generated from two_power_law.c in sasmodels. + +Example: +SasView_two_power_law(coefficent_1, crossover, power_1, power_2, +model_scale=1.0, model_abs=0.0, xwidth=0.01, yheight=0.01, zdepth=0.005, R=0, +int target_index=1, target_x=0, target_y=0, target_z=1, +focus_xw=0.5, focus_yh=0.5, focus_aw=0, focus_ah=0, focus_r=0, +) +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| coefficent_1 | | ([-inf, inf]) coefficent A in low Q region. | 1.0 | +| crossover | 1/Ang | ([0, inf]) crossover location. | 0.04 | +| power_1 | | ([0, inf]) power law exponent at low Q. | 1.0 | +| power_2 | | ([0, inf]) power law exponent at high Q. | 4.0 | +| model_scale | | Global scale factor for scattering kernel. For systems without inter-particle interference, the form factors can be related to the scattering intensity by the particle volume fraction. | 1.0 | +| model_abs | | Absorption cross section density at 2200 m/s. | 0.0 | +| xwidth | m | ([-inf, inf]) Horiz. dimension of sample, as a width. | 0.01 | +| yheight | m | ([-inf, inf]) vert . dimension of sample, as a height for cylinder/box | 0.01 | +| zdepth | m | ([-inf, inf]) depth of sample | 0.005 | +| R | m | Outer radius of sample in (x,z) plane for cylinder/sphere. | 0 | +| target_x | m | relative focus target position. | 0 | +| target_y | m | relative focus target position. | 0 | +| target_z | m | relative focus target position. | 1 | +| target_index | | Relative index of component to focus at, e.g. next is +1. | 1 | +| focus_xw | m | horiz. dimension of a rectangular area. | 0.5 | +| focus_yh | m | , vert. dimension of a rectangular area. | 0.5 | +| focus_aw | deg | , horiz. angular dimension of a rectangular area. | 0 | +| focus_ah | deg | , vert. angular dimension of a rectangular area. | 0 | +| focus_r | m | case of circular focusing, focusing radius. | 0 | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/sasmodels/SasView_two_power_law.comp) for `SasView_two_power_law.comp`. + +--- + +*Generated on mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/sasmodels/SasView_vesicle.md b/mcstas-comps/sasmodels/SasView_vesicle.md new file mode 100644 index 000000000..0607559d3 --- /dev/null +++ b/mcstas-comps/sasmodels/SasView_vesicle.md @@ -0,0 +1,60 @@ +# The `SasView_vesicle` Component + +*McStas: SasView vesicle model component as sample description.* + +## Identification + +- **Site:** +- **Author:** Jose Robledo +- **Origin:** FZJ / DTU / ESS DMSC +- **Date:** + +## Description + +```text +SasView_vesicle component, generated from vesicle.c in sasmodels. + +Example: +SasView_vesicle(sld, sld_solvent, volfraction, radius, thickness, +model_scale=1.0, model_abs=0.0, xwidth=0.01, yheight=0.01, zdepth=0.005, R=0, +int target_index=1, target_x=0, target_y=0, target_z=1, +focus_xw=0.5, focus_yh=0.5, focus_aw=0, focus_ah=0, focus_r=0, +pd_radius=0.0, pd_thickness=0.0) +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| sld | 1e-6/Ang^2 | ([-inf, inf]) vesicle shell scattering length density. | 0.5 | +| sld_solvent | 1e-6/Ang^2 | ([-inf, inf]) solvent scattering length density. | 6.36 | +| volfraction | | ([0, 1.0]) volume fraction of shell. | 0.05 | +| radius | Ang | ([0, inf]) vesicle core radius. | 100 | +| thickness | Ang | ([0, inf]) vesicle shell thickness. | 30 | +| model_scale | | Global scale factor for scattering kernel. For systems without inter-particle interference, the form factors can be related to the scattering intensity by the particle volume fraction. | 1.0 | +| model_abs | | Absorption cross section density at 2200 m/s. | 0.0 | +| xwidth | m | ([-inf, inf]) Horiz. dimension of sample, as a width. | 0.01 | +| yheight | m | ([-inf, inf]) vert . dimension of sample, as a height for cylinder/box | 0.01 | +| zdepth | m | ([-inf, inf]) depth of sample | 0.005 | +| R | m | Outer radius of sample in (x,z) plane for cylinder/sphere. | 0 | +| target_x | m | relative focus target position. | 0 | +| target_y | m | relative focus target position. | 0 | +| target_z | m | relative focus target position. | 1 | +| target_index | | Relative index of component to focus at, e.g. next is +1. | 1 | +| focus_xw | m | horiz. dimension of a rectangular area. | 0.5 | +| focus_yh | m | , vert. dimension of a rectangular area. | 0.5 | +| focus_aw | deg | , horiz. angular dimension of a rectangular area. | 0 | +| focus_ah | deg | , vert. angular dimension of a rectangular area. | 0 | +| focus_r | m | case of circular focusing, focusing radius. | 0 | +| pd_radius | | (0,inf) defined as (dx/x), where x is de mean value and dx the standard devition of the variable. | 0.0 | +| pd_thickness | | (0,inf) defined as (dx/x), where x is de mean value and dx the standard devition of the variable | 0.0 | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/sasmodels/SasView_vesicle.comp) for `SasView_vesicle.comp`. + +--- + +*Generated on mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/sources/Adapt_check.md b/mcstas-comps/sources/Adapt_check.md new file mode 100644 index 000000000..d45d474bb --- /dev/null +++ b/mcstas-comps/sources/Adapt_check.md @@ -0,0 +1,40 @@ +# The `Adapt_check` Component + +*McStas: Optimization specifier for the Source_adapt component.* + +## Identification + +- **Site:** +- **Author:** Kristian Nielsen +- **Origin:** Risoe +- **Date:** 1999 + +## Description + +```text +This components works together with the Source_adapt component, and +is used to define the criteria for selecting which neutrons are +considered "good" in the adaptive algorithm. The name of the +associated Source_adapt component in the instrument definition is +given as parameter. The component is special in that its position +does not matter; all neutrons that have not been absorbed prior to +the component are considered "good". + +Example: Adapt_check(source_comp="MySource") +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| **source_comp** | string | The name of the Source_adapt component in the instrument definition. | | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/sources/Adapt_check.comp) for `Adapt_check.comp`. + +--- + +*Generated on mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/sources/ESS_butterfly.md b/mcstas-comps/sources/ESS_butterfly.md new file mode 100644 index 000000000..64518b3aa --- /dev/null +++ b/mcstas-comps/sources/ESS_butterfly.md @@ -0,0 +1,109 @@ +# The `ESS_butterfly` Component + +*McStas: ESS butterfly moderator, 2016 revision* + +## Identification + +- **Site:** +- **Author:** Peter Willendrup and Esben Klinkby +- **Origin:** DTU +- **Date:** August-September 2016 + +## Description + +```text +ESS butterfly moderator with automatic choice of coordinate system, with origin +placed at relevant "Moderator Focus Coordinate System" depending on sector location. + +To select beamport N 5 simply use + +COMPONENT Source = ESS_butterfly(sector="N",beamline=5,Lmin=0.1,Lmax=20,dist=2, +cold_frac=0.5, yheight=0.03,focus_xw=0.1, focus_yh=0.1) + +Geometry +The geometry corresponds correctly to the latest release of the butterfly moderator, +including changes warranted by the ESS CCB in July 2016, the so called BF1 type moderator. +A set of official release documents are available with this component, see the benchmarking +website mentioned below. + +Brilliances, geometry adapted from earlier BF2 design +The geometry and brightness data implemented in the McStas ESS source component ESS_butterfly.comp, +are released as an updated component library for McStas 2.3, as well as a stand alone archive for +use with earlier versions of McStas. + +The following features are worth highlighting: +
      +
    • The brightness data are still based on last years MCNP calculations, based on the Butterfly 2 geometry. +As a result, the spatial variation of the brightness across the moderator face should be considered to +have an uncertainty of the order of 10%. Detailed information on the reasoning behind the change to +the Butterfly 1 geometry can be found in [1] and detailed information on horizontal spatial brightness +variation can be found in [2]. The spectral shape has been checked and has not changed significantly. +
    • A scaling factor has been introduced to in order to account for the decrease in brightness since 2015. +To accommodate the influence of the changed geometry, this scaling factor has been applied independently +for the cold and thermal contributions and is beamline dependent. It is adjusted to agree with the +spectrally-integrated 6cm width data shown in [1],Figure 3. +
    • To allow future user adjustments of brilliance, the scalar parameters c_performance and t_performance +have been implemented. For now, we recommend to keep these at their default value of 1.0. +
    • The geometry has been updated to correspond within about 2 mm to the geometry described in [1]. This +has been done by ensuring that the position and apparent width of the moderators correspond to [1],Figure 2, +which has been derived from current MCNP butterfly 1 model. +
    • The beamport is now defined directly by its sector and number (e.g. 'W' and '5'), rather than giving the angle, +as before. [1],Figure 5 shows the geometry of the moderator2, beamport insert and beamline axis for beamline W5. +Since the underlying data is still from last years MCNP run, when the brightness was calculated at 10-degree +intervals, this means that the spectral curve for the nearest beamport on the grid 5,15,25,35,45,55 degrees +is used. The use of this grid has no effect on the accuracy of the geometry or brilliance because of the above- +mentioned beamline-dependent adjustments to the brilliance and geometry. See the website [3] for details. +
    +As before, the beamports all originate at the focal point of the sector. The beamline will in almost all cases be +horizontally tilted in order to view the cold or thermal moderator, which should be done using an Arm component. + +

    We expect to release an MCNP-event-based source model later in 2016, and possibly also new set of brilliance +functions for ESS_butterfly.comp. These are expected to include more realistic brilliances in terms of variation +across sectors and potentially also performance losses due to engineering reality. + +Engineering reality +An ad-hoc method for future implementation of "engineering reality" is included, use the +"c_performance/t_performance" parameters to down-scale performance uniformly across all wavelengths. + +References: +

      +
    1. Release document "Update to ESS Moderators, latest version" +
    2. Release document "Description and performance of the new baseline ESS moderators, latest version" +
    3. http://essbutterfly.mcstas.org/ benchmarking website with comparative McStas-MCNP figures +
    4. html-based, interactive 3D model of moderators and monolith, as seen from beamline N4. +
    5. Source code for ESS_butterfly.comp at GitHub. +
    +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| sector | str | Defines the 'sector' of your instrument position. Valid values are "N","S","E" and "W" | "N" | +| beamline | 1 | Defines the 'beamline number' of your instrument position. Valid values are 1..10 or 1..11 depending on sector | 1 | +| yheight | m | Defines the moderator height. Valid values are 0.03 m and 0.06 m | 0.03 | +| cold_frac | 1 | Defines the statistical fraction of events emitted from the cold part of the moderator | 0.5 | +| target_index | 1 | Relative index of component to focus at, e.g. next is +1 this is used to compute 'dist' automatically. | 0 | +| dist | m | Distance from origin to focusing rectangle; at (0,0,dist) - alternatively use target_index | 0 | +| focus_xw | m | Width of focusing rectangle | 0 | +| focus_yh | m | Height of focusing rectangle | 0 | +| c_performance | 1 | Cold brilliance scalar performance multiplicator c_performance > 0 | 1 | +| t_performance | 1 | Thermal brilliance scalar performance multiplicator t_performance > 0 | 1 | +| **Lmin** | AA | Minimum wavelength simulated | | +| **Lmax** | AA | Maximum wavelength simulated | | +| tmax_multiplier | 1 | Defined maximum emission time at moderator, tmax= tmax_multiplier * ESS_PULSE_DURATION. | 3 | +| n_pulses | 1 | Number of pulses simulated. 0 and 1 creates one pulse. | 1 | +| acc_power | MW | Accelerator power in MW | 5 | +| tfocus_dist | m | Position of time focusing window along z axis | 0 | +| tfocus_time | s | Time position of time focusing window | 0 | +| tfocus_width | s | Time width of time focusing window | 0 | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/sources/ESS_butterfly.comp) for `ESS_butterfly.comp`. + +--- + +*Generated on mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/sources/ESS_moderator.md b/mcstas-comps/sources/ESS_moderator.md new file mode 100644 index 000000000..70b6fcf9b --- /dev/null +++ b/mcstas-comps/sources/ESS_moderator.md @@ -0,0 +1,83 @@ +# The `ESS_moderator` Component + +*McStas: A parametrised pulsed source for modelling ESS long pulses.* + +## Identification + +- **Site:** +- **Author:** P Willendrup and E Klinkby, February 2014, derived from K Lefmann ESS_moderator_long +- **Origin:** DTU +- **Date:** + +## Description + +```text +Produces a time-of-flight spectrum, from the ESS parameters +Chooses evenly in lambda, evenly/exponentially decaying in time +Adapted from ESS_moderator_long by: K Lefmann, 2001 + +Updates and simplified interface: +
      +
    1. The spectrum from the source(s) is defined via the sourcedef string input parameter which allows these values: +
        +
      • sourcedef="2001", legacy "Mezei moderators" from the original F. Mezei documents +"ESS reference moderator characteristics for generic instrument performance evaluation", but rescaled to ESS TDR frequency, pulselength and power. +
      • sourcedef="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) and +implemented here by E Klinkby. NOTE: uses the 2001 brilliance for the thermal moderator! +
      • sourcedef="2014", updated brilliance using formulation by Troels Schoenfeldt, including support for the "pancacke", i.e. flat geometry. +
      • sourcedef="2015", updated brilliance using formulation by Troels Schoenfeldt, new butterfly baseline. +
      +
    2. The component can use target_index for focusing to a given beam port. Use an Arm() and ROTATED to position +relatively to the moderator. +
    3. The component relies on the new ess_source-lib which is expected to become further enriched during design-finaliziation and construciton of the ESS. +
    + +

    Note that this component does not implement "engineering reality" and currently uses a coordinate system centered on the moderator assembly. An +updated moderator component which references the "Moderator focus coordinate system" will be released later during the spring of 2016. + +

    Derived from ESS_moderator_long which was debugged intensively against Mezei note (4/12 2000) and VitESS @ Rencurel 2006. + +----------------------------------------------- +Correction by J. Saroun, NPI Rez: +1) version 2015: accepts negative port angles +2) version 2015: weight by cosine of the port angle +Warning: The negative beamport angle is not taken into acccount by mcplot + +%VALIDATION +Mezei-modererators validated against VitESS and Mezei note (4/12 2000) @ Rencurel 2006 +Benchmarked against multiple versions of ESS moderator group simulation data 2013-2015 +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| isleft | 1 | Fraction of thermal neutrons generated at the "left" moderator slab in case of "2013" or "2014" | 0.9 | +| **Lmin** | AA | Lower edge of wavelength distribution | | +| **Lmax** | AA | Upper edge of wavelength distribution | | +| cold_frac | 1 | Fraction of neutron statistics from cold source. It is implicitely assumed that supermirror allows each beamline to choose the desired fraction of cold and thermal neutrons (i.e. extreme idealization). | 1.0 | +| dist | m | Distance from source to focusing rectangle; at (0,0,dist) | 0 | +| **focus_xw** | m | Width of focusing rectangle | | +| **focus_yh** | m | Height of focusing rectangle | | +| target_index | 1 | relative index of component to focus at, e.g. next is +1 this is used to compute 'dist' automatically. | 0 | +| tmax_multiplier | 1 | Defined maximum emission time at moderator, tmax= tmax_multiplier * ESS_PULSE_DURATION. Only in combination with sourcedef="2013", "2014" or "2015" | 3 | +| yheight_c | m | Height of the cold source | 0.12 | +| yheight_t | m | Height of the thermal source | 0.12 | +| n_pulses | 1 | Number of pulses simulated. 0 and 1 creates one pulse. The integrated intensity is constant | 1 | +| acc_power | MW | Accelerator power in MW | 5 | +| beamport_angle | deg | Direction within the beamport sector (0 < angle < extraction_opening for 2014, -extraction_opening/2 < angle < extraction_opening/2 for 2015) to direct neutrons. For sourcedef="2015", the only allowed values are 5,15,...,55 degrees measured from the central point. | -1 | +| sourcedef | string | ESS source "database", values: "TDR", "2001", "2013", "2014", "2015" | "2015" | +| xwidth_c | m | Width / arc-length opening of the cold source. | 0.1 | +| xwidth_t | m | Edge of thermal source | 0.18 | +| extraction_opening | deg | Width of extraction-area in degrees (60 or 120 degrees). 120 deg only in combination with sourcedef="2014" and "2015". | 120 | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/sources/ESS_moderator.comp) for `ESS_moderator.comp`. + +--- + +*Generated on mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/sources/Moderator.md b/mcstas-comps/sources/Moderator.md new file mode 100644 index 000000000..75fd49c70 --- /dev/null +++ b/mcstas-comps/sources/Moderator.md @@ -0,0 +1,44 @@ +# The `Moderator` Component + +*McStas: A simple pulsed source for time-of-flight.* + +## Identification + +- **Site:** +- **Author:** KN, M.Hagen +- **Origin:** Risoe +- **Date:** August 1998 + +## Description + +```text +Produces a simple time-of-flight spectrum, with a flat energy distribution + +Example: Moderator(radius = 0.0707, dist = 9.035, focus_xw = 0.021, focus_yh = 0.021, Emin = 10, Emax = 15, Ec = 9.0, t0 = 37.15, gamma = 39.1) +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| radius | m | Radius of source | 0.07 | +| **Emin** | meV | Lower edge of energy distribution | | +| **Emax** | meV | Upper edge of energy distribution | | +| dist | m | Distance from source to the focusing rectangle | 0 | +| focus_xw | m | Width of focusing rectangle | 0.02 | +| focus_yh | m | Height of focusing rectangle | 0.02 | +| t0 | mus | decay constant for low-energy neutrons | 37.15 | +| Ec | meV | Critical energy, below which the flux decay is constant | 9.0 | +| gamma | meV | energy dependence of decay time | 39.1 | +| target_index | 1 | relative index of component to focus at, e.g. next is +1 this is used to compute 'dist' automatically. | 1 | +| flux | 1/(s cm 2 st meV) | flux | 1 | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/sources/Moderator.comp) for `Moderator.comp`. + +--- + +*Generated on mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/sources/Monitor_Optimizer.md b/mcstas-comps/sources/Monitor_Optimizer.md new file mode 100644 index 000000000..27a1a3b1f --- /dev/null +++ b/mcstas-comps/sources/Monitor_Optimizer.md @@ -0,0 +1,47 @@ +# The `Monitor_Optimizer` Component + +*McStas: To be used after the Source_Optimizer component* + +## Identification + +- **Site:** +- **Author:** Emmanuel Farhi +- **Origin:** ILL (France) +- **Date:** 17 Sept 1999 + +## Description + +```text +A component that optimizes the neutron flux passing through the +Source_Optimizer in order to have the maximum flux at the +Monitor_Optimizer position(s). +Source_optimizer should be placed just after the source. +Monitor_Optimizer should be placed at the position to optimize. +I prefer to put one just before the sample. + +See Source_Optimizer for +usage example and additional informations. +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| **optim_comp** | str | name of the Source_Optimizer component in the instrument definition. Do not use quotes (no quotes) | | +| xmin | m | Lower x bound of monitor opening | -0.1 | +| xmax | m | Upper x bound of monitor opening | 0.1 | +| ymin | m | Lower y bound of monitor opening | -0.1 | +| ymax | m | Upper y bound of monitor opening | 0.1 | +| xwidth | m | Width of monitor. Overrides xmin,xmax. | 0 | +| yheight | m | Height of monitor. Overrides ymin,ymax. | 0 | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/sources/Monitor_Optimizer.comp) for `Monitor_Optimizer.comp`. +- Source_Optimizer + +--- + +*Generated on mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/sources/Source_4PI.md b/mcstas-comps/sources/Source_4PI.md new file mode 100644 index 000000000..3852997be --- /dev/null +++ b/mcstas-comps/sources/Source_4PI.md @@ -0,0 +1,38 @@ +# The `Source_4PI` Component + +*McStas: Spherical, 4PI-emitting, monochromatic source for benchmarking purposes* + +## Identification + +- **Site:** +- **Author:** Peter Willendrup +- **Origin:** DTU +- **Date:** May 2024 + +## Description + +```text +Spherical, 4PI-emitting, monochromatic source for benchmarking purposes +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| radius | m | Radius of spherical source | 0 | +| flux | n/s/4PI | Neutron flux | 1e14 | +| gauss | | Flag to indicate if Energy/Wavelength distribution is gaussian | 0 | +| E0 | meV | Mean energy of neutrons. | 0 | +| dE | meV | Energy half spread of neutrons (flat or gaussian sigma). | 0 | +| lambda0 | AA | Mean wavelength of neutrons. | 0 | +| dlambda | AA | Wavelength half spread of neutrons. | 0 | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/sources/Source_4PI.comp) for `Source_4PI.comp`. + +--- + +*Generated on mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/sources/Source_Maxwell_3.md b/mcstas-comps/sources/Source_Maxwell_3.md new file mode 100644 index 000000000..079a25188 --- /dev/null +++ b/mcstas-comps/sources/Source_Maxwell_3.md @@ -0,0 +1,58 @@ +# The `Source_Maxwell_3` Component + +*McStas: Source with up to three Maxwellian distributions* + +## Identification + +- **Site:** +- **Author:** Kim Lefmann +- **Origin:** Risoe +- **Date:** March 2001 + +## Description + +```text +A parametrised continuous source for modelling a (cubic) source +with (up to) 3 Maxwellian distributions. +The source produces a continuous spectrum. +The sampling of the neutrons is uniform in wavelength. + +Units of flux: neutrons/cm^2/second/ster +(McStas units are in general neutrons/second) + +Example: PSI cold source T1=150.42 K / 2.51 AA I1 = 3.67 E11 +T2=38.74 K / 4.95 AA I2 = 3.64 E11 +T3=14.84 K / 9.5 AA I3 = 0.95 E11 +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| size | m | Edge of cube shaped source (for backward compatibility) | 0 | +| yheight | m | Height of rectangular source | 0 | +| xwidth | m | Width of rectangular source | 0 | +| **Lmin** | AA | Lower edge of lambda distribution | | +| **Lmax** | AA | Upper edge of lambda distribution | | +| **dist** | m | Distance from source to focusing rectangle; at (0,0,dist) | | +| **focus_xw** | m | Width of focusing rectangle | | +| **focus_yh** | m | Height of focusing rectangle | | +| **T1** | K | 1st temperature of thermal distribution | | +| T2 | K | 2nd temperature of thermal distribution | 300 | +| T3 | K | 3nd temperature of - - - | 300 | +| **I1** | 1/(cm**2*st) | flux, 1 (in flux units, see above) | | +| I2 | 1/(cm**2*st) | flux, 2 (in flux units, see above) | 0 | +| I3 | 1/(cm**2*st) | flux, 3 - - - | 0 | +| target_index | 1 | relative index of component to focus at, e.g. next is +1 this is used to compute 'dist' automatically. | 1 | +| lambda0 | AA | Mean wavelength of neutrons. | 0 | +| dlambda | AA | Wavelength spread of neutrons. | 0 | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/sources/Source_Maxwell_3.comp) for `Source_Maxwell_3.comp`. + +--- + +*Generated on mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/sources/Source_Optimizer.md b/mcstas-comps/sources/Source_Optimizer.md new file mode 100644 index 000000000..940a097a4 --- /dev/null +++ b/mcstas-comps/sources/Source_Optimizer.md @@ -0,0 +1,103 @@ +# The `Source_Optimizer` Component + +*McStas: A component that optimizes the neutron flux passing through the +Source_Optimizer in order to have the maximum flux at the +Monitor_Optimizer position.* + +## Identification + +- **Site:** +- **Author:** Emmanuel Farhi +- **Origin:** ILL (France) +- **Date:** 17 Sept 1999 + +## Description + +```text +Principle: The optimizer first (step 1) computes neutron state parameter +limits passing in the Source_Optimizer, and then (step 2) records a Reference +source as well as the state (at Source_Optimizer position) of neutrons +reaching Monitor. The optimized source is defined as a fraction of the +Reference source plus the distribution of 'good' neutrons reaching the +Monitor. The optimization then starts (step 3), and focuses new neutrons on +the Monitor_Optimizer. In fact it changes 'bad' neutrons into 'good' ones +(that reach the Monitor), acting on their position, spin and divergence or +velocity. The overall Monitor flux is kept during process. The energy and +polarisation distributions are kept during optimization as far as possible +during optimisation. The optimization method considers that all neutron +parameters - (x,y), (vx,vy,vz) or (vx/v2,vy/v2,v2), (sx,sy,sz) or +(sx/s2,sy/s2,s2) - are independent. + +Options: The optimized source can be computed regularly ('continuous' +option) or only once ('not continuous'). The time spent in steps 1 and 2 can +be reduced for a shorter optimization ('auto'). The neutrons passing during +steps 1 and 2 can be smoothed for a better neutron weight distribution +('smooth' option). + +Source_optimizer can be placed at any position where you want to act on the +flux, for instance just after the source. +Monitor_Optimizer should be placed at position(s) to optimize. +I prefer to put one just before the sample. + +Default parameters bins, step, and keep are 10, 10% and 10% respectively. +The option string can be empty (""), which stands for default configuration +that works fine in usual cases: + +options="continuous optimization, auto mode, smooth, SetXY+SetDivV+SetDivS" + +Possible options are +continuous for continuous source optimization (default). +verbose displays optimization process (debug purpose). +auto uses the shortest possible 'step 1' and 'step 2' and sets 'step' value as required (default). +smooth remove possible spikes generated in steps 1 and 2 (default is smooth). +inactivate to inactivate the Optimizer. +no or not revert next option +bins=[value=10] set the Number of cells for sampling neutron states +step=[value=10] Optimizer step in % of simulation. +keep=[value=10] Percentage of initial source distribution that is kept +file=[name] Filename where to save optimized source distributions (no file is generated if not given. Default ext. is .src) +SetXY Keywords to indicate what may be changed during +SetV optimisation. Default is position, divergence and spin +SetS direction ("SetXY+SetDivV+SetdivS"). Choosing the speed +SetDivV or spin optimization (SetV or SetS) may modify the energy +SetDivS or polarisation distribution (norm of V and S) as the three components are then independent. + +Parameters bins, step and keep can also be entered as optional parameters. + +EXAMPLE: I use the following settings + +optim_s = Source_Optimizer(options="please be clever") (same as empty) +(...) +Monitor_Optimizer(xmin=-0.05, xmax=0.05, ymin=-0.05, ymax=0.05, +optim_comp = "optim_s") + +A good optimization needs to record enough non optimized neutrons on Monitor +during step 2. Typical enhancement in computation speed is by a factor 20. +This component usually works well. + +NOTE: You must be aware that in some cases (SetV and SetS), +the optimization might sligtly afect the energy or spin distribution of the +source. The optimizer tries to do its best anyway. +Also, some 'spikes' may sometime appear in monitor signals in the course of +the optimization, coming from non-optimized neutrons with original weight. +The 'smooth' option minimises this effect (on by default). +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| bins | 1 | Number of cells for sampling neutron states. | 10 | +| step | 0-100 | Optimizer step in percent of simulation. | 0.1 | +| keep | 0-100 | Percentage of initial source distribution that is kept. | 0.1 | +| options | str | string of options. See Description | 0 | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/sources/Source_Optimizer.comp) for `Source_Optimizer.comp`. + +--- + +*Generated on mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/sources/Source_adapt.md b/mcstas-comps/sources/Source_adapt.md new file mode 100644 index 000000000..041371bef --- /dev/null +++ b/mcstas-comps/sources/Source_adapt.md @@ -0,0 +1,80 @@ +# The `Source_adapt` Component + +*McStas: Neutron source with adaptive importance sampling* + +## Identification + +- **Site:** +- **Author:** Kristian Nielsen +- **Origin:** Risoe +- **Date:** 1999 + +## Description + +```text +Rectangular source with flat energy or wavelength distribution that +uses adaptive importance sampling to improve simulation efficiency. +Works together with the Adapt_check component. + +The source divides the three-dimensional phase space of (energy, +horizontal position, horizontal divergence) into a number of +rectangular bins. The probability for selecting neutrons from each +bin is adjusted so that neutrons that reach the Adapt_check +component with high weights are emitted more frequently than those +with low weights. The adjustment is made so as to attemt to make +the weights at the Adapt_check components equal. + +Focusing is achieved by only emitting neutrons towards a rectangle +perpendicular to and placed at a certain distance along the Z axis. +Focusing is only approximate (for simplicity); neutrons are also +emitted to pass slightly above and below the focusing rectangle, +more so for wider focusing. + +In order to prevent false learning, a parameter beta sets a +fraction of the neutrons that are emitted uniformly, without regard +to the adaptive distribution. The parameter alpha sets an initial +fraction of neutrons that are emitted with low weights; this is +done to prevent early neutrons with rare initial parameters but +high weight to ruin the statistics before the component adapts its +distribution to the problem at hand. Good general-purpose values +for these parameters are alpha = beta = 0.25. + +%VALIDATION +This component is not validated. It does not work properly with MPI. +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| N_E | 1 | Number of bins in energy (or wavelength) dimension | 20 | +| N_xpos | 1 | Number of bins in horizontal position | 20 | +| N_xdiv | 1 | Number of bins in horizontal divergence | 20 | +| xmin | m | Left edge of rectangular source | 0 | +| xmax | m | Right edge | 0 | +| ymin | m | Lower edge | 0 | +| ymax | m | Upper edge | 0 | +| xwidth | m | Width of source | 0 | +| yheight | m | Height of source | 0 | +| filename | string | Optional filename for adaptive distribution output | 0 | +| dist | m | Distance to target rectangle along z axis | 0 | +| focus_xw | m | Width of target | 0.05 | +| focus_yh | m | Height of target | 0.1 | +| E0 | meV | Mean energy of neutrons | 0 | +| dE | meV | Energy spread (energy range is from E0-dE to E0+dE) | 0 | +| lambda0 | AA | Mean wavelength of neutrons (if energy not specified) | 0 | +| dlambda | AA | Wavelength spread half width | 0 | +| flux | | (1/(cm 2 AA st)) Absolute source flux | 1e13 | +| target_index | 1 | relative index of component to focus at, e.g. next is +1 this is used to compute 'dist' automatically. | 1 | +| alpha | 1 | Learning cut-off factor (0 < alpha <= 1) | 0.25 | +| beta | 1 | Aggressiveness of adaptive algorithm (0 < beta <= 1) | 0.25 | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/sources/Source_adapt.comp) for `Source_adapt.comp`. + +--- + +*Generated on mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/sources/Source_div.md b/mcstas-comps/sources/Source_div.md new file mode 100644 index 000000000..b22adce7d --- /dev/null +++ b/mcstas-comps/sources/Source_div.md @@ -0,0 +1,62 @@ +# The `Source_div` Component + +*McStas: Neutron source with Gaussian or uniform divergence* + +## Identification + +- **Site:** +- **Author:** KL +- **Origin:** Risoe +- **Date:** November 20, 1998 + +## Description + +```text +The routine is a rectangular neutron source, which has a gaussian or uniform +divergent output in the forward direction. +The neutron energy is distributed between lambda0-dlambda and +lambda0+dlambda or between E0-dE and E0+dE. The flux unit is specified +in n/cm2/s/st/energy unit (meV or Angs). +In the case of uniform distribution (gauss=0), angles are uniformly distributed +between -focus_aw and +focus_aw as well as -focus_ah and +focus_ah. +For Gaussian distribution (gauss=1), 'focus_aw' and 'focus_ah' define the +FWHM of a Gaussian distribution. Energy/wavelength distribution is also +Gaussian. + +Example: Source_div(xwidth=0.1, yheight=0.1, focus_aw=2, focus_ah=2, E0=14, dE=2, gauss=0) + +%VALIDATION +Feb 2005: tested by Kim Lefmann (o.k.) +Apr 2005: energy distribution used in external tests of Fermi choppers (o.k.) +Jun 2005: wavelength distribution used in external tests of velocity selectors (o.k.) +Validated by: K. Lieutenant + +%BUGS +distribution is uniform in (hor. and vert.) angle (relative to moderator normal), +therefore not suited for large angles +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| **xwidth** | m | Width of source | | +| **yheight** | m | Height of source | | +| **focus_aw** | deg | FWHM (Gaussian) or maximal (uniform) horz. width divergence | | +| **focus_ah** | deg | FWHM (Gaussian) or maximal (uniform) vert. height divergence | | +| E0 | meV | Mean energy of neutrons. | 0.0 | +| dE | meV | Energy half spread of neutrons. | 0.0 | +| lambda0 | Ang | Mean wavelength of neutrons (only relevant for E0=0) | 0.0 | +| dlambda | Ang | Wavelength half spread of neutrons. | 0.0 | +| gauss | 0\|1 | Criterion: 0: uniform, 1: Gaussian distributions | 0 | +| flux | 1/(s cm 2 st energy_unit) | flux per energy unit, Angs or meV | 1 | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/sources/Source_div.comp) for `Source_div.comp`. + +--- + +*Generated on mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/sources/Source_div_quasi.md b/mcstas-comps/sources/Source_div_quasi.md new file mode 100644 index 000000000..8d1ce1edd --- /dev/null +++ b/mcstas-comps/sources/Source_div_quasi.md @@ -0,0 +1,64 @@ +# The `Source_div_quasi` Component + +*McStas: Quasi-stochastic neutron source with Gaussian or uniform divergence* + +## Identification + +- **Site:** +- **Author:** Mads Carlsen and Erik Bergbäck Knudsen (erkn@fysik.dtu.dk) +- **Origin:** DTU Physics +- **Date:** Jan 22 + +## Description + +```text +A flat rectangular surface source with uniform or Gaussian divergence profile and focussing. +If the parametere gauss is not set (the default) the divergence profile is flat +in the range [-focus_ax,focus_ay]. If gauss is set, the focux_ax,focus_ay is considered +the standard deviation of the gaussian profile. +Currently focussing is only active for flat profile. The "focus window" is defined by focus_xw,focus_yh and dist. +The spectral intensity profile is uniformly distributed in the energy interval defined by e0+-dE/2 or +by wavelength lambda0+-dlambda/2 + +The phase space spanned by the generated neutrons is sampled by means of Halton-sequences, instead of regular +pseudo random numbers. This ensures that samples are evenly distributed within the phase space region of interest. + +Example: Source_div_quasi(xwidth=0.1, yheight=0.1, focus_aw=2, focus_ah=2, E0=14, dE=2, gauss=0) + +%VALIDATION + +%BUGS +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| spectrum_file | | File from which to read the spectral intensity profile | "" | +| xwidth | m | Width of source | 0 | +| yheight | m | Height of source | 0 | +| focus_xw | m | Width of sampling window | 0 | +| focus_yh | m | Height of sampling window | 0 | +| dist | m | Downstream distance to place sampling target window | 0 | +| focus_aw | rad | Std. dev. (Gaussian) or maximal (uniform) horz. width divergence. focus_xw overrrides if it is more restrictive. | 0 | +| focus_ah | rad | Std. dev. (Gaussian) or maximal (uniform) vert. height divergence. focus_yh overrrides if it is more restrictive. | 0 | +| E0 | meV | Mean energy of neutrons. | 0 | +| dE | meV | Energy spread of neutrons. | 0 | +| lambda0 | AA | Mean wavelength of neutrons (only relevant for E0=0) | 0 | +| dlambda | AA | Wavelength half spread of neutrons. | 0 | +| flux | 1/(s*cm**2*st*energy unit) | Flux per energy unit, Angs or meV | 0 | +| gauss | 1 | Criterion: 0: uniform, 1: Gaussian distribution of energy/wavelength | 0 | +| gauss_a | 1 | Criterion: 0: uniform, 1: Gaussian divergence distribution | 0 | +| randomphase | | When=1, the X-ray phase is randomised | 1 | +| phase | | Set to finite value to define X-ray phase (0:2 pi) | 0 | +| verbose | | Generate more output on the console. | 1 | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/sources/Source_div_quasi.comp) for `Source_div_quasi.comp`. + +--- + +*Generated on mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/sources/Source_gen.md b/mcstas-comps/sources/Source_gen.md new file mode 100644 index 000000000..f3f5d7d46 --- /dev/null +++ b/mcstas-comps/sources/Source_gen.md @@ -0,0 +1,123 @@ +# The `Source_gen` Component + +*McStas: Circular/squared neutron source with flat or Maxwellian energy/wavelength +spectrum* + +## Identification + +- **Site:** +- **Author:** Emmanuel Farhi, Kim Lefmann +- **Origin:** ILL/Risoe +- **Date:** Aug 27, 2001 + +## Description + +```text +This routine is a neutron source (rectangular or circular), which aims at +a square target centered at the beam (in order to improve MC-acceptance +rate). The angular divergence is then given by the dimensions of the +target. However, it may be directly set using the 'focus-aw' and 'focus_ah' +parameters. + +The neutron energy/wavelength is distributed uniformly in wavelength between +Emin=E0-dE and Emax=E0+dE or Lmin=lambda0-dlambda and Lmax=lambda0+dlambda. +The I1 may be either arbitrary (I1=0), or specified in neutrons per steradian +per square cm per Angstrom per s. A Maxwellian spectra may be selected if you +give the source temperatures (up to 3). + +Finally, a file with the flux as a +function of the wavelength [lambda(AA) flux(n/s/cm^2/st/AA)] may be used +with the 'flux_file' parameter. Format is 2 columns free text. + +Additional distributions for the horizontal and vertical phase spaces +distributions (position-divergence) may be specified with the +'xdiv_file' and 'ydiv_file' parameters. Format is free text, requiring +a comment line '# xylimits: pos_min pos_max div_min div_max' to set +the axis of the distribution matrix. All these files may be generated using +standard monitors (better in McStas/PGPLOT format), e.g.: +Monitor_nD(options="auto lambda per cm2") +Monitor_nD(options="x hdiv, all auto") +Monitor_nD(options="y vdiv, all auto") + +The source shape is defined by its radius, or can alternatively be squared +if you specify non-zero yheight and xwidth parameters. +The beam is divergence uniform,. +The source may have a thickness, which will broaden the default zero time +distribution. + +Usage example: +Source_gen(radius=0.1,lambda0=2.36,dlambda=0.16,T1=20,I1=1e13,focus_xw=0.01,focus_yh=0.01) +Source_gen(yheight=0.1,xwidth=0.1,Emin=1,Emax=3,I1=1e13,verbose=1,focus_xw=0.01,focus_yh=0.01) +EXTEND +%{ +t = rand0max(1e-3); // set time from 0 to 1 ms for TOF instruments. +%} + +Some neutron facility parameters: +PSI cold source T1=296.2,I1=8.5E11, T2=40.68,I2=5.2E11 +ILL VCS cold source T1=216.8,I1=1.24e+13,T2=33.9,I2=1.02e+13 +(H1, 58 MW) T3=16.7 ,I3=3.0423e+12 +ILL HCS cold source T1=413.5,I1=10.22e12,T2=145.8,I2=3.44e13 +(H5, 58 MW) T3=40.1 ,I3=2.78e13 +ILL Thermal tube T1=683.7,I1=0.5874e+13,T2=257.7,I2=2.5099e+13 +(H12, 58 MW) T3=16.7 ,I3=1.0343e+12 +ILL Hot source T1=1695, I1=1.74e13,T2=708, I2=3.9e12 (58MW) +HZB cold source T1=43.7 ,I1=1.4e12, T2=137.2,I2=2.08e12,radius=.155 (10MW) +HZB bi-spectral T1=43.7, I1=1.4e12, T2=137.2,I2=2.08e12,T3=293.0,I3=1.77e12 +HZB thermal tube T1=293.0,I1=2.64e12 (10MW) +FRM2 cold,20MW T1=35.0, I1=9.38e12,T2=547.5,I2=2.23e12,T3=195.4,I3=1.26e13 +FRM2 thermal,20MW T1=285.6,I1=3.06e13,T2=300.0,I2=1.68e12,T3=429.9,I3=6.77e12 +LLB cold,14MW T1=220, I1=2.09e12,T2=60, I2=3.83e12,T3=20, I3=1.04e12 +TRIGA thermal 1MW T1=300, I1=3.5e11 (scale by thermal power in MW) + +%VALIDATION +Feb 2005: output cross-checked for 3 Maxwellians against VITESS source +I(lambda), I(hor_div), I(vert_div) identical in shape and absolute values +Validated by: K. Lieutenant +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| flux_file | str | Name of a two columns [lambda flux] text file that contains the wavelength distribution of the flux in either [1/(s*cm**2*st)] or [1/(s*cm**2*st*AA)] (see flux_file_perAA flag) Comments (#) and further columns are ignored. Format is compatible with McStas/PGPLOT wavelength monitor files. When specified, temperature and intensity values are ignored. | "NULL" | +| xdiv_file | str | Name of the x-horiz. divergence distribution file, given as a free format text matrix, preceeded with a line '# xylimits: xmin xmax xdiv_min xdiv_max' | "NULL" | +| ydiv_file | str | Name of the y-vert. divergence distribution file, given as a free format text matrix, preceeded with a line '# xylimits: ymin ymax ydiv_min ydiv_max' | "NULL" | +| radius | m | Radius of circle in (x,y,0) plane where neutrons are generated. You may also use 'yheight' and 'xwidth' for a square source | 0.0 | +| dist | m | Distance to target along z axis. | 0 | +| focus_xw | m | Width of target. | 0.045 | +| focus_yh | m | Height of target. | 0.12 | +| focus_aw | deg | maximal (uniform) horz. width divergence | 0 | +| focus_ah | deg | maximal (uniform) vert. height divergence | 0 | +| E0 | meV | Mean energy of neutrons. | 0 | +| dE | meV | Energy spread of neutrons, half width. | 0 | +| lambda0 | AA | Mean wavelength of neutrons. | 0 | +| dlambda | AA | Wavelength spread of neutrons,half width | 0 | +| I1 | 1/(cm**2*sr) | Source flux per solid angle, area and Angstrom if I1=0, the source emits 1 in 4*PI whole space. | 1 | +| yheight | m | Source y-height, then does not use radius parameter | 0.1 | +| xwidth | m | Source x-width, then does not use radius parameter | 0.1 | +| verbose | 0/1 | display info about the source. -1 inactivate source. | 0 | +| T1 | K | Temperature of the Maxwellian source, 0=none | 0 | +| flux_file_perAA | 1 | When true (1), indicates that flux file data is already per Aangstroem. If false, file data is per wavelength bin. | 0 | +| flux_file_log | 1 | When true, will transform the flux table in log scale to improve the sampling. | 0 | +| Lmin | AA | Minimum wavelength of neutrons | 0 | +| Lmax | AA | Maximum wavelength of neutrons | 0 | +| Emin | meV | Minimum energy of neutrons | 0 | +| Emax | meV | Maximum energy of neutrons | 0 | +| T2 | K | Second Maxwellian source Temperature, 0=none | 0 | +| I2 | 1/(cm**2*sr) | Second Maxwellian Source flux | 0 | +| T3 | K | Third Maxwellian source Temperature, 0=none | 0 | +| I3 | 1/(cm**2*sr) | Third Maxwellian Source flux | 0 | +| zdepth | m | Source z-zdepth, not anymore flat | 0 | +| target_index | 1 | relative index of component to focus at, e.g. next is +1 this is used to compute 'dist' automatically. | 1 | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/sources/Source_gen.comp) for `Source_gen.comp`. +- P. Ageron, Nucl. Inst. Meth. A 284 (1989) 197 + +--- + +*Generated on mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/sources/Source_simple.md b/mcstas-comps/sources/Source_simple.md new file mode 100644 index 000000000..9746f9859 --- /dev/null +++ b/mcstas-comps/sources/Source_simple.md @@ -0,0 +1,54 @@ +# The `Source_simple` Component + +*McStas: A circular neutron source with flat energy spectrum and arbitrary flux* + +## Identification + +- **Site:** +- **Author:** Kim Lefmann +- **Origin:** Risoe +- **Date:** October 30, 1997 + +## Description + +```text +The routine is a circular neutron source, which aims at a square target +centered at the beam (in order to improve MC-acceptance rate). The angular +divergence is then given by the dimensions of the target. +The neutron energy is uniformly distributed between lambda0-dlambda and +lambda0+dlambda or between E0-dE and E0+dE. +The flux unit is specified in n/cm2/s/st/energy unit (meV or Angs). + +This component replaces Source_flat, Source_flat_lambda, +Source_flux and Source_flux_lambda. + +Example: Source_simple(radius=0.1, dist=2, focus_xw=.1, focus_yh=.1, E0=14, dE=2) +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| radius | m | Radius of circle in (x,y,0) plane where neutrons are generated. | 0.1 | +| yheight | m | Height of rectangle in (x,y,0) plane where neutrons are generated. | 0 | +| xwidth | m | Width of rectangle in (x,y,0) plane where neutrons are generated. | 0 | +| dist | m | Distance to target along z axis. | 0 | +| focus_xw | m | Width of target | .045 | +| focus_yh | m | Height of target | .12 | +| E0 | meV | Mean energy of neutrons. | 0 | +| dE | meV | Energy half spread of neutrons (flat or gaussian sigma). | 0 | +| lambda0 | AA | Mean wavelength of neutrons. | 0 | +| dlambda | AA | Wavelength half spread of neutrons. | 0 | +| flux | 1/(s*cm**2*st*energy unit) | flux per energy unit, Angs or meV if flux=0, the source emits 1 in 4*PI whole space. | 1 | +| gauss | 1 | Gaussian (1) or Flat (0) energy/wavelength distribution | 0 | +| target_index | 1 | relative index of component to focus at, e.g. next is +1 this is used to compute 'dist' automatically. | 1 | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/sources/Source_simple.comp) for `Source_simple.comp`. + +--- + +*Generated on mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/union/AF_HB_1D_process.md b/mcstas-comps/union/AF_HB_1D_process.md new file mode 100644 index 000000000..93fb70de7 --- /dev/null +++ b/mcstas-comps/union/AF_HB_1D_process.md @@ -0,0 +1,57 @@ +# The `AF_HB_1D_process` Component + +*McStas: 1D Antiferromagnetic Heisenberg chain* + +## Identification + +- **Site:** +- **Author:** Mads Bertelsen +- **Origin:** University of Copenhagen +- **Date:** 20.08.15 + +## Description + +```text +1D Antiferromagnetic Heisenberg chain + +Part of the Union components, a set of components that work together and thus +sperates 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 like this one +2) These are gathered into material definitions using Union_make_material +3) Geometries are placed using Union_box / Union_cylinder, assigned a material +4) A Union_master component placed after all of the above + +Only in step 4 will any simulation happen, and per default all geometries +defined before the master, but after the previous will be simulated here. + +There is a dedicated manual available for the Union_components + + +Algorithm: +Described elsewhere +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| atom_distance | AA | Distance between atom's in chain | 1 | +| number_density | 1/AA^3 | Number of scatteres per volume | 0 | +| unit_cell_volume | AA^3 | Unit cell volume (set either unit_cell_volume or number density) | 0 | +| A_constant | unitless | Constant from Müller paper 1981, probably somewhere between 1 and 1.5 | 1 | +| J_interaction | meV | Exchange constant | 1 | +| packing_factor | 1 | How dense is the material compared to optimal 0-1 | 1 | +| interact_fraction | 1 | How large a part of the scattering events should use this process 0-1 (sum of all processes in material = 1) | -1 | +| init | string | name of Union_init component (typically "init", default) | "init" | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/union/AF_HB_1D_process.comp) for `AF_HB_1D_process.comp`. + +--- + +*Generated on mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/union/IncoherentPhonon_process.md b/mcstas-comps/union/IncoherentPhonon_process.md new file mode 100644 index 000000000..565e4a03d --- /dev/null +++ b/mcstas-comps/union/IncoherentPhonon_process.md @@ -0,0 +1,60 @@ +# The `IncoherentPhonon_process` Component + +*McStas: A component to simulate inelastic scattering in the incoherent approximation +Takes into account one, two, and three phonon scattering explicitly, +and multi-phonon scattering (with n>4) via the saddle point method* + +## Identification + +- **Site:** +- **Author:** Victor Laliena +- **Origin:** University of Zaragoza +- **Date:** 06.11.2018 + +## Description + +```text +Part of the Union components, a set of components that work together and thus +expects 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 like this one +2) These are gathered into material definitions using Union_make_material +3) Geometries are placed using Union_box / Union_cylinder, assigned a material +4) A Union_master component placed after all of the above + + +Algorithm: +Described elsewhere, see e.g. https://doi.org/10.3233/JNR-190117 +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| T | K | Temperature | 394 | +| density | g/cm3 | Material density | 6.0 | +| M | amu | ion mass | 50.94 | +| sigmaCoh | barns | Coherent scattering cross section | 0.0184 | +| sigmaInc | barns | Incoherent scattering cross section | 5.08 | +| DOSfn | string | Path to the file that contains the DoS | NULL | +| nphe_exact | 1 | Number of terms in the phonon expansion taken exact. Has to be between 1 and 3. | 1 | +| nphe_approx | 1 | Number of terms in the phonon expansion taken approximate. | 0 | +| approx | 1 | Approximation type: 0 gaussian, 1 saddle point | 0 | +| mph_resum | 0/1 | Resumate the remaining terms of the phonon expansion via a saddle point: 0 No, 1 Yes | 0 | +| nxs | 1 | Number of energy points at which the total cross sections are precomputed | 1000 | +| kabsmin | A^-1 | Lower cut-off for the neutron wave-vector k | 0.1 | +| kabsmax | A^-1 | Higher cut-off for the neutron wave-vector k | 25 | +| interact_fraction | 1 | How large a part of the scattering events should use this process 0-1 (sum of all processes in material = 1) | -1 | +| init | string | Name of Union_init component (typically "init", default) | "init" | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/union/IncoherentPhonon_process.comp) for `IncoherentPhonon_process.comp`. +- See https://doi.org/10.3233/JNR-190117 + +--- + +*Generated on mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/union/Incoherent_process.md b/mcstas-comps/union/Incoherent_process.md new file mode 100644 index 000000000..2beba07d0 --- /dev/null +++ b/mcstas-comps/union/Incoherent_process.md @@ -0,0 +1,57 @@ +# The `Incoherent_process` Component + +*McStas: A sample component to separate geometry and phsysics* + +## Identification + +- **Site:** +- **Author:** Mads Bertelsen +- **Origin:** University of Copenhagen +- **Date:** 20.08.15 + +## Description + +```text +This Union_process is based on the Incoherent.comp component originally written +by Kim Lefmann and Kristian Nielsen + +Part of the Union components, a set of components that work together and thus +sperates 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 like this one +2) These are gathered into material definitions using Union_make_material +3) Geometries are placed using Union_box / Union_cylinder, assigned a material +4) A Union_master component placed after all of the above + +Only in step 4 will any simulation happen, and per default all geometries +defined before the master, but after the previous will be simulated here. + +There is a dedicated manual available for the Union_components + +Algorithm: +Described elsewhere +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| sigma | barns | Incoherent scattering cross section | 5.08 | +| f_QE | 1 | Fraction of quasielastic scattering (rest is elastic) [1] | 0 | +| gamma | meV | Lorentzian width of quasielastic broadening (HWHM) [1] | 0 | +| packing_factor | 1 | How dense is the material compared to optimal 0-1 | 1 | +| unit_cell_volume | AA^3 | Unit cell volume | 13.8 | +| interact_fraction | 1 | How large a part of the scattering events should use this process 0-1 (sum of all processes in material = 1) | -1 | +| init | string | name of Union_init component (typically "init", default) | "init" | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/union/Incoherent_process.comp) for `Incoherent_process.comp`. +- The test/example instrument Test_Phonon.instr. + +--- + +*Generated on mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/union/Mirror_surface.md b/mcstas-comps/union/Mirror_surface.md new file mode 100644 index 000000000..629213c4f --- /dev/null +++ b/mcstas-comps/union/Mirror_surface.md @@ -0,0 +1,61 @@ +# The `Mirror_surface` Component + +*McStas: A Mirror surface process* + +## Identification + +- **Site:** +- **Author:** Mads Bertelsen +- **Origin:** University of Copenhagen +- **Date:** 20.08.15 + +## Description + +```text +This is a Union surface process that describes a supermirror or other surface +that only have specular reflection. The reflectivity can be given as a file +or using the standard reflectivity inputs. To use this in a simulation an +instance of this component should be defined in the instrument file, then +attatched to one or more geometries in their surface stacks pertaining to +each face of the geometry. + +Part of the Union components, a set of components that work together and thus +sperates 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 like this one +2) These are gathered into material definitions using Union_make_material +3) Geometries are placed using Union_box / Union_cylinder, assigned a material +4) A Union_master component placed after all of the above + +Only in step 4 will any simulation happen, and per default all geometries +defined before the master, but after the previous will be simulated here. + +There is a dedicated manual available for the Union_components + + +Algorithm: +Described elsewhere +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| reflect | str | Name of reflectivity file. Format q(Angs-1) R(0-1) | 0 | +| R0 | 1 | Low-angle reflectivity | 0.99 | +| Qc | AA-1 | Critical scattering vector | 0.0219 | +| alpha | AA | Slope of reflectivity | 6.07 | +| m | 1 | m-value of material. Zero means completely absorbing. | 2 | +| W | AA-1 | Width of supermirror cut-off | 0.003 | +| init | string | Name of Union_init component (typically "init", default) | "init" | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/union/Mirror_surface.comp) for `Mirror_surface.comp`. + +--- + +*Generated on mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/union/NCrystal_process.md b/mcstas-comps/union/NCrystal_process.md new file mode 100644 index 000000000..6ab1f1ad9 --- /dev/null +++ b/mcstas-comps/union/NCrystal_process.md @@ -0,0 +1,71 @@ +# The `NCrystal_process` Component + +*McStas: NCrystal_process component for the Union framework.* + +## Identification + +- **Site:** +- **Author:** NCrystal developers, converted to a Union component by Mads Bertelsen +- **Origin:** NCrystal Developers (European Spallation Source ERIC and DTU Nutech) +- **Date:** 20.08.15 + +## Description + +```text +This process uses the NCrystal library as a Union process, see user documentation +for the NCrystal_sample.comp component for more information. The process only +uses the physics, as the Union components has a separate geometry system. +Absorption is also handled by Union, so any absorption output from NCrystal +is ignored. + +Part of the Union components, a set of components that work together and thus +sperates 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 like this one +2) These are gathered into material definitions using Union_make_material +3) Geometries are placed using Union_box / Union_cylinder, assigned a material +4) A Union_master component placed after all of the above + +Only in step 4 will any simulation happen, and per default all geometries +defined before the master, but after the previous will be simulated here. + +There is a dedicated manual available for the Union_components + + +Original header text for NCrystal_sample.comp: +McStas sample component for the NCrystal scattering library. Find more +information at the NCrystal +wiki. In particular, browse the available datafiles at Data-library +and read about format of the configuration string expected in the "cfg" +parameter at Using-NCrystal. + +

    NCrystal is available under the Apache 2.0 license. Depending +on the configuration choices, optional NCrystal modules under different +licenses might be enabled - see About for more +details. + +Algorithm: +Described elsewhere +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| cfg | str | NCrystal material configuration string (details on this page). | "" | +| packing_factor | 1 | Material packing factor | 1 | +| interact_fraction | 1 | How large a part of the scattering events should use this process 0-1 (sum of all processes in material = 1) | -1 | +| init | string | Name of Union_init component (typically "init", default) | "init" | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/union/NCrystal_process.comp) for `NCrystal_process.comp`. + +--- + +*Generated on mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/union/Non_process.md b/mcstas-comps/union/Non_process.md new file mode 100644 index 000000000..bd449fb61 --- /dev/null +++ b/mcstas-comps/union/Non_process.md @@ -0,0 +1,54 @@ +# The `Non_process` Component + +*McStas: This process dos nothing and is used for testing* + +## Identification + +- **Site:** +- **Author:** Mads Bertelsen +- **Origin:** ESS DMSC +- **Date:** 20.08.15 + +## Description + +```text +This process dos nothing and is used for testing + +Part of the Union components, a set of components that work together and thus +sperates 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 like this one +2) These are gathered into material definitions using Union_make_material +3) Geometries are placed using Union_box / Union_cylinder, assigned a material +4) A Union_master component placed after all of the above + +Only in step 4 will any simulation happen, and per default all geometries +defined before the master, but after the previous will be simulated here. + +There is a dedicated manual available for the Union_components + + +Algorithm: +Described elsewhere +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| sigma | barns | Scattering cross section | 5.08 | +| packing_factor | 1 | How dense is the material compared to optimal 0-1 | 1 | +| unit_cell_volume | AA^3 | Unit cell volume | 13.8 | +| interact_fraction | 1 | How large a part of the scattering events should use this process 0-1 (sum of all processes in material = 1) | -1 | +| init | string | name of Union_init component (typically "init", default) | "init" | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/union/Non_process.comp) for `Non_process.comp`. + +--- + +*Generated on mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/union/PhononSimple_process.md b/mcstas-comps/union/PhononSimple_process.md new file mode 100644 index 000000000..ca2925c39 --- /dev/null +++ b/mcstas-comps/union/PhononSimple_process.md @@ -0,0 +1,62 @@ +# The `PhononSimple_process` Component + +*McStas: Port of PhononSimple to Union components* + +## Identification + +- **Site:** +- **Author:** Anders Komar Ravn, based on template by Mads Bertelsen and Phonon_Simple +- **Origin:** University of Copenhagen +- **Date:** 20.08.15 + +## Description + +```text +Port of the PhononSimple component from the McStas library to the Union +components. + +Part of the Union components, a set of components that work together and thus +sperates 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 like this one +2) These are gathered into material definitions using Union_make_material +3) Geometries are placed using Union_box / Union_cylinder, assigned a material +4) A Union_master component placed after all of the above + +Only in step 4 will any simulation happen, and per default all geometries +defined before the master, but after the previous will be simulated here. + +There is a dedicated manual available for the Union_components + + +Algorithm: +Described elsewhere +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| packing_factor | 1 | How dense is the material compared to optimal 0-1 | 1 | +| unit_cell_volume | AA^3 | Unit cell volume | 13.8 | +| interact_fraction | 1 | How large a part of the scattering events should use this process 0-1 (sum of all processes in material = 1) | -1 | +| a | AA | fcc lattice constant | 4.95 | +| c | meV*AA | Velocity of sound | 10 | +| M | units | Nucleus atomic mass in units | 207.2 | +| b | fm | Scattring length | 9.4 | +| T | K | Temperature | 290 | +| DW | 1 | Debye-Waller factor | 1 | +| longitudinal | 0/1 | Simulate longitudinal branches | 1 | +| transverse | 0/1 | Simulate transverse branches | 1 | +| init | string | Name of Union_init component (typically "init", default) | "init" | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/union/PhononSimple_process.comp) for `PhononSimple_process.comp`. + +--- + +*Generated on mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/union/Powder_process.md b/mcstas-comps/union/Powder_process.md new file mode 100644 index 000000000..1e7a63344 --- /dev/null +++ b/mcstas-comps/union/Powder_process.md @@ -0,0 +1,62 @@ +# The `Powder_process` Component + +*McStas: Port of the PowderN process to the Union components* + +## Identification + +- **Site:** +- **Author:** Mads Bertelsen +- **Origin:** University of Copenhagen +- **Date:** 20.08.15 + +## Description + +```text +This Union_process is based on the PowderN.comp component originally written +by P. Willendrup, L. Chapon, K. Lefmann, A.B.Abrahamsen, N.B.Christensen, +E.M.Lauridsen. + +Part of the Union components, a set of components that work together and thus +sperates 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 like this one +2) These are gathered into material definitions using Union_make_material +3) Geometries are placed using Union_box / Union_cylinder, assigned a material +4) A Union_master component placed after all of the above + +Only in step 4 will any simulation happen, and per default all geometries +defined before the master, but after the previous will be simulated here. + +There is a dedicated manual available for the Union_components +Algorithm: +Described elsewhere +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| reflections | string | Input file for reflections. No scattering if NULL or "" [string] | "NULL" | +| packing_factor | 1 | How dense is the material compared to optimal 0-1 | 1 | +| Vc | AA^3 | Volume of unit cell=nb atoms per cell/density of atoms. | 0 | +| delta_d_d | 0/1 | Global relative delta_d_d/d broadening when the 'w' column is not available. Use 0 if ideal. | 0 | +| DW | 1 | Global Debye-Waller factor when the 'DW' column is not available. Use 1 if included in F2 | 0 | +| nb_atoms | 1 | Number of sub-unit per unit cell, that is ratio of sigma for chemical formula to sigma per unit cell | 1 | +| d_phi | deg | Angle corresponding to the vertical angular range to focus to, e.g. detector height. 0 for no focusing. | 0 | +| density | g/cm^3 | Density of material. rho=density/weight/1e24*N_A. | 0 | +| weight | g/mol | Atomic/molecular weight of material. | 0 | +| barns | 1 | Flag to indicate if \|F\|^2 from 'reflections' is in barns or fm^2 (barns=1 for laz, barns=0 for lau type files). | 1 | +| Strain | ppm | Global relative delta_d_d/d shift when the 'Strain' column is not available. Use 0 if ideal. | 0 | +| interact_fraction | 1 | How large a part of the scattering events should use this process 0-1 (sum of all processes in material = 1) | -1 | +| format | no quotes | Name of the format, or list of column indexes (see Description). | {0, 0, 0, 0, 0, 0, 0, 0, 0} | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/union/Powder_process.comp) for `Powder_process.comp`. + +--- + +*Generated on mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/union/Single_crystal_process.md b/mcstas-comps/union/Single_crystal_process.md new file mode 100644 index 000000000..e652f9437 --- /dev/null +++ b/mcstas-comps/union/Single_crystal_process.md @@ -0,0 +1,78 @@ +# The `Single_crystal_process` Component + +*McStas: Port of the Single_crystal component to the Union components* + +## Identification + +- **Site:** +- **Author:** Mads Bertelsen +- **Origin:** University of Copenhagen +- **Date:** 20.08.15 + +## Description + +```text +This Union_process is based on the Single_crystal.comp component originally +written by Kristian Nielsen + +Part of the Union components, a set of components that work together and thus +sperates 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 like this one +2) These are gathered into material definitions using Union_make_material +3) Geometries are placed using Union_box / Union_cylinder, assigned a material +4) A Union_master component placed after all of the above + +Only in step 4 will any simulation happen, and per default all geometries +defined before the master, but after the previous will be simulated here. + +There is a dedicated manual available for the Union_components + +Algorithm: +Described elsewhere +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| reflections | string | File name containing structure factors of reflections. Use empty ("") or NULL for incoherent scattering only | 0 | +| delta_d_d | 1 | Lattice spacing variance, gaussian RMS | 1e-4 | +| mosaic | arc minutes | Crystal mosaic (isotropic), gaussian RMS. Puts the crystal in the isotropic mosaic model state, thus disregarding other mosaicity parameters. | -1 | +| mosaic_a | arc minutes | Horizontal (rotation around lattice vector a) mosaic (anisotropic), gaussian RMS. Put the crystal in the anisotropic crystal vector state. I.e. model mosaicity through rotation around the crystal lattice vectors. Has precedence over in-plane mosaic model. | -1 | +| mosaic_b | arc minutes | Vertical (rotation around lattice vector b) mosaic (anisotropic), gaussian RMS. | -1 | +| mosaic_c | arc minutes | Out-of-plane (Rotation around lattice vector c) mosaic (anisotropic), gaussian RMS | -1 | +| mosaic_AB | arc_minutes, arc_minutes,1, 1, 1, 1, 1, 1 | In Plane mosaic rotation and plane vectors (anisotropic), mosaic_A, mosaic_B, A_h,A_k,A_l, B_h,B_k,B_l. Puts the crystal in the in-plane mosaic state. Vectors A and B define plane in which the crystal roation is defined, and mosaic_A, mosaic_B, denotes the resp. mosaicities (gaussian RMS) with respect to the two reflections chosen by A and B (Miller indices). | {0,0, 0,0,0, 0,0,0} | +| recip_cell | 1 | Choice of direct/reciprocal (0/1) unit cell definition | 0 | +| barns | 1 | Flag to indicate if \|F\|^2 from 'reflections' is in barns or fm^2. barns=1 for laz and isotropic constant elastic scattering (reflections=NULL), barns=0 for lau type files | 0 | +| ax | AA or AA^-1 | Coordinates of first (direct/recip) unit cell vector | 0 | +| ay | AA or AA^-1 | a on y axis | 0 | +| az | AA or AA^-1 | a on z axis | 0 | +| bx | AA or AA^-1 | Coordinates of second (direct/recip) unit cell vector | 0 | +| by | AA or AA^-1 | b on y axis | 0 | +| bz | AA or AA^-1 | b on z axis | 0 | +| cx | AA or AA^-1 | Coordinates of third (direct/recip) unit cell vector | 0 | +| cy | AA or AA^-1 | c on y axis | 0 | +| cz | AA or AA^-1 | c on z axis | 0 | +| aa | deg | Unit cell angles alpha, beta and gamma. Then uses norms of vectors a,b and c as lattice parameters | 0 | +| bb | deg | Beta angle | 0 | +| cc | deg | Gamma angle | 0 | +| order | 1 | Limit multiple scattering up to given order (0: all, 1: first, 2: second, ...) (Not supported in Union) | 0 | +| RX | m | Radius of lattice curvature along X. flat when 0. | 0 | +| RY | m | Radius of lattice curvature along Y. flat when 0. | 0 | +| RZ | m | Radius of lattice curvature along Z. flat when 0. | 0 | +| powder | 1 | Flag to indicate powder mode, for simulation of Debye-Scherrer cones via random crystallite orientation. A powder texture can be approximated with 0 | 0 | +| PG | 1 | Flag to indicate "Pyrolytic Graphite" mode, only meaningful with choice of Graphite.lau, models PG crystal. A powder texture can be approximated with 0 | 0 | +| interact_fraction | 1 | How large a part of the scattering events should use this process 0-1 (sum of all processes in material = 1) | -1 | +| packing_factor | 1 | How dense is the material compared to optimal 0-1 | 1 | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/union/Single_crystal_process.comp) for `Single_crystal_process.comp`. + +--- + +*Generated on mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/union/Template_process.md b/mcstas-comps/union/Template_process.md new file mode 100644 index 000000000..e878bb43e --- /dev/null +++ b/mcstas-comps/union/Template_process.md @@ -0,0 +1,57 @@ +# The `Template_process` Component + +*McStas: A template process for building Union processes* + +## Identification + +- **Site:** +- **Author:** Mads Bertelsen +- **Origin:** University of Copenhagen +- **Date:** 20.08.15 + +## Description + +```text +This is a template for a new contributor to create their own physical process. +The comments in this file are meant to teach the user about creating their own +process file, rather than explaining this one. For comments on how this code works, +look in the Incoherent_process.comp. + +Part of the Union components, a set of components that work together and thus +sperates 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 like this one +2) These are gathered into material definitions using Union_make_material +3) Geometries are placed using Union_box / Union_cylinder, assigned a material +4) A Union_master component placed after all of the above + +Only in step 4 will any simulation happen, and per default all geometries +defined before the master, but after the previous will be simulated here. + +There is a dedicated manual available for the Union_components + + +Algorithm: +Described elsewhere +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| sigma | barns | Incoherent scattering cross section | 5.08 | +| packing_factor | 1 | How dense is the material compared to optimal 0-1 | 1 | +| unit_cell_volume | AA^3 | Unit_cell_volume | 13.8 | +| interact_fraction | 1 | How large a part of the scattering events should use this process 0-1 (sum of all processes in material = 1) | -1 | +| init | string | Name of Union_init component (typically "init", default) | "init" | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/union/Template_process.comp) for `Template_process.comp`. + +--- + +*Generated on mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/union/Template_surface.md b/mcstas-comps/union/Template_surface.md new file mode 100644 index 000000000..502f8ab99 --- /dev/null +++ b/mcstas-comps/union/Template_surface.md @@ -0,0 +1,63 @@ +# The `Template_surface` Component + +*McStas: A template process for building Union surface processes* + +## Identification + +- **Site:** +- **Author:** Mads Bertelsen +- **Origin:** University of Copenhagen +- **Date:** 20.08.15 + +## Description + +```text +This is a template for a new contributor to create their own surface process. +The comments in this file are meant to teach the user about creating their own +surface component, rather than explaining this one. For comments on how this +code works, look in the Mirror_surface.comp. +To add a new surface process, three changes are needed in other files: +Add entry in surface enum (match your process) +Add storage struct in the union-lib.c file +Add the surface function in inion-suffix.c switch + +Part of the Union components, a set of components that work together and thus +sperates 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 like this one +2) These are gathered into material definitions using Union_make_material +3) Geometries are placed using Union_box / Union_cylinder, assigned a material +4) A Union_master component placed after all of the above + +Only in step 4 will any simulation happen, and per default all geometries +defined before the master, but after the previous will be simulated here. + +There is a dedicated manual available for the Union_components + + +Algorithm: +Described elsewhere +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| reflect | str | Name of reflectivity file. Format q(Angs-1) R(0-1) | 0 | +| R0 | 1 | Low-angle reflectivity | 0.99 | +| Qc | AA-1 | Critical scattering vector | 0.0219 | +| alpha | AA | Slope of reflectivity | 6.07 | +| m | 1 | m-value of material. Zero means completely absorbing. | 2 | +| W | AA-1 | Width of supermirror cut-off | 0.003 | +| init | string | Name of Union_init component (typically "init", default) | "init" | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/union/Template_surface.comp) for `Template_surface.comp`. + +--- + +*Generated on mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/union/Texture_process.md b/mcstas-comps/union/Texture_process.md new file mode 100644 index 000000000..75714a0ee --- /dev/null +++ b/mcstas-comps/union/Texture_process.md @@ -0,0 +1,53 @@ +# The `Texture_process` Component + +*McStas: Component for simulating textured powder in Union components* + +## Identification + +- **Site:** +- **Author:** Victor Laliena +- **Origin:** University of Zaragoza +- **Date:** 2018-2019 + +## Description + +```text +Part of the Union components, a set of components that work together and thus +seperates geometry and physics within McStas. +The use of this component requires other components to be used. + +This component deals with the coherent elastic scattering on a textured material. +The texture is described through the coefficients of the generalized Fourier transform +of the Orientation Distribution Function (ODF). +The component expects as input two files, one containing the Fourier coefficients of the +ODF and another one with crystallographic and physical information. + + +Algorithm: +Described elsewhere, see e.g. https://doi.org/10.3233/JNR-190117 +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| crystal_fn | s | Path to a file (.laz) containing crystallographic and physical information | 0 | +| fcoef_fn | s | Path to a text file containing the Fourier coefficients of the ODF. It must have five columns: l m n Real(Clmn) Imag(Clmn) | 0 | +| lmax_user | 1 | Cut-off for the Fourier series. If negative, the program uses all the coefficients provided in the file fcoef_fn | -1 | +| barns | 1 | Flag to indicate if \|F\|^2 from 'crystal_fn' is in barns or fm^2. barns=1 for laz and isotropic constant elastic scattering (reflections=NULL), barns=0 for lau type files | 0 | +| order | 1 | Limit scattering to this order | 0 | +| interact_fraction | 1 | How large a part of the scattering events should use this process 0-1 (sum of all processes in material = 1) | -1 | +| packing_factor | 1 | How dense is the material compared to optimal 0-1 | 1 | +| maxNeutronSaved | 1 | Maximum number of neutron cross sections saved for reusing | 1 | +| init | string | Name of Union_init component (typically "init", default) | "init" | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/union/Texture_process.comp) for `Texture_process.comp`. +- See https://doi.org/10.3233/JNR-190117 + +--- + +*Generated on mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/union/Union_abs_logger_1D_space.md b/mcstas-comps/union/Union_abs_logger_1D_space.md new file mode 100644 index 000000000..4e103367d --- /dev/null +++ b/mcstas-comps/union/Union_abs_logger_1D_space.md @@ -0,0 +1,82 @@ +# The `Union_abs_logger_1D_space` Component + +*McStas: Logger of absorption along 1D space* + +## Identification + +- **Site:** +- **Author:** Mads Bertelsen +- **Origin:** ESS DMSC +- **Date:** 19.06.20 + +## Description + +```text +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, assigned a material +4) Logger and conditional components can be placed which will record what happens +5) A Union_master component placed after all of the above + +Only in step 5 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 + +This component is an absorption logger, and thus placed in point 4) above. + +A absorption logger will log something for each absorption event happening +in the geometry or geometries on which it is attached. These are specified +in the target_geometry string. By leaving it blank, all geometries are +logged, even the ones not defined at this point in the instrument file. +Multiple geometries are specified as a comma separated list. + +This absorption logger stores the absorbed weight as a function of height +in a histogram. It is expected this abs logger will often be attached to a +cylindrical geometry, and so if the abs logger has the same position and +orientation it will measure absorption along the axis of symmetry. This +makes it easy to create simple tubes, and it is even possible to include +the detector casing and similar to improve the realism of the simulation. + +This absorption logger needs to be placed in space, the position is recorded in +the coordinate system of the logger component. + +It is possible to attach one or more conditional components to this absorption +logger. Such a conditional component would impose a condition on the state of +the neutron after the Union_master component that executes the simulation, +and the absorption logger will only record the event if this condition is true. + +To use the logger_conditional_extend function, set it to some integer value n +and make and extend section to the master component that runs the geometry. +In this extend function, logger_conditional_extend[n] is 1 if the conditional +stack evaluated to true, 0 if not. This way one can check what rays is logged +using regular McStas monitors. Only works if a conditional is applied to this +logger. +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| target_geometry | string | Comma separated list of geometry names that will be logged, leave empty for all volumes (even not defined yet) | "NULL" | +| **yheight** | m | height of absorption logger | | +| n | 1 | number of bins along y | 100 | +| filename | string | Filename of produced data file | "NULL" | +| order_total | 1 | Only log rays that have scattered n times, -1 for all orders | -1 | +| order_volume | 1 | Only log rays that have scattered n times in the same geometry, -1 for all orders | -1 | +| logger_conditional_extend_index | 1 | If a conditional is used with this logger, the result of each conditional calculation can be made available in extend as a array called "logger_conditional_extend", and one would then access logger_conditional_extend[n] if logger_conditional_extend_index is set to n | -1 | +| init | string | name of Union_init component (typically "init", default) | "init" | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/union/Union_abs_logger_1D_space.comp) for `Union_abs_logger_1D_space.comp`. + +--- + +*Generated on mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/union/Union_abs_logger_1D_space_event.md b/mcstas-comps/union/Union_abs_logger_1D_space_event.md new file mode 100644 index 000000000..fe376feb2 --- /dev/null +++ b/mcstas-comps/union/Union_abs_logger_1D_space_event.md @@ -0,0 +1,92 @@ +# The `Union_abs_logger_1D_space_event` Component + +*McStas: Logger of absorption in 1D space stored as events* + +## Identification + +- **Site:** +- **Author:** Mads Bertelsen +- **Origin:** ESS DMSC +- **Date:** 19.06.20 + +## Description + +```text +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, assigned a material +4) Logger and conditional components can be placed which will record what happens +5) A Union_master component placed after all of the above + +Only in step 5 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 + +This component is an absorption logger, and thus placed in point 4) above. + +A absorption logger will log something for each absorption event happening +in the geometry or geometries on which it is attached. These are specified +in the target_geometry string. By leaving it blank, all geometries are +logged, even the ones not defined at this point in the instrument file. +Multiple geometries are specified as a comma separated list. + +This absorption logger stores the absorbed weight as an event including a +pixel_id. The pixel_id is found from the y coordinate of the event position +in the coordinate system of the absorption logger and is binned to a +pixel_id which is necessary when importing the data in Mantid. The y +coordinate corresponds to the height and is natural when attaching this +absorption logger to a cylindrical geometry, as it will record position +along the axis of symmetry, and thus behave like a detector tube. When using +several of these absorption loggers, they will internally avoid reusing the +same pixel_id, but if any other mantid detectors are used, these need to have +pixel_ids larger than the maximum used by these loggers. Each of these components +uses three times the number of bins, as it internally is a 3xn histogram where +only the center line have data, as this is much easier to import in Mantid. +The ocmponent uses Monitor_nD functions for trace and mcdisplay, and for this +reason it can write the xml file required to transfer the detector geometry +to Mantid. + +This absorption logger needs to be placed in space, the position is recorded in +the coordinate system of the logger component. + +It is possible to attach one or more conditional components to this absorption +logger. Such a conditional component would impose a condition on the state of +the neutron after the Union_master component that executes the simulation, +and the absorption logger will only record the event if this condition is true. + +To use the logger_conditional_extend function, set it to some integer value n +and make and extend section to the master component that runs the geometry. +In this extend function, logger_conditional_extend[n] is 1 if the conditional +stack evaluated to true, 0 if not. This way one can check what rays is logged +using regular McStas monitors. Only works if a conditional is applied to this +logger. +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| target_geometry | string | Comma separated list of geometry names that will be logged, leave empty for all volumes (even not defined yet) | "NULL" | +| **yheight** | m | Height of absorption logger | | +| **n** | 1 | Number of bins along y | | +| fake_event | 1 | Number of fake events to add, circumvents issue with empty event lists with MPI | 0 | +| filename | string | Filename of produced data file | "NULL" | +| order_total | 1 | Only log rays that have scattered n times, -1 for all orders | -1 | +| order_volume | 1 | Only log rays that have scattered n times in the same geometry, -1 for all orders | -1 | +| logger_conditional_extend_index | 1 | If a conditional is used with this logger, the result of each conditional calculation can be made available in extend as a array called "logger_conditional_extend", and one would then access logger_conditional_extend[n] if logger_conditional_extend_index is set to n | -1 | +| init | string | name of Union_init component (typically "init", default) | "init" | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/union/Union_abs_logger_1D_space_event.comp) for `Union_abs_logger_1D_space_event.comp`. + +--- + +*Generated on mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/union/Union_abs_logger_1D_space_tof.md b/mcstas-comps/union/Union_abs_logger_1D_space_tof.md new file mode 100644 index 000000000..9a677809a --- /dev/null +++ b/mcstas-comps/union/Union_abs_logger_1D_space_tof.md @@ -0,0 +1,85 @@ +# The `Union_abs_logger_1D_space_tof` Component + +*McStas: Logger of absorption along 1D space and 1D time of flight* + +## Identification + +- **Site:** +- **Author:** Mads Bertelsen +- **Origin:** ESS DMSC +- **Date:** 19.06.20 + +## Description + +```text +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, assigned a material +4) Logger and conditional components can be placed which will record what happens +5) A Union_master component placed after all of the above + +Only in step 5 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 + +This component is an absorption logger, and thus placed in point 4) above. + +A absorption logger will log something for each absorption event happening +in the geometry or geometries on which it is attached. These are specified +in the target_geometry string. By leaving it blank, all geometries are +logged, even the ones not defined at this point in the instrument file. +Multiple geometries are specified as a comma separated list. + +This absorption logger records the absorbed intensity as a function of the +y position and time of flight. One common use could be to attach this +absorption logger to a cylindrical helium-3 volume, creating a model of +the detector volume. In such a detector, only the y position of the event +is known, and as such creates a similar dataset. + +This absorption logger needs to be placed in space, the position is recorded in +the coordinate system of the logger component. Note the detection is along the +y axis of the component, so it is natural to place it relative to a cylinder. + +It is possible to attach one or more conditional components to this absorption +logger. Such a conditional component would impose a condition on the state of +the neutron after the Union_master component that executes the simulation, +and the absorption logger will only record the event if this condition is true. + +To use the logger_conditional_extend function, set it to some integer value n +and make and extend section to the master component that runs the geometry. +In this extend function, logger_conditional_extend[n] is 1 if the conditional +stack evaluated to true, 0 if not. This way one can check what rays is logged +using regular McStas monitors. Only works if a conditional is applied to this +logger. +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| target_geometry | string | Comma separated list of geometry names that will be logged, leave empty for all volumes (even not defined yet) | "NULL" | +| **yheight** | m | height of absorption logger | | +| n | 1 | number of bins for spatial axis | 0.2 | +| time_min | s | Minimum time recorded | 0 | +| time_max | s | Maximum time recorded | 1 | +| time_bins | 1 | number of time bins | 100 | +| filename | string | Filename of produced data file | "NULL" | +| order_total | 1 | Only log rays that have scattered n times, -1 for all orders | -1 | +| order_volume | 1 | Only log rays that have scattered n times in the same geometry, -1 for all orders | -1 | +| logger_conditional_extend_index | 1 | If a conditional is used with this logger, the result of each conditional calculation can be made available in extend as a array called "logger_conditional_extend", and one would then access logger_conditional_extend[n] if logger_conditional_extend_index is set to n | -1 | +| init | string | name of Union_init component (typically "init", default) | "init" | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/union/Union_abs_logger_1D_space_tof.comp) for `Union_abs_logger_1D_space_tof.comp`. + +--- + +*Generated on mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/union/Union_abs_logger_1D_space_tof_to_lambda.md b/mcstas-comps/union/Union_abs_logger_1D_space_tof_to_lambda.md new file mode 100644 index 000000000..b77fcf3dd --- /dev/null +++ b/mcstas-comps/union/Union_abs_logger_1D_space_tof_to_lambda.md @@ -0,0 +1,116 @@ +# The `Union_abs_logger_1D_space_tof_to_lambda` Component + +*McStas: A logger of absorption along 1D of space and 1D of tof, but converted to lambda* + +## Identification + +- **Site:** +- **Author:** Mads Bertelsen +- **Origin:** ESS DMSC +- **Date:** 19.06.20 + +## Description + +```text +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, assigned a material +4) Logger and conditional components can be placed which will record what happens +5) A Union_master component placed after all of the above + +Only in step 5 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 + +This component is an absorption logger, and thus placed in point 4) above. + +A absorption logger will log something for each absorption event happening +in the geometry or geometries on which it is attached. These are specified +in the target_geometry string. By leaving it blank, all geometries are +logged, even the ones not defined at this point in the instrument file. +Multiple geometries are specified as a comma separated list. + +This absorption logger records the absorbed intensity as a function of the +measured and true wavelength. The measured wavelength is calculated from +the time of flight and distance travelled. This distance is a constant from +source to sample added to the distance from the sample position to the +detector pixel in which the event is detected. The true wavelength is +calculated directly from the velocity. This information shows any error in +conversion from tof to wavelength, especially from any added travelled +distance from multiple scattering. + +The lambda_min, max and bin parameters are used to set both the range for +measured and true wavelength. If either of these, denoted lambda_m and +lambda_t respectively, is set they will overwrite the lambda setting for +that part. Sine most data will be along the line lambda_m = lambda_t, it +is possible to record lambda_m / lambda_t as a function of lambda_t, which +will be close to 1.0. This mode is selected by setting relative_measured +to 1, and then the range can be selected with relative_min, max and bins. + +This absorption logger needs to be placed in space, the position is recorded in +the coordinate system of the logger component. Note the detection is along the +y axis of the component, so it is natural to place it relative to a cylinder. + +This component works as other absorption loggers, but converts the tof and +position data to wavelength, which is then compared to the actual wavelength +calculated from the neutron state. The neutron position used to calculate +the wavelength is pixelated while the time of flight is continous. The +distance from source to sample is an input parameter, and the distance from +sample to a detector pixel is calculated using the reference component position +which should be specified with a relative component index. + +It is possible to attach one or more conditional components to this absorption +logger. Such a conditional component would impose a condition on the state of +the neutron after the Union_master component that executes the simulation, +and the absorption logger will only record the event if this condition is true. + +To use the logger_conditional_extend function, set it to some integer value n +and make and extend section to the master component that runs the geometry. +In this extend function, logger_conditional_extend[n] is 1 if the conditional +stack evaluated to true, 0 if not. This way one can check what rays is logged +using regular McStas monitors. Only works if a conditional is applied to this +logger. +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| target_geometry | string | Comma separated list of geometry names that will be logged, leave empty for all volumes (even not defined yet) | "NULL" | +| **ref_component** | 1 | Reference component instance index, sample position for distance calculation | | +| **yheight** | m | Height of absorption logger | | +| **yn** | 1 | Number of bins along y axis | | +| source_sample_dist | m | Travel distance between source and sample position, used to calculate total travelled distance | 0.0 | +| lambda_min | AA | Minimum wavelength recorded (sets both lambda_m_min and lambda_t_min) | -1 | +| lambda_max | AA | Maximum wavelength recorded (sets both lambda_m_max and lambda_t_max) | -1 | +| lambda_bins | 1 | Number of wavelength bins | -1 | +| lambda_m_min | AA | Minimum measured wavelength recorded from tof and travelled distance (overwrites lambda_min) | -1 | +| lambda_m_max | AA | Maximum measured wavelength recorded from tof and travelled distance (overwrites lambda_max) | -1 | +| lambda_m_bins | 1 | Number of measured wavelength bins | -1 | +| lambda_t_min | AA | Minimum true wavelength recorded from tof and travelled distance (overwrites lambda_min) | -1 | +| lambda_t_max | AA | Maximum true wavelength recorded from tof and travelled distance (overwrites lambda_max) | -1 | +| lambda_t_bins | 1 | Number of true wavelength bins | -1 | +| relative_measured | 1 | Default 0, records measured as function of true wavelength, if this is enabled, records measured relative to true wavelength | 0 | +| relative_min | 1 | Smallest value of measured / true wavelength in histogram | 0.5 | +| relative_max | 1 | Largest value of measured / true wavelength in histogram | 1.5 | +| relative_bins | 1 | Number of bins on histogram axis with measured divided by true wavelength | 100 | +| filename | string | Filename of produced data file | "NULL" | +| order_total | 1 | Only log rays that have scattered n times, -1 for all orders | -1 | +| order_volume | 1 | Only log rays that have scattered n times in the same geometry, -1 for all orders | -1 | +| logger_conditional_extend_index | 1 | If a conditional is used with this logger, the result of each conditional calculation can be made available in extend as a array called "logger_conditional_extend", and one would then access logger_conditional_extend[n] if logger_conditional_extend_index is set to n | -1 | +| init | string | Name of Union_init component (typically "init", default) | "init" | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/union/Union_abs_logger_1D_space_tof_to_lambda.comp) for `Union_abs_logger_1D_space_tof_to_lambda.comp`. + +--- + +*Generated on mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/union/Union_abs_logger_1D_time.md b/mcstas-comps/union/Union_abs_logger_1D_time.md new file mode 100644 index 000000000..86d263ba1 --- /dev/null +++ b/mcstas-comps/union/Union_abs_logger_1D_time.md @@ -0,0 +1,83 @@ +# The `Union_abs_logger_1D_time` Component + +*McStas: Logger of absorption along 1D time* + +## Identification + +- **Site:** +- **Author:** Mads Bertelsen +- **Origin:** ESS DMSC +- **Date:** 19.06.20 + +## Description + +```text +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, assigned a material +4) Logger and conditional components can be placed which will record what happens +5) A Union_master component placed after all of the above + +Only in step 5 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 + +This component is an absorption logger, and thus placed in point 4) above. + +A absorption logger will log something for each absorption event happening +in the geometry or geometries on which it is attached. These are specified +in the target_geometry string. By leaving it blank, all geometries are +logged, even the ones not defined at this point in the instrument file. +Multiple geometries are specified as a comma separated list. + +This absorption logger stores the absorbed weight as a function of height +in a histogram. It is expected this abs logger will often be attached to a +cylindrical geometry, and so if the abs logger has the same position and +orientation it will measure absorption along the axis of symmetry. This +makes it easy to create simple tubes, and it is even possible to include +the detector casing and similar to improve the realism of the simulation. + +This absorption logger needs to be placed in space, the position is recorded in +the coordinate system of the logger component. + +It is possible to attach one or more conditional components to this absorption +logger. Such a conditional component would impose a condition on the state of +the neutron after the Union_master component that executes the simulation, +and the absorption logger will only record the event if this condition is true. + +To use the logger_conditional_extend function, set it to some integer value n +and make and extend section to the master component that runs the geometry. +In this extend function, logger_conditional_extend[n] is 1 if the conditional +stack evaluated to true, 0 if not. This way one can check what rays is logged +using regular McStas monitors. Only works if a conditional is applied to this +logger. +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| target_geometry | string | Comma separated list of geometry names that will be logged, leave empty for all volumes (even not defined yet) | "NULL" | +| time_min | s | time at start of recording | 0 | +| **time_max** | s | Maximum time to log | | +| n | 1 | number of bins along y | 100 | +| filename | string | Filename of produced data file | "NULL" | +| order_total | 1 | Only log rays that have scattered n times, -1 for all orders | -1 | +| order_volume | 1 | Only log rays that have scattered n times in the same geometry, -1 for all orders | -1 | +| logger_conditional_extend_index | 1 | If a conditional is used with this logger, the result of each conditional calculation can be made available in extend as a array called "logger_conditional_extend", and one would then access logger_conditional_extend[n] if logger_conditional_extend_index is set to n | -1 | +| init | string | name of Union_init component (typically "init", default) | "init" | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/union/Union_abs_logger_1D_time.comp) for `Union_abs_logger_1D_time.comp`. + +--- + +*Generated on mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/union/Union_abs_logger_2D_space.md b/mcstas-comps/union/Union_abs_logger_2D_space.md new file mode 100644 index 000000000..5205af5bb --- /dev/null +++ b/mcstas-comps/union/Union_abs_logger_2D_space.md @@ -0,0 +1,92 @@ +# The `Union_abs_logger_2D_space` Component + +*McStas: Logger of absorption along two dimensions of space* + +## Identification + +- **Site:** +- **Author:** Mads Bertelsen +- **Origin:** ESS DMSC +- **Date:** 19.06.20 + +## Description + +```text +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, assigned a material +4) Logger and conditional components can be placed which will record what happens +5) A Union_master component placed after all of the above + +Only in step 5 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 + +This component is an absorption logger, and thus placed in point 4) above. + +A absorption logger will log something for each absorption event happening +in the geometry or geometries on which it is attached. These are specified +in the target_geometry string. By leaving it blank, all geometries are +logged, even the ones not defined at this point in the instrument file. +Multiple geometries are specified as a comma separated list. + +This absorption logger stores the absorbed weight in a histogram spanning two +spatial directions. The position of the event is projected onto this plane. +The plotted data is very useful when ensuring the simulated geometry matches +the intentions. It is not recommended to use this tool for safety concerns, +as for example to estimate activity of a sample after irradiation. + +The spatial plane in which the histogram is performed are chosen with the +D_direction_1 and D_direction_2 parameters which can be "x", "y" or "z". +The D1_min and D1_max parameters sets the limits for the first axis, and +D2_min / D2_max likewise for the second axis. + +This absorption logger needs to be placed in space, the position is recorded in +the coordinate system of the logger component. + +It is possible to attach one or more conditional components to this absorption +logger. Such a conditional component would impose a condition on the state of +the neutron after the Union_master component that executes the simulation, +and the absorption logger will only record the event if this condition is true. + +To use the logger_conditional_extend function, set it to some integer value n +and make and extend section to the master component that runs the geometry. +In this extend function, logger_conditional_extend[n] is 1 if the conditional +stack evaluated to true, 0 if not. This way one can check what rays is logged +using regular McStas monitors. Only works if a conditional is applied to this +logger. +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| target_geometry | string | Comma separated list of geometry names that will be logged, leave empty for all volumes (even not defined yet) | "NULL" | +| D_direction_1 | string | Direction for first axis ("x", "y" or "z") | "x" | +| D1_min | m | Histogram boundary, min position value for first axis | -0.2 | +| D1_max | m | Histogram boundary, max position value for first axis | 5 | +| n1 | 1 | Number of bins for first axis | 0.2 | +| D_direction_2 | string | Direction for second axis ("x", "y" or "z") | "z" | +| D2_min | m | Histogram boundary, min position value for second axis | -0.2 | +| D2_max | m | Histogram boundary, max position value for second axis | 5 | +| n2 | 1 | Number of bins for second axis | 0.2 | +| filename | string | Filename of produced data file | "NULL" | +| order_total | 1 | Only log rays that have scattered n times, -1 for all orders | -1 | +| order_volume | 1 | Only log rays that have scattered n times in the same geometry, -1 for all orders | -1 | +| logger_conditional_extend_index | 1 | If a conditional is used with this logger, the result of each conditional calculation can be made available in extend as a array called "logger_conditional_extend", and one would then access logger_conditional_extend[n] if logger_conditional_extend_index is set to n | -1 | +| init | string | Name of Union_init component (typically "init", default) | "init" | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/union/Union_abs_logger_2D_space.comp) for `Union_abs_logger_2D_space.comp`. + +--- + +*Generated on mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/union/Union_abs_logger_event.md b/mcstas-comps/union/Union_abs_logger_event.md new file mode 100644 index 000000000..d24c555a2 --- /dev/null +++ b/mcstas-comps/union/Union_abs_logger_event.md @@ -0,0 +1,82 @@ +# The `Union_abs_logger_event` Component + +*McStas: A logger of absorption as events* + +## Identification + +- **Site:** +- **Author:** Mads Bertelsen +- **Origin:** ESS DMSC +- **Date:** 19.06.20 + +## Description + +```text +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, assigned a material +4) Logger and conditional components can be placed which will record what happens +5) A Union_master component placed after all of the above + +Only in step 5 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 + +This component is an absorption logger, and thus placed in point 4) above. + +A absorption logger will log something for each absorption event happening +in the geometry or geometries on which it is attached. These are specified +in the target_geometry string. By leaving it blank, all geometries are +logged, even the ones not defined at this point in the instrument file. +Multiple geometries are specified as a comma separated list. + +This absorption logger stores absorption as events, with position, velocity, +time and weight. The Monitor_nD libraries are used to write the event files. + +This absorption logger needs to be placed in space, the position and velocity +is recorded in the coordinate system of the logger component. + +It is possible to attach one or more conditional components to this absorption +logger. Such a conditional component would impose a condition on the state of +the neutron after the Union_master component that executes the simulation, +and the absorption logger will only record the event if this condition is true. + +To use the logger_conditional_extend function, set it to some integer value n +and make and extend section to the master component that runs the geometry. +In this extend function, logger_conditional_extend[n] is 1 if the conditional +stack evaluated to true, 0 if not. This way one can check what rays is logged +using regular McStas monitors. Only works if a conditional is applied to this +logger. +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| target_geometry | string | Comma separated list of geometry names that will be logged, leave empty for all volumes (even not defined yet) | "NULL" | +| filename | string | Filename of produced data file | "NULL" | +| xwidth | m | Width in x direction | 0 | +| xbins | 1 | Number of bins in x direction | 0 | +| yheight | m | Height in y direction | 0 | +| ybins | 1 | Number of bins in y direction | 0 | +| zdepth | m | Depth in z direction | 0 | +| zbins | 1 | Number of bins in z direction | 0 | +| order_total | 1 | Only log rays that have scattered n times, -1 for all orders | -1 | +| order_volume | 1 | Only log rays that have scattered n times in the same geometry, -1 for all orders | -1 | +| logger_conditional_extend_index | 1 | If a conditional is used with this logger, the result of each conditional calculation can be made available in extend as a array called "logger_conditional_extend", and one would then access logger_conditional_extend[n] if logger_conditional_extend_index is set to n | -1 | +| init | string | Name of Union_init component (typically "init", default) | "init" | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/union/Union_abs_logger_event.comp) for `Union_abs_logger_event.comp`. + +--- + +*Generated on mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/union/Union_abs_logger_nD.md b/mcstas-comps/union/Union_abs_logger_nD.md new file mode 100644 index 000000000..69cb27461 --- /dev/null +++ b/mcstas-comps/union/Union_abs_logger_nD.md @@ -0,0 +1,106 @@ +# The `Union_abs_logger_nD` Component + +*McStas: A logger of absorption as events with Monitor_nD options* + +## Identification + +- **Site:** +- **Author:** Mads Bertelsen +- **Origin:** ESS DMSC +- **Date:** 19.06.20 + +## Description + +```text +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, assigned a material +4) Logger and conditional components can be placed which will record what happens +5) A Union_master component placed after all of the above + +Only in step 5 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 + +This component is an absorption logger, and thus placed in point 4) above. + +An absorption logger will log something for each absorption event happening +in the geometry or geometries on which it is attached. These are specified +in the target_geometry string. By leaving it blank, all geometries are +logged, even the ones not defined at this point in the instrument file. +Multiple geometries are specified as a comma separated list. + +This absorption logger stores absorption as events, with position, velocity, +time and weight. The Monitor_nD libraries are used to write the event files. +This version is a close copy of Monitor_nD, having the same interface, though +the user must be aware that no propagation happens for rays to hit the +detector pixels, instead it uses the position of absorbed. Use the previous +keyword to tell Monitor_nD that this is going on. It still needs values set +for xwidth and yheight, even though these will not be used. + +This absorption logger needs to be placed in space, the position and velocity +is recorded in the coordinate system of the logger component. + +It is possible to attach one or more conditional components to this absorption +logger. Such a conditional component would impose a condition on the state of +the neutron after the Union_master component that executes the simulation, +and the absorption logger will only record the event if this condition is true. + +To use the logger_conditional_extend function, set it to some integer value n +and make and extend section to the master component that runs the geometry. +In this extend function, logger_conditional_extend[n] is 1 if the conditional +stack evaluated to true, 0 if not. This way one can check what rays is logged +using regular McStas monitors. Only works if a conditional is applied to this +logger. +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| target_geometry | string | Comma separated list of geometry names that will be logged, leave empty for all volumes (even not defined yet) | "NULL" | +| order_total | 1 | Only log rays that have scattered n times, -1 for all orders | -1 | +| order_volume | 1 | Only log rays that have scattered n times in the same geometry, -1 for all orders | -1 | +| logger_conditional_extend_index | 1 | If a conditional is used with this logger, the result of each conditional calculation can be made available in extend as a array called "logger_conditional_extend", and one would then access logger_conditional_extend[n] if logger_conditional_extend_index is set to n | -1 | +| init | string | Name of Union_init component (typically "init", default) | "init" | +| user1 | str | Variable name of USERVAR to be monitored by user1. | "" | +| user2 | str | Variable name of USERVAR to be monitored by user2. | "" | +| user3 | str | Variable name of USERVAR to be monitored by user3. | "" | +| xwidth | m | Width of detector. | 0 | +| yheight | m | Height of detector. | 0 | +| zdepth | m | Thickness of detector (z). | 0 | +| xmin | m | Lower x bound of opening | 0 | +| xmax | m | Upper x bound of opening | 0 | +| ymin | m | Lower y bound of opening | 0 | +| ymax | m | Upper y bound of opening | 0 | +| zmin | m | Lower z bound of opening | 0 | +| zmax | m | Upper z bound of opening | 0 | +| bins | 1 | Number of bins to force for all variables. Use 'bins' keyword in 'options' for heterogeneous bins | 0 | +| min | u | Minimum range value to force for all variables. Use 'min' or 'limits' keyword in 'options' for other limits | -1e40 | +| max | u | Maximum range value to force for all variables. Use 'max' or 'limits' keyword in 'options' for other limits | 1e40 | +| restore_neutron | 0\|1 | Not functional for Union version | 0 | +| radius | m | Radius of sphere/banana shape monitor | 0 | +| options | str | String that specifies the configuration of the monitor. The general syntax is "[x] options..." (see Descr.). | "NULL" | +| filename | str | Output file name (overrides file=XX option). | "NULL" | +| geometry | str | Name of an OFF file to specify a complex geometry detector | "NULL" | +| nowritefile | 1 | Not functional for Union version | 0 | +| nexus_bins | 1 | NeXus mode only: store component BIN information
    (-1 disable, 0 enable for list mode monitor, 1 enable for any montor) | 0 | +| username1 | str | Name assigned to User1 | "NULL" | +| username2 | str | Name assigned to User2 | "NULL" | +| username3 | str | Name assigned to User3 | "NULL" | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/union/Union_abs_logger_nD.comp) for `Union_abs_logger_nD.comp`. +- See also the Monitor_nD mcdoc page" + +--- + +*Generated on mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/union/Union_box.md b/mcstas-comps/union/Union_box.md new file mode 100644 index 000000000..4639b0514 --- /dev/null +++ b/mcstas-comps/union/Union_box.md @@ -0,0 +1,82 @@ +# The `Union_box` Component + +*McStas: A box geometry component for the Union components* + +## Identification + +- **Site:** +- **Author:** Mads Bertelsen +- **Origin:** University of Copenhagen +- **Date:** 20.08.15 + +## Description + +```text +Part of the Union components, a set of components that work together and thus +sperates 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, assigned a material +4) A Union_master component placed after all of 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 position of this component is the center of the box, zdepth/2 in each direction. + +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. + + +Algorithm: +Described elsewhere +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| 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. | | +| **xwidth** | m | Width of the box volume | | +| **yheight** | m | Height of the box volume | | +| **zdepth** | m | Depth of the box volume | | +| xwidth2 | m | Optional different width at the +z box face | -1 | +| yheight2 | m | Optional different height at the +z box face | -1 | +| visualize | 1 | Set to 0 if you wish to hide this geometry in mcdisplay | 1 | +| target_index | string | Focuses on component a component this many steps further in the component sequence | 0 | +| target_x | m | X position of target to focus at | 0 | +| target_y | m | Y position of target to focus at | 0 | +| target_z | m | Z 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 | +| plus_z_surface | string | Comma seperated string of Union surface definitions defined prior to this component, applied to +z face of box | 0 | +| minus_z_surface | string | Comma seperated string of Union surface definitions defined prior to this component, applied to -z face of box | 0 | +| plus_x_surface | string | Comma seperated string of Union surface definitions defined prior to this component, applied to +x face of box | 0 | +| minus_x_surface | string | Comma seperated string of Union surface definitions defined prior to this component, applied to -x face of box | 0 | +| plus_y_surface | string | Comma seperated string of Union surface definitions defined prior to this component, applied to +y face of box | 0 | +| minus_y_surface | string | Comma seperated string of Union surface definitions defined prior to this component, applied to -z face of box | 0 | +| all_face_surface | string | Comma seperated string of Union surface definitions defined prior to this component, applied to all faces above | 0 | +| cut_surface | string | Comma seperated string of Union surface definitions defined prior to this component, applied to all internal cuts | 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 | +| init | string | name of Union_init component (typically "init", default) | "init" | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/union/Union_box.comp) for `Union_box.comp`. + +--- + +*Generated on mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/union/Union_conditional_PSD.md b/mcstas-comps/union/Union_conditional_PSD.md new file mode 100644 index 000000000..0e6c00c30 --- /dev/null +++ b/mcstas-comps/union/Union_conditional_PSD.md @@ -0,0 +1,72 @@ +# The `Union_conditional_PSD` Component + +*McStas: A conditional component in the shape of an area the neutrons must hit* + +## Identification + +- **Site:** +- **Author:** Mads Bertelsen +- **Origin:** University of Copenhagen +- **Date:** 20.08.15 + +## Description + +```text +Part of the Union components, a set of components that work together and thus +sperates 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, assigned a material +4) A Union_master component placed after all of 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 + +This is a conditional component that affects the loggers in the target_loggers +string. When a logger is affected, it will only record events if the +conditional is true at the end of the simulation of a ray in the master. +Conditionals can be used to for example limit the loggers to rays that end +within a certain energy range, time interval or similar. + +One can apply several conditionals to each logger if desired. + +In the extend section of a master, the tagging conditional can be acsessed by +the variable name tagging_conditional_extend. Beware, that it only works as +long as the tagging system is active, so you may want to increase the number +of histories allowed by that master component before stopping. + +This conditional is a little special, because it needs to be placed in space. +It's center location is like a psd. + +overwrite_logger_weight can be used to force the loggers this conditional +controls to write the final weight for each scattering event, instead of the +recorded value. +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| target_loggers | string | Comma seperated list of loggers this conditional should affect | "NULL" | +| master_tagging | 1 | Apply this conditional to the tagging system in next master | 0 | +| tagging_extend_index | 1 | Not currently used | -1 | +| **xwidth** | m | Width of target area | | +| **yheight** | m | Height of target area | | +| time_min | s | Min time (on psd), if not set ignored | 0 | +| time_max | s | Max time (on psd), if not set ignored | 0 | +| overwrite_logger_weight | 1 | Default = 0, overwrite = 1 | 0 | +| init | string | Name of Union_init component (typically "init", default) | "init" | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/union/Union_conditional_PSD.comp) for `Union_conditional_PSD.comp`. + +--- + +*Generated on mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/union/Union_conditional_standard.md b/mcstas-comps/union/Union_conditional_standard.md new file mode 100644 index 000000000..25cdfb6fa --- /dev/null +++ b/mcstas-comps/union/Union_conditional_standard.md @@ -0,0 +1,72 @@ +# The `Union_conditional_standard` Component + +*McStas: A conditional component that filter on basic variables of exit state* + +## Identification + +- **Site:** +- **Author:** Mads Bertelsen +- **Origin:** University of Copenhagen +- **Date:** 20.08.15 + +## Description + +```text +Part of the Union components, a set of components that work together and thus +sperates 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 / Union_cylinder, assigned a material +4) A Union_master component placed after all of 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 + +This is a conditional component that affects the loggers in the target_loggers +string. When a logger is affected, it will only record events if the +conditional is true at the end of the simulation of a ray in the master. +Conditionals can be used to for example limit the loggers to rays that end +within a certain energy range, time interval or similar. + +One can apply several conditionals to each logger if desired. + +In the extend section of a master, the tagging conditional can be acsessed by +the variable name tagging_conditional_extend. Beware, that it only works as +long as the tagging system is active, so you may want to increase the number +of histories allowed by that master component before stopping. + +overwrite_logger_weight can be used to force the loggers this conditional +controls to write the final weight for each scattering event, instead of the +recorded value. +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| target_loggers | string | Comma seperated list of loggers this conditional should affect | "NULL" | +| master_tagging | 1 | Apply this conditional to the tagging system in next master | 0 | +| tagging_extend_index | 1 | Not currently used | -1 | +| time_min | s | Min time, if not set ignored | 0 | +| time_max | s | Max time, if not set ignored | 0 | +| E_min | meV | Max energy, if not set ignored | 0 | +| E_max | meV | Min energy, if not set ignored | 0 | +| total_order_min | 1 | Min scattering order, if not set ignored | 0 | +| total_order_max | 1 | Max scattering order, if not set ignored | 0 | +| last_volume_index | 1 | Not used yet | -1 | +| overwrite_logger_weight | 1 | Default = 0, overwrite = 1 | 0 | +| init | string | Name of Union_init component (typically "init", default) | "init" | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/union/Union_conditional_standard.comp) for `Union_conditional_standard.comp`. + +--- + +*Generated on mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/union/Union_cone.md b/mcstas-comps/union/Union_cone.md new file mode 100644 index 000000000..a794d65b9 --- /dev/null +++ b/mcstas-comps/union/Union_cone.md @@ -0,0 +1,75 @@ +# The `Union_cone` Component + +*McStas: Cone geometry component for Union components* + +## Identification + +- **Site:** +- **Author:** Martin Olsen +- **Origin:** University of Copenhagen +- **Date:** 17.09.18 + +## Description + +```text +Part of the Union components, a set of components that work together and thus +sperates 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, assigned a material +4) A Union_master component placed after all of 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 position of this component is the center of the cone, and it thus +extends yheight/2 up and down along y axis. + +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 | +|------|------|-------------|---------| +| 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. | | +| radius | m | Radius volume in (x,z) plane | 0 | +| radius_top | m | Top radius volume in (x,z) plane | 0 | +| radius_bottom | m | Bottom radius volume in (x,z) plane | 0 | +| **yheight** | m | Cone height in (y) direction | | +| visualize | 1 | Set to 0 if you wish to hide this geometry in mcdisplay | 1 | +| target_index | 1 | Focuses on component a component this many steps further in the component sequence | 0 | +| target_x | m | X position of target to focus at | 0 | +| target_y | m | Y position of target to focus at | 0 | +| target_z | m | Z 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 | +| curved_surface | string | Comma seperated string of Union surface definitions defined prior to this component, applied to curved wall of cone | 0 | +| top_surface | string | Comma seperated string of Union surface definitions defined prior to this component, applied to +y top face of cone | 0 | +| bottom_surface | string | Comma seperated string of Union surface definitions defined prior to this component, applied to -y bottom face of cone | 0 | +| all_face_surface | string | Comma seperated string of Union surface definitions defined prior to this component, applied to all faces above | 0 | +| cut_surface | string | Comma seperated string of Union surface definitions defined prior to this component, applied to all internal cuts | 0 | +| init | string | Name of Union_init component (typically "init", default) | "init" | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/union/Union_cone.comp) for `Union_cone.comp`. + +--- + +*Generated on mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/union/Union_cylinder.md b/mcstas-comps/union/Union_cylinder.md new file mode 100644 index 000000000..23b6fe1c8 --- /dev/null +++ b/mcstas-comps/union/Union_cylinder.md @@ -0,0 +1,73 @@ +# The `Union_cylinder` Component + +*McStas: Cylinder geometry component for Union components* + +## Identification + +- **Site:** +- **Author:** Mads Bertelsen +- **Origin:** University of Copenhagen +- **Date:** 20.08.15 + +## Description + +```text +Part of the Union components, a set of components that work together and thus +sperates 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, assigned a material +4) A Union_master component placed after all of 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 position of this component is the center of the cylinder, and it thus +extends yheight/2 up and down along y axis. + +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 | +|------|------|-------------|---------| +| 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. | | +| **radius** | m | Outer radius volume in (x,z) plane | | +| **yheight** | m | Cylinder height in (y) direction | | +| visualize | 1 | Set to 0 if you wish to hide this geometry in mcdisplay | 1 | +| target_index | 1 | Focuses on component a component this many steps further in the component sequence | 0 | +| target_x | m | X Position of target to focus at | 0 | +| target_y | m | Y Position of target to focus at | 0 | +| target_z | m | Z 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 | +| curved_surface | string | Comma seperated string of Union surface definitions defined prior to this component, applied to curved wall of cylinder | 0 | +| top_surface | string | Comma seperated string of Union surface definitions defined prior to this component, applied to +y top face of cylinder | 0 | +| bottom_surface | string | Comma seperated string of Union surface definitions defined prior to this component, applied to -y bottom face of cylinder | 0 | +| all_face_surface | string | Comma seperated string of Union surface definitions defined prior to this component, applied to all faces above | 0 | +| cut_surface | string | Comma seperated string of Union surface definitions defined prior to this component, applied to all internal cuts | 0 | +| init | string | Name of Union_init component (typically "init", default) | "init" | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/union/Union_cylinder.comp) for `Union_cylinder.comp`. + +--- + +*Generated on mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/union/Union_init.md b/mcstas-comps/union/Union_init.md new file mode 100644 index 000000000..fff85beba --- /dev/null +++ b/mcstas-comps/union/Union_init.md @@ -0,0 +1,46 @@ +# The `Union_init` Component + +*McStas: Initialize component that needs to be place before any Union component* + +## Identification + +- **Site:** +- **Author:** Mads Bertelsen +- **Origin:** ESS DMSC +- **Date:** 20.08.15 + +## Description + +```text +Part of the Union components, a set of components that work together and thus +sperates 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 this component +3) Geometries are placed using Union_box/cylinder/sphere, assigned a material +4) A Union_master component placed after all of the above + +Only in step 4 will any simulation happen, and per default all geometries +defined before the master, but after the previous will be simulated here. + +There is a dedicated manual available for the Union_components + +Algorithm: +Described elsewhere +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/union/Union_init.comp) for `Union_init.comp`. + +--- + +*Generated on mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/union/Union_logger_1D.md b/mcstas-comps/union/Union_logger_1D.md new file mode 100644 index 000000000..0415cba15 --- /dev/null +++ b/mcstas-comps/union/Union_logger_1D.md @@ -0,0 +1,72 @@ +# The `Union_logger_1D` Component + +*McStas: One dimensional Union logger for several possible variables* + +## Identification + +- **Site:** +- **Author:** Mads Bertelsen +- **Origin:** University of Copenhagen +- **Date:** 20.08.15 + +## Description + +```text +Part of the Union components, a set of components that work together and thus +sperates 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, assigned a material +4) A Union_master component placed after all of 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 + +This logger in particular is not finished. It is supposed to allow several +different variables to be histogrammed, but currently only time is supported + +A logger will log something for scattering events happening to certain volumes, +which are specified in the target_geometry string. By leaving it blank, all +geometries are logged, even the ones not defined at this point in the +instrument file. If a list og target_geometries is selected, one can further +narrow the events logged by providing a list of process names in target_process +which need to correspond with names of defined Union_process components. + +To use the logger_conditional_extend function, set it to some integer value n +and make and extend section to the master component that runs the geometry. +In this extend function, logger_conditional_extend[n] is 1 if the conditional +stack evaluated to true, 0 if not. This way one can check what rays is logged +using regular McStas monitors. Only works if a conditional is applied to this +logger. +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| target_geometry | string | Comma seperated list of geometry names that will be logged, leave empty for all volumes (even not defined yet) | "NULL" | +| target_process | string | Comma seperated names of physical processes, if volumes are selected, one can select Union_process names | "NULL" | +| **min_value** | 1 | Histogram boundery for logged value | | +| **max_value** | 1 | Histogram boundery for logged value | | +| n1 | 1 | Number of bins in histogram | 90 | +| variable | string | Time for time in seconds, q for magnitude of scattering vector in 1/AA. | "time" | +| filename | string | Filename of produced data file | "NULL" | +| order_total | 1 | Only log rays that scatter for the n'th time, 0 for all orders | 0 | +| order_volume | 1 | Only log rays that scatter for the n'th time in the same geometry | 0 | +| order_volume_process | 1 | Only log rays that scatter for the n'th time in the same geometry, using the same process | 0 | +| logger_conditional_extend_index | 1 | If a conditional is used with this logger, the result of each conditional calculation can be made available in extend as a array called "logger_conditional_extend", and one would then acces logger_conditional_extend[n] if logger_conditional_extend_index is set to n | -1 | +| init | string | Name of Union_init component (typically "init", default) | "init" | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/union/Union_logger_1D.comp) for `Union_logger_1D.comp`. + +--- + +*Generated on mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/union/Union_logger_2DQ.md b/mcstas-comps/union/Union_logger_2DQ.md new file mode 100644 index 000000000..41fbc4416 --- /dev/null +++ b/mcstas-comps/union/Union_logger_2DQ.md @@ -0,0 +1,75 @@ +# The `Union_logger_2DQ` Component + +*McStas: Two dimensional logger of scattering vector for Union components* + +## Identification + +- **Site:** +- **Author:** Mads Bertelsen +- **Origin:** University of Copenhagen +- **Date:** 20.08.15 + +## Description + +```text +Part of the Union components, a set of components that work together and thus +sperates 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, assigned a material +4) A Union_master component placed after all of 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 + +This logger logs a 2D projection of the scattering vector, q in the lab frame. + +A logger will log something for scattering events happening to certain volumes, +which are specified in the target_geometry string. By leaving it blank, all +geometries are logged, even the ones not defined at this point in the +instrument file. If a list og target_geometries is selected, one can further +narrow the events logged by providing a list of process names in target_process +which need to correspond with names of defined Union_process components. + +To use the logger_conditional_extend function, set it to some integer value n +and make and extend section to the master component that runs the geometry. +In this extend function, logger_conditional_extend[n] is 1 if the conditional +stack evaluated to true, 0 if not. This way one can check what rays is logged +using regular McStas monitors. Only works if a conditional is applied to this +logger. +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| target_geometry | string | Comma seperated list of geometry names that will be logged, leave empty for all volumes (even not defined yet) | "NULL" | +| target_process | string | Comma seperated names of physical processes, if volumes are selected, one can select Union_process names | "NULL" | +| Q_direction_1 | string | Q direction for first axis ("x", "y" or "z") | "x" | +| Q1_min | AA^-1 | Histogram boundery, min q value for first axis | -5 | +| Q1_max | AA^-1 | Histogram boundery, max q value for first axis | 5 | +| n1 | 1 | Number of bins for first axis | 90 | +| Q_direction_2 | string | Q direction for second axis ("x", "y" or "z") | "z" | +| Q2_min | AA^-1 | Histogram boundery, min q value for second axis | -5 | +| Q2_max | AA^-1 | Histogram boundery, max q value for second axis | 5 | +| n2 | 1 | Number of bins for second axis | 90 | +| filename | string | Filename of produced data file | "NULL" | +| order_total | 1 | Only log rays that scatter for the n'th time, 0 for all orders | 0 | +| order_volume | 1 | Only log rays that scatter for the n'th time in the same geometry | 0 | +| order_volume_process | 1 | Only log rays that scatter for the n'th time in the same geometry, uwsing the same process | 0 | +| logger_conditional_extend_index | 1 | If a conditional is used with this logger, the result of each conditional calculation can be made available in extend as a array called "logger_conditional_extend", and one would then acces logger_conditional_extend[n] if logger_conditional_extend_index is set to n | -1 | +| init | string | Name of Union_init component (typically "init", default) | "init" | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/union/Union_logger_2DQ.comp) for `Union_logger_2DQ.comp`. + +--- + +*Generated on mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/union/Union_logger_2D_kf.md b/mcstas-comps/union/Union_logger_2D_kf.md new file mode 100644 index 000000000..84c9f2669 --- /dev/null +++ b/mcstas-comps/union/Union_logger_2D_kf.md @@ -0,0 +1,76 @@ +# The `Union_logger_2D_kf` Component + +*McStas: Two dimensional logger of final wavevector for Union components* + +## Identification + +- **Site:** +- **Author:** Mads Bertelsen +- **Origin:** University of Copenhagen +- **Date:** 20.08.15 + +## Description + +```text +Part of the Union components, a set of components that work together and thus +sperates 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, assigned a material +4) A Union_master component placed after all of 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 + +This logger logs a 2D projection of the final wavevector after each scattering +in the lab frame. + +A logger will log something for scattering events happening to certain volumes, +which are specified in the target_geometry string. By leaving it blank, all +geometries are logged, even the ones not defined at this point in the +instrument file. If a list og target_geometries is selected, one can further +narrow the events logged by providing a list of process names in target_process +which need to correspond with names of defined Union_process components. + +To use the logger_conditional_extend function, set it to some integer value n +and make and extend section to the master component that runs the geometry. +In this extend function, logger_conditional_extend[n] is 1 if the conditional +stack evaluated to true, 0 if not. This way one can check what rays is logged +using regular McStas monitors. Only works if a conditional is applied to this +logger. +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| target_geometry | string | Comma seperated list of geometry names that will be logged, leave empty for all volumes (even not defined yet) | "NULL" | +| target_process | string | Comma seperated names of physical processes, if volumes are selected, one can select Union_process names | "NULL" | +| Q1_min | AA^-1 | Histogram boundery, min kf value for first axis | -5 | +| Q1_max | AA^-1 | Histogram boundery, max kf value for first axis | 5 | +| Q2_min | AA^-1 | Histogram boundery, min kf value for second axis | -5 | +| Q2_max | AA^-1 | Histogram boundery, max kf value for second axis | 5 | +| Q_direction_1 | string | kf direction for first axis ("x", "y" or "z") | "x" | +| Q_direction_2 | string | kf direction for second axis ("x", "y" or "z") | "z" | +| filename | string | Filename of produced data file | "NULL" | +| n1 | 1 | Number of bins for first axis | 90 | +| n2 | 1 | Number of bins for second axis | 90 | +| order_total | 1 | Only log rays that scatter for the n'th time, 0 for all orders | 0 | +| order_volume | 1 | Only log rays that scatter for the n'th time in the same geometry | 0 | +| order_volume_process | 1 | Only log rays that scatter for the n'th time in the same geometry, using the same process | 0 | +| logger_conditional_extend_index | 1 | If a conditional is used with this logger, the result of each conditional calculation can be made available in extend as a array called "logger_conditional_extend", and one would then acces logger_conditional_extend[n] if logger_conditional_extend_index is set to n | -1 | +| init | string | Name of Union_init component (typically "init", default) | "init" | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/union/Union_logger_2D_kf.comp) for `Union_logger_2D_kf.comp`. + +--- + +*Generated on mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/union/Union_logger_2D_kf_time.md b/mcstas-comps/union/Union_logger_2D_kf_time.md new file mode 100644 index 000000000..1d02f2414 --- /dev/null +++ b/mcstas-comps/union/Union_logger_2D_kf_time.md @@ -0,0 +1,80 @@ +# The `Union_logger_2D_kf_time` Component + +*McStas: Two dimensional logger of wavevector for a range of time bins* + +## Identification + +- **Site:** +- **Author:** Mads Bertelsen +- **Origin:** University of Copenhagen +- **Date:** 20.08.15 + +## Description + +```text +Part of the Union components, a set of components that work together and thus +sperates 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, assigned a material +4) A Union_master component placed after all of 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 + +This logger logs a 2D projection of the final wavevector after each scattering +in the lab frame. It will do so for a number of time_bins, making it possible +to make a animation, but beware of memory / diskspace requirements. + +A logger will log something for scattering events happening to certain volumes, +which are specified in the target_geometry string. By leaving it blank, all +geometries are logged, even the ones not defined at this point in the +instrument file. If a list og target_geometries is selected, one can further +narrow the events logged by providing a list of process names in target_process +which need to correspond with names of defined Union_process components. + +To use the logger_conditional_extend function, set it to some integer value n +and make and extend section to the master component that runs the geometry. +In this extend function, logger_conditional_extend[n] is 1 if the conditional +stack evaluated to true, 0 if not. This way one can check what rays is logged +using regular McStas monitors. Only works if a conditional is applied to this +logger. +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| target_geometry | string | Comma seperated list of geometry names that will be logged, leave empty for all volumes (even not defined yet) | "NULL" | +| target_process | string | Comma seperated names of physical processes, if volumes are selected, one can select Union_process names | "NULL" | +| Q1_min | A^-1 | Histogram boundery, min kf value for first axis | -5 | +| Q1_max | A^-1 | Histogram boundery, max kf value for first axis | 5 | +| Q2_min | A^-1 | Histogram boundery, min kf value for second axis | -5 | +| Q2_max | A^-1 | Histogram boundery, max kf value for second axis | 5 | +| time_min | s | Minimum time | 0 | +| time_max | s | Maximum time | 1 | +| Q_direction_1 | string | kf direction for first axis ("x", "y" or "z") | "x" | +| Q_direction_2 | string | kf direction for second axis ("x", "y" or "z") | "z" | +| filename | string | Filename of produced data file | "NULL" | +| n1 | 1 | Number of bins for first axis | 90 | +| n2 | 1 | Number of bins for second axis | 90 | +| time_bins | 1 | Number of time bins | 10 | +| order_total | 1 | Only log rays that scatter for the n'th time, 0 for all orders | 0 | +| order_volume | 1 | Only log rays that scatter for the n'th time in the same geometry | 0 | +| order_volume_process | 1 | Only log rays that scatter for the n'th time in the same geometry, using the same process | 0 | +| logger_conditional_extend_index | 1 | If a conditional is used with this logger, the result of each conditional calculation can be made available in extend as a array called "logger_conditional_extend", and one would then acces logger_conditional_extend[n] if logger_conditional_extend_index is set to n | -1 | +| init | string | Name of Union_init component (typically "init", default) | "init" | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/union/Union_logger_2D_kf_time.comp) for `Union_logger_2D_kf_time.comp`. + +--- + +*Generated on mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/union/Union_logger_2D_space.md b/mcstas-comps/union/Union_logger_2D_space.md new file mode 100644 index 000000000..e270f492b --- /dev/null +++ b/mcstas-comps/union/Union_logger_2D_space.md @@ -0,0 +1,77 @@ +# The `Union_logger_2D_space` Component + +*McStas: Two dimensional spatial logger for the Union components* + +## Identification + +- **Site:** +- **Author:** Mads Bertelsen +- **Origin:** University of Copenhagen +- **Date:** 20.08.15 + +## Description + +```text +Part of the Union components, a set of components that work together and thus +sperates 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, assigned a material +4) A Union_master component placed after all of 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 + +This logger logs a 2D projection of the position of each scattering in the lab frame. + +This logger needs to be placed in space, the position is the center of the histogram. + +A logger will log something for scattering events happening to certain volumes, +which are specified in the target_geometry string. By leaving it blank, all +geometries are logged, even the ones not defined at this point in the +instrument file. If a list og target_geometries is selected, one can further +narrow the events logged by providing a list of process names in target_process +which need to correspond with names of defined Union_process components. + +To use the logger_conditional_extend function, set it to some integer value n +and make and extend section to the master component that runs the geometry. +In this extend function, logger_conditional_extend[n] is 1 if the conditional +stack evaluated to true, 0 if not. This way one can check what rays is logged +using regular McStas monitors. Only works if a conditional is applied to this +logger. +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| target_geometry | string | Comma seperated list of geometry names that will be logged, leave empty for all volumes (even not defined yet) | "NULL" | +| target_process | string | Comma seperated names of physical processes, if volumes are selected, one can select Union_process names | "NULL" | +| D_direction_1 | string | Direction for first axis ("x", "y" or "z") | "x" | +| D1_min | m | Histogram boundery, min position value for first axis | -5 | +| D1_max | m | Histogram boundery, max position value for first axis | 5 | +| n1 | 1 | Number of bins for first axis | 90 | +| D_direction_2 | string | Direction for second axis ("x", "y" or "z") | "z" | +| D2_min | m | Histogram boundery, min position value for second axis | -5 | +| D2_max | m | Histogram boundery, max position value for second axis | 5 | +| n2 | 1 | Number of bins for second axis | 90 | +| filename | string | Filename of produced data file | "NULL" | +| order_total | 1 | Only log rays that scatter for the n'th time, 0 for all orders | 0 | +| order_volume | 1 | Only log rays that scatter for the n'th time in the same geometry | 0 | +| order_volume_process | 1 | Only log rays that scatter for the n'th time in the same geometry, using the same process | 0 | +| logger_conditional_extend_index | 1 | If a conditional is used with this logger, the result of each conditional calculation can be made available in extend as a array called "logger_conditional_extend", and one would then acces logger_conditional_extend[n] if logger_conditional_extend_index is set to n | -1 | +| init | string | Name of Union_init component (typically "init", default) | "init" | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/union/Union_logger_2D_space.comp) for `Union_logger_2D_space.comp`. + +--- + +*Generated on mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/union/Union_logger_2D_space_time.md b/mcstas-comps/union/Union_logger_2D_space_time.md new file mode 100644 index 000000000..3472f9d6b --- /dev/null +++ b/mcstas-comps/union/Union_logger_2D_space_time.md @@ -0,0 +1,80 @@ +# The `Union_logger_2D_space_time` Component + +*McStas: Two dimensional spatail logger for a number of time bins* + +## Identification + +- **Site:** +- **Author:** Mads Bertelsen +- **Origin:** University of Copenhagen +- **Date:** 20.08.15 + +## Description + +```text +Part of the Union components, a set of components that work together and thus +sperates 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, assigned a material +4) A Union_master component placed after all of 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 + +This logger logs a 2D projection of the position of each scattering in the lab +frame. Using the time_bins one can select to get this project for different +time slots, effectively making a small animation of what happens. + +A logger will log something for scattering events happening to certain volumes, +which are specified in the target_geometry string. By leaving it blank, all +geometries are logged, even the ones not defined at this point in the +instrument file. If a list og target_geometries is selected, one can further +narrow the events logged by providing a list of process names in target_process +which need to correspond with names of defined Union_process components. + +To use the logger_conditional_extend function, set it to some integer value n +and make and extend section to the master component that runs the geometry. +In this extend function, logger_conditional_extend[n] is 1 if the conditional +stack evaluated to true, 0 if not. This way one can check what rays is logged +using regular McStas monitors. Only works if a conditional is applied to this +logger. +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| target_geometry | string | Comma seperated list of geometry names that will be logged, leave empty for all volumes (even not defined yet) | "NULL" | +| target_process | string | Comma seperated names of physical processes, if volumes are selected, one can select Union_process names | "NULL" | +| D1_min | m | Histogram boundery, min position value for first axis | -5 | +| D1_max | m | Histogram boundery, max position value for first axis | 5 | +| D2_min | m | Histogram boundery, min position value for second axis | -5 | +| D2_max | m | Histogram boundery, max position value for second axis | 5 | +| time_min | s | Minimum time | 0 | +| time_max | s | Maximum time | 1 | +| D_direction_1 | string | Direction for first axis ("x", "y" or "z") | "x" | +| D_direction_2 | string | Direction for second axis ("x", "y" or "z") | "z" | +| filename | string | Filename of produced data file | "NULL" | +| n1 | 1 | Number of bins for first axis | 90 | +| n2 | 1 | Number of bins for second axis | 90 | +| time_bins | 1 | Number of time bins | 10 | +| order_total | 1 | Only log rays that scatter for the n'th time, 0 for all orders | 0 | +| order_volume | 1 | Only log rays that scatter for the n'th time in the same geometry | 0 | +| order_volume_process | 1 | Only log rays that scatter for the n'th time in the same geometry, using the same process | 0 | +| logger_conditional_extend_index | 1 | If a conditional is used with this logger, the result of each conditional calculation can be made available in extend as a array called "logger_conditional_extend", and one would then acces logger_conditional_extend[n] if logger_conditional_extend_index is set to n | -1 | +| init | string | Name of Union_init component (typically "init", default) | "init" | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/union/Union_logger_2D_space_time.comp) for `Union_logger_2D_space_time.comp`. + +--- + +*Generated on mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/union/Union_logger_3D_space.md b/mcstas-comps/union/Union_logger_3D_space.md new file mode 100644 index 000000000..269788ad7 --- /dev/null +++ b/mcstas-comps/union/Union_logger_3D_space.md @@ -0,0 +1,81 @@ +# The `Union_logger_3D_space` Component + +*McStas: Three dimensional logger for spatial dimensions* + +## Identification + +- **Site:** +- **Author:** Mads Bertelsen +- **Origin:** University of Copenhagen +- **Date:** 20.08.15 + +## Description + +```text +Part of the Union components, a set of components that work together and thus +sperates 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, assigned a material +4) A Union_master component placed after all of 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 + +This logger logs a 2D projection of the position of each scattering in the lab +frame. It does this in n3 space slices, so one can get a full 3D histogram of +scattering positions. + +A logger will log something for scattering events happening to certain volumes, +which are specified in the target_geometry string. By leaving it blank, all +geometries are logged, even the ones not defined at this point in the +instrument file. If a list og target_geometries is selected, one can further +narrow the events logged by providing a list of process names in target_process +which need to correspond with names of defined Union_process components. + +To use the logger_conditional_extend function, set it to some integer value n +and make and extend section to the master component that runs the geometry. +In this extend function, logger_conditional_extend[n] is 1 if the conditional +stack evaluated to true, 0 if not. This way one can check what rays is logged +using regular McStas monitors. Only works if a conditional is applied to this +logger. +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| target_geometry | string | Comma seperated list of geometry names that will be logged, leave empty for all volumes (even not defined yet) | "NULL" | +| target_process | string | Comma seperated names of physical processes, if volumes are selected, one can select Union_process names | "NULL" | +| D1_min | m | histogram boundery, min position value for first axis | -1 | +| D1_max | m | histogram boundery, max position value for first axis | 1 | +| D2_min | m | histogram boundery, min position value for second axis | -1 | +| D2_max | m | histogram boundery, max position value for second axis | 1 | +| D3_min | m | histogram boundery, min position value for third axis | -1 | +| D3_max | m | histogram boundery, max position value for third axis | 1 | +| D_direction_1 | string | Direction for first axis ("x", "y" or "z") | "x" | +| D_direction_2 | string | Direction for second axis ("x", "y" or "z") | "z" | +| D_direction_3 | string | Direction for second axis ("x", "y" or "z") | "z" | +| filename | string | Filename of produced data file | "NULL" | +| n1 | 1 | number of bins for first axis | 90 | +| n2 | 1 | number of bins for second axis | 90 | +| n3 | 1 | number of bins for third axis | 10 | +| order_total | 1 | Only log rays that scatter for the n'th time, 0 for all orders | 0 | +| order_volume | 1 | Only log rays that scatter for the n'th time in the same geometry | 0 | +| order_volume_process | 1 | Only log rays that scatter for the n'th time in the same geometry, using the same process | 0 | +| logger_conditional_extend_index | 1 | If a conditional is used with this logger, the result of each conditional calculation can be made available in extend as a array called "logger_conditional_extend", and one would then acces logger_conditional_extend[n] if logger_conditional_extend_index is set to n | -1 | +| init | string | name of Union_init component (typically "init", default) | "init" | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/union/Union_logger_3D_space.comp) for `Union_logger_3D_space.comp`. + +--- + +*Generated on mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/union/Union_make_material.md b/mcstas-comps/union/Union_make_material.md new file mode 100644 index 000000000..94d3d998e --- /dev/null +++ b/mcstas-comps/union/Union_make_material.md @@ -0,0 +1,54 @@ +# The `Union_make_material` Component + +*McStas: Component that takes a number of Union processes and constructs a Union material* + +## Identification + +- **Site:** +- **Author:** Mads Bertelsen +- **Origin:** University of Copenhagen +- **Date:** 20.08.15 + +## Description + +```text +Part of the Union components, a set of components that work together and thus +sperates 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 this component +3) Geometries are placed using Union_box/cylinder/sphere, assigned a material +4) A Union_master component placed after all of the above + +Only in step 4 will any simulation happen, and per default all geometries +defined before the master, but after the previous will be simulated here. + +There is a dedicated manual available for the Union_components + +Algorithm: +Described elsewhere +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| process_string | string | Comma seperated names of physical processes | "NULL" | +| **my_absorption** | 1/m | Inverse penetration depth from absorption at standard energy | | +| absorber | 0/1 | Control parameter, if set to 1 the material will have no scattering processes | 0 | +| refraction_density | g/cm3 | Density of the refracting material. density < 0 means the material is outside/before the shape. | 0 | +| refraction_sigma_coh | barn | Coherent cross section of refracting material. Use negative value to indicate a negative coherent scattering length | 0 | +| refraction_weight | g/mol | Molar mass of the refracting material | 0 | +| refraction_SLD | AA^-2 | Scattering length density of material (overwrites sigma_coh, density and weight) | -1500 | +| init | string | Name of Union_init component (typically "init", default) | "init" | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/union/Union_make_material.comp) for `Union_make_material.comp`. + +--- + +*Generated on mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/union/Union_master.md b/mcstas-comps/union/Union_master.md new file mode 100644 index 000000000..ed832ea46 --- /dev/null +++ b/mcstas-comps/union/Union_master.md @@ -0,0 +1,58 @@ +# The `Union_master` Component + +*McStas: Master component for Union components that performs the overall simulation* + +## Identification + +- **Site:** +- **Author:** Mads Bertelsen +- **Origin:** University of Copenhagen +- **Date:** 20.08.15 + +## Description + +```text +Part of the Union components, a set of components that work together and thus +sperates 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, assigned a material +4) This master component placed after all of 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 + +Algorithm: +Described elsewhere +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| enable_refraction | 0/1 | Toggles refraction effects, simulated for all materials that have refraction parameters set | 1 | +| enable_reflection | 0/1 | Toggles reflection effects, simulated for all materials that have refraction parameters set | 1 | +| verbal | 0/1 | Toogles printing information loaded during initialize | 0 | +| list_verbal | 0/1 | Toogles information of all internal lists in intersection network | 0 | +| finally_verbal | 0/1 | Toogles information about cleanup performed in finally section | 0 | +| allow_inside_start | 0/1 | Set to 1 if rays are expected to start inside a volume in this master | 0 | +| enable_tagging | 0/1 | Enable tagging of ray history (geometry, scattering process) | 0 | +| history_limit | 1 | Limit the number of unique histories that are saved | 300000 | +| enable_conditionals | 0/1 | Use conditionals with this master | 1 | +| inherit_number_of_scattering_events | 0/1 | Inherit the number of scattering events from last master | 0 | +| weight_ratio_limit | 1 | Limit on the ratio between initial weight and current, ray absorbed if ratio becomes lower than limit | 1e-90 | +| init | string | Name of Union_init component (typically "init", default) | "init" | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/union/Union_master.comp) for `Union_master.comp`. + +--- + +*Generated on mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/union/Union_master_GPU.md b/mcstas-comps/union/Union_master_GPU.md new file mode 100644 index 000000000..63c9096d1 --- /dev/null +++ b/mcstas-comps/union/Union_master_GPU.md @@ -0,0 +1,55 @@ +# The `Union_master_GPU` Component + +*McStas: Master component for Union components that performs the overall simulation* + +## Identification + +- **Site:** +- **Author:** Mads Bertelsen +- **Origin:** University of Copenhagen +- **Date:** 20.08.15 + +## Description + +```text +Part of the Union components, a set of components that work together and thus +sperates 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, assigned a material +4) This master component placed after all of 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 + +Algorithm: +Described elsewhere +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| verbal | 0/1 | Toogles terminal output describing the defined simulation | 1 | +| list_verbal | 0/1 | Toogles information of all internal lists in intersection network | 0 | +| finally_verbal | 0/1 | Toogles information about cleanup performed in finally section | 0 | +| allow_inside_start | 0/1 | Set to 1 if rays are expected to start inside a volume in this master | 0 | +| enable_tagging | 0/1 | Enable tagging of ray history (geometry, scattering process) | 0 | +| history_limit | 1 | Limit the number of unique histories that are saved | 300000 | +| enable_conditionals | 0/1 | Use conditionals with this master | 1 | +| inherit_number_of_scattering_events | 0/1 | Inherit the number of scattering events from last master | 0 | +| init | | | "init" | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/union/Union_master_GPU.comp) for `Union_master_GPU.comp`. + +--- + +*Generated on mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/union/Union_mesh.md b/mcstas-comps/union/Union_mesh.md new file mode 100644 index 000000000..682a970f4 --- /dev/null +++ b/mcstas-comps/union/Union_mesh.md @@ -0,0 +1,79 @@ +# The `Union_mesh` Component + +*McStas: Component for including 3D mesh in Union geometry* + +## Identification + +- **Site:** +- **Author:** Martin Olsen, and expanded upon by Daniel Lomholt Christensen +- **Origin:** University of Copenhagen / ACTNXT project +- **Date:** 17.09.18 + +## Description + +```text +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 or stl files as the geometry. +The mesh geometry that is loaded must be a watertight mesh. +In order to check this, the component implements a simple Euler Pointcare value, +To check if the given geometry is watertight. This check is sometimes too rigid, +so a user can set the skip_convex_check parameter in order to not have this +check performed. + + +If you load an off file, we currently only support rank 3 polygons, i.e +triangular meshes. + +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. Can be either .OFF, .off, .STL, or .stl | 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 | | | 0 | +| cut_surface | | | 0 | +| target_index | 1 | Focuses on component a component this many steps further in the component sequence | 0 | +| target_x | m | | 0 | +| target_y | m | Position of target to focus at | 0 | +| target_z | m | | 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 | +| skip_convex_check | 1 | when set to 1, skips the check for whether input .off file is convex. | 0 | +| 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 | name of Union_init component (typically "init", default) | "init" | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/union/Union_mesh.comp) for `Union_mesh.comp`. + +--- + +*Generated on mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/union/Union_sphere.md b/mcstas-comps/union/Union_sphere.md new file mode 100644 index 000000000..324c87cc9 --- /dev/null +++ b/mcstas-comps/union/Union_sphere.md @@ -0,0 +1,68 @@ +# The `Union_sphere` Component + +*McStas: Sphere geometry component for the Union components* + +## Identification + +- **Site:** +- **Author:** Mads Bertelsen +- **Origin:** University of Copenhagen +- **Date:** 20.08.15 + +## Description + +```text +Part of the Union components, a set of components that work together and thus +sperates 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, assigned a material +4) A Union_master component placed after all of 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 position of this component is the center of the sphere + +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 | +|------|------|-------------|---------| +| 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. | | +| **radius** | m | Radius of sphere | | +| visualize | 1 | set to 0 if you wish to hide this geometry in mcdisplay | 1 | +| target_index | 1 | Focuses on component a component this many steps further in the component sequence | 0 | +| target_x | m | X position of target to focus at | 0 | +| target_y | m | Y position of target to focus at | 0 | +| target_z | m | Z 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 | +| surface | 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 | +| init | string | name of Union_init component (typically "init", default) | "init" | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/union/Union_sphere.comp) for `Union_sphere.comp`. + +--- + +*Generated on mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/union/Union_stop.md b/mcstas-comps/union/Union_stop.md new file mode 100644 index 000000000..945884cf9 --- /dev/null +++ b/mcstas-comps/union/Union_stop.md @@ -0,0 +1,46 @@ +# The `Union_stop` Component + +*McStas: Stop component that must be placed after all Union components for instrument to compile correctly* + +## Identification + +- **Site:** +- **Author:** Mads Bertelsen +- **Origin:** University of Copenhagen +- **Date:** 20.08.15 + +## Description + +```text +Part of the Union components, a set of components that work together and thus +sperates 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 this component +3) Geometries are placed using Union_box/cylinder/sphere, assigned a material +4) A Union_master component placed after all of the above + +Only in step 4 will any simulation happen, and per default all geometries +defined before the master, but after the previous will be simulated here. + +There is a dedicated manual available for the Union_components + +Algorithm: +Described elsewhere +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/union/Union_stop.comp) for `Union_stop.comp`. + +--- + +*Generated on mcstas 3.99.99.* \ No newline at end of file From 7ccb61a1398197d6cc20f82389cd74be6da5860c Mon Sep 17 00:00:00 2001 From: Peter Willendrup Date: Thu, 16 Apr 2026 21:23:43 +0200 Subject: [PATCH 04/43] Add McXtrace .md docs --- mcxtrace-comps/astrox/MM_c.md | 58 +++++ mcxtrace-comps/astrox/MM_h.md | 59 +++++ mcxtrace-comps/astrox/MM_p.md | 61 +++++ mcxtrace-comps/astrox/Pore_c.md | 53 +++++ mcxtrace-comps/astrox/Pore_h.md | 53 +++++ mcxtrace-comps/astrox/Pore_p.md | 51 +++++ mcxtrace-comps/astrox/Ring_c.md | 53 +++++ mcxtrace-comps/astrox/Ring_h.md | 53 +++++ mcxtrace-comps/astrox/Ring_p.md | 53 +++++ mcxtrace-comps/astrox/Shell_c.md | 53 +++++ mcxtrace-comps/astrox/Shell_h.md | 84 +++++++ mcxtrace-comps/astrox/Shell_p.md | 84 +++++++ mcxtrace-comps/astrox/Source_extended.md | 57 +++++ mcxtrace-comps/contrib/Attenuating_mask.md | 44 ++++ mcxtrace-comps/contrib/Bragg_crystal_BC.md | 79 +++++++ .../contrib/Bragg_crystal_bent_BC.md | 88 +++++++ .../contrib/Bragg_crystal_simple.md | 45 ++++ mcxtrace-comps/contrib/Detector_pn.md | 45 ++++ mcxtrace-comps/contrib/Laue_crystal_BC.md | 76 ++++++ .../contrib/Mirror_toroid_pothole.md | 45 ++++ mcxtrace-comps/contrib/PSD_monitor_rad.md | 40 ++++ mcxtrace-comps/contrib/SAXSCurve.md | 44 ++++ mcxtrace-comps/contrib/SAXSCylinders.md | 44 ++++ .../contrib/SAXSEllipticCylinders.md | 46 ++++ mcxtrace-comps/contrib/SAXSLiposomes.md | 51 +++++ mcxtrace-comps/contrib/SAXSNanodiscs.md | 54 +++++ mcxtrace-comps/contrib/SAXSNanodiscsFast.md | 60 +++++ .../contrib/SAXSNanodiscsWithTags.md | 59 +++++ .../contrib/SAXSNanodiscsWithTagsFast.md | 64 ++++++ mcxtrace-comps/contrib/SAXSPDB.md | 49 ++++ mcxtrace-comps/contrib/SAXSPDBFast.md | 52 +++++ mcxtrace-comps/contrib/SAXSQMonitor.md | 48 ++++ mcxtrace-comps/contrib/SAXSShells.md | 46 ++++ mcxtrace-comps/contrib/SAXSSpheres.md | 43 ++++ .../AstroX_ESA/ATHENA_1mm/ATHENA_1mm.md | 85 +++++++ .../AstroX_ESA/ATHENA_1pore/ATHENA_1pore.md | 85 +++++++ .../AstroX_ESA/ATHENA_1ring/ATHENA_1ring.md | 58 +++++ .../ATHENA_1sh_W1_OA/ATHENA_1sh_W1_OA.md | 58 +++++ .../ATHENA_1sh_both/ATHENA_1sh_both.md | 59 +++++ .../ATHENA_1sh_conical/ATHENA_1sh_conical.md | 57 +++++ .../AstroX_ESA/ATHENA_1shell/ATHENA_1shell.md | 60 +++++ .../ATHENA_cfgA_1mm/ATHENA_cfgA_1mm.md | 77 +++++++ .../ATHENA_cfgA_1mm_FEMd.md | 80 +++++++ .../NuSTAR_1shell_con/NuSTAR_1shell_con.md | 62 +++++ .../AstroX_ESA/Simple_1shell/Simple_1shell.md | 40 ++++ .../AstroX_ESA/Test_shells/Test_shells.md | 40 ++++ .../examples/AstroX_NASA/CXO/CXO.md | 39 ++++ .../NuSTAR_1shell/NuSTAR_1shell.md | 59 +++++ .../BARC/Czerny_Turner/Czerny_Turner.md | 38 +++ .../Airport_scannerII/Airport_scannerII.md | 40 ++++ .../examples/DTU/Pump_probe/Pump_probe.md | 37 +++ .../Pump_probe_solvent/Pump_probe_solvent.md | 59 +++++ .../examples/ESRF/ESRF_BM29/ESRF_BM29.md | 43 ++++ .../examples/ESRF/ESRF_ID01/ESRF_ID01.md | 50 ++++ .../examples/ESRF/ESRF_ID11/ESRF_ID11.md | 39 ++++ .../examples/MAXII/MAXII_711/MAXII_711.md | 40 ++++ .../examples/MAXII/MAXII_811/MAXII_811.md | 56 +++++ .../examples/MAXIV/MAXIV_Bloch/MAXIV_Bloch.md | 67 ++++++ .../MAXIV_DanMAX_pxrd1d.md | 58 +++++ .../MAXIV_DanMAX_pxrd2d.md | 59 +++++ .../MAXIV/MAXIV_FemtoMAX/MAXIV_FemtoMAX.md | 41 ++++ .../examples/NBI/NBI_Lab_TOMO/NBI_Lab_TOMO.md | 41 ++++ .../NECSA_Brucker_D8_Advance.md | 47 ++++ .../NECSA_MIXRAD_Nikon_Tomo.md | 50 ++++ .../DBD_IBM_Si_analyzer_BC.md | 56 +++++ mcxtrace-comps/examples/NIST/PBD_BT/PBD_BT.md | 65 ++++++ .../examples/NSLS2/NSLS2_CHX/NSLS2_CHX.md | 40 ++++ .../examples/SAXSLAB/JJ_SAXS/JJ_SAXS.md | 40 ++++ .../SAXSLAB/SAXS_saxlab/SAXS_saxlab.md | 59 +++++ .../SOLEIL/SOLEIL_ANATOMIX/SOLEIL_ANATOMIX.md | 81 +++++++ .../SOLEIL_CASSIOPEE/SOLEIL_CASSIOPEE.md | 59 +++++ .../SOLEIL/SOLEIL_DIFFABS/SOLEIL_DIFFABS.md | 65 ++++++ .../SOLEIL/SOLEIL_DISCO/SOLEIL_DISCO.md | 40 ++++ .../SOLEIL/SOLEIL_LUCIA/SOLEIL_LUCIA.md | 46 ++++ .../SOLEIL/SOLEIL_MARS/SOLEIL_MARS.md | 48 ++++ .../SOLEIL/SOLEIL_PSICHE/SOLEIL_PSICHE.md | 49 ++++ .../SOLEIL/SOLEIL_PX2a/SOLEIL_PX2a.md | 56 +++++ .../SOLEIL/SOLEIL_ROCK/SOLEIL_ROCK.md | 74 ++++++ .../SOLEIL/SOLEIL_SIXS/SOLEIL_SIXS.md | 74 ++++++ .../SOLEIL/SOLEIL_SWING/SOLEIL_SWING.md | 60 +++++ .../SSRL_bl_11_2_not_white_src.md | 44 ++++ .../SSRL_bl_11_2_white_src.md | 44 ++++ .../Focal_pt_monitor/Focal_pt_monitor.md | 43 ++++ .../Template_1Slit_Diff.md | 34 +++ .../Template_2Slit_Diff.md | 35 +++ .../Template_Johann_spec.md | 44 ++++ .../examples/Templates/template/template.md | 42 ++++ .../template_simple/template_simple.md | 35 +++ .../Tests/Be_BM_beamline/Be_BM_beamline.md | 39 ++++ .../Test_Detector_pn/Test_Detector_pn.md | 40 ++++ .../Tests/Test_monitors/Test_monitors.md | 32 +++ .../Test_MCPL_input/Test_MCPL_input.md | 36 +++ .../Test_MCPL_output/Test_MCPL_output.md | 32 +++ .../Test_RNG_rand01/Test_RNG_rand01.md | 40 ++++ .../Test_RNG_randnorm/Test_RNG_randnorm.md | 40 ++++ .../Test_RNG_randpm1/Test_RNG_randpm1.md | 40 ++++ .../Test_RNG_randtriangle.md | 40 ++++ .../Test_RNG_randvec_target_circle.md | 41 ++++ .../Test_RNG_randvec_target_rect.md | 41 ++++ .../Test_RNG_randvec_target_rect_angular.md | 41 ++++ .../Tests_grammar/Test_GROUP/Test_GROUP.md | 33 +++ .../Tests_optics/Template_DCM/Template_DCM.md | 38 +++ .../Tests_optics/Test_CRL/Test_CRL.md | 38 +++ .../Tests_optics/Test_CRL_Be/Test_CRL_Be.md | 33 +++ .../Tests_optics/Test_Filter/Test_Filter.md | 36 +++ .../examples/Tests_optics/Test_KB/Test_KB.md | 39 ++++ .../Test_ML_elliptic/Test_ML_elliptic.md | 38 +++ .../Tests_optics/Test_Mask/Test_Mask.md | 33 +++ .../Test_Mirror_toroid/Test_Mirror_toroid.md | 33 +++ .../Tests_optics/Test_Mirrors/Test_Mirrors.md | 44 ++++ .../Tests_optics/Test_Mono/Test_Mono.md | 47 ++++ .../Test_capillary/Test_capillary.md | 35 +++ .../Test_grating_reflect.md | 37 +++ .../Test_grating_trans/Test_grating_trans.md | 40 ++++ .../Test_mirror_elliptic.md | 35 +++ .../Test_mirror_parabolic.md | 35 +++ .../Tests_other/test_File/test_File.md | 33 +++ .../Template_SasView/Template_SasView.md | 48 ++++ .../Test_Absorption/Test_Absorption.md | 42 ++++ .../Tests_samples/Test_Air/Test_Air.md | 38 +++ .../Test_FluoPowder/Test_FluoPowder.md | 44 ++++ .../Test_Fluorescence/Test_Fluorescence.md | 35 +++ .../Test_PowderN/Test_PowderN.md | 43 ++++ .../Tests_samples/Test_SAXS/Test_SAXS.md | 54 +++++ .../examples/Tests_samples/Test_SX/Test_SX.md | 42 ++++ .../Test_Saxs_spheres/Test_Saxs_spheres.md | 35 +++ .../Tests_samples/Test_Sqw/Test_Sqw.md | 35 +++ .../examples/Tests_sources/Test_BM/Test_BM.md | 34 +++ .../Test_Source_quasi/Test_Source_quasi.md | 32 +++ .../Test_Sources/Test_Sources.md | 42 ++++ .../Test_source_lab/Test_source_lab.md | 35 +++ .../Test_source_spectra.md | 38 +++ .../Test_undulator/Test_undulator.md | 34 +++ .../examples/XFEL/XFEL_SPB/XFEL_SPB.md | 42 ++++ mcxtrace-comps/misc/Air.md | 74 ++++++ mcxtrace-comps/misc/File.md | 36 +++ mcxtrace-comps/misc/Focus.md | 42 ++++ mcxtrace-comps/misc/MCPL_input.md | 49 ++++ mcxtrace-comps/misc/MCPL_output.md | 58 +++++ mcxtrace-comps/misc/Progress_bar.md | 44 ++++ mcxtrace-comps/misc/Shadow_input.md | 40 ++++ mcxtrace-comps/misc/Shadow_output.md | 45 ++++ mcxtrace-comps/misc/Shape.md | 62 +++++ mcxtrace-comps/monitors/DivE_monitor.md | 49 ++++ mcxtrace-comps/monitors/DivPos_monitor.md | 49 ++++ mcxtrace-comps/monitors/Divergence_monitor.md | 49 ++++ mcxtrace-comps/monitors/EPSD_monitor.md | 46 ++++ mcxtrace-comps/monitors/E_monitor.md | 43 ++++ .../monitors/Event_monitor_simple.md | 34 +++ mcxtrace-comps/monitors/Flex_monitor_1D.md | 42 ++++ mcxtrace-comps/monitors/Flex_monitor_2D.md | 47 ++++ mcxtrace-comps/monitors/Flex_monitor_3D.md | 53 +++++ mcxtrace-comps/monitors/Fluo_detector.md | 71 ++++++ mcxtrace-comps/monitors/L_monitor.md | 44 ++++ mcxtrace-comps/monitors/Monitor.md | 38 +++ mcxtrace-comps/monitors/Monitor_nD.md | 201 ++++++++++++++++ mcxtrace-comps/monitors/PSD_monitor.md | 46 ++++ mcxtrace-comps/monitors/PSD_monitor_4PI.md | 43 ++++ mcxtrace-comps/monitors/PSD_monitor_coh.md | 51 +++++ mcxtrace-comps/monitors/TOF_monitor.md | 42 ++++ mcxtrace-comps/monitors/W_psd_monitor.md | 44 ++++ mcxtrace-comps/obsolete/Lens_Kinoform.md | 44 ++++ .../obsolete/Lens_parab_Cyl_rough.md | 41 ++++ mcxtrace-comps/obsolete/Lens_parab_rough.md | 42 ++++ mcxtrace-comps/obsolete/Perfect_crystal.md | 52 +++++ mcxtrace-comps/optics/Arm.md | 34 +++ mcxtrace-comps/optics/Beamstop.md | 44 ++++ mcxtrace-comps/optics/Bragg_crystal.md | 79 +++++++ mcxtrace-comps/optics/Bragg_crystal_bent.md | 80 +++++++ mcxtrace-comps/optics/Capillary.md | 52 +++++ mcxtrace-comps/optics/Chopper_simple.md | 49 ++++ mcxtrace-comps/optics/Collimator_linear.md | 46 ++++ mcxtrace-comps/optics/Diaphragm.md | 39 ++++ mcxtrace-comps/optics/Filter.md | 58 +++++ mcxtrace-comps/optics/Grating_reflect.md | 51 +++++ mcxtrace-comps/optics/Grating_trans.md | 49 ++++ mcxtrace-comps/optics/Lens_CRL_RTM.md | 44 ++++ mcxtrace-comps/optics/Lens_elliptical.md | 40 ++++ mcxtrace-comps/optics/Lens_parab.md | 40 ++++ mcxtrace-comps/optics/Lens_parab_Cyl.md | 48 ++++ mcxtrace-comps/optics/Lens_simple.md | 48 ++++ mcxtrace-comps/optics/Mask.md | 61 +++++ mcxtrace-comps/optics/Mirror.md | 45 ++++ mcxtrace-comps/optics/Mirror_curved.md | 40 ++++ mcxtrace-comps/optics/Mirror_elliptic.md | 50 ++++ mcxtrace-comps/optics/Mirror_parabolic.md | 46 ++++ mcxtrace-comps/optics/Mirror_toroid.md | 45 ++++ mcxtrace-comps/optics/Multilayer_elliptic.md | 62 +++++ mcxtrace-comps/optics/Place.md | 34 +++ mcxtrace-comps/optics/Slit.md | 52 +++++ mcxtrace-comps/optics/Slit_N.md | 47 ++++ mcxtrace-comps/optics/TwinKB_ML.md | 51 +++++ mcxtrace-comps/optics/ZonePlate.md | 54 +++++ mcxtrace-comps/samples/Abs_objects.md | 50 ++++ mcxtrace-comps/samples/Absorption_sample.md | 63 +++++ mcxtrace-comps/samples/FluoCrystal.md | 164 +++++++++++++ mcxtrace-comps/samples/FluoPowder.md | 151 ++++++++++++ mcxtrace-comps/samples/Fluorescence.md | 139 +++++++++++ mcxtrace-comps/samples/Isotropic_Sqw.md | 207 +++++++++++++++++ mcxtrace-comps/samples/Molecule_2state.md | 65 ++++++ mcxtrace-comps/samples/Polycrystal.md | 69 ++++++ mcxtrace-comps/samples/PowderN.md | 170 ++++++++++++++ mcxtrace-comps/samples/Saxs_spheres.md | 56 +++++ mcxtrace-comps/samples/Single_crystal.md | 216 ++++++++++++++++++ .../sasmodels/SasView_adsorbed_layer.md | 61 +++++ mcxtrace-comps/sasmodels/SasView_barbell.md | 61 +++++ .../sasmodels/SasView_barbell_aniso.md | 65 ++++++ .../sasmodels/SasView_bcc_paracrystal.md | 59 +++++ .../SasView_bcc_paracrystal_aniso.md | 65 ++++++ .../sasmodels/SasView_binary_hard_sphere.md | 62 +++++ .../sasmodels/SasView_broad_peak.md | 61 +++++ .../sasmodels/SasView_capped_cylinder.md | 61 +++++ .../SasView_capped_cylinder_aniso.md | 65 ++++++ .../sasmodels/SasView_core_multi_shell.md | 38 +++ .../sasmodels/SasView_core_shell_bicelle.md | 65 ++++++ .../SasView_core_shell_bicelle_aniso.md | 69 ++++++ .../SasView_core_shell_bicelle_elliptical.md | 66 ++++++ ...iew_core_shell_bicelle_elliptical_aniso.md | 72 ++++++ ...ore_shell_bicelle_elliptical_belt_rough.md | 67 ++++++ ...ell_bicelle_elliptical_belt_rough_aniso.md | 73 ++++++ .../sasmodels/SasView_core_shell_cylinder.md | 62 +++++ .../SasView_core_shell_cylinder_aniso.md | 66 ++++++ .../sasmodels/SasView_core_shell_ellipsoid.md | 62 +++++ .../SasView_core_shell_ellipsoid_aniso.md | 66 ++++++ .../SasView_core_shell_parallelepiped.md | 70 ++++++ ...SasView_core_shell_parallelepiped_aniso.md | 76 ++++++ .../sasmodels/SasView_core_shell_sphere.md | 60 +++++ .../sasmodels/SasView_correlation_length.md | 59 +++++ mcxtrace-comps/sasmodels/SasView_cylinder.md | 59 +++++ .../sasmodels/SasView_cylinder_aniso.md | 63 +++++ mcxtrace-comps/sasmodels/SasView_dab.md | 55 +++++ mcxtrace-comps/sasmodels/SasView_ellipsoid.md | 59 +++++ .../sasmodels/SasView_ellipsoid_aniso.md | 63 +++++ .../sasmodels/SasView_elliptical_cylinder.md | 60 +++++ .../SasView_elliptical_cylinder_aniso.md | 66 ++++++ .../sasmodels/SasView_fcc_paracrystal.md | 59 +++++ .../SasView_fcc_paracrystal_aniso.md | 65 ++++++ .../sasmodels/SasView_flexible_cylinder.md | 61 +++++ .../SasView_flexible_cylinder_elliptical.md | 62 +++++ mcxtrace-comps/sasmodels/SasView_fractal.md | 61 +++++ .../sasmodels/SasView_fractal_core_shell.md | 64 ++++++ .../sasmodels/SasView_fuzzy_sphere.md | 58 +++++ .../sasmodels/SasView_gauss_lorentz_gel.md | 59 +++++ .../sasmodels/SasView_gaussian_peak.md | 55 +++++ mcxtrace-comps/sasmodels/SasView_gel_fit.md | 60 +++++ mcxtrace-comps/sasmodels/SasView_guinier.md | 55 +++++ .../sasmodels/SasView_guinier_porod.md | 57 +++++ .../sasmodels/SasView_hardsphere.md | 56 +++++ .../sasmodels/SasView_hayter_msa.md | 61 +++++ .../sasmodels/SasView_hollow_cylinder.md | 61 +++++ .../SasView_hollow_cylinder_aniso.md | 65 ++++++ .../SasView_hollow_rectangular_prism.md | 61 +++++ .../SasView_hollow_rectangular_prism_aniso.md | 67 ++++++ ...iew_hollow_rectangular_prism_thin_walls.md | 59 +++++ .../sasmodels/SasView_lamellar_hg.md | 60 +++++ .../SasView_lamellar_hg_stack_caille.md | 63 +++++ .../SasView_lamellar_stack_caille.md | 60 +++++ .../SasView_lamellar_stack_paracrystal.md | 60 +++++ mcxtrace-comps/sasmodels/SasView_line.md | 55 +++++ .../sasmodels/SasView_linear_pearls.md | 59 +++++ mcxtrace-comps/sasmodels/SasView_lorentz.md | 55 +++++ .../sasmodels/SasView_mass_fractal.md | 58 +++++ .../sasmodels/SasView_mass_surface_fractal.md | 59 +++++ .../sasmodels/SasView_mono_gauss_coil.md | 56 +++++ .../sasmodels/SasView_multilayer_vesicle.md | 63 +++++ mcxtrace-comps/sasmodels/SasView_onion.md | 38 +++ .../sasmodels/SasView_parallelepiped.md | 61 +++++ .../sasmodels/SasView_parallelepiped_aniso.md | 67 ++++++ .../sasmodels/SasView_peak_lorentz.md | 55 +++++ .../sasmodels/SasView_pearl_necklace.md | 62 +++++ .../sasmodels/SasView_poly_gauss_coil.md | 57 +++++ .../sasmodels/SasView_polymer_excl_volume.md | 56 +++++ .../sasmodels/SasView_polymer_micelle.md | 65 ++++++ mcxtrace-comps/sasmodels/SasView_porod.md | 53 +++++ mcxtrace-comps/sasmodels/SasView_power_law.md | 54 +++++ mcxtrace-comps/sasmodels/SasView_pringle.md | 61 +++++ mcxtrace-comps/sasmodels/SasView_raspberry.md | 64 ++++++ .../sasmodels/SasView_rectangular_prism.md | 52 +++++ .../SasView_rectangular_prism_aniso.md | 65 ++++++ mcxtrace-comps/sasmodels/SasView_rpa.md | 38 +++ .../sasmodels/SasView_sc_paracrystal.md | 59 +++++ .../sasmodels/SasView_sc_paracrystal_aniso.md | 65 ++++++ mcxtrace-comps/sasmodels/SasView_sphere.md | 57 +++++ mcxtrace-comps/sasmodels/SasView_spinodal.md | 55 +++++ .../sasmodels/SasView_squarewell.md | 58 +++++ .../sasmodels/SasView_stacked_disks.md | 64 ++++++ .../sasmodels/SasView_stacked_disks_aniso.md | 68 ++++++ .../sasmodels/SasView_star_polymer.md | 56 +++++ .../sasmodels/SasView_stickyhardsphere.md | 58 +++++ mcxtrace-comps/sasmodels/SasView_superball.md | 58 +++++ .../sasmodels/SasView_superball_aniso.md | 64 ++++++ .../sasmodels/SasView_surface_fractal.md | 58 +++++ .../sasmodels/SasView_teubner_strey.md | 58 +++++ .../sasmodels/SasView_triaxial_ellipsoid.md | 61 +++++ .../SasView_triaxial_ellipsoid_aniso.md | 67 ++++++ .../sasmodels/SasView_two_lorentzian.md | 61 +++++ .../sasmodels/SasView_two_power_law.md | 57 +++++ mcxtrace-comps/sasmodels/SasView_vesicle.md | 60 +++++ mcxtrace-comps/sources/Bending_magnet.md | 50 ++++ mcxtrace-comps/sources/Source_div.md | 61 +++++ mcxtrace-comps/sources/Source_div_quasi.md | 62 +++++ mcxtrace-comps/sources/Source_flat.md | 59 +++++ mcxtrace-comps/sources/Source_gaussian.md | 54 +++++ mcxtrace-comps/sources/Source_genesis13.md | 49 ++++ mcxtrace-comps/sources/Source_lab.md | 65 ++++++ mcxtrace-comps/sources/Source_pt.md | 56 +++++ mcxtrace-comps/sources/Source_simplex.md | 49 ++++ mcxtrace-comps/sources/Source_spectra.md | 74 ++++++ mcxtrace-comps/sources/Undulator.md | 58 +++++ mcxtrace-comps/sources/Wiggler.md | 55 +++++ mcxtrace-comps/union/Incoherent_process.md | 57 +++++ 311 files changed, 17303 insertions(+) create mode 100644 mcxtrace-comps/astrox/MM_c.md create mode 100644 mcxtrace-comps/astrox/MM_h.md create mode 100644 mcxtrace-comps/astrox/MM_p.md create mode 100644 mcxtrace-comps/astrox/Pore_c.md create mode 100644 mcxtrace-comps/astrox/Pore_h.md create mode 100644 mcxtrace-comps/astrox/Pore_p.md create mode 100644 mcxtrace-comps/astrox/Ring_c.md create mode 100644 mcxtrace-comps/astrox/Ring_h.md create mode 100644 mcxtrace-comps/astrox/Ring_p.md create mode 100644 mcxtrace-comps/astrox/Shell_c.md create mode 100644 mcxtrace-comps/astrox/Shell_h.md create mode 100644 mcxtrace-comps/astrox/Shell_p.md create mode 100644 mcxtrace-comps/astrox/Source_extended.md create mode 100644 mcxtrace-comps/contrib/Attenuating_mask.md create mode 100644 mcxtrace-comps/contrib/Bragg_crystal_BC.md create mode 100644 mcxtrace-comps/contrib/Bragg_crystal_bent_BC.md create mode 100644 mcxtrace-comps/contrib/Bragg_crystal_simple.md create mode 100644 mcxtrace-comps/contrib/Detector_pn.md create mode 100644 mcxtrace-comps/contrib/Laue_crystal_BC.md create mode 100644 mcxtrace-comps/contrib/Mirror_toroid_pothole.md create mode 100644 mcxtrace-comps/contrib/PSD_monitor_rad.md create mode 100644 mcxtrace-comps/contrib/SAXSCurve.md create mode 100644 mcxtrace-comps/contrib/SAXSCylinders.md create mode 100644 mcxtrace-comps/contrib/SAXSEllipticCylinders.md create mode 100644 mcxtrace-comps/contrib/SAXSLiposomes.md create mode 100644 mcxtrace-comps/contrib/SAXSNanodiscs.md create mode 100644 mcxtrace-comps/contrib/SAXSNanodiscsFast.md create mode 100644 mcxtrace-comps/contrib/SAXSNanodiscsWithTags.md create mode 100644 mcxtrace-comps/contrib/SAXSNanodiscsWithTagsFast.md create mode 100644 mcxtrace-comps/contrib/SAXSPDB.md create mode 100644 mcxtrace-comps/contrib/SAXSPDBFast.md create mode 100644 mcxtrace-comps/contrib/SAXSQMonitor.md create mode 100644 mcxtrace-comps/contrib/SAXSShells.md create mode 100644 mcxtrace-comps/contrib/SAXSSpheres.md create mode 100644 mcxtrace-comps/examples/AstroX_ESA/ATHENA_1mm/ATHENA_1mm.md create mode 100644 mcxtrace-comps/examples/AstroX_ESA/ATHENA_1pore/ATHENA_1pore.md create mode 100644 mcxtrace-comps/examples/AstroX_ESA/ATHENA_1ring/ATHENA_1ring.md create mode 100644 mcxtrace-comps/examples/AstroX_ESA/ATHENA_1sh_W1_OA/ATHENA_1sh_W1_OA.md create mode 100644 mcxtrace-comps/examples/AstroX_ESA/ATHENA_1sh_both/ATHENA_1sh_both.md create mode 100644 mcxtrace-comps/examples/AstroX_ESA/ATHENA_1sh_conical/ATHENA_1sh_conical.md create mode 100644 mcxtrace-comps/examples/AstroX_ESA/ATHENA_1shell/ATHENA_1shell.md create mode 100644 mcxtrace-comps/examples/AstroX_ESA/ATHENA_cfgA_1mm/ATHENA_cfgA_1mm.md create mode 100644 mcxtrace-comps/examples/AstroX_ESA/ATHENA_cfgA_1mm_FEMd/ATHENA_cfgA_1mm_FEMd.md create mode 100644 mcxtrace-comps/examples/AstroX_ESA/NuSTAR_1shell_con/NuSTAR_1shell_con.md create mode 100644 mcxtrace-comps/examples/AstroX_ESA/Simple_1shell/Simple_1shell.md create mode 100644 mcxtrace-comps/examples/AstroX_ESA/Test_shells/Test_shells.md create mode 100644 mcxtrace-comps/examples/AstroX_NASA/CXO/CXO.md create mode 100644 mcxtrace-comps/examples/AstroX_NASA/NuSTAR_1shell/NuSTAR_1shell.md create mode 100644 mcxtrace-comps/examples/BARC/Czerny_Turner/Czerny_Turner.md create mode 100644 mcxtrace-comps/examples/DTU/Airport_scannerII/Airport_scannerII.md create mode 100644 mcxtrace-comps/examples/DTU/Pump_probe/Pump_probe.md create mode 100644 mcxtrace-comps/examples/DTU/Pump_probe_solvent/Pump_probe_solvent.md create mode 100644 mcxtrace-comps/examples/ESRF/ESRF_BM29/ESRF_BM29.md create mode 100644 mcxtrace-comps/examples/ESRF/ESRF_ID01/ESRF_ID01.md create mode 100644 mcxtrace-comps/examples/ESRF/ESRF_ID11/ESRF_ID11.md create mode 100644 mcxtrace-comps/examples/MAXII/MAXII_711/MAXII_711.md create mode 100644 mcxtrace-comps/examples/MAXII/MAXII_811/MAXII_811.md create mode 100644 mcxtrace-comps/examples/MAXIV/MAXIV_Bloch/MAXIV_Bloch.md create mode 100644 mcxtrace-comps/examples/MAXIV/MAXIV_DanMAX_pxrd1d/MAXIV_DanMAX_pxrd1d.md create mode 100644 mcxtrace-comps/examples/MAXIV/MAXIV_DanMAX_pxrd2d/MAXIV_DanMAX_pxrd2d.md create mode 100644 mcxtrace-comps/examples/MAXIV/MAXIV_FemtoMAX/MAXIV_FemtoMAX.md create mode 100644 mcxtrace-comps/examples/NBI/NBI_Lab_TOMO/NBI_Lab_TOMO.md create mode 100644 mcxtrace-comps/examples/NECSA/NECSA_Brucker_D8_Advance/NECSA_Brucker_D8_Advance.md create mode 100644 mcxtrace-comps/examples/NECSA/NECSA_MIXRAD_Nikon_Tomo/NECSA_MIXRAD_Nikon_Tomo.md create mode 100644 mcxtrace-comps/examples/NIST/DBD_IBM_Si_analyzer_BC/DBD_IBM_Si_analyzer_BC.md create mode 100644 mcxtrace-comps/examples/NIST/PBD_BT/PBD_BT.md create mode 100644 mcxtrace-comps/examples/NSLS2/NSLS2_CHX/NSLS2_CHX.md create mode 100644 mcxtrace-comps/examples/SAXSLAB/JJ_SAXS/JJ_SAXS.md create mode 100644 mcxtrace-comps/examples/SAXSLAB/SAXS_saxlab/SAXS_saxlab.md create mode 100644 mcxtrace-comps/examples/SOLEIL/SOLEIL_ANATOMIX/SOLEIL_ANATOMIX.md create mode 100644 mcxtrace-comps/examples/SOLEIL/SOLEIL_CASSIOPEE/SOLEIL_CASSIOPEE.md create mode 100644 mcxtrace-comps/examples/SOLEIL/SOLEIL_DIFFABS/SOLEIL_DIFFABS.md create mode 100644 mcxtrace-comps/examples/SOLEIL/SOLEIL_DISCO/SOLEIL_DISCO.md create mode 100644 mcxtrace-comps/examples/SOLEIL/SOLEIL_LUCIA/SOLEIL_LUCIA.md create mode 100644 mcxtrace-comps/examples/SOLEIL/SOLEIL_MARS/SOLEIL_MARS.md create mode 100644 mcxtrace-comps/examples/SOLEIL/SOLEIL_PSICHE/SOLEIL_PSICHE.md create mode 100644 mcxtrace-comps/examples/SOLEIL/SOLEIL_PX2a/SOLEIL_PX2a.md create mode 100644 mcxtrace-comps/examples/SOLEIL/SOLEIL_ROCK/SOLEIL_ROCK.md create mode 100644 mcxtrace-comps/examples/SOLEIL/SOLEIL_SIXS/SOLEIL_SIXS.md create mode 100644 mcxtrace-comps/examples/SOLEIL/SOLEIL_SWING/SOLEIL_SWING.md create mode 100644 mcxtrace-comps/examples/SSRL/SSRL_bl_11_2_not_white_src/SSRL_bl_11_2_not_white_src.md create mode 100644 mcxtrace-comps/examples/SSRL/SSRL_bl_11_2_white_src/SSRL_bl_11_2_white_src.md create mode 100644 mcxtrace-comps/examples/Templates/Focal_pt_monitor/Focal_pt_monitor.md create mode 100644 mcxtrace-comps/examples/Templates/Template_1Slit_Diff/Template_1Slit_Diff.md create mode 100644 mcxtrace-comps/examples/Templates/Template_2Slit_Diff/Template_2Slit_Diff.md create mode 100644 mcxtrace-comps/examples/Templates/Template_Johann_spec/Template_Johann_spec.md create mode 100644 mcxtrace-comps/examples/Templates/template/template.md create mode 100644 mcxtrace-comps/examples/Templates/template_simple/template_simple.md create mode 100644 mcxtrace-comps/examples/Tests/Be_BM_beamline/Be_BM_beamline.md create mode 100644 mcxtrace-comps/examples/Tests/Test_Detector_pn/Test_Detector_pn.md create mode 100644 mcxtrace-comps/examples/Tests/Test_monitors/Test_monitors.md create mode 100644 mcxtrace-comps/examples/Tests_MCPL_etc/Test_MCPL_input/Test_MCPL_input.md create mode 100644 mcxtrace-comps/examples/Tests_MCPL_etc/Test_MCPL_output/Test_MCPL_output.md create mode 100644 mcxtrace-comps/examples/Tests_RNG/Test_RNG_rand01/Test_RNG_rand01.md create mode 100644 mcxtrace-comps/examples/Tests_RNG/Test_RNG_randnorm/Test_RNG_randnorm.md create mode 100644 mcxtrace-comps/examples/Tests_RNG/Test_RNG_randpm1/Test_RNG_randpm1.md create mode 100644 mcxtrace-comps/examples/Tests_RNG/Test_RNG_randtriangle/Test_RNG_randtriangle.md create mode 100644 mcxtrace-comps/examples/Tests_RNG/Test_RNG_randvec_target_circle/Test_RNG_randvec_target_circle.md create mode 100644 mcxtrace-comps/examples/Tests_RNG/Test_RNG_randvec_target_rect/Test_RNG_randvec_target_rect.md create mode 100644 mcxtrace-comps/examples/Tests_RNG/Test_RNG_randvec_target_rect_angular/Test_RNG_randvec_target_rect_angular.md create mode 100644 mcxtrace-comps/examples/Tests_grammar/Test_GROUP/Test_GROUP.md create mode 100644 mcxtrace-comps/examples/Tests_optics/Template_DCM/Template_DCM.md create mode 100644 mcxtrace-comps/examples/Tests_optics/Test_CRL/Test_CRL.md create mode 100644 mcxtrace-comps/examples/Tests_optics/Test_CRL_Be/Test_CRL_Be.md create mode 100644 mcxtrace-comps/examples/Tests_optics/Test_Filter/Test_Filter.md create mode 100644 mcxtrace-comps/examples/Tests_optics/Test_KB/Test_KB.md create mode 100644 mcxtrace-comps/examples/Tests_optics/Test_ML_elliptic/Test_ML_elliptic.md create mode 100644 mcxtrace-comps/examples/Tests_optics/Test_Mask/Test_Mask.md create mode 100644 mcxtrace-comps/examples/Tests_optics/Test_Mirror_toroid/Test_Mirror_toroid.md create mode 100644 mcxtrace-comps/examples/Tests_optics/Test_Mirrors/Test_Mirrors.md create mode 100644 mcxtrace-comps/examples/Tests_optics/Test_Mono/Test_Mono.md create mode 100644 mcxtrace-comps/examples/Tests_optics/Test_capillary/Test_capillary.md create mode 100644 mcxtrace-comps/examples/Tests_optics/Test_grating_reflect/Test_grating_reflect.md create mode 100644 mcxtrace-comps/examples/Tests_optics/Test_grating_trans/Test_grating_trans.md create mode 100644 mcxtrace-comps/examples/Tests_optics/Test_mirror_elliptic/Test_mirror_elliptic.md create mode 100644 mcxtrace-comps/examples/Tests_optics/Test_mirror_parabolic/Test_mirror_parabolic.md create mode 100644 mcxtrace-comps/examples/Tests_other/test_File/test_File.md create mode 100644 mcxtrace-comps/examples/Tests_samples/Template_SasView/Template_SasView.md create mode 100644 mcxtrace-comps/examples/Tests_samples/Test_Absorption/Test_Absorption.md create mode 100644 mcxtrace-comps/examples/Tests_samples/Test_Air/Test_Air.md create mode 100644 mcxtrace-comps/examples/Tests_samples/Test_FluoPowder/Test_FluoPowder.md create mode 100644 mcxtrace-comps/examples/Tests_samples/Test_Fluorescence/Test_Fluorescence.md create mode 100644 mcxtrace-comps/examples/Tests_samples/Test_PowderN/Test_PowderN.md create mode 100644 mcxtrace-comps/examples/Tests_samples/Test_SAXS/Test_SAXS.md create mode 100644 mcxtrace-comps/examples/Tests_samples/Test_SX/Test_SX.md create mode 100644 mcxtrace-comps/examples/Tests_samples/Test_Saxs_spheres/Test_Saxs_spheres.md create mode 100644 mcxtrace-comps/examples/Tests_samples/Test_Sqw/Test_Sqw.md create mode 100644 mcxtrace-comps/examples/Tests_sources/Test_BM/Test_BM.md create mode 100644 mcxtrace-comps/examples/Tests_sources/Test_Source_quasi/Test_Source_quasi.md create mode 100644 mcxtrace-comps/examples/Tests_sources/Test_Sources/Test_Sources.md create mode 100644 mcxtrace-comps/examples/Tests_sources/Test_source_lab/Test_source_lab.md create mode 100644 mcxtrace-comps/examples/Tests_sources/Test_source_spectra/Test_source_spectra.md create mode 100644 mcxtrace-comps/examples/Tests_sources/Test_undulator/Test_undulator.md create mode 100644 mcxtrace-comps/examples/XFEL/XFEL_SPB/XFEL_SPB.md create mode 100644 mcxtrace-comps/misc/Air.md create mode 100644 mcxtrace-comps/misc/File.md create mode 100644 mcxtrace-comps/misc/Focus.md create mode 100644 mcxtrace-comps/misc/MCPL_input.md create mode 100644 mcxtrace-comps/misc/MCPL_output.md create mode 100644 mcxtrace-comps/misc/Progress_bar.md create mode 100644 mcxtrace-comps/misc/Shadow_input.md create mode 100644 mcxtrace-comps/misc/Shadow_output.md create mode 100644 mcxtrace-comps/misc/Shape.md create mode 100644 mcxtrace-comps/monitors/DivE_monitor.md create mode 100644 mcxtrace-comps/monitors/DivPos_monitor.md create mode 100644 mcxtrace-comps/monitors/Divergence_monitor.md create mode 100644 mcxtrace-comps/monitors/EPSD_monitor.md create mode 100644 mcxtrace-comps/monitors/E_monitor.md create mode 100644 mcxtrace-comps/monitors/Event_monitor_simple.md create mode 100644 mcxtrace-comps/monitors/Flex_monitor_1D.md create mode 100644 mcxtrace-comps/monitors/Flex_monitor_2D.md create mode 100644 mcxtrace-comps/monitors/Flex_monitor_3D.md create mode 100644 mcxtrace-comps/monitors/Fluo_detector.md create mode 100644 mcxtrace-comps/monitors/L_monitor.md create mode 100644 mcxtrace-comps/monitors/Monitor.md create mode 100644 mcxtrace-comps/monitors/Monitor_nD.md create mode 100644 mcxtrace-comps/monitors/PSD_monitor.md create mode 100644 mcxtrace-comps/monitors/PSD_monitor_4PI.md create mode 100644 mcxtrace-comps/monitors/PSD_monitor_coh.md create mode 100644 mcxtrace-comps/monitors/TOF_monitor.md create mode 100644 mcxtrace-comps/monitors/W_psd_monitor.md create mode 100644 mcxtrace-comps/obsolete/Lens_Kinoform.md create mode 100644 mcxtrace-comps/obsolete/Lens_parab_Cyl_rough.md create mode 100644 mcxtrace-comps/obsolete/Lens_parab_rough.md create mode 100644 mcxtrace-comps/obsolete/Perfect_crystal.md create mode 100644 mcxtrace-comps/optics/Arm.md create mode 100644 mcxtrace-comps/optics/Beamstop.md create mode 100644 mcxtrace-comps/optics/Bragg_crystal.md create mode 100644 mcxtrace-comps/optics/Bragg_crystal_bent.md create mode 100644 mcxtrace-comps/optics/Capillary.md create mode 100644 mcxtrace-comps/optics/Chopper_simple.md create mode 100644 mcxtrace-comps/optics/Collimator_linear.md create mode 100644 mcxtrace-comps/optics/Diaphragm.md create mode 100644 mcxtrace-comps/optics/Filter.md create mode 100644 mcxtrace-comps/optics/Grating_reflect.md create mode 100644 mcxtrace-comps/optics/Grating_trans.md create mode 100644 mcxtrace-comps/optics/Lens_CRL_RTM.md create mode 100644 mcxtrace-comps/optics/Lens_elliptical.md create mode 100644 mcxtrace-comps/optics/Lens_parab.md create mode 100644 mcxtrace-comps/optics/Lens_parab_Cyl.md create mode 100644 mcxtrace-comps/optics/Lens_simple.md create mode 100644 mcxtrace-comps/optics/Mask.md create mode 100644 mcxtrace-comps/optics/Mirror.md create mode 100644 mcxtrace-comps/optics/Mirror_curved.md create mode 100644 mcxtrace-comps/optics/Mirror_elliptic.md create mode 100644 mcxtrace-comps/optics/Mirror_parabolic.md create mode 100644 mcxtrace-comps/optics/Mirror_toroid.md create mode 100644 mcxtrace-comps/optics/Multilayer_elliptic.md create mode 100644 mcxtrace-comps/optics/Place.md create mode 100644 mcxtrace-comps/optics/Slit.md create mode 100644 mcxtrace-comps/optics/Slit_N.md create mode 100644 mcxtrace-comps/optics/TwinKB_ML.md create mode 100644 mcxtrace-comps/optics/ZonePlate.md create mode 100644 mcxtrace-comps/samples/Abs_objects.md create mode 100644 mcxtrace-comps/samples/Absorption_sample.md create mode 100644 mcxtrace-comps/samples/FluoCrystal.md create mode 100644 mcxtrace-comps/samples/FluoPowder.md create mode 100644 mcxtrace-comps/samples/Fluorescence.md create mode 100644 mcxtrace-comps/samples/Isotropic_Sqw.md create mode 100644 mcxtrace-comps/samples/Molecule_2state.md create mode 100644 mcxtrace-comps/samples/Polycrystal.md create mode 100644 mcxtrace-comps/samples/PowderN.md create mode 100644 mcxtrace-comps/samples/Saxs_spheres.md create mode 100644 mcxtrace-comps/samples/Single_crystal.md create mode 100644 mcxtrace-comps/sasmodels/SasView_adsorbed_layer.md create mode 100644 mcxtrace-comps/sasmodels/SasView_barbell.md create mode 100644 mcxtrace-comps/sasmodels/SasView_barbell_aniso.md create mode 100644 mcxtrace-comps/sasmodels/SasView_bcc_paracrystal.md create mode 100644 mcxtrace-comps/sasmodels/SasView_bcc_paracrystal_aniso.md create mode 100644 mcxtrace-comps/sasmodels/SasView_binary_hard_sphere.md create mode 100644 mcxtrace-comps/sasmodels/SasView_broad_peak.md create mode 100644 mcxtrace-comps/sasmodels/SasView_capped_cylinder.md create mode 100644 mcxtrace-comps/sasmodels/SasView_capped_cylinder_aniso.md create mode 100644 mcxtrace-comps/sasmodels/SasView_core_multi_shell.md create mode 100644 mcxtrace-comps/sasmodels/SasView_core_shell_bicelle.md create mode 100644 mcxtrace-comps/sasmodels/SasView_core_shell_bicelle_aniso.md create mode 100644 mcxtrace-comps/sasmodels/SasView_core_shell_bicelle_elliptical.md create mode 100644 mcxtrace-comps/sasmodels/SasView_core_shell_bicelle_elliptical_aniso.md create mode 100644 mcxtrace-comps/sasmodels/SasView_core_shell_bicelle_elliptical_belt_rough.md create mode 100644 mcxtrace-comps/sasmodels/SasView_core_shell_bicelle_elliptical_belt_rough_aniso.md create mode 100644 mcxtrace-comps/sasmodels/SasView_core_shell_cylinder.md create mode 100644 mcxtrace-comps/sasmodels/SasView_core_shell_cylinder_aniso.md create mode 100644 mcxtrace-comps/sasmodels/SasView_core_shell_ellipsoid.md create mode 100644 mcxtrace-comps/sasmodels/SasView_core_shell_ellipsoid_aniso.md create mode 100644 mcxtrace-comps/sasmodels/SasView_core_shell_parallelepiped.md create mode 100644 mcxtrace-comps/sasmodels/SasView_core_shell_parallelepiped_aniso.md create mode 100644 mcxtrace-comps/sasmodels/SasView_core_shell_sphere.md create mode 100644 mcxtrace-comps/sasmodels/SasView_correlation_length.md create mode 100644 mcxtrace-comps/sasmodels/SasView_cylinder.md create mode 100644 mcxtrace-comps/sasmodels/SasView_cylinder_aniso.md create mode 100644 mcxtrace-comps/sasmodels/SasView_dab.md create mode 100644 mcxtrace-comps/sasmodels/SasView_ellipsoid.md create mode 100644 mcxtrace-comps/sasmodels/SasView_ellipsoid_aniso.md create mode 100644 mcxtrace-comps/sasmodels/SasView_elliptical_cylinder.md create mode 100644 mcxtrace-comps/sasmodels/SasView_elliptical_cylinder_aniso.md create mode 100644 mcxtrace-comps/sasmodels/SasView_fcc_paracrystal.md create mode 100644 mcxtrace-comps/sasmodels/SasView_fcc_paracrystal_aniso.md create mode 100644 mcxtrace-comps/sasmodels/SasView_flexible_cylinder.md create mode 100644 mcxtrace-comps/sasmodels/SasView_flexible_cylinder_elliptical.md create mode 100644 mcxtrace-comps/sasmodels/SasView_fractal.md create mode 100644 mcxtrace-comps/sasmodels/SasView_fractal_core_shell.md create mode 100644 mcxtrace-comps/sasmodels/SasView_fuzzy_sphere.md create mode 100644 mcxtrace-comps/sasmodels/SasView_gauss_lorentz_gel.md create mode 100644 mcxtrace-comps/sasmodels/SasView_gaussian_peak.md create mode 100644 mcxtrace-comps/sasmodels/SasView_gel_fit.md create mode 100644 mcxtrace-comps/sasmodels/SasView_guinier.md create mode 100644 mcxtrace-comps/sasmodels/SasView_guinier_porod.md create mode 100644 mcxtrace-comps/sasmodels/SasView_hardsphere.md create mode 100644 mcxtrace-comps/sasmodels/SasView_hayter_msa.md create mode 100644 mcxtrace-comps/sasmodels/SasView_hollow_cylinder.md create mode 100644 mcxtrace-comps/sasmodels/SasView_hollow_cylinder_aniso.md create mode 100644 mcxtrace-comps/sasmodels/SasView_hollow_rectangular_prism.md create mode 100644 mcxtrace-comps/sasmodels/SasView_hollow_rectangular_prism_aniso.md create mode 100644 mcxtrace-comps/sasmodels/SasView_hollow_rectangular_prism_thin_walls.md create mode 100644 mcxtrace-comps/sasmodels/SasView_lamellar_hg.md create mode 100644 mcxtrace-comps/sasmodels/SasView_lamellar_hg_stack_caille.md create mode 100644 mcxtrace-comps/sasmodels/SasView_lamellar_stack_caille.md create mode 100644 mcxtrace-comps/sasmodels/SasView_lamellar_stack_paracrystal.md create mode 100644 mcxtrace-comps/sasmodels/SasView_line.md create mode 100644 mcxtrace-comps/sasmodels/SasView_linear_pearls.md create mode 100644 mcxtrace-comps/sasmodels/SasView_lorentz.md create mode 100644 mcxtrace-comps/sasmodels/SasView_mass_fractal.md create mode 100644 mcxtrace-comps/sasmodels/SasView_mass_surface_fractal.md create mode 100644 mcxtrace-comps/sasmodels/SasView_mono_gauss_coil.md create mode 100644 mcxtrace-comps/sasmodels/SasView_multilayer_vesicle.md create mode 100644 mcxtrace-comps/sasmodels/SasView_onion.md create mode 100644 mcxtrace-comps/sasmodels/SasView_parallelepiped.md create mode 100644 mcxtrace-comps/sasmodels/SasView_parallelepiped_aniso.md create mode 100644 mcxtrace-comps/sasmodels/SasView_peak_lorentz.md create mode 100644 mcxtrace-comps/sasmodels/SasView_pearl_necklace.md create mode 100644 mcxtrace-comps/sasmodels/SasView_poly_gauss_coil.md create mode 100644 mcxtrace-comps/sasmodels/SasView_polymer_excl_volume.md create mode 100644 mcxtrace-comps/sasmodels/SasView_polymer_micelle.md create mode 100644 mcxtrace-comps/sasmodels/SasView_porod.md create mode 100644 mcxtrace-comps/sasmodels/SasView_power_law.md create mode 100644 mcxtrace-comps/sasmodels/SasView_pringle.md create mode 100644 mcxtrace-comps/sasmodels/SasView_raspberry.md create mode 100644 mcxtrace-comps/sasmodels/SasView_rectangular_prism.md create mode 100644 mcxtrace-comps/sasmodels/SasView_rectangular_prism_aniso.md create mode 100644 mcxtrace-comps/sasmodels/SasView_rpa.md create mode 100644 mcxtrace-comps/sasmodels/SasView_sc_paracrystal.md create mode 100644 mcxtrace-comps/sasmodels/SasView_sc_paracrystal_aniso.md create mode 100644 mcxtrace-comps/sasmodels/SasView_sphere.md create mode 100644 mcxtrace-comps/sasmodels/SasView_spinodal.md create mode 100644 mcxtrace-comps/sasmodels/SasView_squarewell.md create mode 100644 mcxtrace-comps/sasmodels/SasView_stacked_disks.md create mode 100644 mcxtrace-comps/sasmodels/SasView_stacked_disks_aniso.md create mode 100644 mcxtrace-comps/sasmodels/SasView_star_polymer.md create mode 100644 mcxtrace-comps/sasmodels/SasView_stickyhardsphere.md create mode 100644 mcxtrace-comps/sasmodels/SasView_superball.md create mode 100644 mcxtrace-comps/sasmodels/SasView_superball_aniso.md create mode 100644 mcxtrace-comps/sasmodels/SasView_surface_fractal.md create mode 100644 mcxtrace-comps/sasmodels/SasView_teubner_strey.md create mode 100644 mcxtrace-comps/sasmodels/SasView_triaxial_ellipsoid.md create mode 100644 mcxtrace-comps/sasmodels/SasView_triaxial_ellipsoid_aniso.md create mode 100644 mcxtrace-comps/sasmodels/SasView_two_lorentzian.md create mode 100644 mcxtrace-comps/sasmodels/SasView_two_power_law.md create mode 100644 mcxtrace-comps/sasmodels/SasView_vesicle.md create mode 100644 mcxtrace-comps/sources/Bending_magnet.md create mode 100644 mcxtrace-comps/sources/Source_div.md create mode 100644 mcxtrace-comps/sources/Source_div_quasi.md create mode 100644 mcxtrace-comps/sources/Source_flat.md create mode 100644 mcxtrace-comps/sources/Source_gaussian.md create mode 100644 mcxtrace-comps/sources/Source_genesis13.md create mode 100644 mcxtrace-comps/sources/Source_lab.md create mode 100644 mcxtrace-comps/sources/Source_pt.md create mode 100644 mcxtrace-comps/sources/Source_simplex.md create mode 100644 mcxtrace-comps/sources/Source_spectra.md create mode 100644 mcxtrace-comps/sources/Undulator.md create mode 100644 mcxtrace-comps/sources/Wiggler.md create mode 100644 mcxtrace-comps/union/Incoherent_process.md diff --git a/mcxtrace-comps/astrox/MM_c.md b/mcxtrace-comps/astrox/MM_c.md new file mode 100644 index 000000000..7173c6cfc --- /dev/null +++ b/mcxtrace-comps/astrox/MM_c.md @@ -0,0 +1,58 @@ +# The `MM_c` Component + +*McXtrace: Single Pore as part of the Silicon Pore Optics (SPO) as envisioned for the ATHENA+ space telescope.* + +## Identification + +- **Site:** +- **Author:** Erik B Knudsen and Desiree D. M. Ferreira +- **Origin:** DTU Physics, DTU Space +- **Date:** Feb. 2016, Feb. 2017 + +## Description + +```text +A single pore is simulated, which may have thick walls. The top and bottom are curved cylindrically +azimuthally, and according to the Wolter I optic lengthwise (sagitally). A parameter specifies +whether this is hyperbolic or parabolic. +The azimuthal curvature is defined by the parameter radius. This refers to the center of the pore. I.e the top +and bottom plates have radius of curvature and respectively. + +To intersect the Wolter I plates we take advatage of the azimuthal symmetry and only consider the radial component +of the photon's wavevector. +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| **pore_th** | | | | +| **pore_width** | | | | +| **ring_nr** | | | | +| **radius_m** | m | Ring radius of the upper (reflecting) plate of the pore at the optic centre. | | +| **Z0** | m | Distance between optics centre plane and focal spot (essentially focal length). | | +| **xwidth** | m | Width of the pore. | | +| **pore_height** | | | | +| gap | m | Gap between the plate and the intersection plane with the hyperbolic section. (currently ignored) | 0 | +| chamfer_width | | | 0 | +| length | | | 0 | +| mirror_reflec | | Data file containing reflectivities of the reflector surface (TOP). | "" | +| bottom_reflec | | Data file containing reflectivities of the bottom surface (BOTTOM). | "" | +| side_reflec | | Data file containing reflectivities of the side walls (LEFT and RIGHT). | "" | +| size_file | | | "" | +| non_specular_file | | | "" | +| R_d | | Default reflectivity value to use if no reflectivity file is given. Useful f.i. is one surface is reflecting and the others absorbing. | 1 | +| primary | | If non-zero, the pore is considered a primary reflector, and extends towards negative z. I.e. the entry plane is behind the z=0-plane. If zero, the pore is considered secondary and extends from the z=0-plane and towards positive z. | 1 | +| dalpha | deg | Offset to the alpha angle computed from the focal length. Useful for targeting the modified conical geometry (currently ignored). | 0 | +| waviness | rad | Waviness of the reflecting surface. The slope error is assumed to be uniformly distributed in the interval [-waviness:waviness]. | 0 | +| longw | | If non-zero, waviness is 1D and along the pore axis. | 0 | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcxtrace-comps/astrox/MM_c.comp) for `MM_c.comp`. + +--- + +*Generated on mcxtrace 3.99.99.* \ No newline at end of file diff --git a/mcxtrace-comps/astrox/MM_h.md b/mcxtrace-comps/astrox/MM_h.md new file mode 100644 index 000000000..e74998051 --- /dev/null +++ b/mcxtrace-comps/astrox/MM_h.md @@ -0,0 +1,59 @@ +# The `MM_h` Component + +*McXtrace: Date: Feb. 2017 +Version: 1.1 +Release: McXtrace 1.2 +Origin: DTU Physics, DTU Space + +Single Pore as part of the Silicon Pore Optics (SPO) as envisioned for the ATHENA+ space telescope.* + +## Identification + +- **Site:** +- **Author:** Erik B Knudsen and Desiree D. M. Ferreira +- **Origin:** DTU Physics, DTU Space +- **Date:** Feb. 2016 + +## Description + +```text +A single pore is simulated, which may have thick walls. The top and bottom are curved cylindrically +azimuthally, and according to the Wolter I optic lengthwise (sagitally). This is the hyperbolic part. +The azimuthal curvature is defined by the radius parameters. + +To intersect the Wolter I plates we take advatage of the azimuthal symmetry and only consider the radial component +of the photon's wavevector. + +Example: MM_h( pore_th=0, ring_nr=1, Z0=12, pore_width=0.83e-3, pore_height=0.605e-3, chamfer_width=0.17e-3, mirror_reflec="mirror_coating_unity.txt", R_d=0, size_file="ref_design_breaks.txt") +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| **pore_th** | | | | +| **ring_nr** | | | | +| **Z0** | m | Distance between intersection plane and the focal spot (essentially focal length). | | +| **pore_height** | m | Height of the pore. (Hence the inner radii are radius_{m,h}-pore_height) | | +| **pore_width** | | | | +| chamfer_width | | | 0 | +| gap | m | Gap between intersection with parabolic section and actual plate. | 0 | +| zdepth | | | 0 | +| mirror_reflec | | Data file containing reflectivities of the reflector surface (TOP). | "" | +| bottom_reflec | | Data file containing reflectivities of the bottom surface (BOTTOM). | "" | +| side_reflec | | Data file containing reflectivities of the side walls (LEFT and RIGHT). | "" | +| size_file | | | "" | +| non_specular_file | | | "" | +| R_d | | Default reflectivity value to use if no reflectivity file is given. Useful f.i. is one surface is reflecting and the others absorbing. | 1 | +| waviness | | | 0 | +| longw | | | 0 | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcxtrace-comps/astrox/MM_h.comp) for `MM_h.comp`. + +--- + +*Generated on mcxtrace 3.99.99.* \ No newline at end of file diff --git a/mcxtrace-comps/astrox/MM_p.md b/mcxtrace-comps/astrox/MM_p.md new file mode 100644 index 000000000..2f03b3c26 --- /dev/null +++ b/mcxtrace-comps/astrox/MM_p.md @@ -0,0 +1,61 @@ +# The `MM_p` Component + +*McXtrace: Date: Feb. 2017 +Version: 1.1 +Release: McXtrace 1.2 +Origin: DTU Physics, DTU Space + +Single Pore as part of the Silicon Pore Optics (SPO) as envisioned for the ATHENA+ space telescope.* + +## Identification + +- **Site:** +- **Author:** Erik B Knudsen and Desiree D. M. Ferreira +- **Origin:** DTU Physics, DTU Space +- **Date:** Feb. 2016 + +## Description + +```text +A single pore is simulated, which may have thick walls. The top and bottom are curved cylindrically +azimuthally, and according to the Wolter I optic lengthwise (sagitally). A parameter specifies +whether this is hyperbolic or parabolic. +The azimuthal curvature is defined by the parameter radius. This refers to the center of the pore. I.e the top +and bottom plates have radius of curvature and respectively. + +To intersect the Wolter I plates we take advatage of the azimuthal symmetry and only consider the radial component +of the photon's wavevector. + +Example: MM_p( pore_th=0, ring_nr=1, Z0=12, pore_width=0.83e-3 , pore_height=0.605e-3, mirror_reflec="mirror_coating_unity.txt", R_d=0, size_file="ref_design_breaks.txt") +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| **pore_th** | | | | +| **ring_nr** | | | | +| **Z0** | m | Distance between optics centre plane and focal spot (essentially focal length). | | +| **pore_height** | m | Height of the pore. | | +| **pore_width** | | | | +| chamfer_width | m | Width of side walls. | 0 | +| gap | m | Gap between the plate and the intersection plane with the hyperbolic section. | 0 | +| zdepth | | | 0 | +| mirror_reflec | | Data file containing reflectivities of the reflector surface (TOP). | "" | +| bottom_reflec | | Data file containing reflectivities of the bottom surface (BOTTOM). | "" | +| side_reflec | | Data file containing reflectivities of the side walls (LEFT and RIGHT). | "" | +| size_file | | | "" | +| non_specular_file | | | "" | +| R_d | | Default reflectivity value to use if no reflectivity file is given. Useful f.i. is one surface is reflecting and the others absorbing. | 1 | +| waviness | | | 0 | +| longw | | | 0 | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcxtrace-comps/astrox/MM_p.comp) for `MM_p.comp`. + +--- + +*Generated on mcxtrace 3.99.99.* \ No newline at end of file diff --git a/mcxtrace-comps/astrox/Pore_c.md b/mcxtrace-comps/astrox/Pore_c.md new file mode 100644 index 000000000..8f4688251 --- /dev/null +++ b/mcxtrace-comps/astrox/Pore_c.md @@ -0,0 +1,53 @@ +# The `Pore_c` Component + +*McXtrace: Single Pore as part of the Silicon Pore Optics (SPO) as envisioned for the ATHENA+ space telescope.* + +## Identification + +- **Site:** +- **Author:** Erik B Knudsen and Desiree D. M. Ferreira +- **Origin:** DTU Physics, DTU Space +- **Date:** Feb. 2016 + +## Description + +```text +A single pore is simulated, which may have thick walls. The top and bottom are curved cylindrically +azimuthally, whereas they are straight sagitally. The primary parameter specifies whether this is a +primary or secondary mirror. If primary they mirror extends backwards. +The azimuthal curvature is defined by the parameter radius. This refers to the center of the pore. I.e the top +and bottom plates have radius of curvature and respectively. + +To intersect the Wolter I plates we take advatage of the azimuthal symmetry and only consider the radial component +of the photon's wavevector. +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| **radius_m** | m | Ring radius of the upper (reflecting) plate of the pore at the optic centre. | | +| **Z0** | m | Distance between optics centre plane and focal spot (essentially focal length). | | +| **xwidth** | m | Width of the pore. | | +| **yheight** | m | Height of the pore. | | +| gap | m | Gap between the plate and the intersection plane with the hyperbolic section. (currently ignored) | 0 | +| chamferwidth | m | Width of side walls. | 0 | +| length | | | 0 | +| mirror_reflec | | Data file containing reflectivities of the reflector surface (TOP). | "" | +| bottom_reflec | | Data file containing reflectivities of the bottom surface (BOTTOM). | "" | +| side_reflec | | Data file containing reflectivities of the side walls (LEFT and RIGHT). | "" | +| R_d | | Default reflectivity value to use if no reflectivity file is given. Useful f.i. is one surface is reflecting and the others absorbing. | 1 | +| primary | | If non-zero, the pore is considered a primary reflector, and extends towards negative z. I.e. the entry plane is behind the z=0-plane. If zero, the pore is considered secondary | 1 | +| dalpha | deg | Offset to the alpha angle computed from the focal length. Useful for targeting the modified conical geometry (currently ignored). | 0 | +| waviness | rad | Waviness of the pore reflecting surface. The slope error is assumed to be uniformly distributed in the interval [-waviness:waviness]. | 0 | +| longw | | If non-zero, waviness is 1D and along the pore axis. | 0 | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcxtrace-comps/astrox/Pore_c.comp) for `Pore_c.comp`. + +--- + +*Generated on mcxtrace 3.99.99.* \ No newline at end of file diff --git a/mcxtrace-comps/astrox/Pore_h.md b/mcxtrace-comps/astrox/Pore_h.md new file mode 100644 index 000000000..74720d086 --- /dev/null +++ b/mcxtrace-comps/astrox/Pore_h.md @@ -0,0 +1,53 @@ +# The `Pore_h` Component + +*McXtrace: Single Pore as part of the Silicon Pore Optics (SPO) as envisioned for the ATHENA+ space telescope.* + +## Identification + +- **Site:** +- **Author:** Erik B Knudsen and Desiree D. M. Ferreira +- **Origin:** DTU Physics, DTU Space +- **Date:** Feb. 2016 + +## Description + +```text +A single pore is simulated, which may have thick walls. The top and bottom are curved cylindrically +azimuthally, and according to the Wolter I optic lengthwise (sagitally). This is the hyperbolic part. +The azimuthal curvature is defined by the radius parameters. This refers to the center of the pore. I.e the top +and bottom plates have radius of curvature and respectively. + +To intersect the Wolter I plates we take advatage of the azimuthal symmetry and only consider the radial component +of the photon's wavevector. + +Example: Pore_h( radius_m=0.286148, radius_h=0.284333, zdepth=0.101504, Z0=12, xwidth=0.83e-3, yheight=0.605e-3, mirror_reflec="mirror_coating_unity.txt", R_d=0) +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| **radius_m** | m | Ring radius of the upper (reflecting) plate of the pore at the intersection with the parabolic section. | | +| **radius_h** | m | Ring radius of the upper (reflecting) plate of the pore at the edge closest to the focal point. | | +| **Z0** | m | distance between intersection plane and the focal spot( essentially the focal length). | | +| **xwidth** | m | Width of the pore. | | +| **yheight** | m | Height of the pore. (Thus the inner radius is radius_{m,h}-yehight. | | +| chamferwidth | m | Width of side walls. | 0 | +| gap | m | gap between intersection with parabolic section and actual plate. | 0 | +| zdepth | | | 0 | +| mirror_reflec | | Data file containing reflectivities of the reflector surface (TOP). | "" | +| bottom_reflec | | Data file containing reflectivities of the bottom surface (BOTTOM). | "" | +| side_reflec | | Data file containing reflectivities of the side walls (LEFT and RIGHT). | "" | +| R_d | | Default reflectivity value to use if no reflectivity file is given. Useful f.i. is one surface is reflecting and the others absorbing. | 1 | +| waviness | | | 0 | +| longw | | | 0 | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcxtrace-comps/astrox/Pore_h.comp) for `Pore_h.comp`. + +--- + +*Generated on mcxtrace 3.99.99.* \ No newline at end of file diff --git a/mcxtrace-comps/astrox/Pore_p.md b/mcxtrace-comps/astrox/Pore_p.md new file mode 100644 index 000000000..6ba8d3429 --- /dev/null +++ b/mcxtrace-comps/astrox/Pore_p.md @@ -0,0 +1,51 @@ +# The `Pore_p` Component + +*McXtrace: Single Pore as part of the Silicon Pore Optics (SPO) as envisioned for the ATHENA+ space telescope.* + +## Identification + +- **Site:** +- **Author:** Erik B Knudsen and Desiree D. M. Ferreira +- **Origin:** DTU Physics, DTU Space +- **Date:** Feb. 2016 + +## Description + +```text +A single pore is simulated, which may have thick walls. The top and bottom are curved cylindrically +azimuthally, and according to the Wolter I optic lengthwise (sagitally). This is the parabolic part. +The azimuthal curvature is defined by the radius parameters. This refers to the center of the pore. I.e the top +and bottom plates have radius of curvature and respectively. + +To intersect the Wolter I plates we take advatage of the azimuthal symmetry and only consider the radial component +of the photon's wavevector. +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| **radius_p** | m | Ring radius of the upper (reflecting) plate of the pore at the edge furthest away from the focal point. | | +| **radius_m** | m | Ring radius of the upper (reflecting) plate of the pore at the intersection with the hyperbolic section. | | +| **Z0** | m | distance between intersection plane and the focal spot( essentially the focal length). | | +| **xwidth** | m | Width of the pore. | | +| **yheight** | m | Height of the pore. (Thus the inner radius is radius_{m,h}-yehight. | | +| gap | m | gap between intersection with parabolic section and actual plate. | 0 | +| chamferwidth | m | Width of side walls. | 0 | +| zdepth | | | 0 | +| mirror_reflec | | Data file containing reflectivities of the reflector surface (TOP). | "" | +| bottom_reflec | | Data file containing reflectivities of the bottom surface (BOTTOM). | "" | +| side_reflec | | Data file containing reflectivities of the side walls (LEFT and RIGHT). | "" | +| R_d | | Default reflectivity value to use if no reflectivity file is given. Useful f.i. is one surface is reflecting and the others absorbing. | 1 | +| waviness | | | 0 | +| longw | | | 0 | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcxtrace-comps/astrox/Pore_p.comp) for `Pore_p.comp`. + +--- + +*Generated on mcxtrace 3.99.99.* \ No newline at end of file diff --git a/mcxtrace-comps/astrox/Ring_c.md b/mcxtrace-comps/astrox/Ring_c.md new file mode 100644 index 000000000..6391d9fb5 --- /dev/null +++ b/mcxtrace-comps/astrox/Ring_c.md @@ -0,0 +1,53 @@ +# The `Ring_c` Component + +*McXtrace: Date: Feb. 2017 +Version: 1.1 +Release: McXtrace 1.2 +Origin: DTU Physics, DTU Space + +Stack of conical shells as part of a Wolter optic.* + +## Identification + +- **Site:** +- **Author:** Erik B Knudsen and Desiree D. M. Ferreira +- **Origin:** DTU Physics, DTU Space +- **Date:** Feb. 2016 + +## Description + +```text +A stack of conical shells is simulated. +To intersect the Wolter I plates we take advatage of the azimuthal symmetry and only consider the radial component +of the photon's wavevector. +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| **ring_nr** | | | | +| **radius_m** | m | Ring radius of the upper (reflecting) plate of the shell at the optic centre. | | +| **Z0** | m | Distance between optics centre plane and focal spot (essentially focal length). | | +| **xwidth** | | | | +| **yheight** | m | Height of the shell. | | +| gap | m | Gap between the plate and the intersection plane with the hyperbolic section. (currently ignored) | 0 | +| chamferwidth | m | Width of side walls. | 0 | +| length | | | 0 | +| mirror_reflec | | Data file containing reflectivities of the reflector surface (TOP). | "" | +| bottom_reflec | | Data file containing reflectivities of the bottom surface (BOTTOM). | "" | +| R_d | | Default reflectivity value to use if no reflectivity file is given. Useful f.i. is one surface is reflecting and the others absorbing. | 1 | +| primary | | If non-zero, the shell is considered a primary reflector, and extends towards negative z. I.e. the entry plane is behind the z=0-plane. If zero, the shell is considered secondary | 1 | +| dalpha | deg | Offset to the alpha angle computed from the focal length. Useful for targeting the modified conical geometry (currently ignored). | 0 | +| waviness | rad | Waviness of the shell reflecting surface. The slope error is assumed to be uniformly distributed in the interval [-waviness:waviness]. | 0 | +| longw | | If non-zero, waviness is 1D and along the shell axis. | 0 | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcxtrace-comps/astrox/Ring_c.comp) for `Ring_c.comp`. + +--- + +*Generated on mcxtrace 3.99.99.* \ No newline at end of file diff --git a/mcxtrace-comps/astrox/Ring_h.md b/mcxtrace-comps/astrox/Ring_h.md new file mode 100644 index 000000000..47fc6f4f3 --- /dev/null +++ b/mcxtrace-comps/astrox/Ring_h.md @@ -0,0 +1,53 @@ +# The `Ring_h` Component + +*McXtrace: Date: Feb. 2017 +Version: 1.1 +Release: McXtrace 1.2 +Origin: DTU Physics, DTU Space + +Stack of conical shells as part of a Wolter optic. Hyperbolic version.* + +## Identification + +- **Site:** +- **Author:** Erik B Knudsen and Desiree D. M. Ferreira +- **Origin:** DTU Physics, DTU Space +- **Date:** Feb. 2016 + +## Description + +```text +A stack of conical shells is simulated. Hyperbolic version. +To intersect the Wolter I plates we take advatage of the azimuthal symmetry and only consider the radial component +of the photon's wavevector. + +Example: Ring_h( pore_th=0, ring_nr=3, Z0=12, yheight=0.83e-3, mirror_reflec="mirror_coating_unity.txt", R_d=0, size_file="ref_design_breaks.txt") +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| **ring_nr** | | | | +| **pore_th** | | | | +| **Z0** | m | distance between intersection plane and the focal spot( essentially the focal length). | | +| **yheight** | m | Height of the pore. (Thus the inner radius is radius_{m,h}-yheight | | +| chamferwidth | m | Width of side walls. | 0 | +| gap | m | gap between intersection with parabolic section and actual plate. | 0 | +| zdepth | | | 0 | +| mirror_reflec | | Data file containing reflectivities of the reflector surface (TOP). | "" | +| bottom_reflec | | Data file containing reflectivities of the bottom surface (BOTTOM). | "" | +| size_file | | | "" | +| R_d | | Default reflectivity value to use if no reflectivity file is given. Useful f.i. is one surface is reflecting and the others absorbing. | 1 | +| waviness | rad | Waviness of the pore reflecting surface. The slope error is assumed to be uniformly distributed in the interval [-waviness:waviness]. | 0 | +| longw | | If non-zero, waviness is 1D and along the pore axis. | 0 | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcxtrace-comps/astrox/Ring_h.comp) for `Ring_h.comp`. + +--- + +*Generated on mcxtrace 3.99.99.* \ No newline at end of file diff --git a/mcxtrace-comps/astrox/Ring_p.md b/mcxtrace-comps/astrox/Ring_p.md new file mode 100644 index 000000000..219cd8c8b --- /dev/null +++ b/mcxtrace-comps/astrox/Ring_p.md @@ -0,0 +1,53 @@ +# The `Ring_p` Component + +*McXtrace: Date: Feb. 2017 +Version: 1.1 +Release: McXtrace 1.2 +Origin: DTU Physics, DTU Space + +Stack of conical shells as part of a Wolter optic. Parabolic version.* + +## Identification + +- **Site:** +- **Author:** Erik B Knudsen and Desiree D. M. Ferreira +- **Origin:** DTU Physics, DTU Space +- **Date:** Feb. 2016 + +## Description + +```text +A stack of conical shells is simulated. Parabolic version. +To intersect the Wolter I plates we take advatage of the azimuthal symmetry and only consider the radial component +of the photon's wavevector. + +Example: Ring_p( pore_th=0, ring_nr=3, Z0=FL, yheight=0.605e-3, mirror_reflec="mirror_coating_unity.txt", R_d=0, size_file="ref_design_breaks.txt") +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| **ring_nr** | | | | +| **pore_th** | | | | +| **Z0** | m | Distance between optics centre plane and focal spot (essentially focal length). | | +| **yheight** | m | Height of the pore. | | +| chamferwidth | m | Width of side walls. | 0 | +| gap | m | Gap between the plate and the intersection plane with the hyperbolic section. | 0 | +| zdepth | | | 0 | +| mirror_reflec | | Data file containing reflectivities of the reflector surface (TOP). | "" | +| bottom_reflec | | Data file containing reflectivities of the bottom surface (BOTTOM). | "" | +| size_file | | | "" | +| R_d | | Default reflectivity value to use if no reflectivity file is given. Useful f.i. is one surface is reflecting and the others absorbing. | 1 | +| waviness | rad | Waviness of the pore reflecting surface. The slope error is assumed to be uniformly distributed in the interval [-waviness:waviness]. | 0 | +| longw | | If non-zero, waviness is 1D and along the pore axis. | 0 | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcxtrace-comps/astrox/Ring_p.comp) for `Ring_p.comp`. + +--- + +*Generated on mcxtrace 3.99.99.* \ No newline at end of file diff --git a/mcxtrace-comps/astrox/Shell_c.md b/mcxtrace-comps/astrox/Shell_c.md new file mode 100644 index 000000000..5b278ba7d --- /dev/null +++ b/mcxtrace-comps/astrox/Shell_c.md @@ -0,0 +1,53 @@ +# The `Shell_c` Component + +*McXtrace: Single conical shell as part of a Wolter optic.* + +## Identification + +- **Site:** +- **Author:** Erik B Knudsen and Desiree D. M. Ferreira +- **Origin:** DTU Physics, DTU Space +- **Date:** Feb. 2016 + +## Description + +```text +A single shell is simulated. The top and bottom are curved cylindrically +azimuthally, whereas they are straight sagitally. The primary parameter specifies whether this is a +primary or secondary mirror. +The azimuthal curvature is defined by the parameter radius. This refers to the top plate of the shell. I.e the top +and bottom plates have radius of curvature and respectively. + +To intersect the Wolter I plates we take advatage of the azimuthal symmetry and only consider the radial component +of the photon's wavevector. + +Example: Shell_c( radius_m=0.535532,Z0=12,yheight=1e-2,length=0.5,primary=0, R_d=1) +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| **radius_m** | m | Ring radius of the upper (reflecting) plate of the shell at the optic centre. | | +| **Z0** | m | Distance between optics centre plane and focal spot (essentially focal length). | | +| **yheight** | m | Height of the shell. | | +| gap | m | Gap between the plate and the intersection plane with the hyperbolic section. (currently ignored) | 0 | +| chamferwidth | m | Width of side walls. | 0 | +| length | | | 0 | +| mirror_reflec | | Data file containing reflectivities of the reflector surface (TOP). | "" | +| bottom_reflec | | Data file containing reflectivities of the bottom surface (BOTTOM). | "" | +| R_d | | Default reflectivity value to use if no reflectivity file is given. Useful f.i. is one surface is reflecting and the others absorbing. | 1 | +| primary | | If non-zero, the shell is considered a primary reflector, and extends towards negative z. I.e. the entry plane is behind the z=0-plane. If zero, the shell is considered secondary | 1 | +| dalpha | deg | Offset to the alpha angle computed from the focal length. Useful for targeting the modified conical geometry (currently ignored). | 0 | +| waviness | rad | Waviness of the shell reflecting surface. The slope error is assumed to be uniformly distributed in the interval [-waviness:waviness]. | 0 | +| longw | | If non-zero, waviness is 1D and along the shell axis. | 0 | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcxtrace-comps/astrox/Shell_c.comp) for `Shell_c.comp`. + +--- + +*Generated on mcxtrace 3.99.99.* \ No newline at end of file diff --git a/mcxtrace-comps/astrox/Shell_h.md b/mcxtrace-comps/astrox/Shell_h.md new file mode 100644 index 000000000..61b1d50bf --- /dev/null +++ b/mcxtrace-comps/astrox/Shell_h.md @@ -0,0 +1,84 @@ +# The `Shell_h` Component + +*McXtrace: Single Pore as part of the Silicon Pore Optics (SPO) as envisioned for the ATHENA+ space telescope.* + +## Identification + +- **Site:** +- **Author:** Erik B Knudsen and Desiree D. M. Ferreira +- **Origin:** DTU Physics, DTU Space +- **Date:** Feb. 2016 + +## Description + +```text +A single shell is simulated. The top and bottom are curved cylindrically +azimuthally, and according to the Wolter I optic lengthwise (sagitally). This is the hyperbolic part. +The azimuthal curvature is defined by the radius parameters. + +To intersect the Wolter I plates we take advantage of the azimuthal symmetry and only consider the radial component +of the photon's wavevector. + +Imperfect mirrors may be modelled using one of 4 models. In all cases the surface normal of the mirror +at the ideal mirror intersection point is perturbed before the exit vector is computed. +1. Longitudinal 1D. A perturbation angle is chosen from a uniform distribution with width waviness. +2. Isotropic 2D. The surface normal is perturbed by choosing an angle on a disc with radius waviness +3. Externally measured/computed data. We interpolate in a data-file consisting of blocks of dtheta/theta +with 1 block per energy. dtheta is a sampled angle offset from the nominal Fresnel grazing angle +theta. +4. Double gaussian. dtheta is chosen from one of two gaussian distributions. Either specular or off-specular, where the +widths (sigmas) are given by the tables in the file "wave_file". If the off-specular case the behaviour is similar +to 2D uniform case. + +In the case of 3, the format of the data file should be: +#e_min=0.1 +#e_max=15 +#e_step=0.01 +#theta_min=0.01 +#theta_max=1.5 +#theta_step=0.01 +#dtheta_min=-0.02 +#dtheta_max=0.02 +#dtheta_step=0.001 +1.0 0.9 0.8 0.75 ... +0.99 0.89 0.79 0.749 ... +... +#block 2 (energy data point 2) +1.0 0.9 0.8 0.75 ... +0.99 0.89 0.79 0.749 ... +... + +I.e. one 2D data block per energy data point where rows represent the steps in nominal incident angle, and columns +represent the sampled granularity of the off-specular scattering. + +Example: Shell_h( radius_m=0.535532, radius_h=0.533113, zdepth=0.5, Z0=FL, yheight=1e-2, R_d=1) +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| **radius_m** | m | Ring radius of the upper (reflecting) plate of the pore at the intersection with the parabolic section. | | +| **radius_h** | m | Ring radius of the upper (reflecting) plate of the pore at the edge closest to the focal point. | | +| **Z0** | m | distance between intersection plane and the focal spot( essentially the focal length). | | +| **yheight** | m | Height of the pore. (Thus the inner radius is radius_{m,h}-yehight | | +| chamferwidth | m | Width of side walls. | 0 | +| gap | m | gap between intersection with parabolic section and actual plate. | 0 | +| zdepth | | | 0 | +| mirror_reflec | | Data file containing reflectivities of the reflector surface (TOP). | "" | +| bottom_reflec | | Data file containing reflectivities of the bottom surface (BOTTOM). | "" | +| wave_file | | | "" | +| R_d | | Default reflectivity value to use if no reflectivity file is given. Useful f.i. is one surface is reflecting and the others absorbing. | 1 | +| wave_model | | Flag to choose waviness model. 1. longitudinal uniform, 2. 2D-uniform, 3. lorentzian sagittal, 4. double gaussian sagittal. See above for details. | 0 | +| waviness | rad | Waviness of the pore reflecting surface. The slope error is assumed to be uniformly distributed in the interval [-waviness:waviness]. | 0 | +| verbose | | If !=0 output extra info during simulation. | 0 | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcxtrace-comps/astrox/Shell_h.comp) for `Shell_h.comp`. + +--- + +*Generated on mcxtrace 3.99.99.* \ No newline at end of file diff --git a/mcxtrace-comps/astrox/Shell_p.md b/mcxtrace-comps/astrox/Shell_p.md new file mode 100644 index 000000000..3bd3b51d0 --- /dev/null +++ b/mcxtrace-comps/astrox/Shell_p.md @@ -0,0 +1,84 @@ +# The `Shell_p` Component + +*McXtrace: Single parabolic shell as part of a Wolter optic.* + +## Identification + +- **Site:** +- **Author:** Erik B Knudsen and Desiree D. M. Ferreira +- **Origin:** DTU Physics, DTU Space +- **Date:** Feb. 2016 + +## Description + +```text +A single shell is simulated. The top and bottom are curved cylindrically +azimuthally. The sagital profile is defined by a parabola, which passes through the radii raidus_m +at z=0, and radius_p at zentry (<0). + +To intersect the Wolter I plates we take advatage of the azimuthal symmetry and only consider the radial component +of the photon's wavevector. + +Imperfect mirrors may be modelled using one of 4 models. In all cases the surface normal of the mirror +at the ideal mirror intersection point is perturbed before the exit vector is computed. +1. Longitudinal 1D. A perturbation angle is chosen from a uniform distribution with width waviness. +2. Isotropic 2D. The surface normal is perturbed by choosing an angle on a disc with radius waviness +3. Externally measured/computed data. We interpolate in a data-file consisting of blocks of dtheta/theta +with 1 block per energy. dtheta is a sampled angle offset from the nominal Fresnel grazing angle +theta. +4. Double gaussian. dtheta is chosen from one of two gaussian distributions. Either specular or off-specular, where the +widths (sigmas) are given by the tables in the file "wave_file". If the off-specular case the behaviour is similar +to 2D uniform case. + +In the case of 3, the format of the data file should be: +#e_min=0.1 +#e_max=15 +#e_step=0.01 +#theta_min=0.01 +#theta_max=1.5 +#theta_step=0.01 +#dtheta_min=-0.02 +#dtheta_max=0.02 +#dtheta_step=0.001 +1.0 0.9 0.8 0.75 ... +0.99 0.89 0.79 0.749 ... +... +#block 2 (energy data point 2) +1.0 0.9 0.8 0.75 ... +0.99 0.89 0.79 0.749 ... +... + +I.e. one 2D data block per energy data point where rows represent the steps in nominal incident angle, and columns +represent the sampled granularity of the off-specular scattering. + +Example: Shell_p( radius_p=0.535532, radius_m=0.533113, zdepth=0.5, Z0=12, yheight=1e-2, R_d=1) +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| **radius_p** | m | Ring radius of the upper (reflecting) plate of the shell at the edge furthest away from the focal point. | | +| **radius_m** | m | Ring radius of the upper (reflecting) plate of the shell at the intersection with the hyperbolic section. | | +| **Z0** | m | Distance between optics centre plane and focal spot (essentially focal length). | | +| **yheight** | m | Height of the shell. | | +| chamferwidth | m | Width of side walls. | 0 | +| gap | m | Gap between the plate and the intersection plane with the hyperbolic section. | 0 | +| zdepth | | | 0 | +| mirror_reflec | | Data file containing reflectivities of the reflector surface (TOP). | "" | +| bottom_reflec | | Data file containing reflectivities of the bottom surface (BOTTOM). | "" | +| wave_file | | | "" | +| R_d | | Default reflectivity value to use if no reflectivity file is given. Useful f.i. is one surface is reflecting and the others absorbing. | 1 | +| wave_model | | Flag to choose waviness model. 1. longitudinal uniform, 2. 2D-uniform, 3. lorentzian sagittal, 4. double gaussian sagittal. See above for details. | 0 | +| waviness | rad | Waviness of the pore reflecting surface. The slope error is assumed to be uniformly distributed in the interval "[-waviness:waviness]". | 0 | +| verbose | | If !=0 output extra info during simulation. | 0 | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcxtrace-comps/astrox/Shell_p.comp) for `Shell_p.comp`. + +--- + +*Generated on mcxtrace 3.99.99.* \ No newline at end of file diff --git a/mcxtrace-comps/astrox/Source_extended.md b/mcxtrace-comps/astrox/Source_extended.md new file mode 100644 index 000000000..0c42d29d3 --- /dev/null +++ b/mcxtrace-comps/astrox/Source_extended.md @@ -0,0 +1,57 @@ +# The `Source_extended` Component + +*McXtrace: Release: McXtrace 1.4 + +A plane source emitting x-rays to emulate a distant extended source, such as a +nebula or galaxy* + +## Identification + +- **Site:** +- **Author:** Arne 'S Jegers +- **Origin:** Technical University of Denmark +- **Date:** May 6, 2019 + +## Description + +```text +A rectangular x-ray source that samples ray intensity from an image, and +deflects the emitted ray to reflect having been emitted from the sampled part +of the extended source. Rays that are sampled from the same point on the image +are collimated, but can be emitted from anywhere on the rectangular source. +The image should be provided as a 2D-ascii table, whose header includes the +following entries: + +w_pixels and h_pixels: The width and height of the image in pixels +x_ref and y_ref: x and y reference values of the FITS image +r_max: The maximum distance from the point (x_ref, y_ref) to any corner of the image +iCD11, iCD12, iCD21 and iCD22: The values of the FITS image's CD matrix +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| spectrum_file | | | NULL | +| yheight | m | Height of rectangle in (x,y,0) plane where x-rays | 0 | +| xwidth | m | Width of rectangle in (x,y,0) plane where x-rays | 0 | +| dist | | | 0 | +| E0 | keV | Mean energy of xrays. | 0 | +| dE | keV | Energy half spread of x-rays (flat or gaussian sigma). | 0 | +| lambda0 | AA | Mean wavelength of x-rays. | 0 | +| dlambda | AA | Wavelength half spread of x-rays. | 0 | +| flux | pht/s | total flux radiated from the source | 0 | +| gauss | 1 | Gaussian (1) or Flat (0) energy/wavelength distribution | 0 | +| incoherent | | Source is fully incoherent | 1 | +| phase | | Set phase to something given. | 0 | +| image_path | string | Path to file containing the heat map of the source | "" | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcxtrace-comps/astrox/Source_extended.comp) for `Source_extended.comp`. + +--- + +*Generated on mcxtrace 3.99.99.* \ No newline at end of file diff --git a/mcxtrace-comps/contrib/Attenuating_mask.md b/mcxtrace-comps/contrib/Attenuating_mask.md new file mode 100644 index 000000000..135c83ca8 --- /dev/null +++ b/mcxtrace-comps/contrib/Attenuating_mask.md @@ -0,0 +1,44 @@ +# The `Attenuating_mask` Component + +*McXtrace: Attenuating_mask* + +## Identification + +- **Site:** +- **Author:** Matteo Busi, Erik B Knudsen +- **Origin:** DTU Physics +- **Date:** November 2017 + +## Description + +```text +This component models a mask of energy dependent attenuation. This consists of a rectangular grid of size +"xwidth*yheight", composed of multiple disks of finite thickness "zdepth" of an attenuating material "att_file", +width "blocks_width" and period "blocks_dist"(i.e. distance between the center of each disk). +If holed_mask mode is turned the model of the component is the opposite, i.e. the mask is composed of an +attenuating slab of finite thickness and of size "xwidth*yheight", with apertures of desired width and period. +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| att_file | ".txt" | File that contains the object information. (Default: "W.txt") | "W.txt" | +| xwidth | m | Horizontal width of the mask. (Default: 1e-1) | 1e-1 | +| yheight | m | Vertical height of the mask. (Default: 1e-1) | 1e-1 | +| zdepth | m | Thickness of the absorbing mask. (Default: 3e-3) | 10e-6 | +| blocks_xwidth | m | Width of the absorbing blocks in the x-direction. (Default: 3e-3) | 1e-3 | +| blocks_xdist | m | Distance between absorbing blocks in the x-direction. (Default: 10e-3) | 2.5e-3 | +| blocks_yheight | m | Height of the absorbing blocks in the y-direction. (Default: 3e-3) | 1e-3 | +| blocks_ydist | m | Distance between absorbing blocks in the y-direction. (Default: 10e-3) | 2.5e-2 | +| holed_mask | 1 | Set to 1 if the mask is a holed grid. (Default: 0) | 0 | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcxtrace-comps/contrib/Attenuating_mask.comp) for `Attenuating_mask.comp`. + +--- + +*Generated on mcxtrace 3.99.99.* \ No newline at end of file diff --git a/mcxtrace-comps/contrib/Bragg_crystal_BC.md b/mcxtrace-comps/contrib/Bragg_crystal_BC.md new file mode 100644 index 000000000..1e1e0f8ef --- /dev/null +++ b/mcxtrace-comps/contrib/Bragg_crystal_BC.md @@ -0,0 +1,79 @@ +# The `Bragg_crystal_BC` Component + +*McXtrace: Perfect, reflecting crystal with common cubic structures (diamond, fcc, or bcc, and others if symmetry form factor multipliers provided explicitly)* + +## Identification + +- **Site:** +- **Author:** Marcus H Mendenhall, NIST +- **Origin:** NIST +- **Date:** May, 2017 + +## Description + +```text +Bragg_crystal_BC.comp is intended to supercede Bragg_Crystal.comp. + +For details see: +The optics of focusing bent-crystal monochromators on X-ray powder diffractometers with application to lattice parameter determination and microstructure analysis, +Marcus H. Mendenhall, David Black and James P. Cline, J. Appl. Cryst. (2019). 52, https://doi.org/10.1107/S1600576719010951 + +Reads atomic formfactors from a data input file. +The Bragg_Crystal code reflects ray in an ideal geometry, does not include surface imperfections or mosaicity + +The crystal code reflects ray in an ideal geometry, i.e. does not include surface imperfections or mosaicity. +The crystal planes from which the reflection is made lies in the X-Z plane on the unbent crystal rotated +by an angle alpha about the Y axis with respect to the crystal surface. + +The crystal itself is set in the X-Z plane positioned such that the long axis of the crystal surface coincides with +the Z-axis, withs normal pointing in the poisitivce Y-direction. + +N.B. The component does not work for rays hitting the back of the monochromator. + +Bragg_crystal_BC.comp is written by Marcus H. Mendenhall, NIST, Gaithersburg, MD, USA +It is based on the full vector math and exact solution of the dispersion relation in +Batterman and Cole, Reviews of Modern Physics 36 number 3, page 681, July 1964 + +This code has been validated against both experimental data +(2 channel-cut 3-bounce Si 440 crystals together in non-dispersive mode, at Cu kalpha) +and against theoretical rocking rocking curves from XOP for Si220 at Sc kalpha and Si440 at Cu kalpha. + +Non-copyright notice: +Contributed by the National Institute of Standards and Technology; not subject to copyright in the United States. +This is not an official contribution, in that the results are in no way certified by NIST. + +Example: Bragg_crystal_BC( length=0.05, width=0.02, V=160.1826, h=1, k=1, l=1, alphay=1) +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| length | m | z depth (length) of the crystal. | 0.05 | +| width | m | x width of the crystal. | 0.02 | +| V | AA^3 | unit cell volume | 160.1826 | +| form_factors | | | "FormFactors.txt" | +| material | | Si, Ge (maybe also GaAs?) | "Si.txt" | +| alphax | | | 0.0 | +| alphay | | | 1.0 | +| alphaz | | | 0.0 | +| R0 | | Reflectivity. Overrides the computed Darwin reflectivity. Probably only useful for debugging. | 0 | +| debye_waller_B | AA^2 | Debye-Waller temperature factor, M=B*(sin(theta)/lambda)^2*(2/3), default=silicon at room temp. | 0.4632 | +| crystal_type | | 1 => Mx_crystal_explicit: provide explicit real and imaginary form factor multipliers structure_factor_scale_r, structure_factor_scale_i; 2 => Mx_crystal_diamond: diamond; 3 => Mx_crystal_fcc: fcc; 4 => Mx_crystal_fcc: bcc | 1 | +| h | | Miller index of reflection | 1 | +| k | | Miller index of reflection | 1 | +| l | | Miller index of reflection | 1 | +| structure_factor_scale_r | | | 0.0 | +| structure_factor_scale_i | | | 0.0 | +| verbose | | if non-zero: Output more information (warnings and messages) to the console. | 0 | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcxtrace-comps/contrib/Bragg_crystal_BC.comp) for `Bragg_crystal_BC.comp`. +- material datafile obtained from http://physics.nist.gov/cgi-bin/ffast/ffast.pl + +--- + +*Generated on mcxtrace 3.99.99.* \ No newline at end of file diff --git a/mcxtrace-comps/contrib/Bragg_crystal_bent_BC.md b/mcxtrace-comps/contrib/Bragg_crystal_bent_BC.md new file mode 100644 index 000000000..331aaa25a --- /dev/null +++ b/mcxtrace-comps/contrib/Bragg_crystal_bent_BC.md @@ -0,0 +1,88 @@ +# The `Bragg_crystal_bent_BC` Component + +*McXtrace: Bent, perfect crystal with common cubic structures (diamond, fcc, or bcc, and others if symmetry form factor multipliers provided explicitly)* + +## Identification + +- **Site:** +- **Author:** Marcus H Mendenhall, NIST +- **Origin:** NIST +- **Date:** Dec 2016 + +## Description + +```text +Bragg_crystal_bent_BC.com is intended to supercede Bragg_Crystal_bent.comp +For details see: +The optics of focusing bent-crystal monochromators on X-ray powder diffractometers with application to lattice parameter determination and microstructure analysis, +Marcus H. Mendenhall,* David Black and James P. Cline, J. Appl. Cryst. (2019). 52, https://doi.org/10.1107/S1600576719010951 + +Reads atomic formfactors from a data input file. +The Bragg_Crystal code reflects ray in an ideal geometry, does not include surface imperfections or mosaicity + +The crystal code reflects ray in an ideal geometry, i.e. does not include surface imperfections or mosaicity. +The crystal planes from which the reflection is made lies in the X-Z plane on the unbent crystal rotated +by an angle alpha about the Y axis with respect to the crystal surface. + +The crystal itself is set in the X-Z plane positioned such that the long axis of the crystal surface coincides with +the Z-axis, withs normal pointing in the poisitivce Y-direction. + +The asummetry angle alpha is defined so that positive alpha reduces the Bragg angle to the plane i.e. alpha=Thetain grazes the planes. +if alpha!=0, one should restrict to rays which have small kx values, since otherwise the alpha rotation is not +around the diffraction axis. + +The mirror is positioned such that the a-axis of the mirror ellipsoid is on the +z-axis, the b-axis is along the y-axis and the c is along the x-axis. +The reference point of the mirror is the ellipsoid centre, offset by one half-axis along the y-axis. +(See the component manual for a drawing). + +Notation follows Tadashi Matsushita and Hiro-O Hashizume, X-RAY MONOCHROMATORS. Handbook on Synchrotron Radiation,North-Holland Publishing Company, 1:263–274, 1983. + +NOTE: elliptical coordinate code and documentation taken from Mirror_elliptic.comp distributed in McXtrace v1.2 +written by: Erik Knudsen. However, the coordinates are rotated to be consistent with Perfect_Crystal.comp and NIST_Perfect_Crystal.comp +Idealized elliptic mirror with surface ellipse and lattice ellipses independent, to allow construction of +Johansson optics, for example. + +Non-copyright notice: +Contributed by the National Institute of Standards and Technology; not subject to copyright in the United States. +This is not an official contribution, in that the results are in no way certified by NIST. + +Example: Bragg_crystal_bent_BC( length=0.05, width=0.02, V=160.1826, h=1, k=1, l=1, alpha=0) +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| x_a | m | 1st short half axis (along x). Commonly set to zero, which really implies infinite value, so crystal is an elliptic cylinder. | 0 | +| y_b | m | 2nd short half axis (along y), which is also the presumed near-normal direction, reflection near the y-z plane. | 1.0 | +| z_c | m | Long half axis (along z). Commonly a=0. b=c, which creates a circular cylindrical surface. | 1.0 | +| lattice_x_a | m | Curvature matrix component around a for underlying lattice, for bent/ground/rebent crystals | 0 | +| lattice_y_b | m | Curvature matrix component around b for underlying lattice, for bent/ground/rebent crystals | 1.0 | +| lattice_z_c | m | curvature matrix component around c for underlying lattice, for bent/ground/rebent crystals THERE HAS BEEN NO TESTING for the case in which lattice_x_a != x_a. | 1.0 | +| length | m | z depth (length) of the crystal. | 0.05 | +| width | m | x width of the crystal. | 0.02 | +| V | AA^3 | unit cell volume | 160.1826 | +| form_factors | | | "FormFactors.txt" | +| material | | Si, Ge (maybe also GaAs?) | "Si.txt" | +| alpha | rad | Asymmetry angle (alpha=0 for symmetric reflection, i.e. the Bragg planes are parallel to the crystal surface) | 0.0 | +| R0 | | Reflectivity. Overrides the computed Darwin reflectivity. Probably only useful for debugging. | 0 | +| debye_waller_B | AA^2 | Debye-Waller temperature factor, M=B*(sin(theta)/lambda)^2*(2/3), default=silicon at room temp. | 0.4632 | +| crystal_type | | 1 => Mx_crystal_explicit: provide explicit real and imaginary form factor multipliers structure_factor_scale_r, structure_factor_scale_i; 2 => Mx_crystal_diamond: diamond; 3 => Mx_crystal_fcc: fcc; 4 => Mx_crystal_fcc: bcc | 1 | +| h | | Miller index of reflection | 1 | +| k | | Miller index of reflection | 1 | +| l | | Miller index of reflection | 1 | +| structure_factor_scale_r | | | 0.0 | +| structure_factor_scale_i | | | 0.0 | +| verbose | | if non-zero: Output more information (warnings and messages) to the console. | 0 | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcxtrace-comps/contrib/Bragg_crystal_bent_BC.comp) for `Bragg_crystal_bent_BC.comp`. +- material datafile obtained from http://physics.nist.gov/cgi-bin/ffast/ffast.pl + +--- + +*Generated on mcxtrace 3.99.99.* \ No newline at end of file diff --git a/mcxtrace-comps/contrib/Bragg_crystal_simple.md b/mcxtrace-comps/contrib/Bragg_crystal_simple.md new file mode 100644 index 000000000..aaef9d041 --- /dev/null +++ b/mcxtrace-comps/contrib/Bragg_crystal_simple.md @@ -0,0 +1,45 @@ +# The `Bragg_crystal_simple` Component + +*McXtrace: Perfect Bragg reflecting slab* + +## Identification + +- **Site:** +- **Author:** Jose I. Robledo +- **Origin:** FaMAF - UNC, Argentina +- **Date:** February 2016 + +## Description + +```text +Rectangle of matter perfectly reflecting the incident X-ray beam +that fulfills Bragg's law for a set of scattering vectors in the +vicinity of the theoretical Q given a d-spacing. +The rectangle is in the x-y plane. + +Example: Bragg_crystal_simple( yheight=0.05, xwidth=0.02, DM=3.1356, err_Q= 0.000075, r0=1.0) +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| xmin | | | 1.0 | +| xmax | | | 1.0 | +| ymin | | | 1.0 | +| ymax | | | 1.0 | +| xwidth | m | Width in the x direction | 0.0 | +| yheight | m | Height in the y direction | 0.0 | +| r0 | | Maximum reflectivity | 1 | +| DM | | [AA⁻1] d-spacing of the crystal | 0 | +| err_Q | | dQ/Q relative error of the modulus of Q vector. Approximates the Darwin width of the crystal. | 0.0001 | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcxtrace-comps/contrib/Bragg_crystal_simple.comp) for `Bragg_crystal_simple.comp`. + +--- + +*Generated on mcxtrace 3.99.99.* \ No newline at end of file diff --git a/mcxtrace-comps/contrib/Detector_pn.md b/mcxtrace-comps/contrib/Detector_pn.md new file mode 100644 index 000000000..0867b14b6 --- /dev/null +++ b/mcxtrace-comps/contrib/Detector_pn.md @@ -0,0 +1,45 @@ +# The `Detector_pn` Component + +*McXtrace: Version: McXtrace 1.2 + +Block of a attenuating material* + +## Identification + +- **Site:** +- **Author:** Maria Thomsen (mariath@fys.ku.dk) +- **Origin:** NBI, KU +- **Date:** Jan 24, 2011 + +## Description + +```text +A scintillator detector model taking photoabsorption efficiency into account. As such it consitututes a +more physical version of the PSD_monitor. Only direct absorption is taken into account. + +Example: Detector_pn(restore_xray=restore_flag,filename="detector_Si", material_datafile="Si.txt", xwidth=1e-2, yheight=1e-2,zdepth=1e-5) +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| material_datafile | str | File where the material parameters for the scintillator may be found. Format is similar to what may be found off the NIST website. | "Be.txt" | +| nx | m | Number of pixel columns. | 90 | +| ny | m | Number of pixel rows. | 90 | +| filename | str | Name of file in which to store the detector image. | "" | +| restore_xray | | If set, the monitor does not influence the xray state. | 0 | +| xwidth | m | Width of block. | 1e-2 | +| yheight | m | Height of block. | 1e-2 | +| zdepth | m | Thickness of block. | 1e-6 | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcxtrace-comps/contrib/Detector_pn.comp) for `Detector_pn.comp`. +- material datafile obtained from http://physics.nist.gov/cgi-bin/ffast/ffast.pl + +--- + +*Generated on mcxtrace 3.99.99.* \ No newline at end of file diff --git a/mcxtrace-comps/contrib/Laue_crystal_BC.md b/mcxtrace-comps/contrib/Laue_crystal_BC.md new file mode 100644 index 000000000..a984dc37d --- /dev/null +++ b/mcxtrace-comps/contrib/Laue_crystal_BC.md @@ -0,0 +1,76 @@ +# The `Laue_crystal_BC` Component + +*McXtrace: Perfect, Laue crystal with common cubic structures (diamond, fcc, or bcc, and others if symmetry form factor multipliers provided explicitly)* + +## Identification + +- **Site:** +- **Author:** Marcus H Mendenhall, NIST +- **Origin:** NIST +- **Date:** June, 2017 + +## Description + +```text +NIST_Laue_crystal_BC.comp is written by Marcus H. Mendenhall, NIST, Gaithersburg, MD, USA +It is based on the full vector math and exact solution of the dispersion relation in +Batterman and Cole, Reviews of Modern Physics 36 number 3, page 681, July 1964 +Perfect crystal with common cubic structures (diamond, fcc, or bcc, and others if symmetry form factor multipliers provided explicitly) + +Reads atomic form factors from a data input file. +The Laue_Crystal code reflects rays in an ideal geometry, does not include surface imperfections or mosaicity. + +The crystal is positioned such that the long axis of the crystal surface coincides with +z-axis and the outer normal to the crystal surface is along +y. + +The ratio of the transmitted beam and forward-diffracted Borrman-effect beam is a hack. The sum of the +two is exactly right, but the actual ratio depends critically on geometry, and I just put in a wild estimate +to allow one to demonstrate what the Borrmann effect looks like. If this is turned on, the displacement of the +transmitted beam and forward diffracted beam at the back side of the crystal will be correctly computed. +This displacement is only exact for symmetrical Laue; asymmetrical computation requires more effort, +and is probably not worth it. +The sampling of these processes are controlled by the 3 variables transmission_sampling, forward_diffraction_sampling, +and Laue_sampling. Since 99% of uses of this will have the transmitted beam turned off, and use Laue diffraction mode, +the values should be just 0,0,1. If the general behavior of the transmitted beams +is interesting, use 1,1,1 which samples all beams equally. Results weights are adjusted for this, +so computed intensities won't be affected. + +Non-copyright notice: +Contributed by the National Institute of Standards and Technology; not subject to copyright in the United States. +This is not an official contribution, in that the results are in no way certified by NIST. +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| length | m | zdepth (length) of the crystal. | 0.05 | +| width | m | width of the crystal. | 0.02 | +| thickness | m | thickness of crystal (along y-axis, the surface normal) | 1e-4 | +| V | AA^3 | unit cell volume | 160.1826 | +| form_factors | | "FormFactors.txt" from McXtrace install, usually | "FormFactors.txt" | +| material | | Si ("Si.txt"), Ge ("Ge.txt") | "Si.txt" | +| alphax | | x component of normal (unit vector) to crystal planes. Vector is usually [0,0,1] for symmetric Laue. Crystal surface itself has normal [0,1,0]. | 0.0 | +| alphay | | y component of normal (unit vector) to crystal planes. | 0.0 | +| alphaz | | z component of normal (unit vector) to crystal planes. | 1.0 | +| debye_waller_B | AA^2 | Debye-Waller temperature factor, M=B*(sin(theta)/lambda)^2*(2/3), default=silicon at room temp, 0.4632 | 0.4632 | +| crystal_type | | 1 => Mx_crystal_explicit: provide explicit real and imaginary form factor multipliers structure_factor_scale_r, structure_factor_scale_i, | 1 | +| h | | 1st Miller index of reflection | 1 | +| k | | 2nd Miller index of reflection | 1 | +| l | | 3rd Miller index of reflection | 1 | +| structure_factor_scale_r | | real part of complex explicit override of structure factor multiplier for crystal structure if Bragg_crystal_explicit | 0.0 | +| structure_factor_scale_i | | imaginary part of complex explicit override of structure factor multiplier for crystal structure if Bragg_crystal_explicit | 0.0 | +| transmission_sampling | | enable sampling of transmission diffraction mode. | 1.0 | +| forward_diffraction_sampling | | enable sampling of forward diffraftion mode. | 1.0 | +| laue_sampling | | enable sampling of Laue diffraction mode. | 1.0 | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcxtrace-comps/contrib/Laue_crystal_BC.comp) for `Laue_crystal_BC.comp`. +- material datafile obtained from http://physics.nist.gov/cgi-bin/ffast/ffast.pl + +--- + +*Generated on mcxtrace 3.99.99.* \ No newline at end of file diff --git a/mcxtrace-comps/contrib/Mirror_toroid_pothole.md b/mcxtrace-comps/contrib/Mirror_toroid_pothole.md new file mode 100644 index 000000000..366ce12be --- /dev/null +++ b/mcxtrace-comps/contrib/Mirror_toroid_pothole.md @@ -0,0 +1,45 @@ +# The `Mirror_toroid_pothole` Component + +*McXtrace: Toroidal shape mirror (in XZ)* + +## Identification + +- **Site:** +- **Author:** Erik B Knudsen +- **Origin:** DTU Physics +- **Date:** Jul 2016 + +## Description + +```text +This is an implementation of a toroidal mirror which may be curved in two dimensions. +To avoid solving quartic equations, the intersection is computed as a combination of +two intersections. First, the ray is intersected with a cylinder to catch (almost) the small +radius curvature. Secondly, the ray is the intersected with an ellipsoid, with the curvatures +matching that of the torus. + +The first incarnation (Mirror_toroid.comp) the mirror curves outwards (a bump), but this incarnation (Mirror_toroid_pothole) curves inwards (a pothole). + +Example: Mirror_toroid_pothole( radius=0.1, radius_o=1000, xwidth=5e-2, zdepth=2e-1,R0=1, coating="") +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| zdepth | m | Length of mirror. | 0.1 | +| xwidth | m | Width of mirror. | 0.01 | +| **radius** | m | Curvature radius | | +| **radius_o** | m | Curvature radius, outwards | | +| R0 | 1 | Reflectivity of mirror. | 0 | +| coating | str | Datafile containing either mirror material constants or reflectivity numbers. | "" | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcxtrace-comps/contrib/Mirror_toroid_pothole.comp) for `Mirror_toroid_pothole.comp`. + +--- + +*Generated on mcxtrace 3.99.99.* \ No newline at end of file diff --git a/mcxtrace-comps/contrib/PSD_monitor_rad.md b/mcxtrace-comps/contrib/PSD_monitor_rad.md new file mode 100644 index 000000000..efc977c30 --- /dev/null +++ b/mcxtrace-comps/contrib/PSD_monitor_rad.md @@ -0,0 +1,40 @@ +# The `PSD_monitor_rad` Component + +*McXtrace: Position-sensitive monitor with radially averaging.* + +## Identification + +- **Site:** +- **Author:** Henrich Frielinghaus +- **Origin:** FZ-Juelich/FRJ-2/IFF/KWS-2 +- **Date:** Sept 2004 + +## Description + +```text +Radial monitor that allows for radial averaging. +Comment: The intensity is given as two files: +1) a radial sum +2) a radial average (i.e. intensity per area) + +Example: PSD_monitor_rad(rmax=0.2, nr=100, filename="Output.psd", filename_av="Output_av.psd") +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| nr | 1 | Number of concentric circles | 100 | +| filename | text | Name of file in which to store the detector image | 0 | +| filename_av | text | Name of file in which to store the averaged detector image | 0 | +| rmax | m | Outer radius of detector | 0.2 | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcxtrace-comps/contrib/PSD_monitor_rad.comp) for `PSD_monitor_rad.comp`. + +--- + +*Generated on mcxtrace 3.99.99.* \ No newline at end of file diff --git a/mcxtrace-comps/contrib/SAXSCurve.md b/mcxtrace-comps/contrib/SAXSCurve.md new file mode 100644 index 000000000..d3fce008d --- /dev/null +++ b/mcxtrace-comps/contrib/SAXSCurve.md @@ -0,0 +1,44 @@ +# The `SAXSCurve` Component + +*McXtrace: A component mimicking the scattering from a given I(q)-curve by using +linear interpolation between the given points.* + +## Identification + +- **Site:** +- **Author:** Martin Cramer Pedersen (mcpe@nbi.dk) +- **Origin:** KU-Science +- **Date:** May 2, 2012 + +## Description + +```text +A box-shaped component simulating the scattering from any given I(q)-curve. +The component uses linear interpolation to generate the points necessary to +compute the scattering of any given photon. +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| DeltaRho | cm/AA^3 | Excess scattering length density of the particles. | 1.0e-14 | +| Volume | AA^3 | Volume of the particles. | 10000.0 | +| Concentration | mM | Concentration of sample. | 0.01 | +| AbsorptionCrosssection | 1/m | Absorption cross section of the sample. | 0.0 | +| **xwidth** | m | Dimension of component in the x-direction. | | +| **yheight** | m | Dimension of component in the y-direction. | | +| **zdepth** | m | Dimension of component in the z-direction. | | +| **SampleToDetectorDistance** | m | Distance from sample to detector (for focusing the scattered x-rays). | | +| **DetectorRadius** | m | Radius of the detector (for focusing the scattered x-rays). | | +| FileWithCurve | str | Datafile with the given I(q). | "Curve.dat" | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcxtrace-comps/contrib/SAXSCurve.comp) for `SAXSCurve.comp`. + +--- + +*Generated on mcxtrace 3.99.99.* \ No newline at end of file diff --git a/mcxtrace-comps/contrib/SAXSCylinders.md b/mcxtrace-comps/contrib/SAXSCylinders.md new file mode 100644 index 000000000..e88a2b594 --- /dev/null +++ b/mcxtrace-comps/contrib/SAXSCylinders.md @@ -0,0 +1,44 @@ +# The `SAXSCylinders` Component + +*McXtrace: A sample of monodisperse cylindrical particles in solution.* + +## Identification + +- **Site:** +- **Author:** Martin Cramer Pedersen (mcpe@nbi.dk) +- **Origin:** KU-Science +- **Date:** May 2, 2012 + +## Description + +```text +A component simulating the scattering from a box-shaped, thin solution +of monodisperse, cylindrical particles. + +Example: SAXSCylinders( xwidth = 0.01, yheight = 0.01, zdepth = 0.01, SampleToDetectorDistance = 0.48, DetectorRadius = 0.1 ) +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| R | AA | Semiaxis of the cross section of the cylinder. | 40.0 | +| Height | AA | Height of the cylinder. | 100.0 | +| Concentration | mM | Concentration of sample. | 0.01 | +| DeltaRho | cm/AA^3 | Excess scattering length density of the particles. | 1.0e-14 | +| AbsorptionCrosssection | 1/m | Absorption cross section of the sample. | 0.0 | +| **xwidth** | m | Dimension of component in the x-direction. | | +| **yheight** | m | Dimension of component in the y-direction. | | +| **zdepth** | m | Dimension of component in the z-direction. | | +| **SampleToDetectorDistance** | m | Distance from sample to detector (for focusing the scattered x-rays). | | +| **DetectorRadius** | m | Radius of the detector (for focusing the scattered x-rays). | | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcxtrace-comps/contrib/SAXSCylinders.comp) for `SAXSCylinders.comp`. + +--- + +*Generated on mcxtrace 3.99.99.* \ No newline at end of file diff --git a/mcxtrace-comps/contrib/SAXSEllipticCylinders.md b/mcxtrace-comps/contrib/SAXSEllipticCylinders.md new file mode 100644 index 000000000..1bfa736aa --- /dev/null +++ b/mcxtrace-comps/contrib/SAXSEllipticCylinders.md @@ -0,0 +1,46 @@ +# The `SAXSEllipticCylinders` Component + +*McXtrace: A sample of monodisperse cylindrical particles with elliptic cross section in +solution.* + +## Identification + +- **Site:** +- **Author:** Martin Cramer Pedersen (mcpe@nbi.dk) +- **Origin:** KU-Science +- **Date:** May 2, 2012 + +## Description + +```text +A component simulating the scattering from a box-shaped, thin solution +of monodisperse, cylindrical particles with elliptic cross section. + +Example: SAXSEllipticCylinders( xwidth = 0.01, yheight = 0.01, zdepth = 0.01, SampleToDetectorDistance = 0.48, DetectorRadius = 0.1 ) +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| R1 | AA | First semiaxis of the cross section of the elliptic cylinder. | 20.0 | +| R2 | AA | Second semiaxis of the cross section of the elliptic cylinder. | 40.0 | +| Height | AA | Height of the cylinder. | 100.0 | +| Concentration | mM | Concentration of sample. | 0.01 | +| DeltaRho | cm/AA^3 | Excess scattering length density of the particles. | 1.0e-14 | +| AbsorptionCrosssection | 1/m | Absorption cross section of the sample. | 0.0 | +| **xwidth** | m | Dimension of component in the x-direction. | | +| **yheight** | m | Dimension of component in the y-direction. | | +| **zdepth** | m | Dimension of component in the z-direction. | | +| **SampleToDetectorDistance** | m | Distance from sample to detector (for focusing the scattered x-rays). | | +| **DetectorRadius** | m | Radius of the detector (for focusing the scattered x-rays). | | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcxtrace-comps/contrib/SAXSEllipticCylinders.comp) for `SAXSEllipticCylinders.comp`. + +--- + +*Generated on mcxtrace 3.99.99.* \ No newline at end of file diff --git a/mcxtrace-comps/contrib/SAXSLiposomes.md b/mcxtrace-comps/contrib/SAXSLiposomes.md new file mode 100644 index 000000000..f4dac73e2 --- /dev/null +++ b/mcxtrace-comps/contrib/SAXSLiposomes.md @@ -0,0 +1,51 @@ +# The `SAXSLiposomes` Component + +*McXtrace: A sample of polydisperse liposomes in solution (water).* + +## Identification + +- **Site:** +- **Author:** Martin Cramer Pedersen (mcpe@nbi.dk) +- **Origin:** KU-Science +- **Date:** May 2, 2012 + +## Description + +```text +A component simulating the scattering from a box-shaped, thin solution (water) +of liposomes described by a pentuple-shell model. + +Example: SAXSLiposomes( xwidth = 0.01, yheight = 0.01, zdepth = 0.01, SampleToDetectorDistance = 0.48, DetectorRadius = 0.1 ) +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| Radius | AA | Average thickness of the liposomes. | 800.0 | +| Thickness | AA | Thickness of the bilayer. | 38.89 | +| SigmaRadius | | Relative Gaussian deviation of the radius in the distribution of liposomes. | 0.20 | +| nRadius | | Number of bins in Radius for polydisperse distribution. | 100 | +| VolumeOfHeadgroup | AA^3 | Volume of one lipid headgroup - default is POPC. | 319.0 | +| VolumeOfCH2Tail | AA^3 | Volume of the CH2-chains of one lipid - default is POPC. | 818.8 | +| VolumeOfCH3Tail | AA^3 | Volume of the CH3-tails of one lipid - default is POPC. | 108.6 | +| ScatteringLengthOfHeadgroup | cm | Scattering length of one lipid headgroup - default is POPC. | 4.62E-11 | +| ScatteringLengthOfCH2Tail | cm | Scattering length of the CH2-chains of one lipid - default is POPC. | 6.71E-11 | +| ScatteringLengthOfCH3Tail | cm | Scattering length of the CH3-tails of one lipid - default is POPC. | 5.08E-12 | +| Concentration | mM | Concentration of sample. | 0.01 | +| AbsorptionCrosssection | 1/m | Absorption cross section of the sample. | 0.0 | +| **xwidth** | m | Dimension of component in the x-direction. | | +| **yheight** | m | Dimension of component in the y-direction. | | +| **zdepth** | m | Dimension of component in the z-direction. | | +| **SampleToDetectorDistance** | m | Distance from sample to detector (for focusing the scattered x-rays). | | +| **DetectorRadius** | m | Radius of the detector (for focusing the scattered x-rays). | | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcxtrace-comps/contrib/SAXSLiposomes.comp) for `SAXSLiposomes.comp`. + +--- + +*Generated on mcxtrace 3.99.99.* \ No newline at end of file diff --git a/mcxtrace-comps/contrib/SAXSNanodiscs.md b/mcxtrace-comps/contrib/SAXSNanodiscs.md new file mode 100644 index 000000000..5e3adff44 --- /dev/null +++ b/mcxtrace-comps/contrib/SAXSNanodiscs.md @@ -0,0 +1,54 @@ +# The `SAXSNanodiscs` Component + +*McXtrace: A sample of monodisperse phospholipid bilayer nanodiscs in solution (water).* + +## Identification + +- **Site:** +- **Author:** Martin Cramer Pedersen (mcpe@nbi.dk) +- **Origin:** KU-Science +- **Date:** May 2, 2012 + +## Description + +```text +A component simulating the scattering from a box-shaped, thin solution (water) +of monodisperse phospholipid bilayer nanodiscs. + +Example: SAXSNanodiscs( xwidth = 0.01, yheight = 0.01, zdepth = 0.01, SampleToDetectorDistance = 0.48, DetectorRadius = 0.1 ) +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| AxisRatio | | Axis ratio of the bilayer patch. | 1.4 | +| NumberOfLipids | | Number of lipids per nanodisc. | 130.0 | +| AreaPerLipidHeadgroup | AA^2 | Area per lipid headgroup - default is POPC. | 65.0 | +| HeightOfMSP | AA | Height of the belt protein - default is MSP1D1. | 24.0 | +| VolumeOfOneMSP | AA^3 | Volume of one belt protein - default is MSP1D1. | 26296.5 | +| VolumeOfHeadgroup | AA^3 | Volume of one lipid headgroup - default is POPC. | 319.0 | +| VolumeOfCH2Tail | AA^3 | Volume of the CH2-chains of one lipid - default is POPC. | 818.8 | +| VolumeOfCH3Tail | AA^3 | Volume of the CH3-tails of one lipid - default is POPC. | 108.6 | +| ScatteringLengthOfOneMSP | cm | Scattering length of one belt protein - default is MSP1D1. | 3.34E-9 | +| ScatteringLengthOfHeadgroup | cm | Scattering length of one lipid headgroup - default is POPC. | 4.62E-11 | +| ScatteringLengthOfCH2Tail | cm | Scattering length of the CH2-chains of one lipid - default is POPC. | 6.71E-11 | +| ScatteringLengthOfCH3Tail | cm | Scattering length of the CH3-tails of one lipid - default is POPC. | 5.08E-12 | +| Roughness | | Factor used to smear the interfaces of the nanodisc. | 3.5 | +| Concentration | mM | Concentration of sample. | 0.01 | +| AbsorptionCrosssection | 1/m | Absorption cross section of the sample. | 0.0 | +| **xwidth** | m | Dimension of component in the x-direction. | | +| **yheight** | m | Dimension of component in the y-direction. | | +| **zdepth** | m | Dimension of component in the z-direction. | | +| **SampleToDetectorDistance** | m | Distance from sample to detector (for focusing the scattered x-rays). | | +| **DetectorRadius** | m | Radius of the detector (for focusing the scattered x-rays). | | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcxtrace-comps/contrib/SAXSNanodiscs.comp) for `SAXSNanodiscs.comp`. + +--- + +*Generated on mcxtrace 3.99.99.* \ No newline at end of file diff --git a/mcxtrace-comps/contrib/SAXSNanodiscsFast.md b/mcxtrace-comps/contrib/SAXSNanodiscsFast.md new file mode 100644 index 000000000..bcf2e95d8 --- /dev/null +++ b/mcxtrace-comps/contrib/SAXSNanodiscsFast.md @@ -0,0 +1,60 @@ +# The `SAXSNanodiscsFast` Component + +*McXtrace: Release: McXtrace 1.0 + +A sample of monodisperse phospholipid bilayer nanodiscs in solution (water).* + +## Identification + +- **Site:** +- **Author:** Martin Cramer Pedersen (mcpe@nbi.dk) +- **Origin:** KU-Science +- **Date:** May 2, 2012 + +## Description + +```text +A component very similar to SAXSNanodiscs.comp - however, the scattering +profile is only computed once, and linear interpolation is then used to +simulate the instrument. + +Example: SAXSNanodiscsFast( xwidth = 0.01, yheight = 0.01, zdepth = 0.01, SampleToDetectorDistance = 0.48, DetectorRadius = 0.1 ) +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| AxisRatio | | Axis ratio of the bilayer patch. | 1.4 | +| NumberOfLipids | | Number of lipids per nanodisc. | 130.0 | +| AreaPerLipidHeadgroup | AA^2 | Area per lipid headgroup - default is POPC. | 65.0 | +| HeightOfMSP | AA | Height of the belt protein - default is MSP1D1. | 24.0 | +| VolumeOfOneMSP | AA^3 | Volume of one belt protein - default is MSP1D1. | 26296.5 | +| VolumeOfHeadgroup | AA^3 | Volume of one lipid headgroup - default is POPC. | 319.0 | +| VolumeOfCH2Tail | AA^3 | Volume of the CH2-chains of one lipid - default is POPC. | 818.8 | +| VolumeOfCH3Tail | AA^3 | Volume of the CH3-tails of one lipid - default is POPC. | 108.6 | +| ScatteringLengthOfOneMSP | cm | Scattering length of one belt protein - default is MSP1D1. | 3.34E-9 | +| ScatteringLengthOfHeadgroup | cm | Scattering length of one lipid headgroup - default is POPC. | 4.62E-11 | +| ScatteringLengthOfCH2Tail | cm | Scattering length of the CH2-chains of one lipid - default is POPC. | 6.71E-11 | +| ScatteringLengthOfCH3Tail | cm | Scattering length of the CH3-tails of one lipid - default is POPC. | 5.08E-12 | +| Roughness | | Factor used to smear the interfaces of the nanodisc. | 3.5 | +| Concentration | mM | Concentration of sample. | 0.01 | +| AbsorptionCrosssection | 1/m | Absorption cross section of the sample. | 0.0 | +| **xwidth** | m | Dimension of component in the x-direction. | | +| **yheight** | m | Dimension of component in the y-direction. | | +| **zdepth** | m | Dimension of component in the z-direction. | | +| **SampleToDetectorDistance** | m | Distance from sample to detector (for focusing the scattered x-rays). | | +| **DetectorRadius** | m | Radius of the detector (for focusing the scattered x-rays). | | +| qMin | AA^-1 | Lowest q-value, for which a point is generated in the scattering profile | 0.001 | +| qMax | AA^-1 | Highest q-value, for which a point is generated in the scattering profile | 1.0 | +| NumberOfQBins | | Number of points generated in inital scattering profile. | 200 | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcxtrace-comps/contrib/SAXSNanodiscsFast.comp) for `SAXSNanodiscsFast.comp`. + +--- + +*Generated on mcxtrace 3.99.99.* \ No newline at end of file diff --git a/mcxtrace-comps/contrib/SAXSNanodiscsWithTags.md b/mcxtrace-comps/contrib/SAXSNanodiscsWithTags.md new file mode 100644 index 000000000..8d79df322 --- /dev/null +++ b/mcxtrace-comps/contrib/SAXSNanodiscsWithTags.md @@ -0,0 +1,59 @@ +# The `SAXSNanodiscsWithTags` Component + +*McXtrace: A sample of monodisperse phospholipid bilayer nanodiscs in solution (water) - with +histidine tag still on the belt proteins.* + +## Identification + +- **Site:** +- **Author:** Martin Cramer Pedersen (mcpe@nbi.dk) +- **Origin:** KU-Science +- **Date:** May 2, 2012 + +## Description + +```text +A component simulating the scattering from a box-shaped, thin solution (water) +of monodisperse phospholipid bilayer nanodiscs - with histidine tags still +on the belt proteins. + +Example: SAXSNanodiscsWithTags( xwidth = 0.01, yheight = 0.01, zdepth = 0.01, SampleToDetectorDistance = 0.48, DetectorRadius = 0.1 ) +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| AxisRatio | | Axis ratio of the bilayer patch. | 1.4 | +| NumberOfLipids | | Number of lipids per nanodisc. | 130.0 | +| AreaPerLipidHeadgroup | AA^2 | Area per lipid headgroup - default is POPC. | 65.0 | +| HeightOfMSP | AA | Height of the belt protein - default is MSP1D1. | 24.0 | +| RadiusOfGyrationForHisTag | AA | Radius of gyration for the his-tag. | 10.0 | +| VolumeOfOneMSP | AA^3 | Volume of one belt protein - default is MSP1D1. | 26296.5 | +| VolumeOfHeadgroup | AA^3 | Volume of one lipid headgroup - default is POPC. | 319.0 | +| VolumeOfCH2Tail | AA^3 | Volume of the CH2-chains of one lipid - default is POPC. | 818.8 | +| VolumeOfCH3Tail | AA^3 | Volume of the CH3-tails of one lipid - default is POPC. | 108.6 | +| VolumeOfOneHisTag | AA^3 | Volume of one his-tag. | 2987.3 | +| ScatteringLengthOfOneMSP | cm | Scattering length of one belt protein - default is MSP1D1. | 3.34E-9 | +| ScatteringLengthOfHeadgroup | cm | Scattering length of one lipid headgroup - default is POPC. | 4.62E-11 | +| ScatteringLengthOfCH2Tail | cm | Scattering length of the CH2-chains of one lipid - default is POPC. | 6.71E-11 | +| ScatteringLengthOfCH3Tail | cm | Scattering length of the CH3-tails of one lipid - default is POPC. | 5.08E-12 | +| ScatteringLengthOfOneHisTag | | | 3.89E-10 | +| Roughness | | Factor used to smear the interfaces of the nanodisc. | 3.5 | +| Concentration | mM | Concentration of sample. | 0.01 | +| AbsorptionCrosssection | 1/m | Absorption cross section of the sample. | 0.0 | +| **xwidth** | m | Dimension of component in the x-direction. | | +| **yheight** | m | Dimension of component in the y-direction. | | +| **zdepth** | m | Dimension of component in the z-direction. | | +| **SampleToDetectorDistance** | m | Distance from sample to detector (for focusing the scattered x-rays). | | +| **DetectorRadius** | m | Radius of the detector (for focusing the scattered x-rays). | | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcxtrace-comps/contrib/SAXSNanodiscsWithTags.comp) for `SAXSNanodiscsWithTags.comp`. + +--- + +*Generated on mcxtrace 3.99.99.* \ No newline at end of file diff --git a/mcxtrace-comps/contrib/SAXSNanodiscsWithTagsFast.md b/mcxtrace-comps/contrib/SAXSNanodiscsWithTagsFast.md new file mode 100644 index 000000000..1f8bd28f3 --- /dev/null +++ b/mcxtrace-comps/contrib/SAXSNanodiscsWithTagsFast.md @@ -0,0 +1,64 @@ +# The `SAXSNanodiscsWithTagsFast` Component + +*McXtrace: Release: McXtrace 1.0 + +A sample of monodisperse phospholipid bilayer nanodiscs in solution (water) - with +histidine tag still on the belt proteins.* + +## Identification + +- **Site:** +- **Author:** Martin Cramer Pedersen (mcpe@nbi.dk) +- **Origin:** KU-Science +- **Date:** May 2, 2012 + +## Description + +```text +A component very similar to SAXSNanodiscsWithTags.comp - however, the +scattering profile is only computed once, and linear interpolation is then used +to simulate the instrument. + +Example: SAXSNanodiscsWithTagsFast( xwidth = 0.01, yheight = 0.01, zdepth = 0.01, SampleToDetectorDistance = 0.48, DetectorRadius = 0.1 ) +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| AxisRatio | | Axis ratio of the bilayer patch. | 1.4 | +| NumberOfLipids | | Number of lipids per nanodisc. | 130.0 | +| AreaPerLipidHeadgroup | AA^2 | Area per lipid headgroup - default is POPC. | 65.0 | +| HeightOfMSP | AA | Height of the belt protein - default is MSP1D1. | 24.0 | +| RadiusOfGyrationForHisTag | AA | Radius of gyration for the his-tag. | 12.7 | +| VolumeOfOneMSP | AA^3 | Volume of one belt protein - default is MSP1D1. | 26296.5 | +| VolumeOfHeadgroup | AA^3 | Volume of one lipid headgroup - default is POPC. | 319.0 | +| VolumeOfCH2Tail | AA^3 | Volume of the CH2-chains of one lipid - default is POPC. | 818.8 | +| VolumeOfCH3Tail | AA^3 | Volume of the CH3-tails of one lipid - default is POPC. | 108.6 | +| VolumeOfOneHisTag | AA^3 | Volume of one his-tag. | 2987.3 | +| ScatteringLengthOfOneMSP | cm | Scattering length of one belt protein - default is MSP1D1. | 3.34E-9 | +| ScatteringLengthOfHeadgroup | cm | Scattering length of one lipid headgroup - default is POPC. | 4.62E-11 | +| ScatteringLengthOfCH2Tail | cm | Scattering length of the CH2-chains of one lipid - default is POPC. | 6.71E-11 | +| ScatteringLengthOfCH3Tail | cm | Scattering length of the CH3-tails of one lipid - default is POPC. | 5.08E-12 | +| ScatteringLengthOfOneHisTag | cm | Scattering length of one histidine tag. | 3.89E-10 | +| Roughness | | Factor used to smear the interfaces of the nanodisc. | 3.5 | +| Concentration | mM | Concentration of sample. | 0.01 | +| AbsorptionCrosssection | 1/m | Absorption cross section of the sample. | 0.0 | +| **xwidth** | m | Dimension of component in the x-direction. | | +| **yheight** | m | Dimension of component in the y-direction. | | +| **zdepth** | m | Dimension of component in the z-direction. | | +| **SampleToDetectorDistance** | m | Distance from sample to detector (for focusing the scattered x-rays). | | +| **DetectorRadius** | m | Radius of the detector (for focusing the scattered x-rays). | | +| qMin | AA^-1 | Lowest q-value, for which a point is generated in the scattering profile | 0.001 | +| qMax | AA^-1 | Highest q-value, for which a point is generated in the scattering profile | 1.0 | +| NumberOfQBins | | Number of points generated in inital scattering profile. | 200 | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcxtrace-comps/contrib/SAXSNanodiscsWithTagsFast.comp) for `SAXSNanodiscsWithTagsFast.comp`. + +--- + +*Generated on mcxtrace 3.99.99.* \ No newline at end of file diff --git a/mcxtrace-comps/contrib/SAXSPDB.md b/mcxtrace-comps/contrib/SAXSPDB.md new file mode 100644 index 000000000..46eb3c586 --- /dev/null +++ b/mcxtrace-comps/contrib/SAXSPDB.md @@ -0,0 +1,49 @@ +# The `SAXSPDB` Component + +*McXtrace: Release: McXtrace 1.0 + +A sample describing a thin solution of proteins. This components must be compiled +with the -lgsl and -lgslcblas flags (and possibly linked to the appropriate +libraries).* + +## Identification + +- **Site:** +- **Author:** Martin Cramer Pedersen (mcpe@nbi.dk) and Søren Kynde (kynde@nbi.dk) +- **Origin:** KU-Science +- **Date:** May 2, 2012 + +## Description + +```text +This components expands the formfactor amplitude of the protein on spherical +harmonics and computes the scattering profile using these. The expansion is +done on amino-acid level and does not take hydration layer into account. +The component must have a valid .pdb-file as an argument. + +This component is very slow. You should rather use the SAXSPDBFast sample component. +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| RhoSolvent | AA | Scattering length density of the buffer. | 9.4e-14 | +| Concentration | mM | Concentration of sample. | 0.01 | +| AbsorptionCrosssection | 1/m | Absorption cross section of the sample. | 0.0 | +| **xwidth** | m | Dimension of component in the x-direction. | | +| **yheight** | m | Dimension of component in the y-direction. | | +| **zdepth** | m | Dimension of component in the z-direction. | | +| **SampleToDetectorDistance** | m | Distance from sample to detector (for focusing the scattered x-rays). | | +| **DetectorRadius** | m | Radius of the detector (for focusing the scattered x-rays). | | +| PDBFilepath | | Path to the file describing the high resolution structure of the protein. | "PDBfile.pdb" | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcxtrace-comps/contrib/SAXSPDB.comp) for `SAXSPDB.comp`. + +--- + +*Generated on mcxtrace 3.99.99.* \ No newline at end of file diff --git a/mcxtrace-comps/contrib/SAXSPDBFast.md b/mcxtrace-comps/contrib/SAXSPDBFast.md new file mode 100644 index 000000000..fc0dd6aa7 --- /dev/null +++ b/mcxtrace-comps/contrib/SAXSPDBFast.md @@ -0,0 +1,52 @@ +# The `SAXSPDBFast` Component + +*McXtrace: Release: McXtrace 1.0 + +A sample describing a thin solution of proteins using linear interpolation +to increase computational speed. This components must be compiled with the +-lgsl and -lgslcblas flags (and possibly linked to the appropriate libraries).* + +## Identification + +- **Site:** +- **Author:** Martin Cramer Pedersen (mcpe@nbi.dk) and Søren Kynde (kynde@nbi.dk) +- **Origin:** KU-Science +- **Date:** May 2, 2012 + +## Description + +```text +This components expands the formfactor amplitude of the protein on spherical +harmonics and computes the scattering profile using these. The expansion is +done on amino-acid level and does not take hydration layer into account. +The component must have a valid .pdb-file as an argument. + +This is fast implementation of the SAXSPDB sample component. +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| RhoSolvent | AA | Scattering length density of the buffer. | 9.4e-14 | +| Concentration | mM | Concentration of sample. | 0.01 | +| AbsorptionCrosssection | 1/m | Absorption cross section of the sample. | 0.0 | +| **xwidth** | m | Dimension of component in the x-direction. | | +| **yheight** | m | Dimension of component in the y-direction. | | +| **zdepth** | m | Dimension of component in the z-direction. | | +| **SampleToDetectorDistance** | m | Distance from sample to detector (for focusing the scattered x-rays). | | +| **DetectorRadius** | m | Radius of the detector (for focusing the scattered x-rays). | | +| qMin | AA^-1 | Lowest q-value, for which a point is generated in the scattering profile | 0.001 | +| qMax | AA^-1 | Highest q-value, for which a point is generated in the scattering profile | 0.5 | +| NumberOfQBins | | Number of points generated in inital scattering profile. | 200 | +| PDBFilepath | | Path to the file describing the high resolution structure of the protein. | "PDBfile.pdb" | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcxtrace-comps/contrib/SAXSPDBFast.comp) for `SAXSPDBFast.comp`. + +--- + +*Generated on mcxtrace 3.99.99.* \ No newline at end of file diff --git a/mcxtrace-comps/contrib/SAXSQMonitor.md b/mcxtrace-comps/contrib/SAXSQMonitor.md new file mode 100644 index 000000000..0bdff8048 --- /dev/null +++ b/mcxtrace-comps/contrib/SAXSQMonitor.md @@ -0,0 +1,48 @@ +# The `SAXSQMonitor` Component + +*McXtrace: Release: McXtrace 1.0 + +A circular detector measuring the radial average of intensity as a function +of the momentum transform in the sample.* + +## Identification + +- **Site:** +- **Author:** Martin Cramer Pedersen (mcpe@nbi.dk) +- **Origin:** KU-Science +- **Date:** May 2, 2012 + +## Description + +```text +A circular detector measuring the radial average of intensity as a function +of the momentum transform in the sample. The q-range is set up to +qMax = 4 * PI * sin(TwoThetaMax / 2.0) / LambdaMin; + +Example: SAXSQMonitor( RadiusDetector = 0.1, DistanceFromSample = 0.5, LambdaMin = 1, Lambda0 = 1.54, NumberOfBins = 2000 ) +Example: SAXSQMonitor( RadiusDetector = 0.1, qMax = 5, Lambda0 = 1.54, NumberOfBins = 2000 ) +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| RFilename | str | File used for storing I(r). | "RDetector" | +| qFilename | str | File used for storing I(q). | "QDetector" | +| NumberOfBins | 1 | Number of bins in the r (and q). | 100 | +| restore_xray | | If set to 1, the component restores the original x-ray. | 0 | +| **RadiusDetector** | m | Radius of the detector (in the xy-plane). | | +| **DistanceFromSample** | m | Distance from the sample to this component. | | +| LambdaMin | AA | Max sensitivity in lambda - used to compute the highest possible value of momentum transfer, q. | 1.0 | +| Lambda0 | Angs | If given, the momentum transfers of all rays are computed from this value. Otherwise, instrumental effects are negated Lambda0=2PI/k. | 0.0 | +| qMax | Angs-1 | Max momentum for the Q-monitor. use either qMax or LambdaMin. | 0 | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcxtrace-comps/contrib/SAXSQMonitor.comp) for `SAXSQMonitor.comp`. + +--- + +*Generated on mcxtrace 3.99.99.* \ No newline at end of file diff --git a/mcxtrace-comps/contrib/SAXSShells.md b/mcxtrace-comps/contrib/SAXSShells.md new file mode 100644 index 000000000..a6cf2862d --- /dev/null +++ b/mcxtrace-comps/contrib/SAXSShells.md @@ -0,0 +1,46 @@ +# The `SAXSShells` Component + +*McXtrace: Release: McXtrace 1.0 + +A sample of monodisperse shell-like particles in solution.* + +## Identification + +- **Site:** +- **Author:** Martin Cramer Pedersen (mcpe@nbi.dk) +- **Origin:** KU-Science +- **Date:** May 11, 2012 + +## Description + +```text +A simple component simulating the scattering from a box-shaped, thin solution +of monodisperse, shell-like particles. + +Example: Sample1 = SAXSShells( xwidth = 0.01, yheight = 0.01, zdepth = 0.01, SampleToDetectorDistance = 0.5, DetectorRadius = 0.1, R = 50.0, Thickness = 20.0 ) +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| R | AA | Average radius of the particles. | 100.0 | +| Thickness | AA | Thickness of the shell - so that the outer radius is R + Thickness and the inner is R - Thickness. | 5.0 | +| Concentration | mM | Concentration of sample. | 0.01 | +| DeltaRho | cm/AA^3 | Excess scattering length density of the particles. | 1.0e-14 | +| AbsorptionCrosssection | 1/m | Absorption cross section of the sample. | 0.0 | +| **xwidth** | m | Dimension of component in the x-direction. | | +| **yheight** | m | Dimension of component in the y-direction. | | +| **zdepth** | m | Dimension of component in the z-direction. | | +| **SampleToDetectorDistance** | m | Distance from sample to detector (for focusing the scattered x-rays). | | +| **DetectorRadius** | m | Radius of the detector (for focusing the scattered x-rays). | | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcxtrace-comps/contrib/SAXSShells.comp) for `SAXSShells.comp`. + +--- + +*Generated on mcxtrace 3.99.99.* \ No newline at end of file diff --git a/mcxtrace-comps/contrib/SAXSSpheres.md b/mcxtrace-comps/contrib/SAXSSpheres.md new file mode 100644 index 000000000..5adc30fa3 --- /dev/null +++ b/mcxtrace-comps/contrib/SAXSSpheres.md @@ -0,0 +1,43 @@ +# The `SAXSSpheres` Component + +*McXtrace: A sample of monodisperse spherical particles in solution.* + +## Identification + +- **Site:** +- **Author:** Martin Cramer Pedersen (mcpe@nbi.dk) +- **Origin:** KU-Science +- **Date:** May 2, 2012 + +## Description + +```text +A simple component simulating the scattering from a box-shaped, thin solution +of monodisperse, spherical particles. + +Example: SAXSSpheres( xwidth = 0.01, yheight = 0.01, zdepth = 0.01, R = 50.0, SampleToDetectorDistance = 0.5, DetectorRadius = 0.1 ) +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| R | AA | Radius of the spherical particles. | 100.0 | +| Concentration | mM | Concentration of sample. | 0.01 | +| DeltaRho | cm/AA^3 | Excess scattering length density of the particles. | 1.0e-14 | +| AbsorptionCrosssection | 1/m | Absorption cross section of the sample. | 0.0 | +| **xwidth** | m | Dimension of component in the x-direction. | | +| **yheight** | m | Dimension of component in the y-direction. | | +| **zdepth** | m | Dimension of component in the z-direction. | | +| **SampleToDetectorDistance** | m | Distance from sample to detector (for focusing the scattered x-rays). | | +| **DetectorRadius** | m | Radius of the detector (for focusing the scattered x-rays). | | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcxtrace-comps/contrib/SAXSSpheres.comp) for `SAXSSpheres.comp`. + +--- + +*Generated on mcxtrace 3.99.99.* \ No newline at end of file diff --git a/mcxtrace-comps/examples/AstroX_ESA/ATHENA_1mm/ATHENA_1mm.md b/mcxtrace-comps/examples/AstroX_ESA/ATHENA_1mm/ATHENA_1mm.md new file mode 100644 index 000000000..253f3dfb0 --- /dev/null +++ b/mcxtrace-comps/examples/AstroX_ESA/ATHENA_1mm/ATHENA_1mm.md @@ -0,0 +1,85 @@ +# The `ATHENA_1mm` Instrument + +*McXtrace: Single pore version of the ATHENA SPO-optic in use as telescope.* + +## Identification + +- **Site:** AstroX_ESA +- **Author:** Erik B Knudsen & Desiree D. M. Ferreira (email) +- **Origin:** DTU Physics/DTU Space +- **Date:** 12/12/2016 + +## Description + +```text +A model of the ATHENA-telescope using just a single mirror module as optical element. That means to make use of this instrument +it is necessary to run a series of simulation while varying the input parameter porenumber. +At present, the porenumber really means mirror module number. + +The model needs as input two files positionfile and geomfile, which contain (in ascii) tabled details about the positions of mirror +modules and their geometry. +The data in the position file is assumed to be columnar with the following format: +#index row X/m Y/m R/m alpha/deg. +... + +index: a running number identifying the mirror module within a petal. +row: the a running number for which row (ring) this mirror module belongs to (n.b. this is used as an index inot the geomfile). +X: The x-coordinate of the mirror module (ignored because redundant with R,alpha) +Y: The y-coordinate of the mirror module (ignored because redundant with R,alpha) +R: The radial position of the mirror module +alpha: The angular position of the mirror module + +Similarly the format of the geomfile is: +#row L/m rad_h/m rad_m/m rad_p/m width/m +... +row: running index for the rows/rings +L: The length of the plates for this ring +rad_h: The radius at the "hyperbolic" end of the optic. At the detector end. +rad_m: The radius at the midpoint of the optic. This is the reference. +rad_p: The radius at the "parabolic" and of the optic. At the source end. +width: pore width ? + +Example: ATHENA_1mm.instr porenumber=3 +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| FL | m | The focal length of the optical system | 12 | +| optics_dist | m | The distance between souce and optic. In space this would be quite large :-). | 10 | +| SRC_POS_X | m | Displacement of source along X | 0 | +| SRC_POS_Y | m | Displacement of source along Y | 0 | +| offaxis_angle | arcmin | Angle of collimated light from source | 0 | +| dPx | m | Offset/displacement of parabolic pore along x from its theoretical position. | 0 | +| dPy | m | Offset/displacement of parabolic pore along y from its theoretical position. | 0 | +| dPz | m | Offset/displacement of parabolic pore along z from its theoretical position. | 0 | +| dPrx | arcsec | Rotational misalignment of parabolic pore around x. | 0 | +| dPry | arcsec | Rotational misalignment of parabolic pore around y. | 0 | +| dPrz | arcsec | Rotational misalignment of parabolic pore around z. | 0 | +| dHx | m | Offset/displacement of hyperbolic pore along x from its theoretical position. | 0 | +| dHy | m | Offset/displacement of hyperbolic pore along y from its theoretical position. | 0 | +| dHz | m | Offset/displacement of hyperbolic pore along z from its theoretical position. | 0 | +| dHrx | arcsec | Rotational misalignment of hyperbolic pore around x. | 0 | +| dHry | arcsec | Rotational misalignment of hyperbolic pore around y. | 0 | +| dHrz | arcsec | Rotational misalignment of hyperbolic pore around z. | 0 | +| reflectivity | | Data file containing reflectivities (such as from IMD) | "mirror_coating_unity.txt" | +| E0 | keV | Central energy of X-rays | 5 | +| dE | keV | Half spread of energy spectrum to be emitted from source | 0.001 | +| porenumber | | Actually the mirror module number. | 1 | +| ringfile | | File which contains deatiled plate descriptions. | "ref_design_breaks.txt" | +| positionfile | | File containing the pore/mirror module positions. | "ATHENA_mm_1petal.dat" | +| geomfile | | File which contains the geometry of the pores (i.e. radii,lengths) | "ATHENA_rings_1_20.dat" | +| Hyper | | If non-zero the secondary mirror (hyperbolic) is active. Useful for debugging. | 1 | +| Para | | If non-zero the primary mirror is acive (parabolic) is active. Useful for debugging. | 1 | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcxtrace-comps/examples/AstroX_ESA/ATHENA_1mm/ATHENA_1mm.instr) for `ATHENA_1mm.instr`. +- The ATHENA web pages @ ESA + +--- + +*Generated for mcxtrace 3.99.99.* \ No newline at end of file diff --git a/mcxtrace-comps/examples/AstroX_ESA/ATHENA_1pore/ATHENA_1pore.md b/mcxtrace-comps/examples/AstroX_ESA/ATHENA_1pore/ATHENA_1pore.md new file mode 100644 index 000000000..02fd98de1 --- /dev/null +++ b/mcxtrace-comps/examples/AstroX_ESA/ATHENA_1pore/ATHENA_1pore.md @@ -0,0 +1,85 @@ +# The `ATHENA_1pore` Instrument + +*McXtrace: Single pore version of the ATHENA SPO-optic in use as telescope.* + +## Identification + +- **Site:** AstroX_ESA +- **Author:** Erik B Knudsen & Desiree D. M. Ferreira (email) +- **Origin:** DTU Physics/DTU Space +- **Date:** 12/12/2016 + +## Description + +```text +A model of the ATHENA-telescope using just a single pore as optical element. That means to make use of this instrument +it is necessary to run a series of simulation while varying the input parameter porenumber. +At present, the porenumber really means mirror module number, and only the central pore is used to be representative +module. + +The model needs as input two files positionfile and geomfile, which contain (in ascii) tabled details about the positions of mirror +modules and their geometry. +The data in the position file is assumed to be columnar with the following format: +#index row X/m Y/m R/m alpha/deg. +... + +index: a running number identifying the mirror module within a petal. +row: the a running number for which row (ring) this mirror module belongs to (n.b. this is used as an index inot the geomfile). +X: The x-coordinate of the mirror module (ignored because redundant with R,alpha) +Y: The y-coordinate of the mirror module (ignored because redundant with R,alpha) +R: The radial position of the mirror module +alpha: The angular position of the mirror module + +Similarly the format of the geomfile is: +#row L/m rad_h/m rad_m/m rad_p/m width/m +... +row: running index for the rows/rings +L: The length of the plates for this ring +rad_h: The radius at the "hyperbolic" end of the optic. At the detector end. +rad_m: The radius at the midpoint of the optic. This is the reference. +rad_p: The radius at the "parabolic" and of the optic. At the source end. +width: pore width ? + +Example: ATHENA_1pore.instr porenumber=3 +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| FL | m | The focal length of the optical system | 12 | +| optics_dist | m | The distance between souce and optic. In space this would be quite large :-). | 10 | +| SRC_POS_X | m | Displacement of source along X | 0 | +| SRC_POS_Y | m | Displacement of source along Y | 0 | +| offaxis_angle | arcmin | Angle of collimated light from source | 0 | +| dPx | m | Offset/displacement of parabolic pore along x from its theoretical position. | 0 | +| dPy | m | Offset/displacement of parabolic pore along y from its theoretical position. | 0 | +| dPz | m | Offset/displacement of parabolic pore along z from its theoretical position. | 0 | +| dPrx | arcsec | Rotational misalignment of parabolic pore around x. | 0 | +| dPry | arcsec | Rotational misalignment of parabolic pore around y. | 0 | +| dPrz | arcsec | Rotational misalignment of parabolic pore around z. | 0 | +| dHx | m | Offset/displacement of hyperbolic pore along x from its theoretical position. | 0 | +| dHy | m | Offset/displacement of hyperbolic pore along y from its theoretical position. | 0 | +| dHz | m | Offset/displacement of hyperbolic pore along z from its theoretical position. | 0 | +| dHrx | arcsec | Rotational misalignment of hyperbolic pore around x. | 0 | +| dHry | arcsec | Rotational misalignment of hyperbolic pore around y. | 0 | +| dHrz | arcsec | Rotational misalignment of hyperbolic pore around z. | 0 | +| reflectivity | | Data file containing reflectivities (such as from IMD) | "mirror_coating_unity.txt" | +| E0 | keV | Central energy of X-rays | 5 | +| dE | keV | Half spread of energy spectrum to be emitted from source | 0.001 | +| porenumber | | Actually the mirror module number. | 1 | +| positionfile | | File containing the pore/mirror module positions. | "ATHENA_mm_1petal.dat" | +| geomfile | | File which contains the geometry of the pores (i.e. radii,lengths) | "ATHENA_rings_1_20.dat" | +| Hyper | | If non-zero the secondary mirror (hyperbolic) is active. Useful for debugging. | 1 | +| Para | | If non-zero the primary mirror is acive (parabolic) is active. Useful for debugging. | 1 | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcxtrace-comps/examples/AstroX_ESA/ATHENA_1pore/ATHENA_1pore.instr) for `ATHENA_1pore.instr`. +- The ATHENA web pages @ ESA + +--- + +*Generated for mcxtrace 3.99.99.* \ No newline at end of file diff --git a/mcxtrace-comps/examples/AstroX_ESA/ATHENA_1ring/ATHENA_1ring.md b/mcxtrace-comps/examples/AstroX_ESA/ATHENA_1ring/ATHENA_1ring.md new file mode 100644 index 000000000..af32d1373 --- /dev/null +++ b/mcxtrace-comps/examples/AstroX_ESA/ATHENA_1ring/ATHENA_1ring.md @@ -0,0 +1,58 @@ +# The `ATHENA_1ring` Instrument + +*McXtrace: Single pore version of the ATHENA SPO-optic in use as telescope.* + +## Identification + +- **Site:** AstroX_ESA +- **Author:** Erik B Knudsen & Desiree D. M. Ferreira (email) +- **Origin:** DTU Physics/DTU Space +- **Date:** 12/12/2016 + +## Description + +```text +A model of the ATHENA-telescope using a single ring as optical element. That means to make use of this instrument +it is necessary to run a series of simulation while varying the input parameter porenumber. +At present, the porenumber really means ring number. + +The model needs as input a file geomfile, which contains (in ascii) tabled details about the geometry of the shells. +The data in the geomfile is assumed to be in the format: +#row L/m rad_h/m rad_m/m rad_p/m width/m +... +row: running index for the rows/rings +L: The length of the plates for this ring +rad_h: The radius at the "hyperbolic" end of the optic. At the detector end. +rad_m: The radius at the midpoint of the optic. This is the reference. +rad_p: The radius at the "parabolic" and of the optic. At the source end. +width: pore width ? + +Example: ATHENA_1ring.instr shellnumber=3 +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| FL | m | The focal length of the optical system | 12 | +| optics_dist | m | The distance between souce and optic. In space this would be quite large :-). | 10 | +| SRC_POS_X | m | Displacement of source along X | 0 | +| SRC_POS_Y | m | Displacement of source along Y | 0 | +| offaxis_angle | arcmin | Angle of collimated light from source | 0 | +| reflectivity | | Data file containing reflectivities (such as from IMD) | "mirror_coating_unity.txt" | +| E0 | keV | Central energy of X-rays | 5 | +| dE | keV | Half spread of energy spectrum to be emitted from source | 0.001 | +| shellnumber | | Actually the ring number. | 1 | +| ringfile | | File which contains details for the meta shells. | "ref_design_breaks.txt" | +| geomfile | | | "ATHENA_rings_1_20.dat" | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcxtrace-comps/examples/AstroX_ESA/ATHENA_1ring/ATHENA_1ring.instr) for `ATHENA_1ring.instr`. +- The ATHENA web pages @ ESA + +--- + +*Generated for mcxtrace 3.99.99.* \ No newline at end of file diff --git a/mcxtrace-comps/examples/AstroX_ESA/ATHENA_1sh_W1_OA/ATHENA_1sh_W1_OA.md b/mcxtrace-comps/examples/AstroX_ESA/ATHENA_1sh_W1_OA/ATHENA_1sh_W1_OA.md new file mode 100644 index 000000000..aeb6f4c40 --- /dev/null +++ b/mcxtrace-comps/examples/AstroX_ESA/ATHENA_1sh_W1_OA/ATHENA_1sh_W1_OA.md @@ -0,0 +1,58 @@ +# The `ATHENA_1sh_W1_OA` Instrument + +*McXtrace: Single shell model of the ATHENA SPO-optic in use as telescope.* + +## Identification + +- **Site:** AstroX_ESA +- **Author:** Erik B Knudsen & Desiree D. M. Ferreira (email) +- **Origin:** DTU Physics/DTU Space +- **Date:** 12/12/2016 + +## Description + +```text +A model of the ATHENA-telescope using just a single shell as optical element. +That means to make use of this instrument +it is necessary to run a series of simulation while varying the input parameter shellnumber. + +The model needs as input a file geomfile, which contains (in ascii) tabled details about the geometry of the shells. +The data in the geomfile is assumed to be in the format: +#row L/m rad_h/m rad_m/m rad_p/m width/m +... +row: running index for the rows/rings +L: The length of the plates for this ring +rad_h: The radius at the "hyperbolic" end of the optic. At the detector end. +rad_m: The radius at the midpoint of the optic. This is the reference. +rad_p: The radius at the "parabolic" and of the optic. At the source end. + +Example: ATHENA_1sh_W1_OA.instr shellnumber=1 +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| FL | m | The focal length of the optical system | 12 | +| optics_dist | m | The distance between souce and optic. In space this would be quite large :-). | 10 | +| XWidth | m | The width of the user detector default is that of the ATHENA WFI large area detector | 0.13312 | +| YHeight | m | The height of the user detector default is that of the ATHENA WFI large area detector | 0.13312 | +| NX | | Number of pixels along X in the user detector | 1024 | +| NY | | Number of pixels along Y in the user detector. | 1024 | +| offaxis_angle | arcmin | Angle of collimated light from source | 0 | +| reflectivity | | Data file containing reflectivities (such as from IMD) | "mirror_coating_unity.txt" | +| E0 | keV | Central energy of X-rays | 5 | +| dE | keV | Half spread of energy spectrum to be emitted from source | 0.001 | +| shellnumber | | The row number for the miror module. This defines the shell. | 1 | +| geomfile | | File which contains the geometry of the pores (i.e. radii,lengths) | "ATHENA_rings_1_20.dat" | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcxtrace-comps/examples/AstroX_ESA/ATHENA_1sh_W1_OA/ATHENA_1sh_W1_OA.instr) for `ATHENA_1sh_W1_OA.instr`. +- The ATHENA web pages @ ESA + +--- + +*Generated for mcxtrace 3.99.99.* \ No newline at end of file diff --git a/mcxtrace-comps/examples/AstroX_ESA/ATHENA_1sh_both/ATHENA_1sh_both.md b/mcxtrace-comps/examples/AstroX_ESA/ATHENA_1sh_both/ATHENA_1sh_both.md new file mode 100644 index 000000000..adf263e94 --- /dev/null +++ b/mcxtrace-comps/examples/AstroX_ESA/ATHENA_1sh_both/ATHENA_1sh_both.md @@ -0,0 +1,59 @@ +# The `ATHENA_1sh_both` Instrument + +*McXtrace: Single shell model of the ATHENA SPO-optic in use as telescope.* + +## Identification + +- **Site:** AstroX_ESA +- **Author:** Erik B Knudsen & Desiree D. M. Ferreira (email) +- **Origin:** DTU Physics/DTU Space +- **Date:** 12/12/2016 + +## Description + +```text +A model of the ATHENA-telescope using just a single shell as optical element. +That means to make use of this instrument +it is necessary to run a series of simulation while varying the input parameter shellnumber. + +The model needs as input a file geomfile, which contains (in ascii) tabled details about the geometry of the shells. +The data in the geomfile is assumed to be in the format: +#row L/m rad_h/m rad_m/m rad_p/m width/m +... +row: running index for the rows/rings +L: The length of the plates for this ring +rad_h: The radius at the "hyperbolic" end of the optic. At the detector end. +rad_m: The radius at the midpoint of the optic. This is the reference. +rad_p: The radius at the "parabolic" and of the optic. At the source end. + +Example: ATHENA_1sh_both.instr shellnumber=1 +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| FL | m | The focal length of the optical system | 12 | +| optics_dist | m | The distance between souce and optic. In space this would be quite large :-). | 10 | +| XWidth | m | The width of the user detector default is that of the ATHENA WFI large area detector | 0.13312 | +| YHeight | m | The height of the user detector default is that of the ATHENA WFI large area detector | 0.13312 | +| NX | | Number of pixels along X in the user detector | 1024 | +| NY | | Number of pixels along Y in the user detector. | 1024 | +| reflectivity | | Data file containing reflectivities (such as from IMD) | "mirror_coating_unity.txt" | +| E0 | keV | Central energy of X-rays | 5 | +| dE | keV | Half spread of energy spectrum to be emitted from source | 0.001 | +| shellnumber | | The row number for the miror module. This defines the shell. | 1 | +| geomfile | | File which contains the geometry of the pores (i.e. radii,lengths) | "ATHENA_rings_1_20.dat" | +| primParab | | | 1 | +| secHyper | | | 1 | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcxtrace-comps/examples/AstroX_ESA/ATHENA_1sh_both/ATHENA_1sh_both.instr) for `ATHENA_1sh_both.instr`. +- The ATHENA web pages @ ESA + +--- + +*Generated for mcxtrace 3.99.99.* \ No newline at end of file diff --git a/mcxtrace-comps/examples/AstroX_ESA/ATHENA_1sh_conical/ATHENA_1sh_conical.md b/mcxtrace-comps/examples/AstroX_ESA/ATHENA_1sh_conical/ATHENA_1sh_conical.md new file mode 100644 index 000000000..8a45da704 --- /dev/null +++ b/mcxtrace-comps/examples/AstroX_ESA/ATHENA_1sh_conical/ATHENA_1sh_conical.md @@ -0,0 +1,57 @@ +# The `ATHENA_1sh_conical` Instrument + +*McXtrace: Single shell model of the ATHENA SPO-optic in use as telescope.* + +## Identification + +- **Site:** AstroX_ESA +- **Author:** Erik B Knudsen & Desiree D. M. Ferreira (email) +- **Origin:** DTU Physics/DTU Space +- **Date:** 12/12/2016 + +## Description + +```text +A model of the ATHENA-telescope using just a single shell as optical element. +That means to make use of this instrument +it is necessary to run a series of simulation while varying the input parameter shellnumber. + +The model needs as input a file geomfile, which contains (in ascii) tabled details about the geometry of the shells. +The data in the geomfile is assumed to be in the format: +#row L/m rad_h/m rad_m/m rad_p/m width/m +... +row: running index for the rows/rings +L: The length of the plates for this ring +rad_h: The radius at the "hyperbolic" end of the optic. At the detector end. +rad_m: The radius at the midpoint of the optic. This is the reference. +rad_p: The radius at the "parabolic" and of the optic. At the source end. + +Example: ATHENA_1sh_conical.instr shellnumber=1 +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| FL | m | The focal length of the optical system | 12 | +| optics_dist | m | The distance between souce and optic. In space this would be quite large :-). | 10 | +| XWidth | m | The width of the user detector default is that of the ATHENA WFI large area detector | 0.13312 | +| YHeight | m | The height of the user detector default is that of the ATHENA WFI large area detector | 0.13312 | +| NX | | Number of pixels along X in the user detector | 1024 | +| NY | | Number of pixels along Y in the user detector. | 1024 | +| reflectivity | | Data file containing reflectivities (such as from IMD) | "mirror_coating_unity.txt" | +| E0 | keV | Central energy of X-rays | 5 | +| dE | keV | Half spread of energy spectrum to be emitted from source | 0.001 | +| shellnumber | | The row number for the miror module. This defines the shell. | 1 | +| geomfile | | File which contains the geometry of the pores (i.e. radii,lengths) | "ATHENA_rings_1_20.dat" | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcxtrace-comps/examples/AstroX_ESA/ATHENA_1sh_conical/ATHENA_1sh_conical.instr) for `ATHENA_1sh_conical.instr`. +- The ATHENA web pages @ ESA + +--- + +*Generated for mcxtrace 3.99.99.* \ No newline at end of file diff --git a/mcxtrace-comps/examples/AstroX_ESA/ATHENA_1shell/ATHENA_1shell.md b/mcxtrace-comps/examples/AstroX_ESA/ATHENA_1shell/ATHENA_1shell.md new file mode 100644 index 000000000..d80b05794 --- /dev/null +++ b/mcxtrace-comps/examples/AstroX_ESA/ATHENA_1shell/ATHENA_1shell.md @@ -0,0 +1,60 @@ +# The `ATHENA_1shell` Instrument + +*McXtrace: Single shell model of the ATHENA SPO-optic in use as telescope.* + +## Identification + +- **Site:** AstroX_ESA +- **Author:** Erik B Knudsen & Desiree D. M. Ferreira (email) +- **Origin:** DTU Physics/DTU Space +- **Date:** 12/12/2016 + +## Description + +```text +A model of the ATHENA-telescope using just a single shell as optical element. +That means to make use of this instrument +it is necessary to run a series of simulation while varying the input parameter shellnumber. + +The model needs as input a file geomfile, which contains (in ascii) tabled details about the geometry of the shells. +The data in the geomfile is assumed to be in the format: +#row L/m rad_h/m rad_m/m rad_p/m width/m +... +row: running index for the rows/rings +L: The length of the plates for this ring +rad_h: The radius at the "hyperbolic" end of the optic. At the detector end. +rad_m: The radius at the midpoint of the optic. This is the reference. +rad_p: The radius at the "parabolic" and of the optic. At the source end. +width: pore width ? + +Example: ATHENA_1shell.instr shellnumber=1 +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| FL | m | The focal length of the optical system | 12 | +| optics_dist | m | The distance between souce and optic. In space this would be quite large :-). | 10 | +| SRC_POS_X | m | Displacement of source along X | 0 | +| SRC_POS_Y | m | Displacement of source along Y | 0 | +| offaxis_angle | arcmin | Angle of collimated light from source | 0 | +| drx | | | 0 | +| dry | | | 0 | +| drz | | | 0 | +| reflectivity | | Data file containing reflectivities (such as from IMD) | "mirror_coating_unity.txt" | +| E0 | keV | Central energy of X-rays | 5 | +| dE | keV | Half spread of energy spectrum to be emitted from source | 0.001 | +| shellnumber | | The row number for the miror module. This defines the shell. | 1 | +| geomfile | | File which contains the geometry of the pores (i.e. radii,lengths) | "ATHENA_rings_1_20.dat" | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcxtrace-comps/examples/AstroX_ESA/ATHENA_1shell/ATHENA_1shell.instr) for `ATHENA_1shell.instr`. +- The ATHENA web pages @ ESA + +--- + +*Generated for mcxtrace 3.99.99.* \ No newline at end of file diff --git a/mcxtrace-comps/examples/AstroX_ESA/ATHENA_cfgA_1mm/ATHENA_cfgA_1mm.md b/mcxtrace-comps/examples/AstroX_ESA/ATHENA_cfgA_1mm/ATHENA_cfgA_1mm.md new file mode 100644 index 000000000..f836e9fd2 --- /dev/null +++ b/mcxtrace-comps/examples/AstroX_ESA/ATHENA_cfgA_1mm/ATHENA_cfgA_1mm.md @@ -0,0 +1,77 @@ +# The `ATHENA_1mm` Instrument + +*McXtrace: Single pore version of the ATHENA SPO-optic in use as telescope.* + +## Identification + +- **Site:** AstroX_ESA +- **Author:** Erik B Knudsen & Desiree D. M. Ferreira (email) +- **Origin:** DTU Physics/DTU Space +- **Date:** 12/12/2016 + +## Description + +```text +A model of the ATHENA-telescope using just a single mirror module as optical element. That means to make use of this instrument +it is necessary to run a series of simulation while varying the input parameter porenumber. +At present, the porenumber really means mirror module number. + +The model needs as input a set of files: A Mirror Module definition file and a ring definition file. +The former contains overall definitions of mirror modules and their positions - the latter contains details about each plate. +There is some redundancy between the two files. The latter will be rendered unnecessary in a later version. +An example of mmdef_file is "MM_Definitions-cfgA.csv" which is distributed by ESA. +An example of ringfile is "ref_design.dat" which is taken from the ATHENA_reference design white-paper. + +Reflectivity may be modelled using a datafile. In this telscope model only the top (intentionally reflecting) surface +is given a data-file. However, the MM-components can cope with non-zero reflectivity for side-walls and bottom surfaces. +The reflectivity datafile follows a simple ascii-format with 6 header lines the define the ranges in energy E and grazing +angle theta, followed by a 2D-data block with reflectivity numbers. This is expected to be substituted for a 1D-parametrization ' +in q, to avoid overly lagre data-files. + +Example: ATHENA_cfgA_1mm.instr porenumber=3 +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| FL | m | The focal length of the optical system | 12 | +| optics_dist | m | The distance between souce and optic. In space this would be quite large :-). | 10 | +| XWidth | m | The width of the user detector default is that of the ATHENA WFI large area detector | 0.13312 | +| YHeight | m | The height of the user detector default is that of the ATHENA WFI large area detector | 0.13312 | +| NX | | Number of pixels along X in the user detector | 1024 | +| NY | | Number of pixels along Y in the user detector. | 1024 | +| offaxis_angle | arcmin | Angle of collimated light from source | 0 | +| dPx | m | Offset/displacement of parabolic pore along x from its theoretical position. | 0 | +| dPy | m | Offset/displacement of parabolic pore along y from its theoretical position. | 0 | +| dPz | m | Offset/displacement of parabolic pore along z from its theoretical position. | 0 | +| dPrx | arcsec | Rotational misalignment of parabolic pore around x. | 0 | +| dPry | arcsec | Rotational misalignment of parabolic pore around y. | 0 | +| dPrz | arcsec | Rotational misalignment of parabolic pore around z. | 0 | +| dHx | m | Offset/displacement of hyperbolic pore along x from its theoretical position. | 0 | +| dHy | m | Offset/displacement of hyperbolic pore along y from its theoretical position. | 0 | +| dHz | m | Offset/displacement of hyperbolic pore along z from its theoretical position. | 0 | +| dHrx | arcsec | Rotational misalignment of hyperbolic pore around x. | 0 | +| dHry | arcsec | Rotational misalignment of hyperbolic pore around y. | 0 | +| dHrz | arcsec | Rotational misalignment of hyperbolic pore around z. | 0 | +| reflectivity | | Data file containing reflectivities (such as from IMD) | "mirror_coating_unity.txt" | +| default_reflec | | Default reflectivity value to use if no reflectivity file is given. | 0 | +| E0 | keV | Central energy of X-rays | 5 | +| dE | keV | Half spread of energy spectrum to be emitted from source | 0.001 | +| porenumber | | Actually the mirror module number. | 1 | +| mmdef_file | | File containing the positions and overall geometry of Mirror Modules. | "MM_Definitions-cfgA.csv" | +| ringfile | | File which contains deatiled plate descriptions. | "ref_design_breaks.txt" | +| Hyper | | If non-zero the secondary mirror (hyperbolic) is active. Useful for debugging. | 1 | +| Para | | If non-zero the primary mirror is acive (parabolic) is active. Useful for debugging. | 1 | +| lists | | If non-zero drop event mode monitr are active. Turn-off to save disk-space. | 0 | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcxtrace-comps/examples/AstroX_ESA/ATHENA_cfgA_1mm/ATHENA_cfgA_1mm.instr) for `ATHENA_cfgA_1mm.instr`. +- The ATHENA web pages @ ESA + +--- + +*Generated for mcxtrace 3.99.99.* \ No newline at end of file diff --git a/mcxtrace-comps/examples/AstroX_ESA/ATHENA_cfgA_1mm_FEMd/ATHENA_cfgA_1mm_FEMd.md b/mcxtrace-comps/examples/AstroX_ESA/ATHENA_cfgA_1mm_FEMd/ATHENA_cfgA_1mm_FEMd.md new file mode 100644 index 000000000..d8dea9bf1 --- /dev/null +++ b/mcxtrace-comps/examples/AstroX_ESA/ATHENA_cfgA_1mm_FEMd/ATHENA_cfgA_1mm_FEMd.md @@ -0,0 +1,80 @@ +# The `ATHENA_cfgA_1mm_FEMd` Instrument + +*McXtrace: Single pore version of the ATHENA SPO-optic in use as telescope.* + +## Identification + +- **Site:** AstroX_ESA +- **Author:** Erik B Knudsen & Desiree D. M. Ferreira (email) +- **Origin:** DTU Physics/DTU Space +- **Date:** 12/12/2016 + +## Description + +```text +A model of the ATHENA-telescope using just a single mirror module as optical element. That means to make use of this instrument +it is necessary to run a series of simulation while varying the input parameter porenumber. +At present, the porenumber really means mirror module number. + +The model needs as input a set of files: A Mirror Module definition file and a ring definition file. +The former contains overall definitions of mirror modules and their positions - the latter contains details about each plate. +There is some redundancy between the two files. The latter will be rendered unnecessary in a later version. +An example of mmdef_file is "MM_Definitions-cfgA.csv" which is distributed by ESA. +An example of ringfile is "ref_design.dat" which is taken from the ATHENA_reference design white-paper. +In addition A displacement data file may be specified. + +Reflectivity may be modelled using a datafile. In this telscope model only the top (intentionally reflecting) surface +is given a data-file. However, the MM-components can cope with non-zero reflectivity for side-walls and bottom surfaces. +The reflectivity datafile follows a simple ascii-format with 6 header lines the define the ranges in energy E and grazing +angle theta, followed by a 2D-data block with reflectivity numbers. This is expected to be substituted for a 1D-parametrization ' +in q, to avoid overly lagre data-files. + +Example: ATHENA_cfgA_1mm_FEMd.instr porenumber=3 +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| FL | m | The focal length of the optical system | 12 | +| optics_dist | m | The distance between souce and optic. In space this would be quite large :-). | 10 | +| XWidth | m | The width of the user detector default is that of the ATHENA WFI large area detector | 0.13312 | +| YHeight | m | The height of the user detector default is that of the ATHENA WFI large area detector | 0.13312 | +| NX | | Number of pixels along X in the user detector | 1024 | +| NY | | Number of pixels along Y in the user detector. | 1024 | +| offaxis_angle | arcmin | Angle of collimated light from source | 0 | +| dPx | m | Offset/displacement of parabolic pore along x from its theoretical position. | 0 | +| dPy | m | Offset/displacement of parabolic pore along y from its theoretical position. | 0 | +| dPz | m | Offset/displacement of parabolic pore along z from its theoretical position. | 0 | +| dPrx | arcsec | Rotational misalignment of parabolic pore around x. | 0 | +| dPry | arcsec | Rotational misalignment of parabolic pore around y. | 0 | +| dPrz | arcsec | Rotational misalignment of parabolic pore around z. | 0 | +| dHx | m | Offset/displacement of hyperbolic pore along x from its theoretical position. | 0 | +| dHy | m | Offset/displacement of hyperbolic pore along y from its theoretical position. | 0 | +| dHz | m | Offset/displacement of hyperbolic pore along z from its theoretical position. | 0 | +| dHrx | arcsec | Rotational misalignment of hyperbolic pore around x. | 0 | +| dHry | arcsec | Rotational misalignment of hyperbolic pore around y. | 0 | +| dHrz | arcsec | Rotational misalignment of hyperbolic pore around z. | 0 | +| reflectivity | | Data file containing reflectivities (such as from IMD) | "mirror_coating_unity.txt" | +| default_reflec | | Default reflectivity value to use if no reflectivity file is given. | 0 | +| E0 | keV | Central energy of X-rays | 5 | +| dE | keV | Half spread of energy spectrum to be emitted from source | 0.001 | +| porenumber | | Actually the mirror module number. | 1 | +| mmdef_file | | File containing the positions and overall geometry of Mirror Modules. | "MM_Definitions-cfgA.csv" | +| ringfile | | File which contains deatiled plate descriptions. | "ref_design_breaks.txt" | +| disp_file | | Fiel that conatins mirror module displacements | "none" | +| disp_type | | Displacement type | 0 | +| Hyper | | If non-zero the secondary mirror (hyperbolic) is active. Useful for debugging. | 1 | +| Para | | If non-zero the primary mirror is acive (parabolic) is active. Useful for debugging. | 1 | +| lists | | If non-zero drop event mode monitr are active. Turn-off to save disk-space. | 0 | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcxtrace-comps/examples/AstroX_ESA/ATHENA_cfgA_1mm_FEMd/ATHENA_cfgA_1mm_FEMd.instr) for `ATHENA_cfgA_1mm_FEMd.instr`. +- The ATHENA web pages @ ESA + +--- + +*Generated for mcxtrace 3.99.99.* \ No newline at end of file diff --git a/mcxtrace-comps/examples/AstroX_ESA/NuSTAR_1shell_con/NuSTAR_1shell_con.md b/mcxtrace-comps/examples/AstroX_ESA/NuSTAR_1shell_con/NuSTAR_1shell_con.md new file mode 100644 index 000000000..4f905d6eb --- /dev/null +++ b/mcxtrace-comps/examples/AstroX_ESA/NuSTAR_1shell_con/NuSTAR_1shell_con.md @@ -0,0 +1,62 @@ +# The `NuSTAR_1shell_con` Instrument + +*McXtrace: Single shell model of the NuSTAR-optic in use as telescope.* + +## Identification + +- **Site:** AstroX_ESA +- **Author:** Erik B Knudsen & Desiree D. M. Ferreira (email) +- **Origin:** DTU Physics/DTU Space +- **Date:** 12/12/2016 + +## Description + +```text +A model of the NuSTAR-telescope using just a single shell as optical element. +That means to make use of this instrument +it is necessary to run a series of simulation while varying the input parameter shellnumber. + +The model needs as input a file geomfile, which contains (in ascii) tabled details about the geometry of the shells. +The data in the geomfile is assumed to be in the format: +#row L/m rad_h/m rad_m/m rad_p/m width/m +... +row: running index for the rows/rings +L: The length of the plates for this ring +rad_h: The radius at the "hyperbolic" end of the optic. At the detector end. +rad_m: The radius at the midpoint of the optic. This is the reference. +rad_p: The radius at the "parabolic" and of the optic. At the source end. +width: pore width ? + +Example: NuSTAR_1shell_con.instr shellnumber=1 +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| FL | m | The focal length of the optical system | 10.12 | +| FLd | m | Detectors distance | 0 | +| optics_dist | m | The distance between souce and optic. In space this would be quite large :-). | 10 | +| SRC_POS_X | m | Displacement of source along X | 0 | +| SRC_POS_Y | m | Displacement of source along Y | 0 | +| offaxis_angle | arcmin | Angle of collimated light from source | 0 | +| drx | | | 0 | +| dry | | | 0 | +| drz | | | 0 | +| reflectivity | | Data file containing reflectivities (such as from IMD) | "mirror_coating_unity.txt" | +| E0 | keV | Central energy of X-rays | 5 | +| dE | keV | Half spread of energy spectrum to be emitted from source | 0.001 | +| shellnumber | | The row number for the miror module. This defines the shell. | 0 | +| parabolic_datafile | | | "om_con_1a_110901_t1.txt" | +| hyperbolic_datafile | | | "om_con_3a_110901_t1.txt" | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcxtrace-comps/examples/AstroX_ESA/NuSTAR_1shell_con/NuSTAR_1shell_con.instr) for `NuSTAR_1shell_con.instr`. +- The ATHENA web pages @ ESA + +--- + +*Generated for mcxtrace 3.99.99.* \ No newline at end of file diff --git a/mcxtrace-comps/examples/AstroX_ESA/Simple_1shell/Simple_1shell.md b/mcxtrace-comps/examples/AstroX_ESA/Simple_1shell/Simple_1shell.md new file mode 100644 index 000000000..b2e5bb0d6 --- /dev/null +++ b/mcxtrace-comps/examples/AstroX_ESA/Simple_1shell/Simple_1shell.md @@ -0,0 +1,40 @@ +# The `Simple_1shell` Instrument + +*McXtrace: Single shell model of a true Wolter Type I optic* + +## Identification + +- **Site:** AstroX_ESA +- **Author:** Erik B Knudsen & Desiree D. M. Ferreira (email) +- **Origin:** DTU Physics/DTU Space +- **Date:** 12/12/2016 + +## Description + +```text +Single shell example telescope using a combinatiopn pf parabolic/hyperbolic shell +optical plates covering the full circle. Reflectivity is 1 for all energies. + +Example: Simple_1shell.instr FL=12 +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| FL | m | The focal length of the optical system | 12 | +| plate_zdepth | m | Plate length. | 0.5 | +| channel_yheight | m | Channel height. | 1e-2 | +| radius_m | m | Radius at the optics centre. | 0.534927 | +| radius_p | m | Radius at the entry to the primary (parabolic) shell. | 0.535532 | +| radius_h | m | Radius at the exit of the secondary (hyperbolic) shell. | 0.533113 | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcxtrace-comps/examples/AstroX_ESA/Simple_1shell/Simple_1shell.instr) for `Simple_1shell.instr`. + +--- + +*Generated for mcxtrace 3.99.99.* \ No newline at end of file diff --git a/mcxtrace-comps/examples/AstroX_ESA/Test_shells/Test_shells.md b/mcxtrace-comps/examples/AstroX_ESA/Test_shells/Test_shells.md new file mode 100644 index 000000000..c5794c760 --- /dev/null +++ b/mcxtrace-comps/examples/AstroX_ESA/Test_shells/Test_shells.md @@ -0,0 +1,40 @@ +# The `Test_shells` Instrument + +*McXtrace: Single shell model of a true Wolter Type I optic* + +## Identification + +- **Site:** AstroX_ESA +- **Author:** Erik B Knudsen & Desiree D. M. Ferreira (email) +- **Origin:** DTU Physics/DTU Space +- **Date:** 12/12/2016 + +## Description + +```text +Single shell example telescope using a combinatiopn of parabolic/hyperbolic shell +optical plates covering the full circle. Reflectivity is 1 for all energies. + +Example: Test_shells.instr shell_type=1 +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| FL | m | The focal length of the optical system | 12 | +| plate_zdepth | m | Plate length. | 0.5 | +| channel_yheight | m | Channel height. | 1e-2 | +| radiusin | m | Radius at the entry to the primary (parabolic) shell. | 0.535532 | +| radiusout | m | Radius at the optics centre and at the exit of the secondary (hyperbolic) shell. | 0.533113 | +| shell_type | 1 | Shell type 0=parabolic; 1=hyperbolic; 2=conical | 1 | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcxtrace-comps/examples/AstroX_ESA/Test_shells/Test_shells.instr) for `Test_shells.instr`. + +--- + +*Generated for mcxtrace 3.99.99.* \ No newline at end of file diff --git a/mcxtrace-comps/examples/AstroX_NASA/CXO/CXO.md b/mcxtrace-comps/examples/AstroX_NASA/CXO/CXO.md new file mode 100644 index 000000000..a1c8f5ef5 --- /dev/null +++ b/mcxtrace-comps/examples/AstroX_NASA/CXO/CXO.md @@ -0,0 +1,39 @@ +# The `CXO` Instrument + +*McXtrace: Chandra X-ray Observatory CXO* + +## Identification + +- **Site:** AstroX_NASA +- **Author:** Erik B Knudsen (erkn@fysik.dtu.dk) +- **Origin:** DTU Physics +- **Date:** Nov '20 + +## Description + +```text +Model of the Chandra X-ray Observatory based on the description avaiable +in the Chandra Observers' Guide. Fully collimated X-ray light impinges on the +optic consisting of 4 mirrors in the true Wolter I configuration. +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| E0 | keV | Central eX-ray energy to be simulated. | 1 | +| dE | keV | Half-width of energy spectrum | 0.001 | +| verbose | 0 | Emit extra information. | 1 | +| mcoat | str | Filename of file which conatins reflectivity for coating | "Ir_CXO.dat" | +| OA_angle | deg | Off-axis angle. Angle around y-axis at which radiation will hit the optic. | 0 | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcxtrace-comps/examples/AstroX_NASA/CXO/CXO.instr) for `CXO.instr`. +- https://cxc.harvard.edu/proposer/POG/html/index.html + +--- + +*Generated for mcxtrace 3.99.99.* \ No newline at end of file diff --git a/mcxtrace-comps/examples/AstroX_NASA/NuSTAR_1shell/NuSTAR_1shell.md b/mcxtrace-comps/examples/AstroX_NASA/NuSTAR_1shell/NuSTAR_1shell.md new file mode 100644 index 000000000..ea5b6829c --- /dev/null +++ b/mcxtrace-comps/examples/AstroX_NASA/NuSTAR_1shell/NuSTAR_1shell.md @@ -0,0 +1,59 @@ +# The `NuSTAR_1shell` Instrument + +*McXtrace: Single shell model of the NuSTAR-optic in use as telescope.* + +## Identification + +- **Site:** AstroX_NASA +- **Author:** Erik B Knudsen & Desiree D. M. Ferreira (email) +- **Origin:** DTU Physics/DTU Space +- **Date:** 12/12/2016 + +## Description + +```text +A model of the NuSTAR-telescope using just a single shell as optical element. +That means to make use of this instrument +it is necessary to run a series of simulation while varying the input parameter shellnumber. + +The model needs as input two geometry files (parabolic_datafile and hyperbolic_datafile), which contains (in ascii) tabled details about the geometry of the shells. +The data in the geomfile is assumed to be in the format: +#row L/m rad_h/m rad_m/m rad_p/m +... +row: running index for the rows/rings +L: The length of the plates for this ring +rad_h: The radius at the "hyperbolic" end of the optic. At the detector end. +rad_m: The radius at the midpoint of the optic. This is the reference. +rad_p: The radius at the "parabolic" and of the optic. At the source end. + +Example: NuSTAR_1shell.instr shellnumber=1 +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| FL | m | The focal length of the optical system | 10.12 | +| FLd | m | The distance from the optics centre to the detector. If 0 the detector is placed at the focal plane. | 0 | +| optics_dist | m | The distance between souce and optic. In space this would be quite large :-). | 10 | +| offaxis_angle | arcmin | Angle of collimated light from source | 0 | +| drx | arcsec | Rotation of shell along X | 0 | +| dry | arcsec | Rotation of shell along Y | 0 | +| drz | arcsec | Rotation of shell along Z | 0 | +| reflectivity | | Data file containing reflectivities (such as from IMD) | "mirror_coating_unity.txt" | +| E0 | keV | Central energy of X-rays | 5 | +| dE | keV | Half spread of energy spectrum to be emitted from source | 0.001 | +| shellnumber | | The row number for the miror module. This defines the shell. | 0 | +| parabolic_datafile | | File which contains the geometry of the parabolic (primary) mirrors. (i.e. radii,lengths) | "om_con_1a_110901_t1.txt" | +| hyperbolic_datafile | | File which contains the geometry of the hyperbolic (secondary) mirrors. (i.e. radii,lengths) | "om_con_3a_110901_t1.txt" | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcxtrace-comps/examples/AstroX_NASA/NuSTAR_1shell/NuSTAR_1shell.instr) for `NuSTAR_1shell.instr`. +- The ATHENA web pages @ ESA + +--- + +*Generated for mcxtrace 3.99.99.* \ No newline at end of file diff --git a/mcxtrace-comps/examples/BARC/Czerny_Turner/Czerny_Turner.md b/mcxtrace-comps/examples/BARC/Czerny_Turner/Czerny_Turner.md new file mode 100644 index 000000000..859b0a1f9 --- /dev/null +++ b/mcxtrace-comps/examples/BARC/Czerny_Turner/Czerny_Turner.md @@ -0,0 +1,38 @@ +# The `Czerny_Turner` Instrument + +*McXtrace: Czerny-Turner monochromator.* + +## Identification + +- **Site:** BARC +- **Author:** Stephane Bac, Antoine Padovani +- **Origin:** Synchrotron Soleil +- **Date:** Jul 21st 2022 + +## Description + +```text +This Czerny-Turner monochromator was built from "Design and fabrication of a Czerny-Turner monochromator-cum-spectrograph" by +Murty, M.V.R.K.; Shukla, R.P.; Bhattacharya, S.S.; Krishnamurthy, G. (Bhabha Atomic Research Centre, Bombay (India). Spectroscopy Div.) +Bhabha Atomic Research Centre, Bombay (India) +1987 +It can be found here: https://inis.iaea.org/collection/NCLCollectionStore/_Public/19/019/19019134.pdf +Example: Do a scan (scan parameter =1) from x_screw=20 to 103 mm. The calculated monitor "Wavelength(Ang) as a function of x_screw(mm)" will be a linear function. The monochromator functions properly. +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| x_screw | mm | Displacement perpendicular to initial position of the lever (sine drive mechanism) | 0 | +| scan | 0 or 1 | 1 is to activate wavelength monitor while scanning the x_screw parameter | 0 | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcxtrace-comps/examples/BARC/Czerny_Turner/Czerny_Turner.instr) for `Czerny_Turner.instr`. + +--- + +*Generated for mcxtrace 3.99.99.* \ No newline at end of file diff --git a/mcxtrace-comps/examples/DTU/Airport_scannerII/Airport_scannerII.md b/mcxtrace-comps/examples/DTU/Airport_scannerII/Airport_scannerII.md new file mode 100644 index 000000000..fdbd698ba --- /dev/null +++ b/mcxtrace-comps/examples/DTU/Airport_scannerII/Airport_scannerII.md @@ -0,0 +1,40 @@ +# The `Airp_scannerII` Instrument + +*McXtrace: Example instrument to display how to use the absorption multiobject component* + +## Identification + +- **Site:** DTU +- **Author:** E. B. Knudsen (erkn@fysik.dtu.dk) +- **Origin:** DTU Physics +- **Date:** Jan '21 + +## Description + +```text +This instrument simply has a lab source, a few monitors and a multi-off object scene +by means of the Abs_objects component. By supliying a control file and a set of +off/ply-files a scene is put together which may be used for tomography style +simulations. The default input file contains a single object: a mechanical socket. +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| SFILE | | Name of file that contains the off/ply parameters for the scene | "input_abs_objects_template.dat" | +| ANGLE | | Rotation around y-axis | 0 | +| posX | m | Displacement of scene along x-axis | 0 | +| posY | m | Displacement of scene along y-axis | 0 | +| posZ | m | Displacement of scene along z-axis | 0 | +| Ncount | 1 | Set X-ray particle count for the simulation (same as -n #) | 0 | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcxtrace-comps/examples/DTU/Airport_scannerII/Airport_scannerII.instr) for `Airport_scannerII.instr`. + +--- + +*Generated for mcxtrace 3.99.99.* \ No newline at end of file diff --git a/mcxtrace-comps/examples/DTU/Pump_probe/Pump_probe.md b/mcxtrace-comps/examples/DTU/Pump_probe/Pump_probe.md new file mode 100644 index 000000000..7f247875b --- /dev/null +++ b/mcxtrace-comps/examples/DTU/Pump_probe/Pump_probe.md @@ -0,0 +1,37 @@ +# The `Pump_probe` Instrument + +*McXtrace: Design study of a pump and probe type instrument. The sample is an excitable molecule + +Instrument short description* + +## Identification + +- **Site:** DTU +- **Author:** Erik B Knudsen +- **Origin:** DTU Fysik +- **Date:** 2013 + +## Description + +```text +Instrument longer description (type, elements, usage...) +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| excitation_prob | 1 | Fraction of the molecules in solution that are excited at t=0. | 0.2 | +| Dt | 1 | Time delay between laser pulse exciting the sample and the x-ray pulse. | 100e-9 | +| PMN | deg. | Minimum scatterign angle to be sampled | 0 | +| PMX | deg. | Maximum scattering angle to be sampled | 45 | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcxtrace-comps/examples/DTU/Pump_probe/Pump_probe.instr) for `Pump_probe.instr`. + +--- + +*Generated for mcxtrace 3.99.99.* \ No newline at end of file diff --git a/mcxtrace-comps/examples/DTU/Pump_probe_solvent/Pump_probe_solvent.md b/mcxtrace-comps/examples/DTU/Pump_probe_solvent/Pump_probe_solvent.md new file mode 100644 index 000000000..a806961cd --- /dev/null +++ b/mcxtrace-comps/examples/DTU/Pump_probe_solvent/Pump_probe_solvent.md @@ -0,0 +1,59 @@ +# The `Pump_probe_solvent` Instrument + +*McXtrace: Design study of a pump and probe type instrument. The sample is an excitable molecule* + +## Identification + +- **Site:** DTU +- **Author:** Erik B Knudsen +- **Origin:** DTU Fysik +- **Date:** \today + +## Description + +```text +This is an example instrument for simulating time resolved scattering from +optically excitable, disordered molecules in solution, including scattering +signal from the solvent. By FSOLV it is possible to change the concentration of +solute. + +This is to be considered a concept instrument model, i.e. it is _not_ a model of +an existing real instrument. A simple flat source emitting photons impinge on a chopper, +defining an X-ray pulse. Timing jitter in the chopper may be included through the JITTER +parameter which introduces a random uncertainty in the timing of the pulse. + +The X-ray pulse is allowed to propagate to the sample which is excited by an instantaneous laser +pulse at t=0. The whole sample is assumed to be excited uniformly. +A Monte Carlo choice between interacting with solvent or solute is performed at the sample position. +The chopper is set such that the X-ray pulse front will arive at the sample at t=Dt. Thus, +setting Dt<-tau (chopper opening time) will simulate the "laser-off" setting. + +The sampling of the scattered signal may be controlled by PSIMAX,PSIMIN and ETAMAX,ETAMIN +parameters. Please be aware the by restricting the azimuthal range it is not uncommon to underfill +the acceptance area of subsequent components. This is particularly the case for small psi. +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| excitation_prob | 1 | Fraction of the molecules in solution that are excited at t=0. | 0.2 | +| Dt | 1 | Time delay between laser pulse exciting the sample and the x-ray pulse. | 100e-9 | +| PSIMIN | deg. | Minimum scattering angle to be simulated. | 0 | +| PSIMAX | deg. | Maximum scattering angle to be simulated. | 50 | +| FSOLV | | Volume fraction of solvent to solute. ( =1 means only solvent, =0 only solute) | 0 | +| JITTER | s | Jitter in chopper. | 0 | +| ETAMIN | deg. | Minimum azimuthal angle for scattered photons. | -180 | +| ETAMAX | deg. | Maximum azimuthal angle for scattered photons. | 180 | +| NOSOLVENT | | If nonzero - ignore scattering from solvent. | 0 | +| NOSOLUTE | | If nonzeor - ignore scattering from solute. | 0 | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcxtrace-comps/examples/DTU/Pump_probe_solvent/Pump_probe_solvent.instr) for `Pump_probe_solvent.instr`. + +--- + +*Generated for mcxtrace 3.99.99.* \ No newline at end of file diff --git a/mcxtrace-comps/examples/ESRF/ESRF_BM29/ESRF_BM29.md b/mcxtrace-comps/examples/ESRF/ESRF_BM29/ESRF_BM29.md new file mode 100644 index 000000000..4b91f7ba2 --- /dev/null +++ b/mcxtrace-comps/examples/ESRF/ESRF_BM29/ESRF_BM29.md @@ -0,0 +1,43 @@ +# The `ESRF_BM29` Instrument + +*McXtrace: A simple BM29 model at ESRF.* + +## Identification + +- **Site:** ESRF +- **Author:** Martin Cramer Pedersen (mcpe@nbi.dk) +- **Origin:** KU-Science +- **Date:** October 28th, 2021 + +## Description + +```text +Toy model used for testing various sample components for solution-SAXS +mimicking the geometry of the BM29 beamline at ESRF: +https://www.esrf.fr/home/UsersAndScience/Experiments/MX/About_our_beamlines/bm29/beamline-specifications.html + +Note that this model does not include much of the beamline optics, instead it emulates their effect +by settgin relevant beam parameters from a model source. +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| DistanceFromSourceToFirstPinhole | m | Distance to first pinhole from source. | 31.4 | +| DistanceFromSourceToSecondPinhole | m | Distance to second pinhole - used for focussing rays. | 42.5 | +| DistanceFromSecondPinholeToSample | m | Collimation length. | 0.1 | +| DistanceFromSampleToDetector | m | Sample-detector-distance. | 2.43 | +| RadiusOfDetector | m | Radius of the circular detector. | 0.18 | +| Lambda | AA | Wavelength of the rays emitted from source. | 1.00 | +| DLambda | | Relative deviation of wavelength of the rays emitted from source. | 0.01 | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcxtrace-comps/examples/ESRF/ESRF_BM29/ESRF_BM29.instr) for `ESRF_BM29.instr`. + +--- + +*Generated for mcxtrace 3.99.99.* \ No newline at end of file diff --git a/mcxtrace-comps/examples/ESRF/ESRF_ID01/ESRF_ID01.md b/mcxtrace-comps/examples/ESRF/ESRF_ID01/ESRF_ID01.md new file mode 100644 index 000000000..adc5cfd5a --- /dev/null +++ b/mcxtrace-comps/examples/ESRF/ESRF_ID01/ESRF_ID01.md @@ -0,0 +1,50 @@ +# The `ESRF_ID01` Instrument + +*McXtrace: Nano-diffraction imaging beamline at ESRF, Grenoble* + +## Identification + +- **Site:** ESRF +- **Author:** Martin Cramer Pedersen (mcpe@nbi.dk) +- **Origin:** University of Copenhagen +- **Date:** March, 2015 + +## Description + +```text +This model of ID01 is designed specifically to conduct virtual scanning nano-diffraction imaging +experiments such as the one demonstrated Chahine et al., J. Appl. Cryst 47, 762-769. The model +includes beam-defining slits, a double Si111-monochromator, a Fresnel Zone Plate, a polycrystalline +sample designed specifically for this type of virtual experiments, and a detector set up mimicking the +set up at the actual beam-line. The nanodiffraction experiment is performed by locating a suitable peak +in the diffraction of the crystal (using the variables NominalEnergy, Delta, and Eta) +and then scan across the sample (using the variables Pix and ySamplePosition). By plotting +e.g. total detector intensity as a function of position, one can map out impurities in the sample by +their scattering properties. +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| DistanceSampleToDetector | m | Distance from sample to detector | 0.5 | +| NominalEnergy | keV | Nominal energy of photons after monochromation | 8.0 | +| Delta | deg | Angle rotating the detector around the sample in the yz-plane | 0.0 | +| Nu | deg | Horizontal plane rotation angle of the detector (for asymmetric peaks) | 0.0 | +| Eta | deg | Angle between the incoming beam and the sample normal in the yz-plane | 0.0 | +| Phi | deg | Horizontal plane rotation angle of the sample (for asymmetric peaks) | 0.0 | +| Pix | um | Horizontal offset of sample | 0.0 | +| Piy | um | Vertical offset of sample | 0.0 | +| SampleMosaicity | moa | Mosaicity of the sample crystal lattice | 1.0 | +| SampleDeltadoverd | 1 | Uncertainty in lattice parameter for the sample crystal lattice | 0.001 | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcxtrace-comps/examples/ESRF/ESRF_ID01/ESRF_ID01.instr) for `ESRF_ID01.instr`. +- http://www.esrf.eu/UsersAndScience/Experiments/StructMaterials/ID01 + +--- + +*Generated for mcxtrace 3.99.99.* \ No newline at end of file diff --git a/mcxtrace-comps/examples/ESRF/ESRF_ID11/ESRF_ID11.md b/mcxtrace-comps/examples/ESRF/ESRF_ID11/ESRF_ID11.md new file mode 100644 index 000000000..cb2d51382 --- /dev/null +++ b/mcxtrace-comps/examples/ESRF/ESRF_ID11/ESRF_ID11.md @@ -0,0 +1,39 @@ +# The `ESRF_ID11` Instrument + +*McXtrace: Model of the ESRF ID11 Transfocator based beamline.* + +## Identification + +- **Site:** ESRF +- **Author:** E. Knudsen (erkn@risoe.dtu.dk) +- **Origin:** Risø DTU +- **Date:** Nov. 26th, 2009 + +## Description + +```text +Model of the ESRF ID11 Transfocator based beamline. +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| ANGLE | deg | Rotation (misalignment) of first transfocator | 0 | +| SOURCE | | 1) Choose rectangular source with defined divergence. 2) Choose Gaussian cross-section source | 0 | +| T1_N | | Number of Be lenses in 1st IVT transfocator @31.5m | 16 | +| T2_N | | Number of Al lenses in 1st IVT transfocator @31.5m _currently deactivated by default_ | 16 | +| T3_N | | Number of Al lenses in 2nd IVT transfocator @92.25 m | 16 | +| SI_N | | Number of Si lenses in Si microfocus chip transfocator @94 m | 2 | +| IVT1BE | | If nonzero the set of Be-lenses is chosen for the IVT @31.5m. If 0 the Al set is active. | 1 | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcxtrace-comps/examples/ESRF/ESRF_ID11/ESRF_ID11.instr) for `ESRF_ID11.instr`. +- http://www.esrf.eu/UsersAndScience/Experiments/StructMaterials/ID11/ID11Source + +--- + +*Generated for mcxtrace 3.99.99.* \ No newline at end of file diff --git a/mcxtrace-comps/examples/MAXII/MAXII_711/MAXII_711.md b/mcxtrace-comps/examples/MAXII/MAXII_711/MAXII_711.md new file mode 100644 index 000000000..b456cb42d --- /dev/null +++ b/mcxtrace-comps/examples/MAXII/MAXII_711/MAXII_711.md @@ -0,0 +1,40 @@ +# The `MAXII_711` Instrument + +*McXtrace: Powder diffraction beamline* + +## Identification + +- **Site:** MAXII +- **Author:** Erik B Knudsen (erkn@fysik.dtu.dk) +- **Origin:** DTU Physics +- **Date:** Sep 2013 + +## Description + +```text +A simple beamline setup consisting of a single focusing mirror, +a monochromator, and a four-circle goniometer at the sample stage. +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| R | m | Radius of curvature of the focusing mirror. N.b. a negative curvature simply means the mirror curves towards negative x | -100 | +| phi_mirror | m | Set angle of incidence of the focusing mirror | 3 | +| phi_mono | deg | Set angle of incidence of Monochromator crystal. | 9.25 | +| chi | deg | 2nd rotation of four circle, around X. | 0 | +| ome | deg | 1st rotation of four circle, around Y. | 0 | +| phi | deg | 3rd rotation of four circle, around Y'. | 0 | +| tth | deg | 4th rotation of four circle, i.e. detector arm. Around Y. | 0 | +| dphi | deg | Restrict the powder scattering angle along vertical axis Z. | 160 | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcxtrace-comps/examples/MAXII/MAXII_711/MAXII_711.instr) for `MAXII_711.instr`. + +--- + +*Generated for mcxtrace 3.99.99.* \ No newline at end of file diff --git a/mcxtrace-comps/examples/MAXII/MAXII_811/MAXII_811.md b/mcxtrace-comps/examples/MAXII/MAXII_811/MAXII_811.md new file mode 100644 index 000000000..3f34a82d4 --- /dev/null +++ b/mcxtrace-comps/examples/MAXII/MAXII_811/MAXII_811.md @@ -0,0 +1,56 @@ +# The `MAXII_811` Instrument + +*McXtrace: XAFS and surface diffraction, Materials Science Beamline 811 at MAX-lab.* + +## Identification + +- **Site:** MAXII +- **Author:** Erik B Knudsen (erkn@fysik.dtu.dk) +- **Origin:** DTU Physics +- **Date:** Jan 23, 2011 + +## Description + +```text +Fed by a wiggler, this beamline operates in monochromatic mode with an +operational energy tunable between 2.3 – 20 keV (0.6 - 5.3 AA). +The wavelength is chosen by a double monochromator crystal setup where either +Si 111 or Si 311 may be chosen. Furthermore a double mirror +setup may be used to to focus the beam onto a sample. The rotation of the +first mirror defines the position of the second which is computed automatically. +If mirrors are in the monochromators are automatically reposistioned to +accomadate the deflected beam. +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| Emin | keV | Minmium energy of radiation emitted from wiggler. | 1e-3 | +| Emax | keV | Maxmium energy of radiation emitted from wiggler. | 12 | +| prim_h | m | Horizontal opening of primary slits. | .40e-3 | +| prim_v | m | Vertical opening of primary slits. | 0.6e-3 | +| xafs_h | m | XAFS station horizontal slit opening | 3e-3 | +| xafs_v | m | XAFS station vertical slit opening | 3e-3 | +| M1 | | Is mirror 1 in the beam? | 0 | +| M1_R | m | Radius of curvature of mirror 1. | 2000 | +| M1_pitch | deg | Central glancing angle of mirror 1. | 0 | +| M2 | | Is mirror 2 in the beam? | 0 | +| M2_R | m | Radius of curvature of mirror 2. | 800 | +| M2_pitch | deg | Central glancing angle of mirror 2. | 0 | +| theta | deg | Scattering angle of monochromators | 14.226 | +| TTH | deg | Angle at which to put the surface diffraction detector | 0 | +| ATT1 | | Should attenuation filter 1 be in the beam? | 0 | +| ATT2 | | Should attenuation filter 2 be in the beam? | 0 | +| ATT3 | | Should attenuation filter 3 be in the beam? | 0 | +| XAFS | | Flag to activate/inactivate the XAFS station | 0 | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcxtrace-comps/examples/MAXII/MAXII_811/MAXII_811.instr) for `MAXII_811.instr`. + +--- + +*Generated for mcxtrace 3.99.99.* \ No newline at end of file diff --git a/mcxtrace-comps/examples/MAXIV/MAXIV_Bloch/MAXIV_Bloch.md b/mcxtrace-comps/examples/MAXIV/MAXIV_Bloch/MAXIV_Bloch.md new file mode 100644 index 000000000..31f2ebdff --- /dev/null +++ b/mcxtrace-comps/examples/MAXIV/MAXIV_Bloch/MAXIV_Bloch.md @@ -0,0 +1,67 @@ +# The `MAXIV_Bloch` Instrument + +*McXtrace: Bloch high resolution photoelectron spectroscopy beamline under development at the MAX IV synchrotron.* + +## Identification + +- **Site:** MAXIV +- **Author:** Kristian Soerensen and Philip Smith (s154443@win.dtu.dk) +- **Origin:** DTU Physics +- **Date:** June 2018 + +## Description + +```text +This is a simple simulation of the BLOCH beamline at MAXIV. + +Two kinds of parameters are given, P and P2. +P Parameters are the ones used in the general simulation, i.e when the FOI is intensity ect. +P2 parameters are used when the strain of the beamline is the FOI, i.e what happens when the distances change. +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| Wanted_energy | keV | The grating reflection energy. Uses E0 when not set. | 0.378 | +| m | | Diffraction order, used for Monochromator angle. (fungerer ikke). | 3 | +| cff | | Constant cff value for the grating. | 0 | +| r_rho | l/mm | Ruling density of the grating. | 800 | +| SourceChoice | 0/1 | Choice of souce. For easy simulation do Flat souce [0],in nonzero, the undulator is used. | 0 | +| E0 | keV | The central energy to sample from source model. | 0.6 | +| dE | keV | Spectral width to sample from source model. | 0.4 | +| undK | | Undulator K parameter, overrides E0, only used if SourceChoice is non zero. | 5.6 | +| Nper | | Number of magnetic periods in the undulator. | 187 | +| grating_mode | 0/1 | If 1 the NIM mode will be used. If 0 cPGM. Otherwise, optimum will be calculated. | -1 | +| zm_mirror2 | m | distance(z) to mirror2 from previous component. | 2 | +| R0_M2 | | Constant relectivity of Mirror2 [0;1]. | 1 | +| zm_mirror1 | m | distance(z) to first mirror from previous component. | 14 | +| theta_mirror1 | m | glancing angle of first mirror. | 3 | +| R0_M1 | | Constant relectivity of Mirror2 [0;1]. | 1 | +| zm_mirror3 | m | distance(z) to mirror3 from previous component. | 1 | +| theta_mirror3 | deg | glancing angle of mirror3. | 3 | +| R0_M3 | | Constant relectivity of Mirror3 [0;1]. | 1 | +| zm_mirror4 | m | distance(z) to mirror4 from previous component. | 19 | +| theta_mirror4 | deg | glancing angle of mirror4. | 3 | +| R0_M4 | | Constant relectivity of Mirror4 [0;1] | 1 | +| zm_ExitSlit | m | distance from Mirror4 to exit slit. | 9 | +| xwidth_ExSlit | m | xwidth of exit slit. | 1e-2 | +| yheight_ExSlit | m | yheight of exit slit. | 1e-2 | +| Exitslit_yshift | | y-shift of the exit slit. | 0.005 | +| verbose | | Flag to print more information | 0 | +| perfectMirrors | | When 0, a toroidal mirros is used, otherwise a plane mirror is used. | 0 | +| Error | | When 1, alignment errors are applied randomly on the optics (from R. Sankari) | 0 | +| angle_grating | deg | Additional tilt on the grating angle. | 6 | +| mirror2_angle | | M2 angle used when grating_mode is 0, otherwise it is computed. | 6 | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcxtrace-comps/examples/MAXIV/MAXIV_Bloch/MAXIV_Bloch.instr) for `MAXIV_Bloch.instr`. +- Bloch_MAX IV description: https://www.maxiv.lu.se/accelerators-beamlines/beamlines/bloch/ +- McXtrace komponent definition: http://www.mcxtrace.org + +--- + +*Generated for mcxtrace 3.99.99.* \ No newline at end of file diff --git a/mcxtrace-comps/examples/MAXIV/MAXIV_DanMAX_pxrd1d/MAXIV_DanMAX_pxrd1d.md b/mcxtrace-comps/examples/MAXIV/MAXIV_DanMAX_pxrd1d/MAXIV_DanMAX_pxrd1d.md new file mode 100644 index 000000000..18906075a --- /dev/null +++ b/mcxtrace-comps/examples/MAXIV/MAXIV_DanMAX_pxrd1d/MAXIV_DanMAX_pxrd1d.md @@ -0,0 +1,58 @@ +# The `MAXIV_DanMAX_pxrd1d` Instrument + +*McXtrace: DanMAX Powder diffraction/Imaging beamline being designed at MAX IV.* + +## Identification + +- **Site:** MAXIV +- **Author:** Erik B Knudsen (erkn@fysik.dtu.dk) +- **Origin:** DTU Physics +- **Date:** Aug 2015 + +## Description + +```text +Design study model of the DanMAX PowderX/Imaging beamline. +This early version uses a Gaussian approximation source, and a simple bandpass filter +as the multilayer. +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| E0 | keV | The central energy to sample from source model. | 35 | +| DE | keV | Spectral width (std. dev. if gaussian source) to sample from source model. | 0.05 | +| undK | | Undulator K parameter, overrides E0. | 0 | +| undDetune | eV | First harmonic detuning in eV. When zero - max flux on axis. If set to approx. 4 eV one can gain ~20% of flux through the aperture. | 4 | +| DCM_e0 | keV | The energy to tune the Si monochromator to. May be different from E0. If 0 the DCM is controlled by DCM_angle. | 35 | +| DMM_e0 | keV | The energy to tune the ML monochromator to. May be different from E0. If 0 the DMM is controlled by DMM_angle. | 35 | +| oh_premonoh | m | Pre-mono (white beam) slit height. | 1e-3 | +| oh_premonow | m | Pre-mono (white beam) slit width. | 1e-3 | +| oh_endh | m | OH exit slit height. | 1e-3 | +| oh_endw | m | OH exit slit width. | 1e-3 | +| PXRDsampleap_h | m | PXRD clean-up aperture height. | 300e-6 | +| PXRDsampleap_w | m | PXRD clean-up aperture width. | 300e-6 | +| DMM_angle | deg | Glancing angle of the ML. | 0 | +| DCM_angle | deg | Glacing angle of the Si-111 monochromator crystals. | 0 | +| DCM | | If nonzero the high-resolution SI DCM is active. | 1 | +| DMM | | If nonzero the multilayer mono is active. | 0 | +| OH_2DCRL_N | | Number of 2D focus CRLs in the optics hutch transfocator. 0 means transfocator is inactive. | 11 | +| EH_2DCRL_N | | | 0 | +| D_EH_2DCRL | | | 0 | +| PXRD_SIMPLE | | If zero - the full powder diffraction strip detector is active, else a single circular approximation is active. | 1 | +| sample_radius | m | Powder sample cylinder radius | 100e-6 | +| pxrd_strip_tth0 | deg | Angle offset of the PXRD 1d-strip detector from the optical axis. | 0 | +| debugMon | | If nonzero, all intermediate monitors appear for debugging purposes. | 1 | +| beamStop | | If nonzero, a beamstop is in between sample and PXRD 1d-strip detector. | 0 | +| SPLITS | | Split-number at the sample-position | 1410 | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcxtrace-comps/examples/MAXIV/MAXIV_DanMAX_pxrd1d/MAXIV_DanMAX_pxrd1d.instr) for `MAXIV_DanMAX_pxrd1d.instr`. + +--- + +*Generated for mcxtrace 3.99.99.* \ No newline at end of file diff --git a/mcxtrace-comps/examples/MAXIV/MAXIV_DanMAX_pxrd2d/MAXIV_DanMAX_pxrd2d.md b/mcxtrace-comps/examples/MAXIV/MAXIV_DanMAX_pxrd2d/MAXIV_DanMAX_pxrd2d.md new file mode 100644 index 000000000..9d1e34dcd --- /dev/null +++ b/mcxtrace-comps/examples/MAXIV/MAXIV_DanMAX_pxrd2d/MAXIV_DanMAX_pxrd2d.md @@ -0,0 +1,59 @@ +# The `MAXIV_DanMAX_pxrd2d` Instrument + +*McXtrace: DanMAX Powder diffraction/Imaging beamline being designed at MAX IV.* + +## Identification + +- **Site:** MAXIV +- **Author:** Erik B Knudsen (erkn@fysik.dtu.dk) +- **Origin:** DTU Physics +- **Date:** Aug 2015 + +## Description + +```text +Design study model of the DanMAX PowderX/Imaging beamline. +This early version uses a Gaussian approximation source, and a simple bandpass filter +as the multilayer. +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| E0 | keV | The central energy to sample from source model. | 35 | +| DE | keV | Spectral width (std. dev. if gaussian source) to sample from source model. | 0.05 | +| undK | | Undulator K parameter, overrides E0. | 0 | +| undDetune | eV | First harmonic detuning in eV. When zero - max flux on axis. If set to approx. 4 eV one can gain ~20% of flux through the aperture. | 4 | +| DCM_e0 | keV | The energy to tune the Si monochromator to. May be different from E0. If 0 the DCM is controlled by DCM_angle. | 35 | +| DMM_e0 | keV | The energy to tune the ML monochromator to. May be different from E0. If 0 the DMM is controlled by DMM_angle. | 35 | +| oh_premonoh | m | Pre-mono (white beam) slit height. | 1e-3 | +| oh_premonow | m | Pre-mono (white beam) slit width. | 1e-3 | +| oh_endh | m | OH exit slit height. | 1e-3 | +| oh_endw | m | OH exit slit width. | 1e-3 | +| PXRDsampleap_h | m | PXRD clean-up aperture height. | 300e-6 | +| PXRDsampleap_w | m | PXRD clean-up aperture width. | 300e-6 | +| DMM_angle | deg | Glancing angle of the ML. | 0 | +| DCM_angle | deg | Glacing angle of the Si-111 monochromator crystals. | 0 | +| DCM | | If nonzero the high-resolution SI DCM is active. | 1 | +| DMM | | If nonzero the multilayer mono is active. | 0 | +| OH_2DCRL_N | | Number of 2D focus CRLs in the optics hutch transfocator. 0 means transfocator is inactive. | 0 | +| EH_2DCRL_N | | | 0 | +| D_EH_2DCRL | | | 0 | +| sample_radius | m | Powder sample cylinder radius | 100e-6 | +| pxrd_2d_y | m | Offset of 2d-area detector centre perpendicular to the detector arm. | 135e-3 | +| pxrd_2d_tthc | | Rotation around the sample tube (i.e. the x-axis) of the 2d-area detector arm. | 0 | +| SDD_2D | | | 150e-3 | +| debugMon | | If nonzero, all intermediate monitors appear for debugging purposes. | 1 | +| beamStop | | If nonzero, a beamstop is in between sample and PXRD 2d-detector. | 1 | +| SPLITS | | Split-number at the sample position. | 100 | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcxtrace-comps/examples/MAXIV/MAXIV_DanMAX_pxrd2d/MAXIV_DanMAX_pxrd2d.instr) for `MAXIV_DanMAX_pxrd2d.instr`. + +--- + +*Generated for mcxtrace 3.99.99.* \ No newline at end of file diff --git a/mcxtrace-comps/examples/MAXIV/MAXIV_FemtoMAX/MAXIV_FemtoMAX.md b/mcxtrace-comps/examples/MAXIV/MAXIV_FemtoMAX/MAXIV_FemtoMAX.md new file mode 100644 index 000000000..c905de272 --- /dev/null +++ b/mcxtrace-comps/examples/MAXIV/MAXIV_FemtoMAX/MAXIV_FemtoMAX.md @@ -0,0 +1,41 @@ +# The `MAXIV_FemtoMAX` Instrument + +*McXtrace: Simulation of the FemtoMAX short pulse facility at MAX IV laboratory* + +## Identification + +- **Site:** MAXIV +- **Author:** Erik B Knudsen (erkn@fysik.dtu.dk) +- **Origin:** DTU Physics +- **Date:** Jun 2017 + +## Description + +```text +This a a skeleton version of the FemtoMAX short-pulse facility at MAXIV +N.b. This model is out of date with the present day instrumentation of FemtoMAX. +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| DXUS | m | Horizontal opening of the user slit. | 1e-2 | +| DYUS | m | Vertical opening of the user slit. | 1e-2 | +| MONO | | Flag enabling the Crystal monochromator. | 1 | +| MLMONO | | Flag enabling the mulitlayer monochromator. | 1 | +| U2SRC | | Flag enabling wide source model. | 1 | +| U3SRC | | Flag enabling the narrow source model. Overrides U2SRC. | 0 | +| RX | | X-rotation of the sample goniometer. | 0 | +| RY | | Y-rotation of the sample goniometer. | 0 | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcxtrace-comps/examples/MAXIV/MAXIV_FemtoMAX/MAXIV_FemtoMAX.instr) for `MAXIV_FemtoMAX.instr`. +- https://www.maxiv.lu.se/accelerators-beamlines/beamlines/femtomax/ + +--- + +*Generated for mcxtrace 3.99.99.* \ No newline at end of file diff --git a/mcxtrace-comps/examples/NBI/NBI_Lab_TOMO/NBI_Lab_TOMO.md b/mcxtrace-comps/examples/NBI/NBI_Lab_TOMO/NBI_Lab_TOMO.md new file mode 100644 index 000000000..088e9e650 --- /dev/null +++ b/mcxtrace-comps/examples/NBI/NBI_Lab_TOMO/NBI_Lab_TOMO.md @@ -0,0 +1,41 @@ +# The `NBI_Lab_TOMO` Instrument + +*McXtrace: Laboratory tomography setup at NBI* + +## Identification + +- **Site:** NBI +- **Author:** Erik B Knudsen and M Thomsen +- **Origin:** Your institution +- **Date:** March 3rd 2014 + +## Description + +```text +Consists simply of a Mo-source, a sample, an Al-filter and a detector, all in line with each other +The sample is a chess-king off-shape. +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| fname | | filename which contains the emission spectrum for the source | "spectrumU50_th5.dat" | +| d_sample_det | m | distance between the sample and the detector | .790 | +| d_source_sample | m | distance between source adn sample | 1.1450 | +| Omega | deg | rotation angle of sample (around y-axis) | 0 | +| detw | m | Detector width | .0351 | +| deth | m | Height of detector | .0334 | +| rx | deg | Rotation of the sample around the X-axis | -80 | +| ry | deg | Rotation of the sample around the Y-axis | 0 | +| rz | deg | Rotation of the sample around the Z-axis | 0 | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcxtrace-comps/examples/NBI/NBI_Lab_TOMO/NBI_Lab_TOMO.instr) for `NBI_Lab_TOMO.instr`. + +--- + +*Generated for mcxtrace 3.99.99.* \ No newline at end of file diff --git a/mcxtrace-comps/examples/NECSA/NECSA_Brucker_D8_Advance/NECSA_Brucker_D8_Advance.md b/mcxtrace-comps/examples/NECSA/NECSA_Brucker_D8_Advance/NECSA_Brucker_D8_Advance.md new file mode 100644 index 000000000..bf79c38b5 --- /dev/null +++ b/mcxtrace-comps/examples/NECSA/NECSA_Brucker_D8_Advance/NECSA_Brucker_D8_Advance.md @@ -0,0 +1,47 @@ +# The `NECSA_Brucker_D8_Advance` Instrument + +*McXtrace: Brucker D8 Advance lab powder diffratometer* + +## Identification + +- **Site:** NECSA +- **Author:** us all in ZA ! +- **Origin:** Necsa, ZA +- **Date:** 2024 Oct 11th + +## Description + +```text +This is a lab-scale diffractometer, Brucker D8 Advance type. + +- X-ray Tubes Cu (1.54 Å), Co (1.79 Å), Cr (2.29 Å) +- Beam sizes 0.1 x 15 mm2; 1 mm collimator +- Distance btw souurce and 1st slit: 332mm +- sample-detector distance: 435 mm +- Detector LynxEye 1D 192 pixels 14.4 x 16 mm + +Example: +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| source_material | str | anode type, among Cu.txt, Co.txt, Cr.txt | "Cu.txt" | +| Emin | keV | minimum energy at the source | 1 | +| Emax | keV | maximum energy at the source | 9 | +| Gobel_radius | m | Gobel curved mirror curvature radius | 0.5 | +| Gobel_rotation | deg | Gobel curved mirror rotation | 20 | +| Gobel_coating | str | Gobel curved mirror coating, e.g. Ir.dat | "Ir.dat" | +| Sample_material | str | sample material, e.g. CIF/LAU/LAZ file | "Si.laz" | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcxtrace-comps/examples/NECSA/NECSA_Brucker_D8_Advance/NECSA_Brucker_D8_Advance.instr) for `NECSA_Brucker_D8_Advance.instr`. +- http://nanoqam.ca/wiki/lib/exe/fetch.php?media=d8_advance_discover_user_manual_vol._1_doc-m88-exx153_v6.pdf + +--- + +*Generated for mcxtrace 3.99.99.* \ No newline at end of file diff --git a/mcxtrace-comps/examples/NECSA/NECSA_MIXRAD_Nikon_Tomo/NECSA_MIXRAD_Nikon_Tomo.md b/mcxtrace-comps/examples/NECSA/NECSA_MIXRAD_Nikon_Tomo/NECSA_MIXRAD_Nikon_Tomo.md new file mode 100644 index 000000000..15200dd25 --- /dev/null +++ b/mcxtrace-comps/examples/NECSA/NECSA_MIXRAD_Nikon_Tomo/NECSA_MIXRAD_Nikon_Tomo.md @@ -0,0 +1,50 @@ +# The `NECSA_MIXRAD_Nikon_Tomo` Instrument + +*McXtrace: Nikon XTH 225 Tomograph* + +## Identification + +- **Site:** NECSA +- **Author:** us all at Necsa +- **Origin:** Necsa, ZA +- **Date:** Oct 11th 2024 + +## Description + +```text +This is a simple description of the MIXRAD Nikon X-ray tomograph installed at NECSA, ZA + +- The source voltage is 30-225 kV with a electron beam current of 1 mA. +- Anode material: Mo; Cu; W; Ag +- The source spot size is 1-3 um. +- The emission cone is 25 degrees. +- The detector is 400x400 mm, with a 200 um pixel size (2000x2000). +- The source-sample distance is at least 61 cm. +- The source-detector distance is 1.147 m. + +Example: +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| Source_material | str | source anode, e.g. W.txt | "W.txt" | +| Emin | keV | minimum energy at the source | 1 | +| Emax | keV | maximum energy at the source | 75 | +| Sample_material | str | sample material, e.g. chemical formulae or CIF file | "Fe2O3Au" | +| sample_shape | str | OFF/PLY file | "king.off" | +| Sample_rotation | deg | sample rotation angle around Y vertical | 90 | +| Sample_distance | deg | sample location wrt source. detector fixed at 1.147 m | 0.5 | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcxtrace-comps/examples/NECSA/NECSA_MIXRAD_Nikon_Tomo/NECSA_MIXRAD_Nikon_Tomo.instr) for `NECSA_MIXRAD_Nikon_Tomo.instr`. +- https://www.necsa.co.za/service/micro-focus-x-ray-radiography-and-tomography-facility-mixrad/ +- https://www.ndt.net/article/wcndt2012/papers/37_wcndtfinal00037.pdf + +--- + +*Generated for mcxtrace 3.99.99.* \ No newline at end of file diff --git a/mcxtrace-comps/examples/NIST/DBD_IBM_Si_analyzer_BC/DBD_IBM_Si_analyzer_BC.md b/mcxtrace-comps/examples/NIST/DBD_IBM_Si_analyzer_BC/DBD_IBM_Si_analyzer_BC.md new file mode 100644 index 000000000..e40844a93 --- /dev/null +++ b/mcxtrace-comps/examples/NIST/DBD_IBM_Si_analyzer_BC/DBD_IBM_Si_analyzer_BC.md @@ -0,0 +1,56 @@ +# The `DBD_IBM_Si_analyzer_BC` Instrument + +*McXtrace: Mockup of 219/B002 DBD* + +## Identification + +- **Site:** NIST +- **Author:** Marcus H. Mendenhall (marcus.mendenhall@nist.gov) +- **Origin:** NIST +- **Date:** May '17 + +## Description + +```text +This is a preliminary setup of the DBD with the Ge111 Johansson IBM +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| a_distance_error | m | Logitudinal offset of source. | 0.0 | +| figure_radius_multiplier | | Extra multiplicative factor to the crystal curvature. | 1.0 | +| lattice_radius_multiplier | | Extra factor to the lattice curvature. Currently IGNORED. | 1.0 | +| beam_hor | m | Beam width of source. | 0.01 | +| beam_vert | m | Unscaled Beam height of source. Will be scaled with take_off angle. | 0.00004 | +| tails_integral | | Integrated beam power in the source tails. | 0.05 | +| tails_width | m | Width of the source tails. | 0.002 | +| slit_1_vert | m | Vertical opening of 1st slit. | 0.004 | +| slit_1_hor | m | Horizontal opening of 1st slit. | 0.01 | +| slit_2_vert | m | Vertical opening of 2nd slit. | 0.0002 | +| slit_2_hor | m | Horizontal opening of 2nd slit. | 0.02 | +| slit_3_hor | m | Horizontal opening of 3rd slit. | 0.02 | +| slit_3_vert | m | Vertical opening of 3rd slit. | 0.01 | +| ibm_offset | m | Offset (rotational) of optical arm. | 0.00 | +| two_theta_si | deg. | Monochromator crystal scattering angle. | 94.963 | +| emin | keV | Lower energy to be simulated. | 8.047 | +| emax | keV | i Upper energy to be simulated. | 8.0471 | +| take_off | deg | Take off angle of source. | 6.0 | +| use_flat_source | | Use a soimplified flat source approximation. | 0 | +| use_si_crystal | | Activate the monochromator crystal. | 1 | +| si_hh | | 1st Miller index (h) of monochromator crystal. | 3 | +| si_kk | | 2nd index (k) of monochromator crystal. | 3 | +| si_ll | | 3rd Miller index (l) of monochromator crystal. | 3 | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcxtrace-comps/examples/NIST/DBD_IBM_Si_analyzer_BC/DBD_IBM_Si_analyzer_BC.instr) for `DBD_IBM_Si_analyzer_BC.instr`. +- +- "International Tables for Crystallography (2018). Vol. H, Chapter 3.1, pp. 224–251." + +--- + +*Generated for mcxtrace 3.99.99.* \ No newline at end of file diff --git a/mcxtrace-comps/examples/NIST/PBD_BT/PBD_BT.md b/mcxtrace-comps/examples/NIST/PBD_BT/PBD_BT.md new file mode 100644 index 000000000..89f2c45ed --- /dev/null +++ b/mcxtrace-comps/examples/NIST/PBD_BT/PBD_BT.md @@ -0,0 +1,65 @@ +# The `PBD_BT` Instrument + +*McXtrace: Mockup of NIST 219/B004 PBD* + +## Identification + +- **Site:** NIST +- **Author:** Marcus H. Mendenhall (marcus.mendenhall@nist.gov) +- **Origin:** Your institution +- **Date:** Current Date + +## Description + +```text +This is a preliminary setup of the PBD, using single-bounce crystals instead of 3-bounce crystals +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| source_y | m | Vertical offset of the source exit-widow. | 0.0 | +| source_rotation | deg | Rotation around the X-axis of the source. | 0.0 | +| beam_vert | m | Height of beam exit.window. | 0.002 | +| beam_hor | m | Width of beam exit-window. | 0.001 | +| mirror_length | m | Length of the focusing mirror | 0.05 | +| mirror_full_deflection_angle | deg | Deflection angle of mirror | 2.32 | +| mirror_center_distance | m | Distance from | 0.1 | +| mirror_focal_error | m | Additional shift on the mirror focal distance | 0.0 | +| mirror_rotation_angle | deg | Mirror tilt angle | -2.32 | +| mirror_y_offset | m | | 0.0 | +| use_mirror | | Flag to set whether to use the mirror or no. | 1 | +| mono_rotation | deg | Rotation angle of the monochromator crystal. | 0.0 | +| use_mono | | Flag enabling/disabling the monochromator. | 1 | +| mono_detuning_seconds | arcsec | Detuning angle for the monochromator crystal(s). | 34 | +| mono_misalignment_angle_arcsec | arcsec | Mislignment of the monochromator. | 0 | +| mono_incident_angle_deg | deg | Nominal angle of incidence for beam vs. monochromator. | 3.0 | +| slit_1_vert | m | 1st aperture vertical. | 0.001 | +| slit_1_hor | m | 1st aperture horizontal. | 0.0015 | +| slit_2_vert | m | 2nd aperture vertical. | 0.005 | +| slit_2_hor | m | 2nd aperture horizontal. | 0.002 | +| emin | keV | Minimal energy to sample. | 8.046 | +| emax | keV | Maximal energy to sample. | 8.050 | +| omega | deg | Sample roation around the Y-axis. | 106.715 | +| theta | deg | Sample rotation around the X-axis. | -160.0725 | +| crystal_central_angle | deg | sample_crystal_angle. | 53.355 | +| hh | | 1st Miller index of the sample crystal reflection under study. | 4 | +| kk | | 2nd Miller index of the sample crystal reflection under study. | 4 | +| ll | | 3rd Miller index of the sample crystal reflection under study. | 0 | +| use_flat_source | | Use a flat source instead of Lab_source, for debugging. | 0 | +| stop_at_energy | | Flag | 0 | +| use_3_bounce | | Use a 3-bounce set up instead of 1-bounce. | 1 | +| run_setup | string | Which setup to use? | "nosetup" | +| polarization | string | Should polarization be taken into effect. | "0" | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcxtrace-comps/examples/NIST/PBD_BT/PBD_BT.instr) for `PBD_BT.instr`. +- + +--- + +*Generated for mcxtrace 3.99.99.* \ No newline at end of file diff --git a/mcxtrace-comps/examples/NSLS2/NSLS2_CHX/NSLS2_CHX.md b/mcxtrace-comps/examples/NSLS2/NSLS2_CHX/NSLS2_CHX.md new file mode 100644 index 000000000..7d55d9d8c --- /dev/null +++ b/mcxtrace-comps/examples/NSLS2/NSLS2_CHX/NSLS2_CHX.md @@ -0,0 +1,40 @@ +# The `NSLS2_CHX` Instrument + +*McXtrace: Coherent hard x-ray beamline @ NSLS II* + +## Identification + +- **Site:** NSLS2 +- **Author:** Jana Baltser +- **Origin:** NBI, BNL +- **Date:** March 2011 + +## Description + +```text +This is a lay-out of the coherent hard x-ray (CHX) beamline at NSLS-II. +Since the ray-tracing method doesn't allow to account for partial coherence of the +undulator source, the best approximation was to use the gaussian photon beam and to neglect +diffraction effects on apertures. +The choice of the source sizes along with angular divergence corresponds to the situation of +high emittance (e=0.99nm). +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| L | m | Distance from the source to the SS1, secondary source aperture. | 33.5 | +| L2 | m | Position of the CRL. | 35.3 | +| L3 | m | Position of the Kinoform lens. | 44 | +| Energy | keV | primary energy used at the beamline. | 10 | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcxtrace-comps/examples/NSLS2/NSLS2_CHX/NSLS2_CHX.instr) for `NSLS2_CHX.instr`. + +--- + +*Generated for mcxtrace 3.99.99.* \ No newline at end of file diff --git a/mcxtrace-comps/examples/SAXSLAB/JJ_SAXS/JJ_SAXS.md b/mcxtrace-comps/examples/SAXSLAB/JJ_SAXS/JJ_SAXS.md new file mode 100644 index 000000000..27253fb0f --- /dev/null +++ b/mcxtrace-comps/examples/SAXSLAB/JJ_SAXS/JJ_SAXS.md @@ -0,0 +1,40 @@ +# The `JJ_SAXS` Instrument + +*McXtrace: Crude model of a laboratory SAXS-instrument mimicking the type sold by SAXSlab/JJ-Xray Systems.* + +## Identification + +- **Site:** SAXSLAB +- **Author:** Erik Knudsen (erkn@risoe.dtu.dk) +- **Origin:** Risø DTU, (Finnair flight AY67 to Hong Kong) +- **Date:** September 24th, 2009 + +## Description + +```text +This is a very sketchy model of a SAXS-system, related to the old design of JJ X-ray systems. +It has been superseeded by the SAXS_saxslab model. +Limitations include: +- Focusing only in 1 direction. +- iNo reflectivity coating is implemented. +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| pin2_pos | m | distance between 1st and 2nd pinhole in beam tube | 0.2 | +| pin3_pos | m | distance between 2nd and 3rd pinhole in beam tube | 0.4 | +| optic_L | m | length of the focusing optic | 0.1 | +| sample_pos | m | distance from 3rd pinhole to sample | 0.2 | +| detector_pos | m | distance from 3rd pinhole to detector | 2 | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcxtrace-comps/examples/SAXSLAB/JJ_SAXS/JJ_SAXS.instr) for `JJ_SAXS.instr`. + +--- + +*Generated for mcxtrace 3.99.99.* \ No newline at end of file diff --git a/mcxtrace-comps/examples/SAXSLAB/SAXS_saxlab/SAXS_saxlab.md b/mcxtrace-comps/examples/SAXSLAB/SAXS_saxlab/SAXS_saxlab.md new file mode 100644 index 000000000..8fdb160d8 --- /dev/null +++ b/mcxtrace-comps/examples/SAXSLAB/SAXS_saxlab/SAXS_saxlab.md @@ -0,0 +1,59 @@ +# The `SAXS_saxlab` Instrument + +*McXtrace: SAXSLab small-angle scattering (SAXS)* + +## Identification + +- **Site:** SAXSLAB +- **Author:** +- **Origin:** +- **Date:** + +## Description + +```text +The small-angle scattering (SAXS) instrument generally consists of the following parts: +the X-ray source ( the system includes rotating copper anode and KB multilayermirrors), +a pinhole collimation system and a detector. + +The geometry of this instument is such that an x-ray source (turned 45 deg.) shines light +on Montel mirror pair. The mirror pair is mounted such that the doubly reflected radiation +is deflected downwards (negative y-axis). This means the the mirror join is pointing upwards, and th +mirrors themselves extending +-45 degrees downwards. +There are slits attached to the mirror exits +This arrangement is designed to closesly resemble the SAXSlab system installed at +NBI (University of Copenhagen) + +The evolution of the beam is tracked using a series of 2D PSD monitors situated along the beam axis, +which points slightly down. +In real life the beam axis is parallel to the ground and the source is shining slightly upwards. +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| Gamma | deg | Nominal mirror glancing angle | 1.2 | +| GammaP | deg | When given, Gamma=Gamma/sqrt(2) | 0 | +| S1 | m | Distance from the source to the multilayer's surface | .045 | +| S2 | m | Focal distance of the multilayer | .9 | +| Energy | keV | Primary energy of the photon beam | 8.05 | +| mirrorin | | Flag controlling whether or not the mirror is active. | 3 | +| pin1 | | Flag controlling whther the 1st pinhole is active. | 1 | +| pin2 | | Flag controlling whther the 2nd pinhole is active. | 1 | +| pin3 | | Flag controlling whther the 3rd pinhole is active. | 1 | +| Lpsd1 | m | Distance from mirror centre to 1st diagnostic PSD. | 0.160 | +| Lpsd2 | m | Distance from vacumm chamber entry to 2nd diagnostic PSD. | 0.15 | +| Lpsd3 | m | Distance from vacumm chamber entry to 3rd diagnostic PSD. | 1.2 | +| detPos | m | Distance from vacuum chamber entry to Detector. | 1.41 | +| detOffSet | m | Final detector shift along Y | 3e-2 | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcxtrace-comps/examples/SAXSLAB/SAXS_saxlab/SAXS_saxlab.instr) for `SAXS_saxlab.instr`. + +--- + +*Generated for mcxtrace 3.99.99.* \ No newline at end of file diff --git a/mcxtrace-comps/examples/SOLEIL/SOLEIL_ANATOMIX/SOLEIL_ANATOMIX.md b/mcxtrace-comps/examples/SOLEIL/SOLEIL_ANATOMIX/SOLEIL_ANATOMIX.md new file mode 100644 index 000000000..66faff744 --- /dev/null +++ b/mcxtrace-comps/examples/SOLEIL/SOLEIL_ANATOMIX/SOLEIL_ANATOMIX.md @@ -0,0 +1,81 @@ +# The `SOLEIL_ANATOMIX` Instrument + +*McXtrace: The ANATOMIX tomography beam-line at Synchrotron SOLEIL.* + +## Identification + +- **Site:** SOLEIL +- **Author:** J. Perrin and E. Farhi +- **Origin:** Synchrotron SOLEIL +- **Date:** 2022-03-23 + +## Description + +```text +The beamline ANATOMIX (Advanced Nanotomography and Imaging with coherent X rays) +works at photon energies between 5 and 50 keV. It is dedicated to full-field +radiography and tomography in absorption and phase contrast, with pixel sizes +from 20 nm to 20 µm. + +ANATOMIX is a beamline for X-ray tomography on the micro- and nanoscale, in +absorption and phase contrast. It operates in the energy range from 5 keV upward +and allows its users to obtain two- and three-dimensional radiographic images of +bulk volume samples of macroscopic size (up to several cm thickness). For +smaller samples, a spatial resolution down to 50 nm (20 nm pixel size) can be +achieved. Real-time studies are possible at speeds of currently up to one +microtomography scan per second; higher speeds up to 20 volume scans per second +(50 ms per scan) have been demonstrated. + +A flexible sample interface enables in situ and/or operando studies under +conditions similar to the natural or working environment of the samples +(temperature, humidity, mechanical load, transport processes). Biological +samples can be measured without dehydration and, in many cases, without chemical +fixation. With suitable sample preparation, cellular imaging without cryogenic +environment is possible. + +This is a simplified model with an Undulator, a double channel-cut monochromator, +a sample stage and a detector. It models a parallel beam full field tomograph. +The monochromator is an Si(111), the sample is made of Ge. The sample is 2 cm +wide. + +List of important beamline elements. Distances are given from the center of the undulator. + +Element | Distance (m) | Description |Hutch +--------|--------------|--------------|------------------- +Diaphragm | 22.7 | Rectangular aperture | 2.5 × 2 mm2 (h×v). | OH1 +Vertical slit | 23.2 | Horizontal aperture 100. . .300 μm, removable. Increases horizontal transverse coherence where needed. | +Primary slits | 25.9 | Define footprint on mirror and other optics. | +Attenuators | 34.6 | Protect transfocator and other downstream elements. | OH3 +Mirror M1 | 35.3 | Horiz. deflection. Useful length 400 mm. Bender for horiz. focusing (focal length 3.5 m). Coatings: B4C, Rh, Pt. Grazing angle ≈ 3 mrad. | +Mirror M2 | 36.3 | Horiz. deflection. Plane mirror, steers beam back into direction parallel to direct beam, offset 5 mm. Same length, angle and coatings as M1. | +Transfocator | 37.7 | Beryllium lenses. | +Vertical slit | 38.8 | Defines horizontal secondary source when mirror is used. | +Secondary slits | 48.4 | Define footprint on monochromators. | OH4 +Attenuators | 48.8 | Filter out low energies, especially when using DMM. | +DMM | 49.8 | Under design. Vertical deflection, beam offset 20 mm. Tentative specs: two strips Ru/B4C, Ir/B4C, d = 2.4 nm. 400-mm substrates. | +DCM | 52.7 | Vertical deflection, beam offset 20 mm. Si(111), LN2-cooled. | +EH3 | 165.7-174.1 | Guard slits; TXM sample stage and zone-plate table; microtomography sample stage; detector table | EH3 +EH4 | 197.2-208.5 | Guard slits; microtomography sample stage; detector table; X-ray grating interferometer | EH4 +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| E0 | keV | Energy selected at the Undulator. | 11 | +| Emono | keV | Energy selected at the monochromator. When 0, it is set to E0. | 0 | +| dE | keV | Energy spread at the Undulator. | 1 | +| ANGLE | deg | Rotation angle of the sample stage. | 0 | +| sample | str | Sample geometry file, OFF/PLY format. | "wire.ply" | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcxtrace-comps/examples/SOLEIL/SOLEIL_ANATOMIX/SOLEIL_ANATOMIX.instr) for `SOLEIL_ANATOMIX.instr`. +- https://www.synchrotron-soleil.fr/en/beamlines/anatomix +- T Weitkamp et al 2017 J. Phys.: Conf. Ser. 849 012037 DOI: 10.1088/1742-6596/849/1/012037 + +--- + +*Generated for mcxtrace 3.99.99.* \ No newline at end of file diff --git a/mcxtrace-comps/examples/SOLEIL/SOLEIL_CASSIOPEE/SOLEIL_CASSIOPEE.md b/mcxtrace-comps/examples/SOLEIL/SOLEIL_CASSIOPEE/SOLEIL_CASSIOPEE.md new file mode 100644 index 000000000..edb45fa27 --- /dev/null +++ b/mcxtrace-comps/examples/SOLEIL/SOLEIL_CASSIOPEE/SOLEIL_CASSIOPEE.md @@ -0,0 +1,59 @@ +# The `SOLEIL_CASSIOPEE` Instrument + +*McXtrace: CASSIOPEE beamline at SOLEIL* + +## Identification + +- **Site:** SOLEIL +- **Author:** François Bertran +- **Origin:** SOLEIL +- **Date:** 11/03/2022 + +## Description + +```text +CASSIOPEE : Combined Angle- and Spin-resolved SpectroscopIes Of PhotoEmitted Electrons + +The CASSIOPEE beamline is dedicated to photoemission experiments in the 8 eV - +1500 eV photon energy range. The beamline uses two undulators, and the main +optical elements are the entrance optics and the monochromator. After the +monochromator, the beamline is divided into two branches, supplying photons to +two endstations (Spin-resolved Photoemission, and High Resolution Angle-resolved +Photoemission), both connected to a Molecular Beam Epitaxy chamber. + +Position | Element +---------|-------------------------------------------------------------------- +0 | Undulator HU60 / HU256 +21.83 | Plane mirror M1a +22.18 | Spherical mirror M1b +28.83 | Plane grating (reflection) +29.02 | Plane mirror M2 +30.83 | Slit +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| mirror_material | str | Mirror M1 coating (e.g. Pt.dat) | "Pt.dat" | +| undulator_index | 1-2 | Undulator 1=HU60; 2=HU256 | 1 | +| M1_angle | deg | M1 mirror angle. 0=auto | 0 | +| PG_angle | deg | Reflective grating monochromator. 0=auto | 0 | +| PM_angle | deg | M2 mirror angle. 0=auto | 0 | +| E0 | keV | Undulator emission energy, e.g. 40e-3 or 300e-3 keV. 0=auto | 0 | +| dE | keV | Undulator energy bandwidth, e.g. 1e-3. | 1e-3 | +| lambda | Ang | Undulator emission wavelength. Used when E0=0. | 0 | +| beta_mono | deg | Monochromator angle. 0=auto | 0 | +| r_rho | /mm | Grating number of lines/mm. 0=auto. | 0 | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcxtrace-comps/examples/SOLEIL/SOLEIL_CASSIOPEE/SOLEIL_CASSIOPEE.instr) for `SOLEIL_CASSIOPEE.instr`. +- https://www.synchrotron-soleil.fr/en/beamlines/cassiopee +- https://www.researchgate.net/deref/https%3A%2F%2Ftel.archives-ouvertes.fr%2Ftel-01064523 + +--- + +*Generated for mcxtrace 3.99.99.* \ No newline at end of file diff --git a/mcxtrace-comps/examples/SOLEIL/SOLEIL_DIFFABS/SOLEIL_DIFFABS.md b/mcxtrace-comps/examples/SOLEIL/SOLEIL_DIFFABS/SOLEIL_DIFFABS.md new file mode 100644 index 000000000..7d05330dd --- /dev/null +++ b/mcxtrace-comps/examples/SOLEIL/SOLEIL_DIFFABS/SOLEIL_DIFFABS.md @@ -0,0 +1,65 @@ +# The `SOLEIL_DIFFABS` Instrument + +*McXtrace: SOLEIL DIFFABS Combining X‐ray diffraction and absorption to study a large variety of materials* + +## Identification + +- **Site:** SOLEIL +- **Author:** E. Farhi and D. Thiaudiere +- **Origin:** SOLEIL +- **Date:** May 2023 + +## Description + +```text +This is model of the DIFFABS beam-line at synchrotron SOLEIL, combining diffraction and absorption. + +The range of instrumental techniques that can be used on this line concerns +numerous sectors of fundamental research and finalized applied research (oil +industry, nuclear field , metallurgy) among which the science of materials and +chemistry hold a predominant position. In particular, in situ studies of the +transformations in materials at ultra-high temperature will be the domain of +excellence of this line. The interest of coupled absorption, or coupled - +diffraction measurements on powders or monocristalssingle crystals, is to ensure +that both experiments are carried out on the same zone of the sample, in +absolutely identical physico-chemical conditions (temperature, pressure, +reactive atmosphere around the sample), which is very important for establishing +correlations between the information provided by both types of measurements in +the case of complex materials or materials under extreme conditions. + +Position | Element +---------|-------------------------------------------------------------------- +0 | the BM D13-1 Bender B=1.71 T in range 3-23 keV, e-beam cross-section 55.1x20.6 µm2 123.7x1.6 µrad. Other specs give 60.1x24.9 µm and 134.8x2.1 µrad. Critical energy 8.6 keV. +11.85 | primary slit +14.92 | M1 bent mirror with Rh/Si coating. Focuses vertically the beam on the DCM. length 1300 mm, width 100 mm. 2.4 mrad incidence above 19 keV, 3 mrad in 12.5-19 keV, and 5 mrad in 6.5-12.5 keV, and 6 mrad below. +17.462 | a Si(111) DCM. First crystal is 200x100 mm flat at 2.54 m from M1; 2nd is bent 70x100 mm to focus the beam horizontally. +19.28 | M2 bent mirror with Rh coating, 1300x100 mm. Focuses vertically the beam. At 1.817 from DCM. +27.752 | secondary slits when using the KB. We ignore them here. +31.227 | a KB mirror set M3/M4 for micro focusing. We ignore them here. +31.45 | sample stage with e.g. Fluorescence and/or PowderN components. At 13.99 from DCM. +32.09 | a set of detectors (transmission, XRD and XRF), radius 654 mm +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| E0 | keV | Central energy of the interval to be looked at | 13 | +| dE | keV | Half-width of the energy interval | 1 | +| M1_angle | mrad | Rotation angle of M1/M2 mirrors. When left as 0, it is set automatically from E0. | 0 | +| M1_radius | m | Curvature radius of M1 mirror (Rh, 1300x100) longitudinal. Positive=mirror is focusing. 0=flat. | 1400 | +| M2_radius | m | Curvature radius of M2 mirror (Rh, 1300x100) sagittal. Positive=mirror is focusing. 0=flat. | 1400 | +| DCM_theta | deg | Rotation angle of DCM crystals. When left as 0, it is set automatically from E0. | 0 | +| sample | str | Sample structure file, LAU/CIF format. | "LaB6_660b_AVID2.hkl" | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcxtrace-comps/examples/SOLEIL/SOLEIL_DIFFABS/SOLEIL_DIFFABS.instr) for `SOLEIL_DIFFABS.instr`. +- https://www.synchrotron-soleil.fr/en/beamlines/diffabs +- Gallard, PhD, (2019) https://www.theses.fr/2019AIXM0037.pdf + +--- + +*Generated for mcxtrace 3.99.99.* \ No newline at end of file diff --git a/mcxtrace-comps/examples/SOLEIL/SOLEIL_DISCO/SOLEIL_DISCO.md b/mcxtrace-comps/examples/SOLEIL/SOLEIL_DISCO/SOLEIL_DISCO.md new file mode 100644 index 000000000..852354c5e --- /dev/null +++ b/mcxtrace-comps/examples/SOLEIL/SOLEIL_DISCO/SOLEIL_DISCO.md @@ -0,0 +1,40 @@ +# The `SOLEIL_DISCO` Instrument + +*McXtrace: DISCO beam-line at SOLEIL, imaging branch* + +## Identification + +- **Site:** SOLEIL +- **Author:** Stephane Bac, Emmanuel Farhi, Antoine Padovani +- **Origin:** SOLEIL +- **Date:** 01/08/2022 + +## Description + +```text +DISCO beamline description here: https://hal.archives-ouvertes.fr/hal-01479318/document +You may scan the grating monochromator with e.g.: +mxrun -n 1e5 SOLEIL_DISCO.instr -N84 x_screw=20,103 scan=1 +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| grazing_angle_one | deg | Mirrors M1/M2 rotation angle | 22.5 | +| HFP_shift | m | z translation from the HFP position (horizontal focal point detector) | 0 | +| VFP_shift | m | z translation from the VFP position (vertical focal point detector) | 0 | +| second_HFP_shift | m | z translation second HFP position | 0 | +| x_screw | mm | length of the screw | 50 | +| scan | | if there is an x_screw scan [1], calculate the Wavelength(Angstroms) as a function of x_screw(mm) | 0 | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcxtrace-comps/examples/SOLEIL/SOLEIL_DISCO/SOLEIL_DISCO.instr) for `SOLEIL_DISCO.instr`. +- https://www.synchrotron-soleil.fr/en/beamlines/disco + +--- + +*Generated for mcxtrace 3.99.99.* \ No newline at end of file diff --git a/mcxtrace-comps/examples/SOLEIL/SOLEIL_LUCIA/SOLEIL_LUCIA.md b/mcxtrace-comps/examples/SOLEIL/SOLEIL_LUCIA/SOLEIL_LUCIA.md new file mode 100644 index 000000000..96c201f0f --- /dev/null +++ b/mcxtrace-comps/examples/SOLEIL/SOLEIL_LUCIA/SOLEIL_LUCIA.md @@ -0,0 +1,46 @@ +# The `SOLEIL_LUCIA` Instrument + +*McXtrace: A simple model for LUCIA at SOLEIL (fluorescence).* + +## Identification + +- **Site:** SOLEIL +- **Author:** E. Farhi +- **Origin:** SOLEIL +- **Date:** 2023 + +## Description + +```text +The HU52 undulator, a DCM, a fluorescence sample, and monitors. +This model does not contain any focusing mirror. +The sample is a kind of biological cell. + +Position | Element +---------|-------------------------------------------------------------------- +0 | HU52 undulator "Apple II" type, 32 periods, gap 15-150mm +20 | Si(111) DCM, 40x40x10 mm^3 E0=5-16 keV +29 | Sample location +29.1 | Fluorescence Detector at 90 deg +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| E0 | keV | Nominal energy at the source, in 0.6-8 keV. | 3.09 | +| dE | keV | Energy half-bandwidth at the source. | 0.02 | +| dcm_theta | deg | Rotation angle of the DCM. 0=set from energy E0. | 38.9 | +| sample_material | str | Absorption data file for the sample. | "CaCO3AlP" | +| sample_geometry | str | OFF/PLY file name for sample 3D geometry, or NULL for a box. | "plant_cell.ply" | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcxtrace-comps/examples/SOLEIL/SOLEIL_LUCIA/SOLEIL_LUCIA.instr) for `SOLEIL_LUCIA.instr`. +- https://www.synchrotron-soleil.fr/en/beamlines/lucia + +--- + +*Generated for mcxtrace 3.99.99.* \ No newline at end of file diff --git a/mcxtrace-comps/examples/SOLEIL/SOLEIL_MARS/SOLEIL_MARS.md b/mcxtrace-comps/examples/SOLEIL/SOLEIL_MARS/SOLEIL_MARS.md new file mode 100644 index 000000000..df5027981 --- /dev/null +++ b/mcxtrace-comps/examples/SOLEIL/SOLEIL_MARS/SOLEIL_MARS.md @@ -0,0 +1,48 @@ +# The `SOLEIL_MARS` Instrument + +*McXtrace: The MARS beam-line at Synchrotron SOLEIL.* + +## Identification + +- **Site:** SOLEIL +- **Author:** IGUILIZ Salah-Eddine, MENUT Denis and FARHI Emmanuel. +- **Origin:** SOLEIL +- **Date:** July 2022 + +## Description + +```text +MARS beamline is aiming to extend the research capabilities on radioactive +matter towards the use of synchrotron radiation in multidisciplinary fields +biology, chemistry, physics) with respect to national and European safety law*. + +The design of MARS beamline (infrastructure and optics) is also optimized to +alternatively run two experimental stations in orlder to perform +characterizations with transmission and high resolution X-ray powder-diffraction +(XRD), Wide Angle X-ray Scattering (WAXS), Small Angle X-ray scattering (SAXS), +standard and high resolution X-ray absorption spectroscopy (XANES, EXAFS and +HERFD-XANES) and microbeam techniques (microXRF, XAS, XRD). + +This model implements the XRD station for powders. +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| E0 | keV | Central energy to be emitted by the source | 16.99 | +| reflec_material_M12 | str | reflecting coating on curved mirrors, e.g. Pt | "Pt.dat" | +| reflections | str | Sample structure file, LAU/CIF format. | "LaB6_660b_AVID2.hkl" | +| dEr | 1 | Relative half width to emitted by the source, e.g. 1e-4 | 1e-4 | +| alpha | deg | Asymmetry angle for the crystals. | 0 | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcxtrace-comps/examples/SOLEIL/SOLEIL_MARS/SOLEIL_MARS.instr) for `SOLEIL_MARS.instr`. +- https://www.synchrotron-soleil.fr/en/beamlines/mars + +--- + +*Generated for mcxtrace 3.99.99.* \ No newline at end of file diff --git a/mcxtrace-comps/examples/SOLEIL/SOLEIL_PSICHE/SOLEIL_PSICHE.md b/mcxtrace-comps/examples/SOLEIL/SOLEIL_PSICHE/SOLEIL_PSICHE.md new file mode 100644 index 000000000..a6d7d0672 --- /dev/null +++ b/mcxtrace-comps/examples/SOLEIL/SOLEIL_PSICHE/SOLEIL_PSICHE.md @@ -0,0 +1,49 @@ +# The `SOLEIL_PSICHE` Instrument + +*McXtrace: A simple model of the PSICHE tomography/diffraction beam-line at Synchrotron SOLEIL.* + +## Identification + +- **Site:** SOLEIL +- **Author:** Emmanuel FARHI +- **Origin:** SOLEIL +- **Date:** Apr 26th 2023 + +## Description + +```text +The PSICHÉ beamline is installed on a short straight section of the SOLEIL +(I03c), The source is a under vacuum multi-pole wiggler (2.1 T) which delivers +a white beam with a large photon energy range (15-100+ keV). +To perform the various experiments performed on the beamline, 4 different +operating modes are available. + +This model allows the white beam mode for energy dispersive x-ray diffraction, +and the monochromatic beam tomography. + +The sample handles absorption, with edge contrast, as well as fluorescence. +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| E0 | keV | Nominal energy at the Wiggler. Sets the monochromator angle when DCM_present | 31 | +| dE | keV | Energy half-bandwidth at the Wiggler | 1 | +| DCM_present | 1 | Allow the monochromator in place (1) or removed (0, white beam) | 0 | +| sample_theta | deg | Rotation of the sample stage | 0 | +| sample_material | str | Absorption data file for the sample | "Ag" | +| sample_geometry | str | OFF/PLY file name for sample 3D geometry, or emty for a box | "wire.ply" | +| dcm_theta | deg | Rotation angle of the DCM. 0=set from energy E0 | 0 | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcxtrace-comps/examples/SOLEIL/SOLEIL_PSICHE/SOLEIL_PSICHE.instr) for `SOLEIL_PSICHE.instr`. +- https://www.synchrotron-soleil.fr/en/beamlines/psiche +- A. King et al, Rev Sci Instrum 87, 093704 (2016), DOI: 10.1063/1.4961365 + +--- + +*Generated for mcxtrace 3.99.99.* \ No newline at end of file diff --git a/mcxtrace-comps/examples/SOLEIL/SOLEIL_PX2a/SOLEIL_PX2a.md b/mcxtrace-comps/examples/SOLEIL/SOLEIL_PX2a/SOLEIL_PX2a.md new file mode 100644 index 000000000..4dc5d4559 --- /dev/null +++ b/mcxtrace-comps/examples/SOLEIL/SOLEIL_PX2a/SOLEIL_PX2a.md @@ -0,0 +1,56 @@ +# The `SOLEIL_PX2a` Instrument + +*McXtrace: The PROXIMA-2a MX beam-line at Synchrotron SOLEIL.* + +## Identification + +- **Site:** SOLEIL +- **Author:** M. Savko and E. Farhi +- **Origin:** Synchrotron SOLEIL +- **Date:** 2022-03-23 + +## Description + +```text +PROXIMA 2A (PX2-A) is a microfocus beamline dedicated to biological +crystallography and innovative micro-beam methodologies. Opened to the +scientific community since 2013, the topics treated on the beamline go beyond +standard protein crystallography and include drug discovery, membrane proteins, +virus crystallography, small molecule crystallography, powder diffraction and +even crystalluria. The beamline is highly automated and designed to help +scientists tackle the most challenging structural targets and biological +systems. The X-ray energy is rapidly tunable over a wide range (6-18 keV) making +the most commonly used absorption edges accessible for anomalous diffraction +experiments. The end station is equipped with a high capacity sample-changing +system (148 SPINE pins), a high performance micro-diffractometer with a +mini-kappa (MD2), an X-ray fluorescence detector (KETEK), and a fast, low-noise, +photon-counting, area detector - the EIGER X 9M (238 fps in 9M mode, 750 fps in +4M mode). + +This is a simplified model with an Undulator, mirrors, a double crystal +monochromator, a sample stage and a detector. +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| E0 | keV | Energy selected at the Undulator. | 12.65 | +| hfm_radius | m | horizontally focusing mirror radius | 495 | +| vfm_radius | m | vertically focusing mirror radius | 859 | +| mirror_grazing_angle | deg | Tilt angle of the mirrors. | 4e-3 | +| sample | str | Sample structure file, LAU/CIF format. | "adrenaline.lau" | +| rotX | deg | Sample rotation around X | 0 | +| rotY | deg | Sample rotation around Y | 0 | +| rotZ | deg | Sample rotation around Z | 0 | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcxtrace-comps/examples/SOLEIL/SOLEIL_PX2a/SOLEIL_PX2a.instr) for `SOLEIL_PX2a.instr`. +- https://www.synchrotron-soleil.fr/en/beamlines/proxima-2a + +--- + +*Generated for mcxtrace 3.99.99.* \ No newline at end of file diff --git a/mcxtrace-comps/examples/SOLEIL/SOLEIL_ROCK/SOLEIL_ROCK.md b/mcxtrace-comps/examples/SOLEIL/SOLEIL_ROCK/SOLEIL_ROCK.md new file mode 100644 index 000000000..fce34eb56 --- /dev/null +++ b/mcxtrace-comps/examples/SOLEIL/SOLEIL_ROCK/SOLEIL_ROCK.md @@ -0,0 +1,74 @@ +# The `SOLEIL_ROCK` Instrument + +*McXtrace: ROCK beam-line at SOLEIL* + +## Identification + +- **Site:** SOLEIL +- **Author:** Stephane Bac, Antoine Padovani, Emmanuel Farhi +- **Origin:** SOLEIL +- **Date:** 23/02/2022 + +## Description + +```text +ROCK : Rocking Optics for Chemical Kinetics ROCK time-resolved X-ray + +Absorption spectroscopy (XAS) beamline Energy range 4 - 40 keV +The ROCK beamline (ROCK being the acronym for Rocking Optics for Chemical Kinetics) +is devoted to the study of fast kinetic processes in nanomaterials used in +catalysis and batteries. The objective is to contribute to the development of +more efficient catalysts and batteries which should find successful industrial +applications in the field of energy generation and storage in compliance with +the protection of public health and environment. The better knowledge at the +atomic scale of nanomaterials involved in catalysis or energy storage provided +by time-resolved XAS is recognized by the concerned communities as mandatory +for establishing synthesis strategies leading to important breakthroughs in +the production of energy from renewable sources and in the development of +advanced energy storage devices. + +Position | Element +---------|-------------------------------------------------------------------- +0 | Bending_magnet 1.72 T +8.5336 | Slit 1/2 +10.15 | Toroidal mirror M1 +11.69 | Slit 3 +16.82 | Mirror M2a +18.15 | Slit 4 +19 | Channel-cut Si monochromator at 20 (Si220), 18.92 or 19.25 m (Si111) +21.13 | Slit 5/6 +22.44 | Mirror M2b +32.44 | Sample + +Examples: +Copper scan: mxrun SOLEIL_ROCK.instr E0=8.500,9.500 scan=1 cc=2 -N100 +Manganese and chrome scan: mxrun SOLEIL_ROCK.instr E0=5.700,6.800 scan=1 sample_file=MnCr cc=2 -N100 +Pretty energy repartition monitor result: mxrun SOLEIL_ROCK.instr E0=17.000 cc=2 -n1e8 +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| E0 | keV | Energy to hit, i.e. selected by the channel-cut monochromator | 15.918 | +| dE | keV | Energy spread at the source | 1 | +| scan | 0-1 | 0 no energy scan, 1 energy scan | 0 | +| angle_m2a_m2b | rad | M2A/M2B mirror's deviation angle, can vary from 0.0035 to 0.0104 | 0.008 | +| angle_m1 | rad | M1 mirror's deviation angle | 0.0045 | +| sample_file | string | Sample chemical formulae | "CuMo" | +| reflec_material_M1 | str | Material reflectivity file name for M1 mirror, e.g. "Ir.dat" | "Ir.dat" | +| reflec_material_M2A_M2B | str | Material reflectivity file name for M2A and M2B mirror. Use NULL for automatic setting. | "NULL" | +| cc | 0-3 | Channel-cut monochromator type. 0 for Si 220 with an energy range of 5.62883-46.2834 eV/4-35 deg (hit-table:11.752-34.055 ev/5.44-15.94 deg); 1 for Si 111 long 3.44694-28.3427 eV/4-35 deg (hit-table:7.196-20.854 ev/5.44-15.94 deg); 2 for Si 111 short 3.44694-18.914.3 eV/6-35 deg (hittable:5.323-18.914 ev/6-21.8 deg); 3 changes cc dynamically | 0 | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcxtrace-comps/examples/SOLEIL/SOLEIL_ROCK/SOLEIL_ROCK.instr) for `SOLEIL_ROCK.instr`. +- https://www.synchrotron-soleil.fr/en/beamlines/rock +- https://gitlab.synchrotron-soleil.fr/grades/mcxtrace-rock +- https://github.com/antoinepado/glitch_runner_rock + +--- + +*Generated for mcxtrace 3.99.99.* \ No newline at end of file diff --git a/mcxtrace-comps/examples/SOLEIL/SOLEIL_SIXS/SOLEIL_SIXS.md b/mcxtrace-comps/examples/SOLEIL/SOLEIL_SIXS/SOLEIL_SIXS.md new file mode 100644 index 000000000..a64440868 --- /dev/null +++ b/mcxtrace-comps/examples/SOLEIL/SOLEIL_SIXS/SOLEIL_SIXS.md @@ -0,0 +1,74 @@ +# The `SOLEIL_SIXS` Instrument + +*McXtrace: A simple model for the SIXS beam-line at SOLEIL (surface diffraction).* + +## Identification + +- **Site:** SOLEIL +- **Author:** E. Farhi, A. Resta, A. Coati +- **Origin:** SOLEIL +- **Date:** 2023 + +## Description + +```text +SixS (Surface Interface X-ray Scattering) is a beamline dedicated to the study +of X-ray scattering from surfaces and interfaces of hard and soft matter in +various environments in the 5-20 keV energy range. To be sensitive to the +surface all the studies are performed in grazing-incidence geometry. The +beamline is equipped with two experimental hutches, which ae dedicated to the +study of surfaces, interfaces and nano-objets prepared: + +- in-situ under UHV (Ultra High Vacuum, i.e. 10-10 mbar) conditions. A +diffractometer allows to measure X-ray scattering from samples under UHV; +- in various environments (catalysis chambers, soft matter, electrochemical +cells). A diffractometer coupled with exchangeable chambers will be able to +measure X-ray scattering from sample surfaces both in vertical or horizontal +geometries. + +Grazing Incidence X-ray Diffraction (GIXD), Grazing Incidence Small Angle +X-ray Scattering (GISAXS), anomalous surface X-ray scattering, X-Ray +Reflectivity (XRR), magnetic surface X-ray scattering and coherent scattering +experiments are performed on both the facilities. + +In this implementation, the multipurpose diffractometer is used, with a thin +single crystal layer on top of a Si bulk. + +Position | Element +---------|-------------------------------------------------------------------- +0 | the U20 undulator +15 | Slit S1 2x0.7 mm^2 +16.5 | a Si(111) DCM, 40x40x10 mm^3 E0=5-20 keV +26 | Mirror M1 Si coated with Pd, elliptically vertical focusing 20x350x20 mm^3 Incident angle 0.175 deg (3 mrad) +28 | Mirror M2 at 20x550x20mm^3. (tilted 45 deg exchange horz/vert components for UHV) +33 | multipurpose diffractometer +42 | UHV diffractometer (not modelled here) + +Example: E0=10 Detector: mon_spl_fluo_I=3.66859e+14 +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| E0 | keV | Nominal energy at the Wiggler. | 13 | +| dE | keV | Energy half-bandwidth at the Wiggler | 0.1 | +| dcm_theta | deg | Rotation angle of the DCM. 0=set from energy E0 | 0 | +| M1_angle | mrad | Rotation angle of M1/M2 mirrors. When left as 0, it is set automatically from E0. | 3 | +| M1_radius | m | Curvature radius of M1 mirror (Rh, 1300x100) longitudinal. Positive=mirror is focusing. 0=flat. | 1400 | +| M2_radius | m | Curvature radius of M2 mirror (Rh, 1300x100) sagittal. Positive=mirror is focusing. 0=flat. | 1400 | +| sample_coating | str | Reflection/structure data file for the single crystal thin layer coating | "Mo.lau" | +| sample_bulk | str | Reflection/structure data file for the single crystal bulk | "Si.lau" | +| sample_thickness | m | The single crystal thin layer coating thickness | 50e-10 | +| sample_angle | deg | The sample tilt angle (around X axis) | 0.175 | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcxtrace-comps/examples/SOLEIL/SOLEIL_SIXS/SOLEIL_SIXS.instr) for `SOLEIL_SIXS.instr`. +- https://www.synchrotron-soleil.fr/en/beamlines/sixs + +--- + +*Generated for mcxtrace 3.99.99.* \ No newline at end of file diff --git a/mcxtrace-comps/examples/SOLEIL/SOLEIL_SWING/SOLEIL_SWING.md b/mcxtrace-comps/examples/SOLEIL/SOLEIL_SWING/SOLEIL_SWING.md new file mode 100644 index 000000000..f899faf4b --- /dev/null +++ b/mcxtrace-comps/examples/SOLEIL/SOLEIL_SWING/SOLEIL_SWING.md @@ -0,0 +1,60 @@ +# The `SOLEIL_SWING` Instrument + +*McXtrace: A simple model for the SWING beam-line at SOLEIL (small angle scattering, SAXS).* + +## Identification + +- **Site:** SOLEIL +- **Author:** E. Farhi, S. Bac +- **Origin:** SOLEIL +- **Date:** 2025 + +## Description + +```text +The SWING beamline targets soft condensed matter, conformation of +macro-molecules in solution (BioSAXS) and material sciences. Our experimental +set up allows simultaneous small-angle X-ray scattering (SAXS) and wide-angle +X-ray scattering measurements (WAXS) in the 5-16 keV energy range. Anomalous +scattering experiments can also be performed. A very large variety of types of +samples can be studied, e.g., solutions, gels, amorphous solids, crystallized +solids, thanks to the diversity of the proposed sample environments. + +This model may use any PDB file as sample, or an ideal sphere colloid for testing. + +Position | Element +---------|-------------------------------------------------------------------- +0 | U20 undulator +11.7 | Diaphragm providing HxV=1x0.5 mm beam +20 | Si(111) DCM, 40x40x10 mm^3 E0=5-16 keV +22.5 | Focusing KB (HFM + VFM) +31 | Linear H-CRL (f=81 cm): 31 m +32 | Sample location +32.5-39 | Detector 162.5 x 155.2 mm + +Example: E0=13 Detector: Eiger4M_I=7.5752e+06 +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| E0 | keV | Nominal energy at the Wiggler. | 13 | +| dE | keV | Energy half-bandwidth at the Wiggler | 0.1 | +| dcm_theta | deg | Rotation angle of the DCM. 0=set from energy E0 | 0 | +| hfm_radius | m | Horizontally focusing mirror radius. | 495 | +| vfm_radius | m | Vertically focusing mirror radius. | 859 | +| mirror_grazing_angle | deg | Tilt angle of the mirrors. | 4e-3 | +| sample | str | Sample given as a PDB file, or NULL for a 100A dilute Sphere model. | "6lyz.pdb" | +| sample_det | m | Sample to detector distance in m. | 2 | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcxtrace-comps/examples/SOLEIL/SOLEIL_SWING/SOLEIL_SWING.instr) for `SOLEIL_SWING.instr`. +- https://www.synchrotron-soleil.fr/en/beamlines/swing + +--- + +*Generated for mcxtrace 3.99.99.* \ No newline at end of file diff --git a/mcxtrace-comps/examples/SSRL/SSRL_bl_11_2_not_white_src/SSRL_bl_11_2_not_white_src.md b/mcxtrace-comps/examples/SSRL/SSRL_bl_11_2_not_white_src/SSRL_bl_11_2_not_white_src.md new file mode 100644 index 000000000..b8432bdd1 --- /dev/null +++ b/mcxtrace-comps/examples/SSRL/SSRL_bl_11_2_not_white_src/SSRL_bl_11_2_not_white_src.md @@ -0,0 +1,44 @@ +# The `SSRL_bl_11_2_not_white_src` Instrument + +*McXtrace: Simulating the beamline 11-2 of SSRL to reproduce their glitches database. +The source is chosen to not be white in this instrument to increase the detected photons, another .instr has a white source.* + +## Identification + +- **Site:** SSRL +- **Author:** Stephane Bac, Antoine Padovani +- **Origin:** Synchrotron Soleil +- **Date:** Dec 5th 2022 + +## Description + +```text +BL 11-2 beamline description here: https://www-ssrl.slac.stanford.edu/mes/11-2/manual.php +https://www-ssrl.slac.stanford.edu/mes/Glitch_Curves/ , the instrument is the BL in the unfocussed and uncollimated mode +SSRL glitch database found here: https://www-ssrl.slac.stanford.edu/smbin/dataextractnew.pl +Documentation and results of the .instr here: https://gitlab.synchrotron-soleil.fr/grades/beamlines/-/tree/main/glitches +A jupyter notebook will soon be available regrouping everything. +You may scan like so for example: +mxrun -n 1e7 SSRL_bl_11_2_not_white_src.instr -N601 Etohit=6900,7500 + +Example: Etohit=6900 Detector: EnergyMonitor_first_I=1.3e+10 +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| Etohit | eV. | Energy used to calculate the bragg angle the monochromator is put at. This is the energy we select. | 6900 | +| h | 1 | Miller indices. | 2 | +| k | 1 | Miller indices. | 2 | +| l | 1 | Miller indices. | 0 | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcxtrace-comps/examples/SSRL/SSRL_bl_11_2_not_white_src/SSRL_bl_11_2_not_white_src.instr) for `SSRL_bl_11_2_not_white_src.instr`. + +--- + +*Generated for mcxtrace 3.99.99.* \ No newline at end of file diff --git a/mcxtrace-comps/examples/SSRL/SSRL_bl_11_2_white_src/SSRL_bl_11_2_white_src.md b/mcxtrace-comps/examples/SSRL/SSRL_bl_11_2_white_src/SSRL_bl_11_2_white_src.md new file mode 100644 index 000000000..2f9810faa --- /dev/null +++ b/mcxtrace-comps/examples/SSRL/SSRL_bl_11_2_white_src/SSRL_bl_11_2_white_src.md @@ -0,0 +1,44 @@ +# The `SSRL_bl_11_2_white_src` Instrument + +*McXtrace: Simulating the beamline 11-2 of SSRL to reproduce their glitches database.* + +## Identification + +- **Site:** SSRL +- **Author:** Stephane Bac, Antoine Padovani +- **Origin:** Synchrotron Soleil +- **Date:** Dec 5th 2022 + +## Description + +```text +BL 11-2 beamline description here: https://www-ssrl.slac.stanford.edu/mes/11-2/manual.php +https://www-ssrl.slac.stanford.edu/mes/Glitch_Curves/ , the instrument is the BL in the unfocussed and uncollimated mode +SSRL glitch database found here: https://www-ssrl.slac.stanford.edu/smbin/dataextractnew.pl +Documentation and results of the .instr here: https://gitlab.synchrotron-soleil.fr/grades/beamlines/-/tree/main/glitches +A jupyter notebook will soon be available regrouping everything. +You may scan like so for example: +mxrun -n 1e7 SSRL_bl_11_2_white_src.instr -N601 Etohit=6900,7500 detuning_percentage=40 +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| Etohit | eV. | Energy used to calculate the bragg angle the monochromator is put at. This is the energy we select. | 6900 | +| h | 1 | Miller indices. | 2 | +| k | 1 | Miller indices. | 2 | +| l | 1 | Miller indices. | 0 | +| fwhm | deg. | Full width half maximum of the second crystals's rocking curve. | 0.1 | +| detuning_percentage | %. | Percentage of the rocking curve fwhm to detune the second crystal by. | 0 | +| detuning_rockingcurve | deg. | Degrees to detune the second crystal by. Used to find the 2nd xtal's rocking curve. Leave at 0 otherwise. | 0 | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcxtrace-comps/examples/SSRL/SSRL_bl_11_2_white_src/SSRL_bl_11_2_white_src.instr) for `SSRL_bl_11_2_white_src.instr`. + +--- + +*Generated for mcxtrace 3.99.99.* \ No newline at end of file diff --git a/mcxtrace-comps/examples/Templates/Focal_pt_monitor/Focal_pt_monitor.md b/mcxtrace-comps/examples/Templates/Focal_pt_monitor/Focal_pt_monitor.md new file mode 100644 index 000000000..9a9198627 --- /dev/null +++ b/mcxtrace-comps/examples/Templates/Focal_pt_monitor/Focal_pt_monitor.md @@ -0,0 +1,43 @@ +# The `Focal_pt_monitor` Instrument + +*McXtrace: Template for creating a focal point monitor.* + +## Identification + +- **Site:** Templates +- **Author:** Erik B Knudsen (erkn@fysik.dtu.dk) +- **Origin:** DTU Physics +- **Date:** Aug. 21 + +## Description + +```text +A template instrument shows how to create a focal point monitor with an +instance of Monitor_nD and an EXTEND block on a preceeding Arm. +The instrument uses a point source and a thin lens to create a focus. + +The working principle behind, is to bin the weight carried by each ray by the +z-coordinate (of a cartesian system defined by an Arm preceeding the Monitor_nD +instance) where the ray's trajectory passes closest to the Z-axis. + +Note, the origin of the monitored z-coordinate is defined by the Arm on which +the EXTEND-block is attached (In this case fpt0). If the subsequent monitor +is placed elsewhere an implicit offset will be the result. +The +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| Rcurve | m | Radius of curvature of the lens at the apex. | 100e-6 | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcxtrace-comps/examples/Templates/Focal_pt_monitor/Focal_pt_monitor.instr) for `Focal_pt_monitor.instr`. + +--- + +*Generated for mcxtrace 3.99.99.* \ No newline at end of file diff --git a/mcxtrace-comps/examples/Templates/Template_1Slit_Diff/Template_1Slit_Diff.md b/mcxtrace-comps/examples/Templates/Template_1Slit_Diff/Template_1Slit_Diff.md new file mode 100644 index 000000000..f4a06bfad --- /dev/null +++ b/mcxtrace-comps/examples/Templates/Template_1Slit_Diff/Template_1Slit_Diff.md @@ -0,0 +1,34 @@ +# The `Template_1Slit_Diff` Instrument + +*McXtrace: An example instrument showing single slit diffraction* + +## Identification + +- **Site:** Templates +- **Author:** Erik B Knudsen (erkn@fysik.dtu.dk) +- **Origin:** DTU Physics +- **Date:** Jan 2014 + +## Description + +```text +A template instrument that shows how single slit diffraction works. +The slit is positioned 1m downstream from a point source. The slit +width may be varied. The slit height is set to .8e-6 m. +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| SLITW | m | Width of the slit in question. The | 5e-6 | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcxtrace-comps/examples/Templates/Template_1Slit_Diff/Template_1Slit_Diff.instr) for `Template_1Slit_Diff.instr`. + +--- + +*Generated for mcxtrace 3.99.99.* \ No newline at end of file diff --git a/mcxtrace-comps/examples/Templates/Template_2Slit_Diff/Template_2Slit_Diff.md b/mcxtrace-comps/examples/Templates/Template_2Slit_Diff/Template_2Slit_Diff.md new file mode 100644 index 000000000..c50dda21c --- /dev/null +++ b/mcxtrace-comps/examples/Templates/Template_2Slit_Diff/Template_2Slit_Diff.md @@ -0,0 +1,35 @@ +# The `Template_2Slit_Diff` Instrument + +*McXtrace: An example instrument showing a Young's double slit experiment* + +## Identification + +- **Site:** Templates +- **Author:** Erik B Knudsen (erkn@fysik.dtu.dk) +- **Origin:** DTU Physics +- **Date:** Jan 2014 + +## Description + +```text +A template instrument that shows double slit diffraction. +Two identical slits are positioned 1m downstream from a point source, The slit +width and their separation may be varied. The slit height is set to .8e-6 m. +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| SLITW | m | Width of the slit in question. | 1e-6 | +| SLITSEP | m | Double slit separation. | 4e-6 | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcxtrace-comps/examples/Templates/Template_2Slit_Diff/Template_2Slit_Diff.instr) for `Template_2Slit_Diff.instr`. + +--- + +*Generated for mcxtrace 3.99.99.* \ No newline at end of file diff --git a/mcxtrace-comps/examples/Templates/Template_Johann_spec/Template_Johann_spec.md b/mcxtrace-comps/examples/Templates/Template_Johann_spec/Template_Johann_spec.md new file mode 100644 index 000000000..1b9ba30f5 --- /dev/null +++ b/mcxtrace-comps/examples/Templates/Template_Johann_spec/Template_Johann_spec.md @@ -0,0 +1,44 @@ +# The `Template_Johann_spec` Instrument + +*McXtrace: Template instrument for a curved crystal Johann-spectrometer* + +## Identification + +- **Site:** Templates +- **Author:** Erik B Knudsen (erkn@fysik.dtu.dk) +- **Origin:** DTU Physics +- **Date:** Jan 2019 + +## Description + +```text +This is a template instrument for a Johann spectrometer intended +for easy inclusion in other "real" instrument simulations. + +The source is a divergent line like source which illumnates the +full crystal. The analyzer crystal itself is modelled as a single +bent crystal curved to a primary radius of 2*Rowland-radius. + +To include a Johann spectrometer in an instrument the sample should be put where +source is in this template. and otherwis copy-paste. +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| L | m | Length of the analyzer crystal. | 0.2 | +| r_Row | m | Radius of the Rowland circle. Also governs the crystal curvature (2*r_Row). | 0.5 | +| theta_inc | deg | Angle of incidence at the crystal centre | 78.5 | +| dtheta_s | deg | Rotation angle of the Source. To allow scanning with a pencil beam across the crystal face. | 0 | +| phi_s | deg | Opening angle of source. If 0 it is set to cover the full crystal (and some). | 0 | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcxtrace-comps/examples/Templates/Template_Johann_spec/Template_Johann_spec.instr) for `Template_Johann_spec.instr`. + +--- + +*Generated for mcxtrace 3.99.99.* \ No newline at end of file diff --git a/mcxtrace-comps/examples/Templates/template/template.md b/mcxtrace-comps/examples/Templates/template/template.md new file mode 100644 index 000000000..5695c1b7f --- /dev/null +++ b/mcxtrace-comps/examples/Templates/template/template.md @@ -0,0 +1,42 @@ +# The `template` Instrument + +*McXtrace: !!Please write a short instrument (1 line) here!!* + +## Identification + +- **Site:** Templates +- **Author:** Your name (email) +- **Origin:** Your institution +- **Date:** Current Date + +## Description + +```text +Instrument longer description (type, elements, usage...) + +Example: mcrun template.instr + +once your instrument is written and functional: +- replace INSTRUMENT_SITE entry above with your Institution name as a single word +- rename the instrument name after DEFINE INSTRUMENT below +- update the parameter help in the following Parameters section +- update the instrument description, and better add a usage example with a +sensible parameter set. +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| Par1 | | | 1 | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcxtrace-comps/examples/Templates/template/template.instr) for `template.instr`. +- A reference/HTML link for more information + +--- + +*Generated for mcxtrace 3.99.99.* \ No newline at end of file diff --git a/mcxtrace-comps/examples/Templates/template_simple/template_simple.md b/mcxtrace-comps/examples/Templates/template_simple/template_simple.md new file mode 100644 index 000000000..650f0d3e6 --- /dev/null +++ b/mcxtrace-comps/examples/Templates/template_simple/template_simple.md @@ -0,0 +1,35 @@ +# The `template_simple` Instrument + +*McXtrace: [Put here the instrument short description]* + +## Identification + +- **Site:** Templates +- **Author:** +- **Origin:** +- **Date:** + +## Description + +```text +[Put here a longer instrument description] + +Example: +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| parameter1 | unit | parameter1 description | 1 | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcxtrace-comps/examples/Templates/template_simple/template_simple.instr) for `template_simple.instr`. +- + +--- + +*Generated for mcxtrace 3.99.99.* \ No newline at end of file diff --git a/mcxtrace-comps/examples/Tests/Be_BM_beamline/Be_BM_beamline.md b/mcxtrace-comps/examples/Tests/Be_BM_beamline/Be_BM_beamline.md new file mode 100644 index 000000000..eda69eea7 --- /dev/null +++ b/mcxtrace-comps/examples/Tests/Be_BM_beamline/Be_BM_beamline.md @@ -0,0 +1,39 @@ +# The `Be_BM_beamline` Instrument + +*McXtrace: Be-lens Bending Magnet, Low Budget Monochromatic (pink) X-ray beamline* + +## Identification + +- **Site:** Tests +- **Author:** E. Knudsen (erkn@risoe.dtu.dk) +- **Origin:** Risø DTU +- **Date:** Sept. 15th, 2009 + +## Description + +```text +This is a proof of concept beamline to test an idea of how to build a low-cost +monochromtic beamline. Idea is to let a polychromatic beam impinge on a focusing +Be-lens and put a slit in the focal pt. of the lens for the desired wavelength. Any +other wavelengths present in the beam will not be focussed prefectly and may be +by the slit. +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| L1 | m | Distance between source and lens | 10 | +| L2 | m | Distance between lens and and slit | 1 | +| dS | m | Slit opening. Slit opening is quadratic. | 1e-2 | +| N | 1 | NUmber of Lenses in the compund lens arrangement | 1 | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcxtrace-comps/examples/Tests/Be_BM_beamline/Be_BM_beamline.instr) for `Be_BM_beamline.instr`. + +--- + +*Generated for mcxtrace 3.99.99.* \ No newline at end of file diff --git a/mcxtrace-comps/examples/Tests/Test_Detector_pn/Test_Detector_pn.md b/mcxtrace-comps/examples/Tests/Test_Detector_pn/Test_Detector_pn.md new file mode 100644 index 000000000..405ba3937 --- /dev/null +++ b/mcxtrace-comps/examples/Tests/Test_Detector_pn/Test_Detector_pn.md @@ -0,0 +1,40 @@ +# The `Test_Detector_pn` Instrument + +*McXtrace: Unit test for Detector_pn* + +## Identification + +- **Site:** Tests +- **Author:** Erik B Knudsen +- **Origin:** DTU Physics +- **Date:** Apr 20 + +## Description + +```text +A simple unit test instrument for the Detector_pn component. It consists merely of +two sets of monitor each with: +1 regular PSD_monitor and 2 instances of Detector_pn with a scinitillator screen of +Si and Pb respectively. Obviously, no sane person would use Pb, but it's there for +illustration purposes. +A restore_flag parameter may be passed to Detector_pn which negates the absorption +effect for subsequent components. +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| restore_flag | | Should the monitor/detector instances restore the x-ray to its pre-detector state | 0 | +| E0 | keV | The central simulation energy to use. A 1% BW will be added. | 12.4 | +| DE | keV | Half energy width of the simulation energy. | 0.124 | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcxtrace-comps/examples/Tests/Test_Detector_pn/Test_Detector_pn.instr) for `Test_Detector_pn.instr`. + +--- + +*Generated for mcxtrace 3.99.99.* \ No newline at end of file diff --git a/mcxtrace-comps/examples/Tests/Test_monitors/Test_monitors.md b/mcxtrace-comps/examples/Tests/Test_monitors/Test_monitors.md new file mode 100644 index 000000000..75c9b4b50 --- /dev/null +++ b/mcxtrace-comps/examples/Tests/Test_monitors/Test_monitors.md @@ -0,0 +1,32 @@ +# The `Test_monitors` Instrument + +*McXtrace: Unit test instrument for various monitors.* + +## Identification + +- **Site:** Tests +- **Author:** Erik B Knudsen (erkn@fysik.dtu.dk) +- **Origin:** DTU Physics +- **Date:** Jan 21 + +## Description + +```text +This is a unit test instrument to test some of the McXtrace monitors. +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| monitor_no | | Pick a monitor to test - causes the others not to write any data files. | 1 | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcxtrace-comps/examples/Tests/Test_monitors/Test_monitors.instr) for `Test_monitors.instr`. + +--- + +*Generated for mcxtrace 3.99.99.* \ No newline at end of file diff --git a/mcxtrace-comps/examples/Tests_MCPL_etc/Test_MCPL_input/Test_MCPL_input.md b/mcxtrace-comps/examples/Tests_MCPL_etc/Test_MCPL_input/Test_MCPL_input.md new file mode 100644 index 000000000..68f75abdd --- /dev/null +++ b/mcxtrace-comps/examples/Tests_MCPL_etc/Test_MCPL_input/Test_MCPL_input.md @@ -0,0 +1,36 @@ +# The `Test_MCPL_input` Instrument + +*McXtrace: A test instrument for MCPL_input* + +## Identification + +- **Site:** Tests_MCPL_etc +- **Author:** Erik B Knudsen +- **Origin:** DTU +- **Date:** Mar 2016 + +## Description + +```text +This is a unit test for the MCPL_input component. +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| repeat | 1 | Repeat the contents of the inputfile this many times. NB: When using MPI you implicitly repeat by #mpi processes | 1 | +| E_smear | 1 | When repeating, make Gaussian MC choice on particle energy with spread E_smear * particle energy | 0.1 | +| pos_smear | m | When repeating, make uniform MC choice on sphere of radius pos_spear around particle position | 0.001 | +| dir_smear | deg | When repeating, make Gaussian MC choice in cone of opening dir_smear around particle direction | 0.01 | +| MCPLFILE | str | Input MCPL file. | "voutput.mcpl" | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcxtrace-comps/examples/Tests_MCPL_etc/Test_MCPL_input/Test_MCPL_input.instr) for `Test_MCPL_input.instr`. + +--- + +*Generated for mcxtrace 3.99.99.* \ No newline at end of file diff --git a/mcxtrace-comps/examples/Tests_MCPL_etc/Test_MCPL_output/Test_MCPL_output.md b/mcxtrace-comps/examples/Tests_MCPL_etc/Test_MCPL_output/Test_MCPL_output.md new file mode 100644 index 000000000..be91bc6a2 --- /dev/null +++ b/mcxtrace-comps/examples/Tests_MCPL_etc/Test_MCPL_output/Test_MCPL_output.md @@ -0,0 +1,32 @@ +# The `Test_MCPL_output` Instrument + +*McXtrace: A test instrument for MCPL_output* + +## Identification + +- **Site:** Tests +- **Author:** Erik B Knudsen +- **Origin:** DTU +- **Date:** Mar 2016 + +## Description + +```text +This is a unit test for the MCPL_output component. +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| Ncount | 1 | Override the number of rays to simulate. | 1e3 | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcxtrace-comps/examples/Tests_MCPL_etc/Test_MCPL_output/Test_MCPL_output.instr) for `Test_MCPL_output.instr`. + +--- + +*Generated for mcxtrace 3.99.99.* \ No newline at end of file diff --git a/mcxtrace-comps/examples/Tests_RNG/Test_RNG_rand01/Test_RNG_rand01.md b/mcxtrace-comps/examples/Tests_RNG/Test_RNG_rand01/Test_RNG_rand01.md new file mode 100644 index 000000000..3d1c5950a --- /dev/null +++ b/mcxtrace-comps/examples/Tests_RNG/Test_RNG_rand01/Test_RNG_rand01.md @@ -0,0 +1,40 @@ +# The `Test_RNG_rand01` Instrument + +*McXtrace: Instrument to get basic test output from random number generator.* + +## Identification + +- **Site:** Tests_RNG +- **Author:** Peter Willendrup +- **Origin:** DTU +- **Date:** Oct 2nd, 2020 + +## Description + +```text +Instrument to get basic test output from random number generator. + +The instrument generates 2 randon numbers pr. particle using randpm1(), +encoded into the particle x and y coordinates. + +For a low statistics, one may e.g. check that setting the seed gives +varied output or fixing the seed gives fixed output· +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| Ncount | 1 | Specify statistics | 1000 | +| seed | 1 | Specify RNG seed | 0 | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcxtrace-comps/examples/Tests_RNG/Test_RNG_rand01/Test_RNG_rand01.instr) for `Test_RNG_rand01.instr`. +- + +--- + +*Generated for mcxtrace 3.99.99.* \ No newline at end of file diff --git a/mcxtrace-comps/examples/Tests_RNG/Test_RNG_randnorm/Test_RNG_randnorm.md b/mcxtrace-comps/examples/Tests_RNG/Test_RNG_randnorm/Test_RNG_randnorm.md new file mode 100644 index 000000000..d81ef23f4 --- /dev/null +++ b/mcxtrace-comps/examples/Tests_RNG/Test_RNG_randnorm/Test_RNG_randnorm.md @@ -0,0 +1,40 @@ +# The `Test_RNG_randnorm` Instrument + +*McXtrace: Instrument to get basic test output from random number generator.* + +## Identification + +- **Site:** Tests_RNG +- **Author:** Peter Willendrup +- **Origin:** DTU +- **Date:** Oct 2nd, 2020 + +## Description + +```text +Instrument to get basic test output from random number generator. + +The instrument generates 2 randon numbers pr. particle using randpm1(), +encoded into the particle x and y coordinates. + +For a low statistics, one may e.g. check that setting the seed gives +varied output or fixing the seed gives fixed output· +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| Ncount | 1 | Specify statistics | 1000000 | +| seed | 1 | Specify RNG seed | 0 | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcxtrace-comps/examples/Tests_RNG/Test_RNG_randnorm/Test_RNG_randnorm.instr) for `Test_RNG_randnorm.instr`. +- + +--- + +*Generated for mcxtrace 3.99.99.* \ No newline at end of file diff --git a/mcxtrace-comps/examples/Tests_RNG/Test_RNG_randpm1/Test_RNG_randpm1.md b/mcxtrace-comps/examples/Tests_RNG/Test_RNG_randpm1/Test_RNG_randpm1.md new file mode 100644 index 000000000..464802a61 --- /dev/null +++ b/mcxtrace-comps/examples/Tests_RNG/Test_RNG_randpm1/Test_RNG_randpm1.md @@ -0,0 +1,40 @@ +# The `Test_RNG_randpm1` Instrument + +*McXtrace: Instrument to get basic test output from random number generator.* + +## Identification + +- **Site:** Tests_RNG +- **Author:** Peter Willendrup +- **Origin:** DTU +- **Date:** Oct 2nd, 2020 + +## Description + +```text +Instrument to get basic test output from random number generator. + +The instrument generates 2 randon numbers pr. particle using randpm1(), +encoded into the particle x and y coordinates. + +For a low statistics, one may e.g. check that setting the seed gives +varied output or fixing the seed gives fixed output· +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| Ncount | 1 | Specify statistics | 1000 | +| seed | 1 | Specify RNG seed | 0 | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcxtrace-comps/examples/Tests_RNG/Test_RNG_randpm1/Test_RNG_randpm1.instr) for `Test_RNG_randpm1.instr`. +- + +--- + +*Generated for mcxtrace 3.99.99.* \ No newline at end of file diff --git a/mcxtrace-comps/examples/Tests_RNG/Test_RNG_randtriangle/Test_RNG_randtriangle.md b/mcxtrace-comps/examples/Tests_RNG/Test_RNG_randtriangle/Test_RNG_randtriangle.md new file mode 100644 index 000000000..ce6b27dd5 --- /dev/null +++ b/mcxtrace-comps/examples/Tests_RNG/Test_RNG_randtriangle/Test_RNG_randtriangle.md @@ -0,0 +1,40 @@ +# The `Test_RNG_randtriangle` Instrument + +*McXtrace: Instrument to get basic test output from random number generator.* + +## Identification + +- **Site:** Tests_RNG +- **Author:** Peter Willendrup +- **Origin:** DTU +- **Date:** Oct 2nd, 2020 + +## Description + +```text +Instrument to get basic test output from random number generator. + +The instrument generates 2 randon numbers pr. particle using randpm1(), +encoded into the particle x and y coordinates. + +For a low statistics, one may e.g. check that setting the seed gives +varied output or fixing the seed gives fixed output· +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| Ncount | 1 | Specify statistics | 1000000 | +| seed | 1 | Specify RNG seed | 0 | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcxtrace-comps/examples/Tests_RNG/Test_RNG_randtriangle/Test_RNG_randtriangle.instr) for `Test_RNG_randtriangle.instr`. +- + +--- + +*Generated for mcxtrace 3.99.99.* \ No newline at end of file diff --git a/mcxtrace-comps/examples/Tests_RNG/Test_RNG_randvec_target_circle/Test_RNG_randvec_target_circle.md b/mcxtrace-comps/examples/Tests_RNG/Test_RNG_randvec_target_circle/Test_RNG_randvec_target_circle.md new file mode 100644 index 000000000..c9bba3943 --- /dev/null +++ b/mcxtrace-comps/examples/Tests_RNG/Test_RNG_randvec_target_circle/Test_RNG_randvec_target_circle.md @@ -0,0 +1,41 @@ +# The `Test_RNG_randvec_target_circle` Instrument + +*McXtrace: Instrument to get basic test output from random number generator.* + +## Identification + +- **Site:** Tests_RNG +- **Author:** Peter Willendrup +- **Origin:** DTU +- **Date:** Oct 2nd, 2020 + +## Description + +```text +Instrument to get basic test output from random number generator. + +The instrument generates 2 randon numbers pr. particle using randpm1(), +encoded into the particle x and y coordinates. + +For a low statistics, one may e.g. check that setting the seed gives +varied output or fixing the seed gives fixed output· +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| Ncount | 1 | Specify statistics | 1000000 | +| seed | 1 | Specify RNG seed | 0 | +| dist | m | Distance between synthetic point-source and monitor | 1 | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcxtrace-comps/examples/Tests_RNG/Test_RNG_randvec_target_circle/Test_RNG_randvec_target_circle.instr) for `Test_RNG_randvec_target_circle.instr`. +- + +--- + +*Generated for mcxtrace 3.99.99.* \ No newline at end of file diff --git a/mcxtrace-comps/examples/Tests_RNG/Test_RNG_randvec_target_rect/Test_RNG_randvec_target_rect.md b/mcxtrace-comps/examples/Tests_RNG/Test_RNG_randvec_target_rect/Test_RNG_randvec_target_rect.md new file mode 100644 index 000000000..d1d17182d --- /dev/null +++ b/mcxtrace-comps/examples/Tests_RNG/Test_RNG_randvec_target_rect/Test_RNG_randvec_target_rect.md @@ -0,0 +1,41 @@ +# The `Test_RNG_randvec_target_rect` Instrument + +*McXtrace: Instrument to get basic test output from random number generator.* + +## Identification + +- **Site:** Tests_RNG +- **Author:** Peter Willendrup +- **Origin:** DTU +- **Date:** Oct 2nd, 2020 + +## Description + +```text +Instrument to get basic test output from random number generator. + +The instrument generates 2 randon numbers pr. particle using randpm1(), +encoded into the particle x and y coordinates. + +For a low statistics, one may e.g. check that setting the seed gives +varied output or fixing the seed gives fixed output· +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| Ncount | 1 | Specify statistics | 1000000 | +| seed | 1 | Specify RNG seed | 0 | +| dist | m | Distance between synthetic point-source and monitor | 1 | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcxtrace-comps/examples/Tests_RNG/Test_RNG_randvec_target_rect/Test_RNG_randvec_target_rect.instr) for `Test_RNG_randvec_target_rect.instr`. +- + +--- + +*Generated for mcxtrace 3.99.99.* \ No newline at end of file diff --git a/mcxtrace-comps/examples/Tests_RNG/Test_RNG_randvec_target_rect_angular/Test_RNG_randvec_target_rect_angular.md b/mcxtrace-comps/examples/Tests_RNG/Test_RNG_randvec_target_rect_angular/Test_RNG_randvec_target_rect_angular.md new file mode 100644 index 000000000..dfe994cb8 --- /dev/null +++ b/mcxtrace-comps/examples/Tests_RNG/Test_RNG_randvec_target_rect_angular/Test_RNG_randvec_target_rect_angular.md @@ -0,0 +1,41 @@ +# The `Test_RNG_randvec_target_rect_angular` Instrument + +*McXtrace: Instrument to get basic test output from random number generator.* + +## Identification + +- **Site:** Tests_RNG +- **Author:** Peter Willendrup +- **Origin:** DTU +- **Date:** Oct 2nd, 2020 + +## Description + +```text +Instrument to get basic test output from random number generator. + +The instrument generates 2 randon numbers pr. particle using randpm1(), +encoded into the particle x and y coordinates. + +For a low statistics, one may e.g. check that setting the seed gives +varied output or fixing the seed gives fixed output· +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| Ncount | 1 | Specify statistics | 1000000 | +| seed | 1 | Specify RNG seed | 0 | +| angle | deg | Angular focusing settin | 45 | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcxtrace-comps/examples/Tests_RNG/Test_RNG_randvec_target_rect_angular/Test_RNG_randvec_target_rect_angular.instr) for `Test_RNG_randvec_target_rect_angular.instr`. +- + +--- + +*Generated for mcxtrace 3.99.99.* \ No newline at end of file diff --git a/mcxtrace-comps/examples/Tests_grammar/Test_GROUP/Test_GROUP.md b/mcxtrace-comps/examples/Tests_grammar/Test_GROUP/Test_GROUP.md new file mode 100644 index 000000000..8db09e263 --- /dev/null +++ b/mcxtrace-comps/examples/Tests_grammar/Test_GROUP/Test_GROUP.md @@ -0,0 +1,33 @@ +# The `Test_GROUP` Instrument + +*McXtrace: Tests that GROUP logic works as expected* + +## Identification + +- **Site:** Tests_grammar +- **Author:** Erik Knudsen, Peter Willendrup +- **Origin:** DTU +- **Date:** 2021/09/30 + +## Description + +```text +Unit test for the GROUP logic +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| SLITW | m | Width of the GROUP'ed slits | 1e-6 | +| SIGNI | 1 | Which slit should be hit (left or right) | 1 | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcxtrace-comps/examples/Tests_grammar/Test_GROUP/Test_GROUP.instr) for `Test_GROUP.instr`. + +--- + +*Generated for mcxtrace 3.99.99.* \ No newline at end of file diff --git a/mcxtrace-comps/examples/Tests_optics/Template_DCM/Template_DCM.md b/mcxtrace-comps/examples/Tests_optics/Template_DCM/Template_DCM.md new file mode 100644 index 000000000..c7db1abf6 --- /dev/null +++ b/mcxtrace-comps/examples/Tests_optics/Template_DCM/Template_DCM.md @@ -0,0 +1,38 @@ +# The `Template_DCM` Instrument + +*McXtrace: Template for a vertically defleting DCM* + +## Identification + +- **Site:** Tests_optics +- **Author:** Erik B Knudsen +- **Origin:** DTU Physics +- **Date:** Jan '21 + +## Description + +```text +Simple skeleton instrument showing a vertically deflecting +double crystal monochromator. To instead make it horizontally deflecting +simply add Arms before and after the crystal assembly that rotate by +90 and -90 deg. respectively around the z-axis. +The crystal is illuminated by a model point source. +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| E0 | keV | Central energy to be emitted by the source. 0=set from theta. | 0 | +| dE | keV | Half width to be emitted by the source | 0.2 | +| theta | deg | Rotation angle of the crystals. 0=set from E0. | 9.17 | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcxtrace-comps/examples/Tests_optics/Template_DCM/Template_DCM.instr) for `Template_DCM.instr`. + +--- + +*Generated for mcxtrace 3.99.99.* \ No newline at end of file diff --git a/mcxtrace-comps/examples/Tests_optics/Test_CRL/Test_CRL.md b/mcxtrace-comps/examples/Tests_optics/Test_CRL/Test_CRL.md new file mode 100644 index 000000000..babd5aaf3 --- /dev/null +++ b/mcxtrace-comps/examples/Tests_optics/Test_CRL/Test_CRL.md @@ -0,0 +1,38 @@ +# The `Test_CRL` Instrument + +*McXtrace: Unit test instrument for various lens components.* + +## Identification + +- **Site:** Tests_optics +- **Author:** Erik B Knudsen (erkn@fysik.dtu.dk) +- **Origin:** DTU Physics +- **Date:** Nov. 14 + +## Description + +```text +This is a test with the +- LENS=0: Lens_parab +- LENS=1: Lens_parab_Cyl +- LENS=2: Lens_simple +- LENS=3: Lens_CRL_RTM +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| LENS | | Which lens to use: 0=>Lens_parab, 1=>Lens_parab_Cyl, 2=>Lens_simple | 0 | +| L1 | | Distance from source to lens. | 1 | +| L2 | | Distance from lens to image plane | 11 | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcxtrace-comps/examples/Tests_optics/Test_CRL/Test_CRL.instr) for `Test_CRL.instr`. + +--- + +*Generated for mcxtrace 3.99.99.* \ No newline at end of file diff --git a/mcxtrace-comps/examples/Tests_optics/Test_CRL_Be/Test_CRL_Be.md b/mcxtrace-comps/examples/Tests_optics/Test_CRL_Be/Test_CRL_Be.md new file mode 100644 index 000000000..5711b0fda --- /dev/null +++ b/mcxtrace-comps/examples/Tests_optics/Test_CRL_Be/Test_CRL_Be.md @@ -0,0 +1,33 @@ +# The `Test_CRL_Be` Instrument + +*McXtrace: Test of a compound refractive lenses* + +## Identification + +- **Site:** Tests_optics +- **Author:** Antoine Padovani +- **Origin:** SOLEIL +- **Date:** March 2022 + +## Description + +```text +Test of a compound refractive lenses using the Lens_parab component. +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| L | m | Position of the detector for the focusing | 14 | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcxtrace-comps/examples/Tests_optics/Test_CRL_Be/Test_CRL_Be.instr) for `Test_CRL_Be.instr`. +- https://github.com/antoinepado/Corrections_School_March_2022/tree/master/DAY_2/5_Optics/1_CRLs/Be + +--- + +*Generated for mcxtrace 3.99.99.* \ No newline at end of file diff --git a/mcxtrace-comps/examples/Tests_optics/Test_Filter/Test_Filter.md b/mcxtrace-comps/examples/Tests_optics/Test_Filter/Test_Filter.md new file mode 100644 index 000000000..062223d47 --- /dev/null +++ b/mcxtrace-comps/examples/Tests_optics/Test_Filter/Test_Filter.md @@ -0,0 +1,36 @@ +# The `Test_Filter` Instrument + +*McXtrace: Test instrument for checking the Filter.comp component* + +## Identification + +- **Site:** Tests_optics +- **Author:** Erik Knudsen (erkn@risoe.dtu.dk) +- **Origin:** Risø DTU +- **Date:** July 5th 2011 + +## Description + +```text +Test instrument for checking the Filter.comp component +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| filter_mat | | Chemical symbol of the filter material | "Rh.txt" | +| thickness | m | thickness of the filter block | 100e-6 | +| L0 | AA | centre wavlength of the source | 1 | +| DL | AA | half width of the (uniform) wavelength distribution | 0.1 | +| F2 | 1 | add a 2nd filter component further away | 0 | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcxtrace-comps/examples/Tests_optics/Test_Filter/Test_Filter.instr) for `Test_Filter.instr`. + +--- + +*Generated for mcxtrace 3.99.99.* \ No newline at end of file diff --git a/mcxtrace-comps/examples/Tests_optics/Test_KB/Test_KB.md b/mcxtrace-comps/examples/Tests_optics/Test_KB/Test_KB.md new file mode 100644 index 000000000..2ec2525ff --- /dev/null +++ b/mcxtrace-comps/examples/Tests_optics/Test_KB/Test_KB.md @@ -0,0 +1,39 @@ +# The `Test_KB` Instrument + +*McXtrace: Test of Kirkpatrick Baez (KB) mirrors* + +## Identification + +- **Site:** Tests_optics +- **Author:** Antoine Padovani +- **Origin:** SOLEIL +- **Date:** March 2022 + +## Description + +```text +Two curved mirrors in a Kirkpatrick Baez geometry. Default parameters +are set for a focusing f_m=f_s= 10 m. +The KB should satisfy f_m=R.sin(theta/2) and f_s=R/2.sin(theta) + +Example: Test_KB L=12 +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| L | m | Distance to the PSD detector, with a shift by 1.5 m | 12 | +| theta | rad | Mirror glancing angle | 0.003 | +| R | m | Mirror curvature radius | 6.66e3 | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcxtrace-comps/examples/Tests_optics/Test_KB/Test_KB.instr) for `Test_KB.instr`. +- https://github.com/mccode-dev/Schools/tree/master/2023/SOLEIL_May_2023/Day2_Wednesday_May_10th/5_Optics/2_KB_mirrors + +--- + +*Generated for mcxtrace 3.99.99.* \ No newline at end of file diff --git a/mcxtrace-comps/examples/Tests_optics/Test_ML_elliptic/Test_ML_elliptic.md b/mcxtrace-comps/examples/Tests_optics/Test_ML_elliptic/Test_ML_elliptic.md new file mode 100644 index 000000000..0047d730a --- /dev/null +++ b/mcxtrace-comps/examples/Tests_optics/Test_ML_elliptic/Test_ML_elliptic.md @@ -0,0 +1,38 @@ +# The `Test_ML_elliptic` Instrument + +*McXtrace: Unit test instrument for Multilayer_elliptic* + +## Identification + +- **Site:** Tests_optics +- **Author:** Your name (email) +- **Origin:** Your institution +- **Date:** Current Date + +## Description + +```text +Tests the correct working of the mulitlyer_elliptic component both using a +reflectivity file and the kinematical approximation. +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| S1 | m | Distance from source focus to multilayer centre. | 1 | +| S2 | m | Distance from multilayer centre to focal point | 2 | +| gamma | deg | Design glancing angle at centre. | 1.2 | +| fromfile | | If nonzero read reflectivity number from a datafile ("reflectivity.txt") | 1 | +| fxw | m | width of the beam | 1e-9 | +| fyh | m | height of the beam | 1e-9 | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcxtrace-comps/examples/Tests_optics/Test_ML_elliptic/Test_ML_elliptic.instr) for `Test_ML_elliptic.instr`. + +--- + +*Generated for mcxtrace 3.99.99.* \ No newline at end of file diff --git a/mcxtrace-comps/examples/Tests_optics/Test_Mask/Test_Mask.md b/mcxtrace-comps/examples/Tests_optics/Test_Mask/Test_Mask.md new file mode 100644 index 000000000..c49bf9b9d --- /dev/null +++ b/mcxtrace-comps/examples/Tests_optics/Test_Mask/Test_Mask.md @@ -0,0 +1,33 @@ +# The `Test_Mask` Instrument + +*McXtrace: A unit test instrument of the Mask component* + +## Identification + +- **Site:** Tests_optics +- **Author:** Erik B Knudsen (erkn@fysik.dtu.dk) +- **Origin:** DTU Physics +- **Date:** 12/03/2014 + +## Description + +```text +A non-divergent beam impinges on a masking image, with 2d-detectors up- and downstream +of the mask. +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| invert | | If nonzero the transparency/opacity sense of the masking image is reversed. | 0 | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcxtrace-comps/examples/Tests_optics/Test_Mask/Test_Mask.instr) for `Test_Mask.instr`. + +--- + +*Generated for mcxtrace 3.99.99.* \ No newline at end of file diff --git a/mcxtrace-comps/examples/Tests_optics/Test_Mirror_toroid/Test_Mirror_toroid.md b/mcxtrace-comps/examples/Tests_optics/Test_Mirror_toroid/Test_Mirror_toroid.md new file mode 100644 index 000000000..9ee58cbbe --- /dev/null +++ b/mcxtrace-comps/examples/Tests_optics/Test_Mirror_toroid/Test_Mirror_toroid.md @@ -0,0 +1,33 @@ +# The `Test_Mirror_toroid` Instrument + +*McXtrace: Unit test instrument to check that Mirrror_toroid is working* + +## Identification + +- **Site:** Tests_optics +- **Author:** Erik B Knudsen (erkn@fysik.dtu.dk) +- **Origin:** DTU Physics +- **Date:** Jul 16 + +## Description + +```text +A mere unit test instrument. Also includes a perfectly flat Mirror as reference. +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| gamma | deg | Nominal glancing angle of mirror | 5 | +| Tor | 0/1 | Uses a toroidal mirror (1) or a flat mirror (0). | 1 | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcxtrace-comps/examples/Tests_optics/Test_Mirror_toroid/Test_Mirror_toroid.instr) for `Test_Mirror_toroid.instr`. + +--- + +*Generated for mcxtrace 3.99.99.* \ No newline at end of file diff --git a/mcxtrace-comps/examples/Tests_optics/Test_Mirrors/Test_Mirrors.md b/mcxtrace-comps/examples/Tests_optics/Test_Mirrors/Test_Mirrors.md new file mode 100644 index 000000000..2b673d4cc --- /dev/null +++ b/mcxtrace-comps/examples/Tests_optics/Test_Mirrors/Test_Mirrors.md @@ -0,0 +1,44 @@ +# The `Test_Mirrors` Instrument + +*McXtrace: Unit test instrument to check that Mirrors are working* + +## Identification + +- **Site:** Tests_optics +- **Author:** Erik B Knudsen (erkn@fysik.dtu.dk) +- **Origin:** DTU Physics +- **Date:** Jul 16 + +## Description + +```text +A mere unit test instrument. Also includes a perfectly flat Mirror as reference. +The choice of the Mirror to test is set with "index" +index=0: Mirror +index=1: Mirror_elliptic +index=2: Mirror_parabolic +index=3: Mirror_curved +index=4: Mirror_toroid +index=5: Mirror_toroid_pothole +index=6: Multilayer_elliptic +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| gamma | deg | Nominal glancing angle of mirror | 0.5 | +| index | 1 | Index of the Mirror component to test | 1 | +| L | m | Distance source-mirror and mirror-detector | 2 | +| radius | m | Radius of curvature | 1000 | +| E0 | keV | Mean photon energy | 12.5 | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcxtrace-comps/examples/Tests_optics/Test_Mirrors/Test_Mirrors.instr) for `Test_Mirrors.instr`. + +--- + +*Generated for mcxtrace 3.99.99.* \ No newline at end of file diff --git a/mcxtrace-comps/examples/Tests_optics/Test_Mono/Test_Mono.md b/mcxtrace-comps/examples/Tests_optics/Test_Mono/Test_Mono.md new file mode 100644 index 000000000..7b5e2eeac --- /dev/null +++ b/mcxtrace-comps/examples/Tests_optics/Test_Mono/Test_Mono.md @@ -0,0 +1,47 @@ +# The `Test_Mono` Instrument + +*McXtrace: Compares intensities of Monochromator components.* + +## Identification + +- **Site:** Tests_optics +- **Author:** A. Vickery, A. Prodi and E. Knudsen +- **Origin:** NBI,Risø DTU Physics +- **Date:** July 2011. + +## Description + +```text +Very simple setup to compare intensities diffracted by Monochromators. +It shows that implementations are equivalent. + +The input parameter 'Mono' chooses which model to use: +0: Obsolete Perfect_crystal +1: Bragg_crystal - validated component +2: Bragg_crystal_bent - bent version of the above +3: Bragg_crystal_BC - variant of the above based on Mendenhall et. al., J. Appl. Cryst 2019 +4: Bragg_crystal_bent_BC - variant of the above based on Mendenhall et. al., J. Appl. Cryst 2019 +5: Bragg_crystal_simple - a simple mono with a static (flat) Darwin width. +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| Mono | | Which monochromator model to use. See description above. | 1 | +| lambda | AA | Source wavelength. | 1.0 | +| L1 | m | Distance from source to monochromator. | 10.0 | +| OMM | deg | Rotation angle of monochromator, i.e. angle of incidence. | 14.2208 | +| TTM | deg | Scattering angle at which to put the detector. | 28.4416 | +| BEND | m | Curvature radius of the monochromator crystal lattice. Only relevant for Mono==2. | 1 | +| monsiz | m | Size (h and w) of PSD measuring diffracted beam. | 5e-5 | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcxtrace-comps/examples/Tests_optics/Test_Mono/Test_Mono.instr) for `Test_Mono.instr`. + +--- + +*Generated for mcxtrace 3.99.99.* \ No newline at end of file diff --git a/mcxtrace-comps/examples/Tests_optics/Test_capillary/Test_capillary.md b/mcxtrace-comps/examples/Tests_optics/Test_capillary/Test_capillary.md new file mode 100644 index 000000000..304c1b706 --- /dev/null +++ b/mcxtrace-comps/examples/Tests_optics/Test_capillary/Test_capillary.md @@ -0,0 +1,35 @@ +# The `Test_capillary` Instrument + +*McXtrace: Unit test instrument for the capillary tube component.* + +## Identification + +- **Site:** Tests_optics +- **Author:** E. B: Knudsen +- **Origin:** DTU Physics +- **Date:** July 2015. + +## Description + +```text +Very simple setup to compare intensities diffracted by Monochromators. +It shows that implementations are equivalent. +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| TL | m | length of capillary tube | 0.1 | +| TR | m | radius of capillary tube | 1e-4 | +| L1 | m | disatnce from source to capillary tube entrance | 3 | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcxtrace-comps/examples/Tests_optics/Test_capillary/Test_capillary.instr) for `Test_capillary.instr`. + +--- + +*Generated for mcxtrace 3.99.99.* \ No newline at end of file diff --git a/mcxtrace-comps/examples/Tests_optics/Test_grating_reflect/Test_grating_reflect.md b/mcxtrace-comps/examples/Tests_optics/Test_grating_reflect/Test_grating_reflect.md new file mode 100644 index 000000000..d4bf620e9 --- /dev/null +++ b/mcxtrace-comps/examples/Tests_optics/Test_grating_reflect/Test_grating_reflect.md @@ -0,0 +1,37 @@ +# The `Test_grating_reflect` Instrument + +*McXtrace: Unit-test instrument for the Grating reflect component.* + +## Identification + +- **Site:** Tests_optics +- **Author:** Stephane Bac, Antoine Padovani +- **Origin:** Synchrotron Soleil +- **Date:** Jul 21st 2022 + +## Description + +```text +Simply a bending magnet illuminating a reflection grating. +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| E0 | keV | Source's center of emitted energy spectrum | 1 | +| dE | keV | Source's half-width of emitted energy spectrum | 0.1 | +| angle_grating_norm | deg. | Angle between the norm of the grating and the incident ray | 88 | +| number_lines_per_mm | | Number of lines pr mm of the grating | 100 | +| order | | The target order of the grating | 0 | +| dphi | deg. | Range of diffraction angle that is to be simulated -d_phi/2 ; d_phi/2 | 1 | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcxtrace-comps/examples/Tests_optics/Test_grating_reflect/Test_grating_reflect.instr) for `Test_grating_reflect.instr`. + +--- + +*Generated for mcxtrace 3.99.99.* \ No newline at end of file diff --git a/mcxtrace-comps/examples/Tests_optics/Test_grating_trans/Test_grating_trans.md b/mcxtrace-comps/examples/Tests_optics/Test_grating_trans/Test_grating_trans.md new file mode 100644 index 000000000..5a980c5c1 --- /dev/null +++ b/mcxtrace-comps/examples/Tests_optics/Test_grating_trans/Test_grating_trans.md @@ -0,0 +1,40 @@ +# The `Test_grating_trans` Instrument + +*McXtrace: Template/test instrument for Grating_trans* + +## Identification + +- **Site:** Tests_optics +- **Author:** Erik B Knudsen (erkn@fysik.dtu.dk) +- **Origin:** DTU Physics +- **Date:** Aug 21 + +## Description + +```text +A simple test insrument for the transmission grating component. Two examples +of gratings are included matching those in the Chandra X-ray Observatory +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| E0 | keV | Central energy to emit from the source. | 1 | +| dE | kEV | Half energy spread of source. | 0.001 | +| GD | m | Distance from grating to detector. | 1 | +| Rx | deg | Rotation of grating around the X-axis. | 0 | +| Ry | deg | Rotation of grating around the Y-axis. | 0 | +| Rz | deg | Rotation of grating around the Z-axis. | 0 | +| MEG | | Flag to chosse between the two included gratings. 1: medium energy grating (MEG), 0: high energy grating (HEG). | 0 | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcxtrace-comps/examples/Tests_optics/Test_grating_trans/Test_grating_trans.instr) for `Test_grating_trans.instr`. +- https://cxc.harvard.edu/proposer/POG/html/chap8.html#tb:hetg-params + +--- + +*Generated for mcxtrace 3.99.99.* \ No newline at end of file diff --git a/mcxtrace-comps/examples/Tests_optics/Test_mirror_elliptic/Test_mirror_elliptic.md b/mcxtrace-comps/examples/Tests_optics/Test_mirror_elliptic/Test_mirror_elliptic.md new file mode 100644 index 000000000..af90885e0 --- /dev/null +++ b/mcxtrace-comps/examples/Tests_optics/Test_mirror_elliptic/Test_mirror_elliptic.md @@ -0,0 +1,35 @@ +# The `Test_mirror_elliptic` Instrument + +*McXtrace: Unit-test instrument for the Mirror_elliptic component.* + +## Identification + +- **Site:** Tests_optics +- **Author:** A. Padovani +- **Origin:** Synchrotron Soleil +- **Date:** May 9th 2022 + +## Description + +```text +Simply a flat source illuminating an elliptical mirror. + +Try distance_from_source = 1 (rays reflected back towards the center) +distance_from_source = 0.5 (rays reflected back in a parallel-like fashion) +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| distance_from_source | m | source-mirror distance | 1 | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcxtrace-comps/examples/Tests_optics/Test_mirror_elliptic/Test_mirror_elliptic.instr) for `Test_mirror_elliptic.instr`. + +--- + +*Generated for mcxtrace 3.99.99.* \ No newline at end of file diff --git a/mcxtrace-comps/examples/Tests_optics/Test_mirror_parabolic/Test_mirror_parabolic.md b/mcxtrace-comps/examples/Tests_optics/Test_mirror_parabolic/Test_mirror_parabolic.md new file mode 100644 index 000000000..434004b96 --- /dev/null +++ b/mcxtrace-comps/examples/Tests_optics/Test_mirror_parabolic/Test_mirror_parabolic.md @@ -0,0 +1,35 @@ +# The `Test_mirror_parabolic` Instrument + +*McXtrace: Unit test instrument for Mirror_parabolic* + +## Identification + +- **Site:** Tests_optics +- **Author:** Erik B Knudsen (erkn@fysik.dtu.dk) +- **Origin:** DTU Physics +- **Date:** Jan '21 + +## Description + +```text +This is a test instrument for Mirror parabolic. A collimated beam impinges on a +with normal incidence on a parabolic mirror, is reflected to the focal point, and +back to flat detector some distance, D, away. +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| D | m | Distance between mirror apex and detector plane. | 1 | +| MM | | Flag to deactivate the mirror. | 1 | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcxtrace-comps/examples/Tests_optics/Test_mirror_parabolic/Test_mirror_parabolic.instr) for `Test_mirror_parabolic.instr`. + +--- + +*Generated for mcxtrace 3.99.99.* \ No newline at end of file diff --git a/mcxtrace-comps/examples/Tests_other/test_File/test_File.md b/mcxtrace-comps/examples/Tests_other/test_File/test_File.md new file mode 100644 index 000000000..969eba74b --- /dev/null +++ b/mcxtrace-comps/examples/Tests_other/test_File/test_File.md @@ -0,0 +1,33 @@ +# The `test_File` Instrument + +*McXtrace: Demonstrates how to use the File.comp component for storing instrument +input-files as METADATA blocks* + +## Identification + +- **Site:** Tests_other +- **Author:** Greg Tucker +- **Origin:** ESS +- **Date:** 2024 + +## Description + +```text + +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcxtrace-comps/examples/Tests_other/test_File/test_File.instr) for `test_File.instr`. +- From https://github.com/g5t/mccode-file + +--- + +*Generated for mcxtrace 3.99.99.* \ No newline at end of file diff --git a/mcxtrace-comps/examples/Tests_samples/Template_SasView/Template_SasView.md b/mcxtrace-comps/examples/Tests_samples/Template_SasView/Template_SasView.md new file mode 100644 index 000000000..30469bde4 --- /dev/null +++ b/mcxtrace-comps/examples/Tests_samples/Template_SasView/Template_SasView.md @@ -0,0 +1,48 @@ +# The `Template_SasView` Instrument + +*McXtrace: Test instrument for the SasView_model component. No optics. +etc.* + +## Identification + +- **Site:** Tests_samples +- **Author:** Torben Nielsen +- **Origin:** DTU Physics / ESS DMSC +- **Date:** Jan 2017. + +## Description + +```text +Very simple test instrument for 3 examples from the suite of SasView_ components. +Select sample model with 'model_index': +1= SasView_barbell +3= SasView_bcc_paracrystal +47= SasView_parallelepiped +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| lambda | AA | Mean wavelength of X-rays | 1.54 | +| dlambda | AA | Wavelength spread of X-rays | 0.05 | +| model_index | | SASmodels model index (see SasView_model.comp mcdoc page) | 10 | +| par1 | | Slot 1 in SASmodel parameter vector | 0 | +| par2 | | Slot 2 in SASmodel parameter vector | 0 | +| par3 | | Slot 3 in SASmodel parameter vector | 0 | +| par4 | | Slot 4 in SASmodel parameter vector | 0 | +| par5 | | Slot 5 in SASmodel parameter vector | 0 | +| par6 | | Slot 6 in SASmodel parameter vector | 0 | +| par7 | | Slot 7 in SASmodel parameter vector | 0 | +| par8 | | Slot 8 in SASmodel parameter vector | 0 | +| Ncount | 1 | Override the number of rays to simulate. | 0 | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcxtrace-comps/examples/Tests_samples/Template_SasView/Template_SasView.instr) for `Template_SasView.instr`. + +--- + +*Generated for mcxtrace 3.99.99.* \ No newline at end of file diff --git a/mcxtrace-comps/examples/Tests_samples/Test_Absorption/Test_Absorption.md b/mcxtrace-comps/examples/Tests_samples/Test_Absorption/Test_Absorption.md new file mode 100644 index 000000000..df98ad275 --- /dev/null +++ b/mcxtrace-comps/examples/Tests_samples/Test_Absorption/Test_Absorption.md @@ -0,0 +1,42 @@ +# The `Test_Absorption` Instrument + +*McXtrace: Example instrument to compare material absorption components.* + +## Identification + +- **Site:** Tests_samples +- **Author:** E. Farhi (emmanuel.farhi@synchrotron-soleil.fr) +- **Origin:** Synchrotron SOLEIL +- **Date:** March '21 + +## Description + +```text +This instrument simply has a lab source, a few monitors and a set of components +to model material absorption. Material is chosen to be Mn (K-edge 6.5 keV). + +This test compares the folowwing components: +- index=1: Filter +- index=2: Absorption_sample +- index=3: Abs_objects +- index=4: Fluorescence +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| index | 1 | Index of the absorption component to use in 1-4. See above. | 1 | +| material | str | Material file to use, e.g. Mn.txt | "Mn.txt" | +| E0 | keV | Mean photon energy | 6.5 | +| dE | keV | Photon energy spread, half width | 1 | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcxtrace-comps/examples/Tests_samples/Test_Absorption/Test_Absorption.instr) for `Test_Absorption.instr`. + +--- + +*Generated for mcxtrace 3.99.99.* \ No newline at end of file diff --git a/mcxtrace-comps/examples/Tests_samples/Test_Air/Test_Air.md b/mcxtrace-comps/examples/Tests_samples/Test_Air/Test_Air.md new file mode 100644 index 000000000..660189f7f --- /dev/null +++ b/mcxtrace-comps/examples/Tests_samples/Test_Air/Test_Air.md @@ -0,0 +1,38 @@ +# The `Test_Air` Instrument + +*McXtrace: Unit test for the Air component* + +## Identification + +- **Site:** Tests_samples +- **Author:** Erik B Knudsen (erkn@fysik.dtu.dk) +- **Origin:** DTU Physics +- **Date:** + +## Description + +```text +This instrument checks whether the Air component works as intended. +A point source illuminates the central part of a rectangular volume of air ( 0.02 x 0.02 x Lair m^3 ). +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| FRAC | | Fraction of statistics to use for Air-scatter. | 0.5 | +| E0 | keV | Central energy to be emitted from the source. | 12.3984 | +| dE_E | | Relative full bandwidth of the source. | 0.1 | +| Lair | m | The length of air to be traversed by the beam. | 1 | +| MXDIV | | Maximal divergence to allow in divergence monitors. | 1 | +| AIR | | Flag to enable (nonzero) / disable (0) the block of Air. | 0 | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcxtrace-comps/examples/Tests_samples/Test_Air/Test_Air.instr) for `Test_Air.instr`. + +--- + +*Generated for mcxtrace 3.99.99.* \ No newline at end of file diff --git a/mcxtrace-comps/examples/Tests_samples/Test_FluoPowder/Test_FluoPowder.md b/mcxtrace-comps/examples/Tests_samples/Test_FluoPowder/Test_FluoPowder.md new file mode 100644 index 000000000..d50a7e8a5 --- /dev/null +++ b/mcxtrace-comps/examples/Tests_samples/Test_FluoPowder/Test_FluoPowder.md @@ -0,0 +1,44 @@ +# The `Test_FluoPowder` Instrument + +*McXtrace: Unit-test instrument for the FluoPowder sample component.* + +## Identification + +- **Site:** Tests_samples +- **Author:** Emmanuel Farhi (emmanuel.farhi.synchrotron-soleil.fr) +- **Origin:** Synchrotron Soleil +- **Date:** 2025 + +## Description + +```text +Simply a model source illuminating a fluo/powder/sx sample. +The default sample itself is an LaB6-powder. +The idea is to compare the fluorescence and diffraction patterns: +- index=1: use PowderN (no fluorescence) +- index=2: use Single_crystal (no fluorescence, slower, powder mode) +- index=3: use FluoPowder (exact) +- index=4: use Fluorescence (no diffraction) +- index=5: use Fluorescence+PowderN (under estimates contributions) +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| E0 | keV | Source mean energy of xrays. | 15 | +| dE | keV | Source energy half spread of x-rays. | 0.05 | +| L1 | m | Source-sample distance. | 10 | +| material | str | Material structure/composition as formula or LAU/CIF format. | "LaB6.cif" | +| index | 1 | Index of the sample component to use. 1=PowderN, 2=Single_crystal (much slower), 3=FluoPowder, 4=Fluorescence, 5=Fluorescence+PowderN in a GROUP (slower) | 3 | +| delta_d_d | | | 3e-4 | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcxtrace-comps/examples/Tests_samples/Test_FluoPowder/Test_FluoPowder.instr) for `Test_FluoPowder.instr`. + +--- + +*Generated for mcxtrace 3.99.99.* \ No newline at end of file diff --git a/mcxtrace-comps/examples/Tests_samples/Test_Fluorescence/Test_Fluorescence.md b/mcxtrace-comps/examples/Tests_samples/Test_Fluorescence/Test_Fluorescence.md new file mode 100644 index 000000000..211e50b2a --- /dev/null +++ b/mcxtrace-comps/examples/Tests_samples/Test_Fluorescence/Test_Fluorescence.md @@ -0,0 +1,35 @@ +# The `Test_Fluorescence` Instrument + +*McXtrace: Example instrument to test the Fluorescence sample.* + +## Identification + +- **Site:** Tests_samples +- **Author:** E. Farhi (emmanuel.farhi@synchrotron-soleil.fr) +- **Origin:** Synchrotron SOLEIL +- **Date:** March '21 + +## Description + +```text +This instrument simply has a lab source, a few monitors and a sample +to model material fluorescence, Compton and Rayleigh scattering. +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| material | str | Material file to use, e.g. chemical formulae "Pb2SnO4" | "LaB6" | +| E0 | keV | Mean photon energy | 39 | +| dE | keV | Photon energy spread, half width | 0.06 | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcxtrace-comps/examples/Tests_samples/Test_Fluorescence/Test_Fluorescence.instr) for `Test_Fluorescence.instr`. + +--- + +*Generated for mcxtrace 3.99.99.* \ No newline at end of file diff --git a/mcxtrace-comps/examples/Tests_samples/Test_PowderN/Test_PowderN.md b/mcxtrace-comps/examples/Tests_samples/Test_PowderN/Test_PowderN.md new file mode 100644 index 000000000..05f7ac941 --- /dev/null +++ b/mcxtrace-comps/examples/Tests_samples/Test_PowderN/Test_PowderN.md @@ -0,0 +1,43 @@ +# The `Test_PowderN` Instrument + +*McXtrace: Unit-test instrument for the PowderN sample component.* + +## Identification + +- **Site:** Tests_samples +- **Author:** Erik B Knudsen (erkn@fysik.dtu.dk) +- **Origin:** DTU Physics +- **Date:** 2009 + +## Description + +```text +Simply a model source illuminating a powder sample. +The default sample itself is an LaB6-powder. +Alternatively, the Single_crystal (powder mode) and FluoPowder components can also be tested. +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| E0 | keV | Source energy (width 1 keV) | 15 | +| L1 | m | Source-sample distance | 10 | +| directbeam | 1 | Suppress direct beam (0) or not (1) | 0 | +| reflections | str | List of powder reflections, LAU/LAZ/CIF format. | "LaB6.cif" | +| SPLITS | 1 | Number of SPLIT's before sample | 1 | +| frac_c | 1 | Fraction of stats assigned to coherent scattering | 0.8 | +| frac_i | 1 | Fraction of stats assigned to incoherent scattering | 0.1 | +| frac_t | 1 | Fraction of stats assigned to unscattered, "direct beam" | 0.1 | +| d_phi | deg | Angle corresponding to the vertical angular range to focus to, e.g. detector height. 0 for no focusing. | 0 | +| index | 1 | Index of the sample component to use. 1=PowderN, 2=Single_crystal, 3=FluoPowder | 1 | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcxtrace-comps/examples/Tests_samples/Test_PowderN/Test_PowderN.instr) for `Test_PowderN.instr`. + +--- + +*Generated for mcxtrace 3.99.99.* \ No newline at end of file diff --git a/mcxtrace-comps/examples/Tests_samples/Test_SAXS/Test_SAXS.md b/mcxtrace-comps/examples/Tests_samples/Test_SAXS/Test_SAXS.md new file mode 100644 index 000000000..a409d2dda --- /dev/null +++ b/mcxtrace-comps/examples/Tests_samples/Test_SAXS/Test_SAXS.md @@ -0,0 +1,54 @@ +# The `Test_SAXS` Instrument + +*McXtrace: Toy model used for testing various sample components for solution-SAXS.* + +## Identification + +- **Site:** Tests_samples +- **Author:** Martin Cramer Pedersen (mcpe@nbi.dk) and Søren Kynde (kynde@nbi.dk) +- **Origin:** KU-Science +- **Date:** October 29th, 2012 + +## Description + +```text +Toy model used for testing various sample components for solution-SAXS. + +The following SAXS samples are handled: +SAXSSpheres SAMPLE=0 +SAXSShells SAMPLE=1 +SAXSCylinders SAMPLE=2 +SAXSEllipticCylinders SAMPLE=3 +SAXSLiposomes SAMPLE=4 +SAXSNanodiscs SAMPLE=5 +SAXSNanodiscsWithTags SAMPLE=6 +SAXSPDB SAMPLE=7 (very slow, rather use SAXSPDBFast) +SAXSCurve SAMPLE=8 (inactivated) +SAXSNanodiscsFast SAMPLE=9 +SAXSNanodiscsWithTagsFast SAMPLE=10 +SAXSPDBFast SAMPLE=11 +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| DistanceFromSourceToFirstPinhole | m | Distance to first pinhole from source. | 0.05 | +| DistanceFromSourceToSecondPinhole | m | Distance to second pinhole - used for focusing rays. | 0.7 | +| DistanceFromSecondPinholeToSample | m | Collimation length. | 0.6 | +| DistanceFromSampleToDetector | m | Sample-detector-distance. | 0.48 | +| RadiusOfDetector | m | Radius of the circular detector. | 0.1 | +| Lambda | AA | Wavelength of the rays emitted from source. | 1.54 | +| DLambda | | Relative deviation of wavelength of the rays emitted from source. | 0.01 | +| SAMPLE | | Index of sample model, see above. | 0 | +| Ncount | 1 | Override the number of rays to simulate. | 0 | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcxtrace-comps/examples/Tests_samples/Test_SAXS/Test_SAXS.instr) for `Test_SAXS.instr`. + +--- + +*Generated for mcxtrace 3.99.99.* \ No newline at end of file diff --git a/mcxtrace-comps/examples/Tests_samples/Test_SX/Test_SX.md b/mcxtrace-comps/examples/Tests_samples/Test_SX/Test_SX.md new file mode 100644 index 000000000..4a7c967f2 --- /dev/null +++ b/mcxtrace-comps/examples/Tests_samples/Test_SX/Test_SX.md @@ -0,0 +1,42 @@ +# The `Test_SX` Instrument + +*McXtrace: Unit-test instrument for the Single_crystal sample component. + +Simply a model source illuminating a SX sample. +The default sample itself is a Mo bulk crystal. +The idea is to compare the fluorescence and diffraction patterns: +- index=1: use Single_crystal +- index=2: use FluoCrystal +- index=3: use Fluorescence+Single_crystal in a GROUP* + +## Identification + +- **Site:** Tests_samples +- **Author:** E. Farhi +- **Origin:** Synchrotron Soleil +- **Date:** Sept 26th 2019 + +## Description + +```text + +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| reflections | str | List of powder reflections, LAU/CIF format. | "Mo.lau" | +| index | 1 | Index of the sample component to use. 1=Single_crystal, 2=FluoCrystal, 3=Fluorescence+Single_crystal in a GROUP | 1 | +| E0 | keV | Source mean energy of xrays. | 7 | +| dE | keV | Source energy half spread of x-rays. | 6.9 | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcxtrace-comps/examples/Tests_samples/Test_SX/Test_SX.instr) for `Test_SX.instr`. + +--- + +*Generated for mcxtrace 3.99.99.* \ No newline at end of file diff --git a/mcxtrace-comps/examples/Tests_samples/Test_Saxs_spheres/Test_Saxs_spheres.md b/mcxtrace-comps/examples/Tests_samples/Test_Saxs_spheres/Test_Saxs_spheres.md new file mode 100644 index 000000000..baaefe431 --- /dev/null +++ b/mcxtrace-comps/examples/Tests_samples/Test_Saxs_spheres/Test_Saxs_spheres.md @@ -0,0 +1,35 @@ +# The `Test_Saxs_spheres` Instrument + +*McXtrace: Test instrument for the Saxs_spheres sample component. + +Simply a model source illuminating a Saxs_spheres sample. +The spheres are nominally made from Be in non-absorbing solution.* + +## Identification + +- **Site:** Tests_samples +- **Author:** Your name (email) +- **Origin:** Your institution +- **Date:** Current Date + +## Description + +```text + +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| RR | AA | Radius of the dilute hard spheres. | 100 | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcxtrace-comps/examples/Tests_samples/Test_Saxs_spheres/Test_Saxs_spheres.instr) for `Test_Saxs_spheres.instr`. + +--- + +*Generated for mcxtrace 3.99.99.* \ No newline at end of file diff --git a/mcxtrace-comps/examples/Tests_samples/Test_Sqw/Test_Sqw.md b/mcxtrace-comps/examples/Tests_samples/Test_Sqw/Test_Sqw.md new file mode 100644 index 000000000..48d728373 --- /dev/null +++ b/mcxtrace-comps/examples/Tests_samples/Test_Sqw/Test_Sqw.md @@ -0,0 +1,35 @@ +# The `Test_Sqw` Instrument + +*McXtrace: Test output of Isotropic_Sqw on a spherical monitor.* + +## Identification + +- **Site:** Tests_samples +- **Author:** E. Farhi +- **Origin:** DTU +- **Date:** Sept 21st 2022 + +## Description + +```text +A test instrument for testing Isotropic_Sqw output on a spherical monitor. +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| E0 | keV | Energy emitted from source | 12.0 | +| dE | keV | Energy spread at the source | 1e-6 | +| L1 | m | Source-sample distance | 10 | +| sqw_coh | str | Sqw material definition | "Rb_liq_coh.sqw" | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcxtrace-comps/examples/Tests_samples/Test_Sqw/Test_Sqw.instr) for `Test_Sqw.instr`. + +--- + +*Generated for mcxtrace 3.99.99.* \ No newline at end of file diff --git a/mcxtrace-comps/examples/Tests_sources/Test_BM/Test_BM.md b/mcxtrace-comps/examples/Tests_sources/Test_BM/Test_BM.md new file mode 100644 index 000000000..7c2a71ce6 --- /dev/null +++ b/mcxtrace-comps/examples/Tests_sources/Test_BM/Test_BM.md @@ -0,0 +1,34 @@ +# The `Test_BM` Instrument + +*McXtrace: Test instrument for the Bending_magnet component* + +## Identification + +- **Site:** Tests_sources +- **Author:** Erik B Knudsen (erkn@fysik.dtu.dk) +- **Origin:** DTU Physics +- **Date:** 07/05/2013 + +## Description + +```text +This is a simple test-instrument for the bending magnet component. +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| SOURCE | 0/1 | select a BM (0) or a Wiggler (1) source. | 0 | +| e0 | keV | Central energy of the interval to be looked at | 25 | +| de | keV | Half-width of energy interval | 24.9 | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcxtrace-comps/examples/Tests_sources/Test_BM/Test_BM.instr) for `Test_BM.instr`. + +--- + +*Generated for mcxtrace 3.99.99.* \ No newline at end of file diff --git a/mcxtrace-comps/examples/Tests_sources/Test_Source_quasi/Test_Source_quasi.md b/mcxtrace-comps/examples/Tests_sources/Test_Source_quasi/Test_Source_quasi.md new file mode 100644 index 000000000..f827b1f29 --- /dev/null +++ b/mcxtrace-comps/examples/Tests_sources/Test_Source_quasi/Test_Source_quasi.md @@ -0,0 +1,32 @@ +# The `Test_Source_quasi` Instrument + +*McXtrace: Test instrument to show that the quasi-stcohastic source component works* + +## Identification + +- **Site:** Tests_sources +- **Author:** Erik B Knudsen (erkn@fysik.dtu.dk) +- **Origin:** DTU Fysik +- **Date:** Feb 1st 2013 + +## Description + +```text +This instrument is a unit test for the quasi-stochastic source component. +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| SRC | | Integer parameter picks a source model. 0=normal Source_div, 1=Quasi-stochastic | 1 | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcxtrace-comps/examples/Tests_sources/Test_Source_quasi/Test_Source_quasi.instr) for `Test_Source_quasi.instr`. + +--- + +*Generated for mcxtrace 3.99.99.* \ No newline at end of file diff --git a/mcxtrace-comps/examples/Tests_sources/Test_Sources/Test_Sources.md b/mcxtrace-comps/examples/Tests_sources/Test_Sources/Test_Sources.md new file mode 100644 index 000000000..a06931a74 --- /dev/null +++ b/mcxtrace-comps/examples/Tests_sources/Test_Sources/Test_Sources.md @@ -0,0 +1,42 @@ +# The `Test_Sources` Instrument + +*McXtrace: Test instrument to show that the source components work* + +## Identification + +- **Site:** Tests_sources +- **Author:** Erik B Knudsen (erkn@fysik.dtu.dk) +- **Origin:** DTU Fysik +- **Date:** Feb 1st 2013 + +## Description + +```text +This instrument is a unit test for the source components. + +The following sources are handled: +Source_gaussian SRC=0 (with gauss=0) +Source_gaussian SRC=1 +Source_pt SRC=2 +Source_pt SRC=3 +Source_flat SRC=4 +Source_flat SRC=5 +Source_div SRC=6 +Source_div SRC=7 +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| SRC | | Integer parameter picks a source model. | 0 | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcxtrace-comps/examples/Tests_sources/Test_Sources/Test_Sources.instr) for `Test_Sources.instr`. + +--- + +*Generated for mcxtrace 3.99.99.* \ No newline at end of file diff --git a/mcxtrace-comps/examples/Tests_sources/Test_source_lab/Test_source_lab.md b/mcxtrace-comps/examples/Tests_sources/Test_source_lab/Test_source_lab.md new file mode 100644 index 000000000..0fc96eb8a --- /dev/null +++ b/mcxtrace-comps/examples/Tests_sources/Test_source_lab/Test_source_lab.md @@ -0,0 +1,35 @@ +# The `Test_source_lab` Instrument + +*McXtrace: Unit test instrument for the Source_lab component* + +## Identification + +- **Site:** Tests_sources +- **Author:** Erik B Knudsen +- **Origin:** DTU Physics +- **Date:** Jul. 8th 2014 + +## Description + +```text +This instrument serves as a unit test for the Source_lab component. +The emon1-monitor catches the Kalpha-peaks, and emon2 the Kbeta peaks. +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| Emin | keV | minimal energy of the photons at the source | 1 | +| Emax | keV | maximal energy of the photons at the source | 40 | +| LO | 0/1 | activate Lorentzian line profile at the source | 1 | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcxtrace-comps/examples/Tests_sources/Test_source_lab/Test_source_lab.instr) for `Test_source_lab.instr`. + +--- + +*Generated for mcxtrace 3.99.99.* \ No newline at end of file diff --git a/mcxtrace-comps/examples/Tests_sources/Test_source_spectra/Test_source_spectra.md b/mcxtrace-comps/examples/Tests_sources/Test_source_spectra/Test_source_spectra.md new file mode 100644 index 000000000..8af2a7747 --- /dev/null +++ b/mcxtrace-comps/examples/Tests_sources/Test_source_spectra/Test_source_spectra.md @@ -0,0 +1,38 @@ +# The `Test_source_spectra` Instrument + +*McXtrace: Test instrument for the Source_spectra component* + +## Identification + +- **Site:** Tests_sources +- **Author:** Erik B Knudsen (erkn@fysik.dtu.dk) +- **Origin:** DTU Physics +- **Date:** Aug. 10th, 2014 + +## Description + +```text +A unit test instrument for the Source component that can take input from a SPECTRA-simulation +of an undulator/wiggler etc. and input it into McXtrace. +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| E0 | keV | Central wavelength for sampling | 12.5 | +| dE | keV | Halfwidth of sampleing window (in energy) | 1 | +| stem4d | | Filename stem for 4D-datafiles from SPECTRA. | "sp8LU_xy" | +| flag4d | | If zero use projection datafiles, else use 4D. | 0 | +| stemx | | Filename stem for the x-projection data files coming from SPECTRA. | "sp8LU_x" | +| stemy | | Filename stem for the y-projection data files coming from SPECTRA | "sp8LU_y" | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcxtrace-comps/examples/Tests_sources/Test_source_spectra/Test_source_spectra.instr) for `Test_source_spectra.instr`. + +--- + +*Generated for mcxtrace 3.99.99.* \ No newline at end of file diff --git a/mcxtrace-comps/examples/Tests_sources/Test_undulator/Test_undulator.md b/mcxtrace-comps/examples/Tests_sources/Test_undulator/Test_undulator.md new file mode 100644 index 000000000..d8e94e1b8 --- /dev/null +++ b/mcxtrace-comps/examples/Tests_sources/Test_undulator/Test_undulator.md @@ -0,0 +1,34 @@ +# The `Test_undulator` Instrument + +*McXtrace: Unit test instrument for the Undulator component* + +## Identification + +- **Site:** Tests_sources +- **Author:** Erik B Knudsen +- **Origin:** DTU Physics +- **Date:** Aug 2016 + +## Description + +```text +A simple undulator with parameters as in Kim, 1989 (sec. 4). +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| minh | 1 | lowest harmonic to include in the simulation | 1 | +| maxh | 1 | highest harmonic to include in the simulation | 1 | +| FAST | 0/1 | Use a faster integration scheme | 0 | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcxtrace-comps/examples/Tests_sources/Test_undulator/Test_undulator.instr) for `Test_undulator.instr`. + +--- + +*Generated for mcxtrace 3.99.99.* \ No newline at end of file diff --git a/mcxtrace-comps/examples/XFEL/XFEL_SPB/XFEL_SPB.md b/mcxtrace-comps/examples/XFEL/XFEL_SPB/XFEL_SPB.md new file mode 100644 index 000000000..9f71e16a9 --- /dev/null +++ b/mcxtrace-comps/examples/XFEL/XFEL_SPB/XFEL_SPB.md @@ -0,0 +1,42 @@ +# The `XFEL_SPB` Instrument + +*McXtrace: European XFEL SPB beamline (on SASE1)* + +## Identification + +- **Site:** XFEL +- **Author:** Erik B Knudsen (erkn@fysik.dtu.dk) +- **Origin:** DTU Fysik +- **Date:** End of the World + +## Description + +```text +A simple and early model of the SPB-beamline at the European XFEL in Hamburg. +This model includes the long beam transport from the source all the way into +experimental hutch. +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| L0 | AA | The central wavelength to be simulated. | 1.3051 | +| DL | AA | Half width of energy ointerval to be simulated | 0.01 | +| D | m | Sample to detector distance | 10 | +| offset_omega_rad | rad | Incidence angle of the upstream offset mirror. | 3.6e-3 | +| offset2_rad | m | Radius of curvature of 2nd offset mirror. | 50000 | +| preCRL | 0/1 | Flag to choose whether pre-focusing CRLs are active. | 0 | +| FXE | 0/1 | Flag to enable the FXE distribution mirror. Useful for debugging. | 0 | +| R1 | m | Radius of curvature of 1st focusing mirror. | 20000 | +| R2 | m | Radius of curvature of 2nd focusing mirror. | 20000 | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcxtrace-comps/examples/XFEL/XFEL_SPB/XFEL_SPB.instr) for `XFEL_SPB.instr`. + +--- + +*Generated for mcxtrace 3.99.99.* \ No newline at end of file diff --git a/mcxtrace-comps/misc/Air.md b/mcxtrace-comps/misc/Air.md new file mode 100644 index 000000000..c64ffe9aa --- /dev/null +++ b/mcxtrace-comps/misc/Air.md @@ -0,0 +1,74 @@ +# The `Air` Component + +*McXtrace: Release: McXtrace 1.4 + +Component simulating atmospheric air.* + +## Identification + +- **Site:** +- **Author:** M. B. Nielsen +- **Origin:** DTU Fysik, NBI +- **Date:** 05.02.2015 + +## Description + +```text +The component simulates air and can be inserted as if it was just some extra sample placed somewhere in the beam line. +The air component is intended to be used in all kinds of setups where air may introduce background. +Code structure in this component is based on the component Saxs_spheres. +The shape of the sample may be a filled box with dimensions +xwidth, yheight, zdepth, a filled cylinder with dimensions radius and yheight, +a filled sphere with radius R. +(NB: As we assume air to be an ideal gas, the volume fractions of the elements in the gas are merely the mole fractional part of the given element. +From this the number density of atoms/molecules is calculated) +The air is dry and assumed to be made of nitrogen, oxygen and argon - all other constituents are neglected. + +So far the calculations of the scattering probability (and hence also the weight multiplier) assumes the x-ray source to be unpolarized. +Further the component does not yet account for absorption of x-rays. I.e. absorption is simply omitted, but it may OR may NOT be negligible. +I have not yet looked into this last question, so I can't say if the lack of absorption is a bad thing or if it is allowable. + +Example: +COMPONENT air1 = Air( +frac = 0.4, pressure = 50000, temperature = 270, +xwidth = 0.5, yheight = 0.5, zdepth = 1.5, target_index = 1, +focus_xw = 0.5, focus_yh = 0.5) +AT (0, 0, 15) RELATIVE Origin +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| frac | 0-1 | Fraction of rays to scatter from the air | 0.3 | +| pressure | Pa | Total pressure of the air gas | 101325 | +| temperature | K | Absolute temperature | 273.15+21.1 | +| R_gas | | | 8.3144621 | +| bond_N | | | 1.0976 | +| bond_O | | | 1.2074 | +| Nitrogen_part | | | 0.781 | +| Oxygen_part | | | 0.21 | +| Argon_part | | | 0.009 | +| xwidth | m | Width of the air volume. | 0 | +| yheight | m | Height of the air volume. | 0 | +| zdepth | m | Depth of the air volume. | 0 | +| radius | m | Radius of spherical or cylindrical air volume. | 0 | +| target_x | m | X-coordinate of sampling window. | 0 | +| target_y | m | Y-coordinate of sampling window. | 0 | +| target_z | m | Z-coordinate of sampling window. | 6 | +| target_index | | Index of target component putting sampling window on a subsequent component. | 0 | +| focus_xw | m | Width of the sampling window. | 0 | +| focus_yh | m | Height of the sampling window. | 0 | +| focus_aw | rad | Horizontal (width) opening angle of sampling window. | 0 | +| focus_ah | rad | Vertical (height) opening angle of sampling window. | 0 | +| focus_r | rad | Radius of circular sampling window. | 0 | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcxtrace-comps/misc/Air.comp) for `Air.comp`. + +--- + +*Generated on mcxtrace 3.99.99.* \ No newline at end of file diff --git a/mcxtrace-comps/misc/File.md b/mcxtrace-comps/misc/File.md new file mode 100644 index 000000000..9098a8156 --- /dev/null +++ b/mcxtrace-comps/misc/File.md @@ -0,0 +1,36 @@ +# The `File` Component + +*McXtrace: File.comp - allows to generate instrument/component input-files +from METADATA blocks* + +## Identification + +- **Site:** +- **Author:** Greg Tucker +- **Origin:** ESS +- **Date:** 2024 + +## Description + +```text +File.comp - allows to generate instrument/component input-files +from METADATA blocks - see test_File.instr for an example. +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| filename | string | Filename for output-file generated from metadata block | 0 | +| **metadatakey** | string | METADATA-key for looking up file content (may belong to File instance or another comp) | | +| keep | 1 | Flag to indicate if file should be kept post-simulation | 0 | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcxtrace-comps/misc/File.comp) for `File.comp`. + +--- + +*Generated on mcxtrace 3.99.99.* \ No newline at end of file diff --git a/mcxtrace-comps/misc/Focus.md b/mcxtrace-comps/misc/Focus.md new file mode 100644 index 000000000..cf7c4a4b1 --- /dev/null +++ b/mcxtrace-comps/misc/Focus.md @@ -0,0 +1,42 @@ +# The `Focus` Component + +*McXtrace: Release: McXtrace 1.1 + +Turn a photon into a Huygens wavelet. To be used with the SPLIT keyword.* + +## Identification + +- **Site:** +- **Author:** Carsten Detlefs, hacked from slit.comp +- **Origin:** ESRF +- **Date:** November 6, 2013 + +## Description + +```text +Changes direction of the photon to a random direction +towards the specified target area. +To be used in coherent simulations, preferably with +the SPLIT keyword. +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| dist | m | distance to target | 0.0 | +| focus_xw | m | x-width of target | 0.0 | +| focus_yh | m | y-height of target | 0.0 | +| focus_x0 | m | x-center of target | 0.0 | +| focus_y0 | m | y-center of target | 0.0 | +| focus_absolute | | Flag - if non-zero, focus_x0 and focus_y0 are in absolute (lab) coordinates. | 1 | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcxtrace-comps/misc/Focus.comp) for `Focus.comp`. + +--- + +*Generated on mcxtrace 3.99.99.* \ No newline at end of file diff --git a/mcxtrace-comps/misc/MCPL_input.md b/mcxtrace-comps/misc/MCPL_input.md new file mode 100644 index 000000000..366c53901 --- /dev/null +++ b/mcxtrace-comps/misc/MCPL_input.md @@ -0,0 +1,49 @@ +# The `MCPL_input` Component + +*McXtrace: Source-like component that reads photon state parameters from an mcpl-file.* + +## Identification + +- **Site:** +- **Author:** Erik B Knudsen +- **Origin:** DTU Physics +- **Date:** Aug 2016 + +## Description + +```text +Source-like component that reads photon state parameters from a binary mcpl-file. + +MCPL is short for Monte Carlo Particle List, and is a new format for sharing events +between e.g. MCNP(X), Geant4 and McXtrace . + +When used with MPI, the --ncount given on the commandline is overwritten by +#MPI nodes x #events in the file. + +Example: MCPL_input(filename=voutput,verbose=1,repeat_count=1,E_smear=0.1,pos_smear=0.001,dir_smear=0.01) +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| filename | str | Name of photon mcpl file to read | 0 | +| polarisationuse | | If !=0 read polarisation vectors from file | 1 | +| verbose | | Print debugging information for first 10 particles read | 1 | +| Emin | keV | Lower energy bound. Particles found in the MCPL-file below the limit are skipped | 0 | +| Emax | keV | Upper energy bound. Particles found in the MCPL-file above the limit are skipped | FLT_MAX | +| repeat_count | 1 | Repeat contents of the MCPL file this number of times. NB: When running MPI, repeating is implicit and is taken into account by integer division. MUST be combined sith the _smear options! | 1 | +| E_smear | 1 | When repeating events, make a Gaussian MC choice within E_smear*E around particle energy E | 0 | +| pos_smear | m | When repeating events, make a flat MC choice of position within pos_smear around particle starting position | 0 | +| dir_smear | deg | When repeating events, make a Gaussian MC choice of direction within dir_smear around particle direction | 0 | +| preload | | Load particles during INITIALIZE. On GPU preload is forced | 0 | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcxtrace-comps/misc/MCPL_input.comp) for `MCPL_input.comp`. + +--- + +*Generated on mcxtrace 3.99.99.* \ No newline at end of file diff --git a/mcxtrace-comps/misc/MCPL_output.md b/mcxtrace-comps/misc/MCPL_output.md new file mode 100644 index 000000000..a55a0e5c9 --- /dev/null +++ b/mcxtrace-comps/misc/MCPL_output.md @@ -0,0 +1,58 @@ +# The `MCPL_output` Component + +*McXtrace: Detector-like component that writes photon state parameters into an mcpl-format +binary, virtual-source photon file.* + +## Identification + +- **Site:** +- **Author:** Erik B Knudsen +- **Origin:** DTU Physics +- **Date:** Aug 2016 + +## Description + +```text +Detector-like component that writes photon state parameters into an mcpl-format +binary, virtual-source photon file. + +MCPL is short for Monte Carlo Particle List, and is a new format for sharing events +between e.g. MCNP(X), Geant4, and McXtrace. + +When used with MPI, the component will output #MPI nodes individual MCPL files that +can be merged using the mcpltool. + +MCPL_output allows a few flags to tweak the output files: +1. If use_polarisation is unset (default) the polarisation vector will not be stored (saving space) +2. If doubleprec is unset (default) data will be stored as 32 bit floating points, effectively cutting the output file size in half. +3. Extra information may be attached to each ray in the form of a userflag, a user-defined variable wich is packed into 32 bits. If +the user variable does not fit in 32 bits the value will be truncated and likely garbage. If more than one variable is to be attached to +each photon this must be packed into the 32 bits. + +These features are set this way to keep file sizes as manageable as possible. + +Example: MCPL_output( filename="voutput", verbose=1, userflag="flag", userflagcomment="Photon Id" ) +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| filename | str | Name of photon file to write. If not given, the component name will be used. | 0 | +| weight_mode | 1 | weight_mode=1: record initial ray count in MCPL stat:sum entry and rescale particle weights. weight_mode=2: classical (deprecated) mode of outputting particle weights directly. | -1 | +| verbose | 1 | If 1) Print summary information for created MCPL file. 2) Also print summary of first 10 particles information stored in the MCPL file. >2) Also print information for first 10 particles as they are being stored by McStas | 0 | +| polarisationuse | 1 | Enable storing the polarisation state of the photon. | 0 | +| doubleprec | 1 | Use double precision storage | 0 | +| userflag | 1 | Extra variable to attach to each photon. The value of this variable will be packed into a 32 bit integer. | "" | +| userflagcomment | str | String variable to describe the userflag. If this string is empty (the default) no userflags will be stored. | "" | +| buffermax | 1 | Maximal number of events to save ( <= MAXINT), GPU/OpenACC only | 0 | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcxtrace-comps/misc/MCPL_output.comp) for `MCPL_output.comp`. + +--- + +*Generated on mcxtrace 3.99.99.* \ No newline at end of file diff --git a/mcxtrace-comps/misc/Progress_bar.md b/mcxtrace-comps/misc/Progress_bar.md new file mode 100644 index 000000000..698092d58 --- /dev/null +++ b/mcxtrace-comps/misc/Progress_bar.md @@ -0,0 +1,44 @@ +# The `Progress_bar` Component + +*McXtrace: Release: McXtrace 1.0 + +A simulation progress bar* + +## Identification + +- **Site:** +- **Author:** Emmanuel Farhi +- **Origin:** ILL +- **Date:** 2009 + +## Description + +```text +An indicator of the progress of the simulation, monitoring +the Init, Trace with the achieved percentage, and the Finally section. +Intermediate savings (e.g. triggered by USR2 signal) are also shown. +This component should be positioned at the very begining of the instrument +The profile option will save the intensity and number of events for each +component It may be used to evaluate the simulation efficiency. + +Example: Progress_bar(percent=10,flag_save=1) AT (0,0,0) +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| profile | str | file name to save the simulation profile in. If set to "", it is set to the name of the instrument. | "NULL" | +| percent | 0-100 | percentage interval between updates. Default is 10%. | 10 | +| flag_save | 0\|1 | flag to enable intermediate saving for all monitors | 0 | +| minutes | min | time in minutes between updates (Overrides percent flag). | 0 | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcxtrace-comps/misc/Progress_bar.comp) for `Progress_bar.comp`. + +--- + +*Generated on mcxtrace 3.99.99.* \ No newline at end of file diff --git a/mcxtrace-comps/misc/Shadow_input.md b/mcxtrace-comps/misc/Shadow_input.md new file mode 100644 index 000000000..76b2e6271 --- /dev/null +++ b/mcxtrace-comps/misc/Shadow_input.md @@ -0,0 +1,40 @@ +# The `Shadow_input` Component + +*McXtrace: Release: McXtrace 0.1 + +Read x-ray state parameters from SHADOW x-ray event file.* + +## Identification + +- **Site:** +- **Author:** Andrea Prodi +- **Origin:** Risoe/ILL +- **Date:** November 21, 2011 + +## Description + +```text +Source-like component reading x-ray state parameters from a +SHADOW x-ray event file. Used to interface McXtrace components or +simulations into SHADOW. + +Example: Shadow_input(file="MySource.00", bufsize = 10000, repeat_count = 2) +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| file | string | Filename of x-ray file to read. Default (NULL) is standard input. Empty string "" unactivates component | "" | +| bufsize | records | Size of x-ray input buffer | 10000 | +| repeat_count | 1 | Number of times to repeat each x-ray read | 1 | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcxtrace-comps/misc/Shadow_input.comp) for `Shadow_input.comp`. + +--- + +*Generated on mcxtrace 3.99.99.* \ No newline at end of file diff --git a/mcxtrace-comps/misc/Shadow_output.md b/mcxtrace-comps/misc/Shadow_output.md new file mode 100644 index 000000000..9eea33cba --- /dev/null +++ b/mcxtrace-comps/misc/Shadow_output.md @@ -0,0 +1,45 @@ +# The `Shadow_output` Component + +*McXtrace: Release: McXtrace 0.1 + +Write x-ray state parameters to SHADOW x-ray event file.* + +## Identification + +- **Site:** +- **Author:** Andrea Prodi +- **Origin:** Risoe/ILL +- **Date:** November 21, 2011 + +## Description + +```text +Detector-like component writing x-ray state parameters to a +SHADOW x-ray file. Used to interface McXtrace components or +simulations into SHADOW. Each photon is 104 bytes. + +Note that when standard output is used, as is the default, no +monitors or other components that produce terminal output must be +used, or the x-ray output from this component will become +corrupted. + +Example: Shadow_output(file="MySource.vit", bufsize = 10000, progress = 1) +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| file | string | Filename of x-ray file to write. Default is standard output | "" | +| bufsize | records | Size of x-ray output buffer | 1000 | +| progress | flag | If not zero, output dots as progress indicator | 0 | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcxtrace-comps/misc/Shadow_output.comp) for `Shadow_output.comp`. + +--- + +*Generated on mcxtrace 3.99.99.* \ No newline at end of file diff --git a/mcxtrace-comps/misc/Shape.md b/mcxtrace-comps/misc/Shape.md new file mode 100644 index 000000000..c806229bc --- /dev/null +++ b/mcxtrace-comps/misc/Shape.md @@ -0,0 +1,62 @@ +# The `Shape` Component + +*McXtrace: A geometric shape without effect on X-raysX, for instrument display purpose.* + +## Identification + +- **Site:** +- **Author:** E. Farhi +- **Origin:** ILL +- **Date:** June 23rd 2009 + +## Description + +```text +An inactive geometrical shape, for drawing purposes only. +It does not propagate X-rays, nor interact. +Shape: +Geometric shape may be a cylinder, a sphere, a box or any other shape +box/plate: xwidth x yheight x zdepth (thickness=0) +hollow box/plate:xwidth x yheight x zdepth and thickness>0 +cylinder: radius x yheight (thickness=0) +hollow cylinder: radius x yheight and thickness>0 +sphere: radius (yheight=0 thickness=0) +hollow sphere: radius and thickness>0 (yheight=0) +any shape: geometry=OFF file + +The complex geometry option handles any closed non-convex polyhedra. +It computes the intersection points of the X ray with the object +transparently, so that it can be used like a regular sample object. +It supports the OFF and NOFF file format but not COFF (colored faces). +Such files may be generated from XYZ data using qhull/powercrust, and +viewed with geomview +The default size of the object depends of the OFF file data, but its +bounding box may be resized using xwidth,yheight and zdepth. + +Example: Shape(radius=0.05, yheight=0.1) +Shape(geometry="socket.off") +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| geometry | str | Name of an Object File Format (OFF) file for complex geometry. The OFF file may be generated from XYZ coordinates using qhull/powercrust | 0 | +| radius | m | Outer radius of sample in (x,z) plane | 0 | +| xwidth | m | Horiz. dimension of sample (bounding box if off file), as a width | 0 | +| yheight | m | Vert. dimension of sample (bounding box if off file), as a height. A sphere shape is used when 0 and radius is set | 0 | +| zdepth | m | Depth of sample (bounding box if off file) | 0 | +| thickness | m | Thickness of hollow sample | 0 | +| center | 1 | Flag to determine if OFF object is centered on its centre of mass. | 1 | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcxtrace-comps/misc/Shape.comp) for `Shape.comp`. +- Geomview and Object File Format (OFF) +- Powercrust/qhull + +--- + +*Generated on mcxtrace 3.99.99.* \ No newline at end of file diff --git a/mcxtrace-comps/monitors/DivE_monitor.md b/mcxtrace-comps/monitors/DivE_monitor.md new file mode 100644 index 000000000..bb934a2c3 --- /dev/null +++ b/mcxtrace-comps/monitors/DivE_monitor.md @@ -0,0 +1,49 @@ +# The `DivE_monitor` Component + +*McXtrace: Divergence/Energy monitor.* + +## Identification + +- **Site:** +- **Author:** Erik B Knudsen +- **Origin:** DTU Physics +- **Date:** Jun. 2016 + +## Description + +```text +2D detector for intensity as a function of both horizontal divergence +and Energy. + +Example: DivE_monitor(nE=20, nh=20, filename="Output.div", +xwidth=0.1, yheight=0.1, +maxdiv_h=2, Emin=2, Emax=10) +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| nE | 1 | Number of bins in energy | 20 | +| nh | 1 | Number of bins in divergence | 20 | +| filename | str | Name of file in which to store the detector image | 0 | +| xwidth | m | Width of detector. | 0.1 | +| yheight | m | Height of detector. | 0.1 | +| maxdiv_h | deg | Maximal horizontal divergence detected | 2 | +| **Emin** | keV | Minimum energy detected | | +| **Emax** | keV | Maximum energy detected | | +| restore_xray | 1 | If set, the monitor does not influence the photon state | 0 | +| nx | 1 | Vector definition of "forward" direction wrt. divergence, to be used e.g. when the monitor is rotated into the horizontal plane. | 0 | +| ny | 1 | Vector definition of "forward" direction wrt. divergence, to be used e.g. when the monitor is rotated into the horizontal plane. | 0 | +| nz | 1 | Vector definition of "forward" direction wrt. divergence, to be used e.g. when the monitor is rotated into the horizontal plane. | 1 | +| nowritefile | 1 | If set, monitor will skip writing to disk. | 0 | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcxtrace-comps/monitors/DivE_monitor.comp) for `DivE_monitor.comp`. + +--- + +*Generated on mcxtrace 3.99.99.* \ No newline at end of file diff --git a/mcxtrace-comps/monitors/DivPos_monitor.md b/mcxtrace-comps/monitors/DivPos_monitor.md new file mode 100644 index 000000000..76c9d29a0 --- /dev/null +++ b/mcxtrace-comps/monitors/DivPos_monitor.md @@ -0,0 +1,49 @@ +# The `DivPos_monitor` Component + +*McXtrace: Release: McXtrace 1.3 + +Divergence/position monitor (acceptance diagram).* + +## Identification + +- **Site:** +- **Author:** Erik B Knudsen +- **Origin:** DTU Physics +- **Date:** Jun. 16 + +## Description + +```text +2D detector for intensity as a function of both horizontal position +and wavelength. This gives information similar to an aceptance diagram used +eg. to investigate beam profiles in neutron guides. + +Example: DivPos_monitor(nh=20, ndiv=20, filename="Output.dip", +xwidth=0.1, yheight=0.1, maxdiv_h=2) +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| nh | 1 | Number of bins in position | 20 | +| ndiv | 1 | Number of bins in divergence | 20 | +| filename | str | Name of file in which to store the detector image | 0 | +| xwidth | m | Width of detector. | 0.1 | +| yheight | m | Height of detector. | 0.1 | +| maxdiv_h | deg | Maximal horizontal divergence detected | 2 | +| restore_xray | 1 | If set, the monitor does not influence the photon state | 0 | +| nx | 1 | Vector definition of "forward" direction wrt. divergence, to be used e.g. when the monitor is rotated into the horizontal plane | 0 | +| ny | 1 | Vector definition of "forward" direction wrt. divergence, to be used e.g. when the monitor is rotated into the horizontal plane | 0 | +| nz | 1 | Vector definition of "forward" direction wrt. divergence, to be used e.g. when the monitor is rotated into the horizontal plane | 1 | +| nowritefile | 1 | If set, monitor will skip writing to disk. | 0 | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcxtrace-comps/monitors/DivPos_monitor.comp) for `DivPos_monitor.comp`. + +--- + +*Generated on mcxtrace 3.99.99.* \ No newline at end of file diff --git a/mcxtrace-comps/monitors/Divergence_monitor.md b/mcxtrace-comps/monitors/Divergence_monitor.md new file mode 100644 index 000000000..137e8196c --- /dev/null +++ b/mcxtrace-comps/monitors/Divergence_monitor.md @@ -0,0 +1,49 @@ +# The `Divergence_monitor` Component + +*McXtrace: Horizontal+vertical divergence monitor.* + +## Identification + +- **Site:** +- **Author:** Erik B Knudsen +- **Origin:** DTU Physics +- **Date:** Jun. '16 + +## Description + +```text +A 2D divergence sensitive monitor. The counts are distributed in +(n times m) pixels. + +Example: Divergence_monitor(nh=20, nv=20, filename="Output.pos", +xwidth=0.1, yheight=0.1, +maxdiv_h=2, maxdiv_v=2) +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| nh | 1 | Number of pixel rows | 20 | +| nv | 1 | Number of pixel columns | 20 | +| rad | 1 | If set - divergence will be measured in radians. | 0 | +| filename | str | Name of file in which to store the detector image text | 0 | +| xwidth | m | Width of detector. | 0.1 | +| yheight | m | Height of detector. | 0.1 | +| maxdiv_h | degrees | Maximal horizontal divergence detected | 1 | +| maxdiv_v | degrees | Maximal vertical divergence detected | 1 | +| restore_xray | 1 | If set, the monitor does not influence the photon state | 0 | +| nx | 1 | Vector definition of "forward" direction wrt. divergence, to be used e.g. when the monitor is rotated into the horizontal plane | 0 | +| ny | 1 | Vector definition of "forward" direction wrt. divergence, to be used e.g. when the monitor is rotated into the horizontal plane | 0 | +| nz | 1 | Vector definition of "forward" direction wrt. divergence, to be used e.g. when the monitor is rotated into the horizontal plane | 1 | +| nowritefile | 1 | If set, monitor will skip writing to disk | 0 | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcxtrace-comps/monitors/Divergence_monitor.comp) for `Divergence_monitor.comp`. + +--- + +*Generated on mcxtrace 3.99.99.* \ No newline at end of file diff --git a/mcxtrace-comps/monitors/EPSD_monitor.md b/mcxtrace-comps/monitors/EPSD_monitor.md new file mode 100644 index 000000000..18cc38478 --- /dev/null +++ b/mcxtrace-comps/monitors/EPSD_monitor.md @@ -0,0 +1,46 @@ +# The `EPSD_monitor` Component + +*McXtrace: Position-energy-sensitive monitor.* + +## Identification + +- **Site:** +- **Author:** Erik B Knudsen +- **Origin:** DTU +- **Date:** June 22, 2009 + +## Description + +```text +An nx times ny pixel energy resolved PSD monitor, which only counts photons with energy in an interval +given by Emin and Emax in nE energy bins. The default energy interval is (almost) infinite, with a single bin. +If nE>1 the component will output nE detector files + one which is integrated over the full energy interval. + +Example: EPSD_monitor(xwidth=0.1, yheight=0.1, +nx=90, ny=90, filename="Output.psd") +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| nx | 1 | Number of pixel columns. | 90 | +| ny | 1 | Number of pixel rows. | 90 | +| filename | str | Name of file in which to store the detector image. | 0 | +| restore_xray | 1 | If set, the monitor does not influence the xray state. | 0 | +| xwidth | m | Width of detector. | 0.1 | +| yheight | m | Height of detector. | 0.1 | +| Emax | keV | Upper bound of energy interval. | 0 | +| Emin | keV | Lower bound of energy interval. | 0 | +| nE | 1 | Number of energy bins. | 1 | +| nowritefile | 1 | If set, monitor will skip writing to disk | 0 | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcxtrace-comps/monitors/EPSD_monitor.comp) for `EPSD_monitor.comp`. + +--- + +*Generated on mcxtrace 3.99.99.* \ No newline at end of file diff --git a/mcxtrace-comps/monitors/E_monitor.md b/mcxtrace-comps/monitors/E_monitor.md new file mode 100644 index 000000000..5fd62e537 --- /dev/null +++ b/mcxtrace-comps/monitors/E_monitor.md @@ -0,0 +1,43 @@ +# The `E_monitor` Component + +*McXtrace: Release: McXtrace 0.1 + +Energy-sensitive monitor.* + +## Identification + +- **Site:** +- **Author:** Erik Knudsen +- **Origin:** Risoe +- **Date:** June 22, 2009 + +## Description + +```text +A square single monitor that measures the energy of the incoming x-rays. + +Example: E_monitor(xwidth=0.1, yheight=0.1, +Emin=1, Emax=50, nE=20, filename="Output.nrj") +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| nE | m | Number of energy channels. | 20 | +| filename | str | Name of file in which to store the detector image. | 0 | +| xwidth | m | Width of detector. | 0.1 | +| yheight | m | Height of detector. | 0.1 | +| **Emin** | keV | Minimum energy to detect. | | +| **Emax** | keV | Maximum energy to detect. | | +| restore_xray | 0/1 | If set, the monitor does not influence the x-ray state. | 0 | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcxtrace-comps/monitors/E_monitor.comp) for `E_monitor.comp`. + +--- + +*Generated on mcxtrace 3.99.99.* \ No newline at end of file diff --git a/mcxtrace-comps/monitors/Event_monitor_simple.md b/mcxtrace-comps/monitors/Event_monitor_simple.md new file mode 100644 index 000000000..442a8fa8c --- /dev/null +++ b/mcxtrace-comps/monitors/Event_monitor_simple.md @@ -0,0 +1,34 @@ +# The `Event_monitor_simple` Component + +*McXtrace: Low-key event-monitor for debugging purposes.* + +## Identification + +- **Site:** +- **Author:** Peter Willendrup +- **Origin:** DTU +- **Date:** May 21st, 2025 + +## Description + +```text +Simple, low-key event-monitor for debugging purposes. No propagation, +no MPI support. Simply prints the event list to a log file in the SAVE section. +The filename is "comp-instance".log +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| nevents | 1 | Number of events to store and print | 1e6 | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcxtrace-comps/monitors/Event_monitor_simple.comp) for `Event_monitor_simple.comp`. + +--- + +*Generated on mcxtrace 3.99.99.* \ No newline at end of file diff --git a/mcxtrace-comps/monitors/Flex_monitor_1D.md b/mcxtrace-comps/monitors/Flex_monitor_1D.md new file mode 100644 index 000000000..3944062d6 --- /dev/null +++ b/mcxtrace-comps/monitors/Flex_monitor_1D.md @@ -0,0 +1,42 @@ +# The `Flex_monitor_1D` Component + +*McXtrace: Flexible monitor.* + +## Identification + +- **Site:** +- **Author:** Erik B Knudsen & Peter Willendrup +- **Origin:** DTU Physics +- **Date:** Oct '20 + +## Description + +```text +A square 1D single monitor that measures intensity (or something else) as a function of some variable or parameter. + +Example: Flex_monitor_1D(nU=20, filename="Output", ustring="x", Umin=-.1, Umax=.1) +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| nU | 1 | Number of U channels | 20 | +| filename | string | Name of file in which to store the detector image | 0 | +| **Umin** | | Minimum U to detect | | +| **Umax** | | Maximum U to detect | | +| uid | 1 | Integer index of uservar to be monitored. Overrides ustring. | -1 | +| ustring | string | Name of variable (user or particle state parameter as a string) to be monitored. | "" | +| restore_xray | 1 | If set, the monitor does not influence the particle state | 0 | +| signal | string | Name of variable to be used as an additive signal to be monitored. Default is intensity. | "p" | +| nowritefile | 1 | Flag to indicate if monitor should not save any data. | 0 | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcxtrace-comps/monitors/Flex_monitor_1D.comp) for `Flex_monitor_1D.comp`. + +--- + +*Generated on mcxtrace 3.99.99.* \ No newline at end of file diff --git a/mcxtrace-comps/monitors/Flex_monitor_2D.md b/mcxtrace-comps/monitors/Flex_monitor_2D.md new file mode 100644 index 000000000..dbfcb6451 --- /dev/null +++ b/mcxtrace-comps/monitors/Flex_monitor_2D.md @@ -0,0 +1,47 @@ +# The `Flex_monitor_2D` Component + +*McXtrace: Flexible monitor.* + +## Identification + +- **Site:** +- **Author:** Erik B Knudsen & Peter Willendrup +- **Origin:** DTU Physics +- **Date:** Oct '20 + +## Description + +```text +A square 2D single monitor that measures intensity (or something else) as a function of two selectable variables or parameters. + +Example: Flex_monitor_2D(nU1=20, nU2=20, filename="Output", ustring1="x", ustring2="y", Umin1=-.1, Umax1=.1, Umin2=-.1, Umax2=.1) +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| nU1 | 1 | Number of U1 channels | 20 | +| nU2 | 1 | Number of U1 channels | 20 | +| filename | string | Name of file in which to store the detector image | 0 | +| **Umin1** | | Minimum U1 to detect | | +| **Umax1** | | Maximum U1 to detect | | +| uid1 | 1 | Integer index of uservar to be monitored. Overrides ustring1. | -1 | +| ustring1 | string | Name of variable U1 (user or particle state parameter as a string) to be monitored. | "" | +| **Umin2** | | Minimum U1 to detect | | +| **Umax2** | | Maximum U1 to detect | | +| uid2 | 1 | Integer index of uservar to be monitored. Overrides ustring2. | -1 | +| ustring2 | string | Name of variable U2 (user or particle state parameter as a string) to be monitored. | "" | +| restore_xray | 1 | If set, the monitor does not influence the particle state | 0 | +| signal | string | Name of variable to be used as an additive signal to be monitored. Default is intensity. | "p" | +| nowritefile | 1 | Flag to indicate if monitor should not save any data. | 0 | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcxtrace-comps/monitors/Flex_monitor_2D.comp) for `Flex_monitor_2D.comp`. + +--- + +*Generated on mcxtrace 3.99.99.* \ No newline at end of file diff --git a/mcxtrace-comps/monitors/Flex_monitor_3D.md b/mcxtrace-comps/monitors/Flex_monitor_3D.md new file mode 100644 index 000000000..6a478ef2a --- /dev/null +++ b/mcxtrace-comps/monitors/Flex_monitor_3D.md @@ -0,0 +1,53 @@ +# The `Flex_monitor_3D` Component + +*McXtrace: Flexible monitor.* + +## Identification + +- **Site:** +- **Author:** Erik B Knudsen & Peter Willendrup +- **Origin:** DTU Physics +- **Date:** Oct '20 + +## Description + +```text +A square 3D single monitor that measures intensity (or something else) as a function of three selectable variables or parameters. +The 3D data is saved as a series of 2D datasets, which names are filename_index + +Example: Flex_monitor_3D(nU1=20, nU2=20, nU3=20, filename="Output", ustring1="x", ustring2="y", ustring1="z", Umin1=-.1, Umax1=.1, Umin2=-.1, Umax2=.1, Umin3=-.1, Umax3=.1) +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| nU1 | 1 | Number of U1 channels | 20 | +| nU2 | 1 | Number of U1 channels | 20 | +| nU3 | 1 | Number of U3 channels | 20 | +| filename | string | Name of file in which to store the detector image | 0 | +| **Umin1** | | Minimum U1 to detect | | +| **Umax1** | | Maximum U1 to detect | | +| uid1 | 1 | Integer index of uservar to be monitored. Overrides ustring1. | -1 | +| ustring1 | string | Name of variable U1 (user or particle state parameter as a string) to be monitored. | "" | +| **Umin2** | | Minimum U1 to detect | | +| **Umax2** | | Maximum U1 to detect | | +| uid2 | 1 | Integer index of uservar to be monitored. Overrides ustring2. | -1 | +| ustring2 | string | Name of variable U2 (user or particle state parameter as a string) to be monitored. | "" | +| **Umin3** | | Minimum U3 to detect | | +| **Umax3** | | Maximum U3 to detect | | +| uid3 | 1 | Integer index of uservar to be monitored. Overrides ustring3. | -1 | +| ustring3 | string | Name of variable U3 (user or particle state parameter as a string) to be monitored. | "" | +| restore_xray | 1 | If set, the monitor does not influence the particle state | 0 | +| signal | string | Name of variable to be used as an additive signal to be monitored. Default is intensity. | "p" | +| nowritefile | 1 | Flag to indicate if monitor should not save any data. | 0 | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcxtrace-comps/monitors/Flex_monitor_3D.comp) for `Flex_monitor_3D.comp`. + +--- + +*Generated on mcxtrace 3.99.99.* \ No newline at end of file diff --git a/mcxtrace-comps/monitors/Fluo_detector.md b/mcxtrace-comps/monitors/Fluo_detector.md new file mode 100644 index 000000000..96f2ea32e --- /dev/null +++ b/mcxtrace-comps/monitors/Fluo_detector.md @@ -0,0 +1,71 @@ +# The `Fluo_detector` Component + +*McXtrace: Detector for fluorescence, e.g. Silicon Drift Detector (SDD) or High Purity Germanium (HPGe).* + +## Identification + +- **Site:** +- **Author:** E. Farhi +- **Origin:** Synchrotron SOLEIL +- **Date:** May 2025 + +## Description + +```text +A detector that records energy spectrum from e.g. fluorescence. +This component handles: +- fluorescence detector escape (energy shift from detector K-alpha) +- fluorescence detector pile-up (sum aka time-coincidence aka pile-up within detector dead-time) +- energy resolution (above Fano level) + +The detector geometry can be a rectangle xwidth*yheight, or a disk of given 'radius'. +When the radius is given negative, a 4PI detector sphere of given radius is assumed. + +The detector escape corresponds with a fluorescence excitation within the detector itself +that subtracts the K-alpha detector level from the sample scattered energy. +The level of escape peaks in set as 'escape_ratio', e.g. 1-2 %. + +The detector pile-up is related to the detector dead-time, within which time coincidence +between two fluorescence photons are summed-up. +The level of pile-up is set as 'pileup_ratio', e.g. 1-2 % which can increase for high +count rates that saturate the detector. + +Last, the fluorescence peak shape is broadened using an electronic noise (at E=0) and +a nominal resolution at E=resolution_energy (in keV). You may set the electronic_noise +to zero for a perfect detector (Fano limit). To use a constant resolution, set the +resolution_energy=0. + +Example: Fluo_detector(xwidth=0.1, yheight=0.1, +Emin=1, Emax=50, nE=20, filename="Output.nrj") +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| radius | m | Radius of disk detector (in XY plane). When given as negative, a 4PI sphere is assumed. | 0 | +| xwidth | m | Width of rectangle detector. | 0 | +| yheight | m | Height of rectangle detector. | 0 | +| Emin | keV | Minimum energy to detect. | 1 | +| Emax | keV | Maximum energy to detect. | 39 | +| nE | m | Number of energy channels. | 2000 | +| filename | str | Name of file in which to store the detector image. | 0 | +| restore_xray | 0/1 | If set, the monitor does not influence the x-ray state. | 0 | +| escape_ratio | 1 | Detector escape peak ratio, e.g. 0.01-0.02. Zero inactivates. | 0.01 | +| escape_energy | keV | Detector escape peak energy, e.g. 1.739 for Si, 9.886 for Ge. | 1.739 | +| pileup_ratio | 1 | Sum aka time coincidence aka pile-up detector peak ratio, e.g. 0.01-0.02. This is e.g. the dead-time ratio. Zero inactivates. | 0.01 | +| electronic_noise | keV | Electronic noise at E=0, FWHM in keV. Use electronic_noise=0 for Fano limit. | 0.1 | +| resolution_energy | keV | Energy at which resolution is given, e.g. 5.9 keV Mn K-alpha. | 6 | +| resolution | keV | Resolution FWHM in keV at resolution_energy. | 0.2 | +| flag_lorentzian | 1 | When 1, the line shapes are assumed to be Lorentzian, else Gaussian. | 0 | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcxtrace-comps/monitors/Fluo_detector.comp) for `Fluo_detector.comp`. +- Fluorescence https://en.wikipedia.org/wiki/Fluorescence + +--- + +*Generated on mcxtrace 3.99.99.* \ No newline at end of file diff --git a/mcxtrace-comps/monitors/L_monitor.md b/mcxtrace-comps/monitors/L_monitor.md new file mode 100644 index 000000000..d39291c31 --- /dev/null +++ b/mcxtrace-comps/monitors/L_monitor.md @@ -0,0 +1,44 @@ +# The `L_monitor` Component + +*McXtrace: Release: McXtrace 0.1 + +Wavelength-sensitive monitor.* + +## Identification + +- **Site:** +- **Author:** Kristian Nielsen and Kim Lefmann +- **Origin:** Risoe +- **Date:** June 22, 2009 + +## Description + +```text +A square single monitor that measures the wavelength of the incoming +xray. + +Example: L_monitor(xmin=-0.1, xwidth=0.1, yheight=0.1, +nL=20, filename="Output.L", Lmin=0.1, Lmax=1) +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| nL | m | Number of wavelength channels. | 20 | +| filename | str | Name of file in which to store the detector image. | 0 | +| xwidth | m | Width of detector. | 0.1 | +| yheight | m | Height of detector. | 0.1 | +| **Lmin** | AA | Minimum wavelength to detect. | | +| **Lmax** | AA | Maximum wavelength to detect. | | +| restore_xray | | If set, the monitor does not influence the x-ray state. | 0 | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcxtrace-comps/monitors/L_monitor.comp) for `L_monitor.comp`. + +--- + +*Generated on mcxtrace 3.99.99.* \ No newline at end of file diff --git a/mcxtrace-comps/monitors/Monitor.md b/mcxtrace-comps/monitors/Monitor.md new file mode 100644 index 000000000..e5a9598ee --- /dev/null +++ b/mcxtrace-comps/monitors/Monitor.md @@ -0,0 +1,38 @@ +# The `Monitor` Component + +*McXtrace: Release: McXtrace 0.1 + +Simple monitor.* + +## Identification + +- **Site:** +- **Author:** Erik Knudsen +- **Origin:** Risoe +- **Date:** June 22, 2009 + +## Description + +```text +A square single monitor that measures the intergated intensity of the incoming x-rays. + +Example: Monitor(xwidth=0.1, yheight=0.1) +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| xwidth | m | Width of detector. | 0.1 | +| yheight | m | Height of detector. | 0.1 | +| restore_xray | m | If set, the monitor does not influence the xray state | 0 | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcxtrace-comps/monitors/Monitor.comp) for `Monitor.comp`. + +--- + +*Generated on mcxtrace 3.99.99.* \ No newline at end of file diff --git a/mcxtrace-comps/monitors/Monitor_nD.md b/mcxtrace-comps/monitors/Monitor_nD.md new file mode 100644 index 000000000..a63d9e62c --- /dev/null +++ b/mcxtrace-comps/monitors/Monitor_nD.md @@ -0,0 +1,201 @@ +# The `Monitor_nD` Component + +*McXtrace: Release: McXtrace 1.2 + +This component is a general Monitor that can output 0/1/2D signals +(Intensity or signal vs. [something] and vs. [something] ...)* + +## Identification + +- **Site:** +- **Author:** Emmanuel Farhi +- **Origin:** ILL +- **Date:** 14th Feb 2000. + +## Description + +```text +This component is a general Monitor that can output 0/1/2D signals +It can produce many 1D signals (one for any variable specified in +option list), or a single 2D output (two variables correlation). +Also, an additional 'list' of photon events can be produced. +By default, monitor is square (in x/y plane). A disk shape is also possible +The 'cylinder' and 'banana' option will change that for a banana shape +The 'sphere' option simulates spherical detector. The 'box' is a box. +The cylinder, sphere and banana should be centered on the scattering point. +In normal configuration, the Monitor_nD measures the current parameters +of the photon that is beeing detected. But a PreMonitor_nD component can +be used in order to study correlations between a photon being detected in +a Monitor_nD place, and given parameters that are monitored elsewhere +(at PreMonitor_nD). +The monitor can also act as a 3He gas detector, taking into account the +detection efficiency. + +The 'bins' and 'limits' modifiers are to be used after each variable, +and 'auto','log' and 'abs' come before it. (eg: auto abs log hdiv bins=10 +limits=[-5 5]) When placed after all variables, these two latter modifiers +apply to the signal (e.g. intensity). Unknown keywords are ignored. +If no limits are specified for a given observable, reasonable defaults will be +applied. Note that these implicit limits are even applied in list mode. + +Implicit limits for typical variables: +(consult monitor_nd-lib.c if you don't find your variable here) +x, y, z: Derived from detection-object geometry +k: [0 10] Angs-1 +v: [0 1e6] m/s +t: [0 1] s +p: [0 FLT_MAX] in intensity-units +vx, vy: [-1000 1000] m/s +vz: [0 10000] m/s +kx, ky: [-1 1] Angs-1 +kz: [-10 10] Angs-1 +energy, omega: [0 100] meV +lambda,wavelength: [0 100] Angs +sx, sy, sz: [-1 1] in polarisation-units +angle: [-50 50] deg +divergence, vdiv, hdiv, xdiv, ydiv: [-5 5] deg +longitude, lattitude: [-180 180] deg +photon: [0 simulaton_ncount] +id, pixel id: [0 FLT_MAX] +uservars u1,u2,u3: [-1e10 1e10] + +In the case of multiple components at the same position, the 'parallel' +keyword must be used in each instance instead of defining a GROUP. + +Possible options are +Variables to record: +kx ky kz k wavevector [Angs-1] Wavevector on x,y,z and norm +vx vy vz v [m/s] Velocity on x,y,z and norm +x y z radius [m] Distance, Position and norm +xy, yz, xz [m] Radial position in xy, yz and xz plane +kxy kyz kxz [Angs-1] Radial wavevector in xy, yz and xz plane +vxy vyz vxz [m/s] Radial velocity in xy, yz and xz plane +t time [s] Time of Flight +energy omega [keV] energy of photon +lambda wavelength [Angs] wavelength of photon +sx sy sz [1] Spin +vdiv ydiv dy [deg] vertical divergence (y) +hdiv divergence xdiv [deg] horizontal divergence (x) +angle [deg] divergence from direction +theta longitude [deg] longitude (x/z) for sphere and cylinder +phi lattitude [deg] lattitude (y/z) for sphere and cylinder + +user user1 will monitor the [Mon_Name]_Vars.UserVariable{1|2|3} +user2 user3 to be assigned in an other component (see below) + +p intensity flux [phts/s or phts/cm^2/s] +ncounts n photon [1] photon ID, i.e current event index +pixel id [1] pixelID in histogram made of preceeding vars, e.g. 'theta y'. To set an offset PixelID use the 'min=value' keyword. Sets event mode. + +Other options keywords are: +abs Will monitor the abs of the following variable or of the signal (if used after all variables) +auto Automatically set detector limits for one/all +all {limits|bins|auto} To set all limits or bins values or auto mode +binary {float|double} with 'source' option, saves in compact files +bins=[bins=20] Number of bins in the detector along dimension +borders To also count off-limits photons (X < min or X > max) +capture weight by capture flux (not validated) +exclusive absorb photon out of monitor limits +file=string Detector image file name. default is component name, plus date and variable extension. +incoming Monitor incoming beam in non flat det +limits=[min max] Lower/Upper limits for axes (see up for the variable unit) +list=[counts=1000] or all For a long file of photon characteristics with [counts] or all events +log Will monitor the log of the following variable or of the signal (if used after all variables) +min=[min_value] Same as limits, but only sets the min or max +max=[max_value] +multiple Create multiple independant 1D monitors files +no or not Revert next option +outgoing Monitor outgoing beam (default) +parallel Use this option when the next component is at the same position (parallel components) +per cm2 Intensity will be per cm^2 (detector area). Displays beam section. +per steradian Intensity will be per steradian (requires auto) +premonitor Will monitor photon parameters stored previously with PreMonitor_nD. +signal=[var] Will monitor [var] instead of usual intensity +slit or absorb Absorb photons that are out detector +source The monitor will save photon states +inactivate To inactivate detector (0D detector) +verbose To display additional informations + +Detector shape options (specified as xwidth,yheight,zdepth or x/y/z/min/max) +box Box of size xwidth, yheight, zdepth. +cylinder To get a cylindrical monitor (diameter is xwidth or set radius, height is yheight). +banana Same as cylinder, without top/bottom, on restricted angular area; use theta variable with limits to define arc. (diameter is xwidth or set radius, height is yheight). +disk Disk flat xy monitor. diameter is xwidth. +sphere To get a spherical monitor (e.g. a 4PI) (diameter is xwidth or set radius). +square Square flat xy monitor (xwidth, yheight). +previous The monitor uses PREVIOUS component as detector surface. + +EXAMPLES: +MyMon = Monitor_nD( +xwidth = 0.1, yheight = 0.1, zdepth = 0, +options = "intensity per cm2 angle,limits=[-5 5] bins=10,with +borders, file = mon1"); +will monitor photon angle from [z] axis, between -5 +and 5 degrees, in 10 bins, into "mon1.A" output 1D file +options = "sphere theta phi outgoing" for a sphere PSD detector (out +beam) and saves into file "MyMon_[Date_ID].th_ph" +options = "banana, theta limits=[10,130], bins=120, y" a theta/height banana detector +options = "angle radius all auto" is a 2D monitor with automatic limits +options = "list=1000 kx ky kz energy" records 1000 photon event in a file +options = "multiple kx ky kz, auto abs log t, and list all photons" +makes 4 output 1D files and produces a complete list for all photons +and monitor log(abs(tof)) within automatic limits (for t) +options = "theta y, sphere, pixel min=100" +a 4pi detector which outputs an event list with pixelID from the actual +detector surface, starting from index 100. + +To dynamically define a number of bins, or limits: +Use in DECLARE: char op[256]; +Use in INITIALIZE: sprintf(op, "lambda limits=[%g %g], bins=%i", lmin, lmax, lbin); +Use in TRACE: Monitor_nD(... options=op ...) + +How to monitor any instrument/component variable into a Monitor_nD +Suppose you want to monitor a variable 'age' which you assign somwhere in +the instrument: +COMPONENT MyMonitor = Monitor_nD( +xwidth = 0.1, yheight = 0.1, +user1="age", username1="Age of the Captain [years]", +options="user1, auto") +AT ... + +See also the example in PreMonitor_nD to +monitor photon parameters cross-correlations. + +%BUGS +The 'auto' option for guessing optimal variable bounds should NOT be used with MPI +as each process may use different limits. +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| user1 | str | Variable name of USERVAR to be monitored by user1. | "" | +| user2 | str | Variable name of USERVAR to be monitored by user2. | "" | +| user3 | str | Variable name of USERVAR to be monitored by user3. | "" | +| xwidth | m | Width of detector. | 0 | +| yheight | m | Height of detector. | 0 | +| zdepth | m | Thickness of detector (z). | 0 | +| bins | 1 | Number of bins to force for all variables. Use 'bins' keyword in 'options' for heterogeneous bins | 0 | +| min | u | Minimum range value to force for all variables. Use 'min' or 'limits' keyword in 'options' for other limits | -1e40 | +| max | u | Maximum range value to force for all variables. Use 'max' or 'limits' keyword in 'options' for other limits | 1e40 | +| restore_xray | 0\|1 | If set, the monitor does not influence the photon state. Equivalent to setting the 'parallel' option. | 0 | +| radius | m | Radius of sphere/banana shape monitor | 0 | +| options | str | String that specifies the configuration of the monitor. The general syntax is "[x] options..." (see Descr.). | "NULL" | +| filename | str | Output file name (overrides file=XX option). | "NULL" | +| geometry | str | Name of an OFF file to specify a complex geometry detector | "NULL" | +| nowritefile | 1 | If set, monitor will skip writing to disk | 0 | +| username1 | str | Name assigned to User1 | "NULL" | +| username2 | str | Name assigned to User2 | "NULL" | +| username3 | str | Name assigned to User3 | "NULL" | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcxtrace-comps/monitors/Monitor_nD.comp) for `Monitor_nD.comp`. +- PreMonitor_nD + +--- + +*Generated on mcxtrace 3.99.99.* \ No newline at end of file diff --git a/mcxtrace-comps/monitors/PSD_monitor.md b/mcxtrace-comps/monitors/PSD_monitor.md new file mode 100644 index 000000000..d8b185d23 --- /dev/null +++ b/mcxtrace-comps/monitors/PSD_monitor.md @@ -0,0 +1,46 @@ +# The `PSD_monitor` Component + +*McXtrace: Position-sensitive monitor.* + +## Identification + +- **Site:** +- **Author:** Erik B Knudsen +- **Origin:** Risoe +- **Date:** June 22, 2009 + +## Description + +```text +Based on neutron component written by Kim Lefmann +An (nx times ny) pixel PSD monitor. This component may also be used as a beam +detector. If instead of xwidth, yheight a radius is given, the component has a circular footprint +and integrates circularly (caking). + +Example: PSD_monitor(xwidth=0.1, yheight=0.1, +nx=90, ny=90, filename="Output.psd") +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| filename | str | Name of file in which to store the detector image. | 0 | +| xwidth | m | Width of detector. | 0.05 | +| yheight | m | Height of detector. | 0.05 | +| radius | m | Radius of circular detetor. | 0 | +| restore_xray | 1 | If set, the monitor does not influence the xray state. | 1 | +| nowritefile | 1 | If set, monitor will skip writing to disk | 0 | +| nx | 1 | Number of pixel columns. | 90 | +| ny | 1 | Number of pixel rows. | 90 | +| nr | 1 | Number of radial pixels. | 0 | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcxtrace-comps/monitors/PSD_monitor.comp) for `PSD_monitor.comp`. + +--- + +*Generated on mcxtrace 3.99.99.* \ No newline at end of file diff --git a/mcxtrace-comps/monitors/PSD_monitor_4PI.md b/mcxtrace-comps/monitors/PSD_monitor_4PI.md new file mode 100644 index 000000000..42c992015 --- /dev/null +++ b/mcxtrace-comps/monitors/PSD_monitor_4PI.md @@ -0,0 +1,43 @@ +# The `PSD_monitor_4PI` Component + +*McXtrace: Release: McXtrace 0.1 + +Spherical position-sensitive detector.* + +## Identification + +- **Site:** +- **Author:** Erik Knudsen +- **Origin:** Risoe +- **Date:** June 23rd, 2009 + +## Description + +```text +Based on neutron component by Kim Lefmann and Kristian Nielsen +An (n times m) pixel spherical PSD monitor using a cylindrical projection. +Mostly for test and debugging purposes. + +Example: PSD_monitor_4PI(radius=0.1, +nx=90, ny=90, filename="Output.psd") +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| radius | m | Radius of detector | 1 | +| restore_xray | 1 | If set, the monitor does not influence the xray state | 0 | +| nx | 1 | Number of pixel columns | 90 | +| ny | 1 | Number of pixel rows | 90 | +| filename | str | Name of file in which to store the detector image | 0 | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcxtrace-comps/monitors/PSD_monitor_4PI.comp) for `PSD_monitor_4PI.comp`. + +--- + +*Generated on mcxtrace 3.99.99.* \ No newline at end of file diff --git a/mcxtrace-comps/monitors/PSD_monitor_coh.md b/mcxtrace-comps/monitors/PSD_monitor_coh.md new file mode 100644 index 000000000..a9728dd53 --- /dev/null +++ b/mcxtrace-comps/monitors/PSD_monitor_coh.md @@ -0,0 +1,51 @@ +# The `PSD_monitor_coh` Component + +*McXtrace: Position-sensitive monitor with phase integration.* + +## Identification + +- **Site:** +- **Author:** Erik Knudsen +- **Origin:** Risoe +- **Date:** March 13, 2010 + +## Description + +```text +An (n times m) pixel PSD monitor taking phase into account. +As the i:th ray hits a pixel (j,k) in the monitor the intensity in that +pixel will be updated as a complex sum, i.e. P_i = P_{i-1} + p_i exp{-\phi_i}. + +By setting ratio<1 the effective pixel area becomes a +fraction of the ideal (which is to divide the xwidth and yheight intervals into nx and ny abutting +subintervals). This reduces the monitor effective area by ratio^2. +If the centering flag is set - the monitor will treat all rays as if they hit a pixel +center. This behaves as if ratio -> 0, but at no cost in statistics. + +Example: PSD_monitor_coh(xwidth=0.1, yheight=0.1, +nx=90, ny=90, filename="Output.psd") +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| nx | | Number of pixel columns. | 90 | +| ny | | Number of pixel rows. | 90 | +| filename | m | Name of file in which to store the detector images - the suffixes .abs and .arg will be added. | 0 | +| restore_xray | | If set, the monitor does not influence the xray state. | 0 | +| xwidth | m | Width of detector. | 0.05 | +| yheight | m | Height of detector. | 0.05 | +| ratio | | ratio between pixel area and effective pixel area. | 1 | +| centering | | Treat all rays as if they hit the center of the pixel. | 1 | +| nowritefile | 1 | If set, monitor will skip writing to disk | 0 | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcxtrace-comps/monitors/PSD_monitor_coh.comp) for `PSD_monitor_coh.comp`. + +--- + +*Generated on mcxtrace 3.99.99.* \ No newline at end of file diff --git a/mcxtrace-comps/monitors/TOF_monitor.md b/mcxtrace-comps/monitors/TOF_monitor.md new file mode 100644 index 000000000..ed2c5e238 --- /dev/null +++ b/mcxtrace-comps/monitors/TOF_monitor.md @@ -0,0 +1,42 @@ +# The `TOF_monitor` Component + +*McXtrace: Release: 1.2 + +Rectangular Time-of-flight monitor.* + +## Identification + +- **Site:** +- **Author:** Erik B Knudsen +- **Origin:** British Airways +- **Date:** Aug. 2014 + +## Description + +```text +Rectangular Time-of-flight monitor. You may either give the time-step or the +time range. +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| nt | 1 | Number of time bins | 20 | +| filename | str | Name of file in which to store the detector image | 0 | +| xwidth | m | Width of detector. | 0.1 | +| yheight | m | Height of detector. | 0.1 | +| tmin | mu-s | Lower time limit | 0 | +| tmax | mu-s | Upper time limit. When left as 0, use dt to compute tmax. | 0 | +| dt | mu-s | Length of each time bin | 1.0 | +| restore_xray | 1 | If set, the monitor does not influence the xray state | 0 | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcxtrace-comps/monitors/TOF_monitor.comp) for `TOF_monitor.comp`. + +--- + +*Generated on mcxtrace 3.99.99.* \ No newline at end of file diff --git a/mcxtrace-comps/monitors/W_psd_monitor.md b/mcxtrace-comps/monitors/W_psd_monitor.md new file mode 100644 index 000000000..1a752280e --- /dev/null +++ b/mcxtrace-comps/monitors/W_psd_monitor.md @@ -0,0 +1,44 @@ +# The `W_psd_monitor` Component + +*McXtrace: Release: McXtrace 0.1 + +Position-sensitive wattage monitor.* + +## Identification + +- **Site:** +- **Author:** Erik Knudsen +- **Origin:** Risoe +- **Date:** June 22, 2009 + +## Description + +```text +Based on neutron PSD component written by Kim Lefmann +An n times m pixel PSD wattage monitor. This component may also be used as a beam +detector. + +Example: W_psd_monitor(xwidth=0.1, yheight=0.1, +nx=90, ny=90, filename="Output.psd") +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| nx | 1 | Number of pixel columns | 90 | +| ny | 1 | Number of pixel rows | 90 | +| filename | str | Name of file in which to store the detector image | 0 | +| restore_xray | 1 | If set, the monitor does not influence the xray state | 0 | +| xwidth | m | Width of detector. | 0.1 | +| yheight | m | Height of detector. | 0.1 | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcxtrace-comps/monitors/W_psd_monitor.comp) for `W_psd_monitor.comp`. + +--- + +*Generated on mcxtrace 3.99.99.* \ No newline at end of file diff --git a/mcxtrace-comps/obsolete/Lens_Kinoform.md b/mcxtrace-comps/obsolete/Lens_Kinoform.md new file mode 100644 index 000000000..54c41a0d1 --- /dev/null +++ b/mcxtrace-comps/obsolete/Lens_Kinoform.md @@ -0,0 +1,44 @@ +# The `Lens_Kinoform` Component + +*McXtrace: A model of a specific kinoform used by the BNL* + +## Identification + +- **Site:** +- **Author:** Jana Baltser and Erik Knudsen +- **Origin:** NBI +- **Date:** January 2012 + +## Description + +```text +KINOFORM. A model of a specific kinoform used by the BNL team during the APS beamtime. +z: [0 0.002033m] +xmin=-0.0002634 +xmax=0.0002634 +the principles of the kinoform's operation are described here: http://neutrons.ornl.gov/workshops/nni_05/presentations/min050616_xray_evans-lutterodt_ken_nni05.pdf + +You may as well use a kinoform with: +Lens_parab_Cyl(r=.5e-3,yheight=1.3e-3,xwidth=1.3e-3,d=.1e-3,N=21, +material_datafile="Be.txt") +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| datafile | | | "kinoform.txt" | +| material_datafile | | | "Si.txt" | +| yheight | m | height of the lens. | 1e-2 | +| xwidth | m | width of the lens | 5.268e-4 | +| deltaN | | | 0 | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcxtrace-comps/obsolete/Lens_Kinoform.comp) for `Lens_Kinoform.comp`. + +--- + +*Generated on mcxtrace 3.99.99.* \ No newline at end of file diff --git a/mcxtrace-comps/obsolete/Lens_parab_Cyl_rough.md b/mcxtrace-comps/obsolete/Lens_parab_Cyl_rough.md new file mode 100644 index 000000000..c3e0213f6 --- /dev/null +++ b/mcxtrace-comps/obsolete/Lens_parab_Cyl_rough.md @@ -0,0 +1,41 @@ +# The `Lens_parab_Cyl_rough` Component + +*McXtrace: Lens_parab_Cyl_rough component* + +## Identification + +- **Site:** +- **Author:** Jana Baltser and Erik Knudsen +- **Origin:** +- **Date:** April 2011 + +## Description + +```text +A simple X-ray compound refractive lens (CRL) with a parabolic cylinder profile, +it focuses in 1D. +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| material_datafile | | | "Be.txt" | +| r | m | radius of curvature (circular approximation at the tip of the profile) | .5e-3 | +| yheight | m | the CRL's dimensions along Y, aka aperture | 1.2e-3 | +| xwidth | | | 1.2e-3 | +| d | | | .1e-3 | +| T | | | .99 | +| N | | | 1 | +| rough_z | | | 0 | +| rough_xy | | | 0 | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcxtrace-comps/obsolete/Lens_parab_Cyl_rough.comp) for `Lens_parab_Cyl_rough.comp`. + +--- + +*Generated on mcxtrace 3.99.99.* \ No newline at end of file diff --git a/mcxtrace-comps/obsolete/Lens_parab_rough.md b/mcxtrace-comps/obsolete/Lens_parab_rough.md new file mode 100644 index 000000000..96f4c390e --- /dev/null +++ b/mcxtrace-comps/obsolete/Lens_parab_rough.md @@ -0,0 +1,42 @@ +# The `Lens_parab_rough` Component + +*McXtrace: Lens_parab_rough component* + +## Identification + +- **Site:** +- **Author:** Jana Baltser and Erik Knudsen +- **Origin:** +- **Date:** August 2010, modified July 2011 + +## Description + +```text +A simple X-ray compound refractive lens (CRL) with a profile of the parabola in +rotation simulates the photons' movement on passing through it. The CRL focuses in 2D. +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| material_datafile | Be.txt | File where the material parameters for the filter may be found. Format is similar to what may be found off the NIST website. | "Be.txt" | +| r | m | radius of curvature (circular approximation at the tip of the profile) | 0.5e-3 | +| yheight | m | the CRL's dimensions along Y, aka aperture | 1.4e-3 | +| xwidth | m | the CRL's dimensions along X | 1.4e-3 | +| d | m | distance between two surfaces of the lens along the propagation axis; | .1e-3 | +| T | 1 | transmission of the lens | .99 | +| N | 1 | amount of single lenses in a stack. | 1 | +| rough_z | rms | waviness along z | 0 | +| rough_xy | rms | waviness along x and y | 0 | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcxtrace-comps/obsolete/Lens_parab_rough.comp) for `Lens_parab_rough.comp`. +- material datafile obtained from http://physics.nist.gov/cgi-bin/ffast/ffast.pl + +--- + +*Generated on mcxtrace 3.99.99.* \ No newline at end of file diff --git a/mcxtrace-comps/obsolete/Perfect_crystal.md b/mcxtrace-comps/obsolete/Perfect_crystal.md new file mode 100644 index 000000000..fa297738e --- /dev/null +++ b/mcxtrace-comps/obsolete/Perfect_crystal.md @@ -0,0 +1,52 @@ +# The `Perfect_crystal` Component + +*McXtrace: Perfect crystal with diamond or zincblende structure* + +## Identification + +- **Site:** +- **Author:** Anette Vickery, Andrea Prodi, Erik Knudsen +- **Origin:** NBI +- **Date:** April 2011 + +## Description + +```text +Reads atomic formfactors from a data input file. +The PerfectCrystal code reflects ray in an ideal geometry, does not include surface imperfections or mosaicity + +The crystal is positioned such that the long axis of the crystal surface coincides with +z-axis. The angle between the Bragg planes and the crystal surface is alpha + + +The algorithm: +Incoming photon's coordinates and direction (k-vector) are transformed into an elliptical reference frame +(elliptical parameters are calculated according to the mirror's position and its focusing distances and the * incident angle), the intersection point is then defined. +A new, reflected photon is then starting at the point of intersection. +Notation follows Tadashi Matsushita and Hiro-O Hashizume, X-RAY MONOCHROMATORS. Handbook on Synchrotron Radiation,North-Holland Publishing Company, 1:263–274, 1983. +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| form_factors | | | "FormFactors.txt" | +| material | | | "Si.txt" | +| R0 | | Reflectivity. Overrides the computed Darwin reflectivity. Probably only useful for debugging. | 0 | +| length | m | length of the crystal (along z-axis) | 0.05 | +| width | m | width of the crystal (along x-axis) | 0.02 | +| V | AA^3 | unit cell volum | 160.1826 | +| h | | Miller index of reflection | 1 | +| k | | Miller index of reflection | 1 | +| l | | Miller index of reflection | 1 | +| alpha | rad | asymmetry angle (alpha=0 for symmetric reflection, ie the Bragg planes are parallel to the crystal surface) | 0.0 | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcxtrace-comps/obsolete/Perfect_crystal.comp) for `Perfect_crystal.comp`. + +--- + +*Generated on mcxtrace 3.99.99.* \ No newline at end of file diff --git a/mcxtrace-comps/optics/Arm.md b/mcxtrace-comps/optics/Arm.md new file mode 100644 index 000000000..4227ae59e --- /dev/null +++ b/mcxtrace-comps/optics/Arm.md @@ -0,0 +1,34 @@ +# The `Arm` Component + +*McXtrace: Arm/optical bench* + +## Identification + +- **Site:** +- **Author:** Kim Lefmann and Kristian Nielsen +- **Origin:** Risoe +- **Date:** September 2009 + +## Description + +```text +An arm does not actually do anything, it is just there to set +up a new coordinate system. + +Example: Arm() +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcxtrace-comps/optics/Arm.comp) for `Arm.comp`. + +--- + +*Generated on mcxtrace 3.99.99.* \ No newline at end of file diff --git a/mcxtrace-comps/optics/Beamstop.md b/mcxtrace-comps/optics/Beamstop.md new file mode 100644 index 000000000..ec713fcde --- /dev/null +++ b/mcxtrace-comps/optics/Beamstop.md @@ -0,0 +1,44 @@ +# The `Beamstop` Component + +*McXtrace: Rectangular/circular beam stop.* + +## Identification + +- **Site:** +- **Author:** Kristian Nielsen +- **Origin:** Risoe +- **Date:** March 2011 + +## Description + +```text +A simple rectangular or circular beam stop. +Infinitely thin and infinitely absorbing. +The beam stop is by default rectangular. You may either +specify the radius (circular shape), or the rectangular bounds. + +Example: Beamstop(xmin=-0.05, xmax=0.05, ymin=-0.05, ymax=0.05) +Beamstop(radius=0.1) +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| xmin | m | Lower x bound | -0.05 | +| xmax | m | Upper x bound | 0.05 | +| ymin | m | Lower y bound | -0.05 | +| ymax | m | Upper y bound | 0.05 | +| xwidth | m | Width of beamstop (x). Overrides xmin,xmax. | 0 | +| yheight | m | Height of beamstop (y). Overrides ymin,ymax. | 0 | +| radius | m | Radius of the beam stop in the z=0 plane, centered at Origo | 0 | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcxtrace-comps/optics/Beamstop.comp) for `Beamstop.comp`. + +--- + +*Generated on mcxtrace 3.99.99.* \ No newline at end of file diff --git a/mcxtrace-comps/optics/Bragg_crystal.md b/mcxtrace-comps/optics/Bragg_crystal.md new file mode 100644 index 000000000..98aa2e73a --- /dev/null +++ b/mcxtrace-comps/optics/Bragg_crystal.md @@ -0,0 +1,79 @@ +# The `Bragg_crystal` Component + +*McXtrace: Perfect, reflecting crystal with common cubic structures (diamond, fcc, or bcc, and others if symmetry form factor multipliers provided explicitly)* + +## Identification + +- **Site:** +- **Author:** Marcus H Mendenhall, NIST +- **Origin:** NIST, Gaithersburg, MD, USA +- **Date:** December 1, 2016 + +## Description + +```text +Bragg_crystal.comp supercedes Perfect_Crystal.comp with major edits and corrections. + +For details see: +The optics of focusing bent-crystal monochromators on X-ray powder diffractometers with application to lattice parameter determination and microstructure analysis, +Marcus H. Mendenhall,* David Black and James P. Cline, J. Appl. Cryst. (2019). 52, https://doi.org/10.1107/S1600576719010951 + +Reads atomic formfactors from a data input file. + +The crystal code reflects ray in an ideal geometry, i.e. does not include surface imperfections or mosaicity. +The crystal planes from which the reflection is made lies in the X-Z plane on the unbent crystal rotated +by an angle alpha about the Y axis with respect to the crystal surface. + +The crystal itself is set in the X-Z plane positioned such that the long axis of the crystal surface coincides with +the Z-axis, with its normam pointing in the positve Y-direction. The angle between the Bragg planes and the crystal surface is alpha + +This code has been validated against both experimental data +(2 channel-cut 3-bounce Si 440 crystals together in non-dispersive mode, at Cu kalpha) +and against theoretical rocking rocking curves from XOP for Si220 at Sc kalpha and Si440 at Cu kalpha. + +Changelog: +- Off-axis rays fixed June 2015 so axial divergence corrections are right +- Inclusion of polarization and temperature dependence (via Debye-Waller factor), June-September 2015 +- Errors in complex arithmetic in DarwinReflectivity2 corrected, September 2015, MHM +- Symmetries for form factors corrected 20150924 +- Rotation code updated to use exact DarwinReflectivity Theta0, Thetah so answer is right even if alpha != 0. 20151009 MHM +- Results for (1,1,1) etc. with complex form factor made to agree with XOP. December 1st, 2016 + +Notation follows Tadashi Matsushita and Hiro-O Hashizume, X-RAY MONOCHROMATORS. Handbook on Synchrotron Radiation,North-Holland Publishing Company, 1:263–274, 1983. + +Non-copyright notice: +Contributed by the National Institute of Standards and Technology; not subject to copyright in the United States. +This is not an official contribution, in that the results are in no way certified by NIST. + +Example: Bragg_crystal( +length=0.05, width=0.02, V=160.1826, h=1, k=1, l=1, alpha=0) +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| length | m | z depth (length) of the crystal. | 0.05 | +| width | m | x width of the crystal. | 0.02 | +| V | AA^3 | Unit cell volume | 160.1826 | +| form_factors | str | File for X-ray form factors | "FormFactors.txt" | +| material | str | Si, Ge (maybe also GaAs?) | "Si.txt" | +| alpha | rad | Asymmetry angle (alpha=0 for symmetric reflection, ie the Bragg planes are parallel to the crystal surface). alpha is defined so that positive alpha reduces the Bragg angle to the plane i.e. alpha=Thetain grazes the planes. if alpha!=0, one should restrict to rays which have small kx values, since otherwise the alpha rotation is not around the diffraction axis. | 0.0 | +| R0 | 0-1 | Reflectivity. Overrides the computed Darwin reflectivity. Probably only useful for debugging. | 0 | +| debye_waller_B | AA^2 | Debye-Waller temperature factor, M=B*(sin(theta)/lambda)^2*(2/3), default=silicon at room temp. | 0.4632 | +| crystal_type | 1 | 1 => Mx_crystal_explicit: provide explicit real and imaginary form factor multipliers structure_factor_scale_r, structure_factor_scale_i; 2 => Mx_crystal_diamond: diamond; 3 => Mx_crystal_fcc: fcc; 4 => Mx_crystal_fcc: bcc | 1 | +| h | 1 | Miller index of reflection | 1 | +| k | 1 | Miller index of reflection | 1 | +| l | 1 | Miller index of reflection | 1 | +| structure_factor_scale_r | 1 | real form factor multiplier | 0.0 | +| structure_factor_scale_i | 1 | imaginary form factor multiplier | 0.0 | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcxtrace-comps/optics/Bragg_crystal.comp) for `Bragg_crystal.comp`. + +--- + +*Generated on mcxtrace 3.99.99.* \ No newline at end of file diff --git a/mcxtrace-comps/optics/Bragg_crystal_bent.md b/mcxtrace-comps/optics/Bragg_crystal_bent.md new file mode 100644 index 000000000..751b6bc6a --- /dev/null +++ b/mcxtrace-comps/optics/Bragg_crystal_bent.md @@ -0,0 +1,80 @@ +# The `Bragg_crystal_bent` Component + +*McXtrace: Bent, perfect, reflecting crystal with common cubic structures (diamond, fcc, or bcc, and others if symmetry form factor multipliers provided explicitly)* + +## Identification + +- **Site:** +- **Author:** Marcus H Mendenhall, NIST +- **Origin:** Marcus H. Mendenhall, NIST, Gaithersburg, MD, USA +- **Date:** December 1, 2016 + +## Description + +```text +Bragg_crystal_bent.comp supercedes Perfect_Crystal_bent.comp with major edits and corrections. + +Reads atomic formfactors from a data input file. + +The crystal code reflects ray in an ideal geometry, does not include surface imperfections or mosaicity +The crystal planes from which the reflection is made must lie in the X-Z plane on the unbent crystal rotated +by an angle alpha about the x axis with respect to the crystal surface. + +The external geometry of the crystal follows that of Elliptic_mirror.comp. +I.e. the crystal is positioned such that the a-axis of the ellipsoid is on the +z-axis, the b-axis is along the y-axis and the c is along the x-axis. +The reference point of the crystal is the ellipsoid centre, offset by one half-axis along the y-axis. +(See the component manual for Elliptic_mirror for a drawing). + +N.B. The component does not work for negative curvature, nor for rays hitting the back of the monochromator. + +Notation follows Tadashi Matsushita and Hiro-O Hashizume, X-RAY MONOCHROMATORS. Handbook on Synchrotron Radiation,North-Holland Publishing Company, 1:263–274, 1983. + +Non-copyright notice: +Contributed by the National Institute of Standards and Technology; not subject to copyright in the United States. +This is not an official contribution, in that the results are in no way certified by NIST. + +NOTE: elliptical coordinate code and documentation taken from Mirror_elliptic.comp distributed in McXtrace v1.2 +However, the coordinates are rotated to be consistent with Bragg_crystal_flat.comp and Perfect_Crystal.comp. +Idealized elliptic mirror with surface ellipse and lattice ellipses independent, to allow construction of +Johansson optics, for example. + +Example: Bragg_crystal_bent( +length=0.05, width=0.02, V=160.1826, h=1, k=1, l=1, alpha=0,y_b=1, lattice_y_b=1, z_c=1, lattice_z_c=1) +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| x_a | m | 1st short half axis (along x). Commonly set to zero, which really implies infinite value, so crystal is an elliptic cylinder. | 0 | +| y_b | m | 2nd short half axis (along y), which is also the presumed near-normal direction, reflection near the y-z plane. | 1.0 | +| z_c | m | Long half axis (along z). Commonly a=0. b=c, which creates a circular cylindrical surface. | 1.0 | +| lattice_x_a | m | Curvature matrix for underlying lattice, for bent/ground/rebent crystals THERE HAS BEEN NO TESTING for the case in which lattice_x_a != x_a. | 0 | +| lattice_y_b | m | Curvature matrix for underlying lattice, for bent/ground/rebent crystals | 1.0 | +| lattice_z_c | m | Curvature matrix for underlying lattice, for bent/ground/rebent crystals | 1.0 | +| length | m | z depth (length) of the crystal. | 0.05 | +| width | m | x width of the crystal. | 0.02 | +| V | AA^3 | Unit cell volume | 160.1826 | +| form_factors | str | File for X-ray form factors | "FormFactors.txt" | +| material | str | Si, Ge (maybe also GaAs?) | "Si.txt" | +| alpha | rad | Asymmetry angle (alpha=0 for symmetric reflection, ie the Bragg planes are parallel to the crystal surface); alpha is defined so that positive alpha reduces the Bragg angle to the plane i.e. alpha=Thetain grazes the planes; if alpha!=0, one should restrict to rays which have small kx values, since otherwise the alpha rotation is not around the diffraction axis. | 0.0 | +| R0 | 0-1 | Reflectivity. Overrides the computed Darwin reflectivity. Probably only useful for debugging. | 0 | +| debye_waller_B | AA^2 | Debye-Waller temperature factor, M=B*(sin(theta)/lambda)^2*(2/3), default=silicon at room temp. | 0.4632 | +| crystal_type | 1 | 1 => Bragg_crystal_explicit: provide explicit real and imaginary form factor multipliers structure_factor_scale_r, structure_factor_scale_i; 2 => Bragg_crystal_diamond: diamond; 3 => Bragg_crystal_fcc: fcc; 4 => Bragg_crystal_fcc: bcc | 1 | +| h | 1 | Miller index of reflection | 1 | +| k | 1 | Miller index of reflection | 1 | +| l | 1 | Miller index of reflection | 1 | +| structure_factor_scale_r | 1 | real form factor multiplier | 0.0 | +| structure_factor_scale_i | 1 | imaginary form factor multiplier | 0.0 | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcxtrace-comps/optics/Bragg_crystal_bent.comp) for `Bragg_crystal_bent.comp`. +- material datafile obtained from http://physics.nist.gov/cgi-bin/ffast/ffast.pl + +--- + +*Generated on mcxtrace 3.99.99.* \ No newline at end of file diff --git a/mcxtrace-comps/optics/Capillary.md b/mcxtrace-comps/optics/Capillary.md new file mode 100644 index 000000000..63d92e40e --- /dev/null +++ b/mcxtrace-comps/optics/Capillary.md @@ -0,0 +1,52 @@ +# The `Capillary` Component + +*McXtrace: Release: McXtrace 1.2 + +A capillary tube* + +## Identification + +- **Site:** +- **Author:** Erik B Knudsen +- **Origin:** DTU Physics +- **Date:** July 2015 + +## Description + +```text +A Capillary tube allowing for reflections along the tube. A material coating can be applied. Multilayer +coatings may be handled by generating a reflectivity file (e.g. by IMD) and setting rtable=1. +Waviness is implemented using the model described in +Wang et.al., J. Appl. Phys., 1996 where the grazing incidence angle $\theta$ is altered as +
    +

    +$\theta' = \theta + \delta \theta \in [-min(theta,\Delta\theta,\Delta\theta]$ +
    +This ensures that reflected rays will never be scattered into the capillary. +$\Delta\theta$ is the value specified by the parameter waviness. + +Example: Capillary( +radius=1e-4,length=0.1, R0=0, coating="Rh.txt") +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| coating | str | Name of file containing the material data (i.e. f1 and f2) for the coating | "Be.txt" | +| longw | 0/1 | If non-zero, waviness is purely longitudinal in its nature. | 1 | +| radius | m | Radius of curvature. | 1 | +| length | m | Length of the unbent mirror. | 0.2 | +| R0 | 0-1 | Fixed constant reflectivity | 0 | +| rtable | 0/1 | If nonzero, the coating file contains an E,theta parameterized matrix of raw reflectivities. | 0 | +| waviness | rad | The momentaneous waviness is uniformly distributed in the range [-waviness,waviness]. | 0 | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcxtrace-comps/optics/Capillary.comp) for `Capillary.comp`. + +--- + +*Generated on mcxtrace 3.99.99.* \ No newline at end of file diff --git a/mcxtrace-comps/optics/Chopper_simple.md b/mcxtrace-comps/optics/Chopper_simple.md new file mode 100644 index 000000000..0b9c7c18b --- /dev/null +++ b/mcxtrace-comps/optics/Chopper_simple.md @@ -0,0 +1,49 @@ +# The `Chopper_simple` Component + +*McXtrace: Ideal chopper* + +## Identification + +- **Site:** +- **Author:** +- **Origin:** Risoe +- **Date:** August 2011 + +## Description + +```text +Ideal model of a chopper situated at Z=0. If a photon arrives at the chopper plane +at a time of t = [t0 +-n*T: t0 +-n*T +tau], where T is the period of the chopper, t0 the initial delay +and tau the opening time of the chopper, it is left untouched - otherwise it is ABSORBed. +If on a continous source the isfirst parameter may be used. In this case the photon time is _defined_ +by the chopper. In other words no photons are absorbed, the photon time is merely sampled within the chopper window. +t_rise is the rise-time of the chopper opening giving a trapezoidal shape. +Limitations: this component does not take chopper geometry into account. If isfirst only samples in the first chopper opening window. + +Example: Chopper_simple( +t0 = -0.5/M_C, T = 20e-6, tau = 100e-12, xwidth = 1e-4, +yheight = 1e-4, isfirst = 1) +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| t0 | s | Initial delay of the opening time | 0 | +| T | s | Period of the chopper | 1 | +| tau | s | Opening time of the chopper | 0.1 | +| xwidth | m | Height of the chopper opening | 0.1 | +| yheight | m | Width of the chopeper opening | 0.1 | +| isfirst | 0/1 | Is the chopper the first chopper on a continous source. | 0 | +| t_rise | s | Rise time of the chopper pulse. | 0 | +| tjit | 1 | Timing jitter in terms of the opening time tau. For each ray the opening window will be shifted by a random amount within t=[-tjit*.5*tau,tjit*.5*tau] | 0 | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcxtrace-comps/optics/Chopper_simple.comp) for `Chopper_simple.comp`. + +--- + +*Generated on mcxtrace 3.99.99.* \ No newline at end of file diff --git a/mcxtrace-comps/optics/Collimator_linear.md b/mcxtrace-comps/optics/Collimator_linear.md new file mode 100644 index 000000000..1753b0966 --- /dev/null +++ b/mcxtrace-comps/optics/Collimator_linear.md @@ -0,0 +1,46 @@ +# The `Collimator_linear` Component + +*McXtrace: A simple analytical Soller collimator (with triangular transmission).* + +## Identification + +- **Site:** +- **Author:** Peter Willendrup +- **Origin:** DTU +- **Date:** October 2024 + +## Description + +```text +Soller collimator with rectangular opening and specified length. The +transmission function is an average and does not utilize knowledge of the +actual neutron trajectory. A zero divergence disables collimation (then the +component works as a double slit). + +Example: Collimator_linear(xmin=-0.1, xmax=0.1, ymin=-0.1, ymax=0.1, length=0.25, divergence=40,transmission=0.7) +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| xmin | m | Lower x bound on slits | -0.01 | +| xmax | m | Upper x bound on slits | 0.01 | +| ymin | m | Lower y bound on slits | -0.025 | +| ymax | m | Upper y bound on slits | 0.025 | +| xwidth | m | Width of slits | 0 | +| yheight | m | Height of slits | 0 | +| length | m | Distance between input and output slits | 0.1 | +| divergence | minutes of arc | Divergence horizontal angle (calculated as atan(d/length), where d is the blade spacing) | 10 | +| transmission | 1 | Transmission of Soller (0<=t<=1) | 1 | +| divergenceV | minutes of arc | Divergence vertical angle | 0 | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcxtrace-comps/optics/Collimator_linear.comp) for `Collimator_linear.comp`. + +--- + +*Generated on mcxtrace 3.99.99.* \ No newline at end of file diff --git a/mcxtrace-comps/optics/Diaphragm.md b/mcxtrace-comps/optics/Diaphragm.md new file mode 100644 index 000000000..e901d3ff9 --- /dev/null +++ b/mcxtrace-comps/optics/Diaphragm.md @@ -0,0 +1,39 @@ +# The `Diaphragm` Component + +*McXtrace: Rectangular/circular diaphragm (alias of the Slit component)* + +## Identification + +- **Site:** +- **Author:** Peter Willendrup +- **Origin:** DTU Physics +- **Date:** February 2025 + +## Description + +```text +A simple rectangular or circular diaphragm. You may either +specify the radius (circular shape), or the rectangular bounds. +No transmission around the diaphragm is allowed. + +Example: Diaphragm(xmin=-0.01, xmax=0.01, ymin=-0.01, ymax=0.01) +Diaphragm(radius=0.01) + + +For INPUT PARAMETERS - please consult Slit.comp as Diaphragm is a copy of that component. +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcxtrace-comps/optics/Diaphragm.comp) for `Diaphragm.comp`. + +--- + +*Generated on mcxtrace 3.99.99.* \ No newline at end of file diff --git a/mcxtrace-comps/optics/Filter.md b/mcxtrace-comps/optics/Filter.md new file mode 100644 index 000000000..5b399e2dc --- /dev/null +++ b/mcxtrace-comps/optics/Filter.md @@ -0,0 +1,58 @@ +# The `Filter` Component + +*McXtrace: Release: McXtrace 1.1 + +Block of an attenuating material* + +## Identification + +- **Site:** +- **Author:** Erik Knudsen +- **Origin:** DTU Physics +- **Date:** Jan 24, 2011 + +## Description + +```text +A chunk of attenuating material. Attenuation is computed through +the effective length travelled within the material. +No scattering is modelled at present. + +Filter shape may be a cylinder, a sphere, a box or any other shape. +box/plate: xwidth x yheight x zdepth +cylinder: radius x yheight (along Y axis) +sphere: radius +any shape: geometry=OFF/PLY_file + +Example: Filter(material_datafile="Ge.txt", +geometry="wire.ply",xwidth=0.02,yheight=0,zdepth=0) +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| refraction | 0/1 | If nonzero, refraction is enabled. | 1 | +| fixed_delta | 0/1 | Use a fixed delta to compute refraction - useful for debugging. | 0 | +| material_datafile | str | File where the material parameters for the filter may be found. Format is similar to what may be found off the NIST website. [Be.txt] | "Be.txt" | +| geometry | str | File containing the polygon definition of a general shape object. When xwidth is also given, the object is rescaled accordingly (OFF/PLY) | 0 | +| xwidth | m | Width of block. | 0 | +| yheight | m | Height of block. | 0 | +| zdepth | m | Thickness of block. | 0 | +| radius | m | Radius of cylinder or sphere. | 0 | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcxtrace-comps/optics/Filter.comp) for `Filter.comp`. +- Meshlab https://www.meshlab.net/ +- Geomview and Object File Format (OFF) +- Java version of Geomview (display only) jroff.jar +- qhull +- Powercrust https://www.cs.ucdavis.edu/~amenta/powercrust.html +- material datafile obtained from http://physics.nist.gov/cgi-bin/ffast/ffast.pl + +--- + +*Generated on mcxtrace 3.99.99.* \ No newline at end of file diff --git a/mcxtrace-comps/optics/Grating_reflect.md b/mcxtrace-comps/optics/Grating_reflect.md new file mode 100644 index 000000000..a9c389134 --- /dev/null +++ b/mcxtrace-comps/optics/Grating_reflect.md @@ -0,0 +1,51 @@ +# The `Grating_reflect` Component + +*McXtrace: A reflective grating.* + +## Identification + +- **Site:** +- **Author:** Erik B Knudsen (erkn@fysik.dtu.dk), Kristian Sorensen and Philip Smith +- **Origin:** DTU +- **Date:** June 2021 + +## Description + +```text +A reflective grating that diffracts incident photons. +The grating is in the XZ-plane. It then reflects the incoming photon using a MC picked angle, +where the angle is picked from a uniform distribution of width d_phi, i.e. U[-d_phi/2,d_phi/2] +The Monte Carlo wight of the ray is then adjusted wrt. to the grating interference pattern, and +the diffraction pattern associated with each grating line. All lines are considered equal. +For more efficient sampling of a particular direction the centre of the d_phi may be shifted +using the parameters order or phi0. In the latter case a set angle is chosen as the centre of the +sampled interval, in the former the centre angle is computed from the specified grating order. + +In an upcoming release this grating model will also include a blazed grating. + +Example: Grating_reflect( +d_phi=1,order=0,rho_l=100,zdepth=102e-3,xwidth=102e-3) +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| d_phi | deg | Range of diffraction angle that is to be simulated -d_phi/2 ; d_phi/2. | 1 | +| R0 | 0-1 | Constant reflecticity of the grating [0;1]. | 1 | +| rho_l | l/mm | Number of lines pr mm of the grating. | 800 | +| order | 1 | The target order of the grating. If non-zero d_phi will be centered around this scattering line. | 0 | +| phi0 | deg | Target angle to center d_phi. If this is set to 0 the 0th (or any other chosen by the parameter order) order line will be used. | 0 | +| zdepth | m | The length of the grating. | 0.015 | +| xwidth | m | The width of the grating. | 0.136 | +| verbose | 0/1 | If non-zero, more information will be displayed. Nb. generates much output. | 0 | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcxtrace-comps/optics/Grating_reflect.comp) for `Grating_reflect.comp`. + +--- + +*Generated on mcxtrace 3.99.99.* \ No newline at end of file diff --git a/mcxtrace-comps/optics/Grating_trans.md b/mcxtrace-comps/optics/Grating_trans.md new file mode 100644 index 000000000..6037d9432 --- /dev/null +++ b/mcxtrace-comps/optics/Grating_trans.md @@ -0,0 +1,49 @@ +# The `Grating_trans` Component + +*McXtrace: Transmission grating* + +## Identification + +- **Site:** +- **Author:** Erik B Knudsen (erkn@fysik.dtu.dk) +- **Origin:** DTU Physics +- **Date:** December 2016 + +## Description + +```text +Model of a 1D rectangular transmission grating based on the theory developed in Schnopper et. al., Applied Optics, 1977. +The grating lines are assumed to be vertical. Within each period a fraction gamma is the "open" fraction. +(I.e. 1 is completely open). At present only absorption in the substrate (modelled by the thickness sdepth) +is included. + +This component is currently undergoing validation. + +Example: Grating_trans( +xwidth=25e-3, yheight=25e-3, gamma=0.4, period=2000e-10, zdepth=5100e-10, max_order=3, material="Au.txt") +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| xwidth | m | Width of the grating. Defines how many lines there are in total. | 1e-3 | +| yheight | m | Height of the grating. | 1e-3 | +| period | m | Distance between grating grooves. | 1e-6 | +| gamma | 0-1 | Ratio between groove and period aka duty cycle. 1 means fully open. | 0.5 | +| zdepth | m | Depth of grooves. | 1e-6 | +| sdepth | m | Thickness of substrate. The default is to have no substrate - i.e. rods. | 0 | +| material | str | Data file containing the material from which the grating is made. | "Au.txt" | +| substrate | str | Data file containing material data for the substrate. | "" | +| max_order | 1 | Maximum order to diffract | 2 | +| fixed_delta | 0/1 | Set delta to the given constant. Useful for debugging. | 0 | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcxtrace-comps/optics/Grating_trans.comp) for `Grating_trans.comp`. + +--- + +*Generated on mcxtrace 3.99.99.* \ No newline at end of file diff --git a/mcxtrace-comps/optics/Lens_CRL_RTM.md b/mcxtrace-comps/optics/Lens_CRL_RTM.md new file mode 100644 index 000000000..7d5e4fc6d --- /dev/null +++ b/mcxtrace-comps/optics/Lens_CRL_RTM.md @@ -0,0 +1,44 @@ +# The `Lens_CRL_RTM` Component + +*McXtrace: 1D CRL stack based on RTM formalism* + +## Identification + +- **Site:** +- **Author:** Erik Knudsen +- **Origin:** DTU Physics +- **Date:** Jan '21 + +## Description + +```text +A CRL stack component based on the formalism presented by Simons et.al. J. Synch. Rad. +2017, vol. 24. +We model a 1D lens stack focusing in the y-direction. I.e. invariant along x. + +Example: Lens_CRL_RTM( +r=0.5e-3, N=10, fast=1, yheight=0, d=0.1e-3,xwidth=1e-4, zdepth=4e-4) +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| r | m | Radius of curavature at the lens apex. | 0.5e-3 | +| d | m | Thickness of a single lens | 0.1e-3 | +| material | str | Datafile containing f1 constants | "Be.txt" | +| N | m | Number of lenslets in the stack. | 1 | +| zdepth | m | Thickness of a single lenslet. | 2e-3 | +| yheight | m | Height of lens opening. If zero this is set by the lens thickness. | 1e-3 | +| xwidth | m | Width of the lenslets. | 1.2e-3 | +| fast | m | Use fast calculation - should be off for better display with mxdisplay | 1 | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcxtrace-comps/optics/Lens_CRL_RTM.comp) for `Lens_CRL_RTM.comp`. + +--- + +*Generated on mcxtrace 3.99.99.* \ No newline at end of file diff --git a/mcxtrace-comps/optics/Lens_elliptical.md b/mcxtrace-comps/optics/Lens_elliptical.md new file mode 100644 index 000000000..e1c7e3329 --- /dev/null +++ b/mcxtrace-comps/optics/Lens_elliptical.md @@ -0,0 +1,40 @@ +# The `Lens_elliptical` Component + +*McXtrace: X-ray compound refractive lens (CRL) with an elliptic profile* + +## Identification + +- **Site:** +- **Author:** Jana Baltser and Erik Knudsen +- **Origin:** NBI +- **Date:** August 2010 + +## Description + +```text +A simple X-ray compound refractive lens (CRL) with an elliptic profile simulates the photons' movement on passing through it. +Attenuation coefficient mu is taken from the NIST database and Be.txt +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| material_datafile | Be.txt | File where the material parameters for the filter may be found. Format is similar to what may be found off the NIST website. | "Be.txt" | +| r1 | m | Radius of the profile along the X axis | 0.42e-3 | +| r2 | m | Radius of the profile along the Y axis | 0.8e-3 | +| w | m | Parabola parameter, constraining it along the propagation axis | 0.46e-3 | +| d | m | Distance between two surfaces of the lens along the propagation axis | 0.2e-4 | +| Transmission | | | 1 | +| N | 1 | Amount of single lenses in a stack | 1 | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcxtrace-comps/optics/Lens_elliptical.comp) for `Lens_elliptical.comp`. +- material datafile obtained from http://physics.nist.gov/cgi-bin/ffast/ffast.pl + +--- + +*Generated on mcxtrace 3.99.99.* \ No newline at end of file diff --git a/mcxtrace-comps/optics/Lens_parab.md b/mcxtrace-comps/optics/Lens_parab.md new file mode 100644 index 000000000..31de4cf3b --- /dev/null +++ b/mcxtrace-comps/optics/Lens_parab.md @@ -0,0 +1,40 @@ +# The `Lens_parab` Component + +*McXtrace: X-ray compound refractive lens (CRL) with a profile of the parabola* + +## Identification + +- **Site:** +- **Author:** Jana Baltser and Erik Knudsen +- **Origin:** NBI +- **Date:** August 2010, modified July 2011 + +## Description + +```text +A simple X-ray compound refractive lens (CRL) with a profile of the parabola in rotation simulates the photons' movement on passing through it. The CRL focuses in 2D + +Example: Lens_parab(material_datafile = "Be.txt", r=200e-6, r_ap=0.5e-3, d=50e-6, N=16) +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| material_datafile | str | Datafile containing f1 constants | "Be.txt" | +| r | m | Radius of curvature (circular approximation at the tip of the profile). | 0.5e-3 | +| r_ap | m | Radius of circular aperture, which also defines the depth of the lens profile. | 1.4e-3 | +| d | m | Distance between two surfaces of the lens along the propagation axis. | .1e-3 | +| N | m | Number of single lenses in a stack. | 1 | +| rough_z | rad | RMS value of random slope error along z. | 0 | +| rough_xy | rad | RMS value of random slope error along x and y. | 0 | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcxtrace-comps/optics/Lens_parab.comp) for `Lens_parab.comp`. + +--- + +*Generated on mcxtrace 3.99.99.* \ No newline at end of file diff --git a/mcxtrace-comps/optics/Lens_parab_Cyl.md b/mcxtrace-comps/optics/Lens_parab_Cyl.md new file mode 100644 index 000000000..b57bcbbc1 --- /dev/null +++ b/mcxtrace-comps/optics/Lens_parab_Cyl.md @@ -0,0 +1,48 @@ +# The `Lens_parab_Cyl` Component + +*McXtrace: X-ray compound refractive lens (CRL) with a parabolic cylinder shape* + +## Identification + +- **Site:** +- **Author:** Jana Baltser and Erik Knudsen +- **Origin:** NBI +- **Date:** April 2011 + +## Description + +```text +An X-ray compound refractive lens (CRL) with a parabolic cylinder profile focusing in 1D, i.e. onto a line + +The lens is invariant along the x-axis and has a parabolic profile along the y-axis defined as z/c = y^2/b^2. +Thus, i.e. it focuses onto a line along the x-axis. +N>1 means that a stack of lenses is to be simulated. Each lens consists of a pair of two opposing parabolic surfaces +with a distance d between them. The reference point of the component is at the bottom of the first parabolic +surface. + +Example: Lens_parab_Cyl(r=.5e-3,yheight=1.3e-3,xwidth=1.3e-3,d=.1e-3,N=21, +material_datafile="Be.txt") +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| material_datafile | str | Datafile containing f1 constants | "Be.txt" | +| r | m | Radius of curvature (circular approximation at the tip of the profile). | .5e-3 | +| yheight | m | The CRL's aperture along Y. | 1.2e-3 | +| xwidth | m | The width of the CRL in the invariant direction x. | 1.2e-3 | +| d | m | Distance between two surfaces of the lens along the propagation axis. | .1e-3 | +| N | 1 | Number of single lenses in a stack. | 1 | +| rough_z | rad | RMS value of random slope along z. | 0 | +| rough_xy | rad | RMS value of random slope along x and y. | 0 | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcxtrace-comps/optics/Lens_parab_Cyl.comp) for `Lens_parab_Cyl.comp`. + +--- + +*Generated on mcxtrace 3.99.99.* \ No newline at end of file diff --git a/mcxtrace-comps/optics/Lens_simple.md b/mcxtrace-comps/optics/Lens_simple.md new file mode 100644 index 000000000..f4682a2de --- /dev/null +++ b/mcxtrace-comps/optics/Lens_simple.md @@ -0,0 +1,48 @@ +# The `Lens_simple` Component + +*McXtrace: Simple refractive x-ray lens* + +## Identification + +- **Site:** +- **Author:** Erik Knudsen +- **Origin:** Risoe +- **Date:** June 16, 2009 + +## Description + +```text +Models a stack of N refractive lenses, with a radius of curvature, r, at the apex. +The model is a thin-lens approximation where photons are refracted in a the XY plane +at Z=0. Absorption is generally disregarded may be handled through the use of the optional +transmission parameter T, where 0<=T<=1. +Thus, the lens has the focal length of f=R/(2*N*&delta) where the x-ray refractive +index is written: n = 1 - &delta + i &beta. + +Example: Lens_simple(xwidth=1e-5, yheight=1e-5, material_datafile="Be.txt",N=100,r=0.3e-3) +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| xwidth | m | Width of lens aperture. | 0 | +| yheight | m | Height of lens aperture. | 0 | +| radius | m | Radius of lens aperture (overrides xwidth & yheight). | 1e-3 | +| T | 0-1 | Transmission efficiency of the lens. | 1 | +| r | m | The radius of curvature of the lens. | 3e-4 | +| N | 1 | The number of successive lenses in the stack. | 1 | +| verbose | 0/1 | Extra information for debugging. | 0 | +| f | m | Focal length - overrides the material_datafile - and diregards chromatic aberration. | 0 | +| material_datafile | | File where the material parameters for the lens may be found. Format is similar to what may be found off the NIST website. | "Be.txt" | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcxtrace-comps/optics/Lens_simple.comp) for `Lens_simple.comp`. +- material datafile obtained from http://physics.nist.gov/cgi-bin/ffast/ffast.pl + +--- + +*Generated on mcxtrace 3.99.99.* \ No newline at end of file diff --git a/mcxtrace-comps/optics/Mask.md b/mcxtrace-comps/optics/Mask.md new file mode 100644 index 000000000..b6ce12781 --- /dev/null +++ b/mcxtrace-comps/optics/Mask.md @@ -0,0 +1,61 @@ +# The `Mask` Component + +*McXtrace: A masking image object* + +## Identification + +- **Site:** +- **Author:** Erik Knudsen +- **Origin:** DTU Physics +- **Date:** March 2014 + +## Description + +```text +The Mask component takes an image as input either as an standard image file in png or pnm format, or as an ascii file (see below for format), +and uses the image as a mask. For instance as a manner of measuring resolution for imaging applications. +If the image is supplied as a png or pnm file, they interpretation of the pixels varies depending on the file. If the image is grayscale the pixel values are directly mapped +to opacity (or transparency if invert is set) values in the range [0..1]. If the image has RGB channels the R channel is considered most significant, the B channel least significant. +The resulting number, e.g. R*255^2 + G*255 + B, is then mapped to a real valued opacity. +Additionally png images may have an alpha channel - which is then considered the least significant channel. Palette mapped pngs are as of yet _not_ supported. +A regular ascii file may be supplied - in which case the file is like the one below +#any initial line starting with a hash is silently ignored +0.0 1.0 0.0 1.0 0.0 +0.5 0.0 0.5 0.0 0.5 +0.0 0.25 0.0 0.25 0.0 +0.75 0.0 0.75 0.0 0.75 +1.0 0.0 1.0 0.0 1.0 + +...which defines a 5x5 mask with a kind of checkerboard pattern. + +By default the values from the masking image are interepreted as opacity (1 is fully blocking). If invert is nonzero this is inverted and the values are +considered as transparency (1 is fully transmissive) + +N.b. If you want to use the png-option of the component you must have libpng installed _and_ link your compiled instrument to it. Assuming libpng is installed you may do this +by adding "-DUSE_PNG=1 -lpng" to 1) the MCXTRACE_CFLAGS environment variable or 2) to the compiler flags textbox in the GUI. Open File->Configuration and edit the textbox. + +The virtual option of the Mask, is intended as a help to use a png-image as a grayscale distribution. If the virtual flag is set, rays are propagated to the mask plane +and the pixel value at the intersection point is read, but the rays remain unaffected. The pixel value is stored in the variable named in the string maskvar. This should be a USERVAR set from the instrument file. + +Example: Mask(xwidth=0.1, yheight=0.1, mask=Test_Mask_input_file.mask) +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| xwidth | m | Width of the masking object | 0.1 | +| yheight | m | Height of the masking object | 0.1 | +| mask | str | Name of file containing the masking image | "Test_Mask_input_file.mask" | +| invert | 0/1 | When 0 => masked values are opaque, when 1 => masked values are transparent. | 0 | +| virtual | 0/1 | Mask does not affect the x-ray, but does still read the pixel value of the pixel hit and stores it in masking. | 0 | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcxtrace-comps/optics/Mask.comp) for `Mask.comp`. + +--- + +*Generated on mcxtrace 3.99.99.* \ No newline at end of file diff --git a/mcxtrace-comps/optics/Mirror.md b/mcxtrace-comps/optics/Mirror.md new file mode 100644 index 000000000..86ba3cf7d --- /dev/null +++ b/mcxtrace-comps/optics/Mirror.md @@ -0,0 +1,45 @@ +# The `Mirror` Component + +*McXtrace: Perfectly flat mirror (in XZ or YZ), or polygonal* + +## Identification + +- **Site:** +- **Author:** Erik B Knudsen +- **Origin:** DTU Physics +- **Date:** July 2016 + +## Description + +```text +This is a simple implementation of a perfectly flat mirror. The mirror plane is in the XZ-plane. +It can be oriented in the YZ plane by setting 'yheight'. +It may also be a complex polygonal geometry (OFF/PLY) by setting 'geometry'. + +Reflectivity may be specified either as a number (R0) or by means of a material datafile. +The material datafile may be specified as a coating or as relfectivity - either parameterized by q or E,theta. +If the datafile is identified as a coating recipe, an ab-initio reflectivity calculation is triggered. + +Example: Mirror(xwidth=5e-2, zdepth=2e-1, R0=1, coating="B4C.dat") +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| zdepth | m | The length of the mirror | 0.1 | +| xwidth | m | The width of the mirror | 0.01 | +| yheight | m | The height of the mirror. This overrides xwidth and puts the mirror in the yz-plane. | 0 | +| coating | str | Filename containing reflectivities (or coating). | "" | +| R0 | 0-1 | Constant reflectivity | 0 | +| geometry | str | Filename of an OFF/PLY geometry providing a polygonal surface. When xwidth/yheight/zdepth are also given, the object is rescaled accordingly. | "" | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcxtrace-comps/optics/Mirror.comp) for `Mirror.comp`. + +--- + +*Generated on mcxtrace 3.99.99.* \ No newline at end of file diff --git a/mcxtrace-comps/optics/Mirror_curved.md b/mcxtrace-comps/optics/Mirror_curved.md new file mode 100644 index 000000000..013b3c23f --- /dev/null +++ b/mcxtrace-comps/optics/Mirror_curved.md @@ -0,0 +1,40 @@ +# The `Mirror_curved` Component + +*McXtrace: A cylindrically curved mirror (in YZ)* + +## Identification + +- **Site:** +- **Author:** Erik Knudsen +- **Origin:** Risoe +- **Date:** September 25th, 2009 + +## Description + +```text +mirror is in the YZ-plane curved towards positive X if radius is positive + +Example: Mirror_curved( radius=2, length=20e-3, width=40e-3, coating="AlMgF2_disco.dat") +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| radius | m | Radius of curvature, along Z. | 1 | +| R0 | 1 | Constant reflectivity value (mostly relevant for debugging, when coating=""). | 1 | +| coating | str | Name of file containing the material data (i.e. f1 and f2) for the coating | "Be.txt" | +| zdepth | m | Length of the unbent mirror along Z. | 0.2 | +| yheight | m | Width of the mirror along Y. | 0.2 | +| length | m | Length of the unbent mirror along Z = zdepth | 0 | +| width | m | Width of the mirror along Y = yheight | 0 | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcxtrace-comps/optics/Mirror_curved.comp) for `Mirror_curved.comp`. + +--- + +*Generated on mcxtrace 3.99.99.* \ No newline at end of file diff --git a/mcxtrace-comps/optics/Mirror_elliptic.md b/mcxtrace-comps/optics/Mirror_elliptic.md new file mode 100644 index 000000000..abfad3e7f --- /dev/null +++ b/mcxtrace-comps/optics/Mirror_elliptic.md @@ -0,0 +1,50 @@ +# The `Mirror_elliptic` Component + +*McXtrace: Idealized elliptic mirror.* + +## Identification + +- **Site:** +- **Author:** Erik Knudsen +- **Origin:** Risoe +- **Date:** Feb 11, 2010 + +## Description + +```text +Takes a reflectivity as input and reflects rays in a ideal geometry +elliptic mirror. +The mirror is positioned such that the a-axis of the mirror ellipsoid is on the +x-axis, the b-axis is along the y-axis and the c is along the z-axis. +The reference point of the mirror is the ellipsoid centre, offset by one +half-axis along the y-axis (See the component manual for a drawing). +This means that to position the mirror correctly, +the user positions the ellipsoid governing the mirror shape, not the mirror itself. + +Example: Mirror_elliptic( length=150e-3, width=150e-3, x_a=1.025, y_b=1.025, z_c=1.025) +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| x_a | m | 1st short half axis (along x). Commonly set to zero, which really implies infinite value, so crystal is an elliptic cylinder. | 0 | +| y_b | m | 2nd short half axis (along y), which is also the presumed near-normal direction, reflection near the y-z plane. | 1.0 | +| z_c | m | long half axis (along z). Commonly a=0. b=c, which creates a circular cylindrical surface. | 1.0 | +| zdepth | m | Depth (length) of the mirror along Z. | 0.2 | +| xwidth | m | Width of the mirror along X. | 0.2 | +| R0 | 1 | Reflectivity of mirror (mostly relevant for debugging, when coating="") | 1 | +| coating | str | Datafile containing either mirror material constants or reflectivity numbers. | "Be.txt" | +| length | m | alternate name for zdepth (obsolete) | 0 | +| width | m | alternate name for xwidth (obsolete) | 0 | +| radius | m | Spherical radius, Sets x_a=y_b=z_c=radius | 0 | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcxtrace-comps/optics/Mirror_elliptic.comp) for `Mirror_elliptic.comp`. + +--- + +*Generated on mcxtrace 3.99.99.* \ No newline at end of file diff --git a/mcxtrace-comps/optics/Mirror_parabolic.md b/mcxtrace-comps/optics/Mirror_parabolic.md new file mode 100644 index 000000000..bd6a06cd0 --- /dev/null +++ b/mcxtrace-comps/optics/Mirror_parabolic.md @@ -0,0 +1,46 @@ +# The `Mirror_parabolic` Component + +*McXtrace: Idealized parabolic mirror (in XZ)* + +## Identification + +- **Site:** +- **Author:** Erik Knudsen +- **Origin:** Risoe +- **Date:** Feb 11, 2010 + +## Description + +```text +Takes a reflectivity as input and reflects rays in a ideal geometry +parabolic mirror. The mirror is positioned in the zx-plane curving towards positive y. +I.e. the focal point is (0,0,f(a,b)) +The geometry of the paraboloid is governed by the equation: y = x^2 / a^2 + z^2 / b^2 +Hence, the focal length for the 'x' curve is f=a^2 / 4, and analogous for z. + +Example: Mirror_parabolic(R0=1, a=1, b=0, xwidth=0.02, yheight=0, zdepth=0.05) +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| R0 | 1 | Reflectivity of mirror. | 1 | +| a | sqrt(m) | Transverse curvature scale, if zero - the mirror is flat along x. | 1 | +| b | sqrt(m) | Longitudinal curvature scale, if zero, flat along z. | 1 | +| xwidth | m | Width of mirror. | 0.1 | +| zdepth | m | Length of mirror. | 0.1 | +| yheight | m | Thickness of mirror. If 0 (the default) the mirror is mathemticlly thin. Only has an effect for hitting the mirror from the side. | 0 | +| focusx | m | Transverse focal length along X. Sets a. | 0 | +| focusz | m | Longitudinal focal length along Z. Sets b. | 0 | +| radius | m | Focal length. Sets focusx and focusz. | 0 | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcxtrace-comps/optics/Mirror_parabolic.comp) for `Mirror_parabolic.comp`. + +--- + +*Generated on mcxtrace 3.99.99.* \ No newline at end of file diff --git a/mcxtrace-comps/optics/Mirror_toroid.md b/mcxtrace-comps/optics/Mirror_toroid.md new file mode 100644 index 000000000..f6fcb97ec --- /dev/null +++ b/mcxtrace-comps/optics/Mirror_toroid.md @@ -0,0 +1,45 @@ +# The `Mirror_toroid` Component + +*McXtrace: Toroidal shape mirror (in XZ)* + +## Identification + +- **Site:** +- **Author:** Erik B Knudsen +- **Origin:** DTU Physics +- **Date:** Jul 2016 + +## Description + +```text +This is an implementation of a toroidal mirror which may be curved in two dimensions. +To avoid solving quartic equations, the intersection is compited as a combination of +two intersections. First, the ray is intersected with a cylinder to catch (almost) the small +radius curvature. Secondly, the ray is the intersected with an ellipsoid, with the curvatures +matching that of the torus. + +In the first incarnation we assume the mirror to be curving outwards (a bump). + +Example: Mirror_toroid(zdepth=0.340,xwidth=0.020,radius=246.9254,radius_o=246.9254,R0=1) +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| coating | str | Datafile containing either mirror material constants or reflectivity numbers. | "" | +| zdepth | m | Length of mirror. | 0.1 | +| xwidth | m | Width of mirror. | 0.01 | +| **radius** | m | Curvature radius | | +| **radius_o** | m | Curvature radius, outwards | | +| R0 | 1 | Reflectivity of mirror. | 0 | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcxtrace-comps/optics/Mirror_toroid.comp) for `Mirror_toroid.comp`. + +--- + +*Generated on mcxtrace 3.99.99.* \ No newline at end of file diff --git a/mcxtrace-comps/optics/Multilayer_elliptic.md b/mcxtrace-comps/optics/Multilayer_elliptic.md new file mode 100644 index 000000000..d71b46f73 --- /dev/null +++ b/mcxtrace-comps/optics/Multilayer_elliptic.md @@ -0,0 +1,62 @@ +# The `Multilayer_elliptic` Component + +*McXtrace: Elliptic multilayer mirror (in XZ)* + +## Identification + +- **Site:** +- **Author:** Jana Baltser, Peter Willendrup, Anette Vickery, Andrea Prodi, Erik Knudsen +- **Origin:** NBI +- **Date:** February 2011 + +## Description + +```text +Reads reflectivity values from a data input file (Ref.dat) for a Si/W multilayer. +The multilayer code reflects ray in an ideal geometry, does not include surface imperfections + +The mirror is positioned such that the long axis of the mirror elliptical surface coincides with +z-axis + +The algorithm: +Incoming photon's coordinates and direction (k-vector) are transformed into an elliptical reference frame +(elliptical parameters are calculated according to the mirror's position and its focusing distances and the +incident angle), the intersection point is then defined. A new, reflected photon is then starting at the +point of intersection. + +Example: Multilayer_elliptic( +coating = "Ref_W_B4C.txt", theta = 1.2, +s1 = 1, s2 = 2, length = 0.1, width = 0.1, R0 = 1, +Emin=7, Emax=10, Estep=0.05) +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| coating | str | Datafile containing reflectivity values as a function of q and E. | "Ref_W_B4C.txt" | +| theta | deg | Design angle of incidence. | 1.2 | +| s1 | m | Design distance from the source to the multilayer. | 0 | +| s2 | m | Design focusing distance of the multilayer. | 0 | +| length | m | alternate name for zdepth (obsolete) | 0.5 | +| width | m | alternate name for xwidth (obsolete) | 0.2 | +| R0 | 1 | Maximal reflectivity | 1 | +| Emin | keV | Lower limit of energy interval in datafile. Overrides what's written in the datafile header. | -1 | +| Emax | keV | Upper limit of energy interval in datafile. Overrides what's written in the datafile header. | -1 | +| Estep | keV | Step between energy sample points in datafile. Overrides what's written in the datafile header. | -1 | +| Gamma | | High electron density fraction of bilayer (in kinematical appr.). | 0 | +| Lambda | m | Thickness of bilayer (in kinematical appr.). | 0 | +| rho_AB | | Number electron density constrast in bilayer (in kinematical appr.). | 0 | +| N | 1 | Number of bilayers (in kinematical appr.). | 0 | +| xwidth | m | Width of the mirror along X-axis. | 0 | +| zdepth | m | Length of the mirror along Z. | 0 | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcxtrace-comps/optics/Multilayer_elliptic.comp) for `Multilayer_elliptic.comp`. + +--- + +*Generated on mcxtrace 3.99.99.* \ No newline at end of file diff --git a/mcxtrace-comps/optics/Place.md b/mcxtrace-comps/optics/Place.md new file mode 100644 index 000000000..2be9dbd42 --- /dev/null +++ b/mcxtrace-comps/optics/Place.md @@ -0,0 +1,34 @@ +# The `Place` Component + +*McXtrace: A place in space - alias of Arm* + +## Identification + +- **Site:** +- **Author:** Peter Willendrup +- **Origin:** DTU +- **Date:** June 2025 + +## Description + +```text +Just like Arm, Place does not actually do anything, it is just there to set +up a new coordinate system. + +Example: Place() +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcxtrace-comps/optics/Place.comp) for `Place.comp`. + +--- + +*Generated on mcxtrace 3.99.99.* \ No newline at end of file diff --git a/mcxtrace-comps/optics/Slit.md b/mcxtrace-comps/optics/Slit.md new file mode 100644 index 000000000..22a661072 --- /dev/null +++ b/mcxtrace-comps/optics/Slit.md @@ -0,0 +1,52 @@ +# The `Slit` Component + +*McXtrace: Rectangular/circular slit* + +## Identification + +- **Site:** +- **Author:** Erik Knudsen +- **Origin:** DTU Physics +- **Date:** June 16, 2009 + +## Description + +```text +Based on Slit-comp by Kim Lefmann and Henrik Roennow +A simple rectangular or circular slit. You may either +specify the radius (circular shape), which takes precedence, +or rectangular bounds. +No transmission around the slit is allowed. + + + +Example: Slit(xmin=-0.01, xmax=0.01, ymin=-0.01, ymax=0.01) +Slit(radius=0.01) +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| xmin | m | Lower x bound. | 0 | +| xmax | m | Upper x bound. | 0 | +| ymin | m | Lower y bound. | 0 | +| ymax | m | Upper y bound. | 0 | +| radius | m | Radius of slit in the z=0 plane, centered at Origin. | 0 | +| xwidth | m | Width of slit. Overrides xmin,xmax. | 0.001 | +| yheight | m | Height of slit. Overrides ymin,ymax. | 0.001 | +| dist | m | Distance from slit plane to plane containing resampling target. | 0 | +| focus_xw | m | Width of resampling window. | 0 | +| focus_yh | m | Height of resampling window. | 0 | +| focus_x0 | m | Centre (x) of resampling window. | 0 | +| focus_y0 | m | Centre (y) of resampling window. | 0 | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcxtrace-comps/optics/Slit.comp) for `Slit.comp`. + +--- + +*Generated on mcxtrace 3.99.99.* \ No newline at end of file diff --git a/mcxtrace-comps/optics/Slit_N.md b/mcxtrace-comps/optics/Slit_N.md new file mode 100644 index 000000000..0c624fd1b --- /dev/null +++ b/mcxtrace-comps/optics/Slit_N.md @@ -0,0 +1,47 @@ +# The `Slit_N` Component + +*McXtrace: Release: McXtrace 0.1 + +Rectangular/circular slit, duplicated* + +## Identification + +- **Site:** +- **Author:** Erik Knudsen +- **Origin:** Risoe +- **Date:** June 16, 2009 + +## Description + +```text +Based on Slit-comp by Kim Lefmann and Henrik Roennow +A simple rectangular or circular slit. You may either +specify the radius (circular shape), which takes precedence, +or the rectangular bounds. The slits are separated with 'd', and arranged along X. +No transmission around the slit is allowed. +If cutting option is used, low-weight x-rays are ABSORBED + +Example: Slit_N(xwidth=0.01, yheight=0.01, d=0.02) +Slit_N(radius=0.01, cut=1e-10, d=0.03) +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| radius | m | Radius of slit in the z=0 plane, centered at Origo | 0 | +| cut | | Lower limit for allowed weight (1) | 0 | +| xwidth | m | Width of slit. Overrides xmin,xmax. | 0 | +| yheight | m | Height of slit. Overrides ymin,ymax. | 0 | +| N | 1 | Number of slit openings along X | 2 | +| d | m | Separation of slits | 0 | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcxtrace-comps/optics/Slit_N.comp) for `Slit_N.comp`. + +--- + +*Generated on mcxtrace 3.99.99.* \ No newline at end of file diff --git a/mcxtrace-comps/optics/TwinKB_ML.md b/mcxtrace-comps/optics/TwinKB_ML.md new file mode 100644 index 000000000..221aefe41 --- /dev/null +++ b/mcxtrace-comps/optics/TwinKB_ML.md @@ -0,0 +1,51 @@ +# The `TwinKB_ML` Component + +*McXtrace: Montel optic model (aka side-by-side Kirkpatrick Baez)* + +## Identification + +- **Site:** +- **Author:** Jana Baltser, Peter Willendrup, Anette Vickery, Andrea Prodi, Erik Knudsen, Jesper Buch Jensen +- **Origin:** NBI +- **Date:** May 2012 + +## Description + +```text +Models a Montel optic, or Twin Kirkpatrick Baez mirror optic (hence the component name). +The mirror are fully abutting, i.e. there's is no gap between them, and perfectly elliptic. + +Reads reflectivity values from a data input file for a W/B4C multilayer. +The multilayer code reflects ray in an ideal geometry, the reflectivity datafile accounts for surface roughness, sigma. + +The mirror is positioned such that the long axis of the mirror elliptical surface coincides with the z-axis. + +The algorithm: +Incoming photon's coordinates and direction (k-vector) are transformed into an elliptical reference frame +(elliptical parameters are calculated according to the mirror's position and its focusing distances and the * incident angle), the intersection point is then defined. A new, reflected photon is then starting at the +point of intersection. + +Example: TwinKB_ML( theta=1.2, s1=.045 , s2=.9 , length=0.06 , width=0.2 , R0=0 , reflectivity_datafile="Ref_W_B4C.txt") +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| reflectivity_datafile | str | File which contains reflectivities as a function of q. | "Ref.txt" | +| theta | deg | Incident angle | 1.2 | +| **s1** | m | Distance from the source to the multilayer | | +| **s2** | m | Focusing distance of the multilayer | | +| length | m | Length of the mirrors | 0.6 | +| width | m | Width of the mirror along x-axis | 0.2 | +| R0 | 0-1 | Constant reflectivity, R0=1 for an ideal situation. If R0=0, the code reads the reflectivity from the datafile | 0 | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcxtrace-comps/optics/TwinKB_ML.comp) for `TwinKB_ML.comp`. + +--- + +*Generated on mcxtrace 3.99.99.* \ No newline at end of file diff --git a/mcxtrace-comps/optics/ZonePlate.md b/mcxtrace-comps/optics/ZonePlate.md new file mode 100644 index 000000000..8a70a41c6 --- /dev/null +++ b/mcxtrace-comps/optics/ZonePlate.md @@ -0,0 +1,54 @@ +# The `ZonePlate` Component + +*McXtrace: Release: McXtrace 1.4 + +Zone plate based on Monte Carlo sampling of the Fresnel-Kirchhoff integral* + +## Identification + +- **Site:** +- **Author:** Erik B Knudsen +- **Origin:** DTU Physics +- **Date:** June 16, 2009 + +## Description + +```text +A component which models a zone plate by consierding the plate a secondary source +and then by means of Monte Carlo sampling, evaluating the Fresnel-Kirchhoff integral +implicitly by resampling the beam in a window defined by the focus_xw,focus_yh parameters. + +Caveat emptor I: this is a computationally heavy component to run. +Caveat emptor II: for correct modelling of phase-interference phenomena, detectors used after the ZonePlate +should be of the "PSD_monitor_coh" type. + +The zone plate can be either circular or linear. In the linear case, the "slits" are +along the x-axis. + +Example: ZonePlate(radius=0.00015, L=0.15, lambda0=1, focus_xw=300e-9, focus_yh = 300e-9, focus_x0 = 0.0, focus_y0 = 0.0, dist=1) +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| radius | m | The outer radius of the zone plate. Triggers a circular zone plate. Takes precedence over xwidth,yheight. | 0 | +| xwidth | m | Width of linear zone plate. | 0 | +| yheight | m | Height of linear zone plate | 0 | +| **L** | m | Focal length. | | +| **lambda0** | AA | The nominal wavelength that the zone plate is designed to focus. | | +| focus_x0 | m | Offset of resampling window along the x-axis. | 0 | +| focus_y0 | m | Offset of resampling window along the y-axis. | 0 | +| **focus_xw** | m | Width of the resampling window. | | +| **focus_yh** | m | Height of the resampling window. | | +| **dist** | m | Distance along the z-axis from zone plate to the resampling window. | | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcxtrace-comps/optics/ZonePlate.comp) for `ZonePlate.comp`. + +--- + +*Generated on mcxtrace 3.99.99.* \ No newline at end of file diff --git a/mcxtrace-comps/samples/Abs_objects.md b/mcxtrace-comps/samples/Abs_objects.md new file mode 100644 index 000000000..5a25023ff --- /dev/null +++ b/mcxtrace-comps/samples/Abs_objects.md @@ -0,0 +1,50 @@ +# The `Abs_objects` Component + +*McXtrace: Release: McXtrace 1.1 + +Blocks of attenuating material in off format* + +## Identification + +- **Site:** +- **Author:** Erik Knudsen +- **Origin:** DTU Physics +- **Date:** Jan 24, 2011 + +## Description + +```text +This component is a model of 1 or more off-shaped blocks attenuating the x-ray beam. +Which shapes are present and their relative positions are described in a file of the follwing format: +#objects +Material-filename OFF-filename x y z xwidth yheight zdepth +... + +An example is; +2 +Be.txt cube.off 0 0.01 0 0 0 0 +Rh.txt chess.off 0 -0.01 0 0 0 0 + +A xwidth etc of zero means use whatever dimensions are in the off/ply file. +If xwidth (or yheight or zdepth) is nonzero, the component scales the object +to fill that dimension. The xyz coordinates indicate the object shift. + +Example: Abs_objects(objects="input_abs_objects_template.dat") +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| refraction | str | Flag to enable refraction at interfaces. | 1 | +| objects | str | Input file where the off-shapes are defined. | "input_abs_objects_template.dat" | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcxtrace-comps/samples/Abs_objects.comp) for `Abs_objects.comp`. + +--- + +*Generated on mcxtrace 3.99.99.* \ No newline at end of file diff --git a/mcxtrace-comps/samples/Absorption_sample.md b/mcxtrace-comps/samples/Absorption_sample.md new file mode 100644 index 000000000..27811bba8 --- /dev/null +++ b/mcxtrace-comps/samples/Absorption_sample.md @@ -0,0 +1,63 @@ +# The `Absorption_sample` Component + +*McXtrace: Sample component with absorbing materials.* + +## Identification + +- **Site:** +- **Author:** Erik B Knudsen +- **Origin:** Risoe +- **Date:** March 2011 + +## Description + +```text +A sample component consisting of a volume of one material and volume of another +material inside. This is useful as a phantom for simulating tomography experiments. +The inner material can be left unset (all 0), to only have one volume. + +Sample shape may be a cylinder, a sphere, a box or any other shape +box/plate: xwidth x yheight x zdepth +cylinder: radius x yheight +sphere: radius (yheight=0) +any shape: geometry=OFF/PLY file + +Example: Absorption_sample( material_datafile_o="Mn.txt", xwidth_o = 0.5, yheight_o = 0.5, zdepth_o = 0.0001, rho_o=7.15 ) +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| material_datafile_i | str | Name of file containing material data for inclusion. | "" | +| material_datafile_o | str | Name of file containing material data for outer volume. | "" | +| radius_o | m | Radius of "outer" enclosing material cylinder (0) | 0 | +| xwidth_o | m | Width of "outer" enclosing material box (yheight) | 0 | +| yheight_o | m | Height of "outer enclosing material box (1) | 1 | +| zdepth_o | m | Thickness of outer enclosing material box (yheight) | 0 | +| radius_i | m | Radius of "inner" enclosed material cylinder (0) | 0 | +| xwidth_i | m | Width of "inner" enclosed material box (yheight) | 0 | +| yheight_i | m | Height of "inner enclosed material (1) | 0.0 | +| zdepth_i | m | Thickness of inner enclosed material box (yheight) | 0 | +| x_i | m | Center x-coordinate of "inner" object | 0 | +| y_i | m | Center y-coordinate of "inner" object | 0 | +| z_i | m | Center z-coordinate of "inner" object | 0 | +| rho_i | g/cm^3 | density of the enclosed material | 0 | +| rho_o | g/cm^3 | density of the enclosing material | 0 | +| geometry_i | str | Name of an inner Object File Format (OFF) or PLY file for complex geometry. The OFF/PLY file may be generated from XYZ coordinates using qhull/powercrust [str] | "" | +| geometry_o | str | Name of the outer Object File Format (OFF) or PLY file for complex geometry. The OFF/PLY file may be generated from XYZ coordinates using qhull/powercrust | "" | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcxtrace-comps/samples/Absorption_sample.comp) for `Absorption_sample.comp`. +- Meshlab https://www.meshlab.net/ +- Geomview and Object File Format (OFF) +- Java version of Geomview (display only) jroff.jar +- qhull +- Powercrust https://www.cs.ucdavis.edu/~amenta/powercrust.html + +--- + +*Generated on mcxtrace 3.99.99.* \ No newline at end of file diff --git a/mcxtrace-comps/samples/FluoCrystal.md b/mcxtrace-comps/samples/FluoCrystal.md new file mode 100644 index 000000000..e237c4e86 --- /dev/null +++ b/mcxtrace-comps/samples/FluoCrystal.md @@ -0,0 +1,164 @@ +# The `FluoCrystal` Component + +*McXtrace: Release: McXtrace 3.5 + +Sample model handling absorption, fluorescence, Compton, Rayleigh scattering and single crystal diffraction.* + +## Identification + +- **Site:** +- **Author:** Emmanuel Farhi (emmanuel.farhi.synchrotron-soleil.fr) +- **Origin:** Synchrotron SOLEIL +- **Date:** April 2025 + +## Description + +```text +Sample that models multiple photon-matter interactions: +- absorption (photon excites an electron and creates a hole) +- fluorescence (excited electrons emit light while falling into lower states) +- Compton scattering (inelastic, incoherent) +- Rayleigh scattering (elastic, coherent) +- crystal diffraction (elastic, coherent) + +The 'material' specification is given as a chemical formulae, e.g. "LaB6". It +may also be given as a file name (CIF/LAU/LAZ/FullProf format) in which case +the formulae is guessed (but may be approximative), and the crystal +diffraction is computed, following same options as the PowderN +sample component. The fluorescence is handled for atoms from Z=5 to Z=90. + +By setting the 'order' to 1, the absorption along the scattered path is handled. +A higher 'order' will handle multiple scattering events, and final absorption. +For instance, a value order>=2 handles e.g. fluorescence iterative cascades +in the material. Leaving 'order=0' handles the single scattering only. + +The single crystal diffraction model is simplified wrt the Single_crystal +component. Use that latter with a Fluorescence in a GROUP for more complex features. + +Example: FluoCrystal(material="LaB6.cif", +xwidth=0.001,yheight=0.001,zdepth=0.0001, p_interact=0.99, mosaic=3) + +Sample shape: +Sample shape may be a cylinder, a sphere, a box or any other shape +box/plate: xwidth x yheight x zdepth (thickness=0) +hollow box/plate:xwidth x yheight x zdepth and thickness>0 +cylinder: radius x yheight (thickness=0) +hollow cylinder: radius x yheight and thickness>0 +sphere: radius (yheight=0 thickness=0) +hollow sphere: radius and thickness>0 (yheight=0) +any shape: geometry=OFF file + +The complex geometry option handles any closed non-convex polyhedra. +It computes the intersection points of the photon ray with the object +transparently, so that it can be used like a regular sample object. +It supports the OFF, PLY and NOFF file format but not COFF (colored faces). +Such files may be generated from XYZ data using: +qhull < coordinates.xyz Qx Qv Tv o > geomview.off +or +powercrust coordinates.xyz +and viewed with geomview or java -jar jroff.jar (see below). +The default size of the object depends of the OFF file data, but its +bounding box may be resized using xwidth,yheight and zdepth. + +Concentric components: +This component has the ability to contain other components when used in +hollow cylinder geometry (namely sample environment, e.g. cryostat and +furnace structure). Such component 'shells' should be split into input and +output side surrounding the 'inside' components. First part must then use +'concentric=1' flag to enter the inside part. The component itself must be +repeated to mark the end of the concentric zone. The number of concentric +shells and number of components inside is not limited. + +COMPONENT F_in = FluoCrystal(material="Al", concentric=1, ...) +AT (0,0,0) RELATIVE sample_position + +COMPONENT something_inside ... // e.g. the sample itself or other materials + +COMPONENT F_out = COPY(F_in)(concentric=0) +AT (0,0,0) RELATIVE sample_position + +Enhancing computation efficiency: +An important option to enhance statistics is to set 'p_interact' to, say, +30 percent (0.3) in order to force a fraction of the beam to scatter. This +will result on a larger number of scattered events, retaining intensity. + +In addition, it may be desirable to define a 'target' for the fluorescence +processes via e.g. the 'target_index' and the 'focus_xw / focus_yh' options. +This target should e.g. be the SDD area. + +The SPLIT feature is currently BROKEN with this component. Do not use it. + +If you get strange results, check the crystal mosaicity and delta(d)/d parameters, +as this component is not suited for ideal/perfect mosaic crystals. + +The fluorescence is computed via the XRayLib (apt install libxrl-dev) https://github.com/tschoonj/xraylib. +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| geometry | str | Name of an Object File Format (OFF) or PLY file for complex geometry. The OFF/PLY file may be generated from XYZ coordinates using qhull/powercrust. | 0 | +| radius | m | Outer radius of sample in (x,z) plane. cylinder/sphere. | 0 | +| thickness | m | Thickness of hollow sample Negative value extends the hollow volume outside of the box/cylinder. | 0 | +| xwidth | m | Width for a box sample shape. | 0 | +| yheight | m | Height of sample in vertical direction for box/cylinder shapes. | 0 | +| zdepth | m | Depth for a box sample shape. | 0 | +| concentric | 1 | Indicate that this component has a hollow geometry and may contain other components. It should then be duplicated after the inside part (only for box, cylinder, sphere). | 0 | +| material | str | A CIF/LAZ/LAU file e.g. "LaB6.cif" to handle diffraction or chemical formulae, e.g. "Pb2SnO4" (no diffraction). | "LaB6.cif" | +| packing_factor | 1 | How dense is the material compared to bulk 0-1. | 0 | +| density | g/cm^3 | Density of material. V_rho=density/weight/1e24*N_A at/Angs^3. | 0 | +| weight | g/mol | Atomic/molecular weight of material. | 0 | +| p_interact | 1 | Force a given fraction of the beam to scatter, keeping intensity right, to enhance small signals (-1 inactivate). | 0 | +| target_x | m | Position of target to focus at, along X (for fluorescence). | 0 | +| target_y | m | Position of target to focus at, along Y (for fluorescence). | 0 | +| target_z | m | Position of target to focus at, along Z (for fluorescence). | 0 | +| focus_r | m | Radius of disk containing target. Use 0 for full space (for fluorescence). | 0 | +| focus_xw | m | Horiz. dimension of a rectangular area (for fluorescence). | 0 | +| focus_yh | m | Vert. dimension of a rectangular area (for fluorescence). | 0 | +| focus_aw | deg | Horiz. angular dimension of a rectangular area (for fluorescence). | 0 | +| focus_ah | deg | Vert. angular dimension of a rectangular area (for fluorescence). | 0 | +| target_index | 1 | Relative index of component to focus at, e.g. next is +1 (for fluorescence). | 0 | +| flag_compton | 1 | When 0, the Compton scattering is ignored. | 1 | +| flag_rayleigh | 1 | When 0, the Rayleigh scattering is ignored. | 1 | +| flag_lorentzian | 1 | When 1, the fluorescence line shapes are assumed to be Lorentzian, else Gaussian. | 0 | +| flag_kissel | 1 | When 1 (slower), handle M-lines XRF from Kissel for Z>=52 Te (else only K and L-lines). | 0 | +| sx_refl | str | A CIF/LAZ/LAU reflection file as for PowderN. When not given, 'material' is used. Specify it when 'material' is a chemical formula. | "" | +| int flag_sx | | | 1 | +| delta_d_d | 1 | Lattice spacing variance, gaussian RMS (longitudinal mosaic) e.g. 1e-4 to 1e-3. | 1e-3 | +| int barns | | | 1 | +| recip_cell | 1 | Choice of direct/reciprocal (0/1) unit cell definition | 0 | +| ax | AA or AA^-1 | Coordinates of first (direct/recip) unit cell vector | 0 | +| ay | AA or AA^-1 | a on y axis | 0 | +| az | AA or AA^-1 | a on z axis | 0 | +| bx | AA or AA^-1 | Coordinates of second (direct/recip) unit cell vector | 0 | +| by | AA or AA^-1 | b on y axis | 0 | +| bz | AA or AA^-1 | b on z axis | 0 | +| cx | AA or AA^-1 | Coordinates of third (direct/recip) unit cell vector | 0 | +| cy | AA or AA^-1 | c on y axis | 0 | +| cz | AA or AA^-1 | c on z axis | 0 | +| aa | | | 0 | +| bb | | | 0 | +| cc | | | 0 | +| mosaic_AB | arc_minutes, arc_minutes,1, 1, 1, 1, 1, 1 | In Plane mosaic rotation and plane vectors (anisotropic), mosaic_A, mosaic_B, A_h,A_k,A_l, B_h,B_k,B_l. Puts the crystal in the in-plane mosaic state. Vectors A and B define plane in which the crystal roation is defined, and mosaic_A, mosaic_B, denotes the resp. mosaicities (gaussian RMS) with respect to the two reflections chosen by A and B (Miller indices). | {0,0, 0,0,0, 0,0,0} | +| mosaic | arc min | Crystal mosaic (isotropic), gaussian RMS. Puts the crystal in the isotropic mosaic model state, thus disregarding other mosaicity parameters, e.g. 1-10. | 3 | +| mosaic_a | arc min | Horizontal (rotation around lattice vector a) mosaic (anisotropic), gaussian RMS. Put the crystal in the anisotropic crystal vector state. I.e. model mosaicity through rotation around the crystal lattice vectors. Has precedence over in-plane mosaic model. | -1 | +| mosaic_b | arc min | Vertical (rotation around lattice vector b) mosaic (anisotropic), gaussian RMS. | -1 | +| mosaic_c | arc min | Out-of-plane (Rotation around lattice vector c) mosaic (anisotropic), gaussian RMS | -1 | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcxtrace-comps/samples/FluoCrystal.comp) for `FluoCrystal.comp`. +- The XRayLib https://github.com/tschoonj/xraylib http://dx.doi.org/10.1016/j.sab.2011.09.011 +- Fluorescence https://en.wikipedia.org/wiki/Fluorescence +- Rayleigh https://en.wikipedia.org/wiki/Rayleigh_scattering +- Compton https://en.wikipedia.org/wiki/Compton_scattering +- X-ray absorption edges http://skuld.bmsc.washington.edu/scatter/AS_periodic.html +- X-ray fluorescence spectra http://www.xrfresearch.com/xrf-spectra/ +- X-ray edges and fluo lines https://physics.nist.gov/PhysRefData/XrayTrans/Html/search.html + +--- + +*Generated on mcxtrace 3.99.99.* \ No newline at end of file diff --git a/mcxtrace-comps/samples/FluoPowder.md b/mcxtrace-comps/samples/FluoPowder.md new file mode 100644 index 000000000..30d04d2f7 --- /dev/null +++ b/mcxtrace-comps/samples/FluoPowder.md @@ -0,0 +1,151 @@ +# The `FluoPowder` Component + +*McXtrace: Release: McXtrace 3.5 + +Sample model handling absorption, fluorescence, Compton, Rayleigh scattering and powder diffraction.* + +## Identification + +- **Site:** +- **Author:** Emmanuel Farhi (emmanuel.farhi.synchrotron-soleil.fr) +- **Origin:** Synchrotron SOLEIL +- **Date:** April 2025 + +## Description + +```text +Sample that models multiple photon-matter interactions: +- absorption (photon excites an electron and creates a hole) +- fluorescence (excited electrons emit light while falling into lower states) +- Compton scattering (inelastic, incoherent) +- Rayleigh scattering (elastic, coherent) +- powder diffraction (elastic, coherent) + +The 'material' specification is given as a chemical formulae, e.g. "LaB6". It +may also be given as a file name (CIF/LAU/LAZ/FullProf format) in which case +the formulae is guessed (but may be approximative), and the powder +diffraction is computed, following same options as the PowderN +sample component. The fluorescence is handled for atoms from Z=5 to Z=90. + +By setting the 'order' to 1, the absorption along the scattered path is handled. +A higher 'order' will handle multiple scattering events, and final absorption. +For instance, a value order>=2 handles e.g. fluorescence iterative cascades +in the material. Leaving 'order=0' handles the single scattering only. + +Example: FluoPowder(material="LaB6.cif", +xwidth=0.001,yheight=0.001,zdepth=0.0001, p_interact=0.99, +target_index=1, focus_xw=0.0005, focus_yh=0.0005) + +Sample shape: +Sample shape may be a cylinder, a sphere, a box or any other shape +box/plate: xwidth x yheight x zdepth (thickness=0) +hollow box/plate:xwidth x yheight x zdepth and thickness>0 +cylinder: radius x yheight (thickness=0) +hollow cylinder: radius x yheight and thickness>0 +sphere: radius (yheight=0 thickness=0) +hollow sphere: radius and thickness>0 (yheight=0) +any shape: geometry=OFF file + +The complex geometry option handles any closed non-convex polyhedra. +It computes the intersection points of the photon ray with the object +transparently, so that it can be used like a regular sample object. +It supports the OFF, PLY and NOFF file format but not COFF (colored faces). +Such files may be generated from XYZ data using: +qhull < coordinates.xyz Qx Qv Tv o > geomview.off +or +powercrust coordinates.xyz +and viewed with geomview or java -jar jroff.jar (see below). +The default size of the object depends of the OFF file data, but its +bounding box may be resized using xwidth,yheight and zdepth. + +Concentric components: +This component has the ability to contain other components when used in +hollow cylinder geometry (namely sample environment, e.g. cryostat and +furnace structure). Such component 'shells' should be split into input and +output side surrounding the 'inside' components. First part must then use +'concentric=1' flag to enter the inside part. The component itself must be +repeated to mark the end of the concentric zone. The number of concentric +shells and number of components inside is not limited. + +COMPONENT F_in = FluoPowder(material="Al", concentric=1, ...) +AT (0,0,0) RELATIVE sample_position + +COMPONENT something_inside ... // e.g. the sample itself or other materials + +COMPONENT F_out = COPY(F_in)(concentric=0) +AT (0,0,0) RELATIVE sample_position + +Enhancing computation efficiency: +An important option to enhance statistics is to set 'p_interact' to, say, +30 percent (0.3) in order to force a fraction of the beam to scatter. This +will result on a larger number of scattered events, retaining intensity. + +In addition, it may be desirable to define a 'target' for the fluorescence +processes via e.g. the 'target_index' and the 'focus_xw / focus_yh' options. +This target should e.g. be the SDD area. +The powder scattering can be focused along an horizontal tore via the +'d_phi' and 'tth_sign' options. To get a vertical tore, rotate +the sample by 90 deg around Z. + +This sample component can advantageously benefit from the SPLIT feature, e.g. +SPLIT COMPONENT sample = FluoPowder(...) + +The fluorescence is computed via the XRayLib (apt install libxrl-dev) https://github.com/tschoonj/xraylib. +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| geometry | str | Name of an Object File Format (OFF) or PLY file for complex geometry. The OFF/PLY file may be generated from XYZ coordinates using qhull/powercrust. | 0 | +| radius | m | Outer radius of sample in (x,z) plane. cylinder/sphere. | 0 | +| thickness | m | Thickness of hollow sample Negative value extends the hollow volume outside of the box/cylinder. | 0 | +| xwidth | m | Width for a box sample shape. | 0 | +| yheight | m | Height of sample in vertical direction for box/cylinder shapes. | 0 | +| zdepth | m | Depth for a box sample shape. | 0 | +| concentric | 1 | Indicate that this component has a hollow geometry and may contain other components. It should then be duplicated after the inside part (only for box, cylinder, sphere). | 0 | +| material | str | A CIF/LAZ/LAU file e.g. "LaB6.cif" to handle diffraction or chemical formulae, e.g. "Pb2SnO4" (no diffraction). | "LaB6.cif" | +| packing_factor | 1 | How dense is the material compared to bulk 0-1. | 0 | +| density | g/cm^3 | Density of material. V_rho=density/weight/1e24*N_A at/Angs^3. | 0 | +| weight | g/mol | Atomic/molecular weight of material. | 0 | +| p_interact | 1 | Force a given fraction of the beam to scatter, keeping intensity right, to enhance small signals (-1 inactivate). | 0 | +| target_x | m | Position of target to focus at, along X (for fluorescence). | 0 | +| target_y | m | Position of target to focus at, along Y (for fluorescence). | 0 | +| target_z | m | Position of target to focus at, along Z (for fluorescence). | 0 | +| focus_r | m | Radius of disk containing target. Use 0 for full space (for fluorescence). | 0 | +| focus_xw | m | Horiz. dimension of a rectangular area (for fluorescence). | 0 | +| focus_yh | m | Vert. dimension of a rectangular area (for fluorescence). | 0 | +| focus_aw | deg | Horiz. angular dimension of a rectangular area (for fluorescence). | 0 | +| focus_ah | deg | Vert. angular dimension of a rectangular area (for fluorescence). | 0 | +| target_index | 1 | Relative index of component to focus at, e.g. next is +1 (for fluorescence). | 0 | +| flag_compton | 1 | When 0, the Compton scattering is ignored. | 1 | +| flag_rayleigh | 1 | When 0, the Rayleigh scattering is ignored. | 1 | +| flag_lorentzian | 1 | When 1, the fluorescence line shapes are assumed to be Lorentzian, else Gaussian. | 0 | +| flag_powder | 1 | When 0, the powder diffraction is ignored. | 1 | +| flag_kissel | 1 | When 1 (slower), handle M-lines XRF from Kissel for Z>=52 Te (else only K and L-lines). | 0 | +| powder_refl | str | A CIF/LAZ/LAU reflection file as for PowderN. When not given, 'material' is used. Specify it when 'material' is a chemical formula. | "" | +| powder_format | {} | List of structure file column indexes. See the PowderN component. | {0,0,0,0,0,0,0,0} | +| Vc | AA^3 | Volume of unit cell=nb atoms per cell/density of atoms. | 0 | +| delta_d_d | AA | Global relative difraction Delta_d/d spreading when the 'w' column is not available, e.g. 1e-4 to 1e-3. Use 0 if ideal. | 0 | +| DW | 1 | Global difraction Debye-Waller factor when the 'DW' column is not available. Use 1 if included in F2. | 0 | +| d_phi | deg | Angle corresponding to the difraction vertical angular range to focus to, e.g. detector height. 0 for no focusing. You may as well define focus_ah or focus_yh and target. | 0 | +| nb_atoms | 1 | Number of sub-unit per unit cell, that is ratio of sigma for chemical formula to sigma per unit cell. | 1 | +| barns | 1 | Flag to indicate if \|F\|^2 from 'material' is in barns or fm^2, (barns=1 for laz/cif, barns=0 for lau type files). | 1 | +| tth_sign | 1 | Sign of the diffraction angle. If 0, the sign is chosen randomly (left and right). | 0 | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcxtrace-comps/samples/FluoPowder.comp) for `FluoPowder.comp`. +- The XRayLib https://github.com/tschoonj/xraylib http://dx.doi.org/10.1016/j.sab.2011.09.011 +- Fluorescence https://en.wikipedia.org/wiki/Fluorescence +- Rayleigh https://en.wikipedia.org/wiki/Rayleigh_scattering +- Compton https://en.wikipedia.org/wiki/Compton_scattering +- X-ray absorption edges http://skuld.bmsc.washington.edu/scatter/AS_periodic.html +- X-ray fluorescence spectra http://www.xrfresearch.com/xrf-spectra/ +- X-ray edges and fluo lines https://physics.nist.gov/PhysRefData/XrayTrans/Html/search.html + +--- + +*Generated on mcxtrace 3.99.99.* \ No newline at end of file diff --git a/mcxtrace-comps/samples/Fluorescence.md b/mcxtrace-comps/samples/Fluorescence.md new file mode 100644 index 000000000..687b937c9 --- /dev/null +++ b/mcxtrace-comps/samples/Fluorescence.md @@ -0,0 +1,139 @@ +# The `Fluorescence` Component + +*McXtrace: Sample model handling absorption, fluorescence, Compton and Rayleigh scattering.* + +## Identification + +- **Site:** +- **Author:** E. Farhi +- **Origin:** Synchrotron SOLEIL +- **Date:** March 2022 + +## Description + +```text +Sample that models many photon-matter interactions: +- absorption (photon excites an electron and creates a hole) +- fluorescence (excited electrons emit light while falling into lower states) +- Compton scattering (inelastic, transfer some energy to an electron, incoherent) +- Rayleigh scattering (elastic, dipolar radiation of excitated electrons, coherent) + +Use the FluoPowder sample component to properly handle powder diffraction with fluorescence. + +The 'material' specification is given as a chemical formulae, e.g. "LaB6". It +may also be given as a file name (CIF/LAU/LAZ/FullProf format) in which case +the formulae is guessed (but may be approximative). Atoms from Z=5 to Z=90 are +handled. + +By setting the 'order' to 1, the absorption along the scattered path is handled. +A higher 'order' will handle multiple scattering events, and final absorption. +For instance, a value order>=2 handles e.g. fluorescence iterative cascades +in the material. Leaving 'order=0' handles the single scattering only. + +Example: Fluorescence(material="LaB6", +xwidth=0.001,yheight=0.001,zdepth=0.0001, p_interact=0.99, +target_index=1, focus_xw=0.0005, focus_yh=0.0005) + +Sample shape: +Sample shape may be a cylinder, a sphere, a box or any other shape +box/plate: xwidth x yheight x zdepth (thickness=0) +hollow box/plate:xwidth x yheight x zdepth and thickness>0 +cylinder: radius x yheight (thickness=0) +hollow cylinder: radius x yheight and thickness>0 +sphere: radius (yheight=0 thickness=0) +hollow sphere: radius and thickness>0 (yheight=0) +any shape: geometry=OFF file + +The complex geometry option handles any closed non-convex polyhedra. +It computes the intersection points of the photon ray with the object +transparently, so that it can be used like a regular sample object. +It supports the OFF, PLY and NOFF file format but not COFF (colored faces). +Such files may be generated from XYZ data using: +qhull < coordinates.xyz Qx Qv Tv o > geomview.off +or +powercrust coordinates.xyz +and viewed with geomview or java -jar jroff.jar (see below). +The default size of the object depends of the OFF file data, but its +bounding box may be resized using xwidth,yheight and zdepth. + +Concentric components: +This component has the ability to contain other components when used in +hollow cylinder geometry (namely sample environment, e.g. cryostat and +furnace structure). Such component 'shells' should be split into input and +output side surrounding the 'inside' components. First part must then use +'concentric=1' flag to enter the inside part. The component itself must be +repeated to mark the end of the concentric zone. The number of concentric +shells and number of components inside is not limited. + +COMPONENT F_in = Fluorescence(material="Al", concentric=1, ...) +AT (0,0,0) RELATIVE sample_position + +COMPONENT something_inside ... // e.g. the sample itself or other materials + +COMPONENT F_out = COPY(F_in)(concentric=0) +AT (0,0,0) RELATIVE sample_position + +Enhancing computation efficiency: +* An important option to enhance statistics is to set 'p_interact' to, say, +30 percent (0.3) in order to force a fraction of the beam to scatter. This +will result on a larger number of scattered events, retaining intensity. + +In addition, it may be desirable to define a 'target' for the fluorescence +processes via e.g. the 'target_index' and the 'focus_xw / focus_yh' options. +This target should e.g. be the SDD area. + +This sample component can advantageously benefit from the SPLIT feature, e.g. +SPLIT COMPONENT sample = Fluorescence(...) + +The computation is made via the XRayLib (apt install libxrl-dev) https://github.com/tschoonj/xraylib. +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| geometry | str | Name of an Object File Format (OFF) or PLY file for complex geometry. The OFF/PLY file may be generated from XYZ coordinates using qhull/powercrust. | 0 | +| radius | m | Outer radius of sample in (x,z) plane. cylinder/sphere. | 0 | +| thickness | m | Thickness of hollow sample Negative value extends the hollow volume outside of the box/cylinder. | 0 | +| xwidth | m | Width for a box sample shape. | 0 | +| yheight | m | Height of sample in vertical direction for box/cylinder shapes. | 0 | +| zdepth | m | Depth for a box sample shape. | 0 | +| concentric | 1 | Indicate that this component has a hollow geometry and may contain other components. It should then be duplicated after the inside part (only for box, cylinder, sphere). | 0 | +| material | str | Chemical formulae, e.g. "LaB6", "Pb2SnO4". If may also be a CIF/LAZ/LAU file. | "LaB6" | +| packing_factor | 1 | How dense is the material compared to bulk 0-1. | 0 | +| rho | AA-3 | Density of scattering elements (nb atoms/unit cell V_0). | 0 | +| density | g/cm^3 | Density of material. V_rho=density/weight/1e24*N_A. | 0 | +| weight | g/mol | Atomic/molecular weight of material. | 0 | +| p_interact | 1 | Force a given fraction of the beam to scatter, keeping intensity right, to enhance small signals (-1 inactivate). | 0 | +| target_x | m | Position of target to focus at, along X. | 0 | +| target_y | m | Position of target to focus at, along Y. | 0 | +| target_z | m | Position of target to focus at, along Z. | 0 | +| focus_r | m | Radius of disk containing target. Use 0 for full space. | 0 | +| focus_xw | m | Horiz. dimension of a rectangular area. | 0 | +| focus_yh | m | Vert. dimension of a rectangular area. | 0 | +| focus_aw | deg | Horiz. angular dimension of a rectangular area. | 0 | +| focus_ah | deg | Vert. angular dimension of a rectangular area. | 0 | +| target_index | 1 | Relative index of component to focus at, e.g. next is +1. | 0 | +| flag_compton | 1 | When 0, the Compton scattering is ignored. | 1 | +| flag_rayleigh | 1 | When 0, the Rayleigh scattering is ignored. | 1 | +| flag_lorentzian | 1 | When 1, the line shapes are assumed to be Lorentzian, else Gaussian. | 0 | +| flag_kissel | 1 | When 1 (slower), handle M-lines XRF from Kissel for Z>=52 Te (else only K and L-lines). | 0 | +| flag_low_z | 1 | When 1, enhances low concentration atoms, else uses cross-sections weighting. | 0 | +| order | 1 | Limit multiple fluorescence up to given order. Last iteration is absorption only. | 1 | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcxtrace-comps/samples/Fluorescence.comp) for `Fluorescence.comp`. +- The XRayLib https://github.com/tschoonj/xraylib http://dx.doi.org/10.1016/j.sab.2011.09.011 +- Fluorescence https://en.wikipedia.org/wiki/Fluorescence +- Rayleigh https://en.wikipedia.org/wiki/Rayleigh_scattering +- Compton https://en.wikipedia.org/wiki/Compton_scattering +- X-ray absorption edges http://skuld.bmsc.washington.edu/scatter/AS_periodic.html +- X-ray fluorescence spectra http://www.xrfresearch.com/xrf-spectra/ +- X-ray edges and fluo lines https://physics.nist.gov/PhysRefData/XrayTrans/Html/search.html + +--- + +*Generated on mcxtrace 3.99.99.* \ No newline at end of file diff --git a/mcxtrace-comps/samples/Isotropic_Sqw.md b/mcxtrace-comps/samples/Isotropic_Sqw.md new file mode 100644 index 000000000..da3860ba9 --- /dev/null +++ b/mcxtrace-comps/samples/Isotropic_Sqw.md @@ -0,0 +1,207 @@ +# The `Isotropic_Sqw` Component + +*McXtrace: Isotropic sample handling multiple scattering and absorption for a general +S(q,w) (coherent)* + +## Identification + +- **Site:** +- **Author:** E. Farhi, V. Hugouvieux +- **Origin:** Synchrotron SOLEIL +- **Date:** March 2022 + +## Description + +```text +An isotropic sample handling multiple scattering and including as input the +dynamic structure factor of the chosen sample (e.g. from Molecular +Dynamics). Handles elastic/inelastic, coherent scattering - +depending on the input S(q,w) - with multiple scattering and absorption. +Only the norm of q is handled (not the vector), and thus suitable for +liquids, gazes, amorphous and powder samples. + +The implementation will automatically nornalise S(q,w) so that S(q) -> 1 at +large q (parameter norm=-1). Alternatively, the S(q,w) data will be multiplied +by 'norm' for positive values. Use norm=0 or 1 to use the raw data as input. + +The material temperature can be defined in the S(q,w) data files (see below) +or set manually as parameter T. Setting T=-1 disables detailed balance. +Setting T=-2 attempts to guess the temperature from the input S(q,w) data +which must then be non-classical and extend on both energy sides (+/-). +To use the S(q,w) data as is, without temperature effect, set T=-1 and norm=1. + +Both non symmetric (quantum) and classical S(q,w) data sets can be given by mean +of the 'classical' parameter (see below). + +Additionally, for single order scattering (order=1), you may restrict the +vertical spreading of the scattering area using d_phi parameter. + +An important option to enhance statistics is to set 'p_interact' to, say, +30 percent (0.3) in order to force a fraction of the beam to scatter. This +will result on a larger number of scattered events, retaining intensity. + +If you use this component and produce valuable scientific results, please +cite authors with references bellow (in Links). +E. Farhi et al, J Comp Phys 228 (2009) 5251 + +Sample shape: +Sample shape may be a cylinder, a sphere, a box or any other shape +box/plate: xwidth x yheight x zdepth (thickness=0) +hollow box/plate:xwidth x yheight x zdepth and thickness>0 +cylinder: radius x yheight (thickness=0) +hollow cylinder: radius x yheight and thickness>0 +sphere: radius (yheight=0 thickness=0) +hollow sphere: radius and thickness>0 (yheight=0) +any shape: geometry=OFF file + +The complex geometry option handles any closed non-convex polyhedra. +It computes the intersection points of the photon ray with the object +transparently, so that it can be used like a regular sample object. +It supports the OFF, PLY and NOFF file format but not COFF (colored faces). +Such files may be generated from XYZ data using: +qhull < coordinates.xyz Qx Qv Tv o > geomview.off +or +powercrust coordinates.xyz +and viewed with geomview or java -jar jroff.jar (see below). +The default size of the object depends of the OFF file data, but its +bounding box may be resized using xwidth,yheight and zdepth. + +Concentric components: +This component has the ability to contain other components when used in +hollow cylinder geometry (namely sample environment, e.g. cryostat and +furnace structure). Such component 'shells' should be split into input and +output side surrounding the 'inside' components. First part must then use +'concentric=1' flag to enter the inside part. The component itself must be +repeated to mark the end of the concentric zone. The number of concentric +shells and number of components inside is not limited. + +COMPONENT S_in = Isotropic_Sqw(Sqw_coh="Al.laz", concentric=1, ...) +AT (0,0,0) RELATIVE sample_position + +COMPONENT something_inside ... // e.g. the sample itself or other materials + +COMPONENT S_out = COPY(S_in)(concentric=0) +AT (0,0,0) RELATIVE sample_position + +Sqw file format: +File format for S(Q,w) (coherent) should contain 3 numerical +blocks, defining q axis values (vector), then energy axis values (vector), +then a matrix with one line per q axis value, containing Sqw values for +each energy axis value. Comments (starting with '#') and non numerical lines +are ignored and used to separate blocks. Sampling must be regular. +Some parameters can be specified in comment lines, namely (00 is a numerical value): + +# sigma_coh 00 coherent scattering cross section in [barn], e.g. 0.66524*f +# Temperature 00 in [K] +# V_rho 00 atom density per Angs^3 +# density 00 in [g/cm^3] +# weight 00 in [g/mol] +# classical 00 [0=contains Bose factor (measurement) ; 1=classical symmetric] + +Example: +# q axis values +# vector of m values in Angstroem-1 +0.001000 .... 3.591000 +# w axis values +# vector of n values in meV +0.001391 ... 1.681391 +# sqw values (one line per q axis value) +# matrix of S(q,w) values (m rows x n values), one line per q value, +9.721422 10.599145 ... 0.000000 +10.054191 11.025244 ... 0.000000 +... +0.000000 ... 3.860253 + +See for instance file He4_liq_coh.sqw. Such files may be obtained from e.g. INX, +Nathan, Lamp and IDA softwares, as well as Molecular Dynamics (nMoldyn). +When the provided S(q,w) data is obtained from the classical correlation function +G(r,t), which is real and symmetric in time, the 'classical=1' parameter +should be set in order to multiply the file data with exp(hw/2kT). Otherwise, +the S(q,w) is NOT symmetrised (classical). If the S(q,w) data set includes both +negative and positive energy values, setting 'classical=-1' will attempt to +guess what type of S(q,w) it is. The temperature can also be determined this way. +In case you do not know if the data is classical or quantum, assume it is usually classical +at high temperatures, and quantum otherwise (T < typical mode excitations). +The positive energy values correspond to Stokes processes, i.e. material gains +energy, and photons loose energy. The energy range is symmetrized to allow up +and down scattering, taking into account detailed balance exp(-hw/2kT). + +You may also generate such S(q,w) 2D files using iFit + +Powder file format: +Files for coherent elastic powder scattering may also be used. +Format specification follows the same principle as in the PowderN +component, with parameters: + +powder_format= +Crystallographica: { 4,5,7,0,0,0,0, 0,0 } +Fullprof: { 4,0,8,0,0,5,0, 0,0 } +Undefined: { 0,0,0,0,0,0,0, 0,0 } +Lazy: {17,6,0,0,0,0,0,13,0 } +qSq: {-1,0,0,0,0,0,1, 0,0 } // special case for [q,Sq] table +or: {j,d,F2,DW,Delta_d/d,1/2d,q,F,strain} + +or column indexes (starting from 1) given as comments in the file header +(e.g. '#column_j 4'). Refer to the PowderN component for more details. +Delta_d/d and Debye-Waller factor may be specified for all lines with the +'powder_Dd' and 'powder_DW' parameters. +The reflection list should be ordered by decreasing d-spacing values. + +Additionally a special [q,Sq] format is also defined with: +powder_format=qSq +for which column 1 is 'q' and column 2 is 'S(q)'. + +Examples: +Isotropic_Sqw(radius=0.0005, yheight=0.001, Sqw_coh="Rb_liq_coh.sqw",verbose=3, p_interact=0.95) + +2- powder sample +Isotropic_Sqw(..., Sqw_coh="Al.laz") + +%BUGS: +When used in concentric mode, multiple bouncing scattering +(traversing the hollow part) is not taken into account. +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| powder_format | no quotes | name or definition of column indexes in file | {0,0,0,0,0,0,0,0,0} | +| Sqw_coh | str | Name of the file containing the values of Q, w and S(Q,w) Coherent part; Q in Angs-1, E in meV, S(q,w) in meV-1. Use 0, NULL or "" to disable. | 0 | +| geometry | str | Name of an Object File Format (OFF) or PLY file for complex geometry. The OFF/PLY file may be generated from XYZ coordinates using qhull/powercrust | 0 | +| material | str | Absorption file. | "NULL" | +| radius | m | Outer radius of sample in (x,z) plane. cylinder/sphere. | 0 | +| thickness | m | Thickness of hollow sample Negative value extends the hollow volume outside of the box/cylinder. | 0 | +| xwidth | m | width for a box sample shape | 0 | +| yheight | m | Height of sample in vertical direction for box/cylinder shapes | 0 | +| zdepth | m | depth for a box sample shape | 0 | +| threshold | 1 | Value under which S(Q,w) is not accounted for. to set according to the S(Q,w) values, i.e. not too low. | 1e-20 | +| order | 1 | Limit multiple scattering up to given order 0:all (default), 1:single, 2:double, ... | 0 | +| T | K | Temperature of sample, detailed balance. Use T=-1 to disable it, and T=-2 to guess it from non-classical S(q,w) input. | 0 | +| verbose | 1 | Verbosity level (0:silent, 1:normal, 2:verbose, 3:debug). A verbosity>1 also computes dispersions and S(q,w) analysis. | 1 | +| d_phi | deg | scattering vertical angular spreading (usually the height of the next component/detector). Use 0 for full space. This is only relevant for single scattering (order=1). | 0 | +| concentric | 1 | Indicate that this component has a hollow geometry and may contain other components. It should then be duplicated after the inside part (only for box, cylinder, sphere) [1] | 0 | +| rho | AA-3 | Density of scattering elements (nb atoms/unit cell V_0). | 0 | +| sigma_coh | barns | Thomson cross-section of the material. For an atom, this is f*0.665 barns, where f is the number of free electrons, f -> atomic number Z. | 0.66524 | +| classical | 1 | Assumes the S(q,w) data from the files is a classical S(q,w), and multiply that data by exp(hw/2kT) on up/down energy sides. Use 0 when obtained from raw experiments, 1 from molecular dynamics. Use -1 to guess from a data set including both energy sides. | -1 | +| powder_Dd | 1 | global Delta_d/d spreading, or 0 if ideal. | 0 | +| powder_DW | 1 | global Debey-Waller factor, if not in \|F2\| or 1. | 0 | +| powder_Vc | AA^3 | volume of the unit cell | 0 | +| density | g/cm^3 | density of material. V_rho=density/weight/1e24*N_A | 0 | +| weight | g/mol | atomic/molecular weight of material | 0 | +| p_interact | 1 | Force a given fraction of the beam to scatter, keeping intensity right, to enhance small signals (-1 inactivate). | -1 | +| norm | 1 | Normalize S(q,w) when -1 (default). Use raw data when 1, multiplier for S(q,w) when norm>0. | -1 | +| powder_barns | 1 | 0 when \|F2\| data in powder file are fm^2, 1 when in barns (barns=1 for laz, barns=0 for lau type files). | 1 | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcxtrace-comps/samples/Isotropic_Sqw.comp) for `Isotropic_Sqw.comp`. +- Atomic form factors f http://lampx.tugraz.at/~hadley/ss1/crystaldiffraction/atomicformfactors/formfactors.php +- E. Farhi, V. Hugouvieux, M.R. Johnson, and W. Kob, Journal of Computational Physics 228 (2009) 5251-5261 "Virtual experiments: Combining realistic neutron scattering instrument and sample simulations" +- H. Schober, Collection SFN 10 (2010) 159-336 + +--- + +*Generated on mcxtrace 3.99.99.* \ No newline at end of file diff --git a/mcxtrace-comps/samples/Molecule_2state.md b/mcxtrace-comps/samples/Molecule_2state.md new file mode 100644 index 000000000..2e24a5ede --- /dev/null +++ b/mcxtrace-comps/samples/Molecule_2state.md @@ -0,0 +1,65 @@ +# The `Molecule_2state` Component + +*McXtrace: Disordered optical-excitable molecule sample.* + +## Identification + +- **Site:** +- **Author:** Erik B Knudsen +- **Origin:** DTU Physics +- **Date:** October 2012 + +## Description + +```text +A sample model for pump probe experiments which models disordered molecules in a volume (rectangular, +cylindrical, or spherical). Molecules can be in one of two states (0 and 1). +Scattering is either specified through F vs. q scattering curves or as a set of atom positions from which +F vs. q is computed. +At t=-delta_t, a fraction of the molecules are put in state 1, from which they decay exponentially, +with time constant t_relax, into state 0. For t<-delta_t +all of the molecules are in the state specified by initial_state. +To improve statistics, scattering may be limited to a "forward" cone with opening angle in [psimin, psimax]. +Furthermore, scattering may be restricted to the azimuthal segment between [etamin,etamax]. + +Example: Molecule_2state( +nq=512,state_0_file="Fe_bpy_GS_DFT.txt",state_1_file="Fe_bpy_ES_DFT.txt",radius=0.01, +psimin=0, psimax=15*DEG2RAD, etamin=-1*DEG2RAD,etamax=1*DEG2RAD, +t_relax=600e-12, delta_t=100e-9, excitation_yield=0.2) +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| delta_t | s | Delay between the exciting event t=0. delay is negative, i.e. delta_t>0 means the exciting event happens before t=0. | 100e-9 | +| excitation_yield | 1 | Mean fraction of molecules that get excited. | 0.2 | +| t_relax | s | Mean relaxation time (into state 0) of excited molecules. | 100e-9 | +| initial_state | 0/1 | Which state is Molecule_2state in for tSample shape: +Sample shape may be a cylinder, a sphere, a box or any other shape. +box/plate: xwidth x yheight x zdepth (thickness=0) +hollow box/plate:xwidth x yheight x zdepth and thickness>0 +cylinder: radius x yheight (thickness=0) +hollow cylinder: radius x yheight and thickness>0 +sphere: radius (yheight=0 thickness=0) +hollow sphere: radius and thickness>0 (yheight=0) +any shape: geometry=OFF_file + +The complex geometry option handles any closed non-convex polyhedra. +It computes the intersection points of the xray with the object +transparently, so that it can be used like a regular sample object. +It supports the PLY, OFF and NOFF file format but not COFF (colored faces). +Such files may be generated from XYZ data using: +qhull < coordinates.xyz Qx Qv Tv o > geomview.off +or +powercrust coordinates.xyz +and viewed with geomview or java -jar jroff.jar (see below). +The default size of the object depends of the OFF file data, but its +bounding box may be resized using xwidth,yheight and zdepth. + +If you use this component and produce valuable scientific results, please +cite authors with references bellow (in Links). + +Example: PowderN(reflections = "c60.lau", d_phi = 15 , radius = 0.01, +yheight = 0.05, Vc = 1076.89, delta_d_d=0, DW=1) + +Powder definition file format +Powder structure is specified with an ascii data file 'reflections'. +The powder data are free-text column based files. +The reflection list should be ordered by decreasing d-spacing values. +... d ... F2 +Lines begining by '#' are read as comments (ignored) but they may contain +the following keywords (in the header): +#Vc +#Debye_Waller +#delta_d_d/d +These values are not read if entered as component parameters (Vc=...) + +The signification of the columns in the numerical block may be +set using the 'format' parameter, by defining signification of the +columns as a vector of indexes in the order +format={j,d,F2,DW,delta_d_d/d,1/2d,q,F} +Signification of the symbols is given below. Indices start at 1. +Indices with zero means that the column are not present, so that: +Crystallographica={ 4,5,7,0,0,0,0,0 } +Fullprof ={ 4,0,8,0,0,5,0,0 } +Lazy ={17,6,0,0,0,0,0,13} + +At last, the format may be overridden by direct definition of the +column indexes in the file itself by using the following keywords +in the header (e.g. '#column_j 4'): +#column_j +#column_d +#column_F2 +#column_F +#column_DW +#column_Dd +#column_inv2d +#column_q + +Last, CIF, FullProf and ShelX files can be read, and converted to F2(hkl) lists +if 'cif2hkl' is installed. The CIF2HKL env variable can be used to point to a +proper executable, else the McCode, then the system installed versions are used. + +Concentricity + +PowderN assumes 'concentric' shape, i.e. can contain other components inside its +optional inner hollow. Example, Sample in Al cryostat: + + +COMPONENT Cryo = PowderN(reflections="Al.laz", radius = 0.01, thickness = 0.001, +concentric = 1, p_interact=0.1) +AT (0,0,0) RELATIVE Somewhere + +COMPONENT Sample = some_other_component(with geometry FULLY enclosed in the hollow) +AT (0,0,0) RELATIVE Somewhere + +COMPONENT Cryo2 = COPY(Cryo)(concentric = 0) +AT (0,0,0) RELATIVE Somewhere + + +(The second instance of the cryostat component can also be written out completely +using PowderN(...). In both cases, this second instance needs concentric = 0.) +The concentric arrangment can not be used with OFF geometry specification. + +This sample component can advantageously benefit from the SPLIT feature, e.g. +SPLIT COMPONENT pow = PowderN(...) +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| reflections | str | Input file for reflections (LAZ LAU CIF, FullProf, ShelX). Use only incoherent scattering if NULL or "". | "NULL" | +| material | Be.txt | File where the material parameters for the absorption may be found. Format is similar to what may be found off the NIST website. | "NULL" | +| geometry | str | Name of an Object File Format (OFF) or PLY file for complex geometry. The OFF/PLY file may be generated from XYZ coordinates using qhull/powercrust. | "NULL" | +| format | {} | Name of the format, or list of column indexes (see Description). N.b. no quotes! | {0,0,0,0,0,0,0,0} | +| mat_format | {} | Format of the asorption parameter file. | {0,0,0,0,0} | +| radius | m | Outer radius of sample in (x,z) plane. | 0 | +| yheight | m | Height of sample y direction. | 0 | +| xwidth | m | Horiz. dimension of sample, as a width. | 0 | +| zdepth | m | Depth of box sample. | 0 | +| thickness | m | Thickness of hollow sample. Negative value extends the hollow volume outside of the box/cylinder. | 0 | +| pack | 1 | Packing factor | 1 | +| Vc | AA^3 | Volume of unit cell=nb atoms per cell/density of atoms. | 0 | +| delta_d_d | 1 | Global relative Delta_d/d spreading when the 'w' column is not available. Use 0 if ideal. | 0 | +| p_inc | 1 | Fraction of incoherently scattered rays. | 0.1 | +| p_transmit | 1 | Fraction of transmitted (only attenuated) rays. | 0.1 | +| DW | 1 | Global Debye-Waller factor when the 'DW' column is not available. Use 1 if included in F2. | 0 | +| nb_atoms | 1 | Number of sub-unit per unit cell, that is ratio of sigma for chemical formula to sigma per unit cell. | 1 | +| d_omega | deg | Horizontal focus range (only for incoherent scattering), 0 for no focusing. | 0 | +| d_phi | deg | Angle corresponding to the vertical angular range to focus to, e.g. detector height. 0 for no focusing. | 0 | +| tth_sign | 1 | Sign of the scattering angle. If 0, the sign is chosen randomly (left and right). ONLY functional in combination with d_phi and ONLY applies to bragg lines. | 0 | +| p_interact | 1 | Fraction of events interacting with sample, e.g. 1-p_transmit-p_inc. | 0 | +| concentric | 1 | Indicate that this component has a hollow geometry and may contain other components. It should then be duplicated after the inside part (only for box, cylinder, sphere). | 0 | +| density | g/cm^3 | Density of material. rho=density/weight/1e24*N_A. | 0 | +| weight | g/mol | Atomic/molecular weight of material. | 0 | +| barns | 1 | Flag to indicate if \|F\|^2 from 'reflections' is in barns or fm^2, (barns=1 for laz/cif, barns=0 for lau type files). | 1 | +| focus_flip | 1 | Controls the sense of d_phi. If 0 d_phi is measured against the xz-plane. If !=0 d_phi is measured against zy-plane. | 0 | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcxtrace-comps/samples/PowderN.comp) for `PowderN.comp`. +- See also: Single_crystal +- See ICSD Inorganic Crystal Structure Database +- Web Elements +- Fullprof powder refinement +- Crystallographica software (free license) +- Geomview and Object File Format (OFF) +- Java version of Geomview (display only) jroff.jar +- qhull +- powercrust +- cif2hkl https://gitlab.com/soleil-data-treatment/soleil-software-projects/cif2hkl +- material datafile obtained from http://physics.nist.gov/cgi-bin/ffast/ffast.pl + +--- + +*Generated on mcxtrace 3.99.99.* \ No newline at end of file diff --git a/mcxtrace-comps/samples/Saxs_spheres.md b/mcxtrace-comps/samples/Saxs_spheres.md new file mode 100644 index 000000000..402c4d726 --- /dev/null +++ b/mcxtrace-comps/samples/Saxs_spheres.md @@ -0,0 +1,56 @@ +# The `Saxs_spheres` Component + +*McXtrace: Release: McXtrace 1.1 + +Sample for Small Angle X-ray Scattering - hard spheres in thin solution, mono disperse.* + +## Identification + +- **Site:** +- **Author:** E. B. Knudsen, P. Willendrup, K. Lefmann, L. Arleth +- **Origin:** DTU Fysik +- **Date:** 28.10.2010 + +## Description + +```text +Sample for use in a SAXS instrument, models hard, monodisperse spheres in thin solution. +The shape of the sample may be a filled box with dimensions +xwidth, yheight, zdepth, a cylinder with dimensions radius and yheight, +a filled sphere with radius R. + +Example: Saxs_spheres(R = 20, Phi = 1e-3, Delta_rho = 0.6, sigma_abs = 50, xwidth=0.01, yheight=0.01, zdepth=0.005) +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| sphere_mtrl | str | Material datafile from which to find absorption. If none is given absorption is neglected. | "" | +| R | AA | Radius of scattering hard spheres | 100 | +| Phi | 1 | Particle volume fraction | 1e-3 | +| Delta_rho | fm/AA^3 | Excess scattering length density | 0.6 | +| xwidth | m | Horiz. dimension of sample, as a width | 0 | +| yheight | m | Vert . dimension of sample, as a height for cylinder/box | 0 | +| zdepth | m | Depth of sample | 0 | +| radius | m | Outer radius of sample in (x,z) plane for cylinder/sphere | 0 | +| target_x | m | Position of target to focus at, along X | 0 | +| target_y | m | Position of target to focus at, along Y | 0 | +| target_z | m | Position of target to focus at, along Z | 6 | +| target_index | 1 | Relative index of component to focus at, e.g. next is +1 | 0 | +| focus_xw | m | Horiz. dimension of a rectangular area | 0 | +| focus_yh | m | Vert. dimension of a rectangular area | 0 | +| focus_aw | deg | Horiz. angular dimension of a rectangular area | 0 | +| focus_ah | deg | Vert. angular dimension of a rectangular area | 0 | +| focus_r | m | Detector (disk-shaped) radius | 0 | +| mu_c | 5 | Column of the datafile which contains absorption coefficients. | 0 | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcxtrace-comps/samples/Saxs_spheres.comp) for `Saxs_spheres.comp`. + +--- + +*Generated on mcxtrace 3.99.99.* \ No newline at end of file diff --git a/mcxtrace-comps/samples/Single_crystal.md b/mcxtrace-comps/samples/Single_crystal.md new file mode 100644 index 000000000..78c18c1e9 --- /dev/null +++ b/mcxtrace-comps/samples/Single_crystal.md @@ -0,0 +1,216 @@ +# The `Single_crystal` Component + +*McXtrace: Mosaic single crystal with multiple scattering vectors, optimised for speed +with large crystals and many reflections.* + +## Identification + +- **Site:** +- **Author:** Kristian Nielsen +- **Origin:** Risoe +- **Date:** December 1999 + +## Description + +```text +Single crystal with mosaic. Delta-D/D option for finite-size effects. +Rectangular geometry. Multiple scattering and secondary extinction included. +The mosaic may EITHER be specified isotropic by setting the mosaic input +parameter, OR anisotropic by setting the mosaic_a, mosaic_b, and mosaic_c +parameters. +If you get strange results, check the mosaicity and delta(d)/d parameters, as this +component is not suited for ideal/perfect mosaic crystals. +The crystal lattice can be bent locally, keeping the external geometry unchanged. +Curvature is spherical along vertical and horizontal axes. + +Speed/stat optimisation using SPLIT +In order to dramatically improve the simulation efficiency, we recommend to +use a SPLIT keyword on this component (or prior to it), as well as to disable +the multiple scattering handling by setting order=1. This is especially powerful +for large reflection lists such as with macromolecular proteins. When an incoming +particle is identical to the preceeding, reciprocal space initialisation is +skipped, and a Monte Carlo choice is done on available reflections from the last +repciprocal space calculation! To assist the user in choosing a "relevant" value +of the SPLIT, a rolling average of the number of available reflections is +calculated and presented in the component output. + +Mosacitiy modes +The component features three independent ways of parametrising mosaicity: +a) The original algorithm where mosaicity is implemented by extending each +reflection by a Gaussian "cigar" in reciprocal space, characterised by +the parameters mosaic and delta_d_d. +(Also known as "isotropic mosaicity"). +b) A similar mode where mosaicities can be non-isotropic and given as the +parameters mosaic_a, mosaic_b and mosaic_c, around the unit cell axes. +(Also known as "anisotropic mosaicity"). +c) Given two "macroscopically"/experimentally measured width/mosaicities +of two independent reflections, parametrised by the list +mosaic_AB = {mos_a, mos_b, a_h, a_k, a_l, b_h, b_k, b_l}, a set of +microscopic mosaicities as in b) are estimated (internally) and applied. +(Also known as "phenomenological mosaicity"). + +Powder-mode +When the powder mode is used (powder=0-1), a randomised transformation +of the particle direction is made before and after scattering, thereby letting +the single crystal behave as a crystallite of either a powder (crystallite +orientation fully randomised). + +Curved crystal mode +The component features a method to curve the lattice planes slightly with respect +to the outer geometry of the crystal. The method is implemented as a transformation +on the particle direction vector, and should be used only in cases where: +a) The reflection lattice vector is ~ orthogonal to the crystal surface. +b) The modelled curvarture is "small" with respect to the crystal surface. + +Sample shape +Sample shape may be a cylinder, a sphere, a box or any other shape: +box/plate: xwidth x yheight x zdepth +cylinder: radius x yheight +sphere: radius (yheight=0) +any shape: geometry=OFF/PLY file + +The complex geometry option handles any closed non-convex polyhedra. +It computes the intersection points of the photon ray with the object +transparently, so that it can be used like a regular sample object. +It supports the PLY, OFF and NOFF file format but not COFF (colored faces). +Such files may be generated from XYZ data using: +qhull < coordinates.xyz Qx Qv Tv o > geomview.off +or +powercrust coordinates.xyz +and viewed with geomview or java -jar jroff.jar (see below). +The default size of the object depends on the OFF/PLY file data, but its +bounding box may be resized using xwidth,yheight and zdepth. + +Crystal definition file format +Crystal structure is specified with an ascii data file. Each line contains +4 or more numbers, separated by white spaces: + +h k l ... F2 + +The first three numbers are the (h,k,l) indices of the reciprocal lattice +point, and the 7-th number is the value of the structure factor |F|**2, in +barns. The rest of the numbers are not used; the file is in the format +output by the Crystallographica program. +The reflection list should be ordered by decreasing d-spacing values. +Lines begining by '#' are read as comments (ignored). Most sample parameters +may be defined from the data file header, following the same mechanism as +PowderN. + +Current data file header keywords include, for data format specification: +#column_h +#column_k +#column_l +#column_F2 +#column_F +and for material specification: +#sigma_inc +#Delta_d/d +#lattice_a +#lattice_b +#lattice_c +#lattice_aa +#lattice_bb +#lattice_cc + +Last, CIF, FullProf and ShelX files can be read, and converted to F2(hkl) lists +when 'cif2hkl' is installed. The CIF2HKL env variable can be used to point to a +proper executable, else the McCode or the system installed versions are used. + +Satellite Bragg peaks - surface crystal truncation rods (CTR) +It is known that scattering from a finite crystal introduces a broadening of +Bragg peaks, seen in surface diffraction at grazing angle [Robinson and Tweet, +Rep. Prog. Phys. 55 (1992) 599)]. The CTR is specified as two vectors, which +hold the squared Fourier transform of the crystal geometry, for instance: +bulk: Dirac peak (FT of infinity) +half-bulk: Dirac+1/k^2 (FT of half plane, k in rlu) +layer: sinc(PI*k*d)^2 (FT of a top-hat, thickness 'd') +These vectors are given as 'surf_k' [in 1/Angs] and 'surf_FT2', both of length +'surf_size'. The CTR is to be applied along vector 'surf_dir' which indicates +the surface normal {nx,ny,nz} in real space. When surf_size=-1, the component +sets the proper truncation function (only for thin box and disk shapes). +This feature is an approximation of the real surface scattering, and does not +handle complex geometries (clusters, wetting, multi-layers, ...). It may be +used as well to describe over-structure satellite peaks. + +Example: Single_crystal(xwidth=0.01, yheight=0.01, zdepth=0.01, mosaic = 5, +reflections="Si.lau") + +A diamond crystal plate, cut for (002) reflections +Single_crystal(xwidth = 0.002, yheight = 0.1, zdepth = 0.1, +mosaic = 5, delta_d_d=3e-4, reflections = "C-diamond.lau", +ax=0, ay=2.14, az=-1.24, +bx = 0, by = 0, bz = 2.47, +cx = 6.71, cy = 0, cz = 0) + +A adrenaline protein +Single_crystal(xwidth=0.005, yheight=0.005, zdepth=0.005, +mosaic = 5, reflections="adrenaline.lau") + +Also, always use a non-zero value of delta_d_d. + +This sample component can advantageously benefit from the SPLIT feature, e.g. +SPLIT COMPONENT sx = Single_crystal(...) +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| reflections | string | File name containing structure factors of reflections (LAZ LAU CIF, FullProf, ShelX). Use empty ("") or NULL for incoherent scattering only | 0 | +| geometry | str | Name of an Object File Format (OFF) or PLY file for complex geometry. The OFF/PLY file may be generated from XYZ coordinates using qhull/powercrust | 0 | +| mosaic_AB | arc_minutes, arc_minutes,1, 1, 1, 1, 1, 1 | In-plane mosaic rotation and plane vectors (anisotropic), mosaic_A, mosaic_B, A_h,A_k,A_l, B_h,B_k,B_l. Puts the crystal in the in-plane mosaic state. Vectors A and B define plane in which the crystal roation is defined, and mosaic_A, mosaic_B, denotes the resp. mosaicities (gaussian RMS) with respect to the two reflections chosen by A and B (Miller indices). | {0,0, 0,0,0, 0,0,0} | +| xwidth | m | Width of crystal | 0 | +| yheight | m | Height of crystal | 0 | +| zdepth | m | Depth of crystal (no extinction simulated) | 0 | +| radius | m | Outer radius of sample in (x,z) plane | 0 | +| delta_d_d | 1 | Lattice spacing variance, gaussian RMS (longitudinal mosaic) e.g. 1e-4 to 1e-3. | 1e-3 | +| mosaic | arc minutes | Crystal mosaic (isotropic), gaussian RMS. Puts the crystal in the isotropic mosaic model state, thus disregarding other mosaicity parameters, e.g. 1-10. | -1 | +| mosaic_a | arc minutes | Horizontal (rotation around lattice vector a) mosaic (anisotropic), gaussian RMS. Put the crystal in the anisotropic crystal vector state. i.e. model mosaicity through rotation around the crystal lattice vectors. Has precedence over in-plane mosaic model. | -1 | +| mosaic_b | arc minutes | Vertical (rotation around lattice vector b) mosaic (anisotropic), gaussian RMS. | -1 | +| mosaic_c | arc minutes | Out-of-plane (Rotation around lattice vector c) mosaic (anisotropic), gaussian RMS | -1 | +| recip_cell | 1 | Choice of direct/reciprocal (0/1) unit cell definition | 0 | +| barns | 1 | Flag to indicate if \|F\|^2 from 'reflections' is in barns or fm^2. barns=1 for laz/cif and isotropic constant elastic scattering (reflections=NULL), barns=0 for lau type files | 0 | +| ax | AA or AA^-1 | Coordinates of first (direct/recip) unit cell vector | 0 | +| ay | AA or AA^-1 | a on y axis | 0 | +| az | AA or AA^-1 | a on z axis | 0 | +| bx | AA or AA^-1 | Coordinates of second (direct/recip) unit cell vector | 0 | +| by | AA or AA^-1 | b on y axis | 0 | +| bz | AA or AA^-1 | b on z axis | 0 | +| cx | AA or AA^-1 | Coordinates of third (direct/recip) unit cell vector | 0 | +| cy | AA or AA^-1 | c on y axis | 0 | +| cz | AA or AA^-1 | c on z axis | 0 | +| p_transmit | 1 | Monte Carlo probability for photons to be transmitted without any scattering. Used to improve statistics from weak reflections | 0.001 | +| sigma_inc | barns | Incoherent scattering cross-section per unit cell (uniform). Fully isotropic and constant. Use -1 to inactivate | 0 | +| aa | deg | Unit cell angles alpha, beta and gamma. Then uses norms of vectors a,b and c as lattice parameters | 0 | +| bb | deg | Beta angle | 0 | +| cc | deg | Gamma angle | 0 | +| order | 1 | Limit multiple scattering up to given order (0: all, 1: first, 2: second, ...) | 1 | +| extra_order | 1 | When using order, allow additional multiple scattering without coherent scattering, sensible with very large unit cells (0: disable, 1: one extra, 2: two extra, ...) | 0 | +| RX | m | Radius of horizontal along X lattice curvature. flat for 0 | 0 | +| RY | m | Radius of vertical along Y lattice curvature. flat for 0 | 0 | +| powder | 1 | Flag to indicate powder mode, for simulation of Debye-Scherrer cones via random crystallite orientation. A powder texture can be approximated with powder within 0-1 | 0 | +| deltak | AA-1 | Equality-threshold for use in SPLIT settings. If difference between all ki_{x,y,z} are less than deltak from previous particle, the two are considered alike enough to jump directly to the MC choice between 'active' reflections | 1e-6 | +| material_datafile | Be.txt | File where the material parameters for the absorption may be found. Format is similar to what may be found off the NIST website. | "Si.txt" | +| surf_size | 1 | Length of the surf_k and surf_FT vectors. When set as -1, CTR is automatically set for the box/thin disk geometry. | 0 | +| surf_k | 1/Angs | Momentum 'k' distribution around 0 for the CTR, length 'surf_size'. | NULL | +| surf_FT2 | 1 | Intensity \|FT(real space)\|^2 distribution as CTR of a single Bragg peak, length 'surf_size'. | NULL | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcxtrace-comps/samples/Single_crystal.comp) for `Single_crystal.comp`. +- See ICSD Inorganic Crystal Structure Database +- Web Elements +- Fullprof powder refinement +- Crystallographica software +- Geomview and Object File Format (OFF) +- Java version of Geomview (display only) jroff.jar +- qhull +- powercrust +- material datafile obtained from http://physics.nist.gov/cgi-bin/ffast/ffast.pl +- cif2hkl https://gitlab.com/soleil-data-treatment/soleil-software-projects/cif2hkl + +--- + +*Generated on mcxtrace 3.99.99.* \ No newline at end of file diff --git a/mcxtrace-comps/sasmodels/SasView_adsorbed_layer.md b/mcxtrace-comps/sasmodels/SasView_adsorbed_layer.md new file mode 100644 index 000000000..8a092c7df --- /dev/null +++ b/mcxtrace-comps/sasmodels/SasView_adsorbed_layer.md @@ -0,0 +1,61 @@ +# The `SasView_adsorbed_layer` Component + +*McXtrace: SasView adsorbed_layer model component as sample description.* + +## Identification + +- **Site:** +- **Author:** Jose Robledo +- **Origin:** FZJ / DTU / ESS DMSC +- **Date:** + +## Description + +```text +SasView_adsorbed_layer component, generated from adsorbed_layer.c in sasmodels. + +Example: +SasView_adsorbed_layer(second_moment, adsorbed_amount, density_shell, radius, volfraction, sld_shell, sld_solvent, +model_scale=1.0, model_abs=0.0, xwidth=0.01, yheight=0.01, zdepth=0.005, R=0, +int target_index=1, target_x=0, target_y=0, target_z=1, +focus_xw=0.5, focus_yh=0.5, focus_aw=0, focus_ah=0, focus_r=0, +pd_radius=0.0) +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| second_moment | Ang | ([0.0, inf]) Second moment of polymer distribution. | 23.0 | +| adsorbed_amount | mg/m^2 | ([0.0, inf]) Adsorbed amount of polymer. | 1.9 | +| density_shell | g/cm^3 | ([0.0, inf]) Bulk density of polymer in the shell. | 0.7 | +| radius | Ang | ([0.0, inf]) Core particle radius. | 500.0 | +| volfraction | None | ([0.0, inf]) Core particle volume fraction. | 0.14 | +| sld_shell | 1e-6/Ang^2 | ([-inf, inf]) Polymer shell SLD. | 1.5 | +| sld_solvent | 1e-6/Ang^2 | ([-inf, inf]) Solvent SLD. | 6.3 | +| model_scale | | Global scale factor for scattering kernel. For systems without inter-particle interference, the form factors can be related to the scattering intensity by the particle volume fraction. | 1.0 | +| model_abs | | Absorption cross section density at 2200 m/s. | 0.0 | +| xwidth | m | ([-inf, inf]) Horiz. dimension of sample, as a width. | 0.01 | +| yheight | m | ([-inf, inf]) vert . dimension of sample, as a height for cylinder/box | 0.01 | +| zdepth | m | ([-inf, inf]) depth of sample | 0.005 | +| R | m | Outer radius of sample in (x,z) plane for cylinder/sphere. | 0 | +| target_x | m | relative focus target position. | 0 | +| target_y | m | relative focus target position. | 0 | +| target_z | m | relative focus target position. | 1 | +| target_index | | Relative index of component to focus at, e.g. next is +1. | 1 | +| focus_xw | m | horiz. dimension of a rectangular area. | 0.5 | +| focus_yh | m | , vert. dimension of a rectangular area. | 0.5 | +| focus_aw | deg | , horiz. angular dimension of a rectangular area. | 0 | +| focus_ah | deg | , vert. angular dimension of a rectangular area. | 0 | +| focus_r | m | case of circular focusing, focusing radius. | 0 | +| pd_radius | | (0,inf) defined as (dx/x), where x is de mean value and dx the standard devition of the variable | 0.0 | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcxtrace-comps/sasmodels/SasView_adsorbed_layer.comp) for `SasView_adsorbed_layer.comp`. + +--- + +*Generated on mcxtrace 3.99.99.* \ No newline at end of file diff --git a/mcxtrace-comps/sasmodels/SasView_barbell.md b/mcxtrace-comps/sasmodels/SasView_barbell.md new file mode 100644 index 000000000..3a23254aa --- /dev/null +++ b/mcxtrace-comps/sasmodels/SasView_barbell.md @@ -0,0 +1,61 @@ +# The `SasView_barbell` Component + +*McXtrace: SasView barbell model component as sample description.* + +## Identification + +- **Site:** +- **Author:** Jose Robledo +- **Origin:** FZJ / DTU / ESS DMSC +- **Date:** + +## Description + +```text +SasView_barbell component, generated from barbell.c in sasmodels. + +Example: +SasView_barbell(sld, sld_solvent, radius_bell, radius, length, +model_scale=1.0, model_abs=0.0, xwidth=0.01, yheight=0.01, zdepth=0.005, R=0, +int target_index=1, target_x=0, target_y=0, target_z=1, +focus_xw=0.5, focus_yh=0.5, focus_aw=0, focus_ah=0, focus_r=0, +pd_radius_bell=0.0, pd_radius=0.0, pd_length=0.0) +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| sld | 1e-6/Ang^2 | ([-inf, inf]) Barbell scattering length density. | 4 | +| sld_solvent | 1e-6/Ang^2 | ([-inf, inf]) Solvent scattering length density. | 1 | +| radius_bell | Ang | ([0, inf]) Spherical bell radius. | 40 | +| radius | Ang | ([0, inf]) Cylindrical bar radius. | 20 | +| length | Ang | ([0, inf]) Cylinder bar length. | 400 | +| model_scale | | Global scale factor for scattering kernel. For systems without inter-particle interference, the form factors can be related to the scattering intensity by the particle volume fraction. | 1.0 | +| model_abs | | Absorption cross section density at 2200 m/s. | 0.0 | +| xwidth | m | ([-inf, inf]) Horiz. dimension of sample, as a width. | 0.01 | +| yheight | m | ([-inf, inf]) vert . dimension of sample, as a height for cylinder/box | 0.01 | +| zdepth | m | ([-inf, inf]) depth of sample | 0.005 | +| R | m | Outer radius of sample in (x,z) plane for cylinder/sphere. | 0 | +| target_x | m | relative focus target position. | 0 | +| target_y | m | relative focus target position. | 0 | +| target_z | m | relative focus target position. | 1 | +| target_index | | Relative index of component to focus at, e.g. next is +1. | 1 | +| focus_xw | m | horiz. dimension of a rectangular area. | 0.5 | +| focus_yh | m | , vert. dimension of a rectangular area. | 0.5 | +| focus_aw | deg | , horiz. angular dimension of a rectangular area. | 0 | +| focus_ah | deg | , vert. angular dimension of a rectangular area. | 0 | +| focus_r | m | case of circular focusing, focusing radius. | 0 | +| pd_radius_bell | | (0,inf) defined as (dx/x), where x is de mean value and dx the standard devition of the variable. | 0.0 | +| pd_radius | | (0,inf) defined as (dx/x), where x is de mean value and dx the standard devition of the variable. | 0.0 | +| pd_length | | (0,inf) defined as (dx/x), where x is de mean value and dx the standard devition of the variable | 0.0 | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcxtrace-comps/sasmodels/SasView_barbell.comp) for `SasView_barbell.comp`. + +--- + +*Generated on mcxtrace 3.99.99.* \ No newline at end of file diff --git a/mcxtrace-comps/sasmodels/SasView_barbell_aniso.md b/mcxtrace-comps/sasmodels/SasView_barbell_aniso.md new file mode 100644 index 000000000..8275746c8 --- /dev/null +++ b/mcxtrace-comps/sasmodels/SasView_barbell_aniso.md @@ -0,0 +1,65 @@ +# The `SasView_barbell_aniso` Component + +*McXtrace: SasView barbell model component as sample description.* + +## Identification + +- **Site:** +- **Author:** Jose Robledo +- **Origin:** FZJ / DTU / ESS DMSC +- **Date:** + +## Description + +```text +SasView_barbell component, generated from barbell.c in sasmodels. + +Example: +SasView_barbell_aniso(sld, sld_solvent, radius_bell, radius, length, theta, Phi, +model_scale=1.0, model_abs=0.0, xwidth=0.01, yheight=0.01, zdepth=0.005, R=0, +int target_index=1, target_x=0, target_y=0, target_z=1, +focus_xw=0.5, focus_yh=0.5, focus_aw=0, focus_ah=0, focus_r=0, +pd_radius_bell=0.0, pd_radius=0.0, pd_length=0.0, pd_theta=0.0, pd_Phi=0.0) +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| sld | 1e-6/Ang^2 | ([-inf, inf]) Barbell scattering length density. | 4 | +| sld_solvent | 1e-6/Ang^2 | ([-inf, inf]) Solvent scattering length density. | 1 | +| radius_bell | Ang | ([0, inf]) Spherical bell radius. | 40 | +| radius | Ang | ([0, inf]) Cylindrical bar radius. | 20 | +| length | Ang | ([0, inf]) Cylinder bar length. | 400 | +| theta | | | 60 | +| Phi | | | 60 | +| model_scale | | Global scale factor for scattering kernel. For systems without inter-particle interference, the form factors can be related to the scattering intensity by the particle volume fraction. | 1.0 | +| model_abs | | Absorption cross section density at 2200 m/s. | 0.0 | +| xwidth | m | ([-inf, inf]) Horiz. dimension of sample, as a width. | 0.01 | +| yheight | m | ([-inf, inf]) vert . dimension of sample, as a height for cylinder/box | 0.01 | +| zdepth | m | ([-inf, inf]) depth of sample | 0.005 | +| R | m | Outer radius of sample in (x,z) plane for cylinder/sphere. | 0 | +| target_x | m | relative focus target position. | 0 | +| target_y | m | relative focus target position. | 0 | +| target_z | m | relative focus target position. | 1 | +| target_index | | Relative index of component to focus at, e.g. next is +1. | 1 | +| focus_xw | m | horiz. dimension of a rectangular area. | 0.5 | +| focus_yh | m | , vert. dimension of a rectangular area. | 0.5 | +| focus_aw | deg | , horiz. angular dimension of a rectangular area. | 0 | +| focus_ah | deg | , vert. angular dimension of a rectangular area. | 0 | +| focus_r | m | case of circular focusing, focusing radius. | 0 | +| pd_radius_bell | | (0,inf) defined as (dx/x), where x is de mean value and dx the standard devition of the variable. | 0.0 | +| pd_radius | | (0,inf) defined as (dx/x), where x is de mean value and dx the standard devition of the variable. | 0.0 | +| pd_length | | (0,inf) defined as (dx/x), where x is de mean value and dx the standard devition of the variable. | 0.0 | +| pd_theta | | (0,360) defined as (dx/x), where x is de mean value and dx the standard devition of the variable. | 0.0 | +| pd_Phi | | (0,360) defined as (dx/x), where x is de mean value and dx the standard devition of the variable | 0.0 | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcxtrace-comps/sasmodels/SasView_barbell_aniso.comp) for `SasView_barbell_aniso.comp`. + +--- + +*Generated on mcxtrace 3.99.99.* \ No newline at end of file diff --git a/mcxtrace-comps/sasmodels/SasView_bcc_paracrystal.md b/mcxtrace-comps/sasmodels/SasView_bcc_paracrystal.md new file mode 100644 index 000000000..f0c9ad24b --- /dev/null +++ b/mcxtrace-comps/sasmodels/SasView_bcc_paracrystal.md @@ -0,0 +1,59 @@ +# The `SasView_bcc_paracrystal` Component + +*McXtrace: SasView bcc_paracrystal model component as sample description.* + +## Identification + +- **Site:** +- **Author:** Jose Robledo +- **Origin:** FZJ / DTU / ESS DMSC +- **Date:** + +## Description + +```text +SasView_bcc_paracrystal component, generated from bcc_paracrystal.c in sasmodels. + +Example: +SasView_bcc_paracrystal(dnn, d_factor, radius, sld, sld_solvent, +model_scale=1.0, model_abs=0.0, xwidth=0.01, yheight=0.01, zdepth=0.005, R=0, +int target_index=1, target_x=0, target_y=0, target_z=1, +focus_xw=0.5, focus_yh=0.5, focus_aw=0, focus_ah=0, focus_r=0, +pd_radius=0.0) +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| dnn | Ang | ([-inf, inf]) Nearest neighbour distance. | 220 | +| d_factor | | ([-inf, inf]) Paracrystal distortion factor. | 0.06 | +| radius | Ang | ([0, inf]) Particle radius. | 40 | +| sld | 1e-6/Ang^2 | ([-inf, inf]) Particle scattering length density. | 4 | +| sld_solvent | 1e-6/Ang^2 | ([-inf, inf]) Solvent scattering length density. | 1 | +| model_scale | | Global scale factor for scattering kernel. For systems without inter-particle interference, the form factors can be related to the scattering intensity by the particle volume fraction. | 1.0 | +| model_abs | | Absorption cross section density at 2200 m/s. | 0.0 | +| xwidth | m | ([-inf, inf]) Horiz. dimension of sample, as a width. | 0.01 | +| yheight | m | ([-inf, inf]) vert . dimension of sample, as a height for cylinder/box | 0.01 | +| zdepth | m | ([-inf, inf]) depth of sample | 0.005 | +| R | m | Outer radius of sample in (x,z) plane for cylinder/sphere. | 0 | +| target_x | m | relative focus target position. | 0 | +| target_y | m | relative focus target position. | 0 | +| target_z | m | relative focus target position. | 1 | +| target_index | | Relative index of component to focus at, e.g. next is +1. | 1 | +| focus_xw | m | horiz. dimension of a rectangular area. | 0.5 | +| focus_yh | m | , vert. dimension of a rectangular area. | 0.5 | +| focus_aw | deg | , horiz. angular dimension of a rectangular area. | 0 | +| focus_ah | deg | , vert. angular dimension of a rectangular area. | 0 | +| focus_r | m | case of circular focusing, focusing radius. | 0 | +| pd_radius | | (0,inf) defined as (dx/x), where x is de mean value and dx the standard devition of the variable | 0.0 | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcxtrace-comps/sasmodels/SasView_bcc_paracrystal.comp) for `SasView_bcc_paracrystal.comp`. + +--- + +*Generated on mcxtrace 3.99.99.* \ No newline at end of file diff --git a/mcxtrace-comps/sasmodels/SasView_bcc_paracrystal_aniso.md b/mcxtrace-comps/sasmodels/SasView_bcc_paracrystal_aniso.md new file mode 100644 index 000000000..9ad173f0c --- /dev/null +++ b/mcxtrace-comps/sasmodels/SasView_bcc_paracrystal_aniso.md @@ -0,0 +1,65 @@ +# The `SasView_bcc_paracrystal_aniso` Component + +*McXtrace: SasView bcc_paracrystal model component as sample description.* + +## Identification + +- **Site:** +- **Author:** Jose Robledo +- **Origin:** FZJ / DTU / ESS DMSC +- **Date:** + +## Description + +```text +SasView_bcc_paracrystal component, generated from bcc_paracrystal.c in sasmodels. + +Example: +SasView_bcc_paracrystal_aniso(dnn, d_factor, radius, sld, sld_solvent, theta, Phi, Psi, +model_scale=1.0, model_abs=0.0, xwidth=0.01, yheight=0.01, zdepth=0.005, R=0, +int target_index=1, target_x=0, target_y=0, target_z=1, +focus_xw=0.5, focus_yh=0.5, focus_aw=0, focus_ah=0, focus_r=0, +pd_radius=0.0, pd_theta=0.0, pd_Phi=0.0, pd_Psi=0.0) +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| dnn | Ang | ([-inf, inf]) Nearest neighbour distance. | 220 | +| d_factor | | ([-inf, inf]) Paracrystal distortion factor. | 0.06 | +| radius | Ang | ([0, inf]) Particle radius. | 40 | +| sld | 1e-6/Ang^2 | ([-inf, inf]) Particle scattering length density. | 4 | +| sld_solvent | 1e-6/Ang^2 | ([-inf, inf]) Solvent scattering length density. | 1 | +| theta | | | 60 | +| Phi | | | 60 | +| Psi | | | 60 | +| model_scale | | Global scale factor for scattering kernel. For systems without inter-particle interference, the form factors can be related to the scattering intensity by the particle volume fraction. | 1.0 | +| model_abs | | Absorption cross section density at 2200 m/s. | 0.0 | +| xwidth | m | ([-inf, inf]) Horiz. dimension of sample, as a width. | 0.01 | +| yheight | m | ([-inf, inf]) vert . dimension of sample, as a height for cylinder/box | 0.01 | +| zdepth | m | ([-inf, inf]) depth of sample | 0.005 | +| R | m | Outer radius of sample in (x,z) plane for cylinder/sphere. | 0 | +| target_x | m | relative focus target position. | 0 | +| target_y | m | relative focus target position. | 0 | +| target_z | m | relative focus target position. | 1 | +| target_index | | Relative index of component to focus at, e.g. next is +1. | 1 | +| focus_xw | m | horiz. dimension of a rectangular area. | 0.5 | +| focus_yh | m | , vert. dimension of a rectangular area. | 0.5 | +| focus_aw | deg | , horiz. angular dimension of a rectangular area. | 0 | +| focus_ah | deg | , vert. angular dimension of a rectangular area. | 0 | +| focus_r | m | case of circular focusing, focusing radius. | 0 | +| pd_radius | | (0,inf) defined as (dx/x), where x is de mean value and dx the standard devition of the variable. | 0.0 | +| pd_theta | | (0,360) defined as (dx/x), where x is de mean value and dx the standard devition of the variable. | 0.0 | +| pd_Phi | | (0,360) defined as (dx/x), where x is de mean value and dx the standard devition of the variable. | 0.0 | +| pd_Psi | | (0,360) defined as (dx/x), where x is de mean value and dx the standard devition of the variable | 0.0 | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcxtrace-comps/sasmodels/SasView_bcc_paracrystal_aniso.comp) for `SasView_bcc_paracrystal_aniso.comp`. + +--- + +*Generated on mcxtrace 3.99.99.* \ No newline at end of file diff --git a/mcxtrace-comps/sasmodels/SasView_binary_hard_sphere.md b/mcxtrace-comps/sasmodels/SasView_binary_hard_sphere.md new file mode 100644 index 000000000..7bcd0af5f --- /dev/null +++ b/mcxtrace-comps/sasmodels/SasView_binary_hard_sphere.md @@ -0,0 +1,62 @@ +# The `SasView_binary_hard_sphere` Component + +*McXtrace: SasView binary_hard_sphere model component as sample description.* + +## Identification + +- **Site:** +- **Author:** Jose Robledo +- **Origin:** FZJ / DTU / ESS DMSC +- **Date:** + +## Description + +```text +SasView_binary_hard_sphere component, generated from binary_hard_sphere.c in sasmodels. + +Example: +SasView_binary_hard_sphere(radius_lg, radius_sm, volfraction_lg, volfraction_sm, sld_lg, sld_sm, sld_solvent, +model_scale=1.0, model_abs=0.0, xwidth=0.01, yheight=0.01, zdepth=0.005, R=0, +int target_index=1, target_x=0, target_y=0, target_z=1, +focus_xw=0.5, focus_yh=0.5, focus_aw=0, focus_ah=0, focus_r=0, +pd_radius_lg=0.0, pd_radius_sm=0.0) +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| radius_lg | Ang | ([0, inf]) radius of large particle. | 100 | +| radius_sm | Ang | ([0, inf]) radius of small particle. | 25 | +| volfraction_lg | | ([0, 1]) volume fraction of large particle. | 0.1 | +| volfraction_sm | | ([0, 1]) volume fraction of small particle. | 0.2 | +| sld_lg | 1e-6/Ang^2 | ([-inf, inf]) scattering length density of large particle. | 3.5 | +| sld_sm | 1e-6/Ang^2 | ([-inf, inf]) scattering length density of small particle. | 0.5 | +| sld_solvent | 1e-6/Ang^2 | ([-inf, inf]) Solvent scattering length density. | 6.36 | +| model_scale | | Global scale factor for scattering kernel. For systems without inter-particle interference, the form factors can be related to the scattering intensity by the particle volume fraction. | 1.0 | +| model_abs | | Absorption cross section density at 2200 m/s. | 0.0 | +| xwidth | m | ([-inf, inf]) Horiz. dimension of sample, as a width. | 0.01 | +| yheight | m | ([-inf, inf]) vert . dimension of sample, as a height for cylinder/box | 0.01 | +| zdepth | m | ([-inf, inf]) depth of sample | 0.005 | +| R | m | Outer radius of sample in (x,z) plane for cylinder/sphere. | 0 | +| target_x | m | relative focus target position. | 0 | +| target_y | m | relative focus target position. | 0 | +| target_z | m | relative focus target position. | 1 | +| target_index | | Relative index of component to focus at, e.g. next is +1. | 1 | +| focus_xw | m | horiz. dimension of a rectangular area. | 0.5 | +| focus_yh | m | , vert. dimension of a rectangular area. | 0.5 | +| focus_aw | deg | , horiz. angular dimension of a rectangular area. | 0 | +| focus_ah | deg | , vert. angular dimension of a rectangular area. | 0 | +| focus_r | m | case of circular focusing, focusing radius. | 0 | +| pd_radius_lg | | (0,inf) defined as (dx/x), where x is de mean value and dx the standard devition of the variable. | 0.0 | +| pd_radius_sm | | (0,inf) defined as (dx/x), where x is de mean value and dx the standard devition of the variable | 0.0 | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcxtrace-comps/sasmodels/SasView_binary_hard_sphere.comp) for `SasView_binary_hard_sphere.comp`. + +--- + +*Generated on mcxtrace 3.99.99.* \ No newline at end of file diff --git a/mcxtrace-comps/sasmodels/SasView_broad_peak.md b/mcxtrace-comps/sasmodels/SasView_broad_peak.md new file mode 100644 index 000000000..e79373caf --- /dev/null +++ b/mcxtrace-comps/sasmodels/SasView_broad_peak.md @@ -0,0 +1,61 @@ +# The `SasView_broad_peak` Component + +*McXtrace: SasView broad_peak model component as sample description.* + +## Identification + +- **Site:** +- **Author:** Jose Robledo +- **Origin:** FZJ / DTU / ESS DMSC +- **Date:** + +## Description + +```text +SasView_broad_peak component, generated from broad_peak.c in sasmodels. + +Example: +SasView_broad_peak(porod_scale, porod_exp, peak_scale, correlation_length, peak_pos, width_exp, shape_exp, +model_scale=1.0, model_abs=0.0, xwidth=0.01, yheight=0.01, zdepth=0.005, R=0, +int target_index=1, target_x=0, target_y=0, target_z=1, +focus_xw=0.5, focus_yh=0.5, focus_aw=0, focus_ah=0, focus_r=0, +pd_correlation_length=0.0) +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| porod_scale | | ([-inf, inf]) Power law scale factor. | 1e-05 | +| porod_exp | | ([-inf, inf]) Exponent of power law. | 3.0 | +| peak_scale | | ([-inf, inf]) Scale factor for broad peak. | 10.0 | +| correlation_length | Ang | ([-inf, inf]) screening length. | 50.0 | +| peak_pos | 1/Ang | ([-inf, inf]) Peak position in q. | 0.1 | +| width_exp | | ([-inf, inf]) Exponent of peak width. | 2.0 | +| shape_exp | | ([-inf, inf]) Exponent of peak shape. | 1.0 | +| model_scale | | Global scale factor for scattering kernel. For systems without inter-particle interference, the form factors can be related to the scattering intensity by the particle volume fraction. | 1.0 | +| model_abs | | Absorption cross section density at 2200 m/s. | 0.0 | +| xwidth | m | ([-inf, inf]) Horiz. dimension of sample, as a width. | 0.01 | +| yheight | m | ([-inf, inf]) vert . dimension of sample, as a height for cylinder/box | 0.01 | +| zdepth | m | ([-inf, inf]) depth of sample | 0.005 | +| R | m | Outer radius of sample in (x,z) plane for cylinder/sphere. | 0 | +| target_x | m | relative focus target position. | 0 | +| target_y | m | relative focus target position. | 0 | +| target_z | m | relative focus target position. | 1 | +| target_index | | Relative index of component to focus at, e.g. next is +1. | 1 | +| focus_xw | m | horiz. dimension of a rectangular area. | 0.5 | +| focus_yh | m | , vert. dimension of a rectangular area. | 0.5 | +| focus_aw | deg | , horiz. angular dimension of a rectangular area. | 0 | +| focus_ah | deg | , vert. angular dimension of a rectangular area. | 0 | +| focus_r | m | case of circular focusing, focusing radius. | 0 | +| pd_correlation_length | | (0,inf) defined as (dx/x), where x is de mean value and dx the standard devition of the variable | 0.0 | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcxtrace-comps/sasmodels/SasView_broad_peak.comp) for `SasView_broad_peak.comp`. + +--- + +*Generated on mcxtrace 3.99.99.* \ No newline at end of file diff --git a/mcxtrace-comps/sasmodels/SasView_capped_cylinder.md b/mcxtrace-comps/sasmodels/SasView_capped_cylinder.md new file mode 100644 index 000000000..085a01ea4 --- /dev/null +++ b/mcxtrace-comps/sasmodels/SasView_capped_cylinder.md @@ -0,0 +1,61 @@ +# The `SasView_capped_cylinder` Component + +*McXtrace: SasView capped_cylinder model component as sample description.* + +## Identification + +- **Site:** +- **Author:** Jose Robledo +- **Origin:** FZJ / DTU / ESS DMSC +- **Date:** + +## Description + +```text +SasView_capped_cylinder component, generated from capped_cylinder.c in sasmodels. + +Example: +SasView_capped_cylinder(sld, sld_solvent, radius, radius_cap, length, +model_scale=1.0, model_abs=0.0, xwidth=0.01, yheight=0.01, zdepth=0.005, R=0, +int target_index=1, target_x=0, target_y=0, target_z=1, +focus_xw=0.5, focus_yh=0.5, focus_aw=0, focus_ah=0, focus_r=0, +pd_radius=0.0, pd_radius_cap=0.0, pd_length=0.0) +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| sld | 1e-6/Ang^2 | ([-inf, inf]) Cylinder scattering length density. | 4 | +| sld_solvent | 1e-6/Ang^2 | ([-inf, inf]) Solvent scattering length density. | 1 | +| radius | Ang | ([0, inf]) Cylinder radius. | 20 | +| radius_cap | Ang | ([0, inf]) Cap radius. | 20 | +| length | Ang | ([0, inf]) Cylinder length. | 400 | +| model_scale | | Global scale factor for scattering kernel. For systems without inter-particle interference, the form factors can be related to the scattering intensity by the particle volume fraction. | 1.0 | +| model_abs | | Absorption cross section density at 2200 m/s. | 0.0 | +| xwidth | m | ([-inf, inf]) Horiz. dimension of sample, as a width. | 0.01 | +| yheight | m | ([-inf, inf]) vert . dimension of sample, as a height for cylinder/box | 0.01 | +| zdepth | m | ([-inf, inf]) depth of sample | 0.005 | +| R | m | Outer radius of sample in (x,z) plane for cylinder/sphere. | 0 | +| target_x | m | relative focus target position. | 0 | +| target_y | m | relative focus target position. | 0 | +| target_z | m | relative focus target position. | 1 | +| target_index | | Relative index of component to focus at, e.g. next is +1. | 1 | +| focus_xw | m | horiz. dimension of a rectangular area. | 0.5 | +| focus_yh | m | , vert. dimension of a rectangular area. | 0.5 | +| focus_aw | deg | , horiz. angular dimension of a rectangular area. | 0 | +| focus_ah | deg | , vert. angular dimension of a rectangular area. | 0 | +| focus_r | m | case of circular focusing, focusing radius. | 0 | +| pd_radius | | (0,inf) defined as (dx/x), where x is de mean value and dx the standard devition of the variable. | 0.0 | +| pd_radius_cap | | (0,inf) defined as (dx/x), where x is de mean value and dx the standard devition of the variable. | 0.0 | +| pd_length | | (0,inf) defined as (dx/x), where x is de mean value and dx the standard devition of the variable | 0.0 | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcxtrace-comps/sasmodels/SasView_capped_cylinder.comp) for `SasView_capped_cylinder.comp`. + +--- + +*Generated on mcxtrace 3.99.99.* \ No newline at end of file diff --git a/mcxtrace-comps/sasmodels/SasView_capped_cylinder_aniso.md b/mcxtrace-comps/sasmodels/SasView_capped_cylinder_aniso.md new file mode 100644 index 000000000..1c1bd2d55 --- /dev/null +++ b/mcxtrace-comps/sasmodels/SasView_capped_cylinder_aniso.md @@ -0,0 +1,65 @@ +# The `SasView_capped_cylinder_aniso` Component + +*McXtrace: SasView capped_cylinder model component as sample description.* + +## Identification + +- **Site:** +- **Author:** Jose Robledo +- **Origin:** FZJ / DTU / ESS DMSC +- **Date:** + +## Description + +```text +SasView_capped_cylinder component, generated from capped_cylinder.c in sasmodels. + +Example: +SasView_capped_cylinder_aniso(sld, sld_solvent, radius, radius_cap, length, theta, Phi, +model_scale=1.0, model_abs=0.0, xwidth=0.01, yheight=0.01, zdepth=0.005, R=0, +int target_index=1, target_x=0, target_y=0, target_z=1, +focus_xw=0.5, focus_yh=0.5, focus_aw=0, focus_ah=0, focus_r=0, +pd_radius=0.0, pd_radius_cap=0.0, pd_length=0.0, pd_theta=0.0, pd_Phi=0.0) +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| sld | 1e-6/Ang^2 | ([-inf, inf]) Cylinder scattering length density. | 4 | +| sld_solvent | 1e-6/Ang^2 | ([-inf, inf]) Solvent scattering length density. | 1 | +| radius | Ang | ([0, inf]) Cylinder radius. | 20 | +| radius_cap | Ang | ([0, inf]) Cap radius. | 20 | +| length | Ang | ([0, inf]) Cylinder length. | 400 | +| theta | | | 60 | +| Phi | | | 60 | +| model_scale | | Global scale factor for scattering kernel. For systems without inter-particle interference, the form factors can be related to the scattering intensity by the particle volume fraction. | 1.0 | +| model_abs | | Absorption cross section density at 2200 m/s. | 0.0 | +| xwidth | m | ([-inf, inf]) Horiz. dimension of sample, as a width. | 0.01 | +| yheight | m | ([-inf, inf]) vert . dimension of sample, as a height for cylinder/box | 0.01 | +| zdepth | m | ([-inf, inf]) depth of sample | 0.005 | +| R | m | Outer radius of sample in (x,z) plane for cylinder/sphere. | 0 | +| target_x | m | relative focus target position. | 0 | +| target_y | m | relative focus target position. | 0 | +| target_z | m | relative focus target position. | 1 | +| target_index | | Relative index of component to focus at, e.g. next is +1. | 1 | +| focus_xw | m | horiz. dimension of a rectangular area. | 0.5 | +| focus_yh | m | , vert. dimension of a rectangular area. | 0.5 | +| focus_aw | deg | , horiz. angular dimension of a rectangular area. | 0 | +| focus_ah | deg | , vert. angular dimension of a rectangular area. | 0 | +| focus_r | m | case of circular focusing, focusing radius. | 0 | +| pd_radius | | (0,inf) defined as (dx/x), where x is de mean value and dx the standard devition of the variable. | 0.0 | +| pd_radius_cap | | (0,inf) defined as (dx/x), where x is de mean value and dx the standard devition of the variable. | 0.0 | +| pd_length | | (0,inf) defined as (dx/x), where x is de mean value and dx the standard devition of the variable. | 0.0 | +| pd_theta | | (0,360) defined as (dx/x), where x is de mean value and dx the standard devition of the variable. | 0.0 | +| pd_Phi | | (0,360) defined as (dx/x), where x is de mean value and dx the standard devition of the variable | 0.0 | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcxtrace-comps/sasmodels/SasView_capped_cylinder_aniso.comp) for `SasView_capped_cylinder_aniso.comp`. + +--- + +*Generated on mcxtrace 3.99.99.* \ No newline at end of file diff --git a/mcxtrace-comps/sasmodels/SasView_core_multi_shell.md b/mcxtrace-comps/sasmodels/SasView_core_multi_shell.md new file mode 100644 index 000000000..3ceeb2c8f --- /dev/null +++ b/mcxtrace-comps/sasmodels/SasView_core_multi_shell.md @@ -0,0 +1,38 @@ +# The `SasView_core_multi_shell` Component + +*McXtrace: SasView core_multi_shell model component as sample description.* + +## Identification + +- **Site:** +- **Author:** Jose Robledo +- **Origin:** FZJ / DTU / ESS DMSC +- **Date:** + +## Description + +```text +SasView_core_multi_shell component, generated from core_multi_shell.c in sasmodels. + +Example: +SasView_core_multi_shell(sld_core, radius, sld_solvent, n, sld[n], thickness[n], +model_scale=1.0, model_abs=0.0, xwidth=0.01, yheight=0.01, zdepth=0.005, R=0, +int target_index=1, target_x=0, target_y=0, target_z=1, +focus_xw=0.5, focus_yh=0.5, focus_aw=0, focus_ah=0, focus_r=0, +pd_radius=0.0, pd_thickness[n]=0.0) +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcxtrace-comps/sasmodels/SasView_core_multi_shell.comp) for `SasView_core_multi_shell.comp`. + +--- + +*Generated on mcxtrace 3.99.99.* \ No newline at end of file diff --git a/mcxtrace-comps/sasmodels/SasView_core_shell_bicelle.md b/mcxtrace-comps/sasmodels/SasView_core_shell_bicelle.md new file mode 100644 index 000000000..c55afd39a --- /dev/null +++ b/mcxtrace-comps/sasmodels/SasView_core_shell_bicelle.md @@ -0,0 +1,65 @@ +# The `SasView_core_shell_bicelle` Component + +*McXtrace: SasView core_shell_bicelle model component as sample description.* + +## Identification + +- **Site:** +- **Author:** Jose Robledo +- **Origin:** FZJ / DTU / ESS DMSC +- **Date:** + +## Description + +```text +SasView_core_shell_bicelle component, generated from core_shell_bicelle.c in sasmodels. + +Example: +SasView_core_shell_bicelle(radius, thick_rim, thick_face, length, sld_core, sld_face, sld_rim, sld_solvent, +model_scale=1.0, model_abs=0.0, xwidth=0.01, yheight=0.01, zdepth=0.005, R=0, +int target_index=1, target_x=0, target_y=0, target_z=1, +focus_xw=0.5, focus_yh=0.5, focus_aw=0, focus_ah=0, focus_r=0, +pd_radius=0.0, pd_thick_rim=0.0, pd_thick_face=0.0, pd_length=0.0) +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| radius | Ang | ([0, inf]) Cylinder core radius. | 80 | +| thick_rim | Ang | ([0, inf]) Rim shell thickness. | 10 | +| thick_face | Ang | ([0, inf]) Cylinder face thickness. | 10 | +| length | Ang | ([0, inf]) Cylinder length. | 50 | +| sld_core | 1e-6/Ang^2 | ([-inf, inf]) Cylinder core scattering length density. | 1 | +| sld_face | 1e-6/Ang^2 | ([-inf, inf]) Cylinder face scattering length density. | 4 | +| sld_rim | 1e-6/Ang^2 | ([-inf, inf]) Cylinder rim scattering length density. | 4 | +| sld_solvent | 1e-6/Ang^2 | ([-inf, inf]) Solvent scattering length density. | 1 | +| model_scale | | Global scale factor for scattering kernel. For systems without inter-particle interference, the form factors can be related to the scattering intensity by the particle volume fraction. | 1.0 | +| model_abs | | Absorption cross section density at 2200 m/s. | 0.0 | +| xwidth | m | ([-inf, inf]) Horiz. dimension of sample, as a width. | 0.01 | +| yheight | m | ([-inf, inf]) vert . dimension of sample, as a height for cylinder/box | 0.01 | +| zdepth | m | ([-inf, inf]) depth of sample | 0.005 | +| R | m | Outer radius of sample in (x,z) plane for cylinder/sphere. | 0 | +| target_x | m | relative focus target position. | 0 | +| target_y | m | relative focus target position. | 0 | +| target_z | m | relative focus target position. | 1 | +| target_index | | Relative index of component to focus at, e.g. next is +1. | 1 | +| focus_xw | m | horiz. dimension of a rectangular area. | 0.5 | +| focus_yh | m | , vert. dimension of a rectangular area. | 0.5 | +| focus_aw | deg | , horiz. angular dimension of a rectangular area. | 0 | +| focus_ah | deg | , vert. angular dimension of a rectangular area. | 0 | +| focus_r | m | case of circular focusing, focusing radius. | 0 | +| pd_radius | | (0,inf) defined as (dx/x), where x is de mean value and dx the standard devition of the variable. | 0.0 | +| pd_thick_rim | | (0,inf) defined as (dx/x), where x is de mean value and dx the standard devition of the variable. | 0.0 | +| pd_thick_face | | (0,inf) defined as (dx/x), where x is de mean value and dx the standard devition of the variable. | 0.0 | +| pd_length | | (0,inf) defined as (dx/x), where x is de mean value and dx the standard devition of the variable | 0.0 | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcxtrace-comps/sasmodels/SasView_core_shell_bicelle.comp) for `SasView_core_shell_bicelle.comp`. + +--- + +*Generated on mcxtrace 3.99.99.* \ No newline at end of file diff --git a/mcxtrace-comps/sasmodels/SasView_core_shell_bicelle_aniso.md b/mcxtrace-comps/sasmodels/SasView_core_shell_bicelle_aniso.md new file mode 100644 index 000000000..893ddfd14 --- /dev/null +++ b/mcxtrace-comps/sasmodels/SasView_core_shell_bicelle_aniso.md @@ -0,0 +1,69 @@ +# The `SasView_core_shell_bicelle_aniso` Component + +*McXtrace: SasView core_shell_bicelle model component as sample description.* + +## Identification + +- **Site:** +- **Author:** Jose Robledo +- **Origin:** FZJ / DTU / ESS DMSC +- **Date:** + +## Description + +```text +SasView_core_shell_bicelle component, generated from core_shell_bicelle.c in sasmodels. + +Example: +SasView_core_shell_bicelle_aniso(radius, thick_rim, thick_face, length, sld_core, sld_face, sld_rim, sld_solvent, theta, Phi, +model_scale=1.0, model_abs=0.0, xwidth=0.01, yheight=0.01, zdepth=0.005, R=0, +int target_index=1, target_x=0, target_y=0, target_z=1, +focus_xw=0.5, focus_yh=0.5, focus_aw=0, focus_ah=0, focus_r=0, +pd_radius=0.0, pd_thick_rim=0.0, pd_thick_face=0.0, pd_length=0.0, pd_theta=0.0, pd_Phi=0.0) +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| radius | Ang | ([0, inf]) Cylinder core radius. | 80 | +| thick_rim | Ang | ([0, inf]) Rim shell thickness. | 10 | +| thick_face | Ang | ([0, inf]) Cylinder face thickness. | 10 | +| length | Ang | ([0, inf]) Cylinder length. | 50 | +| sld_core | 1e-6/Ang^2 | ([-inf, inf]) Cylinder core scattering length density. | 1 | +| sld_face | 1e-6/Ang^2 | ([-inf, inf]) Cylinder face scattering length density. | 4 | +| sld_rim | 1e-6/Ang^2 | ([-inf, inf]) Cylinder rim scattering length density. | 4 | +| sld_solvent | 1e-6/Ang^2 | ([-inf, inf]) Solvent scattering length density. | 1 | +| theta | | | 90 | +| Phi | | | 0 | +| model_scale | | Global scale factor for scattering kernel. For systems without inter-particle interference, the form factors can be related to the scattering intensity by the particle volume fraction. | 1.0 | +| model_abs | | Absorption cross section density at 2200 m/s. | 0.0 | +| xwidth | m | ([-inf, inf]) Horiz. dimension of sample, as a width. | 0.01 | +| yheight | m | ([-inf, inf]) vert . dimension of sample, as a height for cylinder/box | 0.01 | +| zdepth | m | ([-inf, inf]) depth of sample | 0.005 | +| R | m | Outer radius of sample in (x,z) plane for cylinder/sphere. | 0 | +| target_x | m | relative focus target position. | 0 | +| target_y | m | relative focus target position. | 0 | +| target_z | m | relative focus target position. | 1 | +| target_index | | Relative index of component to focus at, e.g. next is +1. | 1 | +| focus_xw | m | horiz. dimension of a rectangular area. | 0.5 | +| focus_yh | m | , vert. dimension of a rectangular area. | 0.5 | +| focus_aw | deg | , horiz. angular dimension of a rectangular area. | 0 | +| focus_ah | deg | , vert. angular dimension of a rectangular area. | 0 | +| focus_r | m | case of circular focusing, focusing radius. | 0 | +| pd_radius | | (0,inf) defined as (dx/x), where x is de mean value and dx the standard devition of the variable. | 0.0 | +| pd_thick_rim | | (0,inf) defined as (dx/x), where x is de mean value and dx the standard devition of the variable. | 0.0 | +| pd_thick_face | | (0,inf) defined as (dx/x), where x is de mean value and dx the standard devition of the variable. | 0.0 | +| pd_length | | (0,inf) defined as (dx/x), where x is de mean value and dx the standard devition of the variable. | 0.0 | +| pd_theta | | (0,360) defined as (dx/x), where x is de mean value and dx the standard devition of the variable. | 0.0 | +| pd_Phi | | (0,360) defined as (dx/x), where x is de mean value and dx the standard devition of the variable | 0.0 | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcxtrace-comps/sasmodels/SasView_core_shell_bicelle_aniso.comp) for `SasView_core_shell_bicelle_aniso.comp`. + +--- + +*Generated on mcxtrace 3.99.99.* \ No newline at end of file diff --git a/mcxtrace-comps/sasmodels/SasView_core_shell_bicelle_elliptical.md b/mcxtrace-comps/sasmodels/SasView_core_shell_bicelle_elliptical.md new file mode 100644 index 000000000..ef4b8307b --- /dev/null +++ b/mcxtrace-comps/sasmodels/SasView_core_shell_bicelle_elliptical.md @@ -0,0 +1,66 @@ +# The `SasView_core_shell_bicelle_elliptical` Component + +*McXtrace: SasView core_shell_bicelle_elliptical model component as sample description.* + +## Identification + +- **Site:** +- **Author:** Jose Robledo +- **Origin:** FZJ / DTU / ESS DMSC +- **Date:** + +## Description + +```text +SasView_core_shell_bicelle_elliptical component, generated from core_shell_bicelle_elliptical.c in sasmodels. + +Example: +SasView_core_shell_bicelle_elliptical(radius, x_core, thick_rim, thick_face, length, sld_core, sld_face, sld_rim, sld_solvent, +model_scale=1.0, model_abs=0.0, xwidth=0.01, yheight=0.01, zdepth=0.005, R=0, +int target_index=1, target_x=0, target_y=0, target_z=1, +focus_xw=0.5, focus_yh=0.5, focus_aw=0, focus_ah=0, focus_r=0, +pd_radius=0.0, pd_thick_rim=0.0, pd_thick_face=0.0, pd_length=0.0) +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| radius | Ang | ([0, inf]) Cylinder core radius r_minor. | 30 | +| x_core | None | ([0, inf]) Axial ratio of core, X = r_major/r_minor. | 3 | +| thick_rim | Ang | ([0, inf]) Rim shell thickness. | 8 | +| thick_face | Ang | ([0, inf]) Cylinder face thickness. | 14 | +| length | Ang | ([0, inf]) Cylinder length. | 50 | +| sld_core | 1e-6/Ang^2 | ([-inf, inf]) Cylinder core scattering length density. | 4 | +| sld_face | 1e-6/Ang^2 | ([-inf, inf]) Cylinder face scattering length density. | 7 | +| sld_rim | 1e-6/Ang^2 | ([-inf, inf]) Cylinder rim scattering length density. | 1 | +| sld_solvent | 1e-6/Ang^2 | ([-inf, inf]) Solvent scattering length density. | 6 | +| model_scale | | Global scale factor for scattering kernel. For systems without inter-particle interference, the form factors can be related to the scattering intensity by the particle volume fraction. | 1.0 | +| model_abs | | Absorption cross section density at 2200 m/s. | 0.0 | +| xwidth | m | ([-inf, inf]) Horiz. dimension of sample, as a width. | 0.01 | +| yheight | m | ([-inf, inf]) vert . dimension of sample, as a height for cylinder/box | 0.01 | +| zdepth | m | ([-inf, inf]) depth of sample | 0.005 | +| R | m | Outer radius of sample in (x,z) plane for cylinder/sphere. | 0 | +| target_x | m | relative focus target position. | 0 | +| target_y | m | relative focus target position. | 0 | +| target_z | m | relative focus target position. | 1 | +| target_index | | Relative index of component to focus at, e.g. next is +1. | 1 | +| focus_xw | m | horiz. dimension of a rectangular area. | 0.5 | +| focus_yh | m | , vert. dimension of a rectangular area. | 0.5 | +| focus_aw | deg | , horiz. angular dimension of a rectangular area. | 0 | +| focus_ah | deg | , vert. angular dimension of a rectangular area. | 0 | +| focus_r | m | case of circular focusing, focusing radius. | 0 | +| pd_radius | | (0,inf) defined as (dx/x), where x is de mean value and dx the standard devition of the variable. | 0.0 | +| pd_thick_rim | | (0,inf) defined as (dx/x), where x is de mean value and dx the standard devition of the variable. | 0.0 | +| pd_thick_face | | (0,inf) defined as (dx/x), where x is de mean value and dx the standard devition of the variable. | 0.0 | +| pd_length | | (0,inf) defined as (dx/x), where x is de mean value and dx the standard devition of the variable | 0.0 | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcxtrace-comps/sasmodels/SasView_core_shell_bicelle_elliptical.comp) for `SasView_core_shell_bicelle_elliptical.comp`. + +--- + +*Generated on mcxtrace 3.99.99.* \ No newline at end of file diff --git a/mcxtrace-comps/sasmodels/SasView_core_shell_bicelle_elliptical_aniso.md b/mcxtrace-comps/sasmodels/SasView_core_shell_bicelle_elliptical_aniso.md new file mode 100644 index 000000000..7d4869d28 --- /dev/null +++ b/mcxtrace-comps/sasmodels/SasView_core_shell_bicelle_elliptical_aniso.md @@ -0,0 +1,72 @@ +# The `SasView_core_shell_bicelle_elliptical_aniso` Component + +*McXtrace: SasView core_shell_bicelle_elliptical model component as sample description.* + +## Identification + +- **Site:** +- **Author:** Jose Robledo +- **Origin:** FZJ / DTU / ESS DMSC +- **Date:** + +## Description + +```text +SasView_core_shell_bicelle_elliptical component, generated from core_shell_bicelle_elliptical.c in sasmodels. + +Example: +SasView_core_shell_bicelle_elliptical_aniso(radius, x_core, thick_rim, thick_face, length, sld_core, sld_face, sld_rim, sld_solvent, theta, Phi, Psi, +model_scale=1.0, model_abs=0.0, xwidth=0.01, yheight=0.01, zdepth=0.005, R=0, +int target_index=1, target_x=0, target_y=0, target_z=1, +focus_xw=0.5, focus_yh=0.5, focus_aw=0, focus_ah=0, focus_r=0, +pd_radius=0.0, pd_thick_rim=0.0, pd_thick_face=0.0, pd_length=0.0, pd_theta=0.0, pd_Phi=0.0, pd_Psi=0.0) +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| radius | Ang | ([0, inf]) Cylinder core radius r_minor. | 30 | +| x_core | None | ([0, inf]) Axial ratio of core, X = r_major/r_minor. | 3 | +| thick_rim | Ang | ([0, inf]) Rim shell thickness. | 8 | +| thick_face | Ang | ([0, inf]) Cylinder face thickness. | 14 | +| length | Ang | ([0, inf]) Cylinder length. | 50 | +| sld_core | 1e-6/Ang^2 | ([-inf, inf]) Cylinder core scattering length density. | 4 | +| sld_face | 1e-6/Ang^2 | ([-inf, inf]) Cylinder face scattering length density. | 7 | +| sld_rim | 1e-6/Ang^2 | ([-inf, inf]) Cylinder rim scattering length density. | 1 | +| sld_solvent | 1e-6/Ang^2 | ([-inf, inf]) Solvent scattering length density. | 6 | +| theta | | | 90.0 | +| Phi | | | 0 | +| Psi | | | 0 | +| model_scale | | Global scale factor for scattering kernel. For systems without inter-particle interference, the form factors can be related to the scattering intensity by the particle volume fraction. | 1.0 | +| model_abs | | Absorption cross section density at 2200 m/s. | 0.0 | +| xwidth | m | ([-inf, inf]) Horiz. dimension of sample, as a width. | 0.01 | +| yheight | m | ([-inf, inf]) vert . dimension of sample, as a height for cylinder/box | 0.01 | +| zdepth | m | ([-inf, inf]) depth of sample | 0.005 | +| R | m | Outer radius of sample in (x,z) plane for cylinder/sphere. | 0 | +| target_x | m | relative focus target position. | 0 | +| target_y | m | relative focus target position. | 0 | +| target_z | m | relative focus target position. | 1 | +| target_index | | Relative index of component to focus at, e.g. next is +1. | 1 | +| focus_xw | m | horiz. dimension of a rectangular area. | 0.5 | +| focus_yh | m | , vert. dimension of a rectangular area. | 0.5 | +| focus_aw | deg | , horiz. angular dimension of a rectangular area. | 0 | +| focus_ah | deg | , vert. angular dimension of a rectangular area. | 0 | +| focus_r | m | case of circular focusing, focusing radius. | 0 | +| pd_radius | | (0,inf) defined as (dx/x), where x is de mean value and dx the standard devition of the variable. | 0.0 | +| pd_thick_rim | | (0,inf) defined as (dx/x), where x is de mean value and dx the standard devition of the variable. | 0.0 | +| pd_thick_face | | (0,inf) defined as (dx/x), where x is de mean value and dx the standard devition of the variable. | 0.0 | +| pd_length | | (0,inf) defined as (dx/x), where x is de mean value and dx the standard devition of the variable. | 0.0 | +| pd_theta | | (0,360) defined as (dx/x), where x is de mean value and dx the standard devition of the variable. | 0.0 | +| pd_Phi | | (0,360) defined as (dx/x), where x is de mean value and dx the standard devition of the variable. | 0.0 | +| pd_Psi | | (0,360) defined as (dx/x), where x is de mean value and dx the standard devition of the variable | 0.0 | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcxtrace-comps/sasmodels/SasView_core_shell_bicelle_elliptical_aniso.comp) for `SasView_core_shell_bicelle_elliptical_aniso.comp`. + +--- + +*Generated on mcxtrace 3.99.99.* \ No newline at end of file diff --git a/mcxtrace-comps/sasmodels/SasView_core_shell_bicelle_elliptical_belt_rough.md b/mcxtrace-comps/sasmodels/SasView_core_shell_bicelle_elliptical_belt_rough.md new file mode 100644 index 000000000..ebc8f1d6c --- /dev/null +++ b/mcxtrace-comps/sasmodels/SasView_core_shell_bicelle_elliptical_belt_rough.md @@ -0,0 +1,67 @@ +# The `SasView_core_shell_bicelle_elliptical_belt_rough` Component + +*McXtrace: SasView core_shell_bicelle_elliptical_belt_rough model component as sample description.* + +## Identification + +- **Site:** +- **Author:** Jose Robledo +- **Origin:** FZJ / DTU / ESS DMSC +- **Date:** + +## Description + +```text +SasView_core_shell_bicelle_elliptical_belt_rough component, generated from core_shell_bicelle_elliptical_belt_rough.c in sasmodels. + +Example: +SasView_core_shell_bicelle_elliptical_belt_rough(radius, x_core, thick_rim, thick_face, length, sld_core, sld_face, sld_rim, sld_solvent, sigma, +model_scale=1.0, model_abs=0.0, xwidth=0.01, yheight=0.01, zdepth=0.005, R=0, +int target_index=1, target_x=0, target_y=0, target_z=1, +focus_xw=0.5, focus_yh=0.5, focus_aw=0, focus_ah=0, focus_r=0, +pd_radius=0.0, pd_thick_rim=0.0, pd_thick_face=0.0, pd_length=0.0) +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| radius | Ang | ([0, inf]) Cylinder core radius r_minor. | 30 | +| x_core | None | ([0, inf]) Axial ratio of core, X = r_major/r_minor. | 3 | +| thick_rim | Ang | ([0, inf]) Rim or belt shell thickness. | 8 | +| thick_face | Ang | ([0, inf]) Cylinder face thickness. | 14 | +| length | Ang | ([0, inf]) Cylinder length. | 50 | +| sld_core | 1e-6/Ang^2 | ([-inf, inf]) Cylinder core scattering length density. | 4 | +| sld_face | 1e-6/Ang^2 | ([-inf, inf]) Cylinder face scattering length density. | 7 | +| sld_rim | 1e-6/Ang^2 | ([-inf, inf]) Cylinder rim scattering length density. | 1 | +| sld_solvent | 1e-6/Ang^2 | ([-inf, inf]) Solvent scattering length density. | 6 | +| sigma | Ang | ([0, inf]) Interfacial roughness. | 0 | +| model_scale | | Global scale factor for scattering kernel. For systems without inter-particle interference, the form factors can be related to the scattering intensity by the particle volume fraction. | 1.0 | +| model_abs | | Absorption cross section density at 2200 m/s. | 0.0 | +| xwidth | m | ([-inf, inf]) Horiz. dimension of sample, as a width. | 0.01 | +| yheight | m | ([-inf, inf]) vert . dimension of sample, as a height for cylinder/box | 0.01 | +| zdepth | m | ([-inf, inf]) depth of sample | 0.005 | +| R | m | Outer radius of sample in (x,z) plane for cylinder/sphere. | 0 | +| target_x | m | relative focus target position. | 0 | +| target_y | m | relative focus target position. | 0 | +| target_z | m | relative focus target position. | 1 | +| target_index | | Relative index of component to focus at, e.g. next is +1. | 1 | +| focus_xw | m | horiz. dimension of a rectangular area. | 0.5 | +| focus_yh | m | , vert. dimension of a rectangular area. | 0.5 | +| focus_aw | deg | , horiz. angular dimension of a rectangular area. | 0 | +| focus_ah | deg | , vert. angular dimension of a rectangular area. | 0 | +| focus_r | m | case of circular focusing, focusing radius. | 0 | +| pd_radius | | (0,inf) defined as (dx/x), where x is de mean value and dx the standard devition of the variable. | 0.0 | +| pd_thick_rim | | (0,inf) defined as (dx/x), where x is de mean value and dx the standard devition of the variable. | 0.0 | +| pd_thick_face | | (0,inf) defined as (dx/x), where x is de mean value and dx the standard devition of the variable. | 0.0 | +| pd_length | | (0,inf) defined as (dx/x), where x is de mean value and dx the standard devition of the variable | 0.0 | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcxtrace-comps/sasmodels/SasView_core_shell_bicelle_elliptical_belt_rough.comp) for `SasView_core_shell_bicelle_elliptical_belt_rough.comp`. + +--- + +*Generated on mcxtrace 3.99.99.* \ No newline at end of file diff --git a/mcxtrace-comps/sasmodels/SasView_core_shell_bicelle_elliptical_belt_rough_aniso.md b/mcxtrace-comps/sasmodels/SasView_core_shell_bicelle_elliptical_belt_rough_aniso.md new file mode 100644 index 000000000..c1f890977 --- /dev/null +++ b/mcxtrace-comps/sasmodels/SasView_core_shell_bicelle_elliptical_belt_rough_aniso.md @@ -0,0 +1,73 @@ +# The `SasView_core_shell_bicelle_elliptical_belt_rough_aniso` Component + +*McXtrace: SasView core_shell_bicelle_elliptical_belt_rough model component as sample description.* + +## Identification + +- **Site:** +- **Author:** Jose Robledo +- **Origin:** FZJ / DTU / ESS DMSC +- **Date:** + +## Description + +```text +SasView_core_shell_bicelle_elliptical_belt_rough component, generated from core_shell_bicelle_elliptical_belt_rough.c in sasmodels. + +Example: +SasView_core_shell_bicelle_elliptical_belt_rough_aniso(radius, x_core, thick_rim, thick_face, length, sld_core, sld_face, sld_rim, sld_solvent, sigma, theta, Phi, Psi, +model_scale=1.0, model_abs=0.0, xwidth=0.01, yheight=0.01, zdepth=0.005, R=0, +int target_index=1, target_x=0, target_y=0, target_z=1, +focus_xw=0.5, focus_yh=0.5, focus_aw=0, focus_ah=0, focus_r=0, +pd_radius=0.0, pd_thick_rim=0.0, pd_thick_face=0.0, pd_length=0.0, pd_theta=0.0, pd_Phi=0.0, pd_Psi=0.0) +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| radius | Ang | ([0, inf]) Cylinder core radius r_minor. | 30 | +| x_core | None | ([0, inf]) Axial ratio of core, X = r_major/r_minor. | 3 | +| thick_rim | Ang | ([0, inf]) Rim or belt shell thickness. | 8 | +| thick_face | Ang | ([0, inf]) Cylinder face thickness. | 14 | +| length | Ang | ([0, inf]) Cylinder length. | 50 | +| sld_core | 1e-6/Ang^2 | ([-inf, inf]) Cylinder core scattering length density. | 4 | +| sld_face | 1e-6/Ang^2 | ([-inf, inf]) Cylinder face scattering length density. | 7 | +| sld_rim | 1e-6/Ang^2 | ([-inf, inf]) Cylinder rim scattering length density. | 1 | +| sld_solvent | 1e-6/Ang^2 | ([-inf, inf]) Solvent scattering length density. | 6 | +| sigma | Ang | ([0, inf]) Interfacial roughness. | 0 | +| theta | | | 90.0 | +| Phi | | | 0 | +| Psi | | | 0 | +| model_scale | | Global scale factor for scattering kernel. For systems without inter-particle interference, the form factors can be related to the scattering intensity by the particle volume fraction. | 1.0 | +| model_abs | | Absorption cross section density at 2200 m/s. | 0.0 | +| xwidth | m | ([-inf, inf]) Horiz. dimension of sample, as a width. | 0.01 | +| yheight | m | ([-inf, inf]) vert . dimension of sample, as a height for cylinder/box | 0.01 | +| zdepth | m | ([-inf, inf]) depth of sample | 0.005 | +| R | m | Outer radius of sample in (x,z) plane for cylinder/sphere. | 0 | +| target_x | m | relative focus target position. | 0 | +| target_y | m | relative focus target position. | 0 | +| target_z | m | relative focus target position. | 1 | +| target_index | | Relative index of component to focus at, e.g. next is +1. | 1 | +| focus_xw | m | horiz. dimension of a rectangular area. | 0.5 | +| focus_yh | m | , vert. dimension of a rectangular area. | 0.5 | +| focus_aw | deg | , horiz. angular dimension of a rectangular area. | 0 | +| focus_ah | deg | , vert. angular dimension of a rectangular area. | 0 | +| focus_r | m | case of circular focusing, focusing radius. | 0 | +| pd_radius | | (0,inf) defined as (dx/x), where x is de mean value and dx the standard devition of the variable. | 0.0 | +| pd_thick_rim | | (0,inf) defined as (dx/x), where x is de mean value and dx the standard devition of the variable. | 0.0 | +| pd_thick_face | | (0,inf) defined as (dx/x), where x is de mean value and dx the standard devition of the variable. | 0.0 | +| pd_length | | (0,inf) defined as (dx/x), where x is de mean value and dx the standard devition of the variable. | 0.0 | +| pd_theta | | (0,360) defined as (dx/x), where x is de mean value and dx the standard devition of the variable. | 0.0 | +| pd_Phi | | (0,360) defined as (dx/x), where x is de mean value and dx the standard devition of the variable. | 0.0 | +| pd_Psi | | (0,360) defined as (dx/x), where x is de mean value and dx the standard devition of the variable | 0.0 | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcxtrace-comps/sasmodels/SasView_core_shell_bicelle_elliptical_belt_rough_aniso.comp) for `SasView_core_shell_bicelle_elliptical_belt_rough_aniso.comp`. + +--- + +*Generated on mcxtrace 3.99.99.* \ No newline at end of file diff --git a/mcxtrace-comps/sasmodels/SasView_core_shell_cylinder.md b/mcxtrace-comps/sasmodels/SasView_core_shell_cylinder.md new file mode 100644 index 000000000..a08d90112 --- /dev/null +++ b/mcxtrace-comps/sasmodels/SasView_core_shell_cylinder.md @@ -0,0 +1,62 @@ +# The `SasView_core_shell_cylinder` Component + +*McXtrace: SasView core_shell_cylinder model component as sample description.* + +## Identification + +- **Site:** +- **Author:** Jose Robledo +- **Origin:** FZJ / DTU / ESS DMSC +- **Date:** + +## Description + +```text +SasView_core_shell_cylinder component, generated from core_shell_cylinder.c in sasmodels. + +Example: +SasView_core_shell_cylinder(sld_core, sld_shell, sld_solvent, radius, thickness, length, +model_scale=1.0, model_abs=0.0, xwidth=0.01, yheight=0.01, zdepth=0.005, R=0, +int target_index=1, target_x=0, target_y=0, target_z=1, +focus_xw=0.5, focus_yh=0.5, focus_aw=0, focus_ah=0, focus_r=0, +pd_radius=0.0, pd_thickness=0.0, pd_length=0.0) +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| sld_core | 1e-6/Ang^2 | ([-inf, inf]) Cylinder core scattering length density. | 4 | +| sld_shell | 1e-6/Ang^2 | ([-inf, inf]) Cylinder shell scattering length density. | 4 | +| sld_solvent | 1e-6/Ang^2 | ([-inf, inf]) Solvent scattering length density. | 1 | +| radius | Ang | ([0, inf]) Cylinder core radius. | 20 | +| thickness | Ang | ([0, inf]) Cylinder shell thickness. | 20 | +| length | Ang | ([0, inf]) Cylinder length. | 400 | +| model_scale | | Global scale factor for scattering kernel. For systems without inter-particle interference, the form factors can be related to the scattering intensity by the particle volume fraction. | 1.0 | +| model_abs | | Absorption cross section density at 2200 m/s. | 0.0 | +| xwidth | m | ([-inf, inf]) Horiz. dimension of sample, as a width. | 0.01 | +| yheight | m | ([-inf, inf]) vert . dimension of sample, as a height for cylinder/box | 0.01 | +| zdepth | m | ([-inf, inf]) depth of sample | 0.005 | +| R | m | Outer radius of sample in (x,z) plane for cylinder/sphere. | 0 | +| target_x | m | relative focus target position. | 0 | +| target_y | m | relative focus target position. | 0 | +| target_z | m | relative focus target position. | 1 | +| target_index | | Relative index of component to focus at, e.g. next is +1. | 1 | +| focus_xw | m | horiz. dimension of a rectangular area. | 0.5 | +| focus_yh | m | , vert. dimension of a rectangular area. | 0.5 | +| focus_aw | deg | , horiz. angular dimension of a rectangular area. | 0 | +| focus_ah | deg | , vert. angular dimension of a rectangular area. | 0 | +| focus_r | m | case of circular focusing, focusing radius. | 0 | +| pd_radius | | (0,inf) defined as (dx/x), where x is de mean value and dx the standard devition of the variable. | 0.0 | +| pd_thickness | | (0,inf) defined as (dx/x), where x is de mean value and dx the standard devition of the variable. | 0.0 | +| pd_length | | (0,inf) defined as (dx/x), where x is de mean value and dx the standard devition of the variable | 0.0 | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcxtrace-comps/sasmodels/SasView_core_shell_cylinder.comp) for `SasView_core_shell_cylinder.comp`. + +--- + +*Generated on mcxtrace 3.99.99.* \ No newline at end of file diff --git a/mcxtrace-comps/sasmodels/SasView_core_shell_cylinder_aniso.md b/mcxtrace-comps/sasmodels/SasView_core_shell_cylinder_aniso.md new file mode 100644 index 000000000..a506fd56c --- /dev/null +++ b/mcxtrace-comps/sasmodels/SasView_core_shell_cylinder_aniso.md @@ -0,0 +1,66 @@ +# The `SasView_core_shell_cylinder_aniso` Component + +*McXtrace: SasView core_shell_cylinder model component as sample description.* + +## Identification + +- **Site:** +- **Author:** Jose Robledo +- **Origin:** FZJ / DTU / ESS DMSC +- **Date:** + +## Description + +```text +SasView_core_shell_cylinder component, generated from core_shell_cylinder.c in sasmodels. + +Example: +SasView_core_shell_cylinder_aniso(sld_core, sld_shell, sld_solvent, radius, thickness, length, theta, Phi, +model_scale=1.0, model_abs=0.0, xwidth=0.01, yheight=0.01, zdepth=0.005, R=0, +int target_index=1, target_x=0, target_y=0, target_z=1, +focus_xw=0.5, focus_yh=0.5, focus_aw=0, focus_ah=0, focus_r=0, +pd_radius=0.0, pd_thickness=0.0, pd_length=0.0, pd_theta=0.0, pd_Phi=0.0) +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| sld_core | 1e-6/Ang^2 | ([-inf, inf]) Cylinder core scattering length density. | 4 | +| sld_shell | 1e-6/Ang^2 | ([-inf, inf]) Cylinder shell scattering length density. | 4 | +| sld_solvent | 1e-6/Ang^2 | ([-inf, inf]) Solvent scattering length density. | 1 | +| radius | Ang | ([0, inf]) Cylinder core radius. | 20 | +| thickness | Ang | ([0, inf]) Cylinder shell thickness. | 20 | +| length | Ang | ([0, inf]) Cylinder length. | 400 | +| theta | | | 60 | +| Phi | | | 60 | +| model_scale | | Global scale factor for scattering kernel. For systems without inter-particle interference, the form factors can be related to the scattering intensity by the particle volume fraction. | 1.0 | +| model_abs | | Absorption cross section density at 2200 m/s. | 0.0 | +| xwidth | m | ([-inf, inf]) Horiz. dimension of sample, as a width. | 0.01 | +| yheight | m | ([-inf, inf]) vert . dimension of sample, as a height for cylinder/box | 0.01 | +| zdepth | m | ([-inf, inf]) depth of sample | 0.005 | +| R | m | Outer radius of sample in (x,z) plane for cylinder/sphere. | 0 | +| target_x | m | relative focus target position. | 0 | +| target_y | m | relative focus target position. | 0 | +| target_z | m | relative focus target position. | 1 | +| target_index | | Relative index of component to focus at, e.g. next is +1. | 1 | +| focus_xw | m | horiz. dimension of a rectangular area. | 0.5 | +| focus_yh | m | , vert. dimension of a rectangular area. | 0.5 | +| focus_aw | deg | , horiz. angular dimension of a rectangular area. | 0 | +| focus_ah | deg | , vert. angular dimension of a rectangular area. | 0 | +| focus_r | m | case of circular focusing, focusing radius. | 0 | +| pd_radius | | (0,inf) defined as (dx/x), where x is de mean value and dx the standard devition of the variable. | 0.0 | +| pd_thickness | | (0,inf) defined as (dx/x), where x is de mean value and dx the standard devition of the variable. | 0.0 | +| pd_length | | (0,inf) defined as (dx/x), where x is de mean value and dx the standard devition of the variable. | 0.0 | +| pd_theta | | (0,360) defined as (dx/x), where x is de mean value and dx the standard devition of the variable. | 0.0 | +| pd_Phi | | (0,360) defined as (dx/x), where x is de mean value and dx the standard devition of the variable | 0.0 | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcxtrace-comps/sasmodels/SasView_core_shell_cylinder_aniso.comp) for `SasView_core_shell_cylinder_aniso.comp`. + +--- + +*Generated on mcxtrace 3.99.99.* \ No newline at end of file diff --git a/mcxtrace-comps/sasmodels/SasView_core_shell_ellipsoid.md b/mcxtrace-comps/sasmodels/SasView_core_shell_ellipsoid.md new file mode 100644 index 000000000..70a35ac9c --- /dev/null +++ b/mcxtrace-comps/sasmodels/SasView_core_shell_ellipsoid.md @@ -0,0 +1,62 @@ +# The `SasView_core_shell_ellipsoid` Component + +*McXtrace: SasView core_shell_ellipsoid model component as sample description.* + +## Identification + +- **Site:** +- **Author:** Jose Robledo +- **Origin:** FZJ / DTU / ESS DMSC +- **Date:** + +## Description + +```text +SasView_core_shell_ellipsoid component, generated from core_shell_ellipsoid.c in sasmodels. + +Example: +SasView_core_shell_ellipsoid(radius_equat_core, x_core, thick_shell, x_polar_shell, sld_core, sld_shell, sld_solvent, +model_scale=1.0, model_abs=0.0, xwidth=0.01, yheight=0.01, zdepth=0.005, R=0, +int target_index=1, target_x=0, target_y=0, target_z=1, +focus_xw=0.5, focus_yh=0.5, focus_aw=0, focus_ah=0, focus_r=0, +pd_radius_equat_core=0.0, pd_thick_shell=0.0) +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| radius_equat_core | Ang | ([0, inf]) Equatorial radius of core. | 20 | +| x_core | None | ([0, inf]) axial ratio of core, X = r_polar/r_equatorial. | 3 | +| thick_shell | Ang | ([0, inf]) thickness of shell at equator. | 30 | +| x_polar_shell | | ([0, inf]) ratio of thickness of shell at pole to that at equator. | 1 | +| sld_core | 1e-6/Ang^2 | ([-inf, inf]) Core scattering length density. | 2 | +| sld_shell | 1e-6/Ang^2 | ([-inf, inf]) Shell scattering length density. | 1 | +| sld_solvent | 1e-6/Ang^2 | ([-inf, inf]) Solvent scattering length density. | 6.3 | +| model_scale | | Global scale factor for scattering kernel. For systems without inter-particle interference, the form factors can be related to the scattering intensity by the particle volume fraction. | 1.0 | +| model_abs | | Absorption cross section density at 2200 m/s. | 0.0 | +| xwidth | m | ([-inf, inf]) Horiz. dimension of sample, as a width. | 0.01 | +| yheight | m | ([-inf, inf]) vert . dimension of sample, as a height for cylinder/box | 0.01 | +| zdepth | m | ([-inf, inf]) depth of sample | 0.005 | +| R | m | Outer radius of sample in (x,z) plane for cylinder/sphere. | 0 | +| target_x | m | relative focus target position. | 0 | +| target_y | m | relative focus target position. | 0 | +| target_z | m | relative focus target position. | 1 | +| target_index | | Relative index of component to focus at, e.g. next is +1. | 1 | +| focus_xw | m | horiz. dimension of a rectangular area. | 0.5 | +| focus_yh | m | , vert. dimension of a rectangular area. | 0.5 | +| focus_aw | deg | , horiz. angular dimension of a rectangular area. | 0 | +| focus_ah | deg | , vert. angular dimension of a rectangular area. | 0 | +| focus_r | m | case of circular focusing, focusing radius. | 0 | +| pd_radius_equat_core | | (0,inf) defined as (dx/x), where x is de mean value and dx the standard devition of the variable. | 0.0 | +| pd_thick_shell | | (0,inf) defined as (dx/x), where x is de mean value and dx the standard devition of the variable | 0.0 | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcxtrace-comps/sasmodels/SasView_core_shell_ellipsoid.comp) for `SasView_core_shell_ellipsoid.comp`. + +--- + +*Generated on mcxtrace 3.99.99.* \ No newline at end of file diff --git a/mcxtrace-comps/sasmodels/SasView_core_shell_ellipsoid_aniso.md b/mcxtrace-comps/sasmodels/SasView_core_shell_ellipsoid_aniso.md new file mode 100644 index 000000000..5c8d489a7 --- /dev/null +++ b/mcxtrace-comps/sasmodels/SasView_core_shell_ellipsoid_aniso.md @@ -0,0 +1,66 @@ +# The `SasView_core_shell_ellipsoid_aniso` Component + +*McXtrace: SasView core_shell_ellipsoid model component as sample description.* + +## Identification + +- **Site:** +- **Author:** Jose Robledo +- **Origin:** FZJ / DTU / ESS DMSC +- **Date:** + +## Description + +```text +SasView_core_shell_ellipsoid component, generated from core_shell_ellipsoid.c in sasmodels. + +Example: +SasView_core_shell_ellipsoid_aniso(radius_equat_core, x_core, thick_shell, x_polar_shell, sld_core, sld_shell, sld_solvent, theta, Phi, +model_scale=1.0, model_abs=0.0, xwidth=0.01, yheight=0.01, zdepth=0.005, R=0, +int target_index=1, target_x=0, target_y=0, target_z=1, +focus_xw=0.5, focus_yh=0.5, focus_aw=0, focus_ah=0, focus_r=0, +pd_radius_equat_core=0.0, pd_thick_shell=0.0, pd_theta=0.0, pd_Phi=0.0) +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| radius_equat_core | Ang | ([0, inf]) Equatorial radius of core. | 20 | +| x_core | None | ([0, inf]) axial ratio of core, X = r_polar/r_equatorial. | 3 | +| thick_shell | Ang | ([0, inf]) thickness of shell at equator. | 30 | +| x_polar_shell | | ([0, inf]) ratio of thickness of shell at pole to that at equator. | 1 | +| sld_core | 1e-6/Ang^2 | ([-inf, inf]) Core scattering length density. | 2 | +| sld_shell | 1e-6/Ang^2 | ([-inf, inf]) Shell scattering length density. | 1 | +| sld_solvent | 1e-6/Ang^2 | ([-inf, inf]) Solvent scattering length density. | 6.3 | +| theta | | | 0 | +| Phi | | | 0 | +| model_scale | | Global scale factor for scattering kernel. For systems without inter-particle interference, the form factors can be related to the scattering intensity by the particle volume fraction. | 1.0 | +| model_abs | | Absorption cross section density at 2200 m/s. | 0.0 | +| xwidth | m | ([-inf, inf]) Horiz. dimension of sample, as a width. | 0.01 | +| yheight | m | ([-inf, inf]) vert . dimension of sample, as a height for cylinder/box | 0.01 | +| zdepth | m | ([-inf, inf]) depth of sample | 0.005 | +| R | m | Outer radius of sample in (x,z) plane for cylinder/sphere. | 0 | +| target_x | m | relative focus target position. | 0 | +| target_y | m | relative focus target position. | 0 | +| target_z | m | relative focus target position. | 1 | +| target_index | | Relative index of component to focus at, e.g. next is +1. | 1 | +| focus_xw | m | horiz. dimension of a rectangular area. | 0.5 | +| focus_yh | m | , vert. dimension of a rectangular area. | 0.5 | +| focus_aw | deg | , horiz. angular dimension of a rectangular area. | 0 | +| focus_ah | deg | , vert. angular dimension of a rectangular area. | 0 | +| focus_r | m | case of circular focusing, focusing radius. | 0 | +| pd_radius_equat_core | | (0,inf) defined as (dx/x), where x is de mean value and dx the standard devition of the variable. | 0.0 | +| pd_thick_shell | | (0,inf) defined as (dx/x), where x is de mean value and dx the standard devition of the variable. | 0.0 | +| pd_theta | | (0,360) defined as (dx/x), where x is de mean value and dx the standard devition of the variable. | 0.0 | +| pd_Phi | | (0,360) defined as (dx/x), where x is de mean value and dx the standard devition of the variable | 0.0 | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcxtrace-comps/sasmodels/SasView_core_shell_ellipsoid_aniso.comp) for `SasView_core_shell_ellipsoid_aniso.comp`. + +--- + +*Generated on mcxtrace 3.99.99.* \ No newline at end of file diff --git a/mcxtrace-comps/sasmodels/SasView_core_shell_parallelepiped.md b/mcxtrace-comps/sasmodels/SasView_core_shell_parallelepiped.md new file mode 100644 index 000000000..e30bee63d --- /dev/null +++ b/mcxtrace-comps/sasmodels/SasView_core_shell_parallelepiped.md @@ -0,0 +1,70 @@ +# The `SasView_core_shell_parallelepiped` Component + +*McXtrace: SasView core_shell_parallelepiped model component as sample description.* + +## Identification + +- **Site:** +- **Author:** Jose Robledo +- **Origin:** FZJ / DTU / ESS DMSC +- **Date:** + +## Description + +```text +SasView_core_shell_parallelepiped component, generated from core_shell_parallelepiped.c in sasmodels. + +Example: +SasView_core_shell_parallelepiped(sld_core, sld_a, sld_b, sld_c, sld_solvent, length_a, length_b, length_c, thick_rim_a, thick_rim_b, thick_rim_c, +model_scale=1.0, model_abs=0.0, xwidth=0.01, yheight=0.01, zdepth=0.005, R=0, +int target_index=1, target_x=0, target_y=0, target_z=1, +focus_xw=0.5, focus_yh=0.5, focus_aw=0, focus_ah=0, focus_r=0, +pd_length_a=0.0, pd_length_b=0.0, pd_length_c=0.0, pd_thick_rim_a=0.0, pd_thick_rim_b=0.0, pd_thick_rim_c=0.0) +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| sld_core | 1e-6/Ang^2 | ([-inf, inf]) Parallelepiped core scattering length density. | 1 | +| sld_a | 1e-6/Ang^2 | ([-inf, inf]) Parallelepiped A rim scattering length density. | 2 | +| sld_b | 1e-6/Ang^2 | ([-inf, inf]) Parallelepiped B rim scattering length density. | 4 | +| sld_c | 1e-6/Ang^2 | ([-inf, inf]) Parallelepiped C rim scattering length density. | 2 | +| sld_solvent | 1e-6/Ang^2 | ([-inf, inf]) Solvent scattering length density. | 6 | +| length_a | Ang | ([0, inf]) Shorter side of the parallelepiped. | 35 | +| length_b | Ang | ([0, inf]) Second side of the parallelepiped. | 75 | +| length_c | Ang | ([0, inf]) Larger side of the parallelepiped. | 400 | +| thick_rim_a | Ang | ([0, inf]) Thickness of A rim. | 10 | +| thick_rim_b | Ang | ([0, inf]) Thickness of B rim. | 10 | +| thick_rim_c | Ang | ([0, inf]) Thickness of C rim. | 10 | +| model_scale | | Global scale factor for scattering kernel. For systems without inter-particle interference, the form factors can be related to the scattering intensity by the particle volume fraction. | 1.0 | +| model_abs | | Absorption cross section density at 2200 m/s. | 0.0 | +| xwidth | m | ([-inf, inf]) Horiz. dimension of sample, as a width. | 0.01 | +| yheight | m | ([-inf, inf]) vert . dimension of sample, as a height for cylinder/box | 0.01 | +| zdepth | m | ([-inf, inf]) depth of sample | 0.005 | +| R | m | Outer radius of sample in (x,z) plane for cylinder/sphere. | 0 | +| target_x | m | relative focus target position. | 0 | +| target_y | m | relative focus target position. | 0 | +| target_z | m | relative focus target position. | 1 | +| target_index | | Relative index of component to focus at, e.g. next is +1. | 1 | +| focus_xw | m | horiz. dimension of a rectangular area. | 0.5 | +| focus_yh | m | , vert. dimension of a rectangular area. | 0.5 | +| focus_aw | deg | , horiz. angular dimension of a rectangular area. | 0 | +| focus_ah | deg | , vert. angular dimension of a rectangular area. | 0 | +| focus_r | m | case of circular focusing, focusing radius. | 0 | +| pd_length_a | | (0,inf) defined as (dx/x), where x is de mean value and dx the standard devition of the variable. | 0.0 | +| pd_length_b | | (0,inf) defined as (dx/x), where x is de mean value and dx the standard devition of the variable. | 0.0 | +| pd_length_c | | (0,inf) defined as (dx/x), where x is de mean value and dx the standard devition of the variable. | 0.0 | +| pd_thick_rim_a | | (0,inf) defined as (dx/x), where x is de mean value and dx the standard devition of the variable. | 0.0 | +| pd_thick_rim_b | | (0,inf) defined as (dx/x), where x is de mean value and dx the standard devition of the variable. | 0.0 | +| pd_thick_rim_c | | (0,inf) defined as (dx/x), where x is de mean value and dx the standard devition of the variable | 0.0 | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcxtrace-comps/sasmodels/SasView_core_shell_parallelepiped.comp) for `SasView_core_shell_parallelepiped.comp`. + +--- + +*Generated on mcxtrace 3.99.99.* \ No newline at end of file diff --git a/mcxtrace-comps/sasmodels/SasView_core_shell_parallelepiped_aniso.md b/mcxtrace-comps/sasmodels/SasView_core_shell_parallelepiped_aniso.md new file mode 100644 index 000000000..d455d51e4 --- /dev/null +++ b/mcxtrace-comps/sasmodels/SasView_core_shell_parallelepiped_aniso.md @@ -0,0 +1,76 @@ +# The `SasView_core_shell_parallelepiped_aniso` Component + +*McXtrace: SasView core_shell_parallelepiped model component as sample description.* + +## Identification + +- **Site:** +- **Author:** Jose Robledo +- **Origin:** FZJ / DTU / ESS DMSC +- **Date:** + +## Description + +```text +SasView_core_shell_parallelepiped component, generated from core_shell_parallelepiped.c in sasmodels. + +Example: +SasView_core_shell_parallelepiped_aniso(sld_core, sld_a, sld_b, sld_c, sld_solvent, length_a, length_b, length_c, thick_rim_a, thick_rim_b, thick_rim_c, theta, Phi, Psi, +model_scale=1.0, model_abs=0.0, xwidth=0.01, yheight=0.01, zdepth=0.005, R=0, +int target_index=1, target_x=0, target_y=0, target_z=1, +focus_xw=0.5, focus_yh=0.5, focus_aw=0, focus_ah=0, focus_r=0, +pd_length_a=0.0, pd_length_b=0.0, pd_length_c=0.0, pd_thick_rim_a=0.0, pd_thick_rim_b=0.0, pd_thick_rim_c=0.0, pd_theta=0.0, pd_Phi=0.0, pd_Psi=0.0) +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| sld_core | 1e-6/Ang^2 | ([-inf, inf]) Parallelepiped core scattering length density. | 1 | +| sld_a | 1e-6/Ang^2 | ([-inf, inf]) Parallelepiped A rim scattering length density. | 2 | +| sld_b | 1e-6/Ang^2 | ([-inf, inf]) Parallelepiped B rim scattering length density. | 4 | +| sld_c | 1e-6/Ang^2 | ([-inf, inf]) Parallelepiped C rim scattering length density. | 2 | +| sld_solvent | 1e-6/Ang^2 | ([-inf, inf]) Solvent scattering length density. | 6 | +| length_a | Ang | ([0, inf]) Shorter side of the parallelepiped. | 35 | +| length_b | Ang | ([0, inf]) Second side of the parallelepiped. | 75 | +| length_c | Ang | ([0, inf]) Larger side of the parallelepiped. | 400 | +| thick_rim_a | Ang | ([0, inf]) Thickness of A rim. | 10 | +| thick_rim_b | Ang | ([0, inf]) Thickness of B rim. | 10 | +| thick_rim_c | Ang | ([0, inf]) Thickness of C rim. | 10 | +| theta | | | 0 | +| Phi | | | 0 | +| Psi | | | 0 | +| model_scale | | Global scale factor for scattering kernel. For systems without inter-particle interference, the form factors can be related to the scattering intensity by the particle volume fraction. | 1.0 | +| model_abs | | Absorption cross section density at 2200 m/s. | 0.0 | +| xwidth | m | ([-inf, inf]) Horiz. dimension of sample, as a width. | 0.01 | +| yheight | m | ([-inf, inf]) vert . dimension of sample, as a height for cylinder/box | 0.01 | +| zdepth | m | ([-inf, inf]) depth of sample | 0.005 | +| R | m | Outer radius of sample in (x,z) plane for cylinder/sphere. | 0 | +| target_x | m | relative focus target position. | 0 | +| target_y | m | relative focus target position. | 0 | +| target_z | m | relative focus target position. | 1 | +| target_index | | Relative index of component to focus at, e.g. next is +1. | 1 | +| focus_xw | m | horiz. dimension of a rectangular area. | 0.5 | +| focus_yh | m | , vert. dimension of a rectangular area. | 0.5 | +| focus_aw | deg | , horiz. angular dimension of a rectangular area. | 0 | +| focus_ah | deg | , vert. angular dimension of a rectangular area. | 0 | +| focus_r | m | case of circular focusing, focusing radius. | 0 | +| pd_length_a | | (0,inf) defined as (dx/x), where x is de mean value and dx the standard devition of the variable. | 0.0 | +| pd_length_b | | (0,inf) defined as (dx/x), where x is de mean value and dx the standard devition of the variable. | 0.0 | +| pd_length_c | | (0,inf) defined as (dx/x), where x is de mean value and dx the standard devition of the variable. | 0.0 | +| pd_thick_rim_a | | (0,inf) defined as (dx/x), where x is de mean value and dx the standard devition of the variable. | 0.0 | +| pd_thick_rim_b | | (0,inf) defined as (dx/x), where x is de mean value and dx the standard devition of the variable. | 0.0 | +| pd_thick_rim_c | | (0,inf) defined as (dx/x), where x is de mean value and dx the standard devition of the variable. | 0.0 | +| pd_theta | | (0,360) defined as (dx/x), where x is de mean value and dx the standard devition of the variable. | 0.0 | +| pd_Phi | | (0,360) defined as (dx/x), where x is de mean value and dx the standard devition of the variable. | 0.0 | +| pd_Psi | | (0,360) defined as (dx/x), where x is de mean value and dx the standard devition of the variable | 0.0 | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcxtrace-comps/sasmodels/SasView_core_shell_parallelepiped_aniso.comp) for `SasView_core_shell_parallelepiped_aniso.comp`. + +--- + +*Generated on mcxtrace 3.99.99.* \ No newline at end of file diff --git a/mcxtrace-comps/sasmodels/SasView_core_shell_sphere.md b/mcxtrace-comps/sasmodels/SasView_core_shell_sphere.md new file mode 100644 index 000000000..18b39be99 --- /dev/null +++ b/mcxtrace-comps/sasmodels/SasView_core_shell_sphere.md @@ -0,0 +1,60 @@ +# The `SasView_core_shell_sphere` Component + +*McXtrace: SasView core_shell_sphere model component as sample description.* + +## Identification + +- **Site:** +- **Author:** Jose Robledo +- **Origin:** FZJ / DTU / ESS DMSC +- **Date:** + +## Description + +```text +SasView_core_shell_sphere component, generated from core_shell_sphere.c in sasmodels. + +Example: +SasView_core_shell_sphere(radius, thickness, sld_core, sld_shell, sld_solvent, +model_scale=1.0, model_abs=0.0, xwidth=0.01, yheight=0.01, zdepth=0.005, R=0, +int target_index=1, target_x=0, target_y=0, target_z=1, +focus_xw=0.5, focus_yh=0.5, focus_aw=0, focus_ah=0, focus_r=0, +pd_radius=0.0, pd_thickness=0.0) +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| radius | Ang | ([0, inf]) Sphere core radius. | 60.0 | +| thickness | Ang | ([0, inf]) Sphere shell thickness. | 10.0 | +| sld_core | 1e-6/Ang^2 | ([-inf, inf]) core scattering length density. | 1.0 | +| sld_shell | 1e-6/Ang^2 | ([-inf, inf]) shell scattering length density. | 2.0 | +| sld_solvent | 1e-6/Ang^2 | ([-inf, inf]) Solvent scattering length density. | 3.0 | +| model_scale | | Global scale factor for scattering kernel. For systems without inter-particle interference, the form factors can be related to the scattering intensity by the particle volume fraction. | 1.0 | +| model_abs | | Absorption cross section density at 2200 m/s. | 0.0 | +| xwidth | m | ([-inf, inf]) Horiz. dimension of sample, as a width. | 0.01 | +| yheight | m | ([-inf, inf]) vert . dimension of sample, as a height for cylinder/box | 0.01 | +| zdepth | m | ([-inf, inf]) depth of sample | 0.005 | +| R | m | Outer radius of sample in (x,z) plane for cylinder/sphere. | 0 | +| target_x | m | relative focus target position. | 0 | +| target_y | m | relative focus target position. | 0 | +| target_z | m | relative focus target position. | 1 | +| target_index | | Relative index of component to focus at, e.g. next is +1. | 1 | +| focus_xw | m | horiz. dimension of a rectangular area. | 0.5 | +| focus_yh | m | , vert. dimension of a rectangular area. | 0.5 | +| focus_aw | deg | , horiz. angular dimension of a rectangular area. | 0 | +| focus_ah | deg | , vert. angular dimension of a rectangular area. | 0 | +| focus_r | m | case of circular focusing, focusing radius. | 0 | +| pd_radius | | (0,inf) defined as (dx/x), where x is de mean value and dx the standard devition of the variable. | 0.0 | +| pd_thickness | | (0,inf) defined as (dx/x), where x is de mean value and dx the standard devition of the variable | 0.0 | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcxtrace-comps/sasmodels/SasView_core_shell_sphere.comp) for `SasView_core_shell_sphere.comp`. + +--- + +*Generated on mcxtrace 3.99.99.* \ No newline at end of file diff --git a/mcxtrace-comps/sasmodels/SasView_correlation_length.md b/mcxtrace-comps/sasmodels/SasView_correlation_length.md new file mode 100644 index 000000000..8ea312ce3 --- /dev/null +++ b/mcxtrace-comps/sasmodels/SasView_correlation_length.md @@ -0,0 +1,59 @@ +# The `SasView_correlation_length` Component + +*McXtrace: SasView correlation_length model component as sample description.* + +## Identification + +- **Site:** +- **Author:** Jose Robledo +- **Origin:** FZJ / DTU / ESS DMSC +- **Date:** + +## Description + +```text +SasView_correlation_length component, generated from correlation_length.c in sasmodels. + +Example: +SasView_correlation_length(lorentz_scale, porod_scale, cor_length, porod_exp, lorentz_exp, +model_scale=1.0, model_abs=0.0, xwidth=0.01, yheight=0.01, zdepth=0.005, R=0, +int target_index=1, target_x=0, target_y=0, target_z=1, +focus_xw=0.5, focus_yh=0.5, focus_aw=0, focus_ah=0, focus_r=0, +pd_cor_length=0.0) +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| lorentz_scale | | ([0, inf]) Lorentzian Scaling Factor. | 10.0 | +| porod_scale | | ([0, inf]) Porod Scaling Factor. | 1e-06 | +| cor_length | Ang | ([0, inf]) Correlation length, xi, in Lorentzian. | 50.0 | +| porod_exp | | ([0, inf]) Porod Exponent, n, in q^-n. | 3.0 | +| lorentz_exp | | ([0, inf]) Lorentzian Exponent, m, in 1/( 1 + (q.xi)^m). | 2.0 | +| model_scale | | Global scale factor for scattering kernel. For systems without inter-particle interference, the form factors can be related to the scattering intensity by the particle volume fraction. | 1.0 | +| model_abs | | Absorption cross section density at 2200 m/s. | 0.0 | +| xwidth | m | ([-inf, inf]) Horiz. dimension of sample, as a width. | 0.01 | +| yheight | m | ([-inf, inf]) vert . dimension of sample, as a height for cylinder/box | 0.01 | +| zdepth | m | ([-inf, inf]) depth of sample | 0.005 | +| R | m | Outer radius of sample in (x,z) plane for cylinder/sphere. | 0 | +| target_x | m | relative focus target position. | 0 | +| target_y | m | relative focus target position. | 0 | +| target_z | m | relative focus target position. | 1 | +| target_index | | Relative index of component to focus at, e.g. next is +1. | 1 | +| focus_xw | m | horiz. dimension of a rectangular area. | 0.5 | +| focus_yh | m | , vert. dimension of a rectangular area. | 0.5 | +| focus_aw | deg | , horiz. angular dimension of a rectangular area. | 0 | +| focus_ah | deg | , vert. angular dimension of a rectangular area. | 0 | +| focus_r | m | case of circular focusing, focusing radius. | 0 | +| pd_cor_length | | (0,inf) defined as (dx/x), where x is de mean value and dx the standard devition of the variable | 0.0 | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcxtrace-comps/sasmodels/SasView_correlation_length.comp) for `SasView_correlation_length.comp`. + +--- + +*Generated on mcxtrace 3.99.99.* \ No newline at end of file diff --git a/mcxtrace-comps/sasmodels/SasView_cylinder.md b/mcxtrace-comps/sasmodels/SasView_cylinder.md new file mode 100644 index 000000000..1c3a79696 --- /dev/null +++ b/mcxtrace-comps/sasmodels/SasView_cylinder.md @@ -0,0 +1,59 @@ +# The `SasView_cylinder` Component + +*McXtrace: SasView cylinder model component as sample description.* + +## Identification + +- **Site:** +- **Author:** Jose Robledo +- **Origin:** FZJ / DTU / ESS DMSC +- **Date:** + +## Description + +```text +SasView_cylinder component, generated from cylinder.c in sasmodels. + +Example: +SasView_cylinder(sld, sld_solvent, radius, length, +model_scale=1.0, model_abs=0.0, xwidth=0.01, yheight=0.01, zdepth=0.005, R=0, +int target_index=1, target_x=0, target_y=0, target_z=1, +focus_xw=0.5, focus_yh=0.5, focus_aw=0, focus_ah=0, focus_r=0, +pd_radius=0.0, pd_length=0.0) +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| sld | 1e-6/Ang^2 | ([-inf, inf]) Cylinder scattering length density. | 4 | +| sld_solvent | 1e-6/Ang^2 | ([-inf, inf]) Solvent scattering length density. | 1 | +| radius | Ang | ([0, inf]) Cylinder radius. | 20 | +| length | Ang | ([0, inf]) Cylinder length. | 400 | +| model_scale | | Global scale factor for scattering kernel. For systems without inter-particle interference, the form factors can be related to the scattering intensity by the particle volume fraction. | 1.0 | +| model_abs | | Absorption cross section density at 2200 m/s. | 0.0 | +| xwidth | m | ([-inf, inf]) Horiz. dimension of sample, as a width. | 0.01 | +| yheight | m | ([-inf, inf]) vert . dimension of sample, as a height for cylinder/box | 0.01 | +| zdepth | m | ([-inf, inf]) depth of sample | 0.005 | +| R | m | Outer radius of sample in (x,z) plane for cylinder/sphere. | 0 | +| target_x | m | relative focus target position. | 0 | +| target_y | m | relative focus target position. | 0 | +| target_z | m | relative focus target position. | 1 | +| target_index | | Relative index of component to focus at, e.g. next is +1. | 1 | +| focus_xw | m | horiz. dimension of a rectangular area. | 0.5 | +| focus_yh | m | , vert. dimension of a rectangular area. | 0.5 | +| focus_aw | deg | , horiz. angular dimension of a rectangular area. | 0 | +| focus_ah | deg | , vert. angular dimension of a rectangular area. | 0 | +| focus_r | m | case of circular focusing, focusing radius. | 0 | +| pd_radius | | (0,inf) defined as (dx/x), where x is de mean value and dx the standard devition of the variable. | 0.0 | +| pd_length | | (0,inf) defined as (dx/x), where x is de mean value and dx the standard devition of the variable | 0.0 | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcxtrace-comps/sasmodels/SasView_cylinder.comp) for `SasView_cylinder.comp`. + +--- + +*Generated on mcxtrace 3.99.99.* \ No newline at end of file diff --git a/mcxtrace-comps/sasmodels/SasView_cylinder_aniso.md b/mcxtrace-comps/sasmodels/SasView_cylinder_aniso.md new file mode 100644 index 000000000..1ff29c7cc --- /dev/null +++ b/mcxtrace-comps/sasmodels/SasView_cylinder_aniso.md @@ -0,0 +1,63 @@ +# The `SasView_cylinder_aniso` Component + +*McXtrace: SasView cylinder model component as sample description.* + +## Identification + +- **Site:** +- **Author:** Jose Robledo +- **Origin:** FZJ / DTU / ESS DMSC +- **Date:** + +## Description + +```text +SasView_cylinder component, generated from cylinder.c in sasmodels. + +Example: +SasView_cylinder_aniso(sld, sld_solvent, radius, length, theta, Phi, +model_scale=1.0, model_abs=0.0, xwidth=0.01, yheight=0.01, zdepth=0.005, R=0, +int target_index=1, target_x=0, target_y=0, target_z=1, +focus_xw=0.5, focus_yh=0.5, focus_aw=0, focus_ah=0, focus_r=0, +pd_radius=0.0, pd_length=0.0, pd_theta=0.0, pd_Phi=0.0) +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| sld | 1e-6/Ang^2 | ([-inf, inf]) Cylinder scattering length density. | 4 | +| sld_solvent | 1e-6/Ang^2 | ([-inf, inf]) Solvent scattering length density. | 1 | +| radius | Ang | ([0, inf]) Cylinder radius. | 20 | +| length | Ang | ([0, inf]) Cylinder length. | 400 | +| theta | | | 60 | +| Phi | | | 60 | +| model_scale | | Global scale factor for scattering kernel. For systems without inter-particle interference, the form factors can be related to the scattering intensity by the particle volume fraction. | 1.0 | +| model_abs | | Absorption cross section density at 2200 m/s. | 0.0 | +| xwidth | m | ([-inf, inf]) Horiz. dimension of sample, as a width. | 0.01 | +| yheight | m | ([-inf, inf]) vert . dimension of sample, as a height for cylinder/box | 0.01 | +| zdepth | m | ([-inf, inf]) depth of sample | 0.005 | +| R | m | Outer radius of sample in (x,z) plane for cylinder/sphere. | 0 | +| target_x | m | relative focus target position. | 0 | +| target_y | m | relative focus target position. | 0 | +| target_z | m | relative focus target position. | 1 | +| target_index | | Relative index of component to focus at, e.g. next is +1. | 1 | +| focus_xw | m | horiz. dimension of a rectangular area. | 0.5 | +| focus_yh | m | , vert. dimension of a rectangular area. | 0.5 | +| focus_aw | deg | , horiz. angular dimension of a rectangular area. | 0 | +| focus_ah | deg | , vert. angular dimension of a rectangular area. | 0 | +| focus_r | m | case of circular focusing, focusing radius. | 0 | +| pd_radius | | (0,inf) defined as (dx/x), where x is de mean value and dx the standard devition of the variable. | 0.0 | +| pd_length | | (0,inf) defined as (dx/x), where x is de mean value and dx the standard devition of the variable. | 0.0 | +| pd_theta | | (0,360) defined as (dx/x), where x is de mean value and dx the standard devition of the variable. | 0.0 | +| pd_Phi | | (0,360) defined as (dx/x), where x is de mean value and dx the standard devition of the variable | 0.0 | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcxtrace-comps/sasmodels/SasView_cylinder_aniso.comp) for `SasView_cylinder_aniso.comp`. + +--- + +*Generated on mcxtrace 3.99.99.* \ No newline at end of file diff --git a/mcxtrace-comps/sasmodels/SasView_dab.md b/mcxtrace-comps/sasmodels/SasView_dab.md new file mode 100644 index 000000000..a6a941429 --- /dev/null +++ b/mcxtrace-comps/sasmodels/SasView_dab.md @@ -0,0 +1,55 @@ +# The `SasView_dab` Component + +*McXtrace: SasView dab model component as sample description.* + +## Identification + +- **Site:** +- **Author:** Jose Robledo +- **Origin:** FZJ / DTU / ESS DMSC +- **Date:** + +## Description + +```text +SasView_dab component, generated from dab.c in sasmodels. + +Example: +SasView_dab(cor_length, +model_scale=1.0, model_abs=0.0, xwidth=0.01, yheight=0.01, zdepth=0.005, R=0, +int target_index=1, target_x=0, target_y=0, target_z=1, +focus_xw=0.5, focus_yh=0.5, focus_aw=0, focus_ah=0, focus_r=0, +pd_cor_length=0.0) +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| cor_length | Ang | ([0, inf]) correlation length. | 50.0 | +| model_scale | | Global scale factor for scattering kernel. For systems without inter-particle interference, the form factors can be related to the scattering intensity by the particle volume fraction. | 1.0 | +| model_abs | | Absorption cross section density at 2200 m/s. | 0.0 | +| xwidth | m | ([-inf, inf]) Horiz. dimension of sample, as a width. | 0.01 | +| yheight | m | ([-inf, inf]) vert . dimension of sample, as a height for cylinder/box | 0.01 | +| zdepth | m | ([-inf, inf]) depth of sample | 0.005 | +| R | m | Outer radius of sample in (x,z) plane for cylinder/sphere. | 0 | +| target_x | m | relative focus target position. | 0 | +| target_y | m | relative focus target position. | 0 | +| target_z | m | relative focus target position. | 1 | +| target_index | | Relative index of component to focus at, e.g. next is +1. | 1 | +| focus_xw | m | horiz. dimension of a rectangular area. | 0.5 | +| focus_yh | m | , vert. dimension of a rectangular area. | 0.5 | +| focus_aw | deg | , horiz. angular dimension of a rectangular area. | 0 | +| focus_ah | deg | , vert. angular dimension of a rectangular area. | 0 | +| focus_r | m | case of circular focusing, focusing radius. | 0 | +| pd_cor_length | | (0,inf) defined as (dx/x), where x is de mean value and dx the standard devition of the variable | 0.0 | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcxtrace-comps/sasmodels/SasView_dab.comp) for `SasView_dab.comp`. + +--- + +*Generated on mcxtrace 3.99.99.* \ No newline at end of file diff --git a/mcxtrace-comps/sasmodels/SasView_ellipsoid.md b/mcxtrace-comps/sasmodels/SasView_ellipsoid.md new file mode 100644 index 000000000..987991997 --- /dev/null +++ b/mcxtrace-comps/sasmodels/SasView_ellipsoid.md @@ -0,0 +1,59 @@ +# The `SasView_ellipsoid` Component + +*McXtrace: SasView ellipsoid model component as sample description.* + +## Identification + +- **Site:** +- **Author:** Jose Robledo +- **Origin:** FZJ / DTU / ESS DMSC +- **Date:** + +## Description + +```text +SasView_ellipsoid component, generated from ellipsoid.c in sasmodels. + +Example: +SasView_ellipsoid(sld, sld_solvent, radius_polar, radius_equatorial, +model_scale=1.0, model_abs=0.0, xwidth=0.01, yheight=0.01, zdepth=0.005, R=0, +int target_index=1, target_x=0, target_y=0, target_z=1, +focus_xw=0.5, focus_yh=0.5, focus_aw=0, focus_ah=0, focus_r=0, +pd_radius_polar=0.0, pd_radius_equatorial=0.0) +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| sld | 1e-6/Ang^2 | ([-inf, inf]) Ellipsoid scattering length density. | 4 | +| sld_solvent | 1e-6/Ang^2 | ([-inf, inf]) Solvent scattering length density. | 1 | +| radius_polar | Ang | ([0, inf]) Polar radius. | 20 | +| radius_equatorial | Ang | ([0, inf]) Equatorial radius. | 400 | +| model_scale | | Global scale factor for scattering kernel. For systems without inter-particle interference, the form factors can be related to the scattering intensity by the particle volume fraction. | 1.0 | +| model_abs | | Absorption cross section density at 2200 m/s. | 0.0 | +| xwidth | m | ([-inf, inf]) Horiz. dimension of sample, as a width. | 0.01 | +| yheight | m | ([-inf, inf]) vert . dimension of sample, as a height for cylinder/box | 0.01 | +| zdepth | m | ([-inf, inf]) depth of sample | 0.005 | +| R | m | Outer radius of sample in (x,z) plane for cylinder/sphere. | 0 | +| target_x | m | relative focus target position. | 0 | +| target_y | m | relative focus target position. | 0 | +| target_z | m | relative focus target position. | 1 | +| target_index | | Relative index of component to focus at, e.g. next is +1. | 1 | +| focus_xw | m | horiz. dimension of a rectangular area. | 0.5 | +| focus_yh | m | , vert. dimension of a rectangular area. | 0.5 | +| focus_aw | deg | , horiz. angular dimension of a rectangular area. | 0 | +| focus_ah | deg | , vert. angular dimension of a rectangular area. | 0 | +| focus_r | m | case of circular focusing, focusing radius. | 0 | +| pd_radius_polar | | (0,inf) defined as (dx/x), where x is de mean value and dx the standard devition of the variable. | 0.0 | +| pd_radius_equatorial | | (0,inf) defined as (dx/x), where x is de mean value and dx the standard devition of the variable | 0.0 | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcxtrace-comps/sasmodels/SasView_ellipsoid.comp) for `SasView_ellipsoid.comp`. + +--- + +*Generated on mcxtrace 3.99.99.* \ No newline at end of file diff --git a/mcxtrace-comps/sasmodels/SasView_ellipsoid_aniso.md b/mcxtrace-comps/sasmodels/SasView_ellipsoid_aniso.md new file mode 100644 index 000000000..f7510f770 --- /dev/null +++ b/mcxtrace-comps/sasmodels/SasView_ellipsoid_aniso.md @@ -0,0 +1,63 @@ +# The `SasView_ellipsoid_aniso` Component + +*McXtrace: SasView ellipsoid model component as sample description.* + +## Identification + +- **Site:** +- **Author:** Jose Robledo +- **Origin:** FZJ / DTU / ESS DMSC +- **Date:** + +## Description + +```text +SasView_ellipsoid component, generated from ellipsoid.c in sasmodels. + +Example: +SasView_ellipsoid_aniso(sld, sld_solvent, radius_polar, radius_equatorial, theta, Phi, +model_scale=1.0, model_abs=0.0, xwidth=0.01, yheight=0.01, zdepth=0.005, R=0, +int target_index=1, target_x=0, target_y=0, target_z=1, +focus_xw=0.5, focus_yh=0.5, focus_aw=0, focus_ah=0, focus_r=0, +pd_radius_polar=0.0, pd_radius_equatorial=0.0, pd_theta=0.0, pd_Phi=0.0) +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| sld | 1e-6/Ang^2 | ([-inf, inf]) Ellipsoid scattering length density. | 4 | +| sld_solvent | 1e-6/Ang^2 | ([-inf, inf]) Solvent scattering length density. | 1 | +| radius_polar | Ang | ([0, inf]) Polar radius. | 20 | +| radius_equatorial | Ang | ([0, inf]) Equatorial radius. | 400 | +| theta | | | 60 | +| Phi | | | 60 | +| model_scale | | Global scale factor for scattering kernel. For systems without inter-particle interference, the form factors can be related to the scattering intensity by the particle volume fraction. | 1.0 | +| model_abs | | Absorption cross section density at 2200 m/s. | 0.0 | +| xwidth | m | ([-inf, inf]) Horiz. dimension of sample, as a width. | 0.01 | +| yheight | m | ([-inf, inf]) vert . dimension of sample, as a height for cylinder/box | 0.01 | +| zdepth | m | ([-inf, inf]) depth of sample | 0.005 | +| R | m | Outer radius of sample in (x,z) plane for cylinder/sphere. | 0 | +| target_x | m | relative focus target position. | 0 | +| target_y | m | relative focus target position. | 0 | +| target_z | m | relative focus target position. | 1 | +| target_index | | Relative index of component to focus at, e.g. next is +1. | 1 | +| focus_xw | m | horiz. dimension of a rectangular area. | 0.5 | +| focus_yh | m | , vert. dimension of a rectangular area. | 0.5 | +| focus_aw | deg | , horiz. angular dimension of a rectangular area. | 0 | +| focus_ah | deg | , vert. angular dimension of a rectangular area. | 0 | +| focus_r | m | case of circular focusing, focusing radius. | 0 | +| pd_radius_polar | | (0,inf) defined as (dx/x), where x is de mean value and dx the standard devition of the variable. | 0.0 | +| pd_radius_equatorial | | (0,inf) defined as (dx/x), where x is de mean value and dx the standard devition of the variable. | 0.0 | +| pd_theta | | (0,360) defined as (dx/x), where x is de mean value and dx the standard devition of the variable. | 0.0 | +| pd_Phi | | (0,360) defined as (dx/x), where x is de mean value and dx the standard devition of the variable | 0.0 | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcxtrace-comps/sasmodels/SasView_ellipsoid_aniso.comp) for `SasView_ellipsoid_aniso.comp`. + +--- + +*Generated on mcxtrace 3.99.99.* \ No newline at end of file diff --git a/mcxtrace-comps/sasmodels/SasView_elliptical_cylinder.md b/mcxtrace-comps/sasmodels/SasView_elliptical_cylinder.md new file mode 100644 index 000000000..fd77c5953 --- /dev/null +++ b/mcxtrace-comps/sasmodels/SasView_elliptical_cylinder.md @@ -0,0 +1,60 @@ +# The `SasView_elliptical_cylinder` Component + +*McXtrace: SasView elliptical_cylinder model component as sample description.* + +## Identification + +- **Site:** +- **Author:** Jose Robledo +- **Origin:** FZJ / DTU / ESS DMSC +- **Date:** + +## Description + +```text +SasView_elliptical_cylinder component, generated from elliptical_cylinder.c in sasmodels. + +Example: +SasView_elliptical_cylinder(radius_minor, r_ratio, length, sld, sld_solvent, +model_scale=1.0, model_abs=0.0, xwidth=0.01, yheight=0.01, zdepth=0.005, R=0, +int target_index=1, target_x=0, target_y=0, target_z=1, +focus_xw=0.5, focus_yh=0.5, focus_aw=0, focus_ah=0, focus_r=0, +pd_radius_minor=0.0, pd_length=0.0) +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| radius_minor | Ang | ([0, inf]) Ellipse minor radius. | 20.0 | +| r_ratio | | ([1, inf]) Ratio of major radius over minor radius. | 1.5 | +| length | Ang | ([1, inf]) Length of the cylinder. | 400.0 | +| sld | 1e-6/Ang^2 | ([-inf, inf]) Cylinder scattering length density. | 4.0 | +| sld_solvent | 1e-6/Ang^2 | ([-inf, inf]) Solvent scattering length density. | 1.0 | +| model_scale | | Global scale factor for scattering kernel. For systems without inter-particle interference, the form factors can be related to the scattering intensity by the particle volume fraction. | 1.0 | +| model_abs | | Absorption cross section density at 2200 m/s. | 0.0 | +| xwidth | m | ([-inf, inf]) Horiz. dimension of sample, as a width. | 0.01 | +| yheight | m | ([-inf, inf]) vert . dimension of sample, as a height for cylinder/box | 0.01 | +| zdepth | m | ([-inf, inf]) depth of sample | 0.005 | +| R | m | Outer radius of sample in (x,z) plane for cylinder/sphere. | 0 | +| target_x | m | relative focus target position. | 0 | +| target_y | m | relative focus target position. | 0 | +| target_z | m | relative focus target position. | 1 | +| target_index | | Relative index of component to focus at, e.g. next is +1. | 1 | +| focus_xw | m | horiz. dimension of a rectangular area. | 0.5 | +| focus_yh | m | , vert. dimension of a rectangular area. | 0.5 | +| focus_aw | deg | , horiz. angular dimension of a rectangular area. | 0 | +| focus_ah | deg | , vert. angular dimension of a rectangular area. | 0 | +| focus_r | m | case of circular focusing, focusing radius. | 0 | +| pd_radius_minor | | (0,inf) defined as (dx/x), where x is de mean value and dx the standard devition of the variable. | 0.0 | +| pd_length | | (0,inf) defined as (dx/x), where x is de mean value and dx the standard devition of the variable | 0.0 | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcxtrace-comps/sasmodels/SasView_elliptical_cylinder.comp) for `SasView_elliptical_cylinder.comp`. + +--- + +*Generated on mcxtrace 3.99.99.* \ No newline at end of file diff --git a/mcxtrace-comps/sasmodels/SasView_elliptical_cylinder_aniso.md b/mcxtrace-comps/sasmodels/SasView_elliptical_cylinder_aniso.md new file mode 100644 index 000000000..ae19c1f88 --- /dev/null +++ b/mcxtrace-comps/sasmodels/SasView_elliptical_cylinder_aniso.md @@ -0,0 +1,66 @@ +# The `SasView_elliptical_cylinder_aniso` Component + +*McXtrace: SasView elliptical_cylinder model component as sample description.* + +## Identification + +- **Site:** +- **Author:** Jose Robledo +- **Origin:** FZJ / DTU / ESS DMSC +- **Date:** + +## Description + +```text +SasView_elliptical_cylinder component, generated from elliptical_cylinder.c in sasmodels. + +Example: +SasView_elliptical_cylinder_aniso(radius_minor, r_ratio, length, sld, sld_solvent, theta, Phi, Psi, +model_scale=1.0, model_abs=0.0, xwidth=0.01, yheight=0.01, zdepth=0.005, R=0, +int target_index=1, target_x=0, target_y=0, target_z=1, +focus_xw=0.5, focus_yh=0.5, focus_aw=0, focus_ah=0, focus_r=0, +pd_radius_minor=0.0, pd_length=0.0, pd_theta=0.0, pd_Phi=0.0, pd_Psi=0.0) +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| radius_minor | Ang | ([0, inf]) Ellipse minor radius. | 20.0 | +| r_ratio | | ([1, inf]) Ratio of major radius over minor radius. | 1.5 | +| length | Ang | ([1, inf]) Length of the cylinder. | 400.0 | +| sld | 1e-6/Ang^2 | ([-inf, inf]) Cylinder scattering length density. | 4.0 | +| sld_solvent | 1e-6/Ang^2 | ([-inf, inf]) Solvent scattering length density. | 1.0 | +| theta | | | 90.0 | +| Phi | | | 0 | +| Psi | | | 0 | +| model_scale | | Global scale factor for scattering kernel. For systems without inter-particle interference, the form factors can be related to the scattering intensity by the particle volume fraction. | 1.0 | +| model_abs | | Absorption cross section density at 2200 m/s. | 0.0 | +| xwidth | m | ([-inf, inf]) Horiz. dimension of sample, as a width. | 0.01 | +| yheight | m | ([-inf, inf]) vert . dimension of sample, as a height for cylinder/box | 0.01 | +| zdepth | m | ([-inf, inf]) depth of sample | 0.005 | +| R | m | Outer radius of sample in (x,z) plane for cylinder/sphere. | 0 | +| target_x | m | relative focus target position. | 0 | +| target_y | m | relative focus target position. | 0 | +| target_z | m | relative focus target position. | 1 | +| target_index | | Relative index of component to focus at, e.g. next is +1. | 1 | +| focus_xw | m | horiz. dimension of a rectangular area. | 0.5 | +| focus_yh | m | , vert. dimension of a rectangular area. | 0.5 | +| focus_aw | deg | , horiz. angular dimension of a rectangular area. | 0 | +| focus_ah | deg | , vert. angular dimension of a rectangular area. | 0 | +| focus_r | m | case of circular focusing, focusing radius. | 0 | +| pd_radius_minor | | (0,inf) defined as (dx/x), where x is de mean value and dx the standard devition of the variable. | 0.0 | +| pd_length | | (0,inf) defined as (dx/x), where x is de mean value and dx the standard devition of the variable. | 0.0 | +| pd_theta | | (0,360) defined as (dx/x), where x is de mean value and dx the standard devition of the variable. | 0.0 | +| pd_Phi | | (0,360) defined as (dx/x), where x is de mean value and dx the standard devition of the variable. | 0.0 | +| pd_Psi | | (0,360) defined as (dx/x), where x is de mean value and dx the standard devition of the variable | 0.0 | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcxtrace-comps/sasmodels/SasView_elliptical_cylinder_aniso.comp) for `SasView_elliptical_cylinder_aniso.comp`. + +--- + +*Generated on mcxtrace 3.99.99.* \ No newline at end of file diff --git a/mcxtrace-comps/sasmodels/SasView_fcc_paracrystal.md b/mcxtrace-comps/sasmodels/SasView_fcc_paracrystal.md new file mode 100644 index 000000000..8f25d5826 --- /dev/null +++ b/mcxtrace-comps/sasmodels/SasView_fcc_paracrystal.md @@ -0,0 +1,59 @@ +# The `SasView_fcc_paracrystal` Component + +*McXtrace: SasView fcc_paracrystal model component as sample description.* + +## Identification + +- **Site:** +- **Author:** Jose Robledo +- **Origin:** FZJ / DTU / ESS DMSC +- **Date:** + +## Description + +```text +SasView_fcc_paracrystal component, generated from fcc_paracrystal.c in sasmodels. + +Example: +SasView_fcc_paracrystal(dnn, d_factor, radius, sld, sld_solvent, +model_scale=1.0, model_abs=0.0, xwidth=0.01, yheight=0.01, zdepth=0.005, R=0, +int target_index=1, target_x=0, target_y=0, target_z=1, +focus_xw=0.5, focus_yh=0.5, focus_aw=0, focus_ah=0, focus_r=0, +pd_radius=0.0) +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| dnn | Ang | ([-inf, inf]) Nearest neighbour distance. | 220 | +| d_factor | | ([-inf, inf]) Paracrystal distortion factor. | 0.06 | +| radius | Ang | ([0, inf]) Particle radius. | 40 | +| sld | 1e-6/Ang^2 | ([-inf, inf]) Particle scattering length density. | 4 | +| sld_solvent | 1e-6/Ang^2 | ([-inf, inf]) Solvent scattering length density. | 1 | +| model_scale | | Global scale factor for scattering kernel. For systems without inter-particle interference, the form factors can be related to the scattering intensity by the particle volume fraction. | 1.0 | +| model_abs | | Absorption cross section density at 2200 m/s. | 0.0 | +| xwidth | m | ([-inf, inf]) Horiz. dimension of sample, as a width. | 0.01 | +| yheight | m | ([-inf, inf]) vert . dimension of sample, as a height for cylinder/box | 0.01 | +| zdepth | m | ([-inf, inf]) depth of sample | 0.005 | +| R | m | Outer radius of sample in (x,z) plane for cylinder/sphere. | 0 | +| target_x | m | relative focus target position. | 0 | +| target_y | m | relative focus target position. | 0 | +| target_z | m | relative focus target position. | 1 | +| target_index | | Relative index of component to focus at, e.g. next is +1. | 1 | +| focus_xw | m | horiz. dimension of a rectangular area. | 0.5 | +| focus_yh | m | , vert. dimension of a rectangular area. | 0.5 | +| focus_aw | deg | , horiz. angular dimension of a rectangular area. | 0 | +| focus_ah | deg | , vert. angular dimension of a rectangular area. | 0 | +| focus_r | m | case of circular focusing, focusing radius. | 0 | +| pd_radius | | (0,inf) defined as (dx/x), where x is de mean value and dx the standard devition of the variable | 0.0 | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcxtrace-comps/sasmodels/SasView_fcc_paracrystal.comp) for `SasView_fcc_paracrystal.comp`. + +--- + +*Generated on mcxtrace 3.99.99.* \ No newline at end of file diff --git a/mcxtrace-comps/sasmodels/SasView_fcc_paracrystal_aniso.md b/mcxtrace-comps/sasmodels/SasView_fcc_paracrystal_aniso.md new file mode 100644 index 000000000..a27a821db --- /dev/null +++ b/mcxtrace-comps/sasmodels/SasView_fcc_paracrystal_aniso.md @@ -0,0 +1,65 @@ +# The `SasView_fcc_paracrystal_aniso` Component + +*McXtrace: SasView fcc_paracrystal model component as sample description.* + +## Identification + +- **Site:** +- **Author:** Jose Robledo +- **Origin:** FZJ / DTU / ESS DMSC +- **Date:** + +## Description + +```text +SasView_fcc_paracrystal component, generated from fcc_paracrystal.c in sasmodels. + +Example: +SasView_fcc_paracrystal_aniso(dnn, d_factor, radius, sld, sld_solvent, theta, Phi, Psi, +model_scale=1.0, model_abs=0.0, xwidth=0.01, yheight=0.01, zdepth=0.005, R=0, +int target_index=1, target_x=0, target_y=0, target_z=1, +focus_xw=0.5, focus_yh=0.5, focus_aw=0, focus_ah=0, focus_r=0, +pd_radius=0.0, pd_theta=0.0, pd_Phi=0.0, pd_Psi=0.0) +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| dnn | Ang | ([-inf, inf]) Nearest neighbour distance. | 220 | +| d_factor | | ([-inf, inf]) Paracrystal distortion factor. | 0.06 | +| radius | Ang | ([0, inf]) Particle radius. | 40 | +| sld | 1e-6/Ang^2 | ([-inf, inf]) Particle scattering length density. | 4 | +| sld_solvent | 1e-6/Ang^2 | ([-inf, inf]) Solvent scattering length density. | 1 | +| theta | | | 60 | +| Phi | | | 60 | +| Psi | | | 60 | +| model_scale | | Global scale factor for scattering kernel. For systems without inter-particle interference, the form factors can be related to the scattering intensity by the particle volume fraction. | 1.0 | +| model_abs | | Absorption cross section density at 2200 m/s. | 0.0 | +| xwidth | m | ([-inf, inf]) Horiz. dimension of sample, as a width. | 0.01 | +| yheight | m | ([-inf, inf]) vert . dimension of sample, as a height for cylinder/box | 0.01 | +| zdepth | m | ([-inf, inf]) depth of sample | 0.005 | +| R | m | Outer radius of sample in (x,z) plane for cylinder/sphere. | 0 | +| target_x | m | relative focus target position. | 0 | +| target_y | m | relative focus target position. | 0 | +| target_z | m | relative focus target position. | 1 | +| target_index | | Relative index of component to focus at, e.g. next is +1. | 1 | +| focus_xw | m | horiz. dimension of a rectangular area. | 0.5 | +| focus_yh | m | , vert. dimension of a rectangular area. | 0.5 | +| focus_aw | deg | , horiz. angular dimension of a rectangular area. | 0 | +| focus_ah | deg | , vert. angular dimension of a rectangular area. | 0 | +| focus_r | m | case of circular focusing, focusing radius. | 0 | +| pd_radius | | (0,inf) defined as (dx/x), where x is de mean value and dx the standard devition of the variable. | 0.0 | +| pd_theta | | (0,360) defined as (dx/x), where x is de mean value and dx the standard devition of the variable. | 0.0 | +| pd_Phi | | (0,360) defined as (dx/x), where x is de mean value and dx the standard devition of the variable. | 0.0 | +| pd_Psi | | (0,360) defined as (dx/x), where x is de mean value and dx the standard devition of the variable | 0.0 | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcxtrace-comps/sasmodels/SasView_fcc_paracrystal_aniso.comp) for `SasView_fcc_paracrystal_aniso.comp`. + +--- + +*Generated on mcxtrace 3.99.99.* \ No newline at end of file diff --git a/mcxtrace-comps/sasmodels/SasView_flexible_cylinder.md b/mcxtrace-comps/sasmodels/SasView_flexible_cylinder.md new file mode 100644 index 000000000..2f3278ff0 --- /dev/null +++ b/mcxtrace-comps/sasmodels/SasView_flexible_cylinder.md @@ -0,0 +1,61 @@ +# The `SasView_flexible_cylinder` Component + +*McXtrace: SasView flexible_cylinder model component as sample description.* + +## Identification + +- **Site:** +- **Author:** Jose Robledo +- **Origin:** FZJ / DTU / ESS DMSC +- **Date:** + +## Description + +```text +SasView_flexible_cylinder component, generated from flexible_cylinder.c in sasmodels. + +Example: +SasView_flexible_cylinder(length, kuhn_length, radius, sld, sld_solvent, +model_scale=1.0, model_abs=0.0, xwidth=0.01, yheight=0.01, zdepth=0.005, R=0, +int target_index=1, target_x=0, target_y=0, target_z=1, +focus_xw=0.5, focus_yh=0.5, focus_aw=0, focus_ah=0, focus_r=0, +pd_length=0.0, pd_kuhn_length=0.0, pd_radius=0.0) +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| length | Ang | ([0, inf]) Length of the flexible cylinder. | 1000.0 | +| kuhn_length | Ang | ([0, inf]) Kuhn length of the flexible cylinder. | 100.0 | +| radius | Ang | ([0, inf]) Radius of the flexible cylinder. | 20.0 | +| sld | 1e-6/Ang^2 | ([-inf, inf]) Cylinder scattering length density. | 1.0 | +| sld_solvent | 1e-6/Ang^2 | ([-inf, inf]) Solvent scattering length density. | 6.3 | +| model_scale | | Global scale factor for scattering kernel. For systems without inter-particle interference, the form factors can be related to the scattering intensity by the particle volume fraction. | 1.0 | +| model_abs | | Absorption cross section density at 2200 m/s. | 0.0 | +| xwidth | m | ([-inf, inf]) Horiz. dimension of sample, as a width. | 0.01 | +| yheight | m | ([-inf, inf]) vert . dimension of sample, as a height for cylinder/box | 0.01 | +| zdepth | m | ([-inf, inf]) depth of sample | 0.005 | +| R | m | Outer radius of sample in (x,z) plane for cylinder/sphere. | 0 | +| target_x | m | relative focus target position. | 0 | +| target_y | m | relative focus target position. | 0 | +| target_z | m | relative focus target position. | 1 | +| target_index | | Relative index of component to focus at, e.g. next is +1. | 1 | +| focus_xw | m | horiz. dimension of a rectangular area. | 0.5 | +| focus_yh | m | , vert. dimension of a rectangular area. | 0.5 | +| focus_aw | deg | , horiz. angular dimension of a rectangular area. | 0 | +| focus_ah | deg | , vert. angular dimension of a rectangular area. | 0 | +| focus_r | m | case of circular focusing, focusing radius. | 0 | +| pd_length | | (0,inf) defined as (dx/x), where x is de mean value and dx the standard devition of the variable. | 0.0 | +| pd_kuhn_length | | (0,inf) defined as (dx/x), where x is de mean value and dx the standard devition of the variable. | 0.0 | +| pd_radius | | (0,inf) defined as (dx/x), where x is de mean value and dx the standard devition of the variable | 0.0 | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcxtrace-comps/sasmodels/SasView_flexible_cylinder.comp) for `SasView_flexible_cylinder.comp`. + +--- + +*Generated on mcxtrace 3.99.99.* \ No newline at end of file diff --git a/mcxtrace-comps/sasmodels/SasView_flexible_cylinder_elliptical.md b/mcxtrace-comps/sasmodels/SasView_flexible_cylinder_elliptical.md new file mode 100644 index 000000000..0f4d418fb --- /dev/null +++ b/mcxtrace-comps/sasmodels/SasView_flexible_cylinder_elliptical.md @@ -0,0 +1,62 @@ +# The `SasView_flexible_cylinder_elliptical` Component + +*McXtrace: SasView flexible_cylinder_elliptical model component as sample description.* + +## Identification + +- **Site:** +- **Author:** Jose Robledo +- **Origin:** FZJ / DTU / ESS DMSC +- **Date:** + +## Description + +```text +SasView_flexible_cylinder_elliptical component, generated from flexible_cylinder_elliptical.c in sasmodels. + +Example: +SasView_flexible_cylinder_elliptical(length, kuhn_length, radius, axis_ratio, sld, sld_solvent, +model_scale=1.0, model_abs=0.0, xwidth=0.01, yheight=0.01, zdepth=0.005, R=0, +int target_index=1, target_x=0, target_y=0, target_z=1, +focus_xw=0.5, focus_yh=0.5, focus_aw=0, focus_ah=0, focus_r=0, +pd_length=0.0, pd_kuhn_length=0.0, pd_radius=0.0) +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| length | Ang | ([0, inf]) Length of the flexible cylinder. | 1000.0 | +| kuhn_length | Ang | ([0, inf]) Kuhn length of the flexible cylinder. | 100.0 | +| radius | Ang | ([1, inf]) Radius of the flexible cylinder. | 20.0 | +| axis_ratio | | ([0, inf]) Axis_ratio (major_radius/minor_radius. | 1.5 | +| sld | 1e-6/Ang^2 | ([-inf, inf]) Cylinder scattering length density. | 1.0 | +| sld_solvent | 1e-6/Ang^2 | ([-inf, inf]) Solvent scattering length density. | 6.3 | +| model_scale | | Global scale factor for scattering kernel. For systems without inter-particle interference, the form factors can be related to the scattering intensity by the particle volume fraction. | 1.0 | +| model_abs | | Absorption cross section density at 2200 m/s. | 0.0 | +| xwidth | m | ([-inf, inf]) Horiz. dimension of sample, as a width. | 0.01 | +| yheight | m | ([-inf, inf]) vert . dimension of sample, as a height for cylinder/box | 0.01 | +| zdepth | m | ([-inf, inf]) depth of sample | 0.005 | +| R | m | Outer radius of sample in (x,z) plane for cylinder/sphere. | 0 | +| target_x | m | relative focus target position. | 0 | +| target_y | m | relative focus target position. | 0 | +| target_z | m | relative focus target position. | 1 | +| target_index | | Relative index of component to focus at, e.g. next is +1. | 1 | +| focus_xw | m | horiz. dimension of a rectangular area. | 0.5 | +| focus_yh | m | , vert. dimension of a rectangular area. | 0.5 | +| focus_aw | deg | , horiz. angular dimension of a rectangular area. | 0 | +| focus_ah | deg | , vert. angular dimension of a rectangular area. | 0 | +| focus_r | m | case of circular focusing, focusing radius. | 0 | +| pd_length | | (0,inf) defined as (dx/x), where x is de mean value and dx the standard devition of the variable. | 0.0 | +| pd_kuhn_length | | (0,inf) defined as (dx/x), where x is de mean value and dx the standard devition of the variable. | 0.0 | +| pd_radius | | (0,inf) defined as (dx/x), where x is de mean value and dx the standard devition of the variable | 0.0 | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcxtrace-comps/sasmodels/SasView_flexible_cylinder_elliptical.comp) for `SasView_flexible_cylinder_elliptical.comp`. + +--- + +*Generated on mcxtrace 3.99.99.* \ No newline at end of file diff --git a/mcxtrace-comps/sasmodels/SasView_fractal.md b/mcxtrace-comps/sasmodels/SasView_fractal.md new file mode 100644 index 000000000..df09e6ed7 --- /dev/null +++ b/mcxtrace-comps/sasmodels/SasView_fractal.md @@ -0,0 +1,61 @@ +# The `SasView_fractal` Component + +*McXtrace: SasView fractal model component as sample description.* + +## Identification + +- **Site:** +- **Author:** Jose Robledo +- **Origin:** FZJ / DTU / ESS DMSC +- **Date:** + +## Description + +```text +SasView_fractal component, generated from fractal.c in sasmodels. + +Example: +SasView_fractal(volfraction, radius, fractal_dim, cor_length, sld_block, sld_solvent, +model_scale=1.0, model_abs=0.0, xwidth=0.01, yheight=0.01, zdepth=0.005, R=0, +int target_index=1, target_x=0, target_y=0, target_z=1, +focus_xw=0.5, focus_yh=0.5, focus_aw=0, focus_ah=0, focus_r=0, +pd_radius=0.0, pd_cor_length=0.0) +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| volfraction | | ([0.0, 1]) volume fraction of blocks. | 0.05 | +| radius | Ang | ([0.0, inf]) radius of particles. | 5.0 | +| fractal_dim | | ([0.0, 6.0]) fractal dimension. | 2.0 | +| cor_length | Ang | ([0.0, inf]) cluster correlation length. | 100.0 | +| sld_block | 1e-6/Ang^2 | ([-inf, inf]) scattering length density of particles. | 2.0 | +| sld_solvent | 1e-6/Ang^2 | ([-inf, inf]) scattering length density of solvent. | 6.4 | +| model_scale | | Global scale factor for scattering kernel. For systems without inter-particle interference, the form factors can be related to the scattering intensity by the particle volume fraction. | 1.0 | +| model_abs | | Absorption cross section density at 2200 m/s. | 0.0 | +| xwidth | m | ([-inf, inf]) Horiz. dimension of sample, as a width. | 0.01 | +| yheight | m | ([-inf, inf]) vert . dimension of sample, as a height for cylinder/box | 0.01 | +| zdepth | m | ([-inf, inf]) depth of sample | 0.005 | +| R | m | Outer radius of sample in (x,z) plane for cylinder/sphere. | 0 | +| target_x | m | relative focus target position. | 0 | +| target_y | m | relative focus target position. | 0 | +| target_z | m | relative focus target position. | 1 | +| target_index | | Relative index of component to focus at, e.g. next is +1. | 1 | +| focus_xw | m | horiz. dimension of a rectangular area. | 0.5 | +| focus_yh | m | , vert. dimension of a rectangular area. | 0.5 | +| focus_aw | deg | , horiz. angular dimension of a rectangular area. | 0 | +| focus_ah | deg | , vert. angular dimension of a rectangular area. | 0 | +| focus_r | m | case of circular focusing, focusing radius. | 0 | +| pd_radius | | (0,inf) defined as (dx/x), where x is de mean value and dx the standard devition of the variable. | 0.0 | +| pd_cor_length | | (0,inf) defined as (dx/x), where x is de mean value and dx the standard devition of the variable | 0.0 | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcxtrace-comps/sasmodels/SasView_fractal.comp) for `SasView_fractal.comp`. + +--- + +*Generated on mcxtrace 3.99.99.* \ No newline at end of file diff --git a/mcxtrace-comps/sasmodels/SasView_fractal_core_shell.md b/mcxtrace-comps/sasmodels/SasView_fractal_core_shell.md new file mode 100644 index 000000000..c6878f56f --- /dev/null +++ b/mcxtrace-comps/sasmodels/SasView_fractal_core_shell.md @@ -0,0 +1,64 @@ +# The `SasView_fractal_core_shell` Component + +*McXtrace: SasView fractal_core_shell model component as sample description.* + +## Identification + +- **Site:** +- **Author:** Jose Robledo +- **Origin:** FZJ / DTU / ESS DMSC +- **Date:** + +## Description + +```text +SasView_fractal_core_shell component, generated from fractal_core_shell.c in sasmodels. + +Example: +SasView_fractal_core_shell(radius, thickness, sld_core, sld_shell, sld_solvent, volfraction, fractal_dim, cor_length, +model_scale=1.0, model_abs=0.0, xwidth=0.01, yheight=0.01, zdepth=0.005, R=0, +int target_index=1, target_x=0, target_y=0, target_z=1, +focus_xw=0.5, focus_yh=0.5, focus_aw=0, focus_ah=0, focus_r=0, +pd_radius=0.0, pd_thickness=0.0, pd_cor_length=0.0) +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| radius | Ang | ([0.0, inf]) Sphere core radius. | 60.0 | +| thickness | Ang | ([0.0, inf]) Sphere shell thickness. | 10.0 | +| sld_core | 1e-6/Ang^2 | ([-inf, inf]) Sphere core scattering length density. | 1.0 | +| sld_shell | 1e-6/Ang^2 | ([-inf, inf]) Sphere shell scattering length density. | 2.0 | +| sld_solvent | 1e-6/Ang^2 | ([-inf, inf]) Solvent scattering length density. | 3.0 | +| volfraction | | ([0.0, inf]) Volume fraction of building block spheres. | 0.05 | +| fractal_dim | | ([0.0, 6.0]) Fractal dimension. | 2.0 | +| cor_length | Ang | ([0.0, inf]) Correlation length of fractal-like aggregates. | 100.0 | +| model_scale | | Global scale factor for scattering kernel. For systems without inter-particle interference, the form factors can be related to the scattering intensity by the particle volume fraction. | 1.0 | +| model_abs | | Absorption cross section density at 2200 m/s. | 0.0 | +| xwidth | m | ([-inf, inf]) Horiz. dimension of sample, as a width. | 0.01 | +| yheight | m | ([-inf, inf]) vert . dimension of sample, as a height for cylinder/box | 0.01 | +| zdepth | m | ([-inf, inf]) depth of sample | 0.005 | +| R | m | Outer radius of sample in (x,z) plane for cylinder/sphere. | 0 | +| target_x | m | relative focus target position. | 0 | +| target_y | m | relative focus target position. | 0 | +| target_z | m | relative focus target position. | 1 | +| target_index | | Relative index of component to focus at, e.g. next is +1. | 1 | +| focus_xw | m | horiz. dimension of a rectangular area. | 0.5 | +| focus_yh | m | , vert. dimension of a rectangular area. | 0.5 | +| focus_aw | deg | , horiz. angular dimension of a rectangular area. | 0 | +| focus_ah | deg | , vert. angular dimension of a rectangular area. | 0 | +| focus_r | m | case of circular focusing, focusing radius. | 0 | +| pd_radius | | (0,inf) defined as (dx/x), where x is de mean value and dx the standard devition of the variable. | 0.0 | +| pd_thickness | | (0,inf) defined as (dx/x), where x is de mean value and dx the standard devition of the variable. | 0.0 | +| pd_cor_length | | (0,inf) defined as (dx/x), where x is de mean value and dx the standard devition of the variable | 0.0 | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcxtrace-comps/sasmodels/SasView_fractal_core_shell.comp) for `SasView_fractal_core_shell.comp`. + +--- + +*Generated on mcxtrace 3.99.99.* \ No newline at end of file diff --git a/mcxtrace-comps/sasmodels/SasView_fuzzy_sphere.md b/mcxtrace-comps/sasmodels/SasView_fuzzy_sphere.md new file mode 100644 index 000000000..c2f1ae5f1 --- /dev/null +++ b/mcxtrace-comps/sasmodels/SasView_fuzzy_sphere.md @@ -0,0 +1,58 @@ +# The `SasView_fuzzy_sphere` Component + +*McXtrace: SasView fuzzy_sphere model component as sample description.* + +## Identification + +- **Site:** +- **Author:** Jose Robledo +- **Origin:** FZJ / DTU / ESS DMSC +- **Date:** + +## Description + +```text +SasView_fuzzy_sphere component, generated from fuzzy_sphere.c in sasmodels. + +Example: +SasView_fuzzy_sphere(sld, sld_solvent, radius, fuzziness, +model_scale=1.0, model_abs=0.0, xwidth=0.01, yheight=0.01, zdepth=0.005, R=0, +int target_index=1, target_x=0, target_y=0, target_z=1, +focus_xw=0.5, focus_yh=0.5, focus_aw=0, focus_ah=0, focus_r=0, +pd_radius=0.0) +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| sld | 1e-6/Ang^2 | ([-inf, inf]) Particle scattering length density. | 1 | +| sld_solvent | 1e-6/Ang^2 | ([-inf, inf]) Solvent scattering length density. | 3 | +| radius | Ang | ([0, inf]) Sphere radius. | 60 | +| fuzziness | Ang | ([0, inf]) std deviation of Gaussian convolution for interface (must be << radius). | 10 | +| model_scale | | Global scale factor for scattering kernel. For systems without inter-particle interference, the form factors can be related to the scattering intensity by the particle volume fraction. | 1.0 | +| model_abs | | Absorption cross section density at 2200 m/s. | 0.0 | +| xwidth | m | ([-inf, inf]) Horiz. dimension of sample, as a width. | 0.01 | +| yheight | m | ([-inf, inf]) vert . dimension of sample, as a height for cylinder/box | 0.01 | +| zdepth | m | ([-inf, inf]) depth of sample | 0.005 | +| R | m | Outer radius of sample in (x,z) plane for cylinder/sphere. | 0 | +| target_x | m | relative focus target position. | 0 | +| target_y | m | relative focus target position. | 0 | +| target_z | m | relative focus target position. | 1 | +| target_index | | Relative index of component to focus at, e.g. next is +1. | 1 | +| focus_xw | m | horiz. dimension of a rectangular area. | 0.5 | +| focus_yh | m | , vert. dimension of a rectangular area. | 0.5 | +| focus_aw | deg | , horiz. angular dimension of a rectangular area. | 0 | +| focus_ah | deg | , vert. angular dimension of a rectangular area. | 0 | +| focus_r | m | case of circular focusing, focusing radius. | 0 | +| pd_radius | | (0,inf) defined as (dx/x), where x is de mean value and dx the standard devition of the variable | 0.0 | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcxtrace-comps/sasmodels/SasView_fuzzy_sphere.comp) for `SasView_fuzzy_sphere.comp`. + +--- + +*Generated on mcxtrace 3.99.99.* \ No newline at end of file diff --git a/mcxtrace-comps/sasmodels/SasView_gauss_lorentz_gel.md b/mcxtrace-comps/sasmodels/SasView_gauss_lorentz_gel.md new file mode 100644 index 000000000..3e2daace5 --- /dev/null +++ b/mcxtrace-comps/sasmodels/SasView_gauss_lorentz_gel.md @@ -0,0 +1,59 @@ +# The `SasView_gauss_lorentz_gel` Component + +*McXtrace: SasView gauss_lorentz_gel model component as sample description.* + +## Identification + +- **Site:** +- **Author:** Jose Robledo +- **Origin:** FZJ / DTU / ESS DMSC +- **Date:** + +## Description + +```text +SasView_gauss_lorentz_gel component, generated from gauss_lorentz_gel.c in sasmodels. + +Example: +SasView_gauss_lorentz_gel(gauss_scale, cor_length_static, lorentz_scale, cor_length_dynamic, +model_scale=1.0, model_abs=0.0, xwidth=0.01, yheight=0.01, zdepth=0.005, R=0, +int target_index=1, target_x=0, target_y=0, target_z=1, +focus_xw=0.5, focus_yh=0.5, focus_aw=0, focus_ah=0, focus_r=0, +pd_cor_length_static=0.0, pd_cor_length_dynamic=0.0) +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| gauss_scale | | ([-inf, inf]) Gauss scale factor. | 100.0 | +| cor_length_static | Ang | ([0, inf]) Static correlation length. | 100.0 | +| lorentz_scale | | ([-inf, inf]) Lorentzian scale factor. | 50.0 | +| cor_length_dynamic | Ang | ([0, inf]) Dynamic correlation length. | 20.0 | +| model_scale | | Global scale factor for scattering kernel. For systems without inter-particle interference, the form factors can be related to the scattering intensity by the particle volume fraction. | 1.0 | +| model_abs | | Absorption cross section density at 2200 m/s. | 0.0 | +| xwidth | m | ([-inf, inf]) Horiz. dimension of sample, as a width. | 0.01 | +| yheight | m | ([-inf, inf]) vert . dimension of sample, as a height for cylinder/box | 0.01 | +| zdepth | m | ([-inf, inf]) depth of sample | 0.005 | +| R | m | Outer radius of sample in (x,z) plane for cylinder/sphere. | 0 | +| target_x | m | relative focus target position. | 0 | +| target_y | m | relative focus target position. | 0 | +| target_z | m | relative focus target position. | 1 | +| target_index | | Relative index of component to focus at, e.g. next is +1. | 1 | +| focus_xw | m | horiz. dimension of a rectangular area. | 0.5 | +| focus_yh | m | , vert. dimension of a rectangular area. | 0.5 | +| focus_aw | deg | , horiz. angular dimension of a rectangular area. | 0 | +| focus_ah | deg | , vert. angular dimension of a rectangular area. | 0 | +| focus_r | m | case of circular focusing, focusing radius. | 0 | +| pd_cor_length_static | | (0,inf) defined as (dx/x), where x is de mean value and dx the standard devition of the variable. | 0.0 | +| pd_cor_length_dynamic | | (0,inf) defined as (dx/x), where x is de mean value and dx the standard devition of the variable | 0.0 | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcxtrace-comps/sasmodels/SasView_gauss_lorentz_gel.comp) for `SasView_gauss_lorentz_gel.comp`. + +--- + +*Generated on mcxtrace 3.99.99.* \ No newline at end of file diff --git a/mcxtrace-comps/sasmodels/SasView_gaussian_peak.md b/mcxtrace-comps/sasmodels/SasView_gaussian_peak.md new file mode 100644 index 000000000..96ae27e0b --- /dev/null +++ b/mcxtrace-comps/sasmodels/SasView_gaussian_peak.md @@ -0,0 +1,55 @@ +# The `SasView_gaussian_peak` Component + +*McXtrace: SasView gaussian_peak model component as sample description.* + +## Identification + +- **Site:** +- **Author:** Jose Robledo +- **Origin:** FZJ / DTU / ESS DMSC +- **Date:** + +## Description + +```text +SasView_gaussian_peak component, generated from gaussian_peak.c in sasmodels. + +Example: +SasView_gaussian_peak(peak_pos, sigma, +model_scale=1.0, model_abs=0.0, xwidth=0.01, yheight=0.01, zdepth=0.005, R=0, +int target_index=1, target_x=0, target_y=0, target_z=1, +focus_xw=0.5, focus_yh=0.5, focus_aw=0, focus_ah=0, focus_r=0, +) +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| peak_pos | 1/Ang | ([-inf, inf]) Peak position. | 0.05 | +| sigma | 1/Ang | ([0, inf]) Peak width (standard deviation). | 0.005 | +| model_scale | | Global scale factor for scattering kernel. For systems without inter-particle interference, the form factors can be related to the scattering intensity by the particle volume fraction. | 1.0 | +| model_abs | | Absorption cross section density at 2200 m/s. | 0.0 | +| xwidth | m | ([-inf, inf]) Horiz. dimension of sample, as a width. | 0.01 | +| yheight | m | ([-inf, inf]) vert . dimension of sample, as a height for cylinder/box | 0.01 | +| zdepth | m | ([-inf, inf]) depth of sample | 0.005 | +| R | m | Outer radius of sample in (x,z) plane for cylinder/sphere. | 0 | +| target_x | m | relative focus target position. | 0 | +| target_y | m | relative focus target position. | 0 | +| target_z | m | relative focus target position. | 1 | +| target_index | | Relative index of component to focus at, e.g. next is +1. | 1 | +| focus_xw | m | horiz. dimension of a rectangular area. | 0.5 | +| focus_yh | m | , vert. dimension of a rectangular area. | 0.5 | +| focus_aw | deg | , horiz. angular dimension of a rectangular area. | 0 | +| focus_ah | deg | , vert. angular dimension of a rectangular area. | 0 | +| focus_r | m | case of circular focusing, focusing radius. | 0 | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcxtrace-comps/sasmodels/SasView_gaussian_peak.comp) for `SasView_gaussian_peak.comp`. + +--- + +*Generated on mcxtrace 3.99.99.* \ No newline at end of file diff --git a/mcxtrace-comps/sasmodels/SasView_gel_fit.md b/mcxtrace-comps/sasmodels/SasView_gel_fit.md new file mode 100644 index 000000000..02a7ec52e --- /dev/null +++ b/mcxtrace-comps/sasmodels/SasView_gel_fit.md @@ -0,0 +1,60 @@ +# The `SasView_gel_fit` Component + +*McXtrace: SasView gel_fit model component as sample description.* + +## Identification + +- **Site:** +- **Author:** Jose Robledo +- **Origin:** FZJ / DTU / ESS DMSC +- **Date:** + +## Description + +```text +SasView_gel_fit component, generated from gel_fit.c in sasmodels. + +Example: +SasView_gel_fit(guinier_scale, lorentz_scale, rg, fractal_dim, cor_length, +model_scale=1.0, model_abs=0.0, xwidth=0.01, yheight=0.01, zdepth=0.005, R=0, +int target_index=1, target_x=0, target_y=0, target_z=1, +focus_xw=0.5, focus_yh=0.5, focus_aw=0, focus_ah=0, focus_r=0, +pd_rg=0.0, pd_cor_length=0.0) +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| guinier_scale | cm^-1 | ([-inf, inf]) Guinier term scale. | 1.7 | +| lorentz_scale | cm^-1 | ([-inf, inf]) Lorentz term scale. | 3.5 | +| rg | Ang | ([2, inf]) Radius of gyration. | 104.0 | +| fractal_dim | | ([0, inf]) Fractal exponent. | 2.0 | +| cor_length | Ang | ([0, inf]) Correlation length. | 16.0 | +| model_scale | | Global scale factor for scattering kernel. For systems without inter-particle interference, the form factors can be related to the scattering intensity by the particle volume fraction. | 1.0 | +| model_abs | | Absorption cross section density at 2200 m/s. | 0.0 | +| xwidth | m | ([-inf, inf]) Horiz. dimension of sample, as a width. | 0.01 | +| yheight | m | ([-inf, inf]) vert . dimension of sample, as a height for cylinder/box | 0.01 | +| zdepth | m | ([-inf, inf]) depth of sample | 0.005 | +| R | m | Outer radius of sample in (x,z) plane for cylinder/sphere. | 0 | +| target_x | m | relative focus target position. | 0 | +| target_y | m | relative focus target position. | 0 | +| target_z | m | relative focus target position. | 1 | +| target_index | | Relative index of component to focus at, e.g. next is +1. | 1 | +| focus_xw | m | horiz. dimension of a rectangular area. | 0.5 | +| focus_yh | m | , vert. dimension of a rectangular area. | 0.5 | +| focus_aw | deg | , horiz. angular dimension of a rectangular area. | 0 | +| focus_ah | deg | , vert. angular dimension of a rectangular area. | 0 | +| focus_r | m | case of circular focusing, focusing radius. | 0 | +| pd_rg | | (0,inf) defined as (dx/x), where x is de mean value and dx the standard devition of the variable. | 0.0 | +| pd_cor_length | | (0,inf) defined as (dx/x), where x is de mean value and dx the standard devition of the variable | 0.0 | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcxtrace-comps/sasmodels/SasView_gel_fit.comp) for `SasView_gel_fit.comp`. + +--- + +*Generated on mcxtrace 3.99.99.* \ No newline at end of file diff --git a/mcxtrace-comps/sasmodels/SasView_guinier.md b/mcxtrace-comps/sasmodels/SasView_guinier.md new file mode 100644 index 000000000..ae777438b --- /dev/null +++ b/mcxtrace-comps/sasmodels/SasView_guinier.md @@ -0,0 +1,55 @@ +# The `SasView_guinier` Component + +*McXtrace: SasView guinier model component as sample description.* + +## Identification + +- **Site:** +- **Author:** Jose Robledo +- **Origin:** FZJ / DTU / ESS DMSC +- **Date:** + +## Description + +```text +SasView_guinier component, generated from guinier.c in sasmodels. + +Example: +SasView_guinier(rg, +model_scale=1.0, model_abs=0.0, xwidth=0.01, yheight=0.01, zdepth=0.005, R=0, +int target_index=1, target_x=0, target_y=0, target_z=1, +focus_xw=0.5, focus_yh=0.5, focus_aw=0, focus_ah=0, focus_r=0, +pd_rg=0.0) +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| rg | Ang | ([-inf, inf]) Radius of Gyration. | 60.0 | +| model_scale | | Global scale factor for scattering kernel. For systems without inter-particle interference, the form factors can be related to the scattering intensity by the particle volume fraction. | 1.0 | +| model_abs | | Absorption cross section density at 2200 m/s. | 0.0 | +| xwidth | m | ([-inf, inf]) Horiz. dimension of sample, as a width. | 0.01 | +| yheight | m | ([-inf, inf]) vert . dimension of sample, as a height for cylinder/box | 0.01 | +| zdepth | m | ([-inf, inf]) depth of sample | 0.005 | +| R | m | Outer radius of sample in (x,z) plane for cylinder/sphere. | 0 | +| target_x | m | relative focus target position. | 0 | +| target_y | m | relative focus target position. | 0 | +| target_z | m | relative focus target position. | 1 | +| target_index | | Relative index of component to focus at, e.g. next is +1. | 1 | +| focus_xw | m | horiz. dimension of a rectangular area. | 0.5 | +| focus_yh | m | , vert. dimension of a rectangular area. | 0.5 | +| focus_aw | deg | , horiz. angular dimension of a rectangular area. | 0 | +| focus_ah | deg | , vert. angular dimension of a rectangular area. | 0 | +| focus_r | m | case of circular focusing, focusing radius. | 0 | +| pd_rg | | (0,inf) defined as (dx/x), where x is de mean value and dx the standard devition of the variable | 0.0 | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcxtrace-comps/sasmodels/SasView_guinier.comp) for `SasView_guinier.comp`. + +--- + +*Generated on mcxtrace 3.99.99.* \ No newline at end of file diff --git a/mcxtrace-comps/sasmodels/SasView_guinier_porod.md b/mcxtrace-comps/sasmodels/SasView_guinier_porod.md new file mode 100644 index 000000000..21ff9eaca --- /dev/null +++ b/mcxtrace-comps/sasmodels/SasView_guinier_porod.md @@ -0,0 +1,57 @@ +# The `SasView_guinier_porod` Component + +*McXtrace: SasView guinier_porod model component as sample description.* + +## Identification + +- **Site:** +- **Author:** Jose Robledo +- **Origin:** FZJ / DTU / ESS DMSC +- **Date:** + +## Description + +```text +SasView_guinier_porod component, generated from guinier_porod.c in sasmodels. + +Example: +SasView_guinier_porod(rg, s, porod_exp, +model_scale=1.0, model_abs=0.0, xwidth=0.01, yheight=0.01, zdepth=0.005, R=0, +int target_index=1, target_x=0, target_y=0, target_z=1, +focus_xw=0.5, focus_yh=0.5, focus_aw=0, focus_ah=0, focus_r=0, +pd_rg=0.0) +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| rg | Ang | ([0, inf]) Radius of gyration. | 60.0 | +| s | | ([0, inf]) Dimension variable. | 1.0 | +| porod_exp | | ([0, inf]) Porod exponent. | 3.0 | +| model_scale | | Global scale factor for scattering kernel. For systems without inter-particle interference, the form factors can be related to the scattering intensity by the particle volume fraction. | 1.0 | +| model_abs | | Absorption cross section density at 2200 m/s. | 0.0 | +| xwidth | m | ([-inf, inf]) Horiz. dimension of sample, as a width. | 0.01 | +| yheight | m | ([-inf, inf]) vert . dimension of sample, as a height for cylinder/box | 0.01 | +| zdepth | m | ([-inf, inf]) depth of sample | 0.005 | +| R | m | Outer radius of sample in (x,z) plane for cylinder/sphere. | 0 | +| target_x | m | relative focus target position. | 0 | +| target_y | m | relative focus target position. | 0 | +| target_z | m | relative focus target position. | 1 | +| target_index | | Relative index of component to focus at, e.g. next is +1. | 1 | +| focus_xw | m | horiz. dimension of a rectangular area. | 0.5 | +| focus_yh | m | , vert. dimension of a rectangular area. | 0.5 | +| focus_aw | deg | , horiz. angular dimension of a rectangular area. | 0 | +| focus_ah | deg | , vert. angular dimension of a rectangular area. | 0 | +| focus_r | m | case of circular focusing, focusing radius. | 0 | +| pd_rg | | (0,inf) defined as (dx/x), where x is de mean value and dx the standard devition of the variable | 0.0 | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcxtrace-comps/sasmodels/SasView_guinier_porod.comp) for `SasView_guinier_porod.comp`. + +--- + +*Generated on mcxtrace 3.99.99.* \ No newline at end of file diff --git a/mcxtrace-comps/sasmodels/SasView_hardsphere.md b/mcxtrace-comps/sasmodels/SasView_hardsphere.md new file mode 100644 index 000000000..6797ceefd --- /dev/null +++ b/mcxtrace-comps/sasmodels/SasView_hardsphere.md @@ -0,0 +1,56 @@ +# The `SasView_hardsphere` Component + +*McXtrace: SasView hardsphere model component as sample description.* + +## Identification + +- **Site:** +- **Author:** Jose Robledo +- **Origin:** FZJ / DTU / ESS DMSC +- **Date:** + +## Description + +```text +SasView_hardsphere component, generated from hardsphere.c in sasmodels. + +Example: +SasView_hardsphere(radius_effective, volfraction, +model_scale=1.0, model_abs=0.0, xwidth=0.01, yheight=0.01, zdepth=0.005, R=0, +int target_index=1, target_x=0, target_y=0, target_z=1, +focus_xw=0.5, focus_yh=0.5, focus_aw=0, focus_ah=0, focus_r=0, +pd_radius_effective=0.0) +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| radius_effective | Ang | ([0, inf]) effective radius of hard sphere. | 50.0 | +| volfraction | | ([0, 0.74]) volume fraction of hard spheres. | 0.2 | +| model_scale | | Global scale factor for scattering kernel. For systems without inter-particle interference, the form factors can be related to the scattering intensity by the particle volume fraction. | 1.0 | +| model_abs | | Absorption cross section density at 2200 m/s. | 0.0 | +| xwidth | m | ([-inf, inf]) Horiz. dimension of sample, as a width. | 0.01 | +| yheight | m | ([-inf, inf]) vert . dimension of sample, as a height for cylinder/box | 0.01 | +| zdepth | m | ([-inf, inf]) depth of sample | 0.005 | +| R | m | Outer radius of sample in (x,z) plane for cylinder/sphere. | 0 | +| target_x | m | relative focus target position. | 0 | +| target_y | m | relative focus target position. | 0 | +| target_z | m | relative focus target position. | 1 | +| target_index | | Relative index of component to focus at, e.g. next is +1. | 1 | +| focus_xw | m | horiz. dimension of a rectangular area. | 0.5 | +| focus_yh | m | , vert. dimension of a rectangular area. | 0.5 | +| focus_aw | deg | , horiz. angular dimension of a rectangular area. | 0 | +| focus_ah | deg | , vert. angular dimension of a rectangular area. | 0 | +| focus_r | m | case of circular focusing, focusing radius. | 0 | +| pd_radius_effective | | (0,inf) defined as (dx/x), where x is de mean value and dx the standard devition of the variable | 0.0 | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcxtrace-comps/sasmodels/SasView_hardsphere.comp) for `SasView_hardsphere.comp`. + +--- + +*Generated on mcxtrace 3.99.99.* \ No newline at end of file diff --git a/mcxtrace-comps/sasmodels/SasView_hayter_msa.md b/mcxtrace-comps/sasmodels/SasView_hayter_msa.md new file mode 100644 index 000000000..84005bfa1 --- /dev/null +++ b/mcxtrace-comps/sasmodels/SasView_hayter_msa.md @@ -0,0 +1,61 @@ +# The `SasView_hayter_msa` Component + +*McXtrace: SasView hayter_msa model component as sample description.* + +## Identification + +- **Site:** +- **Author:** Jose Robledo +- **Origin:** FZJ / DTU / ESS DMSC +- **Date:** + +## Description + +```text +SasView_hayter_msa component, generated from hayter_msa.c in sasmodels. + +Example: +SasView_hayter_msa(radius_effective, volfraction, charge, temperature, concentration_salt, dielectconst, +model_scale=1.0, model_abs=0.0, xwidth=0.01, yheight=0.01, zdepth=0.005, R=0, +int target_index=1, target_x=0, target_y=0, target_z=1, +focus_xw=0.5, focus_yh=0.5, focus_aw=0, focus_ah=0, focus_r=0, +pd_radius_effective=0.0, pd_charge=0.0) +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| radius_effective | Ang | ([0, inf]) effective radius of charged sphere. | 20.75 | +| volfraction | None | ([0, 0.74]) volume fraction of spheres. | 0.0192 | +| charge | e | ([1e-06, 200]) charge on sphere (in electrons). | 19.0 | +| temperature | K | ([0, 450]) temperature, in Kelvin, for Debye length calculation. | 318.16 | +| concentration_salt | M | ([0, inf]) conc of salt, moles/litre, 1:1 electolyte, for Debye length. | 0.0 | +| dielectconst | None | ([-inf, inf]) dielectric constant (relative permittivity) of solvent, kappa, default water, for Debye length. | 71.08 | +| model_scale | | Global scale factor for scattering kernel. For systems without inter-particle interference, the form factors can be related to the scattering intensity by the particle volume fraction. | 1.0 | +| model_abs | | Absorption cross section density at 2200 m/s. | 0.0 | +| xwidth | m | ([-inf, inf]) Horiz. dimension of sample, as a width. | 0.01 | +| yheight | m | ([-inf, inf]) vert . dimension of sample, as a height for cylinder/box | 0.01 | +| zdepth | m | ([-inf, inf]) depth of sample | 0.005 | +| R | m | Outer radius of sample in (x,z) plane for cylinder/sphere. | 0 | +| target_x | m | relative focus target position. | 0 | +| target_y | m | relative focus target position. | 0 | +| target_z | m | relative focus target position. | 1 | +| target_index | | Relative index of component to focus at, e.g. next is +1. | 1 | +| focus_xw | m | horiz. dimension of a rectangular area. | 0.5 | +| focus_yh | m | , vert. dimension of a rectangular area. | 0.5 | +| focus_aw | deg | , horiz. angular dimension of a rectangular area. | 0 | +| focus_ah | deg | , vert. angular dimension of a rectangular area. | 0 | +| focus_r | m | case of circular focusing, focusing radius. | 0 | +| pd_radius_effective | | (0,inf) defined as (dx/x), where x is de mean value and dx the standard devition of the variable. | 0.0 | +| pd_charge | | (0,inf) defined as (dx/x), where x is de mean value and dx the standard devition of the variable | 0.0 | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcxtrace-comps/sasmodels/SasView_hayter_msa.comp) for `SasView_hayter_msa.comp`. + +--- + +*Generated on mcxtrace 3.99.99.* \ No newline at end of file diff --git a/mcxtrace-comps/sasmodels/SasView_hollow_cylinder.md b/mcxtrace-comps/sasmodels/SasView_hollow_cylinder.md new file mode 100644 index 000000000..9fb903d10 --- /dev/null +++ b/mcxtrace-comps/sasmodels/SasView_hollow_cylinder.md @@ -0,0 +1,61 @@ +# The `SasView_hollow_cylinder` Component + +*McXtrace: SasView hollow_cylinder model component as sample description.* + +## Identification + +- **Site:** +- **Author:** Jose Robledo +- **Origin:** FZJ / DTU / ESS DMSC +- **Date:** + +## Description + +```text +SasView_hollow_cylinder component, generated from hollow_cylinder.c in sasmodels. + +Example: +SasView_hollow_cylinder(radius, thickness, length, sld, sld_solvent, +model_scale=1.0, model_abs=0.0, xwidth=0.01, yheight=0.01, zdepth=0.005, R=0, +int target_index=1, target_x=0, target_y=0, target_z=1, +focus_xw=0.5, focus_yh=0.5, focus_aw=0, focus_ah=0, focus_r=0, +pd_radius=0.0, pd_thickness=0.0, pd_length=0.0) +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| radius | Ang | ([0, inf]) Cylinder core radius. | 20.0 | +| thickness | Ang | ([0, inf]) Cylinder wall thickness. | 10.0 | +| length | Ang | ([0, inf]) Cylinder total length. | 400.0 | +| sld | 1e-6/Ang^2 | ([-inf, inf]) Cylinder sld. | 6.3 | +| sld_solvent | 1e-6/Ang^2 | ([-inf, inf]) Solvent sld. | 1 | +| model_scale | | Global scale factor for scattering kernel. For systems without inter-particle interference, the form factors can be related to the scattering intensity by the particle volume fraction. | 1.0 | +| model_abs | | Absorption cross section density at 2200 m/s. | 0.0 | +| xwidth | m | ([-inf, inf]) Horiz. dimension of sample, as a width. | 0.01 | +| yheight | m | ([-inf, inf]) vert . dimension of sample, as a height for cylinder/box | 0.01 | +| zdepth | m | ([-inf, inf]) depth of sample | 0.005 | +| R | m | Outer radius of sample in (x,z) plane for cylinder/sphere. | 0 | +| target_x | m | relative focus target position. | 0 | +| target_y | m | relative focus target position. | 0 | +| target_z | m | relative focus target position. | 1 | +| target_index | | Relative index of component to focus at, e.g. next is +1. | 1 | +| focus_xw | m | horiz. dimension of a rectangular area. | 0.5 | +| focus_yh | m | , vert. dimension of a rectangular area. | 0.5 | +| focus_aw | deg | , horiz. angular dimension of a rectangular area. | 0 | +| focus_ah | deg | , vert. angular dimension of a rectangular area. | 0 | +| focus_r | m | case of circular focusing, focusing radius. | 0 | +| pd_radius | | (0,inf) defined as (dx/x), where x is de mean value and dx the standard devition of the variable. | 0.0 | +| pd_thickness | | (0,inf) defined as (dx/x), where x is de mean value and dx the standard devition of the variable. | 0.0 | +| pd_length | | (0,inf) defined as (dx/x), where x is de mean value and dx the standard devition of the variable | 0.0 | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcxtrace-comps/sasmodels/SasView_hollow_cylinder.comp) for `SasView_hollow_cylinder.comp`. + +--- + +*Generated on mcxtrace 3.99.99.* \ No newline at end of file diff --git a/mcxtrace-comps/sasmodels/SasView_hollow_cylinder_aniso.md b/mcxtrace-comps/sasmodels/SasView_hollow_cylinder_aniso.md new file mode 100644 index 000000000..4e14c6074 --- /dev/null +++ b/mcxtrace-comps/sasmodels/SasView_hollow_cylinder_aniso.md @@ -0,0 +1,65 @@ +# The `SasView_hollow_cylinder_aniso` Component + +*McXtrace: SasView hollow_cylinder model component as sample description.* + +## Identification + +- **Site:** +- **Author:** Jose Robledo +- **Origin:** FZJ / DTU / ESS DMSC +- **Date:** + +## Description + +```text +SasView_hollow_cylinder component, generated from hollow_cylinder.c in sasmodels. + +Example: +SasView_hollow_cylinder_aniso(radius, thickness, length, sld, sld_solvent, theta, Phi, +model_scale=1.0, model_abs=0.0, xwidth=0.01, yheight=0.01, zdepth=0.005, R=0, +int target_index=1, target_x=0, target_y=0, target_z=1, +focus_xw=0.5, focus_yh=0.5, focus_aw=0, focus_ah=0, focus_r=0, +pd_radius=0.0, pd_thickness=0.0, pd_length=0.0, pd_theta=0.0, pd_Phi=0.0) +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| radius | Ang | ([0, inf]) Cylinder core radius. | 20.0 | +| thickness | Ang | ([0, inf]) Cylinder wall thickness. | 10.0 | +| length | Ang | ([0, inf]) Cylinder total length. | 400.0 | +| sld | 1e-6/Ang^2 | ([-inf, inf]) Cylinder sld. | 6.3 | +| sld_solvent | 1e-6/Ang^2 | ([-inf, inf]) Solvent sld. | 1 | +| theta | | | 90 | +| Phi | | | 0 | +| model_scale | | Global scale factor for scattering kernel. For systems without inter-particle interference, the form factors can be related to the scattering intensity by the particle volume fraction. | 1.0 | +| model_abs | | Absorption cross section density at 2200 m/s. | 0.0 | +| xwidth | m | ([-inf, inf]) Horiz. dimension of sample, as a width. | 0.01 | +| yheight | m | ([-inf, inf]) vert . dimension of sample, as a height for cylinder/box | 0.01 | +| zdepth | m | ([-inf, inf]) depth of sample | 0.005 | +| R | m | Outer radius of sample in (x,z) plane for cylinder/sphere. | 0 | +| target_x | m | relative focus target position. | 0 | +| target_y | m | relative focus target position. | 0 | +| target_z | m | relative focus target position. | 1 | +| target_index | | Relative index of component to focus at, e.g. next is +1. | 1 | +| focus_xw | m | horiz. dimension of a rectangular area. | 0.5 | +| focus_yh | m | , vert. dimension of a rectangular area. | 0.5 | +| focus_aw | deg | , horiz. angular dimension of a rectangular area. | 0 | +| focus_ah | deg | , vert. angular dimension of a rectangular area. | 0 | +| focus_r | m | case of circular focusing, focusing radius. | 0 | +| pd_radius | | (0,inf) defined as (dx/x), where x is de mean value and dx the standard devition of the variable. | 0.0 | +| pd_thickness | | (0,inf) defined as (dx/x), where x is de mean value and dx the standard devition of the variable. | 0.0 | +| pd_length | | (0,inf) defined as (dx/x), where x is de mean value and dx the standard devition of the variable. | 0.0 | +| pd_theta | | (0,360) defined as (dx/x), where x is de mean value and dx the standard devition of the variable. | 0.0 | +| pd_Phi | | (0,360) defined as (dx/x), where x is de mean value and dx the standard devition of the variable | 0.0 | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcxtrace-comps/sasmodels/SasView_hollow_cylinder_aniso.comp) for `SasView_hollow_cylinder_aniso.comp`. + +--- + +*Generated on mcxtrace 3.99.99.* \ No newline at end of file diff --git a/mcxtrace-comps/sasmodels/SasView_hollow_rectangular_prism.md b/mcxtrace-comps/sasmodels/SasView_hollow_rectangular_prism.md new file mode 100644 index 000000000..d83c18de3 --- /dev/null +++ b/mcxtrace-comps/sasmodels/SasView_hollow_rectangular_prism.md @@ -0,0 +1,61 @@ +# The `SasView_hollow_rectangular_prism` Component + +*McXtrace: SasView hollow_rectangular_prism model component as sample description.* + +## Identification + +- **Site:** +- **Author:** Jose Robledo +- **Origin:** FZJ / DTU / ESS DMSC +- **Date:** + +## Description + +```text +SasView_hollow_rectangular_prism component, generated from hollow_rectangular_prism.c in sasmodels. + +Example: +SasView_hollow_rectangular_prism(sld, sld_solvent, length_a, b2a_ratio, c2a_ratio, thickness, +model_scale=1.0, model_abs=0.0, xwidth=0.01, yheight=0.01, zdepth=0.005, R=0, +int target_index=1, target_x=0, target_y=0, target_z=1, +focus_xw=0.5, focus_yh=0.5, focus_aw=0, focus_ah=0, focus_r=0, +pd_length_a=0.0, pd_thickness=0.0) +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| sld | 1e-6/Ang^2 | ([-inf, inf]) Parallelepiped scattering length density. | 6.3 | +| sld_solvent | 1e-6/Ang^2 | ([-inf, inf]) Solvent scattering length density. | 1 | +| length_a | Ang | ([0, inf]) Shortest, external, size of the parallelepiped. | 35 | +| b2a_ratio | Ang | ([0, inf]) Ratio sides b/a. | 1 | +| c2a_ratio | Ang | ([0, inf]) Ratio sides c/a. | 1 | +| thickness | Ang | ([0, inf]) Thickness of parallelepiped. | 1 | +| model_scale | | Global scale factor for scattering kernel. For systems without inter-particle interference, the form factors can be related to the scattering intensity by the particle volume fraction. | 1.0 | +| model_abs | | Absorption cross section density at 2200 m/s. | 0.0 | +| xwidth | m | ([-inf, inf]) Horiz. dimension of sample, as a width. | 0.01 | +| yheight | m | ([-inf, inf]) vert . dimension of sample, as a height for cylinder/box | 0.01 | +| zdepth | m | ([-inf, inf]) depth of sample | 0.005 | +| R | m | Outer radius of sample in (x,z) plane for cylinder/sphere. | 0 | +| target_x | m | relative focus target position. | 0 | +| target_y | m | relative focus target position. | 0 | +| target_z | m | relative focus target position. | 1 | +| target_index | | Relative index of component to focus at, e.g. next is +1. | 1 | +| focus_xw | m | horiz. dimension of a rectangular area. | 0.5 | +| focus_yh | m | , vert. dimension of a rectangular area. | 0.5 | +| focus_aw | deg | , horiz. angular dimension of a rectangular area. | 0 | +| focus_ah | deg | , vert. angular dimension of a rectangular area. | 0 | +| focus_r | m | case of circular focusing, focusing radius. | 0 | +| pd_length_a | | (0,inf) defined as (dx/x), where x is de mean value and dx the standard devition of the variable. | 0.0 | +| pd_thickness | | (0,inf) defined as (dx/x), where x is de mean value and dx the standard devition of the variable | 0.0 | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcxtrace-comps/sasmodels/SasView_hollow_rectangular_prism.comp) for `SasView_hollow_rectangular_prism.comp`. + +--- + +*Generated on mcxtrace 3.99.99.* \ No newline at end of file diff --git a/mcxtrace-comps/sasmodels/SasView_hollow_rectangular_prism_aniso.md b/mcxtrace-comps/sasmodels/SasView_hollow_rectangular_prism_aniso.md new file mode 100644 index 000000000..1faf5c6b8 --- /dev/null +++ b/mcxtrace-comps/sasmodels/SasView_hollow_rectangular_prism_aniso.md @@ -0,0 +1,67 @@ +# The `SasView_hollow_rectangular_prism_aniso` Component + +*McXtrace: SasView hollow_rectangular_prism model component as sample description.* + +## Identification + +- **Site:** +- **Author:** Jose Robledo +- **Origin:** FZJ / DTU / ESS DMSC +- **Date:** + +## Description + +```text +SasView_hollow_rectangular_prism component, generated from hollow_rectangular_prism.c in sasmodels. + +Example: +SasView_hollow_rectangular_prism_aniso(sld, sld_solvent, length_a, b2a_ratio, c2a_ratio, thickness, theta, Phi, Psi, +model_scale=1.0, model_abs=0.0, xwidth=0.01, yheight=0.01, zdepth=0.005, R=0, +int target_index=1, target_x=0, target_y=0, target_z=1, +focus_xw=0.5, focus_yh=0.5, focus_aw=0, focus_ah=0, focus_r=0, +pd_length_a=0.0, pd_thickness=0.0, pd_theta=0.0, pd_Phi=0.0, pd_Psi=0.0) +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| sld | 1e-6/Ang^2 | ([-inf, inf]) Parallelepiped scattering length density. | 6.3 | +| sld_solvent | 1e-6/Ang^2 | ([-inf, inf]) Solvent scattering length density. | 1 | +| length_a | Ang | ([0, inf]) Shortest, external, size of the parallelepiped. | 35 | +| b2a_ratio | Ang | ([0, inf]) Ratio sides b/a. | 1 | +| c2a_ratio | Ang | ([0, inf]) Ratio sides c/a. | 1 | +| thickness | Ang | ([0, inf]) Thickness of parallelepiped. | 1 | +| theta | | | 0 | +| Phi | | | 0 | +| Psi | | | 0 | +| model_scale | | Global scale factor for scattering kernel. For systems without inter-particle interference, the form factors can be related to the scattering intensity by the particle volume fraction. | 1.0 | +| model_abs | | Absorption cross section density at 2200 m/s. | 0.0 | +| xwidth | m | ([-inf, inf]) Horiz. dimension of sample, as a width. | 0.01 | +| yheight | m | ([-inf, inf]) vert . dimension of sample, as a height for cylinder/box | 0.01 | +| zdepth | m | ([-inf, inf]) depth of sample | 0.005 | +| R | m | Outer radius of sample in (x,z) plane for cylinder/sphere. | 0 | +| target_x | m | relative focus target position. | 0 | +| target_y | m | relative focus target position. | 0 | +| target_z | m | relative focus target position. | 1 | +| target_index | | Relative index of component to focus at, e.g. next is +1. | 1 | +| focus_xw | m | horiz. dimension of a rectangular area. | 0.5 | +| focus_yh | m | , vert. dimension of a rectangular area. | 0.5 | +| focus_aw | deg | , horiz. angular dimension of a rectangular area. | 0 | +| focus_ah | deg | , vert. angular dimension of a rectangular area. | 0 | +| focus_r | m | case of circular focusing, focusing radius. | 0 | +| pd_length_a | | (0,inf) defined as (dx/x), where x is de mean value and dx the standard devition of the variable. | 0.0 | +| pd_thickness | | (0,inf) defined as (dx/x), where x is de mean value and dx the standard devition of the variable. | 0.0 | +| pd_theta | | (0,360) defined as (dx/x), where x is de mean value and dx the standard devition of the variable. | 0.0 | +| pd_Phi | | (0,360) defined as (dx/x), where x is de mean value and dx the standard devition of the variable. | 0.0 | +| pd_Psi | | (0,360) defined as (dx/x), where x is de mean value and dx the standard devition of the variable | 0.0 | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcxtrace-comps/sasmodels/SasView_hollow_rectangular_prism_aniso.comp) for `SasView_hollow_rectangular_prism_aniso.comp`. + +--- + +*Generated on mcxtrace 3.99.99.* \ No newline at end of file diff --git a/mcxtrace-comps/sasmodels/SasView_hollow_rectangular_prism_thin_walls.md b/mcxtrace-comps/sasmodels/SasView_hollow_rectangular_prism_thin_walls.md new file mode 100644 index 000000000..6797cc086 --- /dev/null +++ b/mcxtrace-comps/sasmodels/SasView_hollow_rectangular_prism_thin_walls.md @@ -0,0 +1,59 @@ +# The `SasView_hollow_rectangular_prism_thin_walls` Component + +*McXtrace: SasView hollow_rectangular_prism_thin_walls model component as sample description.* + +## Identification + +- **Site:** +- **Author:** Jose Robledo +- **Origin:** FZJ / DTU / ESS DMSC +- **Date:** + +## Description + +```text +SasView_hollow_rectangular_prism_thin_walls component, generated from hollow_rectangular_prism_thin_walls.c in sasmodels. + +Example: +SasView_hollow_rectangular_prism_thin_walls(sld, sld_solvent, length_a, b2a_ratio, c2a_ratio, +model_scale=1.0, model_abs=0.0, xwidth=0.01, yheight=0.01, zdepth=0.005, R=0, +int target_index=1, target_x=0, target_y=0, target_z=1, +focus_xw=0.5, focus_yh=0.5, focus_aw=0, focus_ah=0, focus_r=0, +pd_length_a=0.0) +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| sld | 1e-6/Ang^2 | ([-inf, inf]) Parallelepiped scattering length density. | 6.3 | +| sld_solvent | 1e-6/Ang^2 | ([-inf, inf]) Solvent scattering length density. | 1 | +| length_a | Ang | ([0, inf]) Shorter side of the parallelepiped. | 35 | +| b2a_ratio | Ang | ([0, inf]) Ratio sides b/a. | 1 | +| c2a_ratio | Ang | ([0, inf]) Ratio sides c/a. | 1 | +| model_scale | | Global scale factor for scattering kernel. For systems without inter-particle interference, the form factors can be related to the scattering intensity by the particle volume fraction. | 1.0 | +| model_abs | | Absorption cross section density at 2200 m/s. | 0.0 | +| xwidth | m | ([-inf, inf]) Horiz. dimension of sample, as a width. | 0.01 | +| yheight | m | ([-inf, inf]) vert . dimension of sample, as a height for cylinder/box | 0.01 | +| zdepth | m | ([-inf, inf]) depth of sample | 0.005 | +| R | m | Outer radius of sample in (x,z) plane for cylinder/sphere. | 0 | +| target_x | m | relative focus target position. | 0 | +| target_y | m | relative focus target position. | 0 | +| target_z | m | relative focus target position. | 1 | +| target_index | | Relative index of component to focus at, e.g. next is +1. | 1 | +| focus_xw | m | horiz. dimension of a rectangular area. | 0.5 | +| focus_yh | m | , vert. dimension of a rectangular area. | 0.5 | +| focus_aw | deg | , horiz. angular dimension of a rectangular area. | 0 | +| focus_ah | deg | , vert. angular dimension of a rectangular area. | 0 | +| focus_r | m | case of circular focusing, focusing radius. | 0 | +| pd_length_a | | (0,inf) defined as (dx/x), where x is de mean value and dx the standard devition of the variable | 0.0 | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcxtrace-comps/sasmodels/SasView_hollow_rectangular_prism_thin_walls.comp) for `SasView_hollow_rectangular_prism_thin_walls.comp`. + +--- + +*Generated on mcxtrace 3.99.99.* \ No newline at end of file diff --git a/mcxtrace-comps/sasmodels/SasView_lamellar_hg.md b/mcxtrace-comps/sasmodels/SasView_lamellar_hg.md new file mode 100644 index 000000000..ac16f002e --- /dev/null +++ b/mcxtrace-comps/sasmodels/SasView_lamellar_hg.md @@ -0,0 +1,60 @@ +# The `SasView_lamellar_hg` Component + +*McXtrace: SasView lamellar_hg model component as sample description.* + +## Identification + +- **Site:** +- **Author:** Jose Robledo +- **Origin:** FZJ / DTU / ESS DMSC +- **Date:** + +## Description + +```text +SasView_lamellar_hg component, generated from lamellar_hg.c in sasmodels. + +Example: +SasView_lamellar_hg(length_tail, length_head, sld, sld_head, sld_solvent, +model_scale=1.0, model_abs=0.0, xwidth=0.01, yheight=0.01, zdepth=0.005, R=0, +int target_index=1, target_x=0, target_y=0, target_z=1, +focus_xw=0.5, focus_yh=0.5, focus_aw=0, focus_ah=0, focus_r=0, +pd_length_tail=0.0, pd_length_head=0.0) +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| length_tail | Ang | ([0, inf]) Tail thickness ( total = H+T+T+H). | 15 | +| length_head | Ang | ([0, inf]) Head thickness. | 10 | +| sld | 1e-6/Ang^2 | ([-inf, inf]) Tail scattering length density. | 0.4 | +| sld_head | 1e-6/Ang^2 | ([-inf, inf]) Head scattering length density. | 3.0 | +| sld_solvent | 1e-6/Ang^2 | ([-inf, inf]) Solvent scattering length density. | 6 | +| model_scale | | Global scale factor for scattering kernel. For systems without inter-particle interference, the form factors can be related to the scattering intensity by the particle volume fraction. | 1.0 | +| model_abs | | Absorption cross section density at 2200 m/s. | 0.0 | +| xwidth | m | ([-inf, inf]) Horiz. dimension of sample, as a width. | 0.01 | +| yheight | m | ([-inf, inf]) vert . dimension of sample, as a height for cylinder/box | 0.01 | +| zdepth | m | ([-inf, inf]) depth of sample | 0.005 | +| R | m | Outer radius of sample in (x,z) plane for cylinder/sphere. | 0 | +| target_x | m | relative focus target position. | 0 | +| target_y | m | relative focus target position. | 0 | +| target_z | m | relative focus target position. | 1 | +| target_index | | Relative index of component to focus at, e.g. next is +1. | 1 | +| focus_xw | m | horiz. dimension of a rectangular area. | 0.5 | +| focus_yh | m | , vert. dimension of a rectangular area. | 0.5 | +| focus_aw | deg | , horiz. angular dimension of a rectangular area. | 0 | +| focus_ah | deg | , vert. angular dimension of a rectangular area. | 0 | +| focus_r | m | case of circular focusing, focusing radius. | 0 | +| pd_length_tail | | (0,inf) defined as (dx/x), where x is de mean value and dx the standard devition of the variable. | 0.0 | +| pd_length_head | | (0,inf) defined as (dx/x), where x is de mean value and dx the standard devition of the variable | 0.0 | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcxtrace-comps/sasmodels/SasView_lamellar_hg.comp) for `SasView_lamellar_hg.comp`. + +--- + +*Generated on mcxtrace 3.99.99.* \ No newline at end of file diff --git a/mcxtrace-comps/sasmodels/SasView_lamellar_hg_stack_caille.md b/mcxtrace-comps/sasmodels/SasView_lamellar_hg_stack_caille.md new file mode 100644 index 000000000..5668983de --- /dev/null +++ b/mcxtrace-comps/sasmodels/SasView_lamellar_hg_stack_caille.md @@ -0,0 +1,63 @@ +# The `SasView_lamellar_hg_stack_caille` Component + +*McXtrace: SasView lamellar_hg_stack_caille model component as sample description.* + +## Identification + +- **Site:** +- **Author:** Jose Robledo +- **Origin:** FZJ / DTU / ESS DMSC +- **Date:** + +## Description + +```text +SasView_lamellar_hg_stack_caille component, generated from lamellar_hg_stack_caille.c in sasmodels. + +Example: +SasView_lamellar_hg_stack_caille(length_tail, length_head, Nlayers, d_spacing, Caille_parameter, sld, sld_head, sld_solvent, +model_scale=1.0, model_abs=0.0, xwidth=0.01, yheight=0.01, zdepth=0.005, R=0, +int target_index=1, target_x=0, target_y=0, target_z=1, +focus_xw=0.5, focus_yh=0.5, focus_aw=0, focus_ah=0, focus_r=0, +pd_length_tail=0.0, pd_length_head=0.0) +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| length_tail | Ang | ([0, inf]) Tail thickness. | 10 | +| length_head | Ang | ([0, inf]) head thickness. | 2 | +| Nlayers | | ([1, inf]) Number of layers. | 30 | +| d_spacing | Ang | ([0.0, inf]) lamellar d-spacing of Caille S(Q). | 40.0 | +| Caille_parameter | | ([0.0, 0.8]) Caille parameter. | 0.001 | +| sld | 1e-6/Ang^2 | ([-inf, inf]) Tail scattering length density. | 0.4 | +| sld_head | 1e-6/Ang^2 | ([-inf, inf]) Head scattering length density. | 2.0 | +| sld_solvent | 1e-6/Ang^2 | ([-inf, inf]) Solvent scattering length density. | 6 | +| model_scale | | Global scale factor for scattering kernel. For systems without inter-particle interference, the form factors can be related to the scattering intensity by the particle volume fraction. | 1.0 | +| model_abs | | Absorption cross section density at 2200 m/s. | 0.0 | +| xwidth | m | ([-inf, inf]) Horiz. dimension of sample, as a width. | 0.01 | +| yheight | m | ([-inf, inf]) vert . dimension of sample, as a height for cylinder/box | 0.01 | +| zdepth | m | ([-inf, inf]) depth of sample | 0.005 | +| R | m | Outer radius of sample in (x,z) plane for cylinder/sphere. | 0 | +| target_x | m | relative focus target position. | 0 | +| target_y | m | relative focus target position. | 0 | +| target_z | m | relative focus target position. | 1 | +| target_index | | Relative index of component to focus at, e.g. next is +1. | 1 | +| focus_xw | m | horiz. dimension of a rectangular area. | 0.5 | +| focus_yh | m | , vert. dimension of a rectangular area. | 0.5 | +| focus_aw | deg | , horiz. angular dimension of a rectangular area. | 0 | +| focus_ah | deg | , vert. angular dimension of a rectangular area. | 0 | +| focus_r | m | case of circular focusing, focusing radius. | 0 | +| pd_length_tail | | (0,inf) defined as (dx/x), where x is de mean value and dx the standard devition of the variable. | 0.0 | +| pd_length_head | | (0,inf) defined as (dx/x), where x is de mean value and dx the standard devition of the variable | 0.0 | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcxtrace-comps/sasmodels/SasView_lamellar_hg_stack_caille.comp) for `SasView_lamellar_hg_stack_caille.comp`. + +--- + +*Generated on mcxtrace 3.99.99.* \ No newline at end of file diff --git a/mcxtrace-comps/sasmodels/SasView_lamellar_stack_caille.md b/mcxtrace-comps/sasmodels/SasView_lamellar_stack_caille.md new file mode 100644 index 000000000..d0170f801 --- /dev/null +++ b/mcxtrace-comps/sasmodels/SasView_lamellar_stack_caille.md @@ -0,0 +1,60 @@ +# The `SasView_lamellar_stack_caille` Component + +*McXtrace: SasView lamellar_stack_caille model component as sample description.* + +## Identification + +- **Site:** +- **Author:** Jose Robledo +- **Origin:** FZJ / DTU / ESS DMSC +- **Date:** + +## Description + +```text +SasView_lamellar_stack_caille component, generated from lamellar_stack_caille.c in sasmodels. + +Example: +SasView_lamellar_stack_caille(thickness, Nlayers, d_spacing, Caille_parameter, sld, sld_solvent, +model_scale=1.0, model_abs=0.0, xwidth=0.01, yheight=0.01, zdepth=0.005, R=0, +int target_index=1, target_x=0, target_y=0, target_z=1, +focus_xw=0.5, focus_yh=0.5, focus_aw=0, focus_ah=0, focus_r=0, +pd_thickness=0.0) +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| thickness | Ang | ([0, inf]) sheet thickness. | 30.0 | +| Nlayers | | ([1, inf]) Number of layers. | 20 | +| d_spacing | Ang | ([0.0, inf]) lamellar d-spacing of Caille S(Q). | 400.0 | +| Caille_parameter | 1/Ang^2 | ([0.0, 0.8]) Caille parameter. | 0.1 | +| sld | 1e-6/Ang^2 | ([-inf, inf]) layer scattering length density. | 6.3 | +| sld_solvent | 1e-6/Ang^2 | ([-inf, inf]) Solvent scattering length density. | 1.0 | +| model_scale | | Global scale factor for scattering kernel. For systems without inter-particle interference, the form factors can be related to the scattering intensity by the particle volume fraction. | 1.0 | +| model_abs | | Absorption cross section density at 2200 m/s. | 0.0 | +| xwidth | m | ([-inf, inf]) Horiz. dimension of sample, as a width. | 0.01 | +| yheight | m | ([-inf, inf]) vert . dimension of sample, as a height for cylinder/box | 0.01 | +| zdepth | m | ([-inf, inf]) depth of sample | 0.005 | +| R | m | Outer radius of sample in (x,z) plane for cylinder/sphere. | 0 | +| target_x | m | relative focus target position. | 0 | +| target_y | m | relative focus target position. | 0 | +| target_z | m | relative focus target position. | 1 | +| target_index | | Relative index of component to focus at, e.g. next is +1. | 1 | +| focus_xw | m | horiz. dimension of a rectangular area. | 0.5 | +| focus_yh | m | , vert. dimension of a rectangular area. | 0.5 | +| focus_aw | deg | , horiz. angular dimension of a rectangular area. | 0 | +| focus_ah | deg | , vert. angular dimension of a rectangular area. | 0 | +| focus_r | m | case of circular focusing, focusing radius. | 0 | +| pd_thickness | | (0,inf) defined as (dx/x), where x is de mean value and dx the standard devition of the variable | 0.0 | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcxtrace-comps/sasmodels/SasView_lamellar_stack_caille.comp) for `SasView_lamellar_stack_caille.comp`. + +--- + +*Generated on mcxtrace 3.99.99.* \ No newline at end of file diff --git a/mcxtrace-comps/sasmodels/SasView_lamellar_stack_paracrystal.md b/mcxtrace-comps/sasmodels/SasView_lamellar_stack_paracrystal.md new file mode 100644 index 000000000..6382968b1 --- /dev/null +++ b/mcxtrace-comps/sasmodels/SasView_lamellar_stack_paracrystal.md @@ -0,0 +1,60 @@ +# The `SasView_lamellar_stack_paracrystal` Component + +*McXtrace: SasView lamellar_stack_paracrystal model component as sample description.* + +## Identification + +- **Site:** +- **Author:** Jose Robledo +- **Origin:** FZJ / DTU / ESS DMSC +- **Date:** + +## Description + +```text +SasView_lamellar_stack_paracrystal component, generated from lamellar_stack_paracrystal.c in sasmodels. + +Example: +SasView_lamellar_stack_paracrystal(thickness, Nlayers, d_spacing, sigma_d, sld, sld_solvent, +model_scale=1.0, model_abs=0.0, xwidth=0.01, yheight=0.01, zdepth=0.005, R=0, +int target_index=1, target_x=0, target_y=0, target_z=1, +focus_xw=0.5, focus_yh=0.5, focus_aw=0, focus_ah=0, focus_r=0, +pd_thickness=0.0) +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| thickness | Ang | ([0, inf]) sheet thickness. | 33.0 | +| Nlayers | | ([1, inf]) Number of layers. | 20 | +| d_spacing | Ang | ([0.0, inf]) lamellar spacing of paracrystal stack. | 250.0 | +| sigma_d | Ang | ([0.0, inf]) Sigma (polydispersity) of the lamellar spacing. | 0.0 | +| sld | 1e-6/Ang^2 | ([-inf, inf]) layer scattering length density. | 1.0 | +| sld_solvent | 1e-6/Ang^2 | ([-inf, inf]) Solvent scattering length density. | 6.34 | +| model_scale | | Global scale factor for scattering kernel. For systems without inter-particle interference, the form factors can be related to the scattering intensity by the particle volume fraction. | 1.0 | +| model_abs | | Absorption cross section density at 2200 m/s. | 0.0 | +| xwidth | m | ([-inf, inf]) Horiz. dimension of sample, as a width. | 0.01 | +| yheight | m | ([-inf, inf]) vert . dimension of sample, as a height for cylinder/box | 0.01 | +| zdepth | m | ([-inf, inf]) depth of sample | 0.005 | +| R | m | Outer radius of sample in (x,z) plane for cylinder/sphere. | 0 | +| target_x | m | relative focus target position. | 0 | +| target_y | m | relative focus target position. | 0 | +| target_z | m | relative focus target position. | 1 | +| target_index | | Relative index of component to focus at, e.g. next is +1. | 1 | +| focus_xw | m | horiz. dimension of a rectangular area. | 0.5 | +| focus_yh | m | , vert. dimension of a rectangular area. | 0.5 | +| focus_aw | deg | , horiz. angular dimension of a rectangular area. | 0 | +| focus_ah | deg | , vert. angular dimension of a rectangular area. | 0 | +| focus_r | m | case of circular focusing, focusing radius. | 0 | +| pd_thickness | | (0,inf) defined as (dx/x), where x is de mean value and dx the standard devition of the variable | 0.0 | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcxtrace-comps/sasmodels/SasView_lamellar_stack_paracrystal.comp) for `SasView_lamellar_stack_paracrystal.comp`. + +--- + +*Generated on mcxtrace 3.99.99.* \ No newline at end of file diff --git a/mcxtrace-comps/sasmodels/SasView_line.md b/mcxtrace-comps/sasmodels/SasView_line.md new file mode 100644 index 000000000..6b7833108 --- /dev/null +++ b/mcxtrace-comps/sasmodels/SasView_line.md @@ -0,0 +1,55 @@ +# The `SasView_line` Component + +*McXtrace: SasView line model component as sample description.* + +## Identification + +- **Site:** +- **Author:** Jose Robledo +- **Origin:** FZJ / DTU / ESS DMSC +- **Date:** + +## Description + +```text +SasView_line component, generated from line.c in sasmodels. + +Example: +SasView_line(intercept, slope, +model_scale=1.0, model_abs=0.0, xwidth=0.01, yheight=0.01, zdepth=0.005, R=0, +int target_index=1, target_x=0, target_y=0, target_z=1, +focus_xw=0.5, focus_yh=0.5, focus_aw=0, focus_ah=0, focus_r=0, +) +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| intercept | 1/cm | ([-inf, inf]) intercept in linear model. | 1.0 | +| slope | Ang/cm | ([-inf, inf]) slope in linear model. | 1.0 | +| model_scale | | Global scale factor for scattering kernel. For systems without inter-particle interference, the form factors can be related to the scattering intensity by the particle volume fraction. | 1.0 | +| model_abs | | Absorption cross section density at 2200 m/s. | 0.0 | +| xwidth | m | ([-inf, inf]) Horiz. dimension of sample, as a width. | 0.01 | +| yheight | m | ([-inf, inf]) vert . dimension of sample, as a height for cylinder/box | 0.01 | +| zdepth | m | ([-inf, inf]) depth of sample | 0.005 | +| R | m | Outer radius of sample in (x,z) plane for cylinder/sphere. | 0 | +| target_x | m | relative focus target position. | 0 | +| target_y | m | relative focus target position. | 0 | +| target_z | m | relative focus target position. | 1 | +| target_index | | Relative index of component to focus at, e.g. next is +1. | 1 | +| focus_xw | m | horiz. dimension of a rectangular area. | 0.5 | +| focus_yh | m | , vert. dimension of a rectangular area. | 0.5 | +| focus_aw | deg | , horiz. angular dimension of a rectangular area. | 0 | +| focus_ah | deg | , vert. angular dimension of a rectangular area. | 0 | +| focus_r | m | case of circular focusing, focusing radius. | 0 | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcxtrace-comps/sasmodels/SasView_line.comp) for `SasView_line.comp`. + +--- + +*Generated on mcxtrace 3.99.99.* \ No newline at end of file diff --git a/mcxtrace-comps/sasmodels/SasView_linear_pearls.md b/mcxtrace-comps/sasmodels/SasView_linear_pearls.md new file mode 100644 index 000000000..8979dfb9d --- /dev/null +++ b/mcxtrace-comps/sasmodels/SasView_linear_pearls.md @@ -0,0 +1,59 @@ +# The `SasView_linear_pearls` Component + +*McXtrace: SasView linear_pearls model component as sample description.* + +## Identification + +- **Site:** +- **Author:** Jose Robledo +- **Origin:** FZJ / DTU / ESS DMSC +- **Date:** + +## Description + +```text +SasView_linear_pearls component, generated from linear_pearls.c in sasmodels. + +Example: +SasView_linear_pearls(radius, edge_sep, num_pearls, sld, sld_solvent, +model_scale=1.0, model_abs=0.0, xwidth=0.01, yheight=0.01, zdepth=0.005, R=0, +int target_index=1, target_x=0, target_y=0, target_z=1, +focus_xw=0.5, focus_yh=0.5, focus_aw=0, focus_ah=0, focus_r=0, +pd_radius=0.0) +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| radius | Ang | ([0, inf]) Radius of the pearls. | 80.0 | +| edge_sep | Ang | ([0, inf]) Length of the string segment - surface to surface. | 350.0 | +| num_pearls | | ([1, inf]) Number of the pearls. | 3.0 | +| sld | 1e-6/Ang^2 | ([-inf, inf]) SLD of the pearl spheres. | 1.0 | +| sld_solvent | 1e-6/Ang^2 | ([-inf, inf]) SLD of the solvent. | 6.3 | +| model_scale | | Global scale factor for scattering kernel. For systems without inter-particle interference, the form factors can be related to the scattering intensity by the particle volume fraction. | 1.0 | +| model_abs | | Absorption cross section density at 2200 m/s. | 0.0 | +| xwidth | m | ([-inf, inf]) Horiz. dimension of sample, as a width. | 0.01 | +| yheight | m | ([-inf, inf]) vert . dimension of sample, as a height for cylinder/box | 0.01 | +| zdepth | m | ([-inf, inf]) depth of sample | 0.005 | +| R | m | Outer radius of sample in (x,z) plane for cylinder/sphere. | 0 | +| target_x | m | relative focus target position. | 0 | +| target_y | m | relative focus target position. | 0 | +| target_z | m | relative focus target position. | 1 | +| target_index | | Relative index of component to focus at, e.g. next is +1. | 1 | +| focus_xw | m | horiz. dimension of a rectangular area. | 0.5 | +| focus_yh | m | , vert. dimension of a rectangular area. | 0.5 | +| focus_aw | deg | , horiz. angular dimension of a rectangular area. | 0 | +| focus_ah | deg | , vert. angular dimension of a rectangular area. | 0 | +| focus_r | m | case of circular focusing, focusing radius. | 0 | +| pd_radius | | (0,inf) defined as (dx/x), where x is de mean value and dx the standard devition of the variable | 0.0 | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcxtrace-comps/sasmodels/SasView_linear_pearls.comp) for `SasView_linear_pearls.comp`. + +--- + +*Generated on mcxtrace 3.99.99.* \ No newline at end of file diff --git a/mcxtrace-comps/sasmodels/SasView_lorentz.md b/mcxtrace-comps/sasmodels/SasView_lorentz.md new file mode 100644 index 000000000..e759f003e --- /dev/null +++ b/mcxtrace-comps/sasmodels/SasView_lorentz.md @@ -0,0 +1,55 @@ +# The `SasView_lorentz` Component + +*McXtrace: SasView lorentz model component as sample description.* + +## Identification + +- **Site:** +- **Author:** Jose Robledo +- **Origin:** FZJ / DTU / ESS DMSC +- **Date:** + +## Description + +```text +SasView_lorentz component, generated from lorentz.c in sasmodels. + +Example: +SasView_lorentz(cor_length, +model_scale=1.0, model_abs=0.0, xwidth=0.01, yheight=0.01, zdepth=0.005, R=0, +int target_index=1, target_x=0, target_y=0, target_z=1, +focus_xw=0.5, focus_yh=0.5, focus_aw=0, focus_ah=0, focus_r=0, +pd_cor_length=0.0) +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| cor_length | Ang | ([0, inf]) Screening length. | 50.0 | +| model_scale | | Global scale factor for scattering kernel. For systems without inter-particle interference, the form factors can be related to the scattering intensity by the particle volume fraction. | 1.0 | +| model_abs | | Absorption cross section density at 2200 m/s. | 0.0 | +| xwidth | m | ([-inf, inf]) Horiz. dimension of sample, as a width. | 0.01 | +| yheight | m | ([-inf, inf]) vert . dimension of sample, as a height for cylinder/box | 0.01 | +| zdepth | m | ([-inf, inf]) depth of sample | 0.005 | +| R | m | Outer radius of sample in (x,z) plane for cylinder/sphere. | 0 | +| target_x | m | relative focus target position. | 0 | +| target_y | m | relative focus target position. | 0 | +| target_z | m | relative focus target position. | 1 | +| target_index | | Relative index of component to focus at, e.g. next is +1. | 1 | +| focus_xw | m | horiz. dimension of a rectangular area. | 0.5 | +| focus_yh | m | , vert. dimension of a rectangular area. | 0.5 | +| focus_aw | deg | , horiz. angular dimension of a rectangular area. | 0 | +| focus_ah | deg | , vert. angular dimension of a rectangular area. | 0 | +| focus_r | m | case of circular focusing, focusing radius. | 0 | +| pd_cor_length | | (0,inf) defined as (dx/x), where x is de mean value and dx the standard devition of the variable | 0.0 | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcxtrace-comps/sasmodels/SasView_lorentz.comp) for `SasView_lorentz.comp`. + +--- + +*Generated on mcxtrace 3.99.99.* \ No newline at end of file diff --git a/mcxtrace-comps/sasmodels/SasView_mass_fractal.md b/mcxtrace-comps/sasmodels/SasView_mass_fractal.md new file mode 100644 index 000000000..957dfe9aa --- /dev/null +++ b/mcxtrace-comps/sasmodels/SasView_mass_fractal.md @@ -0,0 +1,58 @@ +# The `SasView_mass_fractal` Component + +*McXtrace: SasView mass_fractal model component as sample description.* + +## Identification + +- **Site:** +- **Author:** Jose Robledo +- **Origin:** FZJ / DTU / ESS DMSC +- **Date:** + +## Description + +```text +SasView_mass_fractal component, generated from mass_fractal.c in sasmodels. + +Example: +SasView_mass_fractal(radius, fractal_dim_mass, cutoff_length, +model_scale=1.0, model_abs=0.0, xwidth=0.01, yheight=0.01, zdepth=0.005, R=0, +int target_index=1, target_x=0, target_y=0, target_z=1, +focus_xw=0.5, focus_yh=0.5, focus_aw=0, focus_ah=0, focus_r=0, +pd_radius=0.0, pd_cutoff_length=0.0) +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| radius | Ang | ([0.0, inf]) Particle radius. | 10.0 | +| fractal_dim_mass | | ([1.0, 6.0]) Mass fractal dimension. | 1.9 | +| cutoff_length | Ang | ([0.0, inf]) Cut-off length. | 100.0 | +| model_scale | | Global scale factor for scattering kernel. For systems without inter-particle interference, the form factors can be related to the scattering intensity by the particle volume fraction. | 1.0 | +| model_abs | | Absorption cross section density at 2200 m/s. | 0.0 | +| xwidth | m | ([-inf, inf]) Horiz. dimension of sample, as a width. | 0.01 | +| yheight | m | ([-inf, inf]) vert . dimension of sample, as a height for cylinder/box | 0.01 | +| zdepth | m | ([-inf, inf]) depth of sample | 0.005 | +| R | m | Outer radius of sample in (x,z) plane for cylinder/sphere. | 0 | +| target_x | m | relative focus target position. | 0 | +| target_y | m | relative focus target position. | 0 | +| target_z | m | relative focus target position. | 1 | +| target_index | | Relative index of component to focus at, e.g. next is +1. | 1 | +| focus_xw | m | horiz. dimension of a rectangular area. | 0.5 | +| focus_yh | m | , vert. dimension of a rectangular area. | 0.5 | +| focus_aw | deg | , horiz. angular dimension of a rectangular area. | 0 | +| focus_ah | deg | , vert. angular dimension of a rectangular area. | 0 | +| focus_r | m | case of circular focusing, focusing radius. | 0 | +| pd_radius | | (0,inf) defined as (dx/x), where x is de mean value and dx the standard devition of the variable. | 0.0 | +| pd_cutoff_length | | (0,inf) defined as (dx/x), where x is de mean value and dx the standard devition of the variable | 0.0 | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcxtrace-comps/sasmodels/SasView_mass_fractal.comp) for `SasView_mass_fractal.comp`. + +--- + +*Generated on mcxtrace 3.99.99.* \ No newline at end of file diff --git a/mcxtrace-comps/sasmodels/SasView_mass_surface_fractal.md b/mcxtrace-comps/sasmodels/SasView_mass_surface_fractal.md new file mode 100644 index 000000000..e615806a6 --- /dev/null +++ b/mcxtrace-comps/sasmodels/SasView_mass_surface_fractal.md @@ -0,0 +1,59 @@ +# The `SasView_mass_surface_fractal` Component + +*McXtrace: SasView mass_surface_fractal model component as sample description.* + +## Identification + +- **Site:** +- **Author:** Jose Robledo +- **Origin:** FZJ / DTU / ESS DMSC +- **Date:** + +## Description + +```text +SasView_mass_surface_fractal component, generated from mass_surface_fractal.c in sasmodels. + +Example: +SasView_mass_surface_fractal(fractal_dim_mass, fractal_dim_surf, rg_cluster, rg_primary, +model_scale=1.0, model_abs=0.0, xwidth=0.01, yheight=0.01, zdepth=0.005, R=0, +int target_index=1, target_x=0, target_y=0, target_z=1, +focus_xw=0.5, focus_yh=0.5, focus_aw=0, focus_ah=0, focus_r=0, +pd_rg_cluster=0.0, pd_rg_primary=0.0) +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| fractal_dim_mass | | ([0.0, 6.0]) Mass fractal dimension. | 1.8 | +| fractal_dim_surf | | ([0.0, 6.0]) Surface fractal dimension. | 2.3 | +| rg_cluster | Ang | ([0.0, inf]) Cluster radius of gyration. | 4000.0 | +| rg_primary | Ang | ([0.0, inf]) Primary particle radius of gyration. | 86.7 | +| model_scale | | Global scale factor for scattering kernel. For systems without inter-particle interference, the form factors can be related to the scattering intensity by the particle volume fraction. | 1.0 | +| model_abs | | Absorption cross section density at 2200 m/s. | 0.0 | +| xwidth | m | ([-inf, inf]) Horiz. dimension of sample, as a width. | 0.01 | +| yheight | m | ([-inf, inf]) vert . dimension of sample, as a height for cylinder/box | 0.01 | +| zdepth | m | ([-inf, inf]) depth of sample | 0.005 | +| R | m | Outer radius of sample in (x,z) plane for cylinder/sphere. | 0 | +| target_x | m | relative focus target position. | 0 | +| target_y | m | relative focus target position. | 0 | +| target_z | m | relative focus target position. | 1 | +| target_index | | Relative index of component to focus at, e.g. next is +1. | 1 | +| focus_xw | m | horiz. dimension of a rectangular area. | 0.5 | +| focus_yh | m | , vert. dimension of a rectangular area. | 0.5 | +| focus_aw | deg | , horiz. angular dimension of a rectangular area. | 0 | +| focus_ah | deg | , vert. angular dimension of a rectangular area. | 0 | +| focus_r | m | case of circular focusing, focusing radius. | 0 | +| pd_rg_cluster | | (0,inf) defined as (dx/x), where x is de mean value and dx the standard devition of the variable. | 0.0 | +| pd_rg_primary | | (0,inf) defined as (dx/x), where x is de mean value and dx the standard devition of the variable | 0.0 | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcxtrace-comps/sasmodels/SasView_mass_surface_fractal.comp) for `SasView_mass_surface_fractal.comp`. + +--- + +*Generated on mcxtrace 3.99.99.* \ No newline at end of file diff --git a/mcxtrace-comps/sasmodels/SasView_mono_gauss_coil.md b/mcxtrace-comps/sasmodels/SasView_mono_gauss_coil.md new file mode 100644 index 000000000..c3ff40348 --- /dev/null +++ b/mcxtrace-comps/sasmodels/SasView_mono_gauss_coil.md @@ -0,0 +1,56 @@ +# The `SasView_mono_gauss_coil` Component + +*McXtrace: SasView mono_gauss_coil model component as sample description.* + +## Identification + +- **Site:** +- **Author:** Jose Robledo +- **Origin:** FZJ / DTU / ESS DMSC +- **Date:** + +## Description + +```text +SasView_mono_gauss_coil component, generated from mono_gauss_coil.c in sasmodels. + +Example: +SasView_mono_gauss_coil(i_zero, rg, +model_scale=1.0, model_abs=0.0, xwidth=0.01, yheight=0.01, zdepth=0.005, R=0, +int target_index=1, target_x=0, target_y=0, target_z=1, +focus_xw=0.5, focus_yh=0.5, focus_aw=0, focus_ah=0, focus_r=0, +pd_rg=0.0) +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| i_zero | 1/cm | ([0.0, inf]) Intensity at q=0. | 70.0 | +| rg | Ang | ([0.0, inf]) Radius of gyration. | 75.0 | +| model_scale | | Global scale factor for scattering kernel. For systems without inter-particle interference, the form factors can be related to the scattering intensity by the particle volume fraction. | 1.0 | +| model_abs | | Absorption cross section density at 2200 m/s. | 0.0 | +| xwidth | m | ([-inf, inf]) Horiz. dimension of sample, as a width. | 0.01 | +| yheight | m | ([-inf, inf]) vert . dimension of sample, as a height for cylinder/box | 0.01 | +| zdepth | m | ([-inf, inf]) depth of sample | 0.005 | +| R | m | Outer radius of sample in (x,z) plane for cylinder/sphere. | 0 | +| target_x | m | relative focus target position. | 0 | +| target_y | m | relative focus target position. | 0 | +| target_z | m | relative focus target position. | 1 | +| target_index | | Relative index of component to focus at, e.g. next is +1. | 1 | +| focus_xw | m | horiz. dimension of a rectangular area. | 0.5 | +| focus_yh | m | , vert. dimension of a rectangular area. | 0.5 | +| focus_aw | deg | , horiz. angular dimension of a rectangular area. | 0 | +| focus_ah | deg | , vert. angular dimension of a rectangular area. | 0 | +| focus_r | m | case of circular focusing, focusing radius. | 0 | +| pd_rg | | (0,inf) defined as (dx/x), where x is de mean value and dx the standard devition of the variable | 0.0 | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcxtrace-comps/sasmodels/SasView_mono_gauss_coil.comp) for `SasView_mono_gauss_coil.comp`. + +--- + +*Generated on mcxtrace 3.99.99.* \ No newline at end of file diff --git a/mcxtrace-comps/sasmodels/SasView_multilayer_vesicle.md b/mcxtrace-comps/sasmodels/SasView_multilayer_vesicle.md new file mode 100644 index 000000000..17733b6c2 --- /dev/null +++ b/mcxtrace-comps/sasmodels/SasView_multilayer_vesicle.md @@ -0,0 +1,63 @@ +# The `SasView_multilayer_vesicle` Component + +*McXtrace: SasView multilayer_vesicle model component as sample description.* + +## Identification + +- **Site:** +- **Author:** Jose Robledo +- **Origin:** FZJ / DTU / ESS DMSC +- **Date:** + +## Description + +```text +SasView_multilayer_vesicle component, generated from multilayer_vesicle.c in sasmodels. + +Example: +SasView_multilayer_vesicle(volfraction, radius, thick_shell, thick_solvent, sld_solvent, sld, n_shells, +model_scale=1.0, model_abs=0.0, xwidth=0.01, yheight=0.01, zdepth=0.005, R=0, +int target_index=1, target_x=0, target_y=0, target_z=1, +focus_xw=0.5, focus_yh=0.5, focus_aw=0, focus_ah=0, focus_r=0, +pd_radius=0.0, pd_thick_shell=0.0, pd_thick_solvent=0.0) +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| volfraction | | ([0.0, 1]) volume fraction of vesicles. | 0.05 | +| radius | Ang | ([0.0, inf]) radius of solvent filled core. | 60.0 | +| thick_shell | Ang | ([0.0, inf]) thickness of one shell. | 10.0 | +| thick_solvent | Ang | ([0.0, inf]) solvent thickness between shells. | 10.0 | +| sld_solvent | 1e-6/Ang^2 | ([-inf, inf]) solvent scattering length density. | 6.4 | +| sld | 1e-6/Ang^2 | ([-inf, inf]) Shell scattering length density. | 0.4 | +| n_shells | | ([1.0, inf]) Number of shell plus solvent layer pairs (must be integer). | 2.0 | +| model_scale | | Global scale factor for scattering kernel. For systems without inter-particle interference, the form factors can be related to the scattering intensity by the particle volume fraction. | 1.0 | +| model_abs | | Absorption cross section density at 2200 m/s. | 0.0 | +| xwidth | m | ([-inf, inf]) Horiz. dimension of sample, as a width. | 0.01 | +| yheight | m | ([-inf, inf]) vert . dimension of sample, as a height for cylinder/box | 0.01 | +| zdepth | m | ([-inf, inf]) depth of sample | 0.005 | +| R | m | Outer radius of sample in (x,z) plane for cylinder/sphere. | 0 | +| target_x | m | relative focus target position. | 0 | +| target_y | m | relative focus target position. | 0 | +| target_z | m | relative focus target position. | 1 | +| target_index | | Relative index of component to focus at, e.g. next is +1. | 1 | +| focus_xw | m | horiz. dimension of a rectangular area. | 0.5 | +| focus_yh | m | , vert. dimension of a rectangular area. | 0.5 | +| focus_aw | deg | , horiz. angular dimension of a rectangular area. | 0 | +| focus_ah | deg | , vert. angular dimension of a rectangular area. | 0 | +| focus_r | m | case of circular focusing, focusing radius. | 0 | +| pd_radius | | (0,inf) defined as (dx/x), where x is de mean value and dx the standard devition of the variable. | 0.0 | +| pd_thick_shell | | (0,inf) defined as (dx/x), where x is de mean value and dx the standard devition of the variable. | 0.0 | +| pd_thick_solvent | | (0,inf) defined as (dx/x), where x is de mean value and dx the standard devition of the variable | 0.0 | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcxtrace-comps/sasmodels/SasView_multilayer_vesicle.comp) for `SasView_multilayer_vesicle.comp`. + +--- + +*Generated on mcxtrace 3.99.99.* \ No newline at end of file diff --git a/mcxtrace-comps/sasmodels/SasView_onion.md b/mcxtrace-comps/sasmodels/SasView_onion.md new file mode 100644 index 000000000..3c853de6c --- /dev/null +++ b/mcxtrace-comps/sasmodels/SasView_onion.md @@ -0,0 +1,38 @@ +# The `SasView_onion` Component + +*McXtrace: SasView onion model component as sample description.* + +## Identification + +- **Site:** +- **Author:** Jose Robledo +- **Origin:** FZJ / DTU / ESS DMSC +- **Date:** + +## Description + +```text +SasView_onion component, generated from onion.c in sasmodels. + +Example: +SasView_onion(sld_core, radius_core, sld_solvent, n_shells, sld_in[n_shells], sld_out[n_shells], thickness[n_shells], A[n_shells], +model_scale=1.0, model_abs=0.0, xwidth=0.01, yheight=0.01, zdepth=0.005, R=0, +int target_index=1, target_x=0, target_y=0, target_z=1, +focus_xw=0.5, focus_yh=0.5, focus_aw=0, focus_ah=0, focus_r=0, +pd_radius_core=0.0, pd_thickness[n_shells]=0.0) +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcxtrace-comps/sasmodels/SasView_onion.comp) for `SasView_onion.comp`. + +--- + +*Generated on mcxtrace 3.99.99.* \ No newline at end of file diff --git a/mcxtrace-comps/sasmodels/SasView_parallelepiped.md b/mcxtrace-comps/sasmodels/SasView_parallelepiped.md new file mode 100644 index 000000000..8c30bf25c --- /dev/null +++ b/mcxtrace-comps/sasmodels/SasView_parallelepiped.md @@ -0,0 +1,61 @@ +# The `SasView_parallelepiped` Component + +*McXtrace: SasView parallelepiped model component as sample description.* + +## Identification + +- **Site:** +- **Author:** Jose Robledo +- **Origin:** FZJ / DTU / ESS DMSC +- **Date:** + +## Description + +```text +SasView_parallelepiped component, generated from parallelepiped.c in sasmodels. + +Example: +SasView_parallelepiped(sld, sld_solvent, length_a, length_b, length_c, +model_scale=1.0, model_abs=0.0, xwidth=0.01, yheight=0.01, zdepth=0.005, R=0, +int target_index=1, target_x=0, target_y=0, target_z=1, +focus_xw=0.5, focus_yh=0.5, focus_aw=0, focus_ah=0, focus_r=0, +pd_length_a=0.0, pd_length_b=0.0, pd_length_c=0.0) +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| sld | 1e-6/Ang^2 | ([-inf, inf]) Parallelepiped scattering length density. | 4 | +| sld_solvent | 1e-6/Ang^2 | ([-inf, inf]) Solvent scattering length density. | 1 | +| length_a | Ang | ([0, inf]) Shorter side of the parallelepiped. | 35 | +| length_b | Ang | ([0, inf]) Second side of the parallelepiped. | 75 | +| length_c | Ang | ([0, inf]) Larger side of the parallelepiped. | 400 | +| model_scale | | Global scale factor for scattering kernel. For systems without inter-particle interference, the form factors can be related to the scattering intensity by the particle volume fraction. | 1.0 | +| model_abs | | Absorption cross section density at 2200 m/s. | 0.0 | +| xwidth | m | ([-inf, inf]) Horiz. dimension of sample, as a width. | 0.01 | +| yheight | m | ([-inf, inf]) vert . dimension of sample, as a height for cylinder/box | 0.01 | +| zdepth | m | ([-inf, inf]) depth of sample | 0.005 | +| R | m | Outer radius of sample in (x,z) plane for cylinder/sphere. | 0 | +| target_x | m | relative focus target position. | 0 | +| target_y | m | relative focus target position. | 0 | +| target_z | m | relative focus target position. | 1 | +| target_index | | Relative index of component to focus at, e.g. next is +1. | 1 | +| focus_xw | m | horiz. dimension of a rectangular area. | 0.5 | +| focus_yh | m | , vert. dimension of a rectangular area. | 0.5 | +| focus_aw | deg | , horiz. angular dimension of a rectangular area. | 0 | +| focus_ah | deg | , vert. angular dimension of a rectangular area. | 0 | +| focus_r | m | case of circular focusing, focusing radius. | 0 | +| pd_length_a | | (0,inf) defined as (dx/x), where x is de mean value and dx the standard devition of the variable. | 0.0 | +| pd_length_b | | (0,inf) defined as (dx/x), where x is de mean value and dx the standard devition of the variable. | 0.0 | +| pd_length_c | | (0,inf) defined as (dx/x), where x is de mean value and dx the standard devition of the variable | 0.0 | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcxtrace-comps/sasmodels/SasView_parallelepiped.comp) for `SasView_parallelepiped.comp`. + +--- + +*Generated on mcxtrace 3.99.99.* \ No newline at end of file diff --git a/mcxtrace-comps/sasmodels/SasView_parallelepiped_aniso.md b/mcxtrace-comps/sasmodels/SasView_parallelepiped_aniso.md new file mode 100644 index 000000000..dd52e3339 --- /dev/null +++ b/mcxtrace-comps/sasmodels/SasView_parallelepiped_aniso.md @@ -0,0 +1,67 @@ +# The `SasView_parallelepiped_aniso` Component + +*McXtrace: SasView parallelepiped model component as sample description.* + +## Identification + +- **Site:** +- **Author:** Jose Robledo +- **Origin:** FZJ / DTU / ESS DMSC +- **Date:** + +## Description + +```text +SasView_parallelepiped component, generated from parallelepiped.c in sasmodels. + +Example: +SasView_parallelepiped_aniso(sld, sld_solvent, length_a, length_b, length_c, theta, Phi, Psi, +model_scale=1.0, model_abs=0.0, xwidth=0.01, yheight=0.01, zdepth=0.005, R=0, +int target_index=1, target_x=0, target_y=0, target_z=1, +focus_xw=0.5, focus_yh=0.5, focus_aw=0, focus_ah=0, focus_r=0, +pd_length_a=0.0, pd_length_b=0.0, pd_length_c=0.0, pd_theta=0.0, pd_Phi=0.0, pd_Psi=0.0) +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| sld | 1e-6/Ang^2 | ([-inf, inf]) Parallelepiped scattering length density. | 4 | +| sld_solvent | 1e-6/Ang^2 | ([-inf, inf]) Solvent scattering length density. | 1 | +| length_a | Ang | ([0, inf]) Shorter side of the parallelepiped. | 35 | +| length_b | Ang | ([0, inf]) Second side of the parallelepiped. | 75 | +| length_c | Ang | ([0, inf]) Larger side of the parallelepiped. | 400 | +| theta | | | 60 | +| Phi | | | 60 | +| Psi | | | 60 | +| model_scale | | Global scale factor for scattering kernel. For systems without inter-particle interference, the form factors can be related to the scattering intensity by the particle volume fraction. | 1.0 | +| model_abs | | Absorption cross section density at 2200 m/s. | 0.0 | +| xwidth | m | ([-inf, inf]) Horiz. dimension of sample, as a width. | 0.01 | +| yheight | m | ([-inf, inf]) vert . dimension of sample, as a height for cylinder/box | 0.01 | +| zdepth | m | ([-inf, inf]) depth of sample | 0.005 | +| R | m | Outer radius of sample in (x,z) plane for cylinder/sphere. | 0 | +| target_x | m | relative focus target position. | 0 | +| target_y | m | relative focus target position. | 0 | +| target_z | m | relative focus target position. | 1 | +| target_index | | Relative index of component to focus at, e.g. next is +1. | 1 | +| focus_xw | m | horiz. dimension of a rectangular area. | 0.5 | +| focus_yh | m | , vert. dimension of a rectangular area. | 0.5 | +| focus_aw | deg | , horiz. angular dimension of a rectangular area. | 0 | +| focus_ah | deg | , vert. angular dimension of a rectangular area. | 0 | +| focus_r | m | case of circular focusing, focusing radius. | 0 | +| pd_length_a | | (0,inf) defined as (dx/x), where x is de mean value and dx the standard devition of the variable. | 0.0 | +| pd_length_b | | (0,inf) defined as (dx/x), where x is de mean value and dx the standard devition of the variable. | 0.0 | +| pd_length_c | | (0,inf) defined as (dx/x), where x is de mean value and dx the standard devition of the variable. | 0.0 | +| pd_theta | | (0,360) defined as (dx/x), where x is de mean value and dx the standard devition of the variable. | 0.0 | +| pd_Phi | | (0,360) defined as (dx/x), where x is de mean value and dx the standard devition of the variable. | 0.0 | +| pd_Psi | | (0,360) defined as (dx/x), where x is de mean value and dx the standard devition of the variable | 0.0 | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcxtrace-comps/sasmodels/SasView_parallelepiped_aniso.comp) for `SasView_parallelepiped_aniso.comp`. + +--- + +*Generated on mcxtrace 3.99.99.* \ No newline at end of file diff --git a/mcxtrace-comps/sasmodels/SasView_peak_lorentz.md b/mcxtrace-comps/sasmodels/SasView_peak_lorentz.md new file mode 100644 index 000000000..2f2791b35 --- /dev/null +++ b/mcxtrace-comps/sasmodels/SasView_peak_lorentz.md @@ -0,0 +1,55 @@ +# The `SasView_peak_lorentz` Component + +*McXtrace: SasView peak_lorentz model component as sample description.* + +## Identification + +- **Site:** +- **Author:** Jose Robledo +- **Origin:** FZJ / DTU / ESS DMSC +- **Date:** + +## Description + +```text +SasView_peak_lorentz component, generated from peak_lorentz.c in sasmodels. + +Example: +SasView_peak_lorentz(peak_pos, peak_hwhm, +model_scale=1.0, model_abs=0.0, xwidth=0.01, yheight=0.01, zdepth=0.005, R=0, +int target_index=1, target_x=0, target_y=0, target_z=1, +focus_xw=0.5, focus_yh=0.5, focus_aw=0, focus_ah=0, focus_r=0, +) +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| peak_pos | 1/Ang | ([-inf, inf]) Peak postion in q. | 0.05 | +| peak_hwhm | 1/Ang | ([-inf, inf]) HWHM of peak. | 0.005 | +| model_scale | | Global scale factor for scattering kernel. For systems without inter-particle interference, the form factors can be related to the scattering intensity by the particle volume fraction. | 1.0 | +| model_abs | | Absorption cross section density at 2200 m/s. | 0.0 | +| xwidth | m | ([-inf, inf]) Horiz. dimension of sample, as a width. | 0.01 | +| yheight | m | ([-inf, inf]) vert . dimension of sample, as a height for cylinder/box | 0.01 | +| zdepth | m | ([-inf, inf]) depth of sample | 0.005 | +| R | m | Outer radius of sample in (x,z) plane for cylinder/sphere. | 0 | +| target_x | m | relative focus target position. | 0 | +| target_y | m | relative focus target position. | 0 | +| target_z | m | relative focus target position. | 1 | +| target_index | | Relative index of component to focus at, e.g. next is +1. | 1 | +| focus_xw | m | horiz. dimension of a rectangular area. | 0.5 | +| focus_yh | m | , vert. dimension of a rectangular area. | 0.5 | +| focus_aw | deg | , horiz. angular dimension of a rectangular area. | 0 | +| focus_ah | deg | , vert. angular dimension of a rectangular area. | 0 | +| focus_r | m | case of circular focusing, focusing radius. | 0 | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcxtrace-comps/sasmodels/SasView_peak_lorentz.comp) for `SasView_peak_lorentz.comp`. + +--- + +*Generated on mcxtrace 3.99.99.* \ No newline at end of file diff --git a/mcxtrace-comps/sasmodels/SasView_pearl_necklace.md b/mcxtrace-comps/sasmodels/SasView_pearl_necklace.md new file mode 100644 index 000000000..723db65c8 --- /dev/null +++ b/mcxtrace-comps/sasmodels/SasView_pearl_necklace.md @@ -0,0 +1,62 @@ +# The `SasView_pearl_necklace` Component + +*McXtrace: SasView pearl_necklace model component as sample description.* + +## Identification + +- **Site:** +- **Author:** Jose Robledo +- **Origin:** FZJ / DTU / ESS DMSC +- **Date:** + +## Description + +```text +SasView_pearl_necklace component, generated from pearl_necklace.c in sasmodels. + +Example: +SasView_pearl_necklace(radius, edge_sep, thick_string, num_pearls, sld, sld_string, sld_solvent, +model_scale=1.0, model_abs=0.0, xwidth=0.01, yheight=0.01, zdepth=0.005, R=0, +int target_index=1, target_x=0, target_y=0, target_z=1, +focus_xw=0.5, focus_yh=0.5, focus_aw=0, focus_ah=0, focus_r=0, +pd_radius=0.0, pd_thick_string=0.0) +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| radius | Ang | ([0, inf]) Mean radius of the chained spheres. | 80.0 | +| edge_sep | Ang | ([0, inf]) Mean separation of chained particles. | 350.0 | +| thick_string | Ang | ([0, inf]) Thickness of the chain linkage. | 2.5 | +| num_pearls | none | ([1, inf]) Number of pearls in the necklace (must be integer). | 3 | +| sld | 1e-6/Ang^2 | ([-inf, inf]) Scattering length density of the chained spheres. | 1.0 | +| sld_string | 1e-6/Ang^2 | ([-inf, inf]) Scattering length density of the chain linkage. | 1.0 | +| sld_solvent | 1e-6/Ang^2 | ([-inf, inf]) Scattering length density of the solvent. | 6.3 | +| model_scale | | Global scale factor for scattering kernel. For systems without inter-particle interference, the form factors can be related to the scattering intensity by the particle volume fraction. | 1.0 | +| model_abs | | Absorption cross section density at 2200 m/s. | 0.0 | +| xwidth | m | ([-inf, inf]) Horiz. dimension of sample, as a width. | 0.01 | +| yheight | m | ([-inf, inf]) vert . dimension of sample, as a height for cylinder/box | 0.01 | +| zdepth | m | ([-inf, inf]) depth of sample | 0.005 | +| R | m | Outer radius of sample in (x,z) plane for cylinder/sphere. | 0 | +| target_x | m | relative focus target position. | 0 | +| target_y | m | relative focus target position. | 0 | +| target_z | m | relative focus target position. | 1 | +| target_index | | Relative index of component to focus at, e.g. next is +1. | 1 | +| focus_xw | m | horiz. dimension of a rectangular area. | 0.5 | +| focus_yh | m | , vert. dimension of a rectangular area. | 0.5 | +| focus_aw | deg | , horiz. angular dimension of a rectangular area. | 0 | +| focus_ah | deg | , vert. angular dimension of a rectangular area. | 0 | +| focus_r | m | case of circular focusing, focusing radius. | 0 | +| pd_radius | | (0,inf) defined as (dx/x), where x is de mean value and dx the standard devition of the variable. | 0.0 | +| pd_thick_string | | (0,inf) defined as (dx/x), where x is de mean value and dx the standard devition of the variable | 0.0 | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcxtrace-comps/sasmodels/SasView_pearl_necklace.comp) for `SasView_pearl_necklace.comp`. + +--- + +*Generated on mcxtrace 3.99.99.* \ No newline at end of file diff --git a/mcxtrace-comps/sasmodels/SasView_poly_gauss_coil.md b/mcxtrace-comps/sasmodels/SasView_poly_gauss_coil.md new file mode 100644 index 000000000..c6ab5afe2 --- /dev/null +++ b/mcxtrace-comps/sasmodels/SasView_poly_gauss_coil.md @@ -0,0 +1,57 @@ +# The `SasView_poly_gauss_coil` Component + +*McXtrace: SasView poly_gauss_coil model component as sample description.* + +## Identification + +- **Site:** +- **Author:** Jose Robledo +- **Origin:** FZJ / DTU / ESS DMSC +- **Date:** + +## Description + +```text +SasView_poly_gauss_coil component, generated from poly_gauss_coil.c in sasmodels. + +Example: +SasView_poly_gauss_coil(i_zero, rg, polydispersity, +model_scale=1.0, model_abs=0.0, xwidth=0.01, yheight=0.01, zdepth=0.005, R=0, +int target_index=1, target_x=0, target_y=0, target_z=1, +focus_xw=0.5, focus_yh=0.5, focus_aw=0, focus_ah=0, focus_r=0, +pd_rg=0.0) +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| i_zero | 1/cm | ([0.0, inf]) Intensity at q=0. | 70.0 | +| rg | Ang | ([0.0, inf]) Radius of gyration. | 75.0 | +| polydispersity | None | ([1.0, inf]) Polymer Mw/Mn. | 2.0 | +| model_scale | | Global scale factor for scattering kernel. For systems without inter-particle interference, the form factors can be related to the scattering intensity by the particle volume fraction. | 1.0 | +| model_abs | | Absorption cross section density at 2200 m/s. | 0.0 | +| xwidth | m | ([-inf, inf]) Horiz. dimension of sample, as a width. | 0.01 | +| yheight | m | ([-inf, inf]) vert . dimension of sample, as a height for cylinder/box | 0.01 | +| zdepth | m | ([-inf, inf]) depth of sample | 0.005 | +| R | m | Outer radius of sample in (x,z) plane for cylinder/sphere. | 0 | +| target_x | m | relative focus target position. | 0 | +| target_y | m | relative focus target position. | 0 | +| target_z | m | relative focus target position. | 1 | +| target_index | | Relative index of component to focus at, e.g. next is +1. | 1 | +| focus_xw | m | horiz. dimension of a rectangular area. | 0.5 | +| focus_yh | m | , vert. dimension of a rectangular area. | 0.5 | +| focus_aw | deg | , horiz. angular dimension of a rectangular area. | 0 | +| focus_ah | deg | , vert. angular dimension of a rectangular area. | 0 | +| focus_r | m | case of circular focusing, focusing radius. | 0 | +| pd_rg | | (0,inf) defined as (dx/x), where x is de mean value and dx the standard devition of the variable | 0.0 | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcxtrace-comps/sasmodels/SasView_poly_gauss_coil.comp) for `SasView_poly_gauss_coil.comp`. + +--- + +*Generated on mcxtrace 3.99.99.* \ No newline at end of file diff --git a/mcxtrace-comps/sasmodels/SasView_polymer_excl_volume.md b/mcxtrace-comps/sasmodels/SasView_polymer_excl_volume.md new file mode 100644 index 000000000..2d4a4ec08 --- /dev/null +++ b/mcxtrace-comps/sasmodels/SasView_polymer_excl_volume.md @@ -0,0 +1,56 @@ +# The `SasView_polymer_excl_volume` Component + +*McXtrace: SasView polymer_excl_volume model component as sample description.* + +## Identification + +- **Site:** +- **Author:** Jose Robledo +- **Origin:** FZJ / DTU / ESS DMSC +- **Date:** + +## Description + +```text +SasView_polymer_excl_volume component, generated from polymer_excl_volume.c in sasmodels. + +Example: +SasView_polymer_excl_volume(rg, porod_exp, +model_scale=1.0, model_abs=0.0, xwidth=0.01, yheight=0.01, zdepth=0.005, R=0, +int target_index=1, target_x=0, target_y=0, target_z=1, +focus_xw=0.5, focus_yh=0.5, focus_aw=0, focus_ah=0, focus_r=0, +pd_rg=0.0) +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| rg | Ang | ([0, inf]) Radius of Gyration. | 60.0 | +| porod_exp | | ([0, inf]) Porod exponent. | 3.0 | +| model_scale | | Global scale factor for scattering kernel. For systems without inter-particle interference, the form factors can be related to the scattering intensity by the particle volume fraction. | 1.0 | +| model_abs | | Absorption cross section density at 2200 m/s. | 0.0 | +| xwidth | m | ([-inf, inf]) Horiz. dimension of sample, as a width. | 0.01 | +| yheight | m | ([-inf, inf]) vert . dimension of sample, as a height for cylinder/box | 0.01 | +| zdepth | m | ([-inf, inf]) depth of sample | 0.005 | +| R | m | Outer radius of sample in (x,z) plane for cylinder/sphere. | 0 | +| target_x | m | relative focus target position. | 0 | +| target_y | m | relative focus target position. | 0 | +| target_z | m | relative focus target position. | 1 | +| target_index | | Relative index of component to focus at, e.g. next is +1. | 1 | +| focus_xw | m | horiz. dimension of a rectangular area. | 0.5 | +| focus_yh | m | , vert. dimension of a rectangular area. | 0.5 | +| focus_aw | deg | , horiz. angular dimension of a rectangular area. | 0 | +| focus_ah | deg | , vert. angular dimension of a rectangular area. | 0 | +| focus_r | m | case of circular focusing, focusing radius. | 0 | +| pd_rg | | (0,inf) defined as (dx/x), where x is de mean value and dx the standard devition of the variable | 0.0 | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcxtrace-comps/sasmodels/SasView_polymer_excl_volume.comp) for `SasView_polymer_excl_volume.comp`. + +--- + +*Generated on mcxtrace 3.99.99.* \ No newline at end of file diff --git a/mcxtrace-comps/sasmodels/SasView_polymer_micelle.md b/mcxtrace-comps/sasmodels/SasView_polymer_micelle.md new file mode 100644 index 000000000..463515892 --- /dev/null +++ b/mcxtrace-comps/sasmodels/SasView_polymer_micelle.md @@ -0,0 +1,65 @@ +# The `SasView_polymer_micelle` Component + +*McXtrace: SasView polymer_micelle model component as sample description.* + +## Identification + +- **Site:** +- **Author:** Jose Robledo +- **Origin:** FZJ / DTU / ESS DMSC +- **Date:** + +## Description + +```text +SasView_polymer_micelle component, generated from polymer_micelle.c in sasmodels. + +Example: +SasView_polymer_micelle(ndensity, v_core, v_corona, sld_solvent, sld_core, sld_corona, radius_core, rg, d_penetration, n_aggreg, +model_scale=1.0, model_abs=0.0, xwidth=0.01, yheight=0.01, zdepth=0.005, R=0, +int target_index=1, target_x=0, target_y=0, target_z=1, +focus_xw=0.5, focus_yh=0.5, focus_aw=0, focus_ah=0, focus_r=0, +pd_radius_core=0.0, pd_rg=0.0) +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| ndensity | 1e15/cm^3 | ([0.0, inf]) Number density of micelles. | 8.94 | +| v_core | Ang^3 | ([0.0, inf]) Core volume . | 62624.0 | +| v_corona | Ang^3 | ([0.0, inf]) Corona volume. | 61940.0 | +| sld_solvent | 1e-6/Ang^2 | ([0.0, inf]) Solvent scattering length density. | 6.4 | +| sld_core | 1e-6/Ang^2 | ([0.0, inf]) Core scattering length density. | 0.34 | +| sld_corona | 1e-6/Ang^2 | ([0.0, inf]) Corona scattering length density. | 0.8 | +| radius_core | Ang | ([0.0, inf]) Radius of core ( must be >> rg ). | 45.0 | +| rg | Ang | ([0.0, inf]) Radius of gyration of chains in corona. | 20.0 | +| d_penetration | | ([-inf, inf]) Factor to mimic non-penetration of Gaussian chains. | 1.0 | +| n_aggreg | | ([-inf, inf]) Aggregation number of the micelle. | 6.0 | +| model_scale | | Global scale factor for scattering kernel. For systems without inter-particle interference, the form factors can be related to the scattering intensity by the particle volume fraction. | 1.0 | +| model_abs | | Absorption cross section density at 2200 m/s. | 0.0 | +| xwidth | m | ([-inf, inf]) Horiz. dimension of sample, as a width. | 0.01 | +| yheight | m | ([-inf, inf]) vert . dimension of sample, as a height for cylinder/box | 0.01 | +| zdepth | m | ([-inf, inf]) depth of sample | 0.005 | +| R | m | Outer radius of sample in (x,z) plane for cylinder/sphere. | 0 | +| target_x | m | relative focus target position. | 0 | +| target_y | m | relative focus target position. | 0 | +| target_z | m | relative focus target position. | 1 | +| target_index | | Relative index of component to focus at, e.g. next is +1. | 1 | +| focus_xw | m | horiz. dimension of a rectangular area. | 0.5 | +| focus_yh | m | , vert. dimension of a rectangular area. | 0.5 | +| focus_aw | deg | , horiz. angular dimension of a rectangular area. | 0 | +| focus_ah | deg | , vert. angular dimension of a rectangular area. | 0 | +| focus_r | m | case of circular focusing, focusing radius. | 0 | +| pd_radius_core | | (0,inf) defined as (dx/x), where x is de mean value and dx the standard devition of the variable. | 0.0 | +| pd_rg | | (0,inf) defined as (dx/x), where x is de mean value and dx the standard devition of the variable | 0.0 | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcxtrace-comps/sasmodels/SasView_polymer_micelle.comp) for `SasView_polymer_micelle.comp`. + +--- + +*Generated on mcxtrace 3.99.99.* \ No newline at end of file diff --git a/mcxtrace-comps/sasmodels/SasView_porod.md b/mcxtrace-comps/sasmodels/SasView_porod.md new file mode 100644 index 000000000..f76db4644 --- /dev/null +++ b/mcxtrace-comps/sasmodels/SasView_porod.md @@ -0,0 +1,53 @@ +# The `SasView_porod` Component + +*McXtrace: SasView porod model component as sample description.* + +## Identification + +- **Site:** +- **Author:** Jose Robledo +- **Origin:** FZJ / DTU / ESS DMSC +- **Date:** + +## Description + +```text +SasView_porod component, generated from porod.c in sasmodels. + +Example: +SasView_porod(, +model_scale=1.0, model_abs=0.0, xwidth=0.01, yheight=0.01, zdepth=0.005, R=0, +int target_index=1, target_x=0, target_y=0, target_z=1, +focus_xw=0.5, focus_yh=0.5, focus_aw=0, focus_ah=0, focus_r=0, +) +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| model_scale | | Global scale factor for scattering kernel. For systems without inter-particle interference, the form factors can be related to the scattering intensity by the particle volume fraction. | 1.0 | +| model_abs | | Absorption cross section density at 2200 m/s. | 0.0 | +| xwidth | m | ([-inf, inf]) Horiz. dimension of sample, as a width. | 0.01 | +| yheight | m | ([-inf, inf]) vert . dimension of sample, as a height for cylinder/box | 0.01 | +| zdepth | m | ([-inf, inf]) depth of sample | 0.005 | +| R | m | Outer radius of sample in (x,z) plane for cylinder/sphere. | 0 | +| target_x | m | relative focus target position. | 0 | +| target_y | m | relative focus target position. | 0 | +| target_z | m | relative focus target position. | 1 | +| target_index | | Relative index of component to focus at, e.g. next is +1. | 1 | +| focus_xw | m | horiz. dimension of a rectangular area. | 0.5 | +| focus_yh | m | , vert. dimension of a rectangular area. | 0.5 | +| focus_aw | deg | , horiz. angular dimension of a rectangular area. | 0 | +| focus_ah | deg | , vert. angular dimension of a rectangular area. | 0 | +| focus_r | m | case of circular focusing, focusing radius. | 0 | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcxtrace-comps/sasmodels/SasView_porod.comp) for `SasView_porod.comp`. + +--- + +*Generated on mcxtrace 3.99.99.* \ No newline at end of file diff --git a/mcxtrace-comps/sasmodels/SasView_power_law.md b/mcxtrace-comps/sasmodels/SasView_power_law.md new file mode 100644 index 000000000..b5d2e3782 --- /dev/null +++ b/mcxtrace-comps/sasmodels/SasView_power_law.md @@ -0,0 +1,54 @@ +# The `SasView_power_law` Component + +*McXtrace: SasView power_law model component as sample description.* + +## Identification + +- **Site:** +- **Author:** Jose Robledo +- **Origin:** FZJ / DTU / ESS DMSC +- **Date:** + +## Description + +```text +SasView_power_law component, generated from power_law.c in sasmodels. + +Example: +SasView_power_law(power, +model_scale=1.0, model_abs=0.0, xwidth=0.01, yheight=0.01, zdepth=0.005, R=0, +int target_index=1, target_x=0, target_y=0, target_z=1, +focus_xw=0.5, focus_yh=0.5, focus_aw=0, focus_ah=0, focus_r=0, +) +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| power | | ([-inf, inf]) Power law exponent. | 4.0 | +| model_scale | | Global scale factor for scattering kernel. For systems without inter-particle interference, the form factors can be related to the scattering intensity by the particle volume fraction. | 1.0 | +| model_abs | | Absorption cross section density at 2200 m/s. | 0.0 | +| xwidth | m | ([-inf, inf]) Horiz. dimension of sample, as a width. | 0.01 | +| yheight | m | ([-inf, inf]) vert . dimension of sample, as a height for cylinder/box | 0.01 | +| zdepth | m | ([-inf, inf]) depth of sample | 0.005 | +| R | m | Outer radius of sample in (x,z) plane for cylinder/sphere. | 0 | +| target_x | m | relative focus target position. | 0 | +| target_y | m | relative focus target position. | 0 | +| target_z | m | relative focus target position. | 1 | +| target_index | | Relative index of component to focus at, e.g. next is +1. | 1 | +| focus_xw | m | horiz. dimension of a rectangular area. | 0.5 | +| focus_yh | m | , vert. dimension of a rectangular area. | 0.5 | +| focus_aw | deg | , horiz. angular dimension of a rectangular area. | 0 | +| focus_ah | deg | , vert. angular dimension of a rectangular area. | 0 | +| focus_r | m | case of circular focusing, focusing radius. | 0 | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcxtrace-comps/sasmodels/SasView_power_law.comp) for `SasView_power_law.comp`. + +--- + +*Generated on mcxtrace 3.99.99.* \ No newline at end of file diff --git a/mcxtrace-comps/sasmodels/SasView_pringle.md b/mcxtrace-comps/sasmodels/SasView_pringle.md new file mode 100644 index 000000000..c1d7be4e6 --- /dev/null +++ b/mcxtrace-comps/sasmodels/SasView_pringle.md @@ -0,0 +1,61 @@ +# The `SasView_pringle` Component + +*McXtrace: SasView pringle model component as sample description.* + +## Identification + +- **Site:** +- **Author:** Jose Robledo +- **Origin:** FZJ / DTU / ESS DMSC +- **Date:** + +## Description + +```text +SasView_pringle component, generated from pringle.c in sasmodels. + +Example: +SasView_pringle(radius, thickness, alpha, beta, sld, sld_solvent, +model_scale=1.0, model_abs=0.0, xwidth=0.01, yheight=0.01, zdepth=0.005, R=0, +int target_index=1, target_x=0, target_y=0, target_z=1, +focus_xw=0.5, focus_yh=0.5, focus_aw=0, focus_ah=0, focus_r=0, +pd_radius=0.0, pd_thickness=0.0) +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| radius | Ang | ([0, inf]) Pringle radius. | 60.0 | +| thickness | Ang | ([0, inf]) Thickness of pringle. | 10.0 | +| alpha | | ([-inf, inf]) Curvature parameter alpha. | 0.001 | +| beta | | ([-inf, inf]) Curvature paramter beta. | 0.02 | +| sld | 1e-6/Ang^2 | ([-inf, inf]) Pringle sld. | 1.0 | +| sld_solvent | 1e-6/Ang^2 | ([-inf, inf]) Solvent sld. | 6.3 | +| model_scale | | Global scale factor for scattering kernel. For systems without inter-particle interference, the form factors can be related to the scattering intensity by the particle volume fraction. | 1.0 | +| model_abs | | Absorption cross section density at 2200 m/s. | 0.0 | +| xwidth | m | ([-inf, inf]) Horiz. dimension of sample, as a width. | 0.01 | +| yheight | m | ([-inf, inf]) vert . dimension of sample, as a height for cylinder/box | 0.01 | +| zdepth | m | ([-inf, inf]) depth of sample | 0.005 | +| R | m | Outer radius of sample in (x,z) plane for cylinder/sphere. | 0 | +| target_x | m | relative focus target position. | 0 | +| target_y | m | relative focus target position. | 0 | +| target_z | m | relative focus target position. | 1 | +| target_index | | Relative index of component to focus at, e.g. next is +1. | 1 | +| focus_xw | m | horiz. dimension of a rectangular area. | 0.5 | +| focus_yh | m | , vert. dimension of a rectangular area. | 0.5 | +| focus_aw | deg | , horiz. angular dimension of a rectangular area. | 0 | +| focus_ah | deg | , vert. angular dimension of a rectangular area. | 0 | +| focus_r | m | case of circular focusing, focusing radius. | 0 | +| pd_radius | | (0,inf) defined as (dx/x), where x is de mean value and dx the standard devition of the variable. | 0.0 | +| pd_thickness | | (0,inf) defined as (dx/x), where x is de mean value and dx the standard devition of the variable | 0.0 | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcxtrace-comps/sasmodels/SasView_pringle.comp) for `SasView_pringle.comp`. + +--- + +*Generated on mcxtrace 3.99.99.* \ No newline at end of file diff --git a/mcxtrace-comps/sasmodels/SasView_raspberry.md b/mcxtrace-comps/sasmodels/SasView_raspberry.md new file mode 100644 index 000000000..dfe396394 --- /dev/null +++ b/mcxtrace-comps/sasmodels/SasView_raspberry.md @@ -0,0 +1,64 @@ +# The `SasView_raspberry` Component + +*McXtrace: SasView raspberry model component as sample description.* + +## Identification + +- **Site:** +- **Author:** Jose Robledo +- **Origin:** FZJ / DTU / ESS DMSC +- **Date:** + +## Description + +```text +SasView_raspberry component, generated from raspberry.c in sasmodels. + +Example: +SasView_raspberry(sld_lg, sld_sm, sld_solvent, volfraction_lg, volfraction_sm, surface_fraction, radius_lg, radius_sm, penetration, +model_scale=1.0, model_abs=0.0, xwidth=0.01, yheight=0.01, zdepth=0.005, R=0, +int target_index=1, target_x=0, target_y=0, target_z=1, +focus_xw=0.5, focus_yh=0.5, focus_aw=0, focus_ah=0, focus_r=0, +pd_radius_lg=0.0, pd_radius_sm=0.0) +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| sld_lg | 1e-6/Ang^2 | ([-inf, inf]) large particle scattering length density. | -0.4 | +| sld_sm | 1e-6/Ang^2 | ([-inf, inf]) small particle scattering length density. | 3.5 | +| sld_solvent | 1e-6/Ang^2 | ([-inf, inf]) solvent scattering length density. | 6.36 | +| volfraction_lg | | ([-inf, inf]) volume fraction of large spheres. | 0.05 | +| volfraction_sm | | ([-inf, inf]) volume fraction of small spheres. | 0.005 | +| surface_fraction | | ([-inf, inf]) fraction of small spheres at surface. | 0.4 | +| radius_lg | Ang | ([0, inf]) radius of large spheres. | 5000 | +| radius_sm | Ang | ([0, inf]) radius of small spheres. | 100 | +| penetration | Ang | ([-1, 1]) fractional penetration depth of small spheres into large sphere. | 0 | +| model_scale | | Global scale factor for scattering kernel. For systems without inter-particle interference, the form factors can be related to the scattering intensity by the particle volume fraction. | 1.0 | +| model_abs | | Absorption cross section density at 2200 m/s. | 0.0 | +| xwidth | m | ([-inf, inf]) Horiz. dimension of sample, as a width. | 0.01 | +| yheight | m | ([-inf, inf]) vert . dimension of sample, as a height for cylinder/box | 0.01 | +| zdepth | m | ([-inf, inf]) depth of sample | 0.005 | +| R | m | Outer radius of sample in (x,z) plane for cylinder/sphere. | 0 | +| target_x | m | relative focus target position. | 0 | +| target_y | m | relative focus target position. | 0 | +| target_z | m | relative focus target position. | 1 | +| target_index | | Relative index of component to focus at, e.g. next is +1. | 1 | +| focus_xw | m | horiz. dimension of a rectangular area. | 0.5 | +| focus_yh | m | , vert. dimension of a rectangular area. | 0.5 | +| focus_aw | deg | , horiz. angular dimension of a rectangular area. | 0 | +| focus_ah | deg | , vert. angular dimension of a rectangular area. | 0 | +| focus_r | m | case of circular focusing, focusing radius. | 0 | +| pd_radius_lg | | (0,inf) defined as (dx/x), where x is de mean value and dx the standard devition of the variable. | 0.0 | +| pd_radius_sm | | (0,inf) defined as (dx/x), where x is de mean value and dx the standard devition of the variable | 0.0 | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcxtrace-comps/sasmodels/SasView_raspberry.comp) for `SasView_raspberry.comp`. + +--- + +*Generated on mcxtrace 3.99.99.* \ No newline at end of file diff --git a/mcxtrace-comps/sasmodels/SasView_rectangular_prism.md b/mcxtrace-comps/sasmodels/SasView_rectangular_prism.md new file mode 100644 index 000000000..10faeca63 --- /dev/null +++ b/mcxtrace-comps/sasmodels/SasView_rectangular_prism.md @@ -0,0 +1,52 @@ +# The `SasView_rectangular_prism` Component + +*McXtrace: SasView rectangular_prism model component as sample description.* + +## Identification + +- **Site:** +- **Author:** Jose Robledo +- **Origin:** FZJ / DTU / ESS DMSC +- **Date:** + +## Description + +```text + +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| sld | | | 6.3 | +| sld_solvent | | | 1 | +| length_a | | | 35 | +| b2a_ratio | | | 1 | +| c2a_ratio | | | 1 | +| model_scale | | | 1.0 | +| model_abs | | | 0.0 | +| xwidth | | | 0.01 | +| yheight | | | 0.01 | +| zdepth | | | 0.005 | +| R | | | 0 | +| target_x | | | 0 | +| target_y | | | 0 | +| target_z | | | 1 | +| target_index | | | 1 | +| focus_xw | | | 0.5 | +| focus_yh | | | 0.5 | +| focus_aw | | | 0 | +| focus_ah | | | 0 | +| focus_r | | | 0 | +| pd_length_a | | | 0.0 | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcxtrace-comps/sasmodels/SasView_rectangular_prism.comp) for `SasView_rectangular_prism.comp`. + +--- + +*Generated on mcxtrace 3.99.99.* \ No newline at end of file diff --git a/mcxtrace-comps/sasmodels/SasView_rectangular_prism_aniso.md b/mcxtrace-comps/sasmodels/SasView_rectangular_prism_aniso.md new file mode 100644 index 000000000..d156c909c --- /dev/null +++ b/mcxtrace-comps/sasmodels/SasView_rectangular_prism_aniso.md @@ -0,0 +1,65 @@ +# The `SasView_rectangular_prism_aniso` Component + +*McXtrace: SasView rectangular_prism model component as sample description.* + +## Identification + +- **Site:** +- **Author:** Jose Robledo +- **Origin:** FZJ / DTU / ESS DMSC +- **Date:** + +## Description + +```text +SasView_rectangular_prism component, generated from rectangular_prism.c in sasmodels. + +Example: +SasView_rectangular_prism_aniso(sld, sld_solvent, length_a, b2a_ratio, c2a_ratio, theta, Phi, Psi, +model_scale=1.0, model_abs=0.0, xwidth=0.01, yheight=0.01, zdepth=0.005, R=0, +int target_index=1, target_x=0, target_y=0, target_z=1, +focus_xw=0.5, focus_yh=0.5, focus_aw=0, focus_ah=0, focus_r=0, +pd_length_a=0.0, pd_theta=0.0, pd_Phi=0.0, pd_Psi=0.0) +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| sld | 1e-6/Ang^2 | ([-inf, inf]) Parallelepiped scattering length density. | 6.3 | +| sld_solvent | 1e-6/Ang^2 | ([-inf, inf]) Solvent scattering length density. | 1 | +| length_a | Ang | ([0, inf]) Shorter side of the parallelepiped. | 35 | +| b2a_ratio | | ([0, inf]) Ratio sides b/a. | 1 | +| c2a_ratio | | ([0, inf]) Ratio sides c/a. | 1 | +| theta | | | 0 | +| Phi | | | 0 | +| Psi | | | 0 | +| model_scale | | Global scale factor for scattering kernel. For systems without inter-particle interference, the form factors can be related to the scattering intensity by the particle volume fraction. | 1.0 | +| model_abs | | Absorption cross section density at 2200 m/s. | 0.0 | +| xwidth | m | ([-inf, inf]) Horiz. dimension of sample, as a width. | 0.01 | +| yheight | m | ([-inf, inf]) vert . dimension of sample, as a height for cylinder/box | 0.01 | +| zdepth | m | ([-inf, inf]) depth of sample | 0.005 | +| R | m | Outer radius of sample in (x,z) plane for cylinder/sphere. | 0 | +| target_x | m | relative focus target position. | 0 | +| target_y | m | relative focus target position. | 0 | +| target_z | m | relative focus target position. | 1 | +| target_index | | Relative index of component to focus at, e.g. next is +1. | 1 | +| focus_xw | m | horiz. dimension of a rectangular area. | 0.5 | +| focus_yh | m | , vert. dimension of a rectangular area. | 0.5 | +| focus_aw | deg | , horiz. angular dimension of a rectangular area. | 0 | +| focus_ah | deg | , vert. angular dimension of a rectangular area. | 0 | +| focus_r | m | case of circular focusing, focusing radius. | 0 | +| pd_length_a | | (0,inf) defined as (dx/x), where x is de mean value and dx the standard devition of the variable. | 0.0 | +| pd_theta | | (0,360) defined as (dx/x), where x is de mean value and dx the standard devition of the variable. | 0.0 | +| pd_Phi | | (0,360) defined as (dx/x), where x is de mean value and dx the standard devition of the variable. | 0.0 | +| pd_Psi | | (0,360) defined as (dx/x), where x is de mean value and dx the standard devition of the variable | 0.0 | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcxtrace-comps/sasmodels/SasView_rectangular_prism_aniso.comp) for `SasView_rectangular_prism_aniso.comp`. + +--- + +*Generated on mcxtrace 3.99.99.* \ No newline at end of file diff --git a/mcxtrace-comps/sasmodels/SasView_rpa.md b/mcxtrace-comps/sasmodels/SasView_rpa.md new file mode 100644 index 000000000..b801bc767 --- /dev/null +++ b/mcxtrace-comps/sasmodels/SasView_rpa.md @@ -0,0 +1,38 @@ +# The `SasView_rpa` Component + +*McXtrace: SasView rpa model component as sample description.* + +## Identification + +- **Site:** +- **Author:** Jose Robledo +- **Origin:** FZJ / DTU / ESS DMSC +- **Date:** + +## Description + +```text +SasView_rpa component, generated from rpa.c in sasmodels. + +Example: +SasView_rpa(case_num, N[4], Phi[4], v[4], L[4], b[4], K12, K13, K14, K23, K24, K34, +model_scale=1.0, model_abs=0.0, xwidth=0.01, yheight=0.01, zdepth=0.005, R=0, +int target_index=1, target_x=0, target_y=0, target_z=1, +focus_xw=0.5, focus_yh=0.5, focus_aw=0, focus_ah=0, focus_r=0, +) +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcxtrace-comps/sasmodels/SasView_rpa.comp) for `SasView_rpa.comp`. + +--- + +*Generated on mcxtrace 3.99.99.* \ No newline at end of file diff --git a/mcxtrace-comps/sasmodels/SasView_sc_paracrystal.md b/mcxtrace-comps/sasmodels/SasView_sc_paracrystal.md new file mode 100644 index 000000000..e554baa53 --- /dev/null +++ b/mcxtrace-comps/sasmodels/SasView_sc_paracrystal.md @@ -0,0 +1,59 @@ +# The `SasView_sc_paracrystal` Component + +*McXtrace: SasView sc_paracrystal model component as sample description.* + +## Identification + +- **Site:** +- **Author:** Jose Robledo +- **Origin:** FZJ / DTU / ESS DMSC +- **Date:** + +## Description + +```text +SasView_sc_paracrystal component, generated from sc_paracrystal.c in sasmodels. + +Example: +SasView_sc_paracrystal(dnn, d_factor, radius, sld, sld_solvent, +model_scale=1.0, model_abs=0.0, xwidth=0.01, yheight=0.01, zdepth=0.005, R=0, +int target_index=1, target_x=0, target_y=0, target_z=1, +focus_xw=0.5, focus_yh=0.5, focus_aw=0, focus_ah=0, focus_r=0, +pd_radius=0.0) +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| dnn | Ang | ([0.0, inf]) Nearest neighbor distance. | 220.0 | +| d_factor | | ([-inf, inf]) Paracrystal distortion factor. | 0.06 | +| radius | Ang | ([0.0, inf]) Radius of sphere. | 40.0 | +| sld | 1e-6/Ang^2 | ([0.0, inf]) Sphere scattering length density. | 3.0 | +| sld_solvent | 1e-6/Ang^2 | ([0.0, inf]) Solvent scattering length density. | 6.3 | +| model_scale | | Global scale factor for scattering kernel. For systems without inter-particle interference, the form factors can be related to the scattering intensity by the particle volume fraction. | 1.0 | +| model_abs | | Absorption cross section density at 2200 m/s. | 0.0 | +| xwidth | m | ([-inf, inf]) Horiz. dimension of sample, as a width. | 0.01 | +| yheight | m | ([-inf, inf]) vert . dimension of sample, as a height for cylinder/box | 0.01 | +| zdepth | m | ([-inf, inf]) depth of sample | 0.005 | +| R | m | Outer radius of sample in (x,z) plane for cylinder/sphere. | 0 | +| target_x | m | relative focus target position. | 0 | +| target_y | m | relative focus target position. | 0 | +| target_z | m | relative focus target position. | 1 | +| target_index | | Relative index of component to focus at, e.g. next is +1. | 1 | +| focus_xw | m | horiz. dimension of a rectangular area. | 0.5 | +| focus_yh | m | , vert. dimension of a rectangular area. | 0.5 | +| focus_aw | deg | , horiz. angular dimension of a rectangular area. | 0 | +| focus_ah | deg | , vert. angular dimension of a rectangular area. | 0 | +| focus_r | m | case of circular focusing, focusing radius. | 0 | +| pd_radius | | (0,inf) defined as (dx/x), where x is de mean value and dx the standard devition of the variable | 0.0 | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcxtrace-comps/sasmodels/SasView_sc_paracrystal.comp) for `SasView_sc_paracrystal.comp`. + +--- + +*Generated on mcxtrace 3.99.99.* \ No newline at end of file diff --git a/mcxtrace-comps/sasmodels/SasView_sc_paracrystal_aniso.md b/mcxtrace-comps/sasmodels/SasView_sc_paracrystal_aniso.md new file mode 100644 index 000000000..ce4a10956 --- /dev/null +++ b/mcxtrace-comps/sasmodels/SasView_sc_paracrystal_aniso.md @@ -0,0 +1,65 @@ +# The `SasView_sc_paracrystal_aniso` Component + +*McXtrace: SasView sc_paracrystal model component as sample description.* + +## Identification + +- **Site:** +- **Author:** Jose Robledo +- **Origin:** FZJ / DTU / ESS DMSC +- **Date:** + +## Description + +```text +SasView_sc_paracrystal component, generated from sc_paracrystal.c in sasmodels. + +Example: +SasView_sc_paracrystal_aniso(dnn, d_factor, radius, sld, sld_solvent, theta, Phi, Psi, +model_scale=1.0, model_abs=0.0, xwidth=0.01, yheight=0.01, zdepth=0.005, R=0, +int target_index=1, target_x=0, target_y=0, target_z=1, +focus_xw=0.5, focus_yh=0.5, focus_aw=0, focus_ah=0, focus_r=0, +pd_radius=0.0, pd_theta=0.0, pd_Phi=0.0, pd_Psi=0.0) +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| dnn | Ang | ([0.0, inf]) Nearest neighbor distance. | 220.0 | +| d_factor | | ([-inf, inf]) Paracrystal distortion factor. | 0.06 | +| radius | Ang | ([0.0, inf]) Radius of sphere. | 40.0 | +| sld | 1e-6/Ang^2 | ([0.0, inf]) Sphere scattering length density. | 3.0 | +| sld_solvent | 1e-6/Ang^2 | ([0.0, inf]) Solvent scattering length density. | 6.3 | +| theta | | | 0 | +| Phi | | | 0 | +| Psi | | | 0 | +| model_scale | | Global scale factor for scattering kernel. For systems without inter-particle interference, the form factors can be related to the scattering intensity by the particle volume fraction. | 1.0 | +| model_abs | | Absorption cross section density at 2200 m/s. | 0.0 | +| xwidth | m | ([-inf, inf]) Horiz. dimension of sample, as a width. | 0.01 | +| yheight | m | ([-inf, inf]) vert . dimension of sample, as a height for cylinder/box | 0.01 | +| zdepth | m | ([-inf, inf]) depth of sample | 0.005 | +| R | m | Outer radius of sample in (x,z) plane for cylinder/sphere. | 0 | +| target_x | m | relative focus target position. | 0 | +| target_y | m | relative focus target position. | 0 | +| target_z | m | relative focus target position. | 1 | +| target_index | | Relative index of component to focus at, e.g. next is +1. | 1 | +| focus_xw | m | horiz. dimension of a rectangular area. | 0.5 | +| focus_yh | m | , vert. dimension of a rectangular area. | 0.5 | +| focus_aw | deg | , horiz. angular dimension of a rectangular area. | 0 | +| focus_ah | deg | , vert. angular dimension of a rectangular area. | 0 | +| focus_r | m | case of circular focusing, focusing radius. | 0 | +| pd_radius | | (0,inf) defined as (dx/x), where x is de mean value and dx the standard devition of the variable. | 0.0 | +| pd_theta | | (0,360) defined as (dx/x), where x is de mean value and dx the standard devition of the variable. | 0.0 | +| pd_Phi | | (0,360) defined as (dx/x), where x is de mean value and dx the standard devition of the variable. | 0.0 | +| pd_Psi | | (0,360) defined as (dx/x), where x is de mean value and dx the standard devition of the variable | 0.0 | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcxtrace-comps/sasmodels/SasView_sc_paracrystal_aniso.comp) for `SasView_sc_paracrystal_aniso.comp`. + +--- + +*Generated on mcxtrace 3.99.99.* \ No newline at end of file diff --git a/mcxtrace-comps/sasmodels/SasView_sphere.md b/mcxtrace-comps/sasmodels/SasView_sphere.md new file mode 100644 index 000000000..512c2912f --- /dev/null +++ b/mcxtrace-comps/sasmodels/SasView_sphere.md @@ -0,0 +1,57 @@ +# The `SasView_sphere` Component + +*McXtrace: SasView sphere model component as sample description.* + +## Identification + +- **Site:** +- **Author:** Jose Robledo +- **Origin:** FZJ / DTU / ESS DMSC +- **Date:** + +## Description + +```text +SasView_sphere component, generated from sphere.c in sasmodels. + +Example: +SasView_sphere(sld, sld_solvent, radius, +model_scale=1.0, model_abs=0.0, xwidth=0.01, yheight=0.01, zdepth=0.005, R=0, +int target_index=1, target_x=0, target_y=0, target_z=1, +focus_xw=0.5, focus_yh=0.5, focus_aw=0, focus_ah=0, focus_r=0, +pd_radius=0.0) +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| sld | 1e-6/Ang^2 | ([-inf, inf]) Layer scattering length density. | 1 | +| sld_solvent | 1e-6/Ang^2 | ([-inf, inf]) Solvent scattering length density. | 6 | +| radius | Ang | ([0, inf]) Sphere radius. | 50 | +| model_scale | | Global scale factor for scattering kernel. For systems without inter-particle interference, the form factors can be related to the scattering intensity by the particle volume fraction. | 1.0 | +| model_abs | | Absorption cross section density at 2200 m/s. | 0.0 | +| xwidth | m | ([-inf, inf]) Horiz. dimension of sample, as a width. | 0.01 | +| yheight | m | ([-inf, inf]) vert . dimension of sample, as a height for cylinder/box | 0.01 | +| zdepth | m | ([-inf, inf]) depth of sample | 0.005 | +| R | m | Outer radius of sample in (x,z) plane for cylinder/sphere. | 0 | +| target_x | m | relative focus target position. | 0 | +| target_y | m | relative focus target position. | 0 | +| target_z | m | relative focus target position. | 1 | +| target_index | | Relative index of component to focus at, e.g. next is +1. | 1 | +| focus_xw | m | horiz. dimension of a rectangular area. | 0.5 | +| focus_yh | m | , vert. dimension of a rectangular area. | 0.5 | +| focus_aw | deg | , horiz. angular dimension of a rectangular area. | 0 | +| focus_ah | deg | , vert. angular dimension of a rectangular area. | 0 | +| focus_r | m | case of circular focusing, focusing radius. | 0 | +| pd_radius | | (0,inf) defined as (dx/x), where x is de mean value and dx the standard devition of the variable | 0.0 | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcxtrace-comps/sasmodels/SasView_sphere.comp) for `SasView_sphere.comp`. + +--- + +*Generated on mcxtrace 3.99.99.* \ No newline at end of file diff --git a/mcxtrace-comps/sasmodels/SasView_spinodal.md b/mcxtrace-comps/sasmodels/SasView_spinodal.md new file mode 100644 index 000000000..bc1b8936a --- /dev/null +++ b/mcxtrace-comps/sasmodels/SasView_spinodal.md @@ -0,0 +1,55 @@ +# The `SasView_spinodal` Component + +*McXtrace: SasView spinodal model component as sample description.* + +## Identification + +- **Site:** +- **Author:** Jose Robledo +- **Origin:** FZJ / DTU / ESS DMSC +- **Date:** + +## Description + +```text +SasView_spinodal component, generated from spinodal.c in sasmodels. + +Example: +SasView_spinodal(gamma, q_0, +model_scale=1.0, model_abs=0.0, xwidth=0.01, yheight=0.01, zdepth=0.005, R=0, +int target_index=1, target_x=0, target_y=0, target_z=1, +focus_xw=0.5, focus_yh=0.5, focus_aw=0, focus_ah=0, focus_r=0, +) +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| gamma | | ([-inf, inf]) Exponent. | 3.0 | +| q_0 | 1/Ang | ([-inf, inf]) Correlation peak position. | 0.1 | +| model_scale | | Global scale factor for scattering kernel. For systems without inter-particle interference, the form factors can be related to the scattering intensity by the particle volume fraction. | 1.0 | +| model_abs | | Absorption cross section density at 2200 m/s. | 0.0 | +| xwidth | m | ([-inf, inf]) Horiz. dimension of sample, as a width. | 0.01 | +| yheight | m | ([-inf, inf]) vert . dimension of sample, as a height for cylinder/box | 0.01 | +| zdepth | m | ([-inf, inf]) depth of sample | 0.005 | +| R | m | Outer radius of sample in (x,z) plane for cylinder/sphere. | 0 | +| target_x | m | relative focus target position. | 0 | +| target_y | m | relative focus target position. | 0 | +| target_z | m | relative focus target position. | 1 | +| target_index | | Relative index of component to focus at, e.g. next is +1. | 1 | +| focus_xw | m | horiz. dimension of a rectangular area. | 0.5 | +| focus_yh | m | , vert. dimension of a rectangular area. | 0.5 | +| focus_aw | deg | , horiz. angular dimension of a rectangular area. | 0 | +| focus_ah | deg | , vert. angular dimension of a rectangular area. | 0 | +| focus_r | m | case of circular focusing, focusing radius. | 0 | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcxtrace-comps/sasmodels/SasView_spinodal.comp) for `SasView_spinodal.comp`. + +--- + +*Generated on mcxtrace 3.99.99.* \ No newline at end of file diff --git a/mcxtrace-comps/sasmodels/SasView_squarewell.md b/mcxtrace-comps/sasmodels/SasView_squarewell.md new file mode 100644 index 000000000..27cb9d22d --- /dev/null +++ b/mcxtrace-comps/sasmodels/SasView_squarewell.md @@ -0,0 +1,58 @@ +# The `SasView_squarewell` Component + +*McXtrace: SasView squarewell model component as sample description.* + +## Identification + +- **Site:** +- **Author:** Jose Robledo +- **Origin:** FZJ / DTU / ESS DMSC +- **Date:** + +## Description + +```text +SasView_squarewell component, generated from squarewell.c in sasmodels. + +Example: +SasView_squarewell(radius_effective, volfraction, welldepth, wellwidth, +model_scale=1.0, model_abs=0.0, xwidth=0.01, yheight=0.01, zdepth=0.005, R=0, +int target_index=1, target_x=0, target_y=0, target_z=1, +focus_xw=0.5, focus_yh=0.5, focus_aw=0, focus_ah=0, focus_r=0, +pd_radius_effective=0.0) +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| radius_effective | Ang | ([0, inf]) effective radius of hard sphere. | 50.0 | +| volfraction | | ([0, 0.08]) volume fraction of spheres. | 0.04 | +| welldepth | kT | ([0.0, 1.5]) depth of well, epsilon. | 1.5 | +| wellwidth | diameters | ([1.0, inf]) width of well in diameters (=2R) units, must be > 1. | 1.2 | +| model_scale | | Global scale factor for scattering kernel. For systems without inter-particle interference, the form factors can be related to the scattering intensity by the particle volume fraction. | 1.0 | +| model_abs | | Absorption cross section density at 2200 m/s. | 0.0 | +| xwidth | m | ([-inf, inf]) Horiz. dimension of sample, as a width. | 0.01 | +| yheight | m | ([-inf, inf]) vert . dimension of sample, as a height for cylinder/box | 0.01 | +| zdepth | m | ([-inf, inf]) depth of sample | 0.005 | +| R | m | Outer radius of sample in (x,z) plane for cylinder/sphere. | 0 | +| target_x | m | relative focus target position. | 0 | +| target_y | m | relative focus target position. | 0 | +| target_z | m | relative focus target position. | 1 | +| target_index | | Relative index of component to focus at, e.g. next is +1. | 1 | +| focus_xw | m | horiz. dimension of a rectangular area. | 0.5 | +| focus_yh | m | , vert. dimension of a rectangular area. | 0.5 | +| focus_aw | deg | , horiz. angular dimension of a rectangular area. | 0 | +| focus_ah | deg | , vert. angular dimension of a rectangular area. | 0 | +| focus_r | m | case of circular focusing, focusing radius. | 0 | +| pd_radius_effective | | (0,inf) defined as (dx/x), where x is de mean value and dx the standard devition of the variable | 0.0 | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcxtrace-comps/sasmodels/SasView_squarewell.comp) for `SasView_squarewell.comp`. + +--- + +*Generated on mcxtrace 3.99.99.* \ No newline at end of file diff --git a/mcxtrace-comps/sasmodels/SasView_stacked_disks.md b/mcxtrace-comps/sasmodels/SasView_stacked_disks.md new file mode 100644 index 000000000..a24000029 --- /dev/null +++ b/mcxtrace-comps/sasmodels/SasView_stacked_disks.md @@ -0,0 +1,64 @@ +# The `SasView_stacked_disks` Component + +*McXtrace: SasView stacked_disks model component as sample description.* + +## Identification + +- **Site:** +- **Author:** Jose Robledo +- **Origin:** FZJ / DTU / ESS DMSC +- **Date:** + +## Description + +```text +SasView_stacked_disks component, generated from stacked_disks.c in sasmodels. + +Example: +SasView_stacked_disks(thick_core, thick_layer, radius, n_stacking, sigma_d, sld_core, sld_layer, sld_solvent, +model_scale=1.0, model_abs=0.0, xwidth=0.01, yheight=0.01, zdepth=0.005, R=0, +int target_index=1, target_x=0, target_y=0, target_z=1, +focus_xw=0.5, focus_yh=0.5, focus_aw=0, focus_ah=0, focus_r=0, +pd_thick_core=0.0, pd_thick_layer=0.0, pd_radius=0.0) +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| thick_core | Ang | ([0, inf]) Thickness of the core disk. | 10.0 | +| thick_layer | Ang | ([0, inf]) Thickness of layer each side of core. | 10.0 | +| radius | Ang | ([0, inf]) Radius of the stacked disk. | 15.0 | +| n_stacking | | ([1, inf]) Number of stacked layer/core/layer disks. | 1.0 | +| sigma_d | Ang | ([0, inf]) Sigma of nearest neighbor spacing. | 0 | +| sld_core | 1e-6/Ang^2 | ([-inf, inf]) Core scattering length density. | 4 | +| sld_layer | 1e-6/Ang^2 | ([-inf, inf]) Layer scattering length density. | 0.0 | +| sld_solvent | 1e-6/Ang^2 | ([-inf, inf]) Solvent scattering length density. | 5.0 | +| model_scale | | Global scale factor for scattering kernel. For systems without inter-particle interference, the form factors can be related to the scattering intensity by the particle volume fraction. | 1.0 | +| model_abs | | Absorption cross section density at 2200 m/s. | 0.0 | +| xwidth | m | ([-inf, inf]) Horiz. dimension of sample, as a width. | 0.01 | +| yheight | m | ([-inf, inf]) vert . dimension of sample, as a height for cylinder/box | 0.01 | +| zdepth | m | ([-inf, inf]) depth of sample | 0.005 | +| R | m | Outer radius of sample in (x,z) plane for cylinder/sphere. | 0 | +| target_x | m | relative focus target position. | 0 | +| target_y | m | relative focus target position. | 0 | +| target_z | m | relative focus target position. | 1 | +| target_index | | Relative index of component to focus at, e.g. next is +1. | 1 | +| focus_xw | m | horiz. dimension of a rectangular area. | 0.5 | +| focus_yh | m | , vert. dimension of a rectangular area. | 0.5 | +| focus_aw | deg | , horiz. angular dimension of a rectangular area. | 0 | +| focus_ah | deg | , vert. angular dimension of a rectangular area. | 0 | +| focus_r | m | case of circular focusing, focusing radius. | 0 | +| pd_thick_core | | (0,inf) defined as (dx/x), where x is de mean value and dx the standard devition of the variable. | 0.0 | +| pd_thick_layer | | (0,inf) defined as (dx/x), where x is de mean value and dx the standard devition of the variable. | 0.0 | +| pd_radius | | (0,inf) defined as (dx/x), where x is de mean value and dx the standard devition of the variable | 0.0 | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcxtrace-comps/sasmodels/SasView_stacked_disks.comp) for `SasView_stacked_disks.comp`. + +--- + +*Generated on mcxtrace 3.99.99.* \ No newline at end of file diff --git a/mcxtrace-comps/sasmodels/SasView_stacked_disks_aniso.md b/mcxtrace-comps/sasmodels/SasView_stacked_disks_aniso.md new file mode 100644 index 000000000..c52982e51 --- /dev/null +++ b/mcxtrace-comps/sasmodels/SasView_stacked_disks_aniso.md @@ -0,0 +1,68 @@ +# The `SasView_stacked_disks_aniso` Component + +*McXtrace: SasView stacked_disks model component as sample description.* + +## Identification + +- **Site:** +- **Author:** Jose Robledo +- **Origin:** FZJ / DTU / ESS DMSC +- **Date:** + +## Description + +```text +SasView_stacked_disks component, generated from stacked_disks.c in sasmodels. + +Example: +SasView_stacked_disks_aniso(thick_core, thick_layer, radius, n_stacking, sigma_d, sld_core, sld_layer, sld_solvent, theta, Phi, +model_scale=1.0, model_abs=0.0, xwidth=0.01, yheight=0.01, zdepth=0.005, R=0, +int target_index=1, target_x=0, target_y=0, target_z=1, +focus_xw=0.5, focus_yh=0.5, focus_aw=0, focus_ah=0, focus_r=0, +pd_thick_core=0.0, pd_thick_layer=0.0, pd_radius=0.0, pd_theta=0.0, pd_Phi=0.0) +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| thick_core | Ang | ([0, inf]) Thickness of the core disk. | 10.0 | +| thick_layer | Ang | ([0, inf]) Thickness of layer each side of core. | 10.0 | +| radius | Ang | ([0, inf]) Radius of the stacked disk. | 15.0 | +| n_stacking | | ([1, inf]) Number of stacked layer/core/layer disks. | 1.0 | +| sigma_d | Ang | ([0, inf]) Sigma of nearest neighbor spacing. | 0 | +| sld_core | 1e-6/Ang^2 | ([-inf, inf]) Core scattering length density. | 4 | +| sld_layer | 1e-6/Ang^2 | ([-inf, inf]) Layer scattering length density. | 0.0 | +| sld_solvent | 1e-6/Ang^2 | ([-inf, inf]) Solvent scattering length density. | 5.0 | +| theta | | | 0 | +| Phi | | | 0 | +| model_scale | | Global scale factor for scattering kernel. For systems without inter-particle interference, the form factors can be related to the scattering intensity by the particle volume fraction. | 1.0 | +| model_abs | | Absorption cross section density at 2200 m/s. | 0.0 | +| xwidth | m | ([-inf, inf]) Horiz. dimension of sample, as a width. | 0.01 | +| yheight | m | ([-inf, inf]) vert . dimension of sample, as a height for cylinder/box | 0.01 | +| zdepth | m | ([-inf, inf]) depth of sample | 0.005 | +| R | m | Outer radius of sample in (x,z) plane for cylinder/sphere. | 0 | +| target_x | m | relative focus target position. | 0 | +| target_y | m | relative focus target position. | 0 | +| target_z | m | relative focus target position. | 1 | +| target_index | | Relative index of component to focus at, e.g. next is +1. | 1 | +| focus_xw | m | horiz. dimension of a rectangular area. | 0.5 | +| focus_yh | m | , vert. dimension of a rectangular area. | 0.5 | +| focus_aw | deg | , horiz. angular dimension of a rectangular area. | 0 | +| focus_ah | deg | , vert. angular dimension of a rectangular area. | 0 | +| focus_r | m | case of circular focusing, focusing radius. | 0 | +| pd_thick_core | | (0,inf) defined as (dx/x), where x is de mean value and dx the standard devition of the variable. | 0.0 | +| pd_thick_layer | | (0,inf) defined as (dx/x), where x is de mean value and dx the standard devition of the variable. | 0.0 | +| pd_radius | | (0,inf) defined as (dx/x), where x is de mean value and dx the standard devition of the variable. | 0.0 | +| pd_theta | | (0,360) defined as (dx/x), where x is de mean value and dx the standard devition of the variable. | 0.0 | +| pd_Phi | | (0,360) defined as (dx/x), where x is de mean value and dx the standard devition of the variable | 0.0 | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcxtrace-comps/sasmodels/SasView_stacked_disks_aniso.comp) for `SasView_stacked_disks_aniso.comp`. + +--- + +*Generated on mcxtrace 3.99.99.* \ No newline at end of file diff --git a/mcxtrace-comps/sasmodels/SasView_star_polymer.md b/mcxtrace-comps/sasmodels/SasView_star_polymer.md new file mode 100644 index 000000000..0968421a2 --- /dev/null +++ b/mcxtrace-comps/sasmodels/SasView_star_polymer.md @@ -0,0 +1,56 @@ +# The `SasView_star_polymer` Component + +*McXtrace: SasView star_polymer model component as sample description.* + +## Identification + +- **Site:** +- **Author:** Jose Robledo +- **Origin:** FZJ / DTU / ESS DMSC +- **Date:** + +## Description + +```text +SasView_star_polymer component, generated from star_polymer.c in sasmodels. + +Example: +SasView_star_polymer(rg_squared, arms, +model_scale=1.0, model_abs=0.0, xwidth=0.01, yheight=0.01, zdepth=0.005, R=0, +int target_index=1, target_x=0, target_y=0, target_z=1, +focus_xw=0.5, focus_yh=0.5, focus_aw=0, focus_ah=0, focus_r=0, +pd_rg_squared=0.0) +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| rg_squared | Ang^2 | ([0.0, inf]) Ensemble radius of gyration SQUARED of the full polymer. | 100.0 | +| arms | | ([1.0, 6.0]) Number of arms in the model. | 3 | +| model_scale | | Global scale factor for scattering kernel. For systems without inter-particle interference, the form factors can be related to the scattering intensity by the particle volume fraction. | 1.0 | +| model_abs | | Absorption cross section density at 2200 m/s. | 0.0 | +| xwidth | m | ([-inf, inf]) Horiz. dimension of sample, as a width. | 0.01 | +| yheight | m | ([-inf, inf]) vert . dimension of sample, as a height for cylinder/box | 0.01 | +| zdepth | m | ([-inf, inf]) depth of sample | 0.005 | +| R | m | Outer radius of sample in (x,z) plane for cylinder/sphere. | 0 | +| target_x | m | relative focus target position. | 0 | +| target_y | m | relative focus target position. | 0 | +| target_z | m | relative focus target position. | 1 | +| target_index | | Relative index of component to focus at, e.g. next is +1. | 1 | +| focus_xw | m | horiz. dimension of a rectangular area. | 0.5 | +| focus_yh | m | , vert. dimension of a rectangular area. | 0.5 | +| focus_aw | deg | , horiz. angular dimension of a rectangular area. | 0 | +| focus_ah | deg | , vert. angular dimension of a rectangular area. | 0 | +| focus_r | m | case of circular focusing, focusing radius. | 0 | +| pd_rg_squared | | (0,inf) defined as (dx/x), where x is de mean value and dx the standard devition of the variable | 0.0 | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcxtrace-comps/sasmodels/SasView_star_polymer.comp) for `SasView_star_polymer.comp`. + +--- + +*Generated on mcxtrace 3.99.99.* \ No newline at end of file diff --git a/mcxtrace-comps/sasmodels/SasView_stickyhardsphere.md b/mcxtrace-comps/sasmodels/SasView_stickyhardsphere.md new file mode 100644 index 000000000..e742087a2 --- /dev/null +++ b/mcxtrace-comps/sasmodels/SasView_stickyhardsphere.md @@ -0,0 +1,58 @@ +# The `SasView_stickyhardsphere` Component + +*McXtrace: SasView stickyhardsphere model component as sample description.* + +## Identification + +- **Site:** +- **Author:** Jose Robledo +- **Origin:** FZJ / DTU / ESS DMSC +- **Date:** + +## Description + +```text +SasView_stickyhardsphere component, generated from stickyhardsphere.c in sasmodels. + +Example: +SasView_stickyhardsphere(radius_effective, volfraction, perturb, stickiness, +model_scale=1.0, model_abs=0.0, xwidth=0.01, yheight=0.01, zdepth=0.005, R=0, +int target_index=1, target_x=0, target_y=0, target_z=1, +focus_xw=0.5, focus_yh=0.5, focus_aw=0, focus_ah=0, focus_r=0, +pd_radius_effective=0.0) +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| radius_effective | Ang | ([0, inf]) effective radius of hard sphere. | 50.0 | +| volfraction | | ([0, 0.74]) volume fraction of hard spheres. | 0.2 | +| perturb | | ([0.01, 0.1]) perturbation parameter, tau. | 0.05 | +| stickiness | | ([-inf, inf]) stickiness, epsilon. | 0.2 | +| model_scale | | Global scale factor for scattering kernel. For systems without inter-particle interference, the form factors can be related to the scattering intensity by the particle volume fraction. | 1.0 | +| model_abs | | Absorption cross section density at 2200 m/s. | 0.0 | +| xwidth | m | ([-inf, inf]) Horiz. dimension of sample, as a width. | 0.01 | +| yheight | m | ([-inf, inf]) vert . dimension of sample, as a height for cylinder/box | 0.01 | +| zdepth | m | ([-inf, inf]) depth of sample | 0.005 | +| R | m | Outer radius of sample in (x,z) plane for cylinder/sphere. | 0 | +| target_x | m | relative focus target position. | 0 | +| target_y | m | relative focus target position. | 0 | +| target_z | m | relative focus target position. | 1 | +| target_index | | Relative index of component to focus at, e.g. next is +1. | 1 | +| focus_xw | m | horiz. dimension of a rectangular area. | 0.5 | +| focus_yh | m | , vert. dimension of a rectangular area. | 0.5 | +| focus_aw | deg | , horiz. angular dimension of a rectangular area. | 0 | +| focus_ah | deg | , vert. angular dimension of a rectangular area. | 0 | +| focus_r | m | case of circular focusing, focusing radius. | 0 | +| pd_radius_effective | | (0,inf) defined as (dx/x), where x is de mean value and dx the standard devition of the variable | 0.0 | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcxtrace-comps/sasmodels/SasView_stickyhardsphere.comp) for `SasView_stickyhardsphere.comp`. + +--- + +*Generated on mcxtrace 3.99.99.* \ No newline at end of file diff --git a/mcxtrace-comps/sasmodels/SasView_superball.md b/mcxtrace-comps/sasmodels/SasView_superball.md new file mode 100644 index 000000000..d2d2b80c1 --- /dev/null +++ b/mcxtrace-comps/sasmodels/SasView_superball.md @@ -0,0 +1,58 @@ +# The `SasView_superball` Component + +*McXtrace: SasView superball model component as sample description.* + +## Identification + +- **Site:** +- **Author:** Jose Robledo +- **Origin:** FZJ / DTU / ESS DMSC +- **Date:** + +## Description + +```text +SasView_superball component, generated from superball.c in sasmodels. + +Example: +SasView_superball(sld, sld_solvent, length_a, exponent_p, +model_scale=1.0, model_abs=0.0, xwidth=0.01, yheight=0.01, zdepth=0.005, R=0, +int target_index=1, target_x=0, target_y=0, target_z=1, +focus_xw=0.5, focus_yh=0.5, focus_aw=0, focus_ah=0, focus_r=0, +pd_length_a=0.0) +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| sld | 1e-6/Ang^2 | ([-inf, inf]) Superball scattering length density. | 4 | +| sld_solvent | 1e-6/Ang^2 | ([-inf, inf]) Solvent scattering length density. | 1 | +| length_a | Ang | ([0, inf]) Cube edge length of the superball. | 50 | +| exponent_p | | ([0, inf]) Exponent describing the roundness of the superball. | 2.5 | +| model_scale | | Global scale factor for scattering kernel. For systems without inter-particle interference, the form factors can be related to the scattering intensity by the particle volume fraction. | 1.0 | +| model_abs | | Absorption cross section density at 2200 m/s. | 0.0 | +| xwidth | m | ([-inf, inf]) Horiz. dimension of sample, as a width. | 0.01 | +| yheight | m | ([-inf, inf]) vert . dimension of sample, as a height for cylinder/box | 0.01 | +| zdepth | m | ([-inf, inf]) depth of sample | 0.005 | +| R | m | Outer radius of sample in (x,z) plane for cylinder/sphere. | 0 | +| target_x | m | relative focus target position. | 0 | +| target_y | m | relative focus target position. | 0 | +| target_z | m | relative focus target position. | 1 | +| target_index | | Relative index of component to focus at, e.g. next is +1. | 1 | +| focus_xw | m | horiz. dimension of a rectangular area. | 0.5 | +| focus_yh | m | , vert. dimension of a rectangular area. | 0.5 | +| focus_aw | deg | , horiz. angular dimension of a rectangular area. | 0 | +| focus_ah | deg | , vert. angular dimension of a rectangular area. | 0 | +| focus_r | m | case of circular focusing, focusing radius. | 0 | +| pd_length_a | | (0,inf) defined as (dx/x), where x is de mean value and dx the standard devition of the variable | 0.0 | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcxtrace-comps/sasmodels/SasView_superball.comp) for `SasView_superball.comp`. + +--- + +*Generated on mcxtrace 3.99.99.* \ No newline at end of file diff --git a/mcxtrace-comps/sasmodels/SasView_superball_aniso.md b/mcxtrace-comps/sasmodels/SasView_superball_aniso.md new file mode 100644 index 000000000..514801d38 --- /dev/null +++ b/mcxtrace-comps/sasmodels/SasView_superball_aniso.md @@ -0,0 +1,64 @@ +# The `SasView_superball_aniso` Component + +*McXtrace: SasView superball model component as sample description.* + +## Identification + +- **Site:** +- **Author:** Jose Robledo +- **Origin:** FZJ / DTU / ESS DMSC +- **Date:** + +## Description + +```text +SasView_superball component, generated from superball.c in sasmodels. + +Example: +SasView_superball_aniso(sld, sld_solvent, length_a, exponent_p, theta, Phi, Psi, +model_scale=1.0, model_abs=0.0, xwidth=0.01, yheight=0.01, zdepth=0.005, R=0, +int target_index=1, target_x=0, target_y=0, target_z=1, +focus_xw=0.5, focus_yh=0.5, focus_aw=0, focus_ah=0, focus_r=0, +pd_length_a=0.0, pd_theta=0.0, pd_Phi=0.0, pd_Psi=0.0) +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| sld | 1e-6/Ang^2 | ([-inf, inf]) Superball scattering length density. | 4 | +| sld_solvent | 1e-6/Ang^2 | ([-inf, inf]) Solvent scattering length density. | 1 | +| length_a | Ang | ([0, inf]) Cube edge length of the superball. | 50 | +| exponent_p | | ([0, inf]) Exponent describing the roundness of the superball. | 2.5 | +| theta | | | 0 | +| Phi | | | 0 | +| Psi | | | 0 | +| model_scale | | Global scale factor for scattering kernel. For systems without inter-particle interference, the form factors can be related to the scattering intensity by the particle volume fraction. | 1.0 | +| model_abs | | Absorption cross section density at 2200 m/s. | 0.0 | +| xwidth | m | ([-inf, inf]) Horiz. dimension of sample, as a width. | 0.01 | +| yheight | m | ([-inf, inf]) vert . dimension of sample, as a height for cylinder/box | 0.01 | +| zdepth | m | ([-inf, inf]) depth of sample | 0.005 | +| R | m | Outer radius of sample in (x,z) plane for cylinder/sphere. | 0 | +| target_x | m | relative focus target position. | 0 | +| target_y | m | relative focus target position. | 0 | +| target_z | m | relative focus target position. | 1 | +| target_index | | Relative index of component to focus at, e.g. next is +1. | 1 | +| focus_xw | m | horiz. dimension of a rectangular area. | 0.5 | +| focus_yh | m | , vert. dimension of a rectangular area. | 0.5 | +| focus_aw | deg | , horiz. angular dimension of a rectangular area. | 0 | +| focus_ah | deg | , vert. angular dimension of a rectangular area. | 0 | +| focus_r | m | case of circular focusing, focusing radius. | 0 | +| pd_length_a | | (0,inf) defined as (dx/x), where x is de mean value and dx the standard devition of the variable. | 0.0 | +| pd_theta | | (0,360) defined as (dx/x), where x is de mean value and dx the standard devition of the variable. | 0.0 | +| pd_Phi | | (0,360) defined as (dx/x), where x is de mean value and dx the standard devition of the variable. | 0.0 | +| pd_Psi | | (0,360) defined as (dx/x), where x is de mean value and dx the standard devition of the variable | 0.0 | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcxtrace-comps/sasmodels/SasView_superball_aniso.comp) for `SasView_superball_aniso.comp`. + +--- + +*Generated on mcxtrace 3.99.99.* \ No newline at end of file diff --git a/mcxtrace-comps/sasmodels/SasView_surface_fractal.md b/mcxtrace-comps/sasmodels/SasView_surface_fractal.md new file mode 100644 index 000000000..c1b2913dd --- /dev/null +++ b/mcxtrace-comps/sasmodels/SasView_surface_fractal.md @@ -0,0 +1,58 @@ +# The `SasView_surface_fractal` Component + +*McXtrace: SasView surface_fractal model component as sample description.* + +## Identification + +- **Site:** +- **Author:** Jose Robledo +- **Origin:** FZJ / DTU / ESS DMSC +- **Date:** + +## Description + +```text +SasView_surface_fractal component, generated from surface_fractal.c in sasmodels. + +Example: +SasView_surface_fractal(radius, fractal_dim_surf, cutoff_length, +model_scale=1.0, model_abs=0.0, xwidth=0.01, yheight=0.01, zdepth=0.005, R=0, +int target_index=1, target_x=0, target_y=0, target_z=1, +focus_xw=0.5, focus_yh=0.5, focus_aw=0, focus_ah=0, focus_r=0, +pd_radius=0.0, pd_cutoff_length=0.0) +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| radius | Ang | ([0, inf]) Particle radius. | 10.0 | +| fractal_dim_surf | | ([1, 3]) Surface fractal dimension. | 2.0 | +| cutoff_length | Ang | ([0.0, inf]) Cut-off Length. | 500.0 | +| model_scale | | Global scale factor for scattering kernel. For systems without inter-particle interference, the form factors can be related to the scattering intensity by the particle volume fraction. | 1.0 | +| model_abs | | Absorption cross section density at 2200 m/s. | 0.0 | +| xwidth | m | ([-inf, inf]) Horiz. dimension of sample, as a width. | 0.01 | +| yheight | m | ([-inf, inf]) vert . dimension of sample, as a height for cylinder/box | 0.01 | +| zdepth | m | ([-inf, inf]) depth of sample | 0.005 | +| R | m | Outer radius of sample in (x,z) plane for cylinder/sphere. | 0 | +| target_x | m | relative focus target position. | 0 | +| target_y | m | relative focus target position. | 0 | +| target_z | m | relative focus target position. | 1 | +| target_index | | Relative index of component to focus at, e.g. next is +1. | 1 | +| focus_xw | m | horiz. dimension of a rectangular area. | 0.5 | +| focus_yh | m | , vert. dimension of a rectangular area. | 0.5 | +| focus_aw | deg | , horiz. angular dimension of a rectangular area. | 0 | +| focus_ah | deg | , vert. angular dimension of a rectangular area. | 0 | +| focus_r | m | case of circular focusing, focusing radius. | 0 | +| pd_radius | | (0,inf) defined as (dx/x), where x is de mean value and dx the standard devition of the variable. | 0.0 | +| pd_cutoff_length | | (0,inf) defined as (dx/x), where x is de mean value and dx the standard devition of the variable | 0.0 | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcxtrace-comps/sasmodels/SasView_surface_fractal.comp) for `SasView_surface_fractal.comp`. + +--- + +*Generated on mcxtrace 3.99.99.* \ No newline at end of file diff --git a/mcxtrace-comps/sasmodels/SasView_teubner_strey.md b/mcxtrace-comps/sasmodels/SasView_teubner_strey.md new file mode 100644 index 000000000..74ac3f0fa --- /dev/null +++ b/mcxtrace-comps/sasmodels/SasView_teubner_strey.md @@ -0,0 +1,58 @@ +# The `SasView_teubner_strey` Component + +*McXtrace: SasView teubner_strey model component as sample description.* + +## Identification + +- **Site:** +- **Author:** Jose Robledo +- **Origin:** FZJ / DTU / ESS DMSC +- **Date:** + +## Description + +```text +SasView_teubner_strey component, generated from teubner_strey.c in sasmodels. + +Example: +SasView_teubner_strey(volfraction_a, sld_a, sld_b, d, xi, +model_scale=1.0, model_abs=0.0, xwidth=0.01, yheight=0.01, zdepth=0.005, R=0, +int target_index=1, target_x=0, target_y=0, target_z=1, +focus_xw=0.5, focus_yh=0.5, focus_aw=0, focus_ah=0, focus_r=0, +) +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| volfraction_a | | ([0, 1.0]) Volume fraction of phase a. | 0.5 | +| sld_a | 1e-6/Ang^2 | ([-inf, inf]) SLD of phase a. | 0.3 | +| sld_b | 1e-6/Ang^2 | ([-inf, inf]) SLD of phase b. | 6.3 | +| d | Ang | ([0, inf]) Domain size (periodicity). | 100.0 | +| xi | Ang | ([0, inf]) Correlation length. | 30.0 | +| model_scale | | Global scale factor for scattering kernel. For systems without inter-particle interference, the form factors can be related to the scattering intensity by the particle volume fraction. | 1.0 | +| model_abs | | Absorption cross section density at 2200 m/s. | 0.0 | +| xwidth | m | ([-inf, inf]) Horiz. dimension of sample, as a width. | 0.01 | +| yheight | m | ([-inf, inf]) vert . dimension of sample, as a height for cylinder/box | 0.01 | +| zdepth | m | ([-inf, inf]) depth of sample | 0.005 | +| R | m | Outer radius of sample in (x,z) plane for cylinder/sphere. | 0 | +| target_x | m | relative focus target position. | 0 | +| target_y | m | relative focus target position. | 0 | +| target_z | m | relative focus target position. | 1 | +| target_index | | Relative index of component to focus at, e.g. next is +1. | 1 | +| focus_xw | m | horiz. dimension of a rectangular area. | 0.5 | +| focus_yh | m | , vert. dimension of a rectangular area. | 0.5 | +| focus_aw | deg | , horiz. angular dimension of a rectangular area. | 0 | +| focus_ah | deg | , vert. angular dimension of a rectangular area. | 0 | +| focus_r | m | case of circular focusing, focusing radius. | 0 | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcxtrace-comps/sasmodels/SasView_teubner_strey.comp) for `SasView_teubner_strey.comp`. + +--- + +*Generated on mcxtrace 3.99.99.* \ No newline at end of file diff --git a/mcxtrace-comps/sasmodels/SasView_triaxial_ellipsoid.md b/mcxtrace-comps/sasmodels/SasView_triaxial_ellipsoid.md new file mode 100644 index 000000000..1d56872af --- /dev/null +++ b/mcxtrace-comps/sasmodels/SasView_triaxial_ellipsoid.md @@ -0,0 +1,61 @@ +# The `SasView_triaxial_ellipsoid` Component + +*McXtrace: SasView triaxial_ellipsoid model component as sample description.* + +## Identification + +- **Site:** +- **Author:** Jose Robledo +- **Origin:** FZJ / DTU / ESS DMSC +- **Date:** + +## Description + +```text +SasView_triaxial_ellipsoid component, generated from triaxial_ellipsoid.c in sasmodels. + +Example: +SasView_triaxial_ellipsoid(sld, sld_solvent, radius_equat_minor, radius_equat_major, radius_polar, +model_scale=1.0, model_abs=0.0, xwidth=0.01, yheight=0.01, zdepth=0.005, R=0, +int target_index=1, target_x=0, target_y=0, target_z=1, +focus_xw=0.5, focus_yh=0.5, focus_aw=0, focus_ah=0, focus_r=0, +pd_radius_equat_minor=0.0, pd_radius_equat_major=0.0, pd_radius_polar=0.0) +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| sld | 1e-6/Ang^2 | ([-inf, inf]) Ellipsoid scattering length density. | 4 | +| sld_solvent | 1e-6/Ang^2 | ([-inf, inf]) Solvent scattering length density. | 1 | +| radius_equat_minor | Ang | ([0, inf]) Minor equatorial radius, Ra. | 20 | +| radius_equat_major | Ang | ([0, inf]) Major equatorial radius, Rb. | 400 | +| radius_polar | Ang | ([0, inf]) Polar radius, Rc. | 10 | +| model_scale | | Global scale factor for scattering kernel. For systems without inter-particle interference, the form factors can be related to the scattering intensity by the particle volume fraction. | 1.0 | +| model_abs | | Absorption cross section density at 2200 m/s. | 0.0 | +| xwidth | m | ([-inf, inf]) Horiz. dimension of sample, as a width. | 0.01 | +| yheight | m | ([-inf, inf]) vert . dimension of sample, as a height for cylinder/box | 0.01 | +| zdepth | m | ([-inf, inf]) depth of sample | 0.005 | +| R | m | Outer radius of sample in (x,z) plane for cylinder/sphere. | 0 | +| target_x | m | relative focus target position. | 0 | +| target_y | m | relative focus target position. | 0 | +| target_z | m | relative focus target position. | 1 | +| target_index | | Relative index of component to focus at, e.g. next is +1. | 1 | +| focus_xw | m | horiz. dimension of a rectangular area. | 0.5 | +| focus_yh | m | , vert. dimension of a rectangular area. | 0.5 | +| focus_aw | deg | , horiz. angular dimension of a rectangular area. | 0 | +| focus_ah | deg | , vert. angular dimension of a rectangular area. | 0 | +| focus_r | m | case of circular focusing, focusing radius. | 0 | +| pd_radius_equat_minor | | (0,inf) defined as (dx/x), where x is de mean value and dx the standard devition of the variable. | 0.0 | +| pd_radius_equat_major | | (0,inf) defined as (dx/x), where x is de mean value and dx the standard devition of the variable. | 0.0 | +| pd_radius_polar | | (0,inf) defined as (dx/x), where x is de mean value and dx the standard devition of the variable | 0.0 | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcxtrace-comps/sasmodels/SasView_triaxial_ellipsoid.comp) for `SasView_triaxial_ellipsoid.comp`. + +--- + +*Generated on mcxtrace 3.99.99.* \ No newline at end of file diff --git a/mcxtrace-comps/sasmodels/SasView_triaxial_ellipsoid_aniso.md b/mcxtrace-comps/sasmodels/SasView_triaxial_ellipsoid_aniso.md new file mode 100644 index 000000000..6dd25257e --- /dev/null +++ b/mcxtrace-comps/sasmodels/SasView_triaxial_ellipsoid_aniso.md @@ -0,0 +1,67 @@ +# The `SasView_triaxial_ellipsoid_aniso` Component + +*McXtrace: SasView triaxial_ellipsoid model component as sample description.* + +## Identification + +- **Site:** +- **Author:** Jose Robledo +- **Origin:** FZJ / DTU / ESS DMSC +- **Date:** + +## Description + +```text +SasView_triaxial_ellipsoid component, generated from triaxial_ellipsoid.c in sasmodels. + +Example: +SasView_triaxial_ellipsoid_aniso(sld, sld_solvent, radius_equat_minor, radius_equat_major, radius_polar, theta, Phi, Psi, +model_scale=1.0, model_abs=0.0, xwidth=0.01, yheight=0.01, zdepth=0.005, R=0, +int target_index=1, target_x=0, target_y=0, target_z=1, +focus_xw=0.5, focus_yh=0.5, focus_aw=0, focus_ah=0, focus_r=0, +pd_radius_equat_minor=0.0, pd_radius_equat_major=0.0, pd_radius_polar=0.0, pd_theta=0.0, pd_Phi=0.0, pd_Psi=0.0) +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| sld | 1e-6/Ang^2 | ([-inf, inf]) Ellipsoid scattering length density. | 4 | +| sld_solvent | 1e-6/Ang^2 | ([-inf, inf]) Solvent scattering length density. | 1 | +| radius_equat_minor | Ang | ([0, inf]) Minor equatorial radius, Ra. | 20 | +| radius_equat_major | Ang | ([0, inf]) Major equatorial radius, Rb. | 400 | +| radius_polar | Ang | ([0, inf]) Polar radius, Rc. | 10 | +| theta | | | 60 | +| Phi | | | 60 | +| Psi | | | 60 | +| model_scale | | Global scale factor for scattering kernel. For systems without inter-particle interference, the form factors can be related to the scattering intensity by the particle volume fraction. | 1.0 | +| model_abs | | Absorption cross section density at 2200 m/s. | 0.0 | +| xwidth | m | ([-inf, inf]) Horiz. dimension of sample, as a width. | 0.01 | +| yheight | m | ([-inf, inf]) vert . dimension of sample, as a height for cylinder/box | 0.01 | +| zdepth | m | ([-inf, inf]) depth of sample | 0.005 | +| R | m | Outer radius of sample in (x,z) plane for cylinder/sphere. | 0 | +| target_x | m | relative focus target position. | 0 | +| target_y | m | relative focus target position. | 0 | +| target_z | m | relative focus target position. | 1 | +| target_index | | Relative index of component to focus at, e.g. next is +1. | 1 | +| focus_xw | m | horiz. dimension of a rectangular area. | 0.5 | +| focus_yh | m | , vert. dimension of a rectangular area. | 0.5 | +| focus_aw | deg | , horiz. angular dimension of a rectangular area. | 0 | +| focus_ah | deg | , vert. angular dimension of a rectangular area. | 0 | +| focus_r | m | case of circular focusing, focusing radius. | 0 | +| pd_radius_equat_minor | | (0,inf) defined as (dx/x), where x is de mean value and dx the standard devition of the variable. | 0.0 | +| pd_radius_equat_major | | (0,inf) defined as (dx/x), where x is de mean value and dx the standard devition of the variable. | 0.0 | +| pd_radius_polar | | (0,inf) defined as (dx/x), where x is de mean value and dx the standard devition of the variable. | 0.0 | +| pd_theta | | (0,360) defined as (dx/x), where x is de mean value and dx the standard devition of the variable. | 0.0 | +| pd_Phi | | (0,360) defined as (dx/x), where x is de mean value and dx the standard devition of the variable. | 0.0 | +| pd_Psi | | (0,360) defined as (dx/x), where x is de mean value and dx the standard devition of the variable | 0.0 | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcxtrace-comps/sasmodels/SasView_triaxial_ellipsoid_aniso.comp) for `SasView_triaxial_ellipsoid_aniso.comp`. + +--- + +*Generated on mcxtrace 3.99.99.* \ No newline at end of file diff --git a/mcxtrace-comps/sasmodels/SasView_two_lorentzian.md b/mcxtrace-comps/sasmodels/SasView_two_lorentzian.md new file mode 100644 index 000000000..09e250329 --- /dev/null +++ b/mcxtrace-comps/sasmodels/SasView_two_lorentzian.md @@ -0,0 +1,61 @@ +# The `SasView_two_lorentzian` Component + +*McXtrace: SasView two_lorentzian model component as sample description.* + +## Identification + +- **Site:** +- **Author:** Jose Robledo +- **Origin:** FZJ / DTU / ESS DMSC +- **Date:** + +## Description + +```text +SasView_two_lorentzian component, generated from two_lorentzian.c in sasmodels. + +Example: +SasView_two_lorentzian(lorentz_scale_1, lorentz_length_1, lorentz_exp_1, lorentz_scale_2, lorentz_length_2, lorentz_exp_2, +model_scale=1.0, model_abs=0.0, xwidth=0.01, yheight=0.01, zdepth=0.005, R=0, +int target_index=1, target_x=0, target_y=0, target_z=1, +focus_xw=0.5, focus_yh=0.5, focus_aw=0, focus_ah=0, focus_r=0, +pd_lorentz_length_1=0.0, pd_lorentz_length_2=0.0) +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| lorentz_scale_1 | | ([-inf, inf]) First power law scale factor. | 10.0 | +| lorentz_length_1 | Ang | ([-inf, inf]) First Lorentzian screening length. | 100.0 | +| lorentz_exp_1 | | ([-inf, inf]) First exponent of power law. | 3.0 | +| lorentz_scale_2 | | ([-inf, inf]) Second scale factor for broad Lorentzian peak. | 1.0 | +| lorentz_length_2 | Ang | ([-inf, inf]) Second Lorentzian screening length. | 10.0 | +| lorentz_exp_2 | | ([-inf, inf]) Second exponent of power law. | 2.0 | +| model_scale | | Global scale factor for scattering kernel. For systems without inter-particle interference, the form factors can be related to the scattering intensity by the particle volume fraction. | 1.0 | +| model_abs | | Absorption cross section density at 2200 m/s. | 0.0 | +| xwidth | m | ([-inf, inf]) Horiz. dimension of sample, as a width. | 0.01 | +| yheight | m | ([-inf, inf]) vert . dimension of sample, as a height for cylinder/box | 0.01 | +| zdepth | m | ([-inf, inf]) depth of sample | 0.005 | +| R | m | Outer radius of sample in (x,z) plane for cylinder/sphere. | 0 | +| target_x | m | relative focus target position. | 0 | +| target_y | m | relative focus target position. | 0 | +| target_z | m | relative focus target position. | 1 | +| target_index | | Relative index of component to focus at, e.g. next is +1. | 1 | +| focus_xw | m | horiz. dimension of a rectangular area. | 0.5 | +| focus_yh | m | , vert. dimension of a rectangular area. | 0.5 | +| focus_aw | deg | , horiz. angular dimension of a rectangular area. | 0 | +| focus_ah | deg | , vert. angular dimension of a rectangular area. | 0 | +| focus_r | m | case of circular focusing, focusing radius. | 0 | +| pd_lorentz_length_1 | | (0,inf) defined as (dx/x), where x is de mean value and dx the standard devition of the variable. | 0.0 | +| pd_lorentz_length_2 | | (0,inf) defined as (dx/x), where x is de mean value and dx the standard devition of the variable | 0.0 | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcxtrace-comps/sasmodels/SasView_two_lorentzian.comp) for `SasView_two_lorentzian.comp`. + +--- + +*Generated on mcxtrace 3.99.99.* \ No newline at end of file diff --git a/mcxtrace-comps/sasmodels/SasView_two_power_law.md b/mcxtrace-comps/sasmodels/SasView_two_power_law.md new file mode 100644 index 000000000..27b433739 --- /dev/null +++ b/mcxtrace-comps/sasmodels/SasView_two_power_law.md @@ -0,0 +1,57 @@ +# The `SasView_two_power_law` Component + +*McXtrace: SasView two_power_law model component as sample description.* + +## Identification + +- **Site:** +- **Author:** Jose Robledo +- **Origin:** FZJ / DTU / ESS DMSC +- **Date:** + +## Description + +```text +SasView_two_power_law component, generated from two_power_law.c in sasmodels. + +Example: +SasView_two_power_law(coefficent_1, crossover, power_1, power_2, +model_scale=1.0, model_abs=0.0, xwidth=0.01, yheight=0.01, zdepth=0.005, R=0, +int target_index=1, target_x=0, target_y=0, target_z=1, +focus_xw=0.5, focus_yh=0.5, focus_aw=0, focus_ah=0, focus_r=0, +) +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| coefficent_1 | | ([-inf, inf]) coefficent A in low Q region. | 1.0 | +| crossover | 1/Ang | ([0, inf]) crossover location. | 0.04 | +| power_1 | | ([0, inf]) power law exponent at low Q. | 1.0 | +| power_2 | | ([0, inf]) power law exponent at high Q. | 4.0 | +| model_scale | | Global scale factor for scattering kernel. For systems without inter-particle interference, the form factors can be related to the scattering intensity by the particle volume fraction. | 1.0 | +| model_abs | | Absorption cross section density at 2200 m/s. | 0.0 | +| xwidth | m | ([-inf, inf]) Horiz. dimension of sample, as a width. | 0.01 | +| yheight | m | ([-inf, inf]) vert . dimension of sample, as a height for cylinder/box | 0.01 | +| zdepth | m | ([-inf, inf]) depth of sample | 0.005 | +| R | m | Outer radius of sample in (x,z) plane for cylinder/sphere. | 0 | +| target_x | m | relative focus target position. | 0 | +| target_y | m | relative focus target position. | 0 | +| target_z | m | relative focus target position. | 1 | +| target_index | | Relative index of component to focus at, e.g. next is +1. | 1 | +| focus_xw | m | horiz. dimension of a rectangular area. | 0.5 | +| focus_yh | m | , vert. dimension of a rectangular area. | 0.5 | +| focus_aw | deg | , horiz. angular dimension of a rectangular area. | 0 | +| focus_ah | deg | , vert. angular dimension of a rectangular area. | 0 | +| focus_r | m | case of circular focusing, focusing radius. | 0 | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcxtrace-comps/sasmodels/SasView_two_power_law.comp) for `SasView_two_power_law.comp`. + +--- + +*Generated on mcxtrace 3.99.99.* \ No newline at end of file diff --git a/mcxtrace-comps/sasmodels/SasView_vesicle.md b/mcxtrace-comps/sasmodels/SasView_vesicle.md new file mode 100644 index 000000000..b727c3c2a --- /dev/null +++ b/mcxtrace-comps/sasmodels/SasView_vesicle.md @@ -0,0 +1,60 @@ +# The `SasView_vesicle` Component + +*McXtrace: SasView vesicle model component as sample description.* + +## Identification + +- **Site:** +- **Author:** Jose Robledo +- **Origin:** FZJ / DTU / ESS DMSC +- **Date:** + +## Description + +```text +SasView_vesicle component, generated from vesicle.c in sasmodels. + +Example: +SasView_vesicle(sld, sld_solvent, volfraction, radius, thickness, +model_scale=1.0, model_abs=0.0, xwidth=0.01, yheight=0.01, zdepth=0.005, R=0, +int target_index=1, target_x=0, target_y=0, target_z=1, +focus_xw=0.5, focus_yh=0.5, focus_aw=0, focus_ah=0, focus_r=0, +pd_radius=0.0, pd_thickness=0.0) +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| sld | 1e-6/Ang^2 | ([-inf, inf]) vesicle shell scattering length density. | 0.5 | +| sld_solvent | 1e-6/Ang^2 | ([-inf, inf]) solvent scattering length density. | 6.36 | +| volfraction | | ([0, 1.0]) volume fraction of shell. | 0.05 | +| radius | Ang | ([0, inf]) vesicle core radius. | 100 | +| thickness | Ang | ([0, inf]) vesicle shell thickness. | 30 | +| model_scale | | Global scale factor for scattering kernel. For systems without inter-particle interference, the form factors can be related to the scattering intensity by the particle volume fraction. | 1.0 | +| model_abs | | Absorption cross section density at 2200 m/s. | 0.0 | +| xwidth | m | ([-inf, inf]) Horiz. dimension of sample, as a width. | 0.01 | +| yheight | m | ([-inf, inf]) vert . dimension of sample, as a height for cylinder/box | 0.01 | +| zdepth | m | ([-inf, inf]) depth of sample | 0.005 | +| R | m | Outer radius of sample in (x,z) plane for cylinder/sphere. | 0 | +| target_x | m | relative focus target position. | 0 | +| target_y | m | relative focus target position. | 0 | +| target_z | m | relative focus target position. | 1 | +| target_index | | Relative index of component to focus at, e.g. next is +1. | 1 | +| focus_xw | m | horiz. dimension of a rectangular area. | 0.5 | +| focus_yh | m | , vert. dimension of a rectangular area. | 0.5 | +| focus_aw | deg | , horiz. angular dimension of a rectangular area. | 0 | +| focus_ah | deg | , vert. angular dimension of a rectangular area. | 0 | +| focus_r | m | case of circular focusing, focusing radius. | 0 | +| pd_radius | | (0,inf) defined as (dx/x), where x is de mean value and dx the standard devition of the variable. | 0.0 | +| pd_thickness | | (0,inf) defined as (dx/x), where x is de mean value and dx the standard devition of the variable | 0.0 | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcxtrace-comps/sasmodels/SasView_vesicle.comp) for `SasView_vesicle.comp`. + +--- + +*Generated on mcxtrace 3.99.99.* \ No newline at end of file diff --git a/mcxtrace-comps/sources/Bending_magnet.md b/mcxtrace-comps/sources/Bending_magnet.md new file mode 100644 index 000000000..ab5aafd7a --- /dev/null +++ b/mcxtrace-comps/sources/Bending_magnet.md @@ -0,0 +1,50 @@ +# The `Bending_magnet` Component + +*McXtrace: Model of a bending magnet source* + +## Identification + +- **Site:** +- **Author:** Erik B. Knudsen +- **Origin:** DTU Physics +- **Date:** May, 2013. + +## Description + +```text +A source model based on the derivation from B.D. Patterson, Am. J. Phys. 79, 1046 (2011); doi: 10.1119/1.3614033 + +Example: Bending_magnet( +E0 = 14, dE = 7, Ee = 2.75, +Ie = 0.5, B = 1.72, sigey=9.3e-6, sigex=215.7e-6) +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| E0 | keV | Center of emitted energy spectrum (overrides lambda0) | 0 | +| dE | keV | Half-width of emitted energy spectrum | 0 | +| lambda0 | AA | Center of emitted wavelength spectrum | 0 | +| dlambda | AA | Half-width of emitted wavelength spectrum | 0 | +| phase | rad | Initial phase of radiation. | 0 | +| randomphase | 0/1 | If !=0 phase will be random (I.e. the emitted radiation is completely incoherent) | 1 | +| Ee | GeV | Storage ring electron energy (typically a few GeV) | 2.4 | +| Ie | A | Ring current | 0.4 | +| B | T | Magnet field strength | 1.6 | +| sigey | m | Electron ring beam size in vertical plane (rms) | 0 | +| sigex | m | Electron ring beam size in horizontal plane (rms) | 0 | +| focus_xw | m | Width of target window | 0 | +| focus_yh | m | Height of traget window | 0 | +| dist | m | Distance from source plane to target window along the optical axis | 1 | +| gauss_t | 0/1 | If 0 the target window will be sampled uniformly and the weight adjusted accordingly, otherwise we will use a gaussian sampling scheme | 0 | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcxtrace-comps/sources/Bending_magnet.comp) for `Bending_magnet.comp`. + +--- + +*Generated on mcxtrace 3.99.99.* \ No newline at end of file diff --git a/mcxtrace-comps/sources/Source_div.md b/mcxtrace-comps/sources/Source_div.md new file mode 100644 index 000000000..455b6ebbb --- /dev/null +++ b/mcxtrace-comps/sources/Source_div.md @@ -0,0 +1,61 @@ +# The `Source_div` Component + +*McXtrace: Release: McXtrace 0.1 + +X-ray source with Gaussian or uniform divergence* + +## Identification + +- **Site:** +- **Author:** Erik Knudsen +- **Origin:** Risoe +- **Date:** November 11, 2009 + +## Description + +```text +A flat rectangular surface source with uniform or Gaussian divergence profile and focussing. +If the parametere gauss is not set (the default) the divergence profile is flat +in the range [-focus_ax,focus_ay]. If gauss is set, the focux_ax,focus_ay is considered +the standard deviation of the gaussian profile. +Currently focussing is only active for flat profile. The "focus window" is defined by focus_xw,focus_yh and dist. +The spectral intensity profile is uniformly distributed in the energy interval defined by e0+-dE/2 or +by wavelength lambda0+-dlambda/2 + +Example: Source_div(xwidth=0.1, yheight=0.1, focus_aw=2, focus_ah=2, E0=14, dE=2, gauss=0) +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| spectrum_file | string | File from which to read the spectral intensity profile | "NULL" | +| xwidth | m | Width of source. | 0 | +| yheight | m | Height of source. | 0 | +| dist | m | Downstream distance to place sampling target window | 0 | +| focus_xw | m | Width of sampling window | 0 | +| focus_yh | m | Height of sampling window | 0 | +| focus_aw | rad | Standard deviation (Gaussian) or maximal (uniform) horz. width divergence. | 0 | +| focus_ah | rad | Standard deviation (Gaussian) or maximal (uniform) vert. height divergence. | 0 | +| focus_ar | rad | Standard deviation (Gaussian) or maximal (uniform) radial divergence. | 0 | +| radius | m | Radius of circular source | 0 | +| E0 | keV | Mean energy of X-rays. | 0 | +| dE | keV | Energy half spread of X-rays. If gauss==0 dE is the half-spread, i.e. E\in[E0-dE,E0+dE], if gauss!=0 it's interpreted as the standard dev. | 0 | +| lambda0 | AA | Mean wavelength of X-rays (only relevant for E0=0). | 0 | +| dlambda | AA | Wavelength half spread of X-rays. | 0 | +| flux | 1/(s * mm**2 *mrad**2 * energy unit) | flux per energy unit, Angs or keV. | 0 | +| gauss | 1 | Criterion: 0: uniform, 1: Gaussian distribution of energy/wavelength. | 0 | +| gauss_a | 1 | Criterion: 0: uniform, 1: Gaussian divergence distribution. | 0 | +| randomphase | 1 | If !=0 the photon phase is chosen randomly. | 1 | +| phase | 1 | Value of the photon phase (if randomphase==0). | 0 | +| verbose | 0/1 | Show more information | 0 | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcxtrace-comps/sources/Source_div.comp) for `Source_div.comp`. + +--- + +*Generated on mcxtrace 3.99.99.* \ No newline at end of file diff --git a/mcxtrace-comps/sources/Source_div_quasi.md b/mcxtrace-comps/sources/Source_div_quasi.md new file mode 100644 index 000000000..f5a505cb6 --- /dev/null +++ b/mcxtrace-comps/sources/Source_div_quasi.md @@ -0,0 +1,62 @@ +# The `Source_div_quasi` Component + +*McXtrace: Release: McXtrace 1.6 + +Quasi-stochastic X-ray source with Gaussian or uniform divergence* + +## Identification + +- **Site:** +- **Author:** Mads Carlsen and Erik Bergbäck Knudsen (erkn@fysik.dtu.dk) +- **Origin:** DTU Physics +- **Date:** Apr 21 + +## Description + +```text +A flat rectangular surface source with uniform or Gaussian divergence profile and focussing. +If the parametere gauss is not set (the default) the divergence profile is flat +in the range [-focus_ax,focus_ay]. If gauss is set, the focux_ax,focus_ay is considered +the standard deviation of the gaussian profile. +Currently focussing is only active for flat profile. The "focus window" is defined by focus_xw,focus_yh and dist. +The spectral intensity profile is uniformly distributed in the energy interval defined by e0+-dE/2 or +by wavelength lambda0+-dlambda/2 + +The phase space sapnned by the generated X-rays is sampled by means of Halton-sequences, instead of regular +pseudo random numbers. This ensures that samples are evenly distributed within the phase space region of interest. + +Example: Source_div_quasi(xwidth=0.1, yheight=0.1, focus_aw=2, focus_ah=2, E0=14, dE=2, gauss=0) +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| spectrum_file | string | File from which to read the spectral intensity profile | "" | +| xwidth | m | Width of source | 0 | +| yheight | m | Height of source | 0 | +| focus_xw | m | Width of sampling window | 0 | +| focus_yh | m | Height of sampling window | 0 | +| dist | m | Downstream distance to place sampling target window | 0 | +| focus_aw | rad | Std. dev. (Gaussian) or maximal (uniform) horz. width divergence. focus_xw overrrides if it is more restrictive. | 0 | +| focus_ah | rad | Std. dev. (Gaussian) or maximal (uniform) vert. height divergence. focus_yh overrrides if it is more restrictive. | 0 | +| E0 | keV | Mean energy of X-rays. | 0 | +| dE | keV | Energy spread of X-rays. | 0 | +| lambda0 | AA | Mean wavelength of X-rays (only relevant for E0=0) | 0 | +| dlambda | AA | Wavelength half spread of X-rays. | 0 | +| flux | 1/(s*cm**2*st*energy unit) | Flux per energy unit, Angs or meV | 0 | +| gauss | 1 | Criterion: 0: uniform, 1: Gaussian distribution of energy/wavelength | 0 | +| gauss_a | 1 | Criterion: 0: uniform, 1: Gaussian divergence distribution | 0 | +| randomphase | 0/1 | When=1, the X-ray phase is randomised | 1 | +| phase | rad | Set to finite value to define X-ray phase (0:2 pi) | 0 | +| verbose | 0/1 | Generate more output on the console. | 1 | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcxtrace-comps/sources/Source_div_quasi.comp) for `Source_div_quasi.comp`. + +--- + +*Generated on mcxtrace 3.99.99.* \ No newline at end of file diff --git a/mcxtrace-comps/sources/Source_flat.md b/mcxtrace-comps/sources/Source_flat.md new file mode 100644 index 000000000..e0bca5c8f --- /dev/null +++ b/mcxtrace-comps/sources/Source_flat.md @@ -0,0 +1,59 @@ +# The `Source_flat` Component + +*McXtrace: Release: McXtrace 0.1_alpha + +A flat rectangular or circular surface emitting x-rays* + +## Identification + +- **Site:** +- **Author:** Erik Knudsen +- **Origin:** Risoe +- **Date:** September 25, 2009 + +## Description + +```text +A circular or rectangular xray source. Spectrum may be either gaussian or uniform around a central wavelength/energy +or read from a datafile. Xrays are considered emitted uniformly into 4pi, but a square target retricts the beam to +that window and scales the beam intensity accordingly. +If an input spectrum datafile (spectrum_file) is not specified, the beam is restricted to emit photons between E0+-dE keV, or lambda0+-dlambda AA, whichever is given. +The input spectrum file should be formatted such that x-ray energy/wavelength is in the first column and the intensity in the second. Any preceding +lines starting with # are considered part of the file header. If a datafile is given, a nonzero E0 value indicates that is is parametrized by energy (in keV) +as opposed to wavelength (in AA). Wavelength is the default. +Flux is set in the unit photons/s + +Example: Source_flat(xwidth=1e-3,yheight=1e-3, focus_xw=0.5e-2, focus_yh=0.45e-2,dist=1, E0=E0, dE=DE) +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| radius | m | Radius of circle in (x,y,0) plane where x-rays are generated. | 0 | +| yheight | m | Height of rectangle in (x,y,0) plane where x-rays are generated. | 0 | +| xwidth | m | Width of rectangle in (x,y,0) plane where x-rays are generated. Overrides xmin and xmax. | 0 | +| xmin | m | Lower bound of x-interval where photons are generated. | 0 | +| xmax | m | Upper bound of x-interval where photons are generated. | 0 | +| dist | m | Distance to target along z axis. | 0 | +| focus_xw | m | Width of target | .045 | +| focus_yh | m | Height of target | .12 | +| E0 | keV | Mean energy of xrays. | 0 | +| dE | keV | Energy half spread of x-rays (flat or gaussian sigma). | 0 | +| lambda0 | AA | Mean wavelength of x-rays. | 0 | +| dlambda | AA | Wavelength half spread of x-rays. | 0 | +| flux | pht/s | Total flux radiated from the source | 0 | +| gauss | 1 | Gaussian (1) or Flat (0) energy/wavelength distribution | 0 | +| randomphase | | If nonzero, the phase of the emotted photon is random, i.e. source is fully incoherent. otherwise the value of phase is used. | 1 | +| phase | rad | Set phase to something given. | 0 | +| spectrum_file | string | Filename for optional spectrum-file | "" | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcxtrace-comps/sources/Source_flat.comp) for `Source_flat.comp`. + +--- + +*Generated on mcxtrace 3.99.99.* \ No newline at end of file diff --git a/mcxtrace-comps/sources/Source_gaussian.md b/mcxtrace-comps/sources/Source_gaussian.md new file mode 100644 index 000000000..cda051796 --- /dev/null +++ b/mcxtrace-comps/sources/Source_gaussian.md @@ -0,0 +1,54 @@ +# The `Source_gaussian` Component + +*McXtrace: Gaussian cross-section source* + +## Identification + +- **Site:** +- **Author:** Jana Baltser & Erik Knudsen +- **Origin:** NBI +- **Date:** April, 2011. + +## Description + +```text +A simple source model emitting photons from a gaussian distribution in the X-Y plane with the specified +standard deviations and divergence. A square target centered on the beam (Z-axis) +may be used to restrict the beam to that aperture. If no target aperture is given the full gaussian cross-section is used. +Further, the beam is restricted to emit photons between E0+-dE keV, or lambda0+-dlambda, whichever is given, if a spectrum_file +is not specified, in which case the contents of the file dictates the emitted spectrum. + +Example: Source_gaussian(sig_x=10e-6,sig_y=10e-6,dist=15,sigPr_x=9e-6, sigPr_y=9e-6,E0=12.5, dE=0.1) +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| spectrum_file | | File from which to read the spectral intensity profile | "NULL" | +| sig_x | m | Horizontal standard deviation of source (rms source size). | 1 | +| sig_y | m | Vertical standard deviation of source (rms source size). | 0 | +| sigPr_x | rad | Angular horizontal divergence | 0 | +| sigPr_y | rad | Angular vertical divergence | 0 | +| flux | | Scaling factor to set the total emitted unrestricted flux. | 1 | +| brilliance | | Unit in spectrum_file is Brilliance - apply corrections to get to raw flux. | 0 | +| dist | m | Distance from source plane to sampling window. | 1 | +| gauss | 0/1 | Gaussian (1) or uniform (0) spectrum profile. | 0 | +| focus_xw | m | Width of sampling window dist m downstream from source to allow focused sampling. | 0 | +| focus_yh | m | Height of sampling window dist m downstream from source to allow focused sampling. | 0 | +| E0 | keV | Centre of emitted energy spectrum (overrides spectrum_file) | 0 | +| dE | kev | Half-width (or std. dev.) of emitted energy spectrum. | 0 | +| lambda0 | AA | Centre of emitted wavelength spectrum. | 0 | +| dlambda | AA | Half-width (or std. dev.) of emitted wavelength spectrum. | -1 | +| phase | rad | The initial phase of the photons. | 0 | +| randomphase | rad | If nonzero phase is random (incoherent radiation), otherwise it is set to the value of phase | 1 | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcxtrace-comps/sources/Source_gaussian.comp) for `Source_gaussian.comp`. + +--- + +*Generated on mcxtrace 3.99.99.* \ No newline at end of file diff --git a/mcxtrace-comps/sources/Source_genesis13.md b/mcxtrace-comps/sources/Source_genesis13.md new file mode 100644 index 000000000..1b4ed1881 --- /dev/null +++ b/mcxtrace-comps/sources/Source_genesis13.md @@ -0,0 +1,49 @@ +# The `Source_genesis13` Component + +*McXtrace: Release: McXtrace 1.2 + +Interface source for importing GENESIS 1.3 generated X-ray pulses into McXtrace* + +## Identification + +- **Site:** +- **Author:** Erik B Knudsen +- **Origin:** Risoe +- **Date:** Aug. 10th, 2014 + +## Description + +```text +This source model reads the dumped radiation field output from GENESIS 1.3 and samples it to be used +in McXtrace. + +Example: Source_pt(dist=1,focus_xw=0.1,focus_yh=0.1, lamda=0.231, dlambda=0.002) +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| gridpoints | int | Number of mesh points along 1 axis. | 101 | +| fname | string | Filename of main output file of GENESIS 1.3. | "template.out" | +| focus_xw | m | Width of target. | 0 | +| focus_yh | m | Height of target. | 0 | +| dist | m | Distance to target along z axis. | 1 | +| E0 | keV | Mean energy of xrays. | 0 | +| dE | kev | Half-width (or std. dev.) of emitted energy spectrum. | 0 | +| meshsize | m | Spacing between mesh points (equal in x and y). | 1e-5 | +| nslices | int | Number of slices simulated | 102 | +| s0 | m | Back end of pulse time sampling windows scaled by c^-1. | -2e-3 | +| s1 | m | Front end of pulse time sampling window scaled by c^-1. | 2e-3 | +| flux | 1 | Flux-multiplier | 1.0 | +| focus_a | rad | Mean divergence angle. | 0.1 | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcxtrace-comps/sources/Source_genesis13.comp) for `Source_genesis13.comp`. + +--- + +*Generated on mcxtrace 3.99.99.* \ No newline at end of file diff --git a/mcxtrace-comps/sources/Source_lab.md b/mcxtrace-comps/sources/Source_lab.md new file mode 100644 index 000000000..14275a3b9 --- /dev/null +++ b/mcxtrace-comps/sources/Source_lab.md @@ -0,0 +1,65 @@ +# The `Source_lab` Component + +*McXtrace: Laboratory x-ray source.* + +## Identification + +- **Site:** +- **Author:** Erik Bergbaeck Knudsen +- **Origin:** Kgs. Lyngby +- **Date:** May 2012 + +## Description + +```text +Model of a laboratory x-ray tube, generating x-rays by bombarding a target by electrons. +Given a input energy E0 of the electron beam, x-rays are emitted from the accessible emission lines +The geometry of the tube is assumed to be: +# The electron beam hits a slab of surface material surface at a right angle illuminating an area of width by height, +# where width is measured along the component X-axis. +# The centre of the electron beam at the anode surface is the origin of the component. +# The Z-axis of the component points at the centre of the exit window (focus_xw by focus yh) +placed at a distance dist from the origin. +# The angle between the Z-axis and the anode surface is the take_off angle. +For a detailed sketch of the geometry see the componnent manual. + +The Bremsstrahlung emitted is modelled using the model of Kramer (1923) as restated in International +Tables of Crystallography C 4.1 +Characteristic radiation is modelled by Lorentzian (default) or Gaussian energy profiles with +line-energies from Bearden (1967), widths from Krause (1979) and intensity from Honkimäki (1990) and x-ray data booklet. +Absoprtion of emitted x-rays while travelling through the target anode is included. + +Example: Source_lab(material_datafile="Cu.txt",Emin=1, E0=80) +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| material_datafile | string | Name of datafile which describes the target material. | "Cu.txt" | +| width | m | Width of electron beam impinging on the anode. | 1e-3 | +| height | m | Height of electron beam impinging on the anode. | 1e-3 | +| thickness | m | Thickness of the anode material slab. | 100e-6 | +| E0 | kV | Acceleration voltage of xray tube. | 20 | +| Emax | keV | Maximum energy to sample. Default (Emax=0) is to set it to E0. | 0 | +| Emin | keV | Minimum energy to sample. | 1 | +| focus_xw | m | Width of exit window. | 5e-3 | +| focus_yh | m | Height of exit window. | 5e-3 | +| take_off | deg | Take off angle of beam centre. | 6 | +| dist | m | Distance between centre of illuminated target and exit window. | 1 | +| tube_current | A | Electron beam current. | 1e-3 | +| frac | 0-1 | Fraction of statistic to use for Bremsstrahlung. | 0.1 | +| lorentzian | 0/1 | If nonzero Lorentzian (more correct) line profiles are used. | 1 | +| xwidth | m | Width of the anode material slab. | 0 | +| yheight | m | Height of the anode material slab. | 0 | +| exit_window_refpt | m | If set, the AT position and exit window will coincide (legacy behaviour). | 0 | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcxtrace-comps/sources/Source_lab.comp) for `Source_lab.comp`. + +--- + +*Generated on mcxtrace 3.99.99.* \ No newline at end of file diff --git a/mcxtrace-comps/sources/Source_pt.md b/mcxtrace-comps/sources/Source_pt.md new file mode 100644 index 000000000..18f81afba --- /dev/null +++ b/mcxtrace-comps/sources/Source_pt.md @@ -0,0 +1,56 @@ +# The `Source_pt` Component + +*McXtrace: Release: McXtrace 0.1 + +An x-ray point source* + +## Identification + +- **Site:** +- **Author:** Erik Knudsen +- **Origin:** Risoe +- **Date:** June 29th, 2009 + +## Description + +```text +A simple source model emitting photons from a point source uniformly into 4pi. A square target centered +on the Z-axis restricts the beam to that aperture. +If an input spectrum datafile (spectrum_file) is not specified, the beam is restricted to emit photons between E0+-dE keV, or lambda0+-dlambda AA, whichever is given. +The input spectrum file should be formatted such that x-ray energy/wavelength is in the first column and the intensity in the second. Any preceding +lines starting with # are considered part of the file header. If a datafile is given, a nonzero E¤0 value indicates that is is parametrized by energy ( in keV) +as opposed to wavelength (in AA). Wavelength is the default. +Flux is given in the unit photons/s + +Example: Source_pt(dist=1,focus_xw=0.1,focus_yh=0.1, lamda=0.231, dlambda=0.002) +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| focus_xw | m | Width of target | 0 | +| focus_yh | m | Height of target | 0 | +| focus_x0 | m | x-cocordinate of target centre. | 0 | +| focus_y0 | m | y-coordinate of target centre. | 0 | +| flux | ph/s | Total flux radiated from the source. | 0 | +| dist | m | Distance from source plane to sampling window. | 1 | +| E0 | keV | Mean energy of xrays. | 0 | +| dE | keV | Energy half spread of x-rays. | 0 | +| lambda0 | AA | Mean wavelength of x-rays. | 0 | +| dlambda | AA | Wavelength half spread of x-rays (flat or gaussian sigma). | 0 | +| phase | rad | Set phase to something given. | 0 | +| randomphase | 0/1 | If nonzero, the phase of the emotted photon is random, i.e. source is fully incoherent. otherwise the value of phase is used. | 1 | +| gauss | 1 | Gaussian (1) or Flat (0) energy/wavelength distribution | 0 | +| spectrum_file | string | File from which to read an input spectrum. | "" | +| verbose | 1 | Output more information runtime. | 0 | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcxtrace-comps/sources/Source_pt.comp) for `Source_pt.comp`. + +--- + +*Generated on mcxtrace 3.99.99.* \ No newline at end of file diff --git a/mcxtrace-comps/sources/Source_simplex.md b/mcxtrace-comps/sources/Source_simplex.md new file mode 100644 index 000000000..98c71036e --- /dev/null +++ b/mcxtrace-comps/sources/Source_simplex.md @@ -0,0 +1,49 @@ +# The `Source_simplex` Component + +*McXtrace: Release: McXtrace 1.2 + +Interface source for importing Simplex generated X-ray pulses into McXtrace* + +## Identification + +- **Site:** +- **Author:** Erik B Knudsen +- **Origin:** Risoe +- **Date:** Aug. 10th, 2014 + +## Description + +```text +This source model reads the dumped radiation field output from Simplex and samples it to be used +in McXtrace. +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| gridpoints | int | Number of mesh points along 1 axis. | 101 | +| fname | string | Filename of main output file of GENESIS 1.3. | "template.fld" | +| focus_xw | m | Width of target. | 0 | +| focus_yh | m | Height of target. | 0 | +| dist | m | Distance to target along z axis. | 1 | +| E0 | keV | Mean energy of xrays. | 0 | +| dE | keV | Energy half spread of x-rays. | 0 | +| meshsize | m | Spacing between mesh points (equal in x and y). | 1e-5 | +| nslices | 1 | Number of slices simulated. | 102 | +| s0 | m | Back end of pulse time sampling windows scaled by c^-1. | -2e-3 | +| s1 | m | Front end of pulse time sampling window scaled by c^-1. | 2e-3 | +| flux | 1 | Flux-multiplier. | 1.0 | +| focus_a | rad | Mean divergence angle. | 0.1 | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcxtrace-comps/sources/Source_simplex.comp) for `Source_simplex.comp`. +- Tanaka, Journal of Synchrotron Radiation 22, 1319 (2015) http://journals.iucr.org/s/issues/2015/05/00/gb5029/ +- http://radiant.harima.riken.go.jp/simplex/ + +--- + +*Generated on mcxtrace 3.99.99.* \ No newline at end of file diff --git a/mcxtrace-comps/sources/Source_spectra.md b/mcxtrace-comps/sources/Source_spectra.md new file mode 100644 index 000000000..77fc79b22 --- /dev/null +++ b/mcxtrace-comps/sources/Source_spectra.md @@ -0,0 +1,74 @@ +# The `Source_spectra` Component + +*McXtrace: Release: McXtrace 1.5 + +Specialized X-ray source for reading in SPECTRA 10 source definitions* + +## Identification + +- **Site:** +- **Author:** Erik Knudsen +- **Origin:** Risoe +- **Date:** November 11, 2019 + +## Description + +```text +This is a source component for connecting SPECTRA 10-output files with McXtrace. +json-style SPECTRA 11 output files are not yet supported. + +SPECTRA is an application software to calculate optical properties of synchrotron +radiation (SR) emitted from bending magnets, wigglers (conventional and elliptical) +and undulators (conventional, helical, elliptical and figure-8). Calculations +of radiation from an arbitrary magnetic field distribution are also available. +Parameters on the electron beam and the source can be edited completely on +graphical user interfaces (GUIs) and it is possible to show the calculation +result graphically. The energy spectrum and radiation power after transmitting +various filters and convolution of detector's resolution are also available. +See SPECTRA. + +If the source is symmetric in x and/or y it is possible to speed up the spectra +calculations by only including one half-plane or quadrant. The other side/quadrants will then +be mirrored by McXtrace. + +%BUGS +Absolute intensity of 4D (x,y,x',y') is nor correctly normalized. +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| spectra_stem_x | str | Filename stem of x-projection of source distribution. -n.xxx will be added where n is a serial number and xxx spectra_suffix. | "" | +| spectra_stem_y | str | Filename stem of y-projection of source distribution. -n.xxx will be added where n is a serial number and xxx spectra_suffix. | "" | +| spectra_stem | str | Filename stem of x,x',y,y'-source distribution distribution. -n.xxx will be added where n is a serial number and xxx spectra_suffix. | "" | +| spectra_suffix | str | Suffix of spectra output files. | "dsc" | +| E0 | keV | Mean energy of X-rays. | 0 | +| dE | keV | Energy spread of X-rays. | 0 | +| **Emin** | keV | Energy of low end of the Spectra-calculated data. | | +| **Emax** | keV | Energy of high end of the Spectra-calculated data. | | +| **nE** | int | Number of steps in the spectra-calculations. | | +| randomphase | 0/1 | If !=0 the photon phase is chosen randomly. | 1 | +| phase | rad | Value of the photon phase (only used if randomphase==0). | 0 | +| nx | int | Number of grid points along x in datafiles. If zero this is computed from the files. | 0 | +| ny | int | Number of grid points along y in datafiles. If zero this is computed from the files. | 0 | +| npx | int | Number of grid points along x' in datafiles. If zero this is computed from the files. | 0 | +| npy | int | Number of grid points along y' in datafiles. If zero this is computed from the files. | 0 | +| initial_serial | int | First serial number of the series of spectra files. | 1 | +| symmetricx | 0/1 | If nonzero the source is mirrored in the x-axis. This to allow smaller spectra-calculations. | 0 | +| symmetricy | 0/1 | If nonzero the source is mirrored in the y-axis. This to allow smaller spectra-calculations. | 0 | +| verbose | 0/1 | If non-zero output more warning messages. | 0 | +| flag4d | 0/1 | Use either (0) x,y-projections or (1) full 4D x,y,x',y' datafiles. | 0 | +| noinit | 0/1 | Do no initialize the component. Can be usefiul in conjunction with a deactivating WHEN-clause. | 0 | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcxtrace-comps/sources/Source_spectra.comp) for `Source_spectra.comp`. +- Tanaka, J. Synchrotron Rad. (2001). 8, 1221-1228. https://doi.org/10.1107/S090904950101425X +- http://spectrax.org/spectra/ + +--- + +*Generated on mcxtrace 3.99.99.* \ No newline at end of file diff --git a/mcxtrace-comps/sources/Undulator.md b/mcxtrace-comps/sources/Undulator.md new file mode 100644 index 000000000..0ad51fd27 --- /dev/null +++ b/mcxtrace-comps/sources/Undulator.md @@ -0,0 +1,58 @@ +# The `Undulator` Component + +*McXtrace: Model of an undulator source* + +## Identification + +- **Site:** +- **Author:** Erik B. Knudsen +- **Origin:** DTU Physics +- **Date:** May, 2013. + +## Description + +```text +A undulator source model based on the derivation by K.J. Kim, AIP, conf. proc., 184, 1989. doi:10.1063/1.38046. + +SOLEIL_PX2a U24 +Example: Undulator( E0=12.65, dE=1, Ee=2.75, dEe=0.001, Ie=0.5, K=1.788, Nper=80, +lu=24e-3, sigey=9.3e-6, sigex=215.7e-6, sigepx=29.3e-6, sigepy=4.2e-6, +dist=29.5, E1st=12.400 ) +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| E0 | keV | Center of emitted energy spectrum. | 0 | +| dE | keV | Half-width of emitted energy spectrum. | 0 | +| phase | rad | Initial phase of radiation. | 0 | +| randomphase | 0/1 | If !=0 phase will be random (I.e. the emitted radiation is completely incoherent). | 1 | +| Ee | GeV | Storage ring electron energy [typically a few GeV). | 2.4 | +| dEe | percent | Relative electron energy beam spread (sigma/Ee). | 0 | +| Ie | A | Ring current. | 0.4 | +| B | T | Peak magnet field strength. Overrides K. | 0 | +| K | 1 | Dimensionless deflection undulator parameter. When K >> 1 (ie B*lu is large) you get a wiggler. | 0 | +| Nper | int | Number of magnetic periods in the undulator. | 1 | +| lu | m | Magnetic period length of the undulator aka lambda_u. | 16e-3 | +| sigey | m | Electron ring beam size in vertical plane (rms). | 0 | +| sigex | m | Electron ring beam size in horizontal plane (rms). | 0 | +| sigepx | rad | Electron ring beam horizontal divergence (rms). | 0 | +| sigepy | rad | Electron ring beam vertical divergence (rms). | 0 | +| focus_xw | m | Width of target window. | 0 | +| focus_yh | m | Height of target window. | 0 | +| dist | m | Distance from source plane to target window along the optical axis. | 1 | +| quick_integ | 0/1 | If nonzero, use faster (but less accurate) integration scheme. | 0 | +| E1st | keV | Energy of the fundmental (1st) undulator harmonic. | 0 | +| verbose | 0/1 | If nonzero, output extra information. | 0 | +| Br | T | Remanent field (1.35T for Nd2Fe14B) for gap estimate | 1.35 | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcxtrace-comps/sources/Undulator.comp) for `Undulator.comp`. + +--- + +*Generated on mcxtrace 3.99.99.* \ No newline at end of file diff --git a/mcxtrace-comps/sources/Wiggler.md b/mcxtrace-comps/sources/Wiggler.md new file mode 100644 index 000000000..cd8138f32 --- /dev/null +++ b/mcxtrace-comps/sources/Wiggler.md @@ -0,0 +1,55 @@ +# The `Wiggler` Component + +*McXtrace: Model of a wiggler source* + +## Identification + +- **Site:** +- **Author:** Erik B. Knudsen +- **Origin:** DTU Physics +- **Date:** May, 2013. + +## Description + +```text +A source model based on the derivation from B.D. Patterson, Am. J. Phys. 79, 1046 (2011); doi: 10.1119/1.3614033 + +Example: Wiggler( +E0 = 14, dE = 12, +Ee = 2.75, Ie = 0.5, B = 2.1, K=10, Nper=41, sigey=9.3e-6, sigex=215.7e-6) +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| E0 | keV | Center of emitted energy spectrum (overrides lambda0) | 0 | +| dE | keV | Half-width of emitted energy spectrum | 0 | +| lambda0 | AA | Center of emitted wavelength spectrum | 0 | +| dlambda | AA | Half-width of emitted wavelength spectrum | 0 | +| phase | rad | Initial phase of radiation. | 0 | +| randomphase | 0/1 | If !=0 phase will be random (I.e. the emitted radiation is completely incoherent) | 1 | +| Ee | GeV | Storage ring electron energy (typically a few GeV) | 2.4 | +| Ie | A | Ring current | 0.4 | +| B | | TT] Peak magnet field strength | 1.6 | +| K | 1 | Dimensionless undulator parameter, e.g. K >> 1. overrides B. | 3 | +| Nper | int | Number of magnetic periods in the wiggler | 1 | +| length | m | Length of the Wiggler. | 1 | +| sigey | m | Electron ring beam size in vertical plane (rms) | 0 | +| sigex | m | Electron ring beam size in horizontal plane (rms) | 0 | +| focus_xw | m | Width of target window | 0 | +| focus_yh | m | Height of target window | 0 | +| dist | m | Distance from source plane to target window along the optical axis | 1 | +| gauss_t | 0/1 | If 0 the target window will be sampled uniformly and the weight adjusted accordingly, otherwise we will use a gaussian sampling scheme. | 0 | +| verbose | 0/1 | If nonzero, output extra information | 0 | +| Br | | | 1.35 | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcxtrace-comps/sources/Wiggler.comp) for `Wiggler.comp`. + +--- + +*Generated on mcxtrace 3.99.99.* \ No newline at end of file diff --git a/mcxtrace-comps/union/Incoherent_process.md b/mcxtrace-comps/union/Incoherent_process.md new file mode 100644 index 000000000..038804a8e --- /dev/null +++ b/mcxtrace-comps/union/Incoherent_process.md @@ -0,0 +1,57 @@ +# The `Incoherent_process` Component + +*McXtrace: A sample component to separate geometry and phsysics* + +## Identification + +- **Site:** +- **Author:** Mads Bertelsen and Erik B Knudsen +- **Origin:** ESS DMSC & DTU Physics +- **Date:** 20.08.15 + +## Description + +```text +This Union_process is based on the Incoherent.comp component originally written +by Kim Lefmann and Kristian Nielsen + +Part of the Union components, a set of components that work together and thus +separates geometry and physics within McXtrace. +The use of this component requires other components to be used. + +1) One specifies a number of processes using process components like this one +2) These are gathered into material definitions using Union_make_material +3) Geometries are placed using Union_box / Union_cylinder, assigned a material +4) A Union_master component placed after all of the above + +Only in step 4 will any simulation happen, and per default all geometries +defined before the master, but after the previous will be simulated here. + +There is a dedicated manual available for the Union_components + +Algorithm: +Described elsewhere +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| sigma | barns | Incoherent scattering cross section | 5.08 | +| f_QE | 1 | Fraction of quasielastic scattering (rest is elastic) | 0 | +| gamma | 1 | Lorentzian width of quasielastic broadening (HWHM) | 0 | +| packing_factor | 1 | How dense is the material compared to optimal 0-1 | 1 | +| unit_cell_volume | | | 13.8 | +| interact_fraction | | | -1 | +| init | string | name of Union_init component (typically "init", default) | "init" | + +## Links + +- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcxtrace-comps/union/Incoherent_process.comp) for `Incoherent_process.comp`. +- The test/example instrument Test_Phonon.instr. + +--- + +*Generated on mcxtrace 3.99.99.* \ No newline at end of file From 798129052d8d027e71188ace1ca4718f76e69d07 Mon Sep 17 00:00:00 2001 From: Peter Willendrup Date: Tue, 21 Apr 2026 09:54:55 +0200 Subject: [PATCH 05/43] Don't generate TeX 'overview doc' --- tools/Python/mcdoc/mcdoc.py | 32 +++++++++++++++++--------------- 1 file changed, 17 insertions(+), 15 deletions(-) diff --git a/tools/Python/mcdoc/mcdoc.py b/tools/Python/mcdoc/mcdoc.py index d4573f51c..69d965518 100644 --- a/tools/Python/mcdoc/mcdoc.py +++ b/tools/Python/mcdoc/mcdoc.py @@ -1561,22 +1561,24 @@ def write_overview_docs(comp_infos, instr_infos, comp_infos_local, instr_infos_l formats = _normalize_formats(formats) base, _ = os.path.splitext(str(out_basepath)) results = {} + # Suppres TeX for fmt in formats: - WriterCls = _OVERVIEW_WRITERS[fmt] - writer = WriterCls(comp_infos, instr_infos, comp_infos_local, instr_infos_local, libdir, docdir) - text = writer.create() - path = '%s.%s' % (base, fmt) - print("Docdir is " + docdir) - if out_basepath is not None: - if printlog: - print('writing master doc file... %s' % path) - try: - write_file(path, text) - results[fmt] = path - except Exception as e: - print('ERROR writing master doc file (%s): %s' % (fmt, e)) - else: - print('in-repo use, no master document') + if not fmt=='tuple': + WriterCls = _OVERVIEW_WRITERS[fmt] + writer = WriterCls(comp_infos, instr_infos, comp_infos_local, instr_infos_local, libdir, docdir) + text = writer.create() + path = '%s.%s' % (base, fmt) + print("Docdir is " + docdir) + if out_basepath is not None: + if printlog: + print('writing master doc file... %s' % path) + try: + write_file(path, text) + results[fmt] = path + except Exception as e: + print('ERROR writing master doc file (%s): %s' % (fmt, e)) + else: + print('in-repo use, no master document') return results From aee57fcfb233ab70e59246ed4771b02a699c65ab Mon Sep 17 00:00:00 2001 From: Peter Willendrup Date: Tue, 21 Apr 2026 10:05:13 +0200 Subject: [PATCH 06/43] Remove header/preamble in generated .tex snippets --- tools/Python/mcdoc/mcdoc.py | 22 +++++----------------- 1 file changed, 5 insertions(+), 17 deletions(-) diff --git a/tools/Python/mcdoc/mcdoc.py b/tools/Python/mcdoc/mcdoc.py index 69d965518..4390c8585 100644 --- a/tools/Python/mcdoc/mcdoc.py +++ b/tools/Python/mcdoc/mcdoc.py @@ -1359,16 +1359,11 @@ def create(self): if re.match(r'^\s*\n*\r*$', short_descr): short_descr = i.name + ' component' - out = [_LATEX_PREAMBLE] - out.append(r'\title{The \texttt{%s} %s Component}' % (_tex(i.name), _tex(flavour))) - out.append(r'\author{%s}' % _tex(i.author)) - out.append(r'\date{%s}' % _tex(i.date)) - out.append(r'\begin{document}') - out.append(r'\maketitle') - out.append('') + out = [] # Drop the [_LATEX_PREAMBLE] + out.append(r'\section{The \texttt{%s} %s Component}' % (_tex(i.name), _tex(flavour))) out.append(_tex(short_descr)) out.append('') - out.append(r'\section*{Identification}') + out.append(r'\subsection*{Identification}') out.append(r'\begin{itemize}') out.append(r' \item \textbf{Site:} %s' % _tex(i.site)) out.append(r' \item \textbf{Author:} %s' % _tex(i.author)) @@ -1376,12 +1371,12 @@ def create(self): out.append(r' \item \textbf{Date:} %s' % _tex(i.date)) out.append(r'\end{itemize}') out.append('') - out.append(r'\section*{Description}') + out.append(r'\subsection*{Description}') out.append(r'\begin{Verbatim}[breaklines=true,breakanywhere=true]') out.append(i.description if i.description is not None else '') out.append(r'\end{Verbatim}') out.append('') - out.append(r'\section*{Input parameters}') + out.append(r'\subsection*{Input parameters}') out.append(r'Parameters in \textbf{boldface} are required; the others are optional.') out.append('') out.append(r'\begin{longtable}{p{0.22\textwidth}p{0.12\textwidth}p{0.46\textwidth}p{0.14\textwidth}}') @@ -1399,17 +1394,10 @@ def create(self): out.append('') out.append(r'\section*{Links}') out.append(r'\begin{itemize}') - out.append(r' \item \href{run:%s}{Source code} for \texttt{%s}.' % (i.filepath, _tex(os.path.basename(i.filepath)))) for l in i.links: out.append(r' \item %s' % _tex(l)) out.append(r'\end{itemize}') out.append('') - out.append(r'\vspace{1em}') - out.append(r'\noindent\rule{\textwidth}{0.4pt}') - out.append(r'\begin{flushright}\small Generated on %s %s.\end{flushright}' % ( - _tex(mccode_config.configuration["MCCODE"]), - _tex(mccode_config.configuration["MCCODE_VERSION"]))) - out.append(r'\end{document}') self.text = '\n'.join(out) return self.text From d94ceda4f824377beb5d405bbd9442a955cc9524 Mon Sep 17 00:00:00 2001 From: Peter Willendrup Date: Tue, 21 Apr 2026 11:31:41 +0200 Subject: [PATCH 07/43] Add outdir option for writing e.g. TeX comp snippets --- tools/Python/mcdoc/mcdoc.py | 36 +++++++++++++++++++++++++++--------- 1 file changed, 27 insertions(+), 9 deletions(-) diff --git a/tools/Python/mcdoc/mcdoc.py b/tools/Python/mcdoc/mcdoc.py index 4390c8585..1976fd36e 100644 --- a/tools/Python/mcdoc/mcdoc.py +++ b/tools/Python/mcdoc/mcdoc.py @@ -38,10 +38,14 @@ } -def get_doc_filepath(filepath, ext='html'): +def get_doc_filepath(filepath, ext='html', outdir=None): ''' transform from .anything to ., swapping resourcedir -> docdir ''' h = pathlib.Path(os.path.splitext(filepath)[0] + '.' + ext) - h = pathlib.Path(str(h).replace(mccode_config.directories['resourcedir'], + if not outdir: + h = pathlib.Path(str(h).replace(mccode_config.directories['resourcedir'], + mccode_config.directories['docdir'])) + else: + h = pathlib.Path(str(h).replace(str(h.parent.parent), mccode_config.directories['docdir'])) return h @@ -1496,11 +1500,12 @@ def _normalize_formats(formats): def write_doc_files_or_continue(comp_infos, instr_infos, comp_files, instr_files, - printlog=False, formats=('html',)): + printlog=False, formats=('html',), outdir=None): ''' Writes component and instrument docs files in the requested formats. ''' formats = _normalize_formats(formats) for i in range(len(comp_infos)): + print("Working on comp " + str(i) + " of " + str(len(comp_infos)) + ": " + comp_infos[i].name) try: p = comp_infos[i] try: @@ -1511,7 +1516,8 @@ def write_doc_files_or_continue(comp_infos, instr_infos, comp_files, instr_files ext, InstrW, CompW = _PER_FILE_WRITERS[fmt] doc = CompW(p) text = doc.create() - h = get_doc_filepath(f, ext) + h = get_doc_filepath(f, ext, outdir=outdir) + print("Meant to be dumped in " + str(h)) if printlog: print("writing doc file... %s" % h) write_file(h, text, failsilent=True) @@ -1530,7 +1536,7 @@ def write_doc_files_or_continue(comp_infos, instr_infos, comp_files, instr_files ext, InstrW, CompW = _PER_FILE_WRITERS[fmt] doc = InstrW(p) text = doc.create() - h = get_doc_filepath(f, ext) + h = get_doc_filepath(f, ext, outdir=outdir) if printlog: print("writing doc file... %s" % h) write_file(h, text, failsilent=True) @@ -1576,7 +1582,7 @@ def main(args): # Resolve requested formats. HTML is always included so existing # behaviour (browser-based viewing) is preserved. if getattr(args, 'in_repo', True): - requested = ['md'] + requested = [] args.install=True else: requested = ['html'] @@ -1587,7 +1593,17 @@ def main(args): formats = _normalize_formats(requested) usedir = mccode_config.configuration["MCCODE_LIB_DIR"] - docdir = mccode_config.directories["docdir"] + outdir = None + + if not args.outdir: + docdir = mccode_config.directories["docdir"] + else: + if not getattr(args, 'in_repo', True): + print("Outdir is meant for in-repo use only, e.g. for generating TeX manual snippets.") + quit() + docdir = args.outdir + outdir = args.outdir + mccode_config.directories["docdir"] = docdir if args.dir==None and args.install==False and args.searchterm==None and args.manual==False and args.comps==False and args.web==False: ''' browse system docs and exit ''' @@ -1628,8 +1644,9 @@ def main(args): print("using custom dir: %s" % usedir) comp_infos, instr_infos, comp_files, instr_files = parse_and_filter(usedir, recursive=True, printlog=args.verbose) + print("DOC dir is " + mccode_config.directories["docdir"]) write_doc_files_or_continue(comp_infos, instr_infos, comp_files, instr_files, - printlog=args.verbose, formats=formats) + printlog=args.verbose, formats=formats, outdir=outdir) if args.in_repo==False: mcdoc_html_filepath = os.path.join(docdir, mccode_config.get_mccode_prefix()+'doc.html') else: @@ -1675,7 +1692,7 @@ def main(args): instr = re.search(r'[\w0-9]+\.instr', args.searchterm) comp = re.search(r'[\w0-9]+\.comp', args.searchterm) if getattr(args, 'in_repo', True): - docdir = mccode_config.directories["docdir"] + docdir = mccode_config.directories["docdir"] else: docdir='' @@ -1744,6 +1761,7 @@ def main(args): help='emit HTML, Markdown and LaTeX doc files') parser.add_argument('--in-repo', action='store_true', dest='in_repo', help='Place generated output(s) next to comp files (no master doc page)') + parser.add_argument('--outdir', '-o', help='write generated results to this directory (in-repo use only)') args = parser.parse_args() try: From 5e9eafda48d44bbbc2eb4650744b3c3c130dcb2a Mon Sep 17 00:00:00 2001 From: Peter Willendrup Date: Tue, 21 Apr 2026 13:29:56 +0200 Subject: [PATCH 08/43] Suppress debug logging --- tools/Python/mcdoc/mcdoc.py | 3 --- 1 file changed, 3 deletions(-) diff --git a/tools/Python/mcdoc/mcdoc.py b/tools/Python/mcdoc/mcdoc.py index 1976fd36e..a40d7ff18 100644 --- a/tools/Python/mcdoc/mcdoc.py +++ b/tools/Python/mcdoc/mcdoc.py @@ -1505,7 +1505,6 @@ def write_doc_files_or_continue(comp_infos, instr_infos, comp_files, instr_files formats = _normalize_formats(formats) for i in range(len(comp_infos)): - print("Working on comp " + str(i) + " of " + str(len(comp_infos)) + ": " + comp_infos[i].name) try: p = comp_infos[i] try: @@ -1517,7 +1516,6 @@ def write_doc_files_or_continue(comp_infos, instr_infos, comp_files, instr_files doc = CompW(p) text = doc.create() h = get_doc_filepath(f, ext, outdir=outdir) - print("Meant to be dumped in " + str(h)) if printlog: print("writing doc file... %s" % h) write_file(h, text, failsilent=True) @@ -1644,7 +1642,6 @@ def main(args): print("using custom dir: %s" % usedir) comp_infos, instr_infos, comp_files, instr_files = parse_and_filter(usedir, recursive=True, printlog=args.verbose) - print("DOC dir is " + mccode_config.directories["docdir"]) write_doc_files_or_continue(comp_infos, instr_infos, comp_files, instr_files, printlog=args.verbose, formats=formats, outdir=outdir) if args.in_repo==False: From 75764365dfb42b579913e9533c530ec3be025778 Mon Sep 17 00:00:00 2001 From: Peter Willendrup Date: Tue, 21 Apr 2026 13:36:56 +0200 Subject: [PATCH 09/43] Add static comp snippets --- .../monitors/{DivPos_monitor.tex => DivPos_monitor_static.tex} | 0 .../{Divergence_monitor.tex => Divergence_monitor_static.tex} | 0 .../mcstas/monitors/{E_monitor.tex => E_monitor_static.tex} | 0 .../mcstas/monitors/{L_monitor.tex => L_monitor_static.tex} | 0 .../mcstas/monitors/{Monitor_nD.tex => Monitor_nD_static.tex} | 0 .../mcstas/monitors/{PSD_monitor.tex => PSD_monitor_static.tex} | 0 .../monitors/{TOF2E_monitor.tex => TOF2E_monitor_static.tex} | 0 .../mcstas/monitors/{TOF_monitor.tex => TOF_monitor_static.tex} | 0 docs/manuals/mcstas/optics/{Arm.tex => Arm_static.tex} | 0 docs/manuals/mcstas/optics/{Beamstop.tex => Beamstop_static.tex} | 0 .../{Collimator_linear.tex => Collimator_linear_static.tex} | 0 .../{Collimator_radial.tex => Collimator_radial_static.tex} | 0 .../mcstas/optics/{DiskChopper.tex => DiskChopper_static.tex} | 0 .../mcstas/optics/{FermiChopper.tex => FermiChopper_static.tex} | 0 docs/manuals/mcstas/optics/{Guide.tex => Guide_static.tex} | 0 .../{Monochromator_curved.tex => Monochromator_curved_static.tex} | 0 .../{Monochromator_flat.tex => Monochromator_flat_static.tex} | 0 docs/manuals/mcstas/optics/{Selector.tex => Selector_static.tex} | 0 docs/manuals/mcstas/optics/{Slit.tex => Slit_static.tex} | 0 .../mcstas/optics/{V_selector.tex => V_selector_static.tex} | 0 .../{Vitess_ChopperFermi.tex => Vitess_ChopperFermi_static.tex} | 0 .../mcstas/samples/{Incoherent.tex => Incoherent_static.tex} | 0 .../samples/{Isotropic_Sqw.tex => Isotropic_Sqw_static.tex} | 0 .../samples/{Phonon_simple.tex => Phonon_simple_static.tex} | 0 docs/manuals/mcstas/samples/{PowderN.tex => PowderN_static.tex} | 0 .../mcstas/samples/{Sans_spheres.tex => Sans_spheres_static.tex} | 0 .../samples/{Single_crystal.tex => Single_crystal_static.tex} | 0 .../samples/{Tunneling_sample.tex => Tunneling_sample_static.tex} | 0 .../mcstas/sources/{Adapt_check.tex => Adapt_check_static.tex} | 0 .../mcstas/sources/{Moderator.tex => Moderator_static.tex} | 0 .../{Monitor_Optimizer.tex => Monitor_Optimizer_static.tex} | 0 .../sources/{Source_Maxwell_3.tex => Source_Maxwell_3_static.tex} | 0 .../sources/{Source_Optimizer.tex => Source_Optimizer_static.tex} | 0 .../mcstas/sources/{Source_adapt.tex => Source_adapt_static.tex} | 0 .../mcstas/sources/{Source_div.tex => Source_div_static.tex} | 0 .../mcstas/sources/{Source_gen.tex => Source_gen_static.tex} | 0 .../sources/{Source_simple.tex => Source_simple_static.tex} | 0 37 files changed, 0 insertions(+), 0 deletions(-) rename docs/manuals/mcstas/monitors/{DivPos_monitor.tex => DivPos_monitor_static.tex} (100%) rename docs/manuals/mcstas/monitors/{Divergence_monitor.tex => Divergence_monitor_static.tex} (100%) rename docs/manuals/mcstas/monitors/{E_monitor.tex => E_monitor_static.tex} (100%) rename docs/manuals/mcstas/monitors/{L_monitor.tex => L_monitor_static.tex} (100%) rename docs/manuals/mcstas/monitors/{Monitor_nD.tex => Monitor_nD_static.tex} (100%) rename docs/manuals/mcstas/monitors/{PSD_monitor.tex => PSD_monitor_static.tex} (100%) rename docs/manuals/mcstas/monitors/{TOF2E_monitor.tex => TOF2E_monitor_static.tex} (100%) rename docs/manuals/mcstas/monitors/{TOF_monitor.tex => TOF_monitor_static.tex} (100%) rename docs/manuals/mcstas/optics/{Arm.tex => Arm_static.tex} (100%) rename docs/manuals/mcstas/optics/{Beamstop.tex => Beamstop_static.tex} (100%) rename docs/manuals/mcstas/optics/{Collimator_linear.tex => Collimator_linear_static.tex} (100%) rename docs/manuals/mcstas/optics/{Collimator_radial.tex => Collimator_radial_static.tex} (100%) rename docs/manuals/mcstas/optics/{DiskChopper.tex => DiskChopper_static.tex} (100%) rename docs/manuals/mcstas/optics/{FermiChopper.tex => FermiChopper_static.tex} (100%) rename docs/manuals/mcstas/optics/{Guide.tex => Guide_static.tex} (100%) rename docs/manuals/mcstas/optics/{Monochromator_curved.tex => Monochromator_curved_static.tex} (100%) rename docs/manuals/mcstas/optics/{Monochromator_flat.tex => Monochromator_flat_static.tex} (100%) rename docs/manuals/mcstas/optics/{Selector.tex => Selector_static.tex} (100%) rename docs/manuals/mcstas/optics/{Slit.tex => Slit_static.tex} (100%) rename docs/manuals/mcstas/optics/{V_selector.tex => V_selector_static.tex} (100%) rename docs/manuals/mcstas/optics/{Vitess_ChopperFermi.tex => Vitess_ChopperFermi_static.tex} (100%) rename docs/manuals/mcstas/samples/{Incoherent.tex => Incoherent_static.tex} (100%) rename docs/manuals/mcstas/samples/{Isotropic_Sqw.tex => Isotropic_Sqw_static.tex} (100%) rename docs/manuals/mcstas/samples/{Phonon_simple.tex => Phonon_simple_static.tex} (100%) rename docs/manuals/mcstas/samples/{PowderN.tex => PowderN_static.tex} (100%) rename docs/manuals/mcstas/samples/{Sans_spheres.tex => Sans_spheres_static.tex} (100%) rename docs/manuals/mcstas/samples/{Single_crystal.tex => Single_crystal_static.tex} (100%) rename docs/manuals/mcstas/samples/{Tunneling_sample.tex => Tunneling_sample_static.tex} (100%) rename docs/manuals/mcstas/sources/{Adapt_check.tex => Adapt_check_static.tex} (100%) rename docs/manuals/mcstas/sources/{Moderator.tex => Moderator_static.tex} (100%) rename docs/manuals/mcstas/sources/{Monitor_Optimizer.tex => Monitor_Optimizer_static.tex} (100%) rename docs/manuals/mcstas/sources/{Source_Maxwell_3.tex => Source_Maxwell_3_static.tex} (100%) rename docs/manuals/mcstas/sources/{Source_Optimizer.tex => Source_Optimizer_static.tex} (100%) rename docs/manuals/mcstas/sources/{Source_adapt.tex => Source_adapt_static.tex} (100%) rename docs/manuals/mcstas/sources/{Source_div.tex => Source_div_static.tex} (100%) rename docs/manuals/mcstas/sources/{Source_gen.tex => Source_gen_static.tex} (100%) rename docs/manuals/mcstas/sources/{Source_simple.tex => Source_simple_static.tex} (100%) diff --git a/docs/manuals/mcstas/monitors/DivPos_monitor.tex b/docs/manuals/mcstas/monitors/DivPos_monitor_static.tex similarity index 100% rename from docs/manuals/mcstas/monitors/DivPos_monitor.tex rename to docs/manuals/mcstas/monitors/DivPos_monitor_static.tex diff --git a/docs/manuals/mcstas/monitors/Divergence_monitor.tex b/docs/manuals/mcstas/monitors/Divergence_monitor_static.tex similarity index 100% rename from docs/manuals/mcstas/monitors/Divergence_monitor.tex rename to docs/manuals/mcstas/monitors/Divergence_monitor_static.tex diff --git a/docs/manuals/mcstas/monitors/E_monitor.tex b/docs/manuals/mcstas/monitors/E_monitor_static.tex similarity index 100% rename from docs/manuals/mcstas/monitors/E_monitor.tex rename to docs/manuals/mcstas/monitors/E_monitor_static.tex diff --git a/docs/manuals/mcstas/monitors/L_monitor.tex b/docs/manuals/mcstas/monitors/L_monitor_static.tex similarity index 100% rename from docs/manuals/mcstas/monitors/L_monitor.tex rename to docs/manuals/mcstas/monitors/L_monitor_static.tex diff --git a/docs/manuals/mcstas/monitors/Monitor_nD.tex b/docs/manuals/mcstas/monitors/Monitor_nD_static.tex similarity index 100% rename from docs/manuals/mcstas/monitors/Monitor_nD.tex rename to docs/manuals/mcstas/monitors/Monitor_nD_static.tex diff --git a/docs/manuals/mcstas/monitors/PSD_monitor.tex b/docs/manuals/mcstas/monitors/PSD_monitor_static.tex similarity index 100% rename from docs/manuals/mcstas/monitors/PSD_monitor.tex rename to docs/manuals/mcstas/monitors/PSD_monitor_static.tex diff --git a/docs/manuals/mcstas/monitors/TOF2E_monitor.tex b/docs/manuals/mcstas/monitors/TOF2E_monitor_static.tex similarity index 100% rename from docs/manuals/mcstas/monitors/TOF2E_monitor.tex rename to docs/manuals/mcstas/monitors/TOF2E_monitor_static.tex diff --git a/docs/manuals/mcstas/monitors/TOF_monitor.tex b/docs/manuals/mcstas/monitors/TOF_monitor_static.tex similarity index 100% rename from docs/manuals/mcstas/monitors/TOF_monitor.tex rename to docs/manuals/mcstas/monitors/TOF_monitor_static.tex diff --git a/docs/manuals/mcstas/optics/Arm.tex b/docs/manuals/mcstas/optics/Arm_static.tex similarity index 100% rename from docs/manuals/mcstas/optics/Arm.tex rename to docs/manuals/mcstas/optics/Arm_static.tex diff --git a/docs/manuals/mcstas/optics/Beamstop.tex b/docs/manuals/mcstas/optics/Beamstop_static.tex similarity index 100% rename from docs/manuals/mcstas/optics/Beamstop.tex rename to docs/manuals/mcstas/optics/Beamstop_static.tex diff --git a/docs/manuals/mcstas/optics/Collimator_linear.tex b/docs/manuals/mcstas/optics/Collimator_linear_static.tex similarity index 100% rename from docs/manuals/mcstas/optics/Collimator_linear.tex rename to docs/manuals/mcstas/optics/Collimator_linear_static.tex diff --git a/docs/manuals/mcstas/optics/Collimator_radial.tex b/docs/manuals/mcstas/optics/Collimator_radial_static.tex similarity index 100% rename from docs/manuals/mcstas/optics/Collimator_radial.tex rename to docs/manuals/mcstas/optics/Collimator_radial_static.tex diff --git a/docs/manuals/mcstas/optics/DiskChopper.tex b/docs/manuals/mcstas/optics/DiskChopper_static.tex similarity index 100% rename from docs/manuals/mcstas/optics/DiskChopper.tex rename to docs/manuals/mcstas/optics/DiskChopper_static.tex diff --git a/docs/manuals/mcstas/optics/FermiChopper.tex b/docs/manuals/mcstas/optics/FermiChopper_static.tex similarity index 100% rename from docs/manuals/mcstas/optics/FermiChopper.tex rename to docs/manuals/mcstas/optics/FermiChopper_static.tex diff --git a/docs/manuals/mcstas/optics/Guide.tex b/docs/manuals/mcstas/optics/Guide_static.tex similarity index 100% rename from docs/manuals/mcstas/optics/Guide.tex rename to docs/manuals/mcstas/optics/Guide_static.tex diff --git a/docs/manuals/mcstas/optics/Monochromator_curved.tex b/docs/manuals/mcstas/optics/Monochromator_curved_static.tex similarity index 100% rename from docs/manuals/mcstas/optics/Monochromator_curved.tex rename to docs/manuals/mcstas/optics/Monochromator_curved_static.tex diff --git a/docs/manuals/mcstas/optics/Monochromator_flat.tex b/docs/manuals/mcstas/optics/Monochromator_flat_static.tex similarity index 100% rename from docs/manuals/mcstas/optics/Monochromator_flat.tex rename to docs/manuals/mcstas/optics/Monochromator_flat_static.tex diff --git a/docs/manuals/mcstas/optics/Selector.tex b/docs/manuals/mcstas/optics/Selector_static.tex similarity index 100% rename from docs/manuals/mcstas/optics/Selector.tex rename to docs/manuals/mcstas/optics/Selector_static.tex diff --git a/docs/manuals/mcstas/optics/Slit.tex b/docs/manuals/mcstas/optics/Slit_static.tex similarity index 100% rename from docs/manuals/mcstas/optics/Slit.tex rename to docs/manuals/mcstas/optics/Slit_static.tex diff --git a/docs/manuals/mcstas/optics/V_selector.tex b/docs/manuals/mcstas/optics/V_selector_static.tex similarity index 100% rename from docs/manuals/mcstas/optics/V_selector.tex rename to docs/manuals/mcstas/optics/V_selector_static.tex diff --git a/docs/manuals/mcstas/optics/Vitess_ChopperFermi.tex b/docs/manuals/mcstas/optics/Vitess_ChopperFermi_static.tex similarity index 100% rename from docs/manuals/mcstas/optics/Vitess_ChopperFermi.tex rename to docs/manuals/mcstas/optics/Vitess_ChopperFermi_static.tex diff --git a/docs/manuals/mcstas/samples/Incoherent.tex b/docs/manuals/mcstas/samples/Incoherent_static.tex similarity index 100% rename from docs/manuals/mcstas/samples/Incoherent.tex rename to docs/manuals/mcstas/samples/Incoherent_static.tex diff --git a/docs/manuals/mcstas/samples/Isotropic_Sqw.tex b/docs/manuals/mcstas/samples/Isotropic_Sqw_static.tex similarity index 100% rename from docs/manuals/mcstas/samples/Isotropic_Sqw.tex rename to docs/manuals/mcstas/samples/Isotropic_Sqw_static.tex diff --git a/docs/manuals/mcstas/samples/Phonon_simple.tex b/docs/manuals/mcstas/samples/Phonon_simple_static.tex similarity index 100% rename from docs/manuals/mcstas/samples/Phonon_simple.tex rename to docs/manuals/mcstas/samples/Phonon_simple_static.tex diff --git a/docs/manuals/mcstas/samples/PowderN.tex b/docs/manuals/mcstas/samples/PowderN_static.tex similarity index 100% rename from docs/manuals/mcstas/samples/PowderN.tex rename to docs/manuals/mcstas/samples/PowderN_static.tex diff --git a/docs/manuals/mcstas/samples/Sans_spheres.tex b/docs/manuals/mcstas/samples/Sans_spheres_static.tex similarity index 100% rename from docs/manuals/mcstas/samples/Sans_spheres.tex rename to docs/manuals/mcstas/samples/Sans_spheres_static.tex diff --git a/docs/manuals/mcstas/samples/Single_crystal.tex b/docs/manuals/mcstas/samples/Single_crystal_static.tex similarity index 100% rename from docs/manuals/mcstas/samples/Single_crystal.tex rename to docs/manuals/mcstas/samples/Single_crystal_static.tex diff --git a/docs/manuals/mcstas/samples/Tunneling_sample.tex b/docs/manuals/mcstas/samples/Tunneling_sample_static.tex similarity index 100% rename from docs/manuals/mcstas/samples/Tunneling_sample.tex rename to docs/manuals/mcstas/samples/Tunneling_sample_static.tex diff --git a/docs/manuals/mcstas/sources/Adapt_check.tex b/docs/manuals/mcstas/sources/Adapt_check_static.tex similarity index 100% rename from docs/manuals/mcstas/sources/Adapt_check.tex rename to docs/manuals/mcstas/sources/Adapt_check_static.tex diff --git a/docs/manuals/mcstas/sources/Moderator.tex b/docs/manuals/mcstas/sources/Moderator_static.tex similarity index 100% rename from docs/manuals/mcstas/sources/Moderator.tex rename to docs/manuals/mcstas/sources/Moderator_static.tex diff --git a/docs/manuals/mcstas/sources/Monitor_Optimizer.tex b/docs/manuals/mcstas/sources/Monitor_Optimizer_static.tex similarity index 100% rename from docs/manuals/mcstas/sources/Monitor_Optimizer.tex rename to docs/manuals/mcstas/sources/Monitor_Optimizer_static.tex diff --git a/docs/manuals/mcstas/sources/Source_Maxwell_3.tex b/docs/manuals/mcstas/sources/Source_Maxwell_3_static.tex similarity index 100% rename from docs/manuals/mcstas/sources/Source_Maxwell_3.tex rename to docs/manuals/mcstas/sources/Source_Maxwell_3_static.tex diff --git a/docs/manuals/mcstas/sources/Source_Optimizer.tex b/docs/manuals/mcstas/sources/Source_Optimizer_static.tex similarity index 100% rename from docs/manuals/mcstas/sources/Source_Optimizer.tex rename to docs/manuals/mcstas/sources/Source_Optimizer_static.tex diff --git a/docs/manuals/mcstas/sources/Source_adapt.tex b/docs/manuals/mcstas/sources/Source_adapt_static.tex similarity index 100% rename from docs/manuals/mcstas/sources/Source_adapt.tex rename to docs/manuals/mcstas/sources/Source_adapt_static.tex diff --git a/docs/manuals/mcstas/sources/Source_div.tex b/docs/manuals/mcstas/sources/Source_div_static.tex similarity index 100% rename from docs/manuals/mcstas/sources/Source_div.tex rename to docs/manuals/mcstas/sources/Source_div_static.tex diff --git a/docs/manuals/mcstas/sources/Source_gen.tex b/docs/manuals/mcstas/sources/Source_gen_static.tex similarity index 100% rename from docs/manuals/mcstas/sources/Source_gen.tex rename to docs/manuals/mcstas/sources/Source_gen_static.tex diff --git a/docs/manuals/mcstas/sources/Source_simple.tex b/docs/manuals/mcstas/sources/Source_simple_static.tex similarity index 100% rename from docs/manuals/mcstas/sources/Source_simple.tex rename to docs/manuals/mcstas/sources/Source_simple_static.tex From 880d8421adcc6f749ec1e3e1b7160ef7b3b97b7d Mon Sep 17 00:00:00 2001 From: Peter Willendrup Date: Tue, 21 Apr 2026 13:51:46 +0200 Subject: [PATCH 10/43] Add inclusion of _static tex if present in doc catalogue --- tools/Python/mcdoc/mcdoc.py | 5 ++--- 1 file changed, 2 insertions(+), 3 deletions(-) diff --git a/tools/Python/mcdoc/mcdoc.py b/tools/Python/mcdoc/mcdoc.py index a40d7ff18..227998e8c 100644 --- a/tools/Python/mcdoc/mcdoc.py +++ b/tools/Python/mcdoc/mcdoc.py @@ -1396,13 +1396,12 @@ def create(self): out.append(r'\bottomrule') out.append(r'\end{longtable}') out.append('') - out.append(r'\section*{Links}') + out.append(r'\subsection*{Links}') out.append(r'\begin{itemize}') for l in i.links: out.append(r' \item %s' % _tex(l)) out.append(r'\end{itemize}') - out.append('') - + out.append(r'\IfFileExists{%s_static.tex}{\input{%s_static.tex}}{}' % (i.name, i.name)) self.text = '\n'.join(out) return self.text From 09670308e8201d06f7e954a33e002070e85f88ec Mon Sep 17 00:00:00 2001 From: Peter Willendrup Date: Tue, 21 Apr 2026 14:37:57 +0200 Subject: [PATCH 11/43] Half-baked verbatim mode --- tools/Python/mcdoc/mcdoc.py | 11 ++++++----- 1 file changed, 6 insertions(+), 5 deletions(-) diff --git a/tools/Python/mcdoc/mcdoc.py b/tools/Python/mcdoc/mcdoc.py index 227998e8c..67df24cc5 100644 --- a/tools/Python/mcdoc/mcdoc.py +++ b/tools/Python/mcdoc/mcdoc.py @@ -1274,7 +1274,8 @@ def create(self): r'\usepackage{longtable}' '\n' r'\usepackage{booktabs}' '\n' r'\usepackage{array}' '\n' - r'\usepackage{fancyvrb}' '\n' + r'\usepackage{listings}' '\n' + r'\lstset{breaklines=true}' '\n' r'\usepackage{parskip}' '\n' ) @@ -1311,9 +1312,9 @@ def create(self): out.append(r'\end{itemize}') out.append('') out.append(r'\section*{Description}') - out.append(r'\begin{Verbatim}[breaklines=true,breakanywhere=true]') + out.append(r'\begin{lstlisting}') out.append(i.description if i.description is not None else '') - out.append(r'\end{Verbatim}') + out.append(r'\end{lstlisting}') out.append('') out.append(r'\section*{Input parameters}') out.append(r'Parameters in \textbf{boldface} are required; the others are optional.') @@ -1376,9 +1377,9 @@ def create(self): out.append(r'\end{itemize}') out.append('') out.append(r'\subsection*{Description}') - out.append(r'\begin{Verbatim}[breaklines=true,breakanywhere=true]') + out.append(r'\begin{lstlisting}') out.append(i.description if i.description is not None else '') - out.append(r'\end{Verbatim}') + out.append(r'\end{lstlisting}') out.append('') out.append(r'\subsection*{Input parameters}') out.append(r'Parameters in \textbf{boldface} are required; the others are optional.') From 60b107ea8c28bad4141f00398f7997869db5ab3f Mon Sep 17 00:00:00 2001 From: Peter Willendrup Date: Tue, 21 Apr 2026 14:38:35 +0200 Subject: [PATCH 12/43] Modified preamble and CMake listing --- docs/manuals/mcstas/CMakeLists.txt | 11 ++++++----- docs/manuals/mcstas/preamble_common.tex | 9 ++++++++- 2 files changed, 14 insertions(+), 6 deletions(-) diff --git a/docs/manuals/mcstas/CMakeLists.txt b/docs/manuals/mcstas/CMakeLists.txt index e54b1ee4e..a0db0191b 100644 --- a/docs/manuals/mcstas/CMakeLists.txt +++ b/docs/manuals/mcstas/CMakeLists.txt @@ -57,11 +57,12 @@ message( "LaTeX configuration" ) file(GLOB LIST RELATIVE "${CMAKE_CURRENT_LIST_DIR}" "*.tex" "*.sty" "*.bib" "*.bst" "[m-s]*/*.tex" "[m-s]*/*.parms" "figures/*") foreach(NAME sources samples optics monitors misc) - add_custom_command( - OUTPUT "${NAME}.done" - COMMAND "${PROJECT_SOURCE_DIR}/get_mcdoc_snippets.sh" "${NAME}" "${PROJECT_SOURCE_DIR}" - WORKING_DIRECTORY "${PROJECT_BINARY_DIR}" - ) + add_custom_command( + OUTPUT "${NAME}.done" + COMMAND "mcdoc" "--tex" "--in-repo" "--dir=mcstas-comps/${NAME}" "--outdir=doc/manuals/mcstas/" + COMMAND "touch" "${NAME}.done" + WORKING_DIRECTORY "${PROJECT_BINARY_DIR}" + ) endforeach() set(LATEX_OUTPUT_PATH "${PROJECT_BINARY_DIR}") diff --git a/docs/manuals/mcstas/preamble_common.tex b/docs/manuals/mcstas/preamble_common.tex index a4b262904..15a363f8e 100644 --- a/docs/manuals/mcstas/preamble_common.tex +++ b/docs/manuals/mcstas/preamble_common.tex @@ -4,7 +4,14 @@ \usepackage{amsfonts} \usepackage{amsbsy} \usepackage{ifdraft} - +\usepackage[utf8]{inputenc} +\usepackage[T1]{fontenc} +\usepackage{hyperref} +\usepackage{longtable} +\usepackage{booktabs} +\usepackage{array} +\usepackage{listings} +\lstset{breaklines=true} % A few macros: \newcommand{\MCS}{McStas\xspace} \newcommand{\mcs}{\texttt{mcstas}\xspace} From fa97213378ccdf40b095ed6e1d103efe68c6216b Mon Sep 17 00:00:00 2001 From: Peter Willendrup Date: Tue, 21 Apr 2026 14:53:10 +0200 Subject: [PATCH 13/43] Add tex hack --- tex_snippets | 9 +++++++++ 1 file changed, 9 insertions(+) create mode 100644 tex_snippets diff --git a/tex_snippets b/tex_snippets new file mode 100644 index 000000000..d9105c813 --- /dev/null +++ b/tex_snippets @@ -0,0 +1,9 @@ +mcdoc --tex --in-repo -i --dir=mcstas-comps/contrib --outdir=doc/manuals/mcstas/ +mcdoc --tex --in-repo -i --dir=mcstas-comps/misc --outdir=doc/manuals/mcstas/ +mcdoc --tex --in-repo -i --dir=mcstas-comps/monitors --outdir=doc/manuals/mcstas/ +mcdoc --tex --in-repo -i --dir=mcstas-comps/obsolete --outdir=doc/manuals/mcstas/ +mcdoc --tex --in-repo -i --dir=mcstas-comps/optics --outdir=doc/manuals/mcstas/ +mcdoc --tex --in-repo -i --dir=mcstas-comps/samples --outdir=doc/manuals/mcstas/ +mcdoc --tex --in-repo -i --dir=mcstas-comps/sasmodels --outdir=doc/manuals/mcstas/ +mcdoc --tex --in-repo -i --dir=mcstas-comps/sources --outdir=doc/manuals/mcstas/ +mcdoc --tex --in-repo -i --dir=mcstas-comps/union --outdir=doc/manuals/mcstas/ From 3d7975f9b2973af41d4c86d8b31793701e9dfc1a Mon Sep 17 00:00:00 2001 From: Peter Willendrup Date: Tue, 21 Apr 2026 14:53:32 +0200 Subject: [PATCH 14/43] Unified listing options --- docpkg/manuals/mcstas/manual.pdf | Bin 2379964 -> 2443234 bytes docs/manuals/mcstas/preamble_common.tex | 2 +- 2 files changed, 1 insertion(+), 1 deletion(-) diff --git a/docpkg/manuals/mcstas/manual.pdf b/docpkg/manuals/mcstas/manual.pdf index 52846108dbd74f35006cad2181ae3643ef048c32..8be6f81fc9924fc7e26623c05a18d0114e89cdb6 100644 GIT binary patch delta 688439 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%0Ddj-Cq06C;>XeeLGxH7N?SKIauu?k^ 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�TpXnY@Nsr5HDIof+ZFblvO8SQM0In& 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�=tVjig%D5=jS-w0LPQ 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%0A@uc_kU?g7wU{YN*e8*oe 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 +D3#j;3R7meHe=qwC%BY%%@ZcI7J# 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%0AL6wUK2Szwi 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 delta 679614 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

    i>_u^CD1xkCbE@? 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 z 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

    =`%qhbns4%7vbD}lHu`yUr&|Kp-9 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 z z(`6Hvz(00_x}i|Gc7Brt*UG=_--c~FvgE9uZ! z2soJYm=x2c^u=-^RzE#$Qln6LqEk@$u|tctyz61c?D$V_Y}M^*FOhxVZRJ(F+t$%z z7yI}laoz_k>|@k*c-fB<EZ{2IKEV{>dH*?WBDrhOf{6(U63cH46^AUNhN7=Rcp1$5` zn$BBo;Q{LIfy>(*&oDGf4|-V?MXrU2ID-QgA~F zPiJ=*n|QBa{@r-s39$&T4LbD4hg(_<$OF`rf5fi$$8QU3zd%BS znMER`SL@=)o4+-hrPTF2=~{Udb@UwU!xi%kdB5n;3)q)sG!^#^W!27eihFfWo+5gF{zZD=1i ztv?MUyz*jfBaO}-l6foG3;t!daE;VELe;F_UfZ986Tp}(e>G~H!_6r+CUwOj2l}Ev4FA8e^BPHVNTBn&b*bgT-2okeL4SaGe=)h@FcyV+ElpeGp`P(%x<%y+2hq& z=Rt)VGzxwE%NxTd%0rmBX21I$BKL|ptkc}{`*qYz62NwG(jg369ar=wQfuFP4Y!?L zLo|e`Nc6oZUST%Ale72SJW3|vc28+ZiaH)kJL%3-f5Urb3k_M3kDizhE))Q(u%d45 zjwK_2m-XJ1=j>a_Jr_!!ou|}&shZ7hr6JVP>DsfmdXGrDW@0h2MNM)v^7tBq>I%dk z>+UC$ba#CxBJrLUVq>4Qxe85I;1!aR$38ErlQp_oe|M-O+-hTm|Imiuh5;q{!#2mf z7lfPVe=bXh&e6&6`9~AN&O9r9H=^FPSe-A3Llvxmn)Z=yKFy%Cad5^UW{R4kqTnki*mN5ObQ zSvQ%;7<}{a;wQ)@0${5~_jyg^FT`k>K%sJ{ntsBd!BwKo@yHV6!7Q<2-(bs?2v`91 z`L5eMXQxbbQW2DEtnqPg7a!M~XngpFf7jvx4gHRZEVqc%w*!l-(!^f;F_J3v08PZI zNY#a3L(ekpf%pl(lqKb{@1$>zhT8etOqWbHo;H<$E4?{&j#8os2~O)4aKVU%w1hGfgXY`Jp9VFfNYUEzLYe>IY( zw(v`}?BnxqMUrbP#=89;P9-r5X)n2Rb*o2yA+rz%qKg3YV%$o zBz=jq12q3#+COOhQ9?dG+qNd%f0n1QrJYyC4+(MK+*SU?FPYB{{0a5ALumM!Hzc^o zcU&{cYGr82Ch&p+*X+{om@U#SgB!PPIp-lXV`o7zvEvF~jEF<28{D-C$!;+51}zb} z^7|*viYn$~C*?yl>^=bt35rG&(y?tF)=rLcz-(qKE{GY|0h$y8L4+oRe-CF2{uKGl z59K=@!GC>=`a84NjFK^g;o<3Q?ZzP!D@}oHo%_!mZSh-HS;zb5&&HlUvHt0XOa>hZ zAC!XmJ0c$xfYtIq0gT^$6oZu~t$|iPz9pT}vu5&K?>~RISC>#LTCH+x;ia;DwG&X% z-<+(w4l44-)W10(Gvw>6f8A1L74>l88@({RCnB&b)n?gzb+g8vwRRpYAOX*%hf$u%$F63hhSby-j18mnODFI-WUz3!t;@( z@KUmmTvoakladMyifiA6D#Ds9ZSmP_wiob7lRVq5CTH`)^92@V{1hT*$EZwp( zRyrHZ;yMK9ywz$Ye`fVhn3G3&gvk8odd1!KzxYTtP_atR4qe$axEYzp)I>M};UKRT zl-~P1oyPM<5dC}=CFOju79U7=^&*CMq3s-28(FL17VSa}rZj!=gNvu5euDl!@A!|O z?|)foWNuLT+e&6R=7`P#q+%e*wu@Se9f7Q!KWlY6(yT z7)rN63;cHP3|rCz>Ce#nG`zV2Bt7c6FHb7?8CK%FiE`3TKqADfx1MN#udFaO72VBp zATa8I*Z9z8p(PU<8;@#6^2cwBHi*aS)4um#`s_9N%7Lkws@pCjM>Qv$ zV(&HwTA)Q+e|vOTCXXjI7A#xX&qQA~OLOF^@$#4s%Cu#hN>#m^!Zd#fjpO30ulYjz zLpIv6_##?_cuRXRbLByXr6n2M^v%(M{nHWICGfG^&fZJ)P}jjIumCZyYTPfHAIkll zq4v3T5%=dBRZV-k81Gq-4LC}lCN*=|s_dgQIIg5Mf0ne;MV8(Px)T^83I3XUtl2O3 z{`AI_YbZTSxnx4^zRC!;O>bShRrd%FAwDGkHKw63{M66TH1Mn|%+~vuzusJJEa-I= z|6OzxQQJT^-9Ql@KUq;Qnk-@|chC|QQ zzGNqae_C_z*4Cy)>+d!eb}FqHAQ!RpseZuPIfGQm+P18tY-JXchu1DvUUL@a_;5|kRFPE>4H@LUbVyvQh-_zLNmzI$lJeC^&@$qH%#Rp`bom}_Gp7`jx@JQv@LsXd z+Q&PVo@sV!=8-rf!atPHi{j9g1 ze?qN8Pw<9ScipQqd%?y?TEwa1=(CY-OJQ;-|7O(t{N zQ4P?dh-H6pYEk;8iC&@bwkVKrs$%Mtxm&62H7piG#6r6((2 zJ~781tMZso+fAxcuj4^VmA>Pn(*zl@1{zHz=l2*AI`AHPXB6ujs{Mp4)JPSQIY$?e z1aDeS{Spdu1Lyqi<#@lhZ`e?U5dPf5*eOqHeu>1v$2-SE5Z;XM3mNFEIsVNEi zQ0#55Z)F>NKJGX&E9!~Jf`o@N^{Jc%$w zTrO9Lv*Mu++G}@QQA_mw?%F*QIQhL;hRJa_+s&2*V8#$f5?R>|gg+-$88O`wfFrnT-DY-^N z{a02LVf$d%%8Rfi+c=+T8&*mfyZ*V#6wDV~T|r7P<+zzw&vX;o@+@OYTgV;Af}-CIebNc?QP-fRD4HyB4deU zfwN9D{m|?r3DH9}fRNwr>krRte25TNMYNmCP8eRtkE8fhe8I`(x+fWM7P_*G9E6Fl zm_Y0u(-DdKyZ4cacawsJsuR^Ay8$(qH{FhC|Z$-rWkJ zyoaT9squ0^f4vlv_3O=ardSTwFjxyE;ExqS(P=62+(#UG5@~+z9wMGP`LyG$i%kJ2 zT{pfqqC#TPnQUscIWZVXL3bifwBwLV-1GeNcR#+NXzqg24~t4eTn*B;vv-Bh`W~bw zcI2{ADC^X!%}_~yzk1_~rpvR%am3jz9yhB1!$;c?f26R;3Hbma+o`C;=5zb@Bg(}k zJ#yk?&X>|hgPvd1g@O$85ExG65^+svANwRGu1@?C+@MG2u=d$}ss6%$5m z5fPuKe?*@*!^ml#6ljyd@v$W_jgy}<(5*lpevPTHEr)XRO{R#Ms8>a4WBko4Ldehc|L2Iemj>V{0hU*M}0sHHZk`WE24> zty3-JOvRULH`Lk9O-|ZUwqNE}*!We%3j$Jae`)v-!CrkCXbzg5GR}YR$kE?IB$@0N zp(l)0f!>MmkQ6Tr)cT>r-M}S->g#mSpm35O0l+A4U`B^S;GfPmQV36{Sjdq+niLxq zuU_cP=dV^g{2Z$#E%$e_xC&Ji z8@#G{b9<*x?<9I%W%0Nl+pQNJ1exbbe_g*pjU1kPGV?%he}*{7CY8JLX^*3dMYKdW zyMp~{RFp%sc=Z!K4=T@9g}H^@MP~&-g*J-sfaOR%$htY&e8Lf4)*YWiYGl7z|e_ti+ zOF;W9qHz*CnqRTy1r+l+dl}Ua6+%hxIgv=A&LVU1x$e-gLQIlw(t`{KFY;iEF;9GN zI$4Wh9Gd9VE+m;ur(}m)q^gN@2*oUr2~SC!FV1t%J@Gy!u^6`sXb4W0H!GuJ@8ZV} zA(+6ngdZ~UnVwTjYtDsUGg@l6A6s6&B!T?A*=n=f`i}G4G0E*F>I>|T)y7|<9a)r`6K{jR^*th7Q}pnzPH)d@ z(DWartMkB{Pm|#PRw-{(e{bIXS%DyeOK2fD9sd?h&2#N6W3YT_=QO;u_4ruIUEHa- z`fJy1ojdQd`?Av$)qEBLV`WFKq^Ddnkfkwr*U;P^X>_OY`orCQp*yfcYu@BjuY9^p z2i|u>@gqw`uGg=5Q){w5FL^k=y;8eD%HbWn*8VE^`nEw8EKl^bgkJh*bp(hr)p=qytHX_Gfkj|>zxk>>h6 zKqo|N*n8Pg=7VyCKDlaJ-^O@$yY-b3CWrPxhg2(-Mb8})xkkz^qtb^#behyVr|uxN zo4X+Vtx)Aj>8QmYf7%l_*?p-umnU=?eKUdezp6TWI}LR_q6?p0JN>ZTn*yBbc=M@m zbE|zWWrAisFyfcx#M~V5{(H?${f9}nM@K$n$4dsj3(kB&*>ftu4v6pP&XsIRRHZ4E zS-U9ay6r|#q^6(q24yl-Uh<&b>VfCE|EP;Rsra3^EJ`QYe`*?x#4&uJ*pQuFvL!g@ z49XZG>(+{IH;BTLn^1i%P@0dj9S%i4UT8S29?*Oz`%Dp~sq}cSKv$H@r)1C?-!pD5 zP)<%VPE>@VykF=%82AEa)}9=`R46#eBfIR?Z&||1@xI$MHU=uOn!_Vif6{31Xgrna?Z*so=h7XSsW&4% z=dpu}@^B_*;Z<^dq9i)4U5H4vpD62H3$Bk(F;-GZ88T5rK8l^*vrqyGV&AC#AILLwBG*>)flw_4pJZX1_^ zcpwxNF(5KIIWP(@Ol59obZ9alGB!3dIG6GGBNPQPI5IdjlR?%ee~k78P+aNr1`6Zu z1PwB{ySuwP1eZaF!QBZ20>OhMxLbf=!3l1`-6as*-4gC(cmGTF_kC6O7FEM}TA%K> z`#pz-LS2hR!pg}4DC-1vXW?LF7X(PDXmYRv*x9*Q+1WW!XlS(U+(E#9#3(enKvy?A zC$Qij22!p-b9abLf7;v~VyEH+1}J)f032KZ4qibHK0$VN04F=U!2cOKxe5ZL%{}d` z04l5iMJF)O4TVO^$=S!%&c@aqlIH&&0rZv(01g2GKIXsN0TPZtS365{FhIrJ-4^Hw z$!KW~0%$o|+5z2t{u6>;*w)?MS&)s*%gc+^+|iBI$<;=be}Ng`W#?`S&;+^xT|I$T zfZqiJRLvcMe^1OMf0ZfWV{=xh%5u>;!xtnENRfSRl_tGl;5 zGr$~d_1n-Kf8^!_@i+H0w*#45Kn(t3ZVr%@&;Xc23jC)$H%nJLXLmPNH#^Yp64`!- zfpl30Y$fI7=m-S6yP^E%CvE2nw1l+Xhwbl^bpShgf&Kmg)^=bk>)%CKc{sD_fbCp7 zfC|$8m_S4*&oUdJJAj9sot;mB3jlNh0KF}3*?x!DfA(<({-xyjErwJO;OFe*46ue2 z0SvIS215R!__>*T0s-!>9>4&$IBD?3YffCbRT4vg{~9U=x=|BWGs?`r1_ zFl2|!9tVK^_us!y#*p!{asq>Vp3VO{Up8euHF?QbOn+DWuTE0Z$s6Fu!p#m~;pAZl zaQq%Je?G`Vz<@VYh_*aQuHB^}k&H|4sPsDF1Im{=bA|JwTwp)bxMp|9{lxj&>lQe+(c)>){Sr z02L?58i4=TR1f&~(y9Qh>^vO*SF7M|4p{^Vf3OYc-!|I0$=Z1Xt<>$@Ep7jvmcQjX zzqbrz2L`G;x!L``RsbxJqxl~lWVI|EAXkSQWF-Gm0U?|7-;^?7ODC(}E5^yg3ov(e zHTOY*95Mv)0Q@*0yJ!XU{%eQcZdrBQeFVS+Q}8=_lffI0N5mci~dHu05-{I zf5Zo1lX^z{05<7=5eEbSLGI?yY5@S7%)f|_9l$30j3Cx>&xjMiCjX4M0Bj1+h#SDB z_>3Url%5fUoboe*kW+a^5OS)|2*O3}nJR>fnj_HWnJYg;qW&*}7^}P4Ju4w(HJ%ZK ztmZRQnC8HL zAr~Z!xuY{=7k}TU|0m^!5H@#%46vP>!}H-ln3}skhlO}rJR?ZK7Ov)&4nW8Y(E1N6 zu7Bl!FY&($2xH5C5f3Dor4tA;!2eR<{w;BIH2>oWAZ0ystLFSHsWP>!y z`WZretp9-Azv1&xaPa)bpg+<=@UxnS>o@d#CeQI(@NCZW+uX^+^^fcj1Dih}B;RuZ z+>mUxKF+p4@E;Zs*&lq^A>Fb6e*;1q>hK4IoXH<#A$Kj?AC>=Ji08;W5LYndu6b@2 zBoo-f(c-<@}P9);h?1L*eG1^e&(e{%j7I=KU_ zEI|L^!o~fp_@9yI{YUd(dx3wX|25|LJw4B7{d+=Pf8Ws0dPs+#Df2+0xB(sQ{<}mx zzioh?e~bVRB&r+aqu}4#AuamfhC^sR^MJf<+1zbifq(22(e~L`PqAkAd|I@`^ zH^c$93HqxdO^%BPKZbf9?yXmkoOf+++0yWv*&iC)RlG{5k7biAF*@&zLW-wpaxF4v z2q_WVSxAu>aZbH4r?0N3aI(jq$Q2WqPy!BPxC;GVt#iiS&G@c-(&lvQAfhIEMMw&J zg)=-s>nFLJqDV03e^*kt+&AytBwR?Ijn169%!0+b%b8wfrx^`y=&tr0UTEjo%1H)< z(Y@@$-Abx1ZFphoN~wld)nXcr>t4;}03_XQx0YOKz1HotwofHl6qu}i0!*VD*d7Eo zcKSWkxvUHh^|9Q%No~FzY#7??4A3hU>lGuh@#0{Vu{DfZe_j$yCryPfb02}}&;u&G zz+ztXOy+-tHxC!~3q6y(C+7HGz|Q`PAHExUnB!5+aBa2w{kptd z(gbhMN%!uw!Yfj8Fm^+mFD&xOg(Lp z`^}M#qDL?0G6iWGy21sOUZp+Z2>%7+dFjG#qR+wNfB0{&8iF}%+SG38q0ln0R$^%~ zwwGY3Oxp$X&s?km<$K zY*Lo}e|O(Z@q6;PMv+Q4qngzhSHj`tB1Rns(9~VqI($>ZMPpELOgFZ3RQ^ic=ve6 z!OX1u%*&*UXtvTJ4B0swFG^XS_i^Yv)HQdc-tPa|quI7ZTRqO>L)z^RioGvyLwX_NK6Wb)wTOu>#QUMCF~C*HgJX~D;iHZe6ujL>{5pB}ikgY3fNLK@ve{pO zmSi+WYc40jM$OIJ+-lsO6o%=hHww*ppHFJ59`X9NEu)Fq*GS9HRTS@3vJKcj4aa%< z@vafRpEbJe2Ee#xy9|D$P(}c#f8n z#^$|6m2bq2;xN$%W)G)8l~0^KgubgDi63$zrg<4ZwlEf<_jaL|Pdo{H9W7ZCf9uIt zdXI0(K=^I!X2a;zCfmJ&R;+Y0cC6>}0gRx1;MJD2-AbKfrD`PAm|iftsCGR&CSIt= z=}o@N??Rz$HCeg&(&->@i$j;~-GHQsc=hG|5e0iobH1cLP(7)bLeR!F4-KD;-f9gC{~Qd#tp zFhXT8kJh;tZ7Iva)aR-!Ip5n7fqg=e0lLI3`r)6g3Xis`_jR*=TWUA}j5H2dWlzf) zM?84D`l1fn0ZNs_ea9a02ECa#6@ j>{G_>N1?Uf@Hc93|f-PY}>+R_{TiBWl~uZ`D-_sAfZaXZyl)gRL%4H@L*YlL`tM+s5GcB zem~85r$p?|9&G~pEmOTy7z>GCK}!BkDyXKovs0;h*lWK?657yxwp4bXc!SGxs!iH% z%-yrdk;K(F4szKtp=8gAD$v3IgT2*@~~ zvb%E1E=AEwAl$sJWSpKPNx+USLpu#Ge+(fYVEnE?yso|);ZX`BA|HY+7P8GVg`qP!?>zq3j;1F}7fAgWTPYhx4yn-K!r#@^6`Id&9f_R6K*y<6V^zyqw_|SQ=P#cndwtmb zCfp`l#7JaaoKklEe_l!URy)_?AuXX@HzXEB53;H3%v`jXtcY2mXxuHENtyX(wDI%K zoLhr~;PY@Gpj_a)i*8|K@o*s^(apr+D9_C*HXV%No6w1bSdqU|AUI2+oaIYo9E*Kg z=876sm{<1NQ&qY>T1AdefLcM>?iX#6#JtVR4KRq;2RcF#e>qN8t^QnC3Hir?`bdFV ztb_#NkmsAEpw&rG9_>#3t-+7EI=Y2XD80q;AFpXU^4LR^0KbUvKC;;%+bv9bAX{V+ zcS)h}_xJcp$QRCJb3vo{u$~*{csG4tap#cms3^-sbCwumHRR6Mn&-6ede3ADa4#)5 zRs|9h+LA~Qf7h&__ELVJAPd|o7h>XbHY)J)Cc-iJE{9^W!Xr~Tvb>vwheMKWy4;i^ zSAVl{x))4OCV>WOz@0eeFk9yLV7>5QI^JBMyuT0?I%N*>9ju$6L2+uSTFdc<9biv$ z3&oxtAi~k(ko6urp59Ge1K9j>Oo*xX*7donU&Nlsf21^~@(mZXJrYTQ9JVmeysGjz_BP=3e$bP^~;_MRRA zb^e{|MN|>A(E3K9)vr%o4@c066T6OQZi=Y zx_f!Hf9q|7Jv4Y4Nu#obPU>wv-zTtN2T_;Bw^2@Takbv43(N@|zKU@Zh=8Uu+pHi% zKXhHxyAxD>UwAm+Hg(nizJXjE!TL2?h6$X(CA{xY zO~B$Q{|BX7Q8w<-h+a3NEROLCTalSh**lGDf8@x)_eL7YT`y%B%a-l5@y}v*O;iEb zR;KwXX0Hq0Xwhibsx~X}#Z@6OX?~bJG;}RYe;hEl>cu@WZ~+FiR?m~56-M988$_tz zU!si4LhH!n9bWu;cRHo?x?=`Y{vBOSy(si64e?P-g@tu@n*6P&l#C9;5(d5=+V;mB zf7?-TCR#Poo&nwTl6lt`?d~%=eb=DrwGV7yQ*bh@qH-=iDiVE)I7-b<&bRT8C>8ap zq<%`W^=nI~CJyNqt6kvzK>Q;!<*IyRq$TqLom}XqUcbjk9MA73%4^Hb+j-ncmmF!- zLAb7t5>Ll&$uGM4F3!QP)?gVww1|}6e+;=@ojRqzun_l4@R>zLqL7jzkM<+5L}Jwo zdiCY-glwCg0F1hB;T&$`rk-X+%`#zhT{SwLPOB{J{1pzT5fg-q=HC>UUdO+C&pOzX z@`cHIwBOgK#Pc=zhG~tYZ{<)#_M1yiG0*8%Bm|iKi`J{Th;Dso^Lz?^qL~6mf0UG^ z2tpgL1qwtIq+7lpvd9MFK3c|sXW`i}A1dxZPLi{GpOTQtQ!+g%*za~5qGaEPqOGjm zAD7CknHxriTHmUBa|g?Z=ivG8BkDcY2`$Ny&Az}gz@_ApyyRK9c-+3-kT;^7DmO&9 z1l?-1E-6%Wnu!ORN<6T~Y=eImU+(F7x97*~;0G<)zR1}wlxgM9v!Vs~o=y6{TDJ`ZB zl6-ZJ?m#l&AdD902r5^(Vv5S*P*^gE{%oqA8i}kKIH>W1&Cywve@BTATJI+?%AcWo zX@1o_NPQcgRo}KQ?5`-5zfC-9kDF(@h`%rfj)6fb?(*{3Erm~5Y zXm%|NWvUtv$sW>0Bo~Gij9&(8A#mIPs4k|Ov28Ji4K>~<+m;!y{0I%ya{c9F&I3?U zH;^lx85bfGfQun9e}*faATWT!j}8~-2~J#Do1iB~xy?urMa}Gf-7qLEZy%9|wdscE ziWlm=oPx5=+9kR;K3i3lJLZsDxd`eJqD`ry65d(-`1u?d&tN^VCF`4R*3jP|mba;3 z2_>#2Pn#nA1mBu?3%AQU4~TTxkk+#SWddirWO@G`YT>&d-3y>-vU9gP!^r z6V%}8IU4(sehT^alV~;hC#1oVSaQ?5FVRA~5jCUdK?&a#8$EL|YC?>csZgjF5X&%^ z=%j4LLU=w1e}`!i{v>TV`u4f=OgyQAFcbNs`KP*ImKPr+f-Ixn?17y0pzBoV&*KnW zp&E**mdxhH!3KWzOJ-dDAQ(^5O0#A<1yIhI-O@6jswJ$#m_UC&cie=d?eP^<$iUAmcgI(-5uey$kL zWZu8L?Ks5HVXlB~ch6ziwiA>;&uLc+?^&X+GzF@K?2*dqw*PV&N5B{TIrU~KtH^~?unqXD!?~Px$LVcmd?|NKVL? zgrA3Ia5XDcThZ&dS8wvAO3s7FR4yIywtj)5=mFE6?cFr$ul1PW@24p1+;6KnD!`GZ z57MFm&InA~)@3#Vw$!BeCB4wb;wLJ1X7eVKe@${q*Frqy2nAmK2Q6@03a&0E5+z*L z5}|7b*mfSDg1c6>y3gAtP7Wt=3|z7HNTsi?1><5Ct;i5H3t?9PNfPeZXa_81@yst6 zzBikf6%01pejgJsoG$iwLeknH6i`Ye3d8QvRw^~ur{40i8BF@3_S*0}jCb@)m;TrJ ze?D*u^eIoR_EBc-aqa=5Z?yL+lUt>5v?6b~$pl?qi?HBJay%wk)5C2Q%~2T%4i-^eDrs z(I_ml$@XEHto$x7;!gNObF!CcxxU+Wf9J~PVFWk<_Cud{2E`xpqkaVR26wQv6KnST*3xHU^!S!B5pVXV#?VHIs)cnp(^6~uYFL&NC34I{u?}*pfA7SF z&A!cu`BrSaN1bfW#0TMST>X2WmBzA9<1qJ(tuO;N*H7GH`kcmH@!TcyA4l@i=gvQx zbdI|y1D$Fz(sYh40?}>?6BEbzL=PGI3NAj#gX6PcnoBAq_$c@Mq~B-?vvIorRO#)% zymR|e6#U>IprC)5Xq{i0F#-Gie`)OJ0~78-k-p4faSGM|>;48s$9Oj-qvDblA4bQb z0a+Ci$u9hf{SrDU?c{>Qt|A&!`F7;jrWPceMI4c<6xG}x)V!WGTEyB0*l($p2rHFS zpSVYhk9WkF(|o*(cvH=~8!bG_D&U&d2oZU6pxpQF{hqJzKLamDWhnr@6err@#&1`jM`*;*5W4 zbF)5Xz(lc>Yt#TipZ0*nz%Hsa;ZK;f{KWU_0YdOmlvAxr*HcuZ3EDXg7_v9_Mmxkm zZ%n3>U`dH#QH4GrclhsXe*&b9dP33VJ*Ih|Gc> z9hVitVpgRsp~JN+jWViM)#y|>m!BTF94GG((-u4upO-x$*in5#e?`>N?_6Q87XHN0 zV!N(4ixASrZQUd*-C!HH#5!NA4Z~of1wX+;77q3b_{oeK`AW4>25(#n`m*W<)c`d{ z6CPOa+ckZC%GEk)gz{zH{pi;(gAE?DI0D%~({%67nAfm6S^m*<`ib@Z5n*!Tm^!mq zyb7pB=7YKm^G}mYM4)YRLn41uEi&-AUVgkJX|CUe!Ro)xj!`Wd0qHevhHepd2X{HS&>af6KC@7LUN2+t;17&@p9Ml-;vE8MQXM+Iy`lTP7Bzdc8;pOY}92)PQ$h z2%m0u8StXsC2fYAyilcZt>`xJEfg+%LrdVADkNd0AobFWEixnkg~c8K&FgFQ4Rnq< z{4**;iJO>lBt(gYXl_NXQ0s?!^hl*dnH=5g9{ir=e|v)3@yTJC6VCZ@d3C-{f-15j zgDt&5mKxbX92u2_IpdE5l5f9fQ{zAxpK;O%Ycy?t58Q^eHQ6BB+#5dp9F*Trwb<`x zRpjh75k?AScW<{(?t~=Znlz&02lo9Iz^i3^A);=&d4wPGwq6_1s-f+yQK+hESR8eu z=2Y-ge@~6KjMb`dqk>qRVrMROSHgt2l3+&(wQ^aiL5RkEd3ZLwg$;gNi>Xns6Wy>8 zHy40@faWkNFG*!F#g0NAD0hb{BNSUkHt+#XHFZ+96|duR%gX8Y&bC*2-UnK$L7qzk z{QU>YaPSuMFovxmz7#Dw@|WIhD7$R`U%xJZe|vTAYp>r@akE5IRYq=*RYiU;o0W_) zJUNeYqLB~5upO(Ji9l6QJsKQlaWjXAa0jgay(T6}Buk>I@EZgt-bL zd_&d|7oN)Nh7L|m+Wd9ATtQ(+LM_G{sqefL@5e}l2hG!vA)}d~BYKZD zS#pKqY%9fb2&FaJ|Mf^9$e_IrF*- zPu8g%i0v-q^xJ}#peKlGJm!R!M0i7nzoW_+@%Zu6oRn=_sjPc2R%CR!+$G}fYYJk5 z-Z}*{Xr)v|JH&`hw77)Y4=){ry%!5TpwHd2uBLyK-d)beu0C2}UE0Re`Z#0uw!ll~ zC+5OBM+G}KlX3^ei*~jN6{n zAy{%T*gx*;gTn&D*cMuGuD_0jlaW>Abns#P_esvUjlM+vup`z)ksl+ffBb4>-{zE_xhd2%(7_W|ZSaZqRzIM)3~pGLLRM z8rTxdJT-E42IN9-fIf5ze4X8(x4YlLr1O&MRpx!j0^=Rc2UT*>YmAu{tVAR!EPQw| zg_bp2*M!X#X|!iLmvKT0f6}QvbDYv5$v&Ge#q9n9AITTMbWV)8+7>=#s(;7bP5smo zoVllwu-#UGWy>q`N|U;F4SU^V4~1V5j7sz!p7+!$A?6&pC>tj<&sHaaJ6eInn3hvh&kHs zsrw<5@5DAMH)HV?f2%?~44izcvYcVEHjPe>jMf)%z4`t~IJ_RNhg)LOIw&%Wb=UOOEn8A5;kaGGj{Q76-EPD&8Bh7FB^^E=3A=WU{xnP_vbY?uN-Z7)1A?5 zzgg9Kmqr&}f6a{-)sVhlkogw#ev2CsVW@j?qoNpEeqVN!x1prq!4OrrG$3M2?@`x8 z`t~$9j<$rAroutOv$lmNS*-3JT*G&J^uCJn+_)k+Bjg3AONNf2QtuaI>~HEwA8{-0pp&I%)oa z3|nfL)TsAQnIDlir=!JZip{4Pyq@`sea8zNw`2(PjkDJee&E{t6KQ$>AHIp+j&pIw61iu)YLvipM8;W8;NIzd z>h$chf7}&HQf>2qNB5m#GmT&}Eo<+i(d40?Oyz%rszlBV)yr3$9eOydxOI*tGWmE( zO=@O~(sw6*tcsIJ`a#9~sA83rE);qTuWr{iE6HqaWZyVdje9yIm4@}OaEMRI5-X8y z%`AM3B>+7@!oR$F)G5*Z$RAUV`tu6}wKK#i5ep))<$nkM11W2Xg)~@&<9KsS*j1)d zf=zm^3ULgBtH>*H5*4P}EPae4J^N*`@_9o{cNASE0TV_24QGQQdu!a4FWiD1{&cKc zuI)9_T@7(T+K4%8pGR?>KYd7W=XrzMzbI%%G`RGBty8oD zRtNho+<&qb;NAO%J;n3LJ2gTMspw(+XNz%gKGSE$9p& zW4moIpdv2^66I5_2(SC72&m3CZPnW z&6i?gB8Iu=vsSsfQa0gyy5AWP*#b=&)IYv5yOP4u@Cqhi!KqBSTC&LCmLJtv+N zB7Y%LAUaXCyPPe|;8z}8UF_0yej|FU#PDM=#A_PN8-qR-HD5MVC)?zxA~jc?i%c|b z5*NF_Cdf5)+N-sYw@Y$FvG4bO?RJ(d_A92^ha&pnn)m7!;}6bl=B^`Ys!%QLMSSKD z9pue8uq4&6k6_Bp!Ya#Cbb03^=^kn=kADp>R_E}%au;tQd}@OQHRDHR5dCG&5j;a> zmh+yS^6WOt-Q3xJUU)?v2x%nz#uULyS8WopFHSZ%E9K2KSA3Rk6Z{(ii|C^a-+3!v zEP3*Td04XCp&iRDVsGR58VWONetUdzMXH@kz`8X`7RFT&$KIJx3dn$M%2#^7;D2?S zOy9IWhY~bdTZ+&Nj_b(ED;E$S-u(gIOOjIuSNoinmZEdsepzO-DAUZ6pK%*`CfHq1 z`!kl*-C+59o^2l@6wFGDFIi&=U3qw)B3<>S0uPm0tVE;+gf5u495-O0xYM9XpiGrt z`g?%G0Xl&fuf(KRYb4Hoel+E=sDGbCD(AQOq;LBA?JEl{)1aGhs}O)dtj%VyiwIK) z3tnvGv6umJ*y5CE_BY)=ZWAFPT zl^DNCVZTN6)h0_3E~x3{drL6M7QwD9$4E^h zi#HMKrk{<7*liMZsB!s(J-K&(fTFb;m>8~Bh^xHz2zOB_?`F>{IakAM!gZmmGuPym zZ*prfekQi`%jo!Ujlv_P2!GV@D{OHu7Jj?!$Mcvw)uUC&2U6&v#L4D>jPyBG5dt;# zLsI(1Fja9|-sRJ~uF5ki0J>tHiv=RjV1FkG9hqUPYEH5Zv24M7Pdw?A##@!gUSHQE zjw)jHl8yN07~sdN{)qQQVG})k>M687J@2Qf>6*RoSmz&jc3z@x8 zTWI<4*yB8QMXZ^2_Jr;!&UONOA58q>pt^-Up*584_7V}^tx8zfpL@>(%UE&{i_uex8jqaJo))_JX=ji6XRuAdwC0@ zy@F;iO9g&AGk<^AK|cN&%CAJY(5;a7>*dmdYI5=Rp|=>3_MKnMw-Qwj&Q!n41jPNS zrj3k2_ajQ=WSTSYDC9Y8_qSUAx%eizF|8JC*nTpZXRX%5J+Ez)k|+OUs5}&EJnY!( zT{D$w9;fDM9$0I}1&>y!&4`q9j)u0Z87Z$Wz17%tEPuc+AbESefJqQLt+3v#nM%Ux z9I5dIXjZcae1WSKDw{xspL{#jAmG=$b95J;Ph5Hjvz=8$TC#Q$uyde7W^Q&OQ9jJA zDMWLlf~k5)sIdZbASh?mpHswWxr{0$Q!tU9`c3ZEPkQMyG_+J$cfx6gDpxF-kQqiF z!MK*>#ecT6=u`3=rtH;)FUt3%F?y1tH_}zg%uV!bw<(vznjwUBbBc3Q$_ZX^@-?~C zPOL@o_87jvfbW1q4t-f@f@~pKkz?s^C6BVqZ>AN7ZUgT>?OXU&YC#R4wP}-LCP?tx z2)?S96k%1?tbG$Ly=L(3Hu$5arYgx692=oZl7ATsjVAI73no-}xJ?9_`^~qxpKH1< zZM(UX3bHBc95g70Y$xFuD17Bgy~ZG~Te;IVmSSfp!SdjZ{G1yk-Rn(bu4PW%_XHK+ zC6r#N@1eb7Zy#D~K5sm)hnF`=I4)(DVct@~uz#2oifzyG`*GE|Lw_GucI&SYbch12 zZGWCr_ee+ETs(Ps>@y$At@D!qda?=s4Vx;Wkl#;|m0vLH!{Wh;={a`x4xq6g5*|3k zIAQCy&QwYsTy0P>M>8ZO$MJPil5rjKWM8r#k}O#pk+h!j&hB!AM}n~~_cJ5&4&+rZ zPh*L4CZub)GHY9IbyQ)2gkkDGW0t{%X@AoL+4=+8GFZ)7bm%QnlfUBMHFB7E&ki&P zif%brFvU>CMgiNS!k)0>jwp9h((_-BD5xaqT66clVzFQlY9e~#awlRB3$&aXER$ft zDuj!UPPBvSXSo@Zk$JT5<_=-D&Rjk(D9c(M`FskmzyQ!jq?DYq--)LC#02epkTEI}q#PwAoWRDh>uWSZ>di?WU_-Us%KVq++96#}&-= z8B}o*kmg#$Jn<333r!~esVsu;+Q3Y$PlsEky^PU%u>063j;LgHHx`DM)cjRZ$GJ_& zNymHC`F{HE5z)GoIT5|F-)~I~Sbq!v@@p~0IfFlVFX2Czi&1U8fcH>Ahwf!J#@s>v zMgH+Y{kUge?CrOS89iZE)Fi%S3j8^`y3h#f4&jYeuYq7iaj$R2?hG@I>ria1{Di}B z*%mPH#F2-Z=>(g|_vG>Z7O(4vK5Jc{#rh8Lw#TRQNH&zrjAsxcUxx3k*nfJQ_>+92 zdg{p{+btkby%>wfQ6iYbzq2ApQS=c3@ zy_Su>kx?noKr|{M;YF`yzHo7{`Z$_zr(5?rL5|;@m-}YtA^w9>)T(Tm^#fI%fFKG!xnY28rvM>9c#hLNJ1l2?&Jd3 z1TjH*EvRWhm71=N1&f-kzQes>bi4}`)HZB_uF-}=${yqKT2f{Yj+FJ-_|=Qq=Z$kLw}=QUZh7L1d(~v zi5vV#{5dj$QAB_x_c4DQ4`H9;9AQ{;n+q!q3p9y2X(#gl1Ergdb{aj2Go72Wp4mEA zKPXJ5ccz?AmdC>3kE~EtrdgN~ z(ne*%7c(&tmIVsq5r2hM)v|QKp%eL%m?$l6txW+@N1cWi-U3+0bosACNyUD~vm8XWKff~}+6o-dz zLYZ_Nn>o)NlZao^1z>+YoCmPwqP=l#iJ=a_5NQe+eP|)ptv$pV zN^`uGx;H`g=tIQgJVzX4Ngj)cxBe=LbH75%^gZvFR479Lyw|Kl1E!8-98`_|<8A+X zk8~FU=^-aqLb&@^Aos#>VZk<|$mg%RRvIv2jgtURt= zIb04E)z_nS&9tw!k28DLl3kJt|B&loH>@3Q98BP3w)t3cTIcz!MLj(vMfCt+>+n<9S(Ws@vK7ZNt_AvWO>rObF)V|QwCqc?zL;IFQ z>IIw_Hk2Lu#l76Y!_(oWH0?W!e*Qh(c>_WdM2#S0y&Mc@txJXqpDa!*Q;ti}LsrjLW+F`JbaY=3voW^HF@k=Mj5`d*d?p6c{4*yacGD~LUQ zxc+qz;>|sL89R>JDK2Mz7|8)yz8q;T3$mDu9<)h#Eq|N{ z-3HK8p#7YLIa&KjS@Lb1J1$1JsiqTHrI_l6wg>*u!aaW@(^P~@v+Ng9Bg2FzdV&|6 z5+PLCPE>5W1c0Ovj$B zAR#=lu>!v9YiC>7CZpB~Wbc{?6AgMOe!2|x+JnNC9)u6t{06=1=eUdv@3hFl@FH3Q ziBwIENzY9{^X+?kVCsOK*N@zSZmCVL(`C&Ar`joHf^Nfel9oeELz2(bKz}{^uj8%d zMEGJ)OgalJD@?SXr%&SEkSJ&qjleoP5sscNmE+80n;{>aju5C;3bQ$0;2XxB+xc^M zPXWKE^ooSX!S_*4(do1{ODH}ZVt9m)a>y{B=Hvz=a3ag5fZI2F{m6R?wXcNe&Oyl*C+k9g@_QHKOaET&_S{+huAJAbCAyRR^fucY%R zD+tGis~l|+%dVwr+z{NDa*74Zel!`ut}yQ^)CE`|dA&t|Z~q4R2(|@?d4%Gh#=u{8 z6Umj&Q^g&VHs%tWGs|@swf?#ed6=`T?n{=1GO2RcO5F^nTB*W?Cn$p;FH3YI(CFah zVzDVThL4uMb(#;EmwyH&!cXO`0@KR3-Fu~5ujbsXDA`EA-^CG`4-r{#E-t}o;uBQY z^O~>43A%xcdnQ0oXjq^|hm(MF1Dsci(n6vU8Hq=Ithg7xNpk)3O>MlAdPiu2imW_B zRz(`MT0>$?h`v>-0WOO>mh$V_m!>R;C_z^l{PgHr&Q{k=-hafyI915GUN;L{@9lI^ zXvM_UQoxN<$7{5z9wP)_k%QqrwwoY)7wv9#&je;gxBiv8*_MLq<-S~1QfrFLgF>(1V2brIodn0 z%Q8+_I!p6!`{yNP+Jy$pk|X=Mi@04W#6|h>Gb7(7m+d2P^r3uE-Q3!u=%m|v{;0jZy2@{>ya4zE;4g} zpD}uGk*ypUJ~nh=TK!x*AyiDOqUzu`ZA!Awc;Wxa} zblfVu!&WDxsCuNvDLj)solM(|PYffIr(t_>hWUmDI_x69?mp+NANN>bu#1!Eo~v!& zd9%+-bqAZ14PI*K11s3(ay}QH=S{Y~!~sp8(tj6}I4G%ha*-Or zh5piq7CQ0Nd9P8%rGJsPrDtUnqj96lvM=>j?WqS%>?_q4$|r(9U^)8P3&tpNWj!@S2U&w_3M-W@AC>+C9NK7ZRpe}YEYVHQT-^ug z7V#=*@dRWuTlGb^+$(3|5!A~QW|FSXIJXJc4MBP#>!&EbsOa7nx|>}Vu`f204}U4A z!jx9;^qCqez!Y9Pt=XqRtS;lEE$ZTtvZy{~+^UW>TRMk6EX(j!VC{8|eX&>TKk}Kr z#2_#FGb6j+0!M)YI+pa~m)~;w9R;GS{B#Z&$$FW`$LfzaXd)ZhMU}wcj#Vj;QtvHU z&b5y(^p27I_7N`iv5|A)MtI@lzkj#ezN|hp{~4Yq>_MX1ZPk45#&1cow}X;0Tb7PF zqtd}t$VI;UIgE-R@rV2ae@rfizBpKduKc6+N0MQ_`diKLB+bE!UYZ5jCYW0fapxH^ zK`WYr7$ozP#Z8Bj#Zu7;nX@ll@9ej`dud9cN{JM_3K1?NoPU0l3;5xt8h;S#C622~ zV?HgFWI=Y6n;G5d(|TOS=BO;0dDlx-9zPi^A;am2*$m{xq65fTBYrhxtWp4fm~Pk3 zn`TwwVn{Pv&!0k=mM23CDLF0@?*xryl-X1+&kmc0;@|oVlxp=gQtCsYI?7#o;l}Of zO1Pin9vHo`uf$^DGA&r?o_|8c=JvXbo5Nk^{0uu|dazCC@N&MejNzs~?d6Z9M0s-m zBU^TEvz$b{kHPOGEhf+gmnFr=Z}`&IWWq$%LmjMyRF*eJr*RC%B`P>d@BQnnR=K5q z1r>K5zVjQ;5a^`;1=)-BOX za#mIQi=VV!&@|%s3gwM3@xs~4y{dk2)ci5@$+L8+FS2{@(!av5V}So zZaWWc@Kjsm2nMRDFn>6+hgim52s4{!pwe?xxR-mGLx&bG5?9rBT$#T&ZQde(l~wW_ z%F`P2F_)@M0Ipm_iqhA~Mk^0Ayo_5o`J*FFTD)mam)hrjL@;f2&KWtD?A2Wli`5xe zXi+VOC`bmr*;ZHTvP>)r>lV}nv|_Y5AMl?5HeY6rdz$hnRDW&p@s|QDk`5kD@Q{BQ zl%c*6h(mhwI?iTRuWncbXD87`aF{UF?jtd!?Q*By)Yb_;kT(~hIz!-1o6^`d%K$YG zqBYEqGgNhtPu{<>4Ol(!9PSQ04T3YO;WPPVk6$ywr5G;1%_k8zh@D#O8pKYs{kT~!6R(09IsVs zpuS}`JAQop3^Hj^MSSxw0%I`tu6~*=`p3xgh_XdD&Z=?mqb7_&Ry$@WBt`?ior*qa z&kW`>+J8Pa?cTGoM}Z*%9X{1ePX;uW(G>YEyJGmYA?%7-@5qw zn}n&5Yt)H!rv+ubMvZYmluHi^Q_OE@>FJ!HTGk;6sOeD!EIJ5A4Lod>V@rKsJ?N1A zYHUHQa>igTsh(SYwf`bdFO`g(UbeUIqlL5GM}I^~7-gMoqhI|d>aVA7-6)2`e_d?W zb-LSA>m&6~XFnucVR1RU6YWkNHe8Kn&4cby6VNHKtz82g`6N~)(7y4-y9?;1m({BTBR=U?z9_TpuZWW;gXW>t68V0e-yi+1s&&u-%epaso90ywzG1-q zj?`x5xo_&NoIO^Y(DgQc`wyyQk}UYKcC9ti#a1U@|Bqj-b*D2m5wP)JRi(od@_$CN zBakubx`|Tk-8faM(YLZJRUzzflPP-VK;lR6!aN1cYyeBEX3uX`ktiOD421SK3*8<1 zi)lkR`m@tqF^$NB$@EQ|EO7!AJBM2IEm>J8mf+lKN%Sm1yYJUg3AB)m<;=J7#n>Wn9N@T1HiOn%DhpdcXg#8SL-bQj7Y4`L*n9$4VAE)P5zai7J10-Z zIJUUQ2ex|D_~uF~rf6axX+8lC1^dJuCWg$?t8h7g3%qJJljs`P+c zL^j(lV;uu>cxN*g@HuJQkK1JfF+a~9N?nOJm62dYl0-$_U$uVXbX4de373*`7UdY9 zcPlvX9o@Zz)0lVcuzL1xK1LPh{!!;g;n?PO)AG@;duh~(2@74a@;)1`ivxm4`IfnC z*_pza3dlrc+qKs7fy+g)et&|!>JP{e z+or5!m?Bpb2gS^pu)|7H0W4UzKlM|O#h;Wk7{`rg#mYZ}OhRGdFx?1Zgi0%CH2@3E zccP4fdx3-&i*{9pvpnjmM8V+AxEbAGl|qme0RwT3Ktyj9ek;7r^vERYtGG-6k5f!4E*jrsT_zMiPlmJoP^_W>JFgyfw<^^jA0F)HHntHm&L ztV8iAhgN|%3SOsDn16G-sWqymSd<;({|Rg?lheLm`xny*DwEVJ5-Rfv31sK`3u6YE4&<${jUYa3LP#(DcSJRC_W{@n9HfkAIN#zXp6P7+ekdF*x!5Bio%Z zSJqokr6w)|-@Hj|1uW(?dgs|KN3Gz2fy&{Xv@&Sbm-$gTDf?N+8iv&;fmpui>-`6) zUQZZI`0S0suPqjU_&?{#!(k8e#>`+Q0>42k)O8#k@u#Sn*}a-;6W+AV|AYvAmA-l} z3iJmU)_*gp9jzZ+$|_-u<|ia9JttBJLw zdOtaQqRWLgdHqKc=g+ZKPkf0M20I;7AX% zC4Vql$O%Nq+8e!t-kRzuph{?d;i9(*;l3(RSeKx4A{RU0d4jjx(j}#p<=a&vXguG; zu9+-<*}z2>znkg?rX)_yqq>WZjqscbx?shL!*O}-w`e=m^aov=D=Sa_lOYIvLSaA4 z{WIW}X4d02^N@TsoMf41Tt7oB&}?Ykkbn4{4Rd46IZ`~9IALU-ikF|Qr1^z1j55j} zToUuAIes2-1*EQF@w`w@WfXCd{E}ro-S5g+LI~M7;-|C{ds&x{c(2n(UX3)zC9T4k z90fCrS=sJuW(pAFi~5Rd5hwO=H_)mPl#V_j3&jp52Rf;IPy+->W^u?ySe{=}pMR7+ z`yvRiK5I6p__4-?atk;kWOzo&7|!exS~H`J=fAAkmbhMc2L~T~dziOnZsn)lEn~QaLJAjJo^EzShs=${tM;IvcIIdoH?*qdbv(a6+b3G>~%a8R4OyWMPHLm6NUXM zFZO*ocl;rjq|Iq`lX@*$5ex;GefV5t?`WfnC07xk>gmqh-$qdU_7qX?aDN(U;>B3u z5)WlBl0=mmpC_syb#jsU;WL=oPV3FX#8cc}$^3}+<7d3n7-Bv@QoBqE*1I=A>^KSe zLM|Fb>^tuu3`%p<0iZj12fTe)sVFssTM55K%)Crzt^6v5s5xoRX#wVRyX^}6f`ss# zsyQ6hs+fnkL9;oS!hUCm4u8}B`D&71U=~Z0wIjWmPJNzFEz4zxpqQz#>s&xaUq!cl z_Y5W=%$mW*`$U&~x14L^{&6=J2>vo!N%oSvqpJD*`VP5Tns*ch>bH#x(&SZiAbIZLZ`$=r++g0A)e`Y{xZdJ zV|TcZLHF>3baR;M+9 zDJrQdZFV6lJ$JBIEPogAbCSNO4&*OgkScY*7+|6P>;?IOyj|f+1BSYikTqzi>V0e9 z>x!e%*wigUPk@fthr;WTf5*bX3*RP}Ztq22AsKGW7zdL3@3ZCJ^8}lv)MWmNVT;QO z8*~0|$XmU!wfD9Q;hqv9&F_E4R*%3r?{oZ;uCtn3&LO{~Y=6&ju(#PKZztAU7%p3G z+;~5^p;y0t~H-K zj^FhychwPDS%0h-XYH}(`?Nl#fx1XZyaOeVi^6WNRu1Y=|53MM0{`(gLCC+$E>Bbn z)=IRF00qc2j1Qn;g=Z6AWesKr;}ru+T_B z>dAkW93ksFpOpd_9(#$QQ-|e2$gWdgr5hYsNX>X8TJxb zQ0Q!eij$y7wJYUIUD~UMd%SjZ{1Y)(HeDy3UA<3JpCv)gHncFJuhWXTnP0|#oz`d7 zX(^>qxPO4F93HpNchoDAy|5G-w*>79@n+~nvUKUJPaxR5Cs z3pIAIhwL8kJq8tpQ08zm$;r}7kanVPuh_^`n%Xcr{D9Dd1kx)q1Y@g^!EA{zU6aseBIuXsLfS4i!Cz#?@02~92OJDW!r@b zEq~V$A6=qzl>o)@(P@=)U#AFi4nl&H{OLy3?7dGHZB@p?#wf4RuW>&s8w8j*k*}jM zw+;n^)mOAI62#Wp{)n=*P<7wfUCsi7!yVFo5dmUL^U(}+&?P6@5RMdf7eD%f1vm9g zO8ob{B-!ZoIN{}^UuR6GuY$yogDTUeV}D=sp{DCE?S&JF6andf5Wa?;q1$9$UBEK=Rb}1SRU7x@5BM}H`$l~)AzvX4zC=t;xUF4flBO1#Ek}eq{ z(YLv>fFp3OQkmr)h=vM0wfqAD>5FZs=tT|7_8{jMEGm*gu_VB0ovAhdqe5gzO@GCC zGy`{7hH2JRJGDg_b~?)hH3tk68k}Y(%ARsOR+d`qfH@pWUiE%J=dgx}zd7=V#}0!h zs5;_c>#=v3#Vo+jySq^;fRgcrw&csGPG-@`%Cs_U_dnzDJSFb>%QIPQa!O+b+!3kg zev&KM71=oEu(hwFV<~2YT_oa^uz&JMqUZMI*>?2#X_iH6^-a`Qtb9)6bs7EvhKYgS z-(C>O3oJHbWf?O>#EDSCpr$3RxHQgxFofOAmD@8-`ie<+k&wQx99zM}H;~g$(5Z zThqOl1G5IXtlJe>DVk7BqT2zuCav$2z0;tsq6SAKE~%MgA3)t)=W92g4Bkjef3J>-sikJUh7z(^u-arFM_R zPU|}Wx@wKy2NLp2aepzYW%}moJ!8m@3`E{DZqT#9XG5VPkT}L?QOJZ#U5n{ER+S{A zFBN2?0uL-b)!Mf#%jLrn$5aAVxhgN>faN!2x&Kr}4{>@>D(v7ltOEr>X`O+{sjl1M z2D7!Q5|!CgI#gMG&fyC64CH{YYW@1jkMAxoBrU6%+BK~pA%CymIm}O%I+Qp)0gT73 z3{GQJ7K$tg!}Ufun%ZmH{c`@VTOE#`c)0d@162O{I4zafUzbq&hR%eReO&bSi-GRa zPjLE!i+1oO{>;J#kd!taAQC@>cOo11sGKb{N`r7-ospvZL&>B^XELZ!2wxKXOr6*h zY2EPt(;?Z>zJJW+mjQrUb2@_jEjxA!0&auC*C$#fq_2e%{-8;_)!tXfZMaI_?&R!Y zr5FeWvM{Q^uS4(xqz+J-ZN63&+7|HT$jfqZJ*Ax$J?#?usRXj}|;D1q~jUhrLiTehp?Gt-qE0fBd^#AEPpsEl;jkrv9|dG8P6R`%ov7`kB!Zx>K~1 zQL`W72yAI2Iu#B2&!v39-?7#9%0RX}k5?2+hmSf0Q0B5(EA(B|DA|>rn^bq?0J}oM$ro}T>vK6&p+H<8y%ueH5sr>6` zVSlHB!XPr!BmqaCh*R3&I;=dgiiCqLSm9fkG#kC_noYE1c_b6QpCRHI3hnn8wqaWH z-I2dQ`KS+VlPke#66}-+5`6_4+1uBIh@-UNIlA)L3UKs<9jz?%&%NvuvN8M>yLE>N zAt#hg1_pDzPiY*Px1xG-n*pFtjA=27gMXqN%{I@l0t*q*X(Nn{gY&>-cbu|$ANe

    92yzf@AtwE3nO@`3AQ-#l|%H&hg8ZgR?<--EwP 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%0D=CDp51Ly1LFll(^B@)G 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 Date: Tue, 21 Apr 2026 15:00:18 +0200 Subject: [PATCH 15/43] Move ISIS_moderator tex snippetwq --- .../ISIS_moderator.tex => contrib/ISIS_moderator_static.tex} | 0 docs/manuals/mcstas/sources/sources.tex | 2 +- 2 files changed, 1 insertion(+), 1 deletion(-) rename docs/manuals/mcstas/{sources/ISIS_moderator.tex => contrib/ISIS_moderator_static.tex} (100%) diff --git a/docs/manuals/mcstas/sources/ISIS_moderator.tex b/docs/manuals/mcstas/contrib/ISIS_moderator_static.tex similarity index 100% rename from docs/manuals/mcstas/sources/ISIS_moderator.tex rename to docs/manuals/mcstas/contrib/ISIS_moderator_static.tex diff --git a/docs/manuals/mcstas/sources/sources.tex b/docs/manuals/mcstas/sources/sources.tex index 4be9d846b..fe1dca20d 100644 --- a/docs/manuals/mcstas/sources/sources.tex +++ b/docs/manuals/mcstas/sources/sources.tex @@ -107,7 +107,7 @@ \subsection{Neutron flux} \newpage \input{sources/Moderator} -\input{sources/ISIS_moderator} +\input{contrib/ISIS_moderator} \newpage \input{sources/Source_adapt} From 44bf50acceabbb77a2845788e146d54493087148 Mon Sep 17 00:00:00 2001 From: Peter Willendrup Date: Tue, 21 Apr 2026 15:04:03 +0200 Subject: [PATCH 16/43] For now, suppress ISIS moderator doc which is in ../contrib...wq --- docs/manuals/mcstas/sources/sources.tex | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docs/manuals/mcstas/sources/sources.tex b/docs/manuals/mcstas/sources/sources.tex index fe1dca20d..45dbc2848 100644 --- a/docs/manuals/mcstas/sources/sources.tex +++ b/docs/manuals/mcstas/sources/sources.tex @@ -107,7 +107,7 @@ \subsection{Neutron flux} \newpage \input{sources/Moderator} -\input{contrib/ISIS_moderator} +%\input{../contrib/ISIS_moderator} \newpage \input{sources/Source_adapt} From 862518d7bad9e389d629ceb247bd092c450d43f0 Mon Sep 17 00:00:00 2001 From: Peter Willendrup Date: Tue, 21 Apr 2026 15:05:31 +0200 Subject: [PATCH 17/43] Remove sync stuff... --- buildscripts/build_manuals_mcstas | 2 -- 1 file changed, 2 deletions(-) diff --git a/buildscripts/build_manuals_mcstas b/buildscripts/build_manuals_mcstas index 83e99f4d9..f3209b13b 100755 --- a/buildscripts/build_manuals_mcstas +++ b/buildscripts/build_manuals_mcstas @@ -9,8 +9,6 @@ fi # Ensure our 3rd party modules are in place and updated -./3rdparty/sync.sh - ./mkdist mcstas-manuals $1 docs/manuals/mcstas/ "" noarch "o" -- NONE echo echo LaTeX build of McStas manuals v $1 done! From 4719dbaa53c65d5e377049464acdae52a8e0f026 Mon Sep 17 00:00:00 2001 From: Peter Willendrup Date: Tue, 21 Apr 2026 15:59:06 +0200 Subject: [PATCH 18/43] Suppress \mcdoccomp --- docs/manuals/mcstas/contrib/ISIS_moderator_static.tex | 2 +- docs/manuals/mcstas/misc/Res_monitor.tex | 2 +- docs/manuals/mcstas/misc/Res_sample.tex | 2 +- docs/manuals/mcstas/misc/TOFRes_sample.tex | 2 +- docs/manuals/mcstas/monitors/DivPos_monitor_static.tex | 2 +- docs/manuals/mcstas/monitors/Divergence_monitor_static.tex | 2 +- docs/manuals/mcstas/monitors/E_monitor_static.tex | 2 +- docs/manuals/mcstas/monitors/L_monitor_static.tex | 2 +- docs/manuals/mcstas/monitors/Monitor_nD_static.tex | 2 +- docs/manuals/mcstas/monitors/PSD_monitor_static.tex | 2 +- docs/manuals/mcstas/monitors/TOF2E_monitor_static.tex | 2 +- docs/manuals/mcstas/monitors/TOF_monitor_static.tex | 2 +- docs/manuals/mcstas/optics/Beamstop_static.tex | 2 +- docs/manuals/mcstas/optics/Collimator_linear_static.tex | 2 +- docs/manuals/mcstas/optics/Collimator_radial_static.tex | 2 +- docs/manuals/mcstas/optics/DiskChopper_static.tex | 2 +- docs/manuals/mcstas/optics/FermiChopper_static.tex | 2 +- docs/manuals/mcstas/optics/Filter.tex | 2 +- docs/manuals/mcstas/optics/Guide_static.tex | 2 +- docs/manuals/mcstas/optics/Monochromator_curved_static.tex | 2 +- docs/manuals/mcstas/optics/Monochromator_flat_static.tex | 2 +- docs/manuals/mcstas/optics/Selector_static.tex | 2 +- docs/manuals/mcstas/optics/Slit_static.tex | 2 +- docs/manuals/mcstas/optics/V_selector_static.tex | 2 +- docs/manuals/mcstas/optics/Vitess_ChopperFermi_static.tex | 2 +- docs/manuals/mcstas/samples/Incoherent_static.tex | 2 +- docs/manuals/mcstas/samples/Isotropic_Sqw_static.tex | 2 +- docs/manuals/mcstas/samples/Phonon_simple_static.tex | 2 +- docs/manuals/mcstas/samples/PowderN_static.tex | 2 +- docs/manuals/mcstas/samples/Sans_spheres_static.tex | 2 +- docs/manuals/mcstas/samples/Single_crystal_static.tex | 2 +- docs/manuals/mcstas/samples/Tunneling_sample_static.tex | 2 +- docs/manuals/mcstas/sources/Adapt_check_static.tex | 2 +- docs/manuals/mcstas/sources/Moderator_static.tex | 2 +- docs/manuals/mcstas/sources/Monitor_Optimizer_static.tex | 2 +- docs/manuals/mcstas/sources/Source_Maxwell_3_static.tex | 2 +- docs/manuals/mcstas/sources/Source_Optimizer_static.tex | 2 +- docs/manuals/mcstas/sources/Source_adapt_static.tex | 2 +- docs/manuals/mcstas/sources/Source_div_static.tex | 2 +- docs/manuals/mcstas/sources/Source_gen_static.tex | 2 +- docs/manuals/mcstas/sources/Source_simple_static.tex | 2 +- docs/manuals/mcstas/sources/Virtual_input.tex | 2 +- docs/manuals/mcstas/sources/Virtual_output.tex | 2 +- 43 files changed, 43 insertions(+), 43 deletions(-) diff --git a/docs/manuals/mcstas/contrib/ISIS_moderator_static.tex b/docs/manuals/mcstas/contrib/ISIS_moderator_static.tex index aeb2be819..82d888064 100644 --- a/docs/manuals/mcstas/contrib/ISIS_moderator_static.tex +++ b/docs/manuals/mcstas/contrib/ISIS_moderator_static.tex @@ -3,7 +3,7 @@ \section{ISIS\_moderator: ISIS pulsed moderators} \index{Sources!ISIS pulsed moderators} %\component{ISIS\_moderator}{S. Ansell and D. Champion, ISIS}{Face,$E0, E1,dist,xw,yh,CAngle,SAC$ }{modXsize,modYsize}{Validated. Low statistics above 20 \AA. Kink aroung 9 \AA.} -\mcdoccomp{sources/ISIS_moderator.parms} +%\mcdoccomp{sources/ISIS_moderator.parms} \subsection{Introduction} diff --git a/docs/manuals/mcstas/misc/Res_monitor.tex b/docs/manuals/mcstas/misc/Res_monitor.tex index 8d4b22cab..3b196c1f5 100644 --- a/docs/manuals/mcstas/misc/Res_monitor.tex +++ b/docs/manuals/mcstas/misc/Res_monitor.tex @@ -3,7 +3,7 @@ \section{Res\_monitor: The monitor for resolution calculation} \index{Monitors!Resolution monitor|see{Samples/Resolution function}} %\component{Res\_monitor}{(System); Alan Tennant, HMI}{$x_\textrm{min}$, $x_\textrm{max}$, $y_\textrm{min}$, $y_\textrm{max}$, filename, res\_sample, buffer size}{$x_w$, $y_h$, $z_t$, options}{} -\mcdoccomp{misc/Res_monitor.parms} +%\mcdoccomp{misc/Res_monitor.parms} The component \textbf{Res\_monitor} is used for calculating the resolution function of a particular instrument with detector of the diff --git a/docs/manuals/mcstas/misc/Res_sample.tex b/docs/manuals/mcstas/misc/Res_sample.tex index 6b56047d7..bb444b951 100644 --- a/docs/manuals/mcstas/misc/Res_sample.tex +++ b/docs/manuals/mcstas/misc/Res_sample.tex @@ -3,7 +3,7 @@ \section{Res\_sample: A sample-like component for resolution calculation} \index{Samples!Resolution function, sample for} %\component{Res\_sample}{(System); Alan Tennant, HMI}{$r$, $r$, $h$, $r_\textrm{focus}$, $x_\textrm{target}$, $y_\textrm{target}$, $z_\textrm{target}$, $E_0$, $\Delta E$ }{$x_w$, $y_h$, $z_d$, $x_\textrm{focus}$, $y_\textrm{focus}$, $a_\textrm{v, focus}$, $a_\textrm{h, focus}$, target index}{} -\mcdoccomp{misc/Res_sample.parms} +%\mcdoccomp{misc/Res_sample.parms} The component \textbf{Res\_sample} scatters neutron rays isotropically in direction and uniformly in energy. diff --git a/docs/manuals/mcstas/misc/TOFRes_sample.tex b/docs/manuals/mcstas/misc/TOFRes_sample.tex index 209ab125b..850302ef7 100644 --- a/docs/manuals/mcstas/misc/TOFRes_sample.tex +++ b/docs/manuals/mcstas/misc/TOFRes_sample.tex @@ -4,7 +4,7 @@ \section{TOF\_Res\_sample: A sample-like component for TOF resolution calculatio \label{s:tof_res_sample} %\component{TOF\_Res\_sample}{System}{$r_\textrm{i}$, $r_\textrm{o}$, $h$, $r_\textrm{focus}$, $x_\textrm{target}$, $y_\textrm{target}$, $z_\textrm{target}$, $t_0$, $\Delta t$ }{$x_w$, $y_h$, $z_t$, $x_\textrm{focus}$, $y_\textrm{focus}$, $a_\textrm{v, focus}$, $a_\textrm{h, focus}$, target index}{} -\mcdoccomp{misc/TOFRes_sample.parms} +%\mcdoccomp{misc/TOFRes_sample.parms} The component \textbf{TOF\_Res\_sample} scatters neutron rays isotropically in position within a specified angular range. diff --git a/docs/manuals/mcstas/monitors/DivPos_monitor_static.tex b/docs/manuals/mcstas/monitors/DivPos_monitor_static.tex index 80c11b095..613b52f8d 100644 --- a/docs/manuals/mcstas/monitors/DivPos_monitor_static.tex +++ b/docs/manuals/mcstas/monitors/DivPos_monitor_static.tex @@ -2,7 +2,7 @@ \section{DivPos\_monitor: A divergence and position sensitive monitor} \label{s:divpos-monitor} \index{Monitors!Divergence/position monitor} %\component{DivPos\_monitor}{System}{$x_\textrm{min}$, $x_\textrm{max}$, $y_\textrm{min}$, $y_\textrm{max}$, $n_x$, $n_\textrm{h}$, $\eta_\textrm{h,max}$, filename}{}{} -\mcdoccomp{monitors/DivPos_monitor.parms} +%\mcdoccomp{monitors/DivPos_monitor.parms} \textbf{DivPos\_monitor} is a two-dimensional monitor component, which is sensitive to both horizontal position ($x$) and horizontal divergence diff --git a/docs/manuals/mcstas/monitors/Divergence_monitor_static.tex b/docs/manuals/mcstas/monitors/Divergence_monitor_static.tex index 045333ac2..41334029e 100644 --- a/docs/manuals/mcstas/monitors/Divergence_monitor_static.tex +++ b/docs/manuals/mcstas/monitors/Divergence_monitor_static.tex @@ -4,7 +4,7 @@ \section{Divergence\_monitor: A divergence sensitive monitor} \label{s:div-monitor} \index{Monitors!Divergence monitor} %\component{Divergence\_monitor}{System}{$x_\textrm{min}$, $x_\textrm{max}$, $y_\textrm{min}$, $y_\textrm{max}$, $n_\textrm{v}$, $n_\textrm{h}$, $\eta_\textrm{v,max}$, $\eta_\textrm{h,max}$, filename}{}{} -\mcdoccomp{monitors/Divergence_monitor.parms} +%\mcdoccomp{monitors/Divergence_monitor.parms} The component \textbf{Divergence\_monitor} is a two-dimensional monitor, which resembles \textbf{PSD\_Monitor}. As for this component, diff --git a/docs/manuals/mcstas/monitors/E_monitor_static.tex b/docs/manuals/mcstas/monitors/E_monitor_static.tex index 543e35641..bb25c7588 100644 --- a/docs/manuals/mcstas/monitors/E_monitor_static.tex +++ b/docs/manuals/mcstas/monitors/E_monitor_static.tex @@ -3,7 +3,7 @@ \section{E\_monitor: The energy-sensitive monitor} \label{s:E_monitor} %\component{E\_monitor}{System}{$x_\textrm{min}$, $x_\textrm{max}$, $y_\textrm{ %min}$, $y_\textrm{max}$, $n_\textrm{chan}$, $E_\textrm{min}$, $E_\textrm{max}$, %filename}{}{} -\mcdoccomp{monitors/E_monitor.parms} +%\mcdoccomp{monitors/E_monitor.parms} The component \textbf{E\_monitor} resembles \textbf{TOF\_monitor} to a very large extent. Only this monitor is sensitive to diff --git a/docs/manuals/mcstas/monitors/L_monitor_static.tex b/docs/manuals/mcstas/monitors/L_monitor_static.tex index a2e5f707d..03f6fc485 100644 --- a/docs/manuals/mcstas/monitors/L_monitor_static.tex +++ b/docs/manuals/mcstas/monitors/L_monitor_static.tex @@ -6,7 +6,7 @@ \section{L\_monitor: The wavelength sensitive monitor} \index{Monitors!Wavelength monitor} %\component{L\_monitor}{System}{$x_\textrm{min}$, $x_\textrm{max}$, $y_\textrm{min}$, $y_\textrm{max}$, $n_\textrm{chan}$, $\lambda_\textrm{min}$, $\lambda_\textrm{max}$, filename}{}{} -\mcdoccomp{monitors/L_monitor.parms} +%\mcdoccomp{monitors/L_monitor.parms} The component \textbf{L\_monitor} is very similar to \textbf{TOF\_monitor} and \textbf{E\_monitor}. diff --git a/docs/manuals/mcstas/monitors/Monitor_nD_static.tex b/docs/manuals/mcstas/monitors/Monitor_nD_static.tex index 8c1703c53..3c81a1c80 100644 --- a/docs/manuals/mcstas/monitors/Monitor_nD_static.tex +++ b/docs/manuals/mcstas/monitors/Monitor_nD_static.tex @@ -3,7 +3,7 @@ \section{Monitor\_nD: A general Monitor for 0D/1D/2D records} \index{Monitors!The All-in-One monitor (Monitor\_nD)} %\component{Monitor\_nD}{System, E. Farhi}{$x_\textrm{min}$, $x_\textrm{max}$, $y_\textrm{min}$, $y_\textrm{max}$, options}{$file$, $x_{width}, y_{height}, z_{depth}$, $bins$, $min$, $max$}{} -\mcdoccomp{monitors/Monitor_nD.parms} +%\mcdoccomp{monitors/Monitor_nD.parms} The component \textbf{Monitor\_nD} is a general Monitor that may output any set of physical parameters regarding the passing neutrons. The diff --git a/docs/manuals/mcstas/monitors/PSD_monitor_static.tex b/docs/manuals/mcstas/monitors/PSD_monitor_static.tex index 571ab14a7..b390aef76 100644 --- a/docs/manuals/mcstas/monitors/PSD_monitor_static.tex +++ b/docs/manuals/mcstas/monitors/PSD_monitor_static.tex @@ -3,7 +3,7 @@ \section{PSD\_monitor: The PSD monitor} \index{Monitors!Position sensitive detector (PSD)} %\component{PSD\_monitor}{System}{$x_\textrm{min}$, $x_\textrm{max}$, $y_\textrm{min}$, $y_\textrm{max}$, $n_x$, $n_y$, filename}{}{} -\mcdoccomp{monitors/PSD_monitor.parms} +%\mcdoccomp{monitors/PSD_monitor.parms} The component \textbf{PSD\_monitor} resembles other monitors, e.g. \textbf{TOF\_Monitor}, and also propagates the neutron ray to the detector diff --git a/docs/manuals/mcstas/monitors/TOF2E_monitor_static.tex b/docs/manuals/mcstas/monitors/TOF2E_monitor_static.tex index 30a596d22..17dec5f2e 100644 --- a/docs/manuals/mcstas/monitors/TOF2E_monitor_static.tex +++ b/docs/manuals/mcstas/monitors/TOF2E_monitor_static.tex @@ -3,7 +3,7 @@ \section{TOF2E\_monitor: A time-of-flight monitor with simple energy analysis} \ %\component{E\_monitor}{System}{$x_\textrm{min}$, $x_\textrm{max}$, $y_\textrm{ %min}$, $y_\textrm{max}$, $n_\textrm{chan}$, $E_\textrm{min}$, $E_\textrm{max}$, %$t_0$, $L_\textrm{flight}$, filename}{}{Not validated} -\mcdoccomp{monitors/TOF2E_monitor.parms} +%\mcdoccomp{monitors/TOF2E_monitor.parms} The component \textbf{TOF2E\_monitor} resembles \textbf{TOF\_monitor} to a very large extent. Only this monitor converts the neutron flight diff --git a/docs/manuals/mcstas/monitors/TOF_monitor_static.tex b/docs/manuals/mcstas/monitors/TOF_monitor_static.tex index cb924730a..1a68756ba 100644 --- a/docs/manuals/mcstas/monitors/TOF_monitor_static.tex +++ b/docs/manuals/mcstas/monitors/TOF_monitor_static.tex @@ -1,7 +1,7 @@ \section{TOF\_monitor: The time-of-flight monitor} %\component{TOF\_monitor}{System}{$x_\textrm{min}$, $x_\textrm{max}$, $y_\textrm{min}$, $y_\textrm{max}$, $n_\textrm{chan}$, $t_0$, $t_1$, filename}{$\Delta t$}{} \index{Monitors!Time-of-flight monitor} -\mcdoccomp{monitors/TOF_monitor.parms} +%\mcdoccomp{monitors/TOF_monitor.parms} The component \textbf{TOF\_monitor} has a rectangular opening in the $(x,y)$ plane, given by the $x$ and $y$ parameters, diff --git a/docs/manuals/mcstas/optics/Beamstop_static.tex b/docs/manuals/mcstas/optics/Beamstop_static.tex index 3675db74c..639a25eae 100644 --- a/docs/manuals/mcstas/optics/Beamstop_static.tex +++ b/docs/manuals/mcstas/optics/Beamstop_static.tex @@ -4,7 +4,7 @@ \section{Beamstop: A neutron absorbing area} %\component{Beamstop}{System}{$x_{min}$, $x_{max}$, $y_{min}$, %$y_{max}$}{$r$}{} -\mcdoccomp{optics/Beamstop.parms} +%\mcdoccomp{optics/Beamstop.parms} The component \textbf{Beamstop} can be seen as the reverse of the \textbf{Slit} component. diff --git a/docs/manuals/mcstas/optics/Collimator_linear_static.tex b/docs/manuals/mcstas/optics/Collimator_linear_static.tex index 92395846e..fc886edb0 100644 --- a/docs/manuals/mcstas/optics/Collimator_linear_static.tex +++ b/docs/manuals/mcstas/optics/Collimator_linear_static.tex @@ -2,7 +2,7 @@ \section{Collimator\_linear: The simple Soller blade collimator} \label{collimator-linear}\index{Optics!Linear collimator} %\component{Collimator\_linear}{System}{$x_{min}$, $x_{max}$, $y_{min}$, $y_{max}$, $L$, $\delta$}{}{} -\mcdoccomp{optics/Collimator_linear.parms} +%\mcdoccomp{optics/Collimator_linear.parms} \textbf{Collimator\_linear} models a standard linear Soller blade collimator. The collimator has two identical rectangular openings, diff --git a/docs/manuals/mcstas/optics/Collimator_radial_static.tex b/docs/manuals/mcstas/optics/Collimator_radial_static.tex index eb0a09a72..c900f4fa9 100644 --- a/docs/manuals/mcstas/optics/Collimator_radial_static.tex +++ b/docs/manuals/mcstas/optics/Collimator_radial_static.tex @@ -2,7 +2,7 @@ \section{Collimator\_radial: A radial Soller blade collimator} \index{Optics!Radial collimator} \component{Collimator\_radial}{(System) E.Farhi, ILL}{$w_1$, $h_1$, $w_2$, $h_2$, $len$, $\theta_{min}$, $\theta_{max}$, $nchan$, $radius$}{$divergence$, $nblades$, $roc$ and others}{Validated} -%\mcdoccomp{optics/Collomator_radial.parms} +%%\mcdoccomp{optics/Collomator_radial.parms} \begin{figure} \begin{center} diff --git a/docs/manuals/mcstas/optics/DiskChopper_static.tex b/docs/manuals/mcstas/optics/DiskChopper_static.tex index 31794d3c7..955661a57 100644 --- a/docs/manuals/mcstas/optics/DiskChopper_static.tex +++ b/docs/manuals/mcstas/optics/DiskChopper_static.tex @@ -8,7 +8,7 @@ \section{DiskChopper: The disc chopper} % $R$, $h$, $\omega$, $n$, $t_0$, $\phi_0$}{IsFirst, % $n_\textrm{pulse}$}{Based on Chopper by P Bernhardt, extensions K %Hewitt Klen\o\ and R Bewey} -\mcdoccomp{optics/DiskChopper.parms} +%\mcdoccomp{optics/DiskChopper.parms} To cut a continuous neutron beam into short pulses, or to control the pulse shape (in time) from a pulsed source, one can use a disc diff --git a/docs/manuals/mcstas/optics/FermiChopper_static.tex b/docs/manuals/mcstas/optics/FermiChopper_static.tex index 142f9d32e..c599b471a 100644 --- a/docs/manuals/mcstas/optics/FermiChopper_static.tex +++ b/docs/manuals/mcstas/optics/FermiChopper_static.tex @@ -4,7 +4,7 @@ \section{FermiChopper: The Fermi-chopper} %E. Farhi}{$R,y_{min} y_{max}, %\nu,w,length$,Nslit,phase}{$m,Q_c,R_0,\alpha, %W$,curvature,zero\_time}{validated} -\mcdoccomp{optics/FermiChopper.parms} +%\mcdoccomp{optics/FermiChopper.parms} \index{Optics!Fermi Chopper|textbf} \begin{figure} diff --git a/docs/manuals/mcstas/optics/Filter.tex b/docs/manuals/mcstas/optics/Filter.tex index c9de4a29b..9a9be6bfb 100644 --- a/docs/manuals/mcstas/optics/Filter.tex +++ b/docs/manuals/mcstas/optics/Filter.tex @@ -4,7 +4,7 @@ \section{Filter\_gen: A general filter using a transmission table} \index{Sources!from 1D table input} %\component{Filter\_gen}{System}{$x_{min}$, $x_{max}$, $y_{min}$, $y_{max}$, $file$}{$options$}{validated, flat filter} -\mcdoccomp{optics/Filter.parms} +%\mcdoccomp{optics/Filter.parms} This component is an ideal flat filter that changes the neutron flux according to a 1D input table (text file). diff --git a/docs/manuals/mcstas/optics/Guide_static.tex b/docs/manuals/mcstas/optics/Guide_static.tex index d4f902916..8e91c0d2b 100644 --- a/docs/manuals/mcstas/optics/Guide_static.tex +++ b/docs/manuals/mcstas/optics/Guide_static.tex @@ -99,7 +99,7 @@ \section{Guide: The guide section} \index{Optics!Straight guide} %\component{Guide}{System}{$w_1, h_1$, $w_2, h_2$, $l$, $m$, $reflect$}{$R_0, Q_c, W, \alpha$}{validated, no gravitation support} -\mcdoccomp{optics/Guide.parms} +%\mcdoccomp{optics/Guide.parms} The component \textbf{Guide} models a guide tube consisting of four flat mirrors. The diff --git a/docs/manuals/mcstas/optics/Monochromator_curved_static.tex b/docs/manuals/mcstas/optics/Monochromator_curved_static.tex index 040b63188..d38eea4b5 100644 --- a/docs/manuals/mcstas/optics/Monochromator_curved_static.tex +++ b/docs/manuals/mcstas/optics/Monochromator_curved_static.tex @@ -4,7 +4,7 @@ \section{Monochromator\_curved: A curved mosaic crystal with \index{Optics!Monochromator, curved} %\component{Monochromator\_curved}{(System) Peter Link, FRM-2}{$z_\textrm{w}$, $y_\textrm{h}$, gap, $\eta_\textrm{h}$, $\eta_\textrm{v}$, $n_\textrm{h}$, $n_\textrm{v}$, $R_0$, $Q$, $r_\textrm{h}$, $r_\textrm{v}$}{$d_\textrm{m}$, $\eta$, $h$, $w$, verbose, transmit, reflect}{In reflecting geometry, non polarized} -\mcdoccomp{optics/Monochromator_curved.parms} +%\mcdoccomp{optics/Monochromator_curved.parms} \begin{figure} \begin{center} diff --git a/docs/manuals/mcstas/optics/Monochromator_flat_static.tex b/docs/manuals/mcstas/optics/Monochromator_flat_static.tex index 34e526417..44e1314d5 100644 --- a/docs/manuals/mcstas/optics/Monochromator_flat_static.tex +++ b/docs/manuals/mcstas/optics/Monochromator_flat_static.tex @@ -4,7 +4,7 @@ \section{Monochromator\_flat: An infinitely thin, flat mosaic crystal with \index{Optics!Monochromator} %\component{Monochromator\_flat}{System}{$z_\textrm{min}$, $z_\textrm{max}$, $y_\textrm{min}$, $y_\textrm{max}$, $\eta_\textrm{h}$, $\eta_\textrm{v}$, $R_0$, $Q_0$}{$d_\textrm{m}$}{In reflecting geometry, non polarized} -\mcdoccomp{optics/Monochromator_flat.parms} +%\mcdoccomp{optics/Monochromator_flat.parms} This component simulates an infinitely thin single crystal with a single scattering vector, $Q_0=2\pi / d_m$, perpendicular to the diff --git a/docs/manuals/mcstas/optics/Selector_static.tex b/docs/manuals/mcstas/optics/Selector_static.tex index 9368fcc85..e625d0c12 100644 --- a/docs/manuals/mcstas/optics/Selector_static.tex +++ b/docs/manuals/mcstas/optics/Selector_static.tex @@ -3,7 +3,7 @@ \section{Selector: another approach to describe a rotating velocity selector} \index{Optics!Velocity selector} %\component{Selector}{System}{$xmin$, $xmax$, $ymin$, $ymax$, $len$, $num$, $width$, $radius$, $\alpha$, $feq$}{}{validated, position is center of input aperture} -\mcdoccomp{optics/Selector.parms} +%\mcdoccomp{optics/Selector.parms} The component \textbf{Selector} describes the same kind of rotating velocity selector as \textbf{V\_selector} - compare description there - but it uses different parameters and a different algorithm: diff --git a/docs/manuals/mcstas/optics/Slit_static.tex b/docs/manuals/mcstas/optics/Slit_static.tex index b17837525..a96877154 100644 --- a/docs/manuals/mcstas/optics/Slit_static.tex +++ b/docs/manuals/mcstas/optics/Slit_static.tex @@ -3,7 +3,7 @@ \section{Slit: A beam defining diaphragm} \index{Optics!Slit} %\component{Slit}{System}{$x_\textrm{min}$, $x_\textrm{max}$, $y_\textrm{min}$, $y_\textrm{max}$}{$r$, $p_\textrm{cut}$}{} -\mcdoccomp{optics/Slit.parms} +%\mcdoccomp{optics/Slit.parms} The component \textbf{Slit} is a very simple construction. It sets up an opening at $z=0$, and propagates the neutrons diff --git a/docs/manuals/mcstas/optics/V_selector_static.tex b/docs/manuals/mcstas/optics/V_selector_static.tex index 839c4bcbc..269485aee 100644 --- a/docs/manuals/mcstas/optics/V_selector_static.tex +++ b/docs/manuals/mcstas/optics/V_selector_static.tex @@ -3,7 +3,7 @@ \section{V\_selector: A rotating velocity selector} \index{Optics!Velocity selector} %\component{V\_selector}{System}{$L_0$, $L_1$, $\omega$, $r_0$, $\phi$, $N$, height, width}{}{validated, position is center of input aperture} -\mcdoccomp{optics/V_selector.parms} +%\mcdoccomp{optics/V_selector.parms} \begin{figure} \begin{center} diff --git a/docs/manuals/mcstas/optics/Vitess_ChopperFermi_static.tex b/docs/manuals/mcstas/optics/Vitess_ChopperFermi_static.tex index 6094a3634..1a46eb626 100644 --- a/docs/manuals/mcstas/optics/Vitess_ChopperFermi_static.tex +++ b/docs/manuals/mcstas/optics/Vitess_ChopperFermi_static.tex @@ -5,7 +5,7 @@ \section{Vitess\_ChopperFermi: The Fermi Chopper from Vitess} \index{Optics!Fermi Chopper} %\component{Vitess\_ChopperFermi}{Geza Zsigmond}{GeomOption, $N_\textrm{chan}$, $f$, $h$, $w_\textrm{tot}$, $l$, $r_\textrm{curv}$, $d$, $\phi$, $w_\textrm{wall}$, GeomFile}{zerotime, $N_\textrm{gates}$}{validated} -\mcdoccomp{optics/Vitess_ChopperFermi.parms} +%\mcdoccomp{optics/Vitess_ChopperFermi.parms} The component \textbf{Vitess\_ChopperFermi} simulates a Fermi chopper with absorbing walls. diff --git a/docs/manuals/mcstas/samples/Incoherent_static.tex b/docs/manuals/mcstas/samples/Incoherent_static.tex index 59501f416..d9e2477a3 100644 --- a/docs/manuals/mcstas/samples/Incoherent_static.tex +++ b/docs/manuals/mcstas/samples/Incoherent_static.tex @@ -5,7 +5,7 @@ \section{Incoherent: An incoherent scatterer, the V-sample} %\component{V\_sample}{System}{$r_\textrm{i}$, $r_\textrm{o}$, $h$, $r_\textrm{foc}$, $x_\textrm{target}$, $y_\textrm{target}$, $z_\textrm{target}$}{$w_x$, $h_y$, $t_z$, $w_\textrm{focus}, h_\textrm{focus}$, $w_\textrm{foc, angle}$, $h_\textrm{foc, angle}$, \\ $\sigma_\textrm{abs}$, $\sigma_\textrm{inc}$, $V_0$, $f_\textrm{pack}$, target\_index}{validated} -\mcdoccomp{samples/Incoherent.parms} +%\mcdoccomp{samples/Incoherent.parms} A sample with incoherent scattering, e.g. vanadium, is frequently used for calibration purposes, as this gives an isotropic, elastically scattered beam. diff --git a/docs/manuals/mcstas/samples/Isotropic_Sqw_static.tex b/docs/manuals/mcstas/samples/Isotropic_Sqw_static.tex index 7f70731fd..a228b040b 100644 --- a/docs/manuals/mcstas/samples/Isotropic_Sqw_static.tex +++ b/docs/manuals/mcstas/samples/Isotropic_Sqw_static.tex @@ -8,7 +8,7 @@ \section{Isotropic\_Sqw: A general $S(q,\omega)$ coherent and incoherent scatter \index{Multiple scattering} %\component{Isotropic\_Sqw}{V. Hugouvieux, E. Farhi}{Sqw$\_{coh}$, $\sigma_{coh}$, Sqw$\_{inc}$, $\sigma_{inc}, V_\rho, \sigma_{abs}, T$,$x_{width},y_{height},z_{depth},r$, thickness}{$q_{min}, q_{max}, \omega_{min}, \omega_{max}, d\phi$, order}{validated (Vanadium, l-Rb, PowderN more accurate for powders) } -\mcdoccomp{samples/Isotropic_Sqw.parms} +%\mcdoccomp{samples/Isotropic_Sqw.parms} \begin{figure} \begin{center} diff --git a/docs/manuals/mcstas/samples/Phonon_simple_static.tex b/docs/manuals/mcstas/samples/Phonon_simple_static.tex index 61a84fdd1..97d0acde9 100644 --- a/docs/manuals/mcstas/samples/Phonon_simple_static.tex +++ b/docs/manuals/mcstas/samples/Phonon_simple_static.tex @@ -4,7 +4,7 @@ \section{Phonon\_simple: A simple phonon sample} \index{Inelastic scattering} %\component{Phonon\_simple}{Kim Lefmann, Ris\o\ National Laboratory}{ $r_\textrm{o}$, $h$, $r_\textrm{foc}$, $x_\textrm{target}$, $y_\textrm{target}$, $z_\textrm{target}$, $\sigma_\textrm{abs}$, $\sigma_\textrm{inc}$, $a$, $b$, $c$, $M$, $DW$, $T$}{$w_x$, $h_y$, $t_z$, $w_\textrm{focus}, h_\textrm{focus}$, $w_\textrm{foc, angle}$, $h_\textrm{foc, angle}$, target\_index}{only validated qualitatively} -\mcdoccomp{samples/Phonon_simple.parms} +%\mcdoccomp{samples/Phonon_simple.parms} This component models a simple phonon signal from a single crystal of a pure element in an {\em fcc} crystal structure. diff --git a/docs/manuals/mcstas/samples/PowderN_static.tex b/docs/manuals/mcstas/samples/PowderN_static.tex index 627cf3f2b..0da4883a9 100644 --- a/docs/manuals/mcstas/samples/PowderN_static.tex +++ b/docs/manuals/mcstas/samples/PowderN_static.tex @@ -7,7 +7,7 @@ \section{PowderN: A general powder sample} %\component{Powder\_N}{System}{$radius$, $thickness$, $h$, $xwidth$, $yheight$, $zdepth$, $\sigma_\textrm{abs}$, % $\sigma_\textrm{inc}$, $Vc$, $f_\textrm{pack}$, reflections, format, DW, concentic, and more}{}{} -\mcdoccomp{samples/PowderN.parms} +%\mcdoccomp{samples/PowderN.parms} The powder diffraction component \textbf{PowderN} models a powder sample with background coming only from incoherent scattering and no diff --git a/docs/manuals/mcstas/samples/Sans_spheres_static.tex b/docs/manuals/mcstas/samples/Sans_spheres_static.tex index 0ae589004..2446e4505 100644 --- a/docs/manuals/mcstas/samples/Sans_spheres_static.tex +++ b/docs/manuals/mcstas/samples/Sans_spheres_static.tex @@ -5,7 +5,7 @@ \section{Sans\_spheres: A sample of hard spheres for small-angle scattering} \index{Small angle scattering} %\component{Sans\_spheres}{(System); Lise Arleth, Veterinary University of Denmark}{$R$, $x_w$, $y_h$, $z_t$, $r$, $\sigma_a$, $\phi$, $\Delta \rho$, $R_\textrm{det}$, $d$}{}{} -\mcdoccomp{samples/Sans_spheres.parms} +%\mcdoccomp{samples/Sans_spheres.parms} The component \textbf{Sans\_spheres} models a sample of small independent spheres of radius $R$, which are uniformly distributed diff --git a/docs/manuals/mcstas/samples/Single_crystal_static.tex b/docs/manuals/mcstas/samples/Single_crystal_static.tex index e3ab4fb04..7fb3763f0 100644 --- a/docs/manuals/mcstas/samples/Single_crystal_static.tex +++ b/docs/manuals/mcstas/samples/Single_crystal_static.tex @@ -6,7 +6,7 @@ \section{Single\_crystal: The single crystal component} \index{Multiple scattering} %\component{Single\_crystal}{Kristian Nielsen}{$x_{width}, y_{height}, z_{thick}$,$\vec a, \vec b, \vec c, \Delta d/d$, mosaic, reflections}{$\sigma_{abs}, \sigma_{inc}$, ...}{Partially validated, centered. Further validation undergoing. Known BUGS: The component is known not to work as a Bragg monochromator, likely the problem relates to the internal definition of the reciprocal space. Possibly related to this, the model of anistropic mosaic is broken - always use a non-zero isotropic mosaic. Also, always use a non-zero value of the $\Delta d/d$ parameter.} -\mcdoccomp{samples/Single_crystal.parms} +%\mcdoccomp{samples/Single_crystal.parms} The \textbf{Single\_crystal} component models a thick, flat single crystal with multiple scattering and absorption with elastic coherent scattering. diff --git a/docs/manuals/mcstas/samples/Tunneling_sample_static.tex b/docs/manuals/mcstas/samples/Tunneling_sample_static.tex index c8441c3c7..2bcfc6663 100644 --- a/docs/manuals/mcstas/samples/Tunneling_sample_static.tex +++ b/docs/manuals/mcstas/samples/Tunneling_sample_static.tex @@ -5,7 +5,7 @@ \section{Tunneling\_sample: An incoherent inelastic scatterer} %\component{Tunneling\_sample}{System}{$r_\textrm{i}$, $r_\textrm{o}$, $h$, $r_\textrm{foc}$, $x_\textrm{target}$, $y_\textrm{target}$, $z_\textrm{target}$}{$w_x$, $h_y$, $t_z$, $w_\textrm{focus}, h_\textrm{focus}$, $w_\textrm{foc, angle}$, $h_\textrm{foc, angle}$, $\sigma_\textrm{abs}$, $\sigma_\textrm{inc}$, $V_0$, $f_\textrm{pack}$, $f_\textrm{QE}$, $f_\textrm{tun}$, $\Gamma$, $E_\textrm{tun}$, target\_index}{not validated} -\mcdoccomp{samples/Tunneling_sample.parms} +%\mcdoccomp{samples/Tunneling_sample.parms} The component \textbf{Tunneling\_sample} displays incoherent inelastic scattering as found in a number of systems, {\em e.g.} diff --git a/docs/manuals/mcstas/sources/Adapt_check_static.tex b/docs/manuals/mcstas/sources/Adapt_check_static.tex index d710eb8b0..1f2f80c6c 100644 --- a/docs/manuals/mcstas/sources/Adapt_check_static.tex +++ b/docs/manuals/mcstas/sources/Adapt_check_static.tex @@ -5,7 +5,7 @@ \section{Adapt\_check: The adaptive importance sampling monitor} \index{Optimization} %\component{Adapt\_check}{K. Nielsen}{source\_comp}{}{validated} -\mcdoccomp{sources/Adapt_check.parms} +%\mcdoccomp{sources/Adapt_check.parms} The component \textbf{Adapt\_check} is used together with the Source\_adapt component - see section \ref{s:Source_adapt} for details. When placed somewhere in an instrument using Source\_adapt as a source, the source will optimize for neutrons that reach that point without being absorbed (regardless of neutron position, divergence, wavelength, \emph{etc}). diff --git a/docs/manuals/mcstas/sources/Moderator_static.tex b/docs/manuals/mcstas/sources/Moderator_static.tex index 646c90735..01e5d3480 100644 --- a/docs/manuals/mcstas/sources/Moderator_static.tex +++ b/docs/manuals/mcstas/sources/Moderator_static.tex @@ -3,7 +3,7 @@ \section{Moderator: A time-of-flight source (pulsed)} \index{Sources!Time of flight pulsed moderator} \component{Moderator}{(System) Mark Hagen, SNS}{$r_s$, $E_0$, $E_1$, $z_f$, $w$, $h$, $\tau_0$, $E_c$, $\gamma$}{}{} -\mcdoccomp{sources/Moderator.parms} +%\mcdoccomp{sources/Moderator.parms} The simple time-of-flight source component \textbf{Moderator} resembles the source component \textbf{Source\_simple} described in \ref{source-simple}. diff --git a/docs/manuals/mcstas/sources/Monitor_Optimizer_static.tex b/docs/manuals/mcstas/sources/Monitor_Optimizer_static.tex index dc106e86c..1a3ec4329 100644 --- a/docs/manuals/mcstas/sources/Monitor_Optimizer_static.tex +++ b/docs/manuals/mcstas/sources/Monitor_Optimizer_static.tex @@ -5,7 +5,7 @@ \section{Monitor\_Optimizer: Optimization locations for the\\ \label{monitor-optimizer} \index{Sources!Optimization location|see{Sources/Optimizer}}\index{Optimization} %\component{Source\_Optimizer}{E. Farhi, ILL}{optim\_comp}{$x_{min}$, $x_{max}$, $y_{min}$,$y_{max}$}{partially validated} -\mcdoccomp{sources/Monitor_Optimizer.parms} +%\mcdoccomp{sources/Monitor_Optimizer.parms} The \textbf{Monitor\_Optimizer} component works with the \textbf{ Source\_Optimizer} component. See section~\ref{source-optimizer} diff --git a/docs/manuals/mcstas/sources/Source_Maxwell_3_static.tex b/docs/manuals/mcstas/sources/Source_Maxwell_3_static.tex index f51cc21a3..cf784d4a4 100644 --- a/docs/manuals/mcstas/sources/Source_Maxwell_3_static.tex +++ b/docs/manuals/mcstas/sources/Source_Maxwell_3_static.tex @@ -5,7 +5,7 @@ \section{Source\_Maxwell\_3: A continuous source with a Maxwellian spectrum} %\component{Source\_Maxwell\_3}{System}{ $h$, $w$, $d_\textrm{foc}$, $xw$, $yh$, $\lambda_\textrm{low}$, $\lambda_\textrm{high}$, $I_1$, $T_1$}{$I_2$, $T_2$, $I_3$, $T_3$}{Validated. t=0} -\mcdoccomp{sources/Source_Maxwell_3.parms} +%\mcdoccomp{sources/Source_Maxwell_3.parms} This component is a source with a Maxwellian energy/wavelength distribution sampled in the range $\lambda_\textrm{low}$ to $\lambda_\textrm{high}$. diff --git a/docs/manuals/mcstas/sources/Source_Optimizer_static.tex b/docs/manuals/mcstas/sources/Source_Optimizer_static.tex index 34f5e0172..18af0a0c0 100644 --- a/docs/manuals/mcstas/sources/Source_Optimizer_static.tex +++ b/docs/manuals/mcstas/sources/Source_Optimizer_static.tex @@ -2,7 +2,7 @@ \section{Source\_Optimizer: A general Optimizer for McStas} \label{source-optimizer} \index{Sources!Optimizer}\index{Optimization} %\component{Source\_Optimizer}{E. Farhi, ILL}{options}{bins, step, keep}{partially validated} -\mcdoccomp{sources/Source_Optimizer.parms} +%\mcdoccomp{sources/Source_Optimizer.parms} The component \textbf{Source\_Optimizer} is not exactly a source, but rather a neutron beam modifier. diff --git a/docs/manuals/mcstas/sources/Source_adapt_static.tex b/docs/manuals/mcstas/sources/Source_adapt_static.tex index a2ed69acc..c28979894 100644 --- a/docs/manuals/mcstas/sources/Source_adapt_static.tex +++ b/docs/manuals/mcstas/sources/Source_adapt_static.tex @@ -5,7 +5,7 @@ \section{Source\_adapt: A neutron source with adaptive importance sampling} \index{Sources!Adaptive source} %\component{Source\_adapt}{K. Nielsen}{$x_{min}$, $x_{max}$, $y_{min}$, $y_{max}$, $E0$, $dE$, dist, $xw$, $yh$, $\Phi$}{$\alpha$, $\beta$ (plenty, default values are ok)}{partially validated} -\mcdoccomp{sources/Source_adapt.parms} +%\mcdoccomp{sources/Source_adapt.parms} \textbf{Source\_adapt} is a neutron source that uses adaptive importance sampling to improve the efficiency of the simulations. It diff --git a/docs/manuals/mcstas/sources/Source_div_static.tex b/docs/manuals/mcstas/sources/Source_div_static.tex index 310e63b05..d8f9e42cb 100644 --- a/docs/manuals/mcstas/sources/Source_div_static.tex +++ b/docs/manuals/mcstas/sources/Source_div_static.tex @@ -3,7 +3,7 @@ \section{Source\_div: A continuous source with specified divergence} \index{Sources!Continuous source with specified divergence} %\component{Source\_div}{System}{ $w$, $h$, $\delta_h$, $\delta_v$, $E_0$, $\Delta E$}{$\lambda_0$, $\Delta\lambda$, gauss}{Validated. t=0} -\mcdoccomp{sources/Source_div.parms} +%\mcdoccomp{sources/Source_div.parms} \textbf{Source\_div} is a rectangular source, $w \times h$, which emits a beam of a specified divergence around the direction of the $z$ axis. diff --git a/docs/manuals/mcstas/sources/Source_gen_static.tex b/docs/manuals/mcstas/sources/Source_gen_static.tex index be926e764..8af8557af 100644 --- a/docs/manuals/mcstas/sources/Source_gen_static.tex +++ b/docs/manuals/mcstas/sources/Source_gen_static.tex @@ -3,7 +3,7 @@ \section{Source\_gen: A general continuous source} \index{Sources!General continuous source} %\component{Source\_gen}{(System) E. Farhi, ILL}{$w$, $h$, $xw$, $yh$, $E_0$, $\Delta E$, $T_1$, $T_2$, $T_3$, $I_1$, $I_2$, $I_3$ }{$r$, $\lambda_0$, $d\lambda$, $E_{min}$, $E_{max}$, $\lambda_{min}$, $\lambda_{max}$}{Validated for Maxwellian expressions. t=0} -\mcdoccomp{sources/Source_gen.parms} +%\mcdoccomp{sources/Source_gen.parms} This component is a continuous neutron source (rectangular or circular), which aims at a rectangular target centered at the beam. diff --git a/docs/manuals/mcstas/sources/Source_simple_static.tex b/docs/manuals/mcstas/sources/Source_simple_static.tex index bce0c8f45..81d1db1f8 100644 --- a/docs/manuals/mcstas/sources/Source_simple_static.tex +++ b/docs/manuals/mcstas/sources/Source_simple_static.tex @@ -4,7 +4,7 @@ \section{Source\_simple: A simple continuous source \index{Sources!Simple continuous source} %\component{Source\_simple}{System}{ $r_\textrm{s}$, $z_\textrm{foc}$, $w$, $h$, $E_0$, $\Delta E$, $\Psi$}{$\lambda_0$, $d\lambda$}{Validated. t=0} -\mcdoccomp{sources/Source_simple.parms} +%\mcdoccomp{sources/Source_simple.parms} This component is a simple source with an energy distribution which is uniform diff --git a/docs/manuals/mcstas/sources/Virtual_input.tex b/docs/manuals/mcstas/sources/Virtual_input.tex index 2e72bf2bd..5944e4c72 100644 --- a/docs/manuals/mcstas/sources/Virtual_input.tex +++ b/docs/manuals/mcstas/sources/Virtual_input.tex @@ -3,7 +3,7 @@ \section{Virtual\_input: Starting the second part of a split simulation} \index{Sources!Virtual source from stored neutron events} %\component{Virtual\_input}{System}{filename}{repeat-count, type}{} -\mcdoccomp{sources/Virtual_input.parms} +%\mcdoccomp{sources/Virtual_input.parms} The component \textbf{Virtual\_input} resumes a split simulation where the first part has been performed by another instrument and the neutron ray diff --git a/docs/manuals/mcstas/sources/Virtual_output.tex b/docs/manuals/mcstas/sources/Virtual_output.tex index b50808fac..accde7dd1 100644 --- a/docs/manuals/mcstas/sources/Virtual_output.tex +++ b/docs/manuals/mcstas/sources/Virtual_output.tex @@ -3,7 +3,7 @@ \section{Virtual\_output: Saving the first part of a split simulation} \index{Sources!Virtual source, recording neutron events} %\component{Virtual\_output}{System}{filename}{buffer-size, type}{} -\mcdoccomp{sources/Virtual_output.parms} +%\mcdoccomp{sources/Virtual_output.parms} The component \textbf{Virtual\_output} stores the neutron ray parameters at the end of the first part of a split simulation. The idea is to let the From 77a120b590caed75dc29ca45ee699926ae1ac461 Mon Sep 17 00:00:00 2001 From: Peter Willendrup Date: Tue, 21 Apr 2026 16:07:01 +0200 Subject: [PATCH 19/43] Re-add link to source code --- tools/Python/mcdoc/mcdoc.py | 1 + 1 file changed, 1 insertion(+) diff --git a/tools/Python/mcdoc/mcdoc.py b/tools/Python/mcdoc/mcdoc.py index 67df24cc5..13ff25b75 100644 --- a/tools/Python/mcdoc/mcdoc.py +++ b/tools/Python/mcdoc/mcdoc.py @@ -1399,6 +1399,7 @@ def create(self): out.append('') out.append(r'\subsection*{Links}') out.append(r'\begin{itemize}') + out.append(r' \item \href{run:%s}{Source code} for \texttt{%s}.' % (i.filepath, _tex(os.path.basename(i.filepath)))) for l in i.links: out.append(r' \item %s' % _tex(l)) out.append(r'\end{itemize}') From 8c3a80d8ea7fdc85447dd87965def6fad6095576 Mon Sep 17 00:00:00 2001 From: Peter Willendrup Date: Tue, 21 Apr 2026 16:16:50 +0200 Subject: [PATCH 20/43] Add generated .tex snippets --- docs/manuals/mcstas/contrib/Al_window.tex | 38 + docs/manuals/mcstas/contrib/CavitiesIn.tex | 40 + docs/manuals/mcstas/contrib/CavitiesOut.tex | 40 + .../manuals/mcstas/contrib/Collimator_ROC.tex | 58 + docs/manuals/mcstas/contrib/Commodus_I3.tex | 58 + docs/manuals/mcstas/contrib/Conics_EH.tex | 61 + docs/manuals/mcstas/contrib/Conics_HE.tex | 61 + docs/manuals/mcstas/contrib/Conics_PH.tex | 59 + docs/manuals/mcstas/contrib/Conics_PP.tex | 61 + docs/manuals/mcstas/contrib/E_4PI.tex | 40 + .../mcstas/contrib/Exact_radial_coll.tex | 50 + .../mcstas/contrib/FermiChopper_ILL.tex | 77 + docs/manuals/mcstas/contrib/Fermi_chop2a.tex | 42 + .../mcstas/contrib/Filter_graphite.tex | 47 + .../contrib/FlatEllipse_finite_mirror.tex | 55 + .../mcstas/contrib/Foil_flipper_magnet.tex | 58 + docs/manuals/mcstas/contrib/GISANS_sample.tex | 90 + .../mcstas/contrib/Guide_anyshape_r.tex | 71 + docs/manuals/mcstas/contrib/Guide_curved.tex | 51 + .../mcstas/contrib/Guide_four_side.tex | 137 ++ .../mcstas/contrib/Guide_gravity_psd.tex | 102 + .../mcstas/contrib/Guide_honeycomb.tex | 58 + docs/manuals/mcstas/contrib/Guide_m.tex | 81 + .../mcstas/contrib/Guide_multichannel.tex | 75 + .../manuals/mcstas/contrib/ISIS_moderator.tex | 57 + docs/manuals/mcstas/contrib/Lens.tex | 109 + docs/manuals/mcstas/contrib/Lens_simple.tex | 73 + .../contrib/Mirror_Curved_Bispectral.tex | 47 + .../mcstas/contrib/Mirror_Elliptic.tex | 47 + .../contrib/Mirror_Elliptic_Bispectral.tex | 45 + .../mcstas/contrib/Mirror_Parabolic.tex | 46 + .../mcstas/contrib/Monochromator_2foc.tex | 74 + .../mcstas/contrib/Monochromator_bent.tex | 64 + .../contrib/Monochromator_bent_complex.tex | 59 + .../mcstas/contrib/MultiDiskChopper.tex | 69 + .../mcstas/contrib/Multilayer_Sample.tex | 57 + docs/manuals/mcstas/contrib/NMO.tex | 57 + .../mcstas/contrib/NPI_tof_dhkl_detector.tex | 74 + .../mcstas/contrib/NPI_tof_theta_monitor.tex | 51 + docs/manuals/mcstas/contrib/PSD_Detector.tex | 169 ++ .../mcstas/contrib/PSD_Pol_monitor.tex | 48 + .../mcstas/contrib/PSD_monitor_rad.tex | 41 + docs/manuals/mcstas/contrib/PSD_spinDmon.tex | 45 + docs/manuals/mcstas/contrib/PSD_spinUmon.tex | 45 + .../manuals/mcstas/contrib/PerfectCrystal.tex | 90 + .../mcstas/contrib/Pol_bender_tapering.tex | 74 + .../mcstas/contrib/Pol_pi_2_rotator.tex | 40 + docs/manuals/mcstas/contrib/Pol_triafield.tex | 57 + docs/manuals/mcstas/contrib/Radial_div.tex | 47 + docs/manuals/mcstas/contrib/SANSCurve.tex | 45 + docs/manuals/mcstas/contrib/SANSCylinders.tex | 43 + .../mcstas/contrib/SANSEllipticCylinders.tex | 45 + docs/manuals/mcstas/contrib/SANSLiposomes.tex | 50 + docs/manuals/mcstas/contrib/SANSNanodiscs.tex | 54 + .../mcstas/contrib/SANSNanodiscsFast.tex | 58 + .../mcstas/contrib/SANSNanodiscsWithTags.tex | 59 + .../contrib/SANSNanodiscsWithTagsFast.tex | 62 + docs/manuals/mcstas/contrib/SANSPDB.tex | 46 + docs/manuals/mcstas/contrib/SANSPDBFast.tex | 51 + docs/manuals/mcstas/contrib/SANSQMonitor.tex | 42 + docs/manuals/mcstas/contrib/SANSShells.tex | 43 + docs/manuals/mcstas/contrib/SANSSpheres.tex | 43 + .../contrib/SANSSpheresPolydisperse.tex | 43 + docs/manuals/mcstas/contrib/SANS_AnySamp.tex | 60 + docs/manuals/mcstas/contrib/SANS_DebyeS.tex | 53 + docs/manuals/mcstas/contrib/SANS_Guinier.tex | 60 + .../mcstas/contrib/SANS_Liposomes_Abs.tex | 63 + .../mcstas/contrib/SANS_benchmark2.tex | 56 + docs/manuals/mcstas/contrib/SNS_source.tex | 55 + .../mcstas/contrib/SNS_source_analytic.tex | 67 + .../mcstas/contrib/Sans_liposomes_new.tex | 54 + .../mcstas/contrib/Sapphire_Filter.tex | 55 + docs/manuals/mcstas/contrib/SiC.tex | 36 + .../contrib/Single_crystal_inelastic.tex | 98 + docs/manuals/mcstas/contrib/Source_custom.tex | 131 + docs/manuals/mcstas/contrib/Source_gen4.tex | 119 + .../mcstas/contrib/Source_multi_surfaces.tex | 95 + docs/manuals/mcstas/contrib/Source_pulsed.tex | 75 + .../Spherical_Backscattering_Analyser.tex | 51 + docs/manuals/mcstas/contrib/Spin_random.tex | 33 + docs/manuals/mcstas/contrib/Spot_sample.tex | 60 + .../mcstas/contrib/StatisticalChopper.tex | 47 + .../contrib/StatisticalChopper_Monitor.tex | 43 + .../mcstas/contrib/SupermirrorFlat.tex | 167 ++ .../mcstas/contrib/TOF2Q_cyl_monitor.tex | 46 + docs/manuals/mcstas/contrib/TOFSANSdet.tex | 66 + .../manuals/mcstas/contrib/TOF_PSDmonitor.tex | 50 + .../mcstas/contrib/TOF_PSDmonitor_toQ.tex | 58 + .../contrib/Transmission_V_polarisator.tex | 60 + .../contrib/Transmission_polarisatorABSnT.tex | 70 + .../mcstas/contrib/Vertical_Bender.tex | 88 + docs/manuals/mcstas/contrib/Vertical_T0a.tex | 40 + docs/manuals/mcstas/contrib/ViewModISIS.tex | 73 + docs/manuals/mcstas/contrib/multi_pipe.tex | 52 + docs/manuals/mcstas/misc/Annulus.tex | 42 + docs/manuals/mcstas/misc/Circle.tex | 40 + docs/manuals/mcstas/misc/Cone.tex | 40 + docs/manuals/mcstas/misc/Disc.tex | 43 + docs/manuals/mcstas/misc/File.tex | 37 + docs/manuals/mcstas/misc/Legacy_circle.tex | 57 + docs/manuals/mcstas/misc/MCPL_input.tex | 50 + docs/manuals/mcstas/misc/MCPL_input_once.tex | 50 + docs/manuals/mcstas/misc/MCPL_output.tex | 59 + .../manuals/mcstas/misc/MCPL_output_noacc.tex | 59 + docs/manuals/mcstas/misc/Progress_bar.tex | 43 + docs/manuals/mcstas/misc/Shape.tex | 66 + docs/manuals/mcstas/misc/Shape_simple.tex | 63 + .../mcstas/monitors/Brilliance_monitor.tex | 70 + docs/manuals/mcstas/monitors/Cyl_monitor.tex | 44 + .../mcstas/monitors/Cyl_monitor_PSD.tex | 45 + .../mcstas/monitors/Cyl_monitor_TOF.tex | 47 + .../manuals/mcstas/monitors/Div1D_monitor.tex | 47 + .../mcstas/monitors/DivLambda_monitor.tex | 54 + .../mcstas/monitors/DivPos_monitor.tex | 54 + .../mcstas/monitors/Divergence_monitor.tex | 53 + docs/manuals/mcstas/monitors/EPSD_monitor.tex | 48 + docs/manuals/mcstas/monitors/E_monitor.tex | 47 + .../mcstas/monitors/Event_monitor_simple.tex | 35 + .../mcstas/monitors/Flex_monitor_1D.tex | 43 + .../mcstas/monitors/Flex_monitor_2D.tex | 48 + .../mcstas/monitors/Flex_monitor_3D.tex | 53 + docs/manuals/mcstas/monitors/L_monitor.tex | 47 + .../mcstas/monitors/MeanPolLambda_monitor.tex | 47 + docs/manuals/mcstas/monitors/Monitor.tex | 42 + docs/manuals/mcstas/monitors/Monitor_4PI.tex | 37 + docs/manuals/mcstas/monitors/Monitor_nD.tex | 222 ++ .../mcstas/monitors/Monitor_nD_noacc.tex | 222 ++ .../mcstas/monitors/PSD_TOF_monitor.tex | 50 + docs/manuals/mcstas/monitors/PSD_monitor.tex | 46 + .../mcstas/monitors/PSD_monitor_4PI.tex | 43 + .../mcstas/monitors/PSD_monitor_4PI_spin.tex | 44 + .../mcstas/monitors/PSD_monitor_TOF.tex | 50 + .../mcstas/monitors/PSD_monitor_psf.tex | 47 + .../mcstas/monitors/PSD_monitor_psf_eff.tex | 49 + .../mcstas/monitors/PSDcyl_monitor.tex | 45 + .../mcstas/monitors/PSDlin_diff_monitor.tex | 44 + .../mcstas/monitors/PSDlin_monitor.tex | 47 + .../mcstas/monitors/PolLambda_monitor.tex | 48 + docs/manuals/mcstas/monitors/Pol_monitor.tex | 43 + docs/manuals/mcstas/monitors/Res_monitor.tex | 63 + .../manuals/mcstas/monitors/Sqq_w_monitor.tex | 64 + docs/manuals/mcstas/monitors/Sqw_monitor.tex | 49 + .../manuals/mcstas/monitors/TOF2E_monitor.tex | 49 + .../mcstas/monitors/TOF2Q_cylPSD_monitor.tex | 49 + .../mcstas/monitors/TOFLambda_monitor.tex | 48 + .../mcstas/monitors/TOFRes_monitor.tex | 63 + .../mcstas/monitors/TOF_PSD_monitor_rad.tex | 46 + .../mcstas/monitors/TOF_cylPSD_monitor.tex | 41 + docs/manuals/mcstas/monitors/TOF_monitor.tex | 45 + .../mcstas/monitors/TOFlog_monitor.tex | 45 + docs/manuals/mcstas/obsolete/Beam_spy.tex | 37 + .../mcstas/obsolete/ESS_moderator_short.tex | 95 + docs/manuals/mcstas/obsolete/V_sample.tex | 81 + .../manuals/mcstas/obsolete/Virtual_input.tex | 65 + .../mcstas/obsolete/Virtual_mcnp_input.tex | 81 + .../mcstas/obsolete/Virtual_mcnp_output.tex | 54 + .../mcstas/obsolete/Virtual_mcnp_ss_Guide.tex | 71 + .../mcstas/obsolete/Virtual_mcnp_ss_input.tex | 73 + .../obsolete/Virtual_mcnp_ss_output.tex | 73 + .../mcstas/obsolete/Virtual_output.tex | 63 + .../obsolete/Virtual_tripoli4_input.tex | 79 + .../obsolete/Virtual_tripoli4_output.tex | 57 + docs/manuals/mcstas/obsolete/Vitess_input.tex | 42 + .../manuals/mcstas/obsolete/Vitess_output.tex | 47 + docs/manuals/mcstas/optics/Absorber.tex | 40 + docs/manuals/mcstas/optics/Arm.tex | 35 + docs/manuals/mcstas/optics/Beamstop.tex | 45 + docs/manuals/mcstas/optics/Bender.tex | 88 + .../mcstas/optics/Collimator_linear.tex | 47 + .../mcstas/optics/Collimator_radial.tex | 74 + docs/manuals/mcstas/optics/Derotator.tex | 41 + docs/manuals/mcstas/optics/Diaphragm.tex | 40 + docs/manuals/mcstas/optics/DiskChopper.tex | 69 + .../mcstas/optics/Elliptic_guide_gravity.tex | 128 + docs/manuals/mcstas/optics/FZP_simple.tex | 48 + docs/manuals/mcstas/optics/FermiChopper.tex | 70 + docs/manuals/mcstas/optics/Filter_gen.tex | 82 + docs/manuals/mcstas/optics/Guide.tex | 58 + docs/manuals/mcstas/optics/Guide_anyshape.tex | 67 + .../manuals/mcstas/optics/Guide_channeled.tex | 70 + docs/manuals/mcstas/optics/Guide_gravity.tex | 97 + docs/manuals/mcstas/optics/Guide_simple.tex | 57 + docs/manuals/mcstas/optics/Guide_tapering.tex | 85 + docs/manuals/mcstas/optics/Guide_wavy.tex | 64 + docs/manuals/mcstas/optics/He3_cell.tex | 50 + docs/manuals/mcstas/optics/Mask.tex | 57 + docs/manuals/mcstas/optics/Mirror.tex | 56 + .../mcstas/optics/Monochromator_curved.tex | 88 + .../mcstas/optics/Monochromator_flat.tex | 64 + .../mcstas/optics/Monochromator_pol.tex | 89 + docs/manuals/mcstas/optics/Place.tex | 35 + .../mcstas/optics/PolAnalyser_ideal.tex | 39 + docs/manuals/mcstas/optics/Pol_Bfield.tex | 86 + .../manuals/mcstas/optics/Pol_Bfield_stop.tex | 62 + docs/manuals/mcstas/optics/Pol_FieldBox.tex | 38 + docs/manuals/mcstas/optics/Pol_SF_ideal.tex | 41 + docs/manuals/mcstas/optics/Pol_bender.tex | 93 + .../manuals/mcstas/optics/Pol_constBfield.tex | 43 + .../mcstas/optics/Pol_guide_mirror.tex | 66 + .../mcstas/optics/Pol_guide_vmirror.tex | 82 + docs/manuals/mcstas/optics/Pol_mirror.tex | 77 + .../mcstas/optics/Pol_tabled_field.tex | 46 + docs/manuals/mcstas/optics/Refractor.tex | 131 + docs/manuals/mcstas/optics/Rotator.tex | 46 + docs/manuals/mcstas/optics/Selector.tex | 60 + docs/manuals/mcstas/optics/Set_pol.tex | 43 + docs/manuals/mcstas/optics/Slit.tex | 47 + docs/manuals/mcstas/optics/V_selector.tex | 52 + .../mcstas/optics/Vitess_ChopperFermi.tex | 97 + docs/manuals/mcstas/samples/Incoherent.tex | 105 + docs/manuals/mcstas/samples/Isotropic_Sqw.tex | 245 ++ docs/manuals/mcstas/samples/Magnon_bcc.tex | 80 + .../mcstas/samples/NCrystal_sample.tex | 57 + docs/manuals/mcstas/samples/Phonon_simple.tex | 70 + docs/manuals/mcstas/samples/Powder1.tex | 57 + docs/manuals/mcstas/samples/PowderN.tex | 183 ++ docs/manuals/mcstas/samples/Res_sample.tex | 66 + docs/manuals/mcstas/samples/SANS_spheres2.tex | 56 + docs/manuals/mcstas/samples/Sans_spheres.tex | 55 + docs/manuals/mcstas/samples/SasView_model.tex | 2151 +++++++++++++++++ .../manuals/mcstas/samples/Single_crystal.tex | 207 ++ .../samples/Single_magnetic_crystal.tex | 98 + docs/manuals/mcstas/samples/TOFRes_sample.tex | 75 + .../mcstas/samples/Tunneling_sample.tex | 77 + .../sasmodels/SasView_adsorbed_layer.tex | 62 + .../mcstas/sasmodels/SasView_barbell.tex | 62 + .../sasmodels/SasView_barbell_aniso.tex | 66 + .../sasmodels/SasView_bcc_paracrystal.tex | 60 + .../SasView_bcc_paracrystal_aniso.tex | 66 + .../sasmodels/SasView_binary_hard_sphere.tex | 63 + .../mcstas/sasmodels/SasView_broad_peak.tex | 62 + .../sasmodels/SasView_capped_cylinder.tex | 62 + .../SasView_capped_cylinder_aniso.tex | 66 + .../sasmodels/SasView_core_multi_shell.tex | 39 + .../sasmodels/SasView_core_shell_bicelle.tex | 66 + .../SasView_core_shell_bicelle_aniso.tex | 70 + .../SasView_core_shell_bicelle_elliptical.tex | 67 + ...ew_core_shell_bicelle_elliptical_aniso.tex | 73 + ...re_shell_bicelle_elliptical_belt_rough.tex | 68 + ...ll_bicelle_elliptical_belt_rough_aniso.tex | 74 + .../sasmodels/SasView_core_shell_cylinder.tex | 63 + .../SasView_core_shell_cylinder_aniso.tex | 67 + .../SasView_core_shell_ellipsoid.tex | 63 + .../SasView_core_shell_ellipsoid_aniso.tex | 67 + .../SasView_core_shell_parallelepiped.tex | 71 + ...asView_core_shell_parallelepiped_aniso.tex | 77 + .../sasmodels/SasView_core_shell_sphere.tex | 61 + .../sasmodels/SasView_correlation_length.tex | 60 + .../mcstas/sasmodels/SasView_cylinder.tex | 60 + .../sasmodels/SasView_cylinder_aniso.tex | 64 + docs/manuals/mcstas/sasmodels/SasView_dab.tex | 56 + .../mcstas/sasmodels/SasView_ellipsoid.tex | 60 + .../sasmodels/SasView_ellipsoid_aniso.tex | 64 + .../sasmodels/SasView_elliptical_cylinder.tex | 61 + .../SasView_elliptical_cylinder_aniso.tex | 67 + .../sasmodels/SasView_fcc_paracrystal.tex | 60 + .../SasView_fcc_paracrystal_aniso.tex | 66 + .../sasmodels/SasView_flexible_cylinder.tex | 62 + .../SasView_flexible_cylinder_elliptical.tex | 63 + .../mcstas/sasmodels/SasView_fractal.tex | 62 + .../sasmodels/SasView_fractal_core_shell.tex | 65 + .../mcstas/sasmodels/SasView_fuzzy_sphere.tex | 59 + .../sasmodels/SasView_gauss_lorentz_gel.tex | 60 + .../sasmodels/SasView_gaussian_peak.tex | 56 + .../mcstas/sasmodels/SasView_gel_fit.tex | 61 + .../mcstas/sasmodels/SasView_guinier.tex | 56 + .../sasmodels/SasView_guinier_porod.tex | 58 + .../mcstas/sasmodels/SasView_hardsphere.tex | 57 + .../mcstas/sasmodels/SasView_hayter_msa.tex | 62 + .../sasmodels/SasView_hollow_cylinder.tex | 62 + .../SasView_hollow_cylinder_aniso.tex | 66 + .../SasView_hollow_rectangular_prism.tex | 62 + ...SasView_hollow_rectangular_prism_aniso.tex | 68 + ...ew_hollow_rectangular_prism_thin_walls.tex | 60 + .../mcstas/sasmodels/SasView_lamellar_hg.tex | 61 + .../SasView_lamellar_hg_stack_caille.tex | 64 + .../SasView_lamellar_stack_caille.tex | 61 + .../SasView_lamellar_stack_paracrystal.tex | 61 + .../manuals/mcstas/sasmodels/SasView_line.tex | 56 + .../sasmodels/SasView_linear_pearls.tex | 60 + .../mcstas/sasmodels/SasView_lorentz.tex | 56 + .../mcstas/sasmodels/SasView_mass_fractal.tex | 59 + .../SasView_mass_surface_fractal.tex | 60 + .../sasmodels/SasView_mono_gauss_coil.tex | 57 + .../sasmodels/SasView_multilayer_vesicle.tex | 64 + .../mcstas/sasmodels/SasView_onion.tex | 39 + .../sasmodels/SasView_parallelepiped.tex | 62 + .../SasView_parallelepiped_aniso.tex | 68 + .../mcstas/sasmodels/SasView_peak_lorentz.tex | 56 + .../sasmodels/SasView_pearl_necklace.tex | 63 + .../sasmodels/SasView_poly_gauss_coil.tex | 58 + .../sasmodels/SasView_polymer_excl_volume.tex | 57 + .../sasmodels/SasView_polymer_micelle.tex | 66 + .../mcstas/sasmodels/SasView_porod.tex | 54 + .../mcstas/sasmodels/SasView_power_law.tex | 55 + .../mcstas/sasmodels/SasView_pringle.tex | 62 + .../mcstas/sasmodels/SasView_raspberry.tex | 65 + .../sasmodels/SasView_rectangular_prism.tex | 53 + .../SasView_rectangular_prism_aniso.tex | 66 + docs/manuals/mcstas/sasmodels/SasView_rpa.tex | 39 + .../sasmodels/SasView_sc_paracrystal.tex | 60 + .../SasView_sc_paracrystal_aniso.tex | 66 + .../mcstas/sasmodels/SasView_sphere.tex | 58 + .../mcstas/sasmodels/SasView_spinodal.tex | 56 + .../mcstas/sasmodels/SasView_squarewell.tex | 59 + .../sasmodels/SasView_stacked_disks.tex | 65 + .../sasmodels/SasView_stacked_disks_aniso.tex | 69 + .../mcstas/sasmodels/SasView_star_polymer.tex | 57 + .../sasmodels/SasView_stickyhardsphere.tex | 59 + .../mcstas/sasmodels/SasView_superball.tex | 59 + .../sasmodels/SasView_superball_aniso.tex | 65 + .../sasmodels/SasView_surface_fractal.tex | 59 + .../sasmodels/SasView_teubner_strey.tex | 59 + .../sasmodels/SasView_triaxial_ellipsoid.tex | 62 + .../SasView_triaxial_ellipsoid_aniso.tex | 68 + .../sasmodels/SasView_two_lorentzian.tex | 62 + .../sasmodels/SasView_two_power_law.tex | 58 + .../mcstas/sasmodels/SasView_vesicle.tex | 61 + docs/manuals/mcstas/sources/Adapt_check.tex | 41 + docs/manuals/mcstas/sources/ESS_butterfly.tex | 110 + docs/manuals/mcstas/sources/ESS_moderator.tex | 84 + docs/manuals/mcstas/sources/Moderator.tex | 45 + .../mcstas/sources/Monitor_Optimizer.tex | 48 + docs/manuals/mcstas/sources/Source_4PI.tex | 39 + .../mcstas/sources/Source_Maxwell_3.tex | 59 + .../mcstas/sources/Source_Optimizer.tex | 104 + docs/manuals/mcstas/sources/Source_adapt.tex | 81 + docs/manuals/mcstas/sources/Source_div.tex | 63 + .../mcstas/sources/Source_div_quasi.tex | 65 + docs/manuals/mcstas/sources/Source_gen.tex | 124 + docs/manuals/mcstas/sources/Source_simple.tex | 55 + .../manuals/mcstas/union/AF_HB_1D_process.tex | 58 + .../mcstas/union/IncoherentPhonon_process.tex | 61 + .../mcstas/union/Incoherent_process.tex | 58 + docs/manuals/mcstas/union/Mirror_surface.tex | 62 + .../manuals/mcstas/union/NCrystal_process.tex | 72 + docs/manuals/mcstas/union/Non_process.tex | 55 + .../mcstas/union/PhononSimple_process.tex | 63 + docs/manuals/mcstas/union/Powder_process.tex | 63 + .../mcstas/union/Single_crystal_process.tex | 79 + .../manuals/mcstas/union/Template_process.tex | 58 + .../manuals/mcstas/union/Template_surface.tex | 64 + docs/manuals/mcstas/union/Texture_process.tex | 54 + .../union/Union_abs_logger_1D_space.tex | 83 + .../union/Union_abs_logger_1D_space_event.tex | 93 + .../union/Union_abs_logger_1D_space_tof.tex | 86 + ...nion_abs_logger_1D_space_tof_to_lambda.tex | 117 + .../mcstas/union/Union_abs_logger_1D_time.tex | 84 + .../union/Union_abs_logger_2D_space.tex | 93 + .../mcstas/union/Union_abs_logger_event.tex | 83 + .../mcstas/union/Union_abs_logger_nD.tex | 107 + docs/manuals/mcstas/union/Union_box.tex | 83 + .../mcstas/union/Union_conditional_PSD.tex | 73 + .../union/Union_conditional_standard.tex | 73 + docs/manuals/mcstas/union/Union_cone.tex | 76 + docs/manuals/mcstas/union/Union_cylinder.tex | 74 + docs/manuals/mcstas/union/Union_init.tex | 47 + docs/manuals/mcstas/union/Union_logger_1D.tex | 73 + .../manuals/mcstas/union/Union_logger_2DQ.tex | 76 + .../mcstas/union/Union_logger_2D_kf.tex | 77 + .../mcstas/union/Union_logger_2D_kf_time.tex | 81 + .../mcstas/union/Union_logger_2D_space.tex | 78 + .../union/Union_logger_2D_space_time.tex | 81 + .../mcstas/union/Union_logger_3D_space.tex | 82 + .../mcstas/union/Union_make_material.tex | 55 + docs/manuals/mcstas/union/Union_master.tex | 59 + .../manuals/mcstas/union/Union_master_GPU.tex | 56 + docs/manuals/mcstas/union/Union_mesh.tex | 80 + docs/manuals/mcstas/union/Union_sphere.tex | 69 + docs/manuals/mcstas/union/Union_stop.tex | 47 + 370 files changed, 25852 insertions(+) create mode 100644 docs/manuals/mcstas/contrib/Al_window.tex create mode 100644 docs/manuals/mcstas/contrib/CavitiesIn.tex create mode 100644 docs/manuals/mcstas/contrib/CavitiesOut.tex create mode 100644 docs/manuals/mcstas/contrib/Collimator_ROC.tex create mode 100644 docs/manuals/mcstas/contrib/Commodus_I3.tex create mode 100644 docs/manuals/mcstas/contrib/Conics_EH.tex create mode 100644 docs/manuals/mcstas/contrib/Conics_HE.tex create mode 100644 docs/manuals/mcstas/contrib/Conics_PH.tex create mode 100644 docs/manuals/mcstas/contrib/Conics_PP.tex create mode 100644 docs/manuals/mcstas/contrib/E_4PI.tex create mode 100644 docs/manuals/mcstas/contrib/Exact_radial_coll.tex create mode 100644 docs/manuals/mcstas/contrib/FermiChopper_ILL.tex create mode 100644 docs/manuals/mcstas/contrib/Fermi_chop2a.tex create mode 100644 docs/manuals/mcstas/contrib/Filter_graphite.tex create mode 100644 docs/manuals/mcstas/contrib/FlatEllipse_finite_mirror.tex create mode 100644 docs/manuals/mcstas/contrib/Foil_flipper_magnet.tex create mode 100644 docs/manuals/mcstas/contrib/GISANS_sample.tex create mode 100644 docs/manuals/mcstas/contrib/Guide_anyshape_r.tex create mode 100644 docs/manuals/mcstas/contrib/Guide_curved.tex create mode 100644 docs/manuals/mcstas/contrib/Guide_four_side.tex create mode 100644 docs/manuals/mcstas/contrib/Guide_gravity_psd.tex create mode 100644 docs/manuals/mcstas/contrib/Guide_honeycomb.tex create mode 100644 docs/manuals/mcstas/contrib/Guide_m.tex create mode 100644 docs/manuals/mcstas/contrib/Guide_multichannel.tex create mode 100644 docs/manuals/mcstas/contrib/ISIS_moderator.tex create mode 100644 docs/manuals/mcstas/contrib/Lens.tex create mode 100644 docs/manuals/mcstas/contrib/Lens_simple.tex create mode 100644 docs/manuals/mcstas/contrib/Mirror_Curved_Bispectral.tex create mode 100644 docs/manuals/mcstas/contrib/Mirror_Elliptic.tex create mode 100644 docs/manuals/mcstas/contrib/Mirror_Elliptic_Bispectral.tex create mode 100644 docs/manuals/mcstas/contrib/Mirror_Parabolic.tex create mode 100644 docs/manuals/mcstas/contrib/Monochromator_2foc.tex create mode 100644 docs/manuals/mcstas/contrib/Monochromator_bent.tex create mode 100644 docs/manuals/mcstas/contrib/Monochromator_bent_complex.tex create mode 100644 docs/manuals/mcstas/contrib/MultiDiskChopper.tex create mode 100644 docs/manuals/mcstas/contrib/Multilayer_Sample.tex create mode 100644 docs/manuals/mcstas/contrib/NMO.tex create mode 100644 docs/manuals/mcstas/contrib/NPI_tof_dhkl_detector.tex create mode 100644 docs/manuals/mcstas/contrib/NPI_tof_theta_monitor.tex create mode 100644 docs/manuals/mcstas/contrib/PSD_Detector.tex create mode 100644 docs/manuals/mcstas/contrib/PSD_Pol_monitor.tex create mode 100644 docs/manuals/mcstas/contrib/PSD_monitor_rad.tex create mode 100644 docs/manuals/mcstas/contrib/PSD_spinDmon.tex create mode 100644 docs/manuals/mcstas/contrib/PSD_spinUmon.tex create mode 100644 docs/manuals/mcstas/contrib/PerfectCrystal.tex create mode 100644 docs/manuals/mcstas/contrib/Pol_bender_tapering.tex create mode 100644 docs/manuals/mcstas/contrib/Pol_pi_2_rotator.tex create mode 100644 docs/manuals/mcstas/contrib/Pol_triafield.tex create mode 100644 docs/manuals/mcstas/contrib/Radial_div.tex create mode 100644 docs/manuals/mcstas/contrib/SANSCurve.tex create mode 100644 docs/manuals/mcstas/contrib/SANSCylinders.tex create mode 100644 docs/manuals/mcstas/contrib/SANSEllipticCylinders.tex create mode 100644 docs/manuals/mcstas/contrib/SANSLiposomes.tex create mode 100644 docs/manuals/mcstas/contrib/SANSNanodiscs.tex create mode 100644 docs/manuals/mcstas/contrib/SANSNanodiscsFast.tex create mode 100644 docs/manuals/mcstas/contrib/SANSNanodiscsWithTags.tex create mode 100644 docs/manuals/mcstas/contrib/SANSNanodiscsWithTagsFast.tex create mode 100644 docs/manuals/mcstas/contrib/SANSPDB.tex create mode 100644 docs/manuals/mcstas/contrib/SANSPDBFast.tex create mode 100644 docs/manuals/mcstas/contrib/SANSQMonitor.tex create mode 100644 docs/manuals/mcstas/contrib/SANSShells.tex create mode 100644 docs/manuals/mcstas/contrib/SANSSpheres.tex create mode 100644 docs/manuals/mcstas/contrib/SANSSpheresPolydisperse.tex create mode 100644 docs/manuals/mcstas/contrib/SANS_AnySamp.tex create mode 100644 docs/manuals/mcstas/contrib/SANS_DebyeS.tex create mode 100644 docs/manuals/mcstas/contrib/SANS_Guinier.tex create mode 100644 docs/manuals/mcstas/contrib/SANS_Liposomes_Abs.tex create mode 100644 docs/manuals/mcstas/contrib/SANS_benchmark2.tex create mode 100644 docs/manuals/mcstas/contrib/SNS_source.tex create mode 100644 docs/manuals/mcstas/contrib/SNS_source_analytic.tex create mode 100644 docs/manuals/mcstas/contrib/Sans_liposomes_new.tex create mode 100644 docs/manuals/mcstas/contrib/Sapphire_Filter.tex create mode 100644 docs/manuals/mcstas/contrib/SiC.tex create mode 100644 docs/manuals/mcstas/contrib/Single_crystal_inelastic.tex create mode 100644 docs/manuals/mcstas/contrib/Source_custom.tex create mode 100644 docs/manuals/mcstas/contrib/Source_gen4.tex create mode 100644 docs/manuals/mcstas/contrib/Source_multi_surfaces.tex create mode 100644 docs/manuals/mcstas/contrib/Source_pulsed.tex create mode 100644 docs/manuals/mcstas/contrib/Spherical_Backscattering_Analyser.tex create mode 100644 docs/manuals/mcstas/contrib/Spin_random.tex create mode 100644 docs/manuals/mcstas/contrib/Spot_sample.tex create mode 100644 docs/manuals/mcstas/contrib/StatisticalChopper.tex create mode 100644 docs/manuals/mcstas/contrib/StatisticalChopper_Monitor.tex create mode 100644 docs/manuals/mcstas/contrib/SupermirrorFlat.tex create mode 100644 docs/manuals/mcstas/contrib/TOF2Q_cyl_monitor.tex create mode 100644 docs/manuals/mcstas/contrib/TOFSANSdet.tex create mode 100644 docs/manuals/mcstas/contrib/TOF_PSDmonitor.tex create mode 100644 docs/manuals/mcstas/contrib/TOF_PSDmonitor_toQ.tex create mode 100644 docs/manuals/mcstas/contrib/Transmission_V_polarisator.tex create mode 100644 docs/manuals/mcstas/contrib/Transmission_polarisatorABSnT.tex create mode 100644 docs/manuals/mcstas/contrib/Vertical_Bender.tex create mode 100644 docs/manuals/mcstas/contrib/Vertical_T0a.tex create mode 100644 docs/manuals/mcstas/contrib/ViewModISIS.tex create mode 100644 docs/manuals/mcstas/contrib/multi_pipe.tex create mode 100644 docs/manuals/mcstas/misc/Annulus.tex create mode 100644 docs/manuals/mcstas/misc/Circle.tex create mode 100644 docs/manuals/mcstas/misc/Cone.tex create mode 100644 docs/manuals/mcstas/misc/Disc.tex create mode 100644 docs/manuals/mcstas/misc/File.tex create mode 100644 docs/manuals/mcstas/misc/Legacy_circle.tex create mode 100644 docs/manuals/mcstas/misc/MCPL_input.tex create mode 100644 docs/manuals/mcstas/misc/MCPL_input_once.tex create mode 100644 docs/manuals/mcstas/misc/MCPL_output.tex create mode 100644 docs/manuals/mcstas/misc/MCPL_output_noacc.tex create mode 100644 docs/manuals/mcstas/misc/Progress_bar.tex create mode 100644 docs/manuals/mcstas/misc/Shape.tex create mode 100644 docs/manuals/mcstas/misc/Shape_simple.tex create mode 100644 docs/manuals/mcstas/monitors/Brilliance_monitor.tex create mode 100644 docs/manuals/mcstas/monitors/Cyl_monitor.tex create mode 100644 docs/manuals/mcstas/monitors/Cyl_monitor_PSD.tex create mode 100644 docs/manuals/mcstas/monitors/Cyl_monitor_TOF.tex create mode 100644 docs/manuals/mcstas/monitors/Div1D_monitor.tex create mode 100644 docs/manuals/mcstas/monitors/DivLambda_monitor.tex create mode 100644 docs/manuals/mcstas/monitors/DivPos_monitor.tex create mode 100644 docs/manuals/mcstas/monitors/Divergence_monitor.tex create mode 100644 docs/manuals/mcstas/monitors/EPSD_monitor.tex create mode 100644 docs/manuals/mcstas/monitors/E_monitor.tex create mode 100644 docs/manuals/mcstas/monitors/Event_monitor_simple.tex create mode 100644 docs/manuals/mcstas/monitors/Flex_monitor_1D.tex create mode 100644 docs/manuals/mcstas/monitors/Flex_monitor_2D.tex create mode 100644 docs/manuals/mcstas/monitors/Flex_monitor_3D.tex create mode 100644 docs/manuals/mcstas/monitors/L_monitor.tex create mode 100644 docs/manuals/mcstas/monitors/MeanPolLambda_monitor.tex create mode 100644 docs/manuals/mcstas/monitors/Monitor.tex create mode 100644 docs/manuals/mcstas/monitors/Monitor_4PI.tex create mode 100644 docs/manuals/mcstas/monitors/Monitor_nD.tex create mode 100644 docs/manuals/mcstas/monitors/Monitor_nD_noacc.tex create mode 100644 docs/manuals/mcstas/monitors/PSD_TOF_monitor.tex create mode 100644 docs/manuals/mcstas/monitors/PSD_monitor.tex create mode 100644 docs/manuals/mcstas/monitors/PSD_monitor_4PI.tex create mode 100644 docs/manuals/mcstas/monitors/PSD_monitor_4PI_spin.tex create mode 100644 docs/manuals/mcstas/monitors/PSD_monitor_TOF.tex create mode 100644 docs/manuals/mcstas/monitors/PSD_monitor_psf.tex create mode 100644 docs/manuals/mcstas/monitors/PSD_monitor_psf_eff.tex create mode 100644 docs/manuals/mcstas/monitors/PSDcyl_monitor.tex create mode 100644 docs/manuals/mcstas/monitors/PSDlin_diff_monitor.tex create mode 100644 docs/manuals/mcstas/monitors/PSDlin_monitor.tex create mode 100644 docs/manuals/mcstas/monitors/PolLambda_monitor.tex create mode 100644 docs/manuals/mcstas/monitors/Pol_monitor.tex create mode 100644 docs/manuals/mcstas/monitors/Res_monitor.tex create mode 100644 docs/manuals/mcstas/monitors/Sqq_w_monitor.tex create mode 100644 docs/manuals/mcstas/monitors/Sqw_monitor.tex create mode 100644 docs/manuals/mcstas/monitors/TOF2E_monitor.tex create mode 100644 docs/manuals/mcstas/monitors/TOF2Q_cylPSD_monitor.tex create mode 100644 docs/manuals/mcstas/monitors/TOFLambda_monitor.tex create mode 100644 docs/manuals/mcstas/monitors/TOFRes_monitor.tex create mode 100644 docs/manuals/mcstas/monitors/TOF_PSD_monitor_rad.tex create mode 100644 docs/manuals/mcstas/monitors/TOF_cylPSD_monitor.tex create mode 100644 docs/manuals/mcstas/monitors/TOF_monitor.tex create mode 100644 docs/manuals/mcstas/monitors/TOFlog_monitor.tex create mode 100644 docs/manuals/mcstas/obsolete/Beam_spy.tex create mode 100644 docs/manuals/mcstas/obsolete/ESS_moderator_short.tex create mode 100644 docs/manuals/mcstas/obsolete/V_sample.tex create mode 100644 docs/manuals/mcstas/obsolete/Virtual_input.tex create mode 100644 docs/manuals/mcstas/obsolete/Virtual_mcnp_input.tex create mode 100644 docs/manuals/mcstas/obsolete/Virtual_mcnp_output.tex create mode 100644 docs/manuals/mcstas/obsolete/Virtual_mcnp_ss_Guide.tex create mode 100644 docs/manuals/mcstas/obsolete/Virtual_mcnp_ss_input.tex create mode 100644 docs/manuals/mcstas/obsolete/Virtual_mcnp_ss_output.tex create mode 100644 docs/manuals/mcstas/obsolete/Virtual_output.tex create mode 100644 docs/manuals/mcstas/obsolete/Virtual_tripoli4_input.tex create mode 100644 docs/manuals/mcstas/obsolete/Virtual_tripoli4_output.tex create mode 100644 docs/manuals/mcstas/obsolete/Vitess_input.tex create mode 100644 docs/manuals/mcstas/obsolete/Vitess_output.tex create mode 100644 docs/manuals/mcstas/optics/Absorber.tex create mode 100644 docs/manuals/mcstas/optics/Arm.tex create mode 100644 docs/manuals/mcstas/optics/Beamstop.tex create mode 100644 docs/manuals/mcstas/optics/Bender.tex create mode 100644 docs/manuals/mcstas/optics/Collimator_linear.tex create mode 100644 docs/manuals/mcstas/optics/Collimator_radial.tex create mode 100644 docs/manuals/mcstas/optics/Derotator.tex create mode 100644 docs/manuals/mcstas/optics/Diaphragm.tex create mode 100644 docs/manuals/mcstas/optics/DiskChopper.tex create mode 100644 docs/manuals/mcstas/optics/Elliptic_guide_gravity.tex create mode 100644 docs/manuals/mcstas/optics/FZP_simple.tex create mode 100644 docs/manuals/mcstas/optics/FermiChopper.tex create mode 100644 docs/manuals/mcstas/optics/Filter_gen.tex create mode 100644 docs/manuals/mcstas/optics/Guide.tex create mode 100644 docs/manuals/mcstas/optics/Guide_anyshape.tex create mode 100644 docs/manuals/mcstas/optics/Guide_channeled.tex create mode 100644 docs/manuals/mcstas/optics/Guide_gravity.tex create mode 100644 docs/manuals/mcstas/optics/Guide_simple.tex create mode 100644 docs/manuals/mcstas/optics/Guide_tapering.tex create mode 100644 docs/manuals/mcstas/optics/Guide_wavy.tex create mode 100644 docs/manuals/mcstas/optics/He3_cell.tex create mode 100644 docs/manuals/mcstas/optics/Mask.tex create mode 100644 docs/manuals/mcstas/optics/Mirror.tex create mode 100644 docs/manuals/mcstas/optics/Monochromator_curved.tex create mode 100644 docs/manuals/mcstas/optics/Monochromator_flat.tex create mode 100644 docs/manuals/mcstas/optics/Monochromator_pol.tex create mode 100644 docs/manuals/mcstas/optics/Place.tex create mode 100644 docs/manuals/mcstas/optics/PolAnalyser_ideal.tex create mode 100644 docs/manuals/mcstas/optics/Pol_Bfield.tex create mode 100644 docs/manuals/mcstas/optics/Pol_Bfield_stop.tex create mode 100644 docs/manuals/mcstas/optics/Pol_FieldBox.tex create mode 100644 docs/manuals/mcstas/optics/Pol_SF_ideal.tex create mode 100644 docs/manuals/mcstas/optics/Pol_bender.tex create mode 100644 docs/manuals/mcstas/optics/Pol_constBfield.tex create mode 100644 docs/manuals/mcstas/optics/Pol_guide_mirror.tex create mode 100644 docs/manuals/mcstas/optics/Pol_guide_vmirror.tex create mode 100644 docs/manuals/mcstas/optics/Pol_mirror.tex create mode 100644 docs/manuals/mcstas/optics/Pol_tabled_field.tex create mode 100644 docs/manuals/mcstas/optics/Refractor.tex create mode 100644 docs/manuals/mcstas/optics/Rotator.tex create mode 100644 docs/manuals/mcstas/optics/Selector.tex create mode 100644 docs/manuals/mcstas/optics/Set_pol.tex create mode 100644 docs/manuals/mcstas/optics/Slit.tex create mode 100644 docs/manuals/mcstas/optics/V_selector.tex create mode 100644 docs/manuals/mcstas/optics/Vitess_ChopperFermi.tex create mode 100644 docs/manuals/mcstas/samples/Incoherent.tex create mode 100644 docs/manuals/mcstas/samples/Isotropic_Sqw.tex create mode 100644 docs/manuals/mcstas/samples/Magnon_bcc.tex create mode 100644 docs/manuals/mcstas/samples/NCrystal_sample.tex create mode 100644 docs/manuals/mcstas/samples/Phonon_simple.tex create mode 100644 docs/manuals/mcstas/samples/Powder1.tex create mode 100644 docs/manuals/mcstas/samples/PowderN.tex create mode 100644 docs/manuals/mcstas/samples/Res_sample.tex create mode 100644 docs/manuals/mcstas/samples/SANS_spheres2.tex create mode 100644 docs/manuals/mcstas/samples/Sans_spheres.tex create mode 100644 docs/manuals/mcstas/samples/SasView_model.tex create mode 100644 docs/manuals/mcstas/samples/Single_crystal.tex create mode 100644 docs/manuals/mcstas/samples/Single_magnetic_crystal.tex create mode 100644 docs/manuals/mcstas/samples/TOFRes_sample.tex create mode 100644 docs/manuals/mcstas/samples/Tunneling_sample.tex create mode 100644 docs/manuals/mcstas/sasmodels/SasView_adsorbed_layer.tex create mode 100644 docs/manuals/mcstas/sasmodels/SasView_barbell.tex create mode 100644 docs/manuals/mcstas/sasmodels/SasView_barbell_aniso.tex create mode 100644 docs/manuals/mcstas/sasmodels/SasView_bcc_paracrystal.tex create mode 100644 docs/manuals/mcstas/sasmodels/SasView_bcc_paracrystal_aniso.tex create mode 100644 docs/manuals/mcstas/sasmodels/SasView_binary_hard_sphere.tex create mode 100644 docs/manuals/mcstas/sasmodels/SasView_broad_peak.tex create mode 100644 docs/manuals/mcstas/sasmodels/SasView_capped_cylinder.tex create mode 100644 docs/manuals/mcstas/sasmodels/SasView_capped_cylinder_aniso.tex create mode 100644 docs/manuals/mcstas/sasmodels/SasView_core_multi_shell.tex create mode 100644 docs/manuals/mcstas/sasmodels/SasView_core_shell_bicelle.tex create mode 100644 docs/manuals/mcstas/sasmodels/SasView_core_shell_bicelle_aniso.tex create mode 100644 docs/manuals/mcstas/sasmodels/SasView_core_shell_bicelle_elliptical.tex create mode 100644 docs/manuals/mcstas/sasmodels/SasView_core_shell_bicelle_elliptical_aniso.tex create mode 100644 docs/manuals/mcstas/sasmodels/SasView_core_shell_bicelle_elliptical_belt_rough.tex create mode 100644 docs/manuals/mcstas/sasmodels/SasView_core_shell_bicelle_elliptical_belt_rough_aniso.tex create mode 100644 docs/manuals/mcstas/sasmodels/SasView_core_shell_cylinder.tex create mode 100644 docs/manuals/mcstas/sasmodels/SasView_core_shell_cylinder_aniso.tex create mode 100644 docs/manuals/mcstas/sasmodels/SasView_core_shell_ellipsoid.tex create mode 100644 docs/manuals/mcstas/sasmodels/SasView_core_shell_ellipsoid_aniso.tex create mode 100644 docs/manuals/mcstas/sasmodels/SasView_core_shell_parallelepiped.tex create mode 100644 docs/manuals/mcstas/sasmodels/SasView_core_shell_parallelepiped_aniso.tex create mode 100644 docs/manuals/mcstas/sasmodels/SasView_core_shell_sphere.tex create mode 100644 docs/manuals/mcstas/sasmodels/SasView_correlation_length.tex create mode 100644 docs/manuals/mcstas/sasmodels/SasView_cylinder.tex create mode 100644 docs/manuals/mcstas/sasmodels/SasView_cylinder_aniso.tex create mode 100644 docs/manuals/mcstas/sasmodels/SasView_dab.tex create mode 100644 docs/manuals/mcstas/sasmodels/SasView_ellipsoid.tex create mode 100644 docs/manuals/mcstas/sasmodels/SasView_ellipsoid_aniso.tex create mode 100644 docs/manuals/mcstas/sasmodels/SasView_elliptical_cylinder.tex create mode 100644 docs/manuals/mcstas/sasmodels/SasView_elliptical_cylinder_aniso.tex create mode 100644 docs/manuals/mcstas/sasmodels/SasView_fcc_paracrystal.tex create mode 100644 docs/manuals/mcstas/sasmodels/SasView_fcc_paracrystal_aniso.tex create mode 100644 docs/manuals/mcstas/sasmodels/SasView_flexible_cylinder.tex create mode 100644 docs/manuals/mcstas/sasmodels/SasView_flexible_cylinder_elliptical.tex create mode 100644 docs/manuals/mcstas/sasmodels/SasView_fractal.tex create mode 100644 docs/manuals/mcstas/sasmodels/SasView_fractal_core_shell.tex create mode 100644 docs/manuals/mcstas/sasmodels/SasView_fuzzy_sphere.tex create mode 100644 docs/manuals/mcstas/sasmodels/SasView_gauss_lorentz_gel.tex create mode 100644 docs/manuals/mcstas/sasmodels/SasView_gaussian_peak.tex create mode 100644 docs/manuals/mcstas/sasmodels/SasView_gel_fit.tex create mode 100644 docs/manuals/mcstas/sasmodels/SasView_guinier.tex create mode 100644 docs/manuals/mcstas/sasmodels/SasView_guinier_porod.tex create mode 100644 docs/manuals/mcstas/sasmodels/SasView_hardsphere.tex create mode 100644 docs/manuals/mcstas/sasmodels/SasView_hayter_msa.tex create mode 100644 docs/manuals/mcstas/sasmodels/SasView_hollow_cylinder.tex create mode 100644 docs/manuals/mcstas/sasmodels/SasView_hollow_cylinder_aniso.tex create mode 100644 docs/manuals/mcstas/sasmodels/SasView_hollow_rectangular_prism.tex create mode 100644 docs/manuals/mcstas/sasmodels/SasView_hollow_rectangular_prism_aniso.tex create mode 100644 docs/manuals/mcstas/sasmodels/SasView_hollow_rectangular_prism_thin_walls.tex create mode 100644 docs/manuals/mcstas/sasmodels/SasView_lamellar_hg.tex create mode 100644 docs/manuals/mcstas/sasmodels/SasView_lamellar_hg_stack_caille.tex create mode 100644 docs/manuals/mcstas/sasmodels/SasView_lamellar_stack_caille.tex create mode 100644 docs/manuals/mcstas/sasmodels/SasView_lamellar_stack_paracrystal.tex create mode 100644 docs/manuals/mcstas/sasmodels/SasView_line.tex create mode 100644 docs/manuals/mcstas/sasmodels/SasView_linear_pearls.tex create mode 100644 docs/manuals/mcstas/sasmodels/SasView_lorentz.tex create mode 100644 docs/manuals/mcstas/sasmodels/SasView_mass_fractal.tex create mode 100644 docs/manuals/mcstas/sasmodels/SasView_mass_surface_fractal.tex create mode 100644 docs/manuals/mcstas/sasmodels/SasView_mono_gauss_coil.tex create mode 100644 docs/manuals/mcstas/sasmodels/SasView_multilayer_vesicle.tex create mode 100644 docs/manuals/mcstas/sasmodels/SasView_onion.tex create mode 100644 docs/manuals/mcstas/sasmodels/SasView_parallelepiped.tex create mode 100644 docs/manuals/mcstas/sasmodels/SasView_parallelepiped_aniso.tex create mode 100644 docs/manuals/mcstas/sasmodels/SasView_peak_lorentz.tex create mode 100644 docs/manuals/mcstas/sasmodels/SasView_pearl_necklace.tex create mode 100644 docs/manuals/mcstas/sasmodels/SasView_poly_gauss_coil.tex create mode 100644 docs/manuals/mcstas/sasmodels/SasView_polymer_excl_volume.tex create mode 100644 docs/manuals/mcstas/sasmodels/SasView_polymer_micelle.tex create mode 100644 docs/manuals/mcstas/sasmodels/SasView_porod.tex create mode 100644 docs/manuals/mcstas/sasmodels/SasView_power_law.tex create mode 100644 docs/manuals/mcstas/sasmodels/SasView_pringle.tex create mode 100644 docs/manuals/mcstas/sasmodels/SasView_raspberry.tex create mode 100644 docs/manuals/mcstas/sasmodels/SasView_rectangular_prism.tex create mode 100644 docs/manuals/mcstas/sasmodels/SasView_rectangular_prism_aniso.tex create mode 100644 docs/manuals/mcstas/sasmodels/SasView_rpa.tex create mode 100644 docs/manuals/mcstas/sasmodels/SasView_sc_paracrystal.tex create mode 100644 docs/manuals/mcstas/sasmodels/SasView_sc_paracrystal_aniso.tex create mode 100644 docs/manuals/mcstas/sasmodels/SasView_sphere.tex create mode 100644 docs/manuals/mcstas/sasmodels/SasView_spinodal.tex create mode 100644 docs/manuals/mcstas/sasmodels/SasView_squarewell.tex create mode 100644 docs/manuals/mcstas/sasmodels/SasView_stacked_disks.tex create mode 100644 docs/manuals/mcstas/sasmodels/SasView_stacked_disks_aniso.tex create mode 100644 docs/manuals/mcstas/sasmodels/SasView_star_polymer.tex create mode 100644 docs/manuals/mcstas/sasmodels/SasView_stickyhardsphere.tex create mode 100644 docs/manuals/mcstas/sasmodels/SasView_superball.tex create mode 100644 docs/manuals/mcstas/sasmodels/SasView_superball_aniso.tex create mode 100644 docs/manuals/mcstas/sasmodels/SasView_surface_fractal.tex create mode 100644 docs/manuals/mcstas/sasmodels/SasView_teubner_strey.tex create mode 100644 docs/manuals/mcstas/sasmodels/SasView_triaxial_ellipsoid.tex create mode 100644 docs/manuals/mcstas/sasmodels/SasView_triaxial_ellipsoid_aniso.tex create mode 100644 docs/manuals/mcstas/sasmodels/SasView_two_lorentzian.tex create mode 100644 docs/manuals/mcstas/sasmodels/SasView_two_power_law.tex create mode 100644 docs/manuals/mcstas/sasmodels/SasView_vesicle.tex create mode 100644 docs/manuals/mcstas/sources/Adapt_check.tex create mode 100644 docs/manuals/mcstas/sources/ESS_butterfly.tex create mode 100644 docs/manuals/mcstas/sources/ESS_moderator.tex create mode 100644 docs/manuals/mcstas/sources/Moderator.tex create mode 100644 docs/manuals/mcstas/sources/Monitor_Optimizer.tex create mode 100644 docs/manuals/mcstas/sources/Source_4PI.tex create mode 100644 docs/manuals/mcstas/sources/Source_Maxwell_3.tex create mode 100644 docs/manuals/mcstas/sources/Source_Optimizer.tex create mode 100644 docs/manuals/mcstas/sources/Source_adapt.tex create mode 100644 docs/manuals/mcstas/sources/Source_div.tex create mode 100644 docs/manuals/mcstas/sources/Source_div_quasi.tex create mode 100644 docs/manuals/mcstas/sources/Source_gen.tex create mode 100644 docs/manuals/mcstas/sources/Source_simple.tex create mode 100644 docs/manuals/mcstas/union/AF_HB_1D_process.tex create mode 100644 docs/manuals/mcstas/union/IncoherentPhonon_process.tex create mode 100644 docs/manuals/mcstas/union/Incoherent_process.tex create mode 100644 docs/manuals/mcstas/union/Mirror_surface.tex create mode 100644 docs/manuals/mcstas/union/NCrystal_process.tex create mode 100644 docs/manuals/mcstas/union/Non_process.tex create mode 100644 docs/manuals/mcstas/union/PhononSimple_process.tex create mode 100644 docs/manuals/mcstas/union/Powder_process.tex create mode 100644 docs/manuals/mcstas/union/Single_crystal_process.tex create mode 100644 docs/manuals/mcstas/union/Template_process.tex create mode 100644 docs/manuals/mcstas/union/Template_surface.tex create mode 100644 docs/manuals/mcstas/union/Texture_process.tex create mode 100644 docs/manuals/mcstas/union/Union_abs_logger_1D_space.tex create mode 100644 docs/manuals/mcstas/union/Union_abs_logger_1D_space_event.tex create mode 100644 docs/manuals/mcstas/union/Union_abs_logger_1D_space_tof.tex create mode 100644 docs/manuals/mcstas/union/Union_abs_logger_1D_space_tof_to_lambda.tex create mode 100644 docs/manuals/mcstas/union/Union_abs_logger_1D_time.tex create mode 100644 docs/manuals/mcstas/union/Union_abs_logger_2D_space.tex create mode 100644 docs/manuals/mcstas/union/Union_abs_logger_event.tex create mode 100644 docs/manuals/mcstas/union/Union_abs_logger_nD.tex create mode 100644 docs/manuals/mcstas/union/Union_box.tex create mode 100644 docs/manuals/mcstas/union/Union_conditional_PSD.tex create mode 100644 docs/manuals/mcstas/union/Union_conditional_standard.tex create mode 100644 docs/manuals/mcstas/union/Union_cone.tex create mode 100644 docs/manuals/mcstas/union/Union_cylinder.tex create mode 100644 docs/manuals/mcstas/union/Union_init.tex create mode 100644 docs/manuals/mcstas/union/Union_logger_1D.tex create mode 100644 docs/manuals/mcstas/union/Union_logger_2DQ.tex create mode 100644 docs/manuals/mcstas/union/Union_logger_2D_kf.tex create mode 100644 docs/manuals/mcstas/union/Union_logger_2D_kf_time.tex create mode 100644 docs/manuals/mcstas/union/Union_logger_2D_space.tex create mode 100644 docs/manuals/mcstas/union/Union_logger_2D_space_time.tex create mode 100644 docs/manuals/mcstas/union/Union_logger_3D_space.tex create mode 100644 docs/manuals/mcstas/union/Union_make_material.tex create mode 100644 docs/manuals/mcstas/union/Union_master.tex create mode 100644 docs/manuals/mcstas/union/Union_master_GPU.tex create mode 100644 docs/manuals/mcstas/union/Union_mesh.tex create mode 100644 docs/manuals/mcstas/union/Union_sphere.tex create mode 100644 docs/manuals/mcstas/union/Union_stop.tex diff --git a/docs/manuals/mcstas/contrib/Al_window.tex b/docs/manuals/mcstas/contrib/Al_window.tex new file mode 100644 index 000000000..58e4f655f --- /dev/null +++ b/docs/manuals/mcstas/contrib/Al_window.tex @@ -0,0 +1,38 @@ +\section{The \texttt{Al\_window} McStas Component} +Aluminium window in the beam + +\subsection*{Identification} +\begin{itemize} + \item \textbf{Site:} + \item \textbf{Author:} S. Roth + \item \textbf{Origin:} FRM-II + \item \textbf{Date:} Jul 31, 2001 +\end{itemize} + +\subsection*{Description} +\begin{lstlisting} +Aluminium window in the beam + +Example: Al_window(thickness=0.002) + +%BUGS +Only handles the absorption, and window has infinite width/height +\end{lstlisting} + +\subsection*{Input parameters} +Parameters in \textbf{boldface} are required; the others are optional. + +\begin{longtable}{p{0.22\textwidth}p{0.12\textwidth}p{0.46\textwidth}p{0.14\textwidth}} +\toprule +\textbf{Name} & \textbf{Unit} & \textbf{Description} & \textbf{Default} \\ +\midrule +\endhead +thickness & m & Al Window thickness & 0.001 \\ +\bottomrule +\end{longtable} + +\subsection*{Links} +\begin{itemize} + \item \href{run:/home/willend/willend-McCode/mcstas-comps/contrib/Al_window.comp}{Source code} for \texttt{Al\_window.comp}. +\end{itemize} +\IfFileExists{Al_window_static.tex}{\input{Al_window_static.tex}}{} \ No newline at end of file diff --git a/docs/manuals/mcstas/contrib/CavitiesIn.tex b/docs/manuals/mcstas/contrib/CavitiesIn.tex new file mode 100644 index 000000000..f4fa78e89 --- /dev/null +++ b/docs/manuals/mcstas/contrib/CavitiesIn.tex @@ -0,0 +1,40 @@ +\section{The \texttt{CavitiesIn} McStas Component} +Slit - sorting in channels + +\subsection*{Identification} +\begin{itemize} + \item \textbf{Site:} + \item \textbf{Author:} Henrich Frielinghaus + \item \textbf{Origin:} JCNS - FZ-Juelich + \item \textbf{Date:} Oct 2007 +\end{itemize} + +\subsection*{Description} +\begin{lstlisting} +This routine sorts the 'full' neutron beam (given by xw,yw) +in xc,yc channels. These can be imagined as cavities. +CavitiesOut sorts these channels back to normal coordinates. + +Example: Slit(xw=0.05, yw=0.05, xc=4, yc=1) +\end{lstlisting} + +\subsection*{Input parameters} +Parameters in \textbf{boldface} are required; the others are optional. + +\begin{longtable}{p{0.22\textwidth}p{0.12\textwidth}p{0.46\textwidth}p{0.14\textwidth}} +\toprule +\textbf{Name} & \textbf{Unit} & \textbf{Description} & \textbf{Default} \\ +\midrule +\endhead +xw & m & width in X-dir & 0.05 \\ +yw & m & width in Y-dir & 0.05 \\ +xc & m & channels in X-dir & 1 \\ +yc & m & channels in Y-dir & 1 \\ +\bottomrule +\end{longtable} + +\subsection*{Links} +\begin{itemize} + \item \href{run:/home/willend/willend-McCode/mcstas-comps/contrib/CavitiesIn.comp}{Source code} for \texttt{CavitiesIn.comp}. +\end{itemize} +\IfFileExists{CavitiesIn_static.tex}{\input{CavitiesIn_static.tex}}{} \ No newline at end of file diff --git a/docs/manuals/mcstas/contrib/CavitiesOut.tex b/docs/manuals/mcstas/contrib/CavitiesOut.tex new file mode 100644 index 000000000..be8db5006 --- /dev/null +++ b/docs/manuals/mcstas/contrib/CavitiesOut.tex @@ -0,0 +1,40 @@ +\section{The \texttt{CavitiesOut} McStas Component} +Slit - sorting in channels + +\subsection*{Identification} +\begin{itemize} + \item \textbf{Site:} + \item \textbf{Author:} Henrich Frielinghaus + \item \textbf{Origin:} JCNS - FZ-Juelich + \item \textbf{Date:} Oct 2007 +\end{itemize} + +\subsection*{Description} +\begin{lstlisting} +This routine sorts the 'full' neutron beam (given by xw,yw) +in xc,yc channels. These can be imagined as cavities. +CavitiesOut sorts these channels back to normal coordinates. + +Example: Slit(xw=0.05, yw=0.05, xc=4, yc=1) +\end{lstlisting} + +\subsection*{Input parameters} +Parameters in \textbf{boldface} are required; the others are optional. + +\begin{longtable}{p{0.22\textwidth}p{0.12\textwidth}p{0.46\textwidth}p{0.14\textwidth}} +\toprule +\textbf{Name} & \textbf{Unit} & \textbf{Description} & \textbf{Default} \\ +\midrule +\endhead +xw & m & width in X-dir (full width, might be larger for trumpets) & 0.05 \\ +yw & m & width in Y-dir (full width, might be larger for trumpets) & 0.05 \\ +xc & 1 & Number of x-channels & 1 \\ +yc & 1 & Number of y-channels & 1 \\ +\bottomrule +\end{longtable} + +\subsection*{Links} +\begin{itemize} + \item \href{run:/home/willend/willend-McCode/mcstas-comps/contrib/CavitiesOut.comp}{Source code} for \texttt{CavitiesOut.comp}. +\end{itemize} +\IfFileExists{CavitiesOut_static.tex}{\input{CavitiesOut_static.tex}}{} \ No newline at end of file diff --git a/docs/manuals/mcstas/contrib/Collimator_ROC.tex b/docs/manuals/mcstas/contrib/Collimator_ROC.tex new file mode 100644 index 000000000..3f3085375 --- /dev/null +++ b/docs/manuals/mcstas/contrib/Collimator_ROC.tex @@ -0,0 +1,58 @@ +\section{The \texttt{Collimator\_ROC} McStas Component} +Radial Oscillationg Collimator (ROC) + +\subsection*{Identification} +\begin{itemize} + \item \textbf{Site:} + \item \textbf{Author:} \textless{}a href="mailto:hansen@ill.fr"\textgreater{}Thomas C Hansen\textless{}/a\textgreater{} + \item \textbf{Origin:} \textless{}a href="http://www.ill.fr"\textgreater{}ILL\textless{}/a\textgreater{} (Dif/\textless{}a href="http://www.ill.fr/YellowBook/D20"\textgreater{}D20\textless{}/a\textgreater{}) + \item \textbf{Date:} 15 May 2000 +\end{itemize} + +\subsection*{Description} +\begin{lstlisting} +ESCRIPTION + +This is an implementation of an Ideal radial oscillating collimator, +which is usually placed between a polycrystalline sample and a linear +curved position sensitive detector on a 2-axis diffractometer like D20. +The transfer function has been implemented analytically, as this is +much more efficient than doing Monte-Caqrlo (MC) choices and to absorb +many neutrons on the absorbing blades. The function is basically triangular +(except for rather 'exotic' focuss apertures) and depends on the distance +from the projection of the focus centre to the plane perpendicular to the +collimator planes to the intersection of the same projection of the velocity +vector of the neutron with a line that is perpendicular to it and containing +the same projection of the focus centre. The oscillation is assumed to be +absolutely regular and so shading each angle the same way. All neutrons not +hitting the collimator core will be absorbed. + +Example: Collimator_ROC( +ROC_pitch=5, ROC_ri=0.15, ROC_ro=0.3, ROC_h=0.15, +ROC_ttmin=-25, ROC_ttmax=135, ROC_sign=-1) +\end{lstlisting} + +\subsection*{Input parameters} +Parameters in \textbf{boldface} are required; the others are optional. + +\begin{longtable}{p{0.22\textwidth}p{0.12\textwidth}p{0.46\textwidth}p{0.14\textwidth}} +\toprule +\textbf{Name} & \textbf{Unit} & \textbf{Description} & \textbf{Default} \\ +\midrule +\endhead +ROC\_pitch & deg & Angular pitch between the absorbing blades & 1 \\ +ROC\_ri & m & Inner radius of the collimator & 0.4 \\ +ROC\_ro & m & Outer radius of the collimator & 1.2 \\ +ROC\_h & m & Height of the collimator & 0.153 \\ +ROC\_ttmin & deg & Lower scattering angle limit & 0 \\ +ROC\_ttmax & deg & Higher scattering angle limit & 100 \\ +ROC\_sign & 1 & Chirality/takeoff sign & 1 \\ +\bottomrule +\end{longtable} + +\subsection*{Links} +\begin{itemize} + \item \href{run:/home/willend/willend-McCode/mcstas-comps/contrib/Collimator_ROC.comp}{Source code} for \texttt{Collimator\_ROC.comp}. + \item \textless{}a href="http://www.ill.fr/d20/"\textgreater{}D20 diffractometer at the ILL\textless{}/a\textgreater{} +\end{itemize} +\IfFileExists{Collimator_ROC_static.tex}{\input{Collimator_ROC_static.tex}}{} \ No newline at end of file diff --git a/docs/manuals/mcstas/contrib/Commodus_I3.tex b/docs/manuals/mcstas/contrib/Commodus_I3.tex new file mode 100644 index 000000000..2aa49451f --- /dev/null +++ b/docs/manuals/mcstas/contrib/Commodus_I3.tex @@ -0,0 +1,58 @@ +\section{The \texttt{Commodus\_I3} McStas Component} +ISIS Moderators (Tested with McStas 3.1 (Windows)) + +\subsection*{Identification} +\begin{itemize} + \item \textbf{Site:} + \item \textbf{Author:} G. Skoro, based on ViewModerator4 from S. Ansell + \item \textbf{Origin:} ISIS + \item \textbf{Date:} July 2022 +\end{itemize} + +\subsection*{Description} +\begin{lstlisting} +Produces a neutron distribution at the ISIS TS1 or TS2 corresponding moderator front face position. +The Face argument determines which TS1 or TS2 beamline is to be sampled by using corresponding file. +Neutrons are created having a range of energies determined by the E0 and E1 arguments. +Trajectories are produced such that they pass through the moderator face (defined by +modXsize and modZsize) and a focusing rectangle (defined by xw, yh and dist). +--- HOW TO USE --- + +Example: Commodus_I3(Face="TS1verBase2016_LH8020_newVM-var_South04_Merlin.mcstas", E0 = E_min, E1 = E_max, +modXsize = 0.12, modZsize = 0.12, xw = 0.094, yh = 0.094, dist = 1.6) + +MERLIN simulation; TS1 baseline model. +In this example, xw and yh are chosen to be identical to the shutter opening dimension. +dist = 1.6 is the real distance to the shutter front face: +(This is TimeOffset value (=160 [cm]) from TS1verBase2016_LH8020_newVM-var_South04_Merlin.mcstas file.) + +N.B. Absolute normalization: The result of the Mc-Stas simulation will show neutron intensity for beam current of 1 uA. +\end{lstlisting} + +\subsection*{Input parameters} +Parameters in \textbf{boldface} are required; the others are optional. + +\begin{longtable}{p{0.22\textwidth}p{0.12\textwidth}p{0.46\textwidth}p{0.14\textwidth}} +\toprule +\textbf{Name} & \textbf{Unit} & \textbf{Description} & \textbf{Default} \\ +\midrule +\endhead +Face & string & TS1 (or TS2) instrument McStas filename & "TS1\_S04\_Merlin.mcstas" \\ +\textbf{E0} & meV & Lower edge of energy distribution & \\ +\textbf{E1} & meV & Upper edge of energy distribution & \\ +modPosition & & & 0 \\ +dist & m & Distance from moderator surface to the focusing rectangle & 1.7 \\ +verbose & int & Flag to output debugging information & 0 \\ +beamcurrent & uA & ISIS beam current & 1 \\ +modXsize & m & Moderator width & 0.12 \\ +modZsize & m & Moderator height & 0.12 \\ +xw & m & Width of focusing rectangle & 0.094 \\ +yh & m & Height of focusing rectangle & 0.094 \\ +\bottomrule +\end{longtable} + +\subsection*{Links} +\begin{itemize} + \item \href{run:/home/willend/willend-McCode/mcstas-comps/contrib/Commodus_I3.comp}{Source code} for \texttt{Commodus\_I3.comp}. +\end{itemize} +\IfFileExists{Commodus_I3_static.tex}{\input{Commodus_I3_static.tex}}{} \ No newline at end of file diff --git a/docs/manuals/mcstas/contrib/Conics_EH.tex b/docs/manuals/mcstas/contrib/Conics_EH.tex new file mode 100644 index 000000000..cb68a71a7 --- /dev/null +++ b/docs/manuals/mcstas/contrib/Conics_EH.tex @@ -0,0 +1,61 @@ +\section{The \texttt{Conics\_EH} McStas Component} +Release: McStas 2.7 +Date: September 2021 + +Elliptic-Hyperbolic shells for Wolter optic + +\subsection*{Identification} +\begin{itemize} + \item \textbf{Site:} + \item \textbf{Author:} Peter Wilendrup and Erik Knudsen \textless{}br\textgreater{}(derived from Giacomo Resta skeleton-component) + \item \textbf{Origin:} DTU + \item \textbf{Date:} September 2021 +\end{itemize} + +\subsection*{Description} +\begin{lstlisting} +Implements a set of nshells Wolter Ellipsoid/Hyperboloid pairs using conics.h from ConicTracer. + +The component has two distinct modes of specifying the geometry: +a) Via the radii vector, parametrized from largest to smallest radius with a length of 'nshells' + +b) By specifying radii rmax and rmin, between which a quadratic law distributes 'nshells' surfaces. + +The mirrors are assumed to be touching at the mid-optic plane, i.e. there is no gap between primary +and secondary mirror. +By definition the ratio between primary and secondary mirror glancing angles is 1/3. +At present a single m-value is used for all mirrors. +\end{lstlisting} + +\subsection*{Input parameters} +Parameters in \textbf{boldface} are required; the others are optional. + +\begin{longtable}{p{0.22\textwidth}p{0.12\textwidth}p{0.46\textwidth}p{0.14\textwidth}} +\toprule +\textbf{Name} & \textbf{Unit} & \textbf{Description} & \textbf{Default} \\ +\midrule +\endhead +rmin & m & Midoptic plane radius of innermost mirror pair. & 0.0031416 \\ +rmax & m & Midoptic plane radius of outermost mirror pair. & 0.05236 \\ +focal\_length\_u & m & Focal length (upstream) of the mirror pairs. & 10 \\ +focal\_length\_d & m & Focal length (downstream) of the mirror pairs. & 10 \\ +le & m & Paraboloid mirror length. & 0.25 \\ +lh & m & Hyperboloid mirror length. & 0.25 \\ +nshells & 1 & Number of nested shells to expect & 4 \\ +m & 1 & Critical angle of mirrors as multiples of Ni\_c. & 1 \\ +mirr\_thick & m & Thickness of mirror shell surfaces - NOT YET IMPLEMENTED & 0 \\ +disk & & Flag. If nonzero, insert a disk to block the central area within the innermost mirror. & 1 \\ +radii & m & Optional vector of radii (length should match nshells) & NULL \\ +R0 & 1 & Reflectivity at Low angles for reflectivity curve approximation & 0.99 \\ +Qc & AA-1 & Critical scattering vector & 0.021 \\ +W & AA-1 & Width of supermirror cut-off & 0.003 \\ +alpha & AA & Slope of reflectivity for reflectivity curve approximation & 6.07 \\ +transmit & 1 & Fraction of statistics to assign to transmitted beam - NOT YET IMPLEMENTED & 0 \\ +\bottomrule +\end{longtable} + +\subsection*{Links} +\begin{itemize} + \item \href{run:/home/willend/willend-McCode/mcstas-comps/contrib/Conics_EH.comp}{Source code} for \texttt{Conics\_EH.comp}. +\end{itemize} +\IfFileExists{Conics_EH_static.tex}{\input{Conics_EH_static.tex}}{} \ No newline at end of file diff --git a/docs/manuals/mcstas/contrib/Conics_HE.tex b/docs/manuals/mcstas/contrib/Conics_HE.tex new file mode 100644 index 000000000..11edb6616 --- /dev/null +++ b/docs/manuals/mcstas/contrib/Conics_HE.tex @@ -0,0 +1,61 @@ +\section{The \texttt{Conics\_HE} McStas Component} +Release: McStas 2.7 +Date: September 2021 + +Hyperbolic-Elliptic shells for Wolter optic + +\subsection*{Identification} +\begin{itemize} + \item \textbf{Site:} + \item \textbf{Author:} Peter Wilendrup and Erik Knudsen \textless{}br\textgreater{}(derived from Giacomo Resta skeleton-component) + \item \textbf{Origin:} DTU + \item \textbf{Date:} September 2021 +\end{itemize} + +\subsection*{Description} +\begin{lstlisting} +Implements a set of nshells Wolter Ellipsoid/Hyperboloid pairs using conics.h from ConicTracer. + +The component has two distinct modes of specifying the geometry: +a) Via the radii vector, parametrized from largest to smallest radius with a length of 'nshells' + +b) By specifying radii rmax and rmin, between which a quadratic law distributes 'nshells' surfaces. + +The mirrors are assumed to be touching at the mid-optic plane, i.e. there is no gap between primary +and secondary mirror. +By definition the ratio between primary and secondary mirror glancing angles is 1/3. +At present a single m-value is used for all mirrors. +\end{lstlisting} + +\subsection*{Input parameters} +Parameters in \textbf{boldface} are required; the others are optional. + +\begin{longtable}{p{0.22\textwidth}p{0.12\textwidth}p{0.46\textwidth}p{0.14\textwidth}} +\toprule +\textbf{Name} & \textbf{Unit} & \textbf{Description} & \textbf{Default} \\ +\midrule +\endhead +rmin & m & Midoptic plane radius of innermost mirror pair. & 0.0031416 \\ +rmax & m & Midoptic plane radius of outermost mirror pair. & 0.05236 \\ +focal\_length\_u & m & Focal length (upstream) of the mirror pairs. & 10 \\ +focal\_length\_d & m & Focal length (downstream) of the mirror pairs. & 10 \\ +le & m & Paraboloid mirror length. & 0.25 \\ +lh & m & Hyperboloid mirror length. & 0.25 \\ +nshells & 1 & Number of nested shells to expect & 4 \\ +m & 1 & Critical angle of mirrors as multiples of Ni\_c. & 1 \\ +mirr\_thick & m & Thickness of mirror shell surfaces - NOT YET IMPLEMENTED & 0 \\ +disk & & Flag. If nonzero, insert a disk to block the central area within the innermost mirror. & 1 \\ +radii & m & Optional vector of radii (length should match nshells) & NULL \\ +R0 & 1 & Reflectivity at Low angles for reflectivity curve approximation & 0.99 \\ +Qc & AA-1 & Critical scattering vector & 0.021 \\ +W & AA-1 & Width of supermirror cut-off & 0.003 \\ +alpha & AA & Slope of reflectivity for reflectivity curve approximation & 6.07 \\ +transmit & 1 & Fraction of statistics to assign to transmitted beam - NOT YET IMPLEMENTED & 0 \\ +\bottomrule +\end{longtable} + +\subsection*{Links} +\begin{itemize} + \item \href{run:/home/willend/willend-McCode/mcstas-comps/contrib/Conics_HE.comp}{Source code} for \texttt{Conics\_HE.comp}. +\end{itemize} +\IfFileExists{Conics_HE_static.tex}{\input{Conics_HE_static.tex}}{} \ No newline at end of file diff --git a/docs/manuals/mcstas/contrib/Conics_PH.tex b/docs/manuals/mcstas/contrib/Conics_PH.tex new file mode 100644 index 000000000..cf3af8047 --- /dev/null +++ b/docs/manuals/mcstas/contrib/Conics_PH.tex @@ -0,0 +1,59 @@ +\section{The \texttt{Conics\_PH} McStas Component} +Release: McStas 2.7 +Date: September 2021 + +Parabolid-Hyperbolic shells for Wolter optic + +\subsection*{Identification} +\begin{itemize} + \item \textbf{Site:} + \item \textbf{Author:} Peter Wilendrup and Erik Knudsen \textless{}br\textgreater{}(derived from Giacomo Resta skeleton-component) + \item \textbf{Origin:} DTU + \item \textbf{Date:} September 2021 +\end{itemize} + +\subsection*{Description} +\begin{lstlisting} +Implements a set of nshells Wolter I Paraboloid/Hyperboloid pairs using conics.h from ConicTracer. + +The component has two distinct modes of specifying the geometry: +a) Via the radii vector, parametrized from largest to smallest radius with a length of 'nshells' + +b) By specifying radii rmax and rmin, between which a quadratic law distributes 'nshells' surfaces. + +The mirrors are assumed to be touching at the mid-optic plane, i.e. there is no gap between primary +and secondary mirror.* By definition the ratio between primary and secondary mirror glancing angles is 1/3. +At present a single m-value is used for all mirrors. +\end{lstlisting} + +\subsection*{Input parameters} +Parameters in \textbf{boldface} are required; the others are optional. + +\begin{longtable}{p{0.22\textwidth}p{0.12\textwidth}p{0.46\textwidth}p{0.14\textwidth}} +\toprule +\textbf{Name} & \textbf{Unit} & \textbf{Description} & \textbf{Default} \\ +\midrule +\endhead +rmin & m & Midoptic plane radius of innermost mirror pair. & 0.325 \\ +rmax & m & Midoptic plane radius of outermost mirror pair. & 0.615 \\ +focal\_length & m & Focal length of the mirror pairs. & 10.070 \\ +lp & m & Paraboloid mirror length. & 0.84 \\ +lh & m & Hyperboloid mirror length. & 0.84 \\ +nshells & 1 & Number of nested shells to expect & 4 \\ +m & 1 & Critical angle of mirrors as multiples of Ni. & 1 \\ +mirr\_thick & m & Thickness of mirror shell surfaces - NOT YET IMPLEMENTED & 0 \\ +disk & & Flag. If nonzero, insert a disk to block the central area within the innermost mirror. & 1 \\ +radii & m & Optional vector of radii (length should match nshells) & NULL \\ +R0 & 1 & Reflectivity at Low angles for reflectivity curve approximation & 0.99 \\ +Qc & AA-1 & Critical scattering vector & 0.021 \\ +W & AA-1 & Width of supermirror cut-off & 0.003 \\ +alpha & AA & Slope of reflectivity for reflectivity curve approximation & 6.07 \\ +transmit & 1 & Fraction of statistics to assign to transmitted beam - NOT YET IMPLEMENTED & 0 \\ +\bottomrule +\end{longtable} + +\subsection*{Links} +\begin{itemize} + \item \href{run:/home/willend/willend-McCode/mcstas-comps/contrib/Conics_PH.comp}{Source code} for \texttt{Conics\_PH.comp}. +\end{itemize} +\IfFileExists{Conics_PH_static.tex}{\input{Conics_PH_static.tex}}{} \ No newline at end of file diff --git a/docs/manuals/mcstas/contrib/Conics_PP.tex b/docs/manuals/mcstas/contrib/Conics_PP.tex new file mode 100644 index 000000000..055a8e4d6 --- /dev/null +++ b/docs/manuals/mcstas/contrib/Conics_PP.tex @@ -0,0 +1,61 @@ +\section{The \texttt{Conics\_PP} McStas Component} +Release: McStas 2.7 +Date: September 2021 + +Parabolid-Parabolid shells for Wolter optic + +\subsection*{Identification} +\begin{itemize} + \item \textbf{Site:} + \item \textbf{Author:} Peter Wilendrup and Erik Knudsen \textless{}br\textgreater{}(derived from Giacomo Resta skeleton-component) + \item \textbf{Origin:} DTU + \item \textbf{Date:} September 2021 +\end{itemize} + +\subsection*{Description} +\begin{lstlisting} +Implements a set of nshells Wolter I Paraboloid/Parabolid pairs using conics.h from ConicTracer. + +The component has two distinct modes of specifying the geometry: +a) Via the radii vector, parametrized from largest to smallest radius with a length of 'nshells' + +b) By specifying radii rmax and rmin, between which a quadratic law distributes 'nshells' surfaces. + +The mirrors are assumed to be touching at the mid-optic plane, i.e. there is no gap between primary +and secondary mirror. +By definition the ratio between primary and secondary mirror glancing angles is 1/3. +At present a single m-value is used for all mirrors. +\end{lstlisting} + +\subsection*{Input parameters} +Parameters in \textbf{boldface} are required; the others are optional. + +\begin{longtable}{p{0.22\textwidth}p{0.12\textwidth}p{0.46\textwidth}p{0.14\textwidth}} +\toprule +\textbf{Name} & \textbf{Unit} & \textbf{Description} & \textbf{Default} \\ +\midrule +\endhead +rmin & m & Midoptic plane radius of innermost mirror pair. & 0.0031416 \\ +rmax & m & Midoptic plane radius of outermost mirror pair. & 0.05236 \\ +focal\_length\_u & m & Focal length of upstream mirror. & 10.070 \\ +focal\_length\_d & m & Focal length of downstream mirror. & 10.070 \\ +lp1 & m & Upstream paraboloid mirror length. & 0.84 \\ +lp2 & m & Downstream paraboloid mirror length. & 0.84 \\ +nshells & 1 & Number of nested shells to expect & 4 \\ +m & 1 & Critical angle of mirrors as multiples of Ni. & 1 \\ +mirr\_thick & m & Thickness of mirror shell surfaces - NOT YET IMPLEMENTED & 0 \\ +disk & & Flag. If nonzero, insert a disk to block the central area within the innermost mirror. & 1 \\ +radii & m & Optional vector of radii (length should match nshells) & NULL \\ +R0 & 1 & Reflectivity at Low angles for reflectivity curve approximation & 0.99 \\ +Qc & AA-1 & Critical scattering vector & 0.021 \\ +W & AA-1 & Width of supermirror cut-off & 0.003 \\ +alpha & AA & Slope of reflectivity for reflectivity curve approximation & 6.07 \\ +transmit & 1 & Fraction of statistics to assign to transmitted beam - NOT YET IMPLEMENTED & 0 \\ +\bottomrule +\end{longtable} + +\subsection*{Links} +\begin{itemize} + \item \href{run:/home/willend/willend-McCode/mcstas-comps/contrib/Conics_PP.comp}{Source code} for \texttt{Conics\_PP.comp}. +\end{itemize} +\IfFileExists{Conics_PP_static.tex}{\input{Conics_PP_static.tex}}{} \ No newline at end of file diff --git a/docs/manuals/mcstas/contrib/E_4PI.tex b/docs/manuals/mcstas/contrib/E_4PI.tex new file mode 100644 index 000000000..adaaaa447 --- /dev/null +++ b/docs/manuals/mcstas/contrib/E_4PI.tex @@ -0,0 +1,40 @@ +\section{The \texttt{E\_4PI} McStas Component} +Spherical Energy-sensitive detector + +\subsection*{Identification} +\begin{itemize} + \item \textbf{Site:} + \item \textbf{Author:} Duc Le + \item \textbf{Origin:} ISIS + \item \textbf{Date:} 2000s +\end{itemize} + +\subsection*{Description} +\begin{lstlisting} +Example: E_4PI(filename="e4pi.dat",ne=200,Emin=0,Emax=E*2) +\end{lstlisting} + +\subsection*{Input parameters} +Parameters in \textbf{boldface} are required; the others are optional. + +\begin{longtable}{p{0.22\textwidth}p{0.12\textwidth}p{0.46\textwidth}p{0.14\textwidth}} +\toprule +\textbf{Name} & \textbf{Unit} & \textbf{Description} & \textbf{Default} \\ +\midrule +\endhead +ne & 1 & Number of energy bins & 50 \\ +Emin & meV & Minimum energy measured & 0 \\ +Emax & meV & Maximum energy measured & 5 \\ +filename & string & Name of file in which to store the output data & 0 \\ +radius & m & Radius of detector (m) & 1 \\ +restore\_neutron & 1 & If set, the monitor does not influence the neutron state & 0 \\ +\bottomrule +\end{longtable} + +\subsection*{Links} +\begin{itemize} + \item \href{run:/home/willend/willend-McCode/mcstas-comps/contrib/E_4PI.comp}{Source code} for \texttt{E\_4PI.comp}. + \item \textless{}A HREF="http://neutron.risoe.dk/mcstas/components/tests/powder/"\textgreater{}Test + \item results\textless{}/A\textgreater{} (not up-to-date). +\end{itemize} +\IfFileExists{E_4PI_static.tex}{\input{E_4PI_static.tex}}{} \ No newline at end of file diff --git a/docs/manuals/mcstas/contrib/Exact_radial_coll.tex b/docs/manuals/mcstas/contrib/Exact_radial_coll.tex new file mode 100644 index 000000000..21656bff8 --- /dev/null +++ b/docs/manuals/mcstas/contrib/Exact_radial_coll.tex @@ -0,0 +1,50 @@ +\section{The \texttt{Exact\_radial\_coll} McStas Component} +An exact radial Soller collimator. + +\subsection*{Identification} +\begin{itemize} + \item \textbf{Site:} + \item \textbf{Author:} Roland Schedler \textless{}roland.schedler at hmi.de\textgreater{} + \item \textbf{Origin:} HMI + \item \textbf{Date:} October 2006 +\end{itemize} + +\subsection*{Description} +\begin{lstlisting} +Radial Soller collimator with rectangular opening, specified length and +specified foil thickness. +The collimator is made of many trapezium shaped nslit stacked radially. +The nslit are separated by absorbing foils, the whole stuff is inside +an absorbing housing. +The component should be positioned at the radius center. The model is exact. +The neutron beam outside the collimator area is transmitted unaffected. + +Example: Exact_radial_coll(theta_min=-5, theta_max=5, nslit=100, +radius=1.0, length=.3, h_in=.2, h_out=.3, d=0.0001) +\end{lstlisting} + +\subsection*{Input parameters} +Parameters in \textbf{boldface} are required; the others are optional. + +\begin{longtable}{p{0.22\textwidth}p{0.12\textwidth}p{0.46\textwidth}p{0.14\textwidth}} +\toprule +\textbf{Name} & \textbf{Unit} & \textbf{Description} & \textbf{Default} \\ +\midrule +\endhead +theta\_min & deg & Minimum Theta angle for the radial setting & -5 \\ +theta\_max & deg & Maximum Theta angle for the radial setting & 5 \\ +nslit & 1 & Number of channels in the theta range & 100 \\ +radius & m & Inner radius (focus point to foil start point). & 1.0 \\ +length & m & Length of the foils / collimator & .5 \\ +h\_in & m & Input window height & .3 \\ +h\_out & m & Output window height & .4 \\ +d & m & Thickness of the absorbing foils & 0.0001 \\ +verbose & 0/1 & Gives additional information & 0 \\ +\bottomrule +\end{longtable} + +\subsection*{Links} +\begin{itemize} + \item \href{run:/home/willend/willend-McCode/mcstas-comps/contrib/Exact_radial_coll.comp}{Source code} for \texttt{Exact\_radial\_coll.comp}. +\end{itemize} +\IfFileExists{Exact_radial_coll_static.tex}{\input{Exact_radial_coll_static.tex}}{} \ No newline at end of file diff --git a/docs/manuals/mcstas/contrib/FermiChopper_ILL.tex b/docs/manuals/mcstas/contrib/FermiChopper_ILL.tex new file mode 100644 index 000000000..e60baa6ee --- /dev/null +++ b/docs/manuals/mcstas/contrib/FermiChopper_ILL.tex @@ -0,0 +1,77 @@ +\section{The \texttt{FermiChopper\_ILL} McStas Component} +Fermi Chopper with rotating frame. + +\subsection*{Identification} +\begin{itemize} + \item \textbf{Site:} + \item \textbf{Author:} M. Poehlmann, C. Carbogno, H. Schober, E. Farhi + \item \textbf{Origin:} ILL Grenoble / TU Muenchen + \item \textbf{Date:} May 2002 +\end{itemize} + +\subsection*{Description} +\begin{lstlisting} +Models a Fermi chopper with optional supermirror coated blades +supermirror facilities may be disabled by setting m = 0, R0=0 +Slit packages are straight. Chopper slits are separated by an infinitely +thin absorbing material. The effective transmission (resulting from fraction +of the transparent material and its transmission) may be specified. +The chopper slit package width may be specified through the total width 'xwidth' +of the full package or the width 'w' of each single slit. The other parameter +is calculated by: xwidth = nslit*w. + +Example: +FermiChopper_ILL(phase=-50.0, radius=0.04, nu=100, +yheight=0.08, w=0.00022475, nslit=200.0, R0=0.0, +Qc=0.02176, alpha=2.33, m=0.0, length=0.012, eff=0.95, +zero_time=0) + +Markus Poehlmann +Christian Carbogno +and Helmut Schober + +%VALIDATION +Apr 2005: extensive external test, most problems solved (cf. 'Bugs') +Validated by: K. Lieutenant + +limitations: +no blade width used + +%BUGS +- overestimates peak width for long wavelengths +- does not give the right pulse position, shape and width for slit widths below 0.1 mm +- fails sometimes when using MPI +\end{lstlisting} + +\subsection*{Input parameters} +Parameters in \textbf{boldface} are required; the others are optional. + +\begin{longtable}{p{0.22\textwidth}p{0.12\textwidth}p{0.46\textwidth}p{0.14\textwidth}} +\toprule +\textbf{Name} & \textbf{Unit} & \textbf{Description} & \textbf{Default} \\ +\midrule +\endhead +phase & deg & chopper phase at t=0 & 0 \\ +radius & m & chopper cylinder radius & 0.04 \\ +nu & Hz & chopper frequency & 100 \\ +yheight & m & Height of chopper & 0.08 \\ +w & m & width of one chopper slit & 0.00022475 \\ +nslit & 1 & number of chopper slits & 200.0 \\ +R0 & 1 & low-angle reflectivity & 0.0 \\ +Qc & AA-1 & critical scattering vector & 0.02176 \\ +alpha & AA & slope of reflectivity & 2.33 \\ +m & 1 & m-value of material. Zero means completely absorbing. & 0.0 \\ +W & AA-1 & width of supermirror cut-off & 2e-3 \\ +length & m & channel length of the Fermi chopper & 0.012 \\ +eff & 1 & efficiency = transmission x fraction of transparent material & 0.95 \\ +zero\_time & 1 & set time to zero: 0: no 1: once per half cycle & 0 \\ +xwidth & m & optional total width of slit package & 0 \\ +verbose & 1 & optional flag to display component statistics, use 1 or 3 (debuging) & 0 \\ +\bottomrule +\end{longtable} + +\subsection*{Links} +\begin{itemize} + \item \href{run:/home/willend/willend-McCode/mcstas-comps/contrib/FermiChopper_ILL.comp}{Source code} for \texttt{FermiChopper\_ILL.comp}. +\end{itemize} +\IfFileExists{FermiChopper_ILL_static.tex}{\input{FermiChopper_ILL_static.tex}}{} \ No newline at end of file diff --git a/docs/manuals/mcstas/contrib/Fermi_chop2a.tex b/docs/manuals/mcstas/contrib/Fermi_chop2a.tex new file mode 100644 index 000000000..8196f90dc --- /dev/null +++ b/docs/manuals/mcstas/contrib/Fermi_chop2a.tex @@ -0,0 +1,42 @@ +\section{The \texttt{Fermi\_chop2a} McStas Component} +SNS Fermi Chopper as used in SNS\_ARCS + +\subsection*{Identification} +\begin{itemize} + \item \textbf{Site:} + \item \textbf{Author:} Garrett Granroth + \item \textbf{Origin:} SNS Oak Ridge,TN + \item \textbf{Date:} 6 Feb 2005 +\end{itemize} + +\subsection*{Description} +\begin{lstlisting} +Models an SNS Fermi Chopper, used in the SNS_ARCS instrument model. +\end{lstlisting} + +\subsection*{Input parameters} +Parameters in \textbf{boldface} are required; the others are optional. + +\begin{longtable}{p{0.22\textwidth}p{0.12\textwidth}p{0.46\textwidth}p{0.14\textwidth}} +\toprule +\textbf{Name} & \textbf{Unit} & \textbf{Description} & \textbf{Default} \\ +\midrule +\endhead +\textbf{len} & m & slit package length & \\ +\textbf{w} & m & slit package width & \\ +\textbf{nu} & Hz & frequency & \\ +\textbf{delta} & sec & time from edge of chopper to center Phase angle & \\ +\textbf{tc} & sec & time when desired neutron is at the center of the chopper & \\ +\textbf{ymin} & m & Lower y bound & \\ +\textbf{ymax} & m & Upper y bound & \\ +\textbf{nchan} & 1 & number of channels in chopper & \\ +\textbf{bw} & m & blade width & \\ +\textbf{blader} & m & blade radius & \\ +\bottomrule +\end{longtable} + +\subsection*{Links} +\begin{itemize} + \item \href{run:/home/willend/willend-McCode/mcstas-comps/contrib/Fermi_chop2a.comp}{Source code} for \texttt{Fermi\_chop2a.comp}. +\end{itemize} +\IfFileExists{Fermi_chop2a_static.tex}{\input{Fermi_chop2a_static.tex}}{} \ No newline at end of file diff --git a/docs/manuals/mcstas/contrib/Filter_graphite.tex b/docs/manuals/mcstas/contrib/Filter_graphite.tex new file mode 100644 index 000000000..5e05fe288 --- /dev/null +++ b/docs/manuals/mcstas/contrib/Filter_graphite.tex @@ -0,0 +1,47 @@ +\section{The \texttt{Filter\_graphite} McStas Component} +Pyrolytic graphite filter (analytical model) + +\subsection*{Identification} +\begin{itemize} + \item \textbf{Site:} + \item \textbf{Author:} \textless{}a href="mailto:hansen@ill.fr"\textgreater{}Thomas C Hansen\textless{}/a\textgreater{} + \item \textbf{Origin:} \textless{}a href="http://www.ill.fr"\textgreater{}ILL\textless{}/a\textgreater{} + \item \textbf{Date:} 07 March 2000 +\end{itemize} + +\subsection*{Description} +\begin{lstlisting} +ESCRIPTION + +This rectangular pyrolytic graphite filter uses an analytical model +with linear interpolation on the neutron wavelength +This type of filter is e.g. used to supress higher harmonics, such as +the 1.2 AA contribution to the 2.4 AA obtained by a highly oriented +pyrolytic graphite (HOPG) monochromator. + +Example: Filter_graphite(xmin=-.05, xmax=.05, ymin=-.05, ymax=.05, length=1.0) +\end{lstlisting} + +\subsection*{Input parameters} +Parameters in \textbf{boldface} are required; the others are optional. + +\begin{longtable}{p{0.22\textwidth}p{0.12\textwidth}p{0.46\textwidth}p{0.14\textwidth}} +\toprule +\textbf{Name} & \textbf{Unit} & \textbf{Description} & \textbf{Default} \\ +\midrule +\endhead +xmin & m & Lower x bound & -0.16 \\ +xmax & m & Upper x bound & 0.16 \\ +ymin & m & Lower y bound & -0.16 \\ +ymax & m & Upper y bound & 0.16 \\ +length & m & Thickness of graphite plate & 0.05 \\ +xwidth & m & Width of filter. Overrides xmin,xmax. & 0 \\ +yheight & m & Height of filter. Overrides ymin,ymax. & 0 \\ +\bottomrule +\end{longtable} + +\subsection*{Links} +\begin{itemize} + \item \href{run:/home/willend/willend-McCode/mcstas-comps/contrib/Filter_graphite.comp}{Source code} for \texttt{Filter\_graphite.comp}. +\end{itemize} +\IfFileExists{Filter_graphite_static.tex}{\input{Filter_graphite_static.tex}}{} \ No newline at end of file diff --git a/docs/manuals/mcstas/contrib/FlatEllipse_finite_mirror.tex b/docs/manuals/mcstas/contrib/FlatEllipse_finite_mirror.tex new file mode 100644 index 000000000..d22087d45 --- /dev/null +++ b/docs/manuals/mcstas/contrib/FlatEllipse_finite_mirror.tex @@ -0,0 +1,55 @@ +\section{The \texttt{FlatEllipse\_finite\_mirror} McStas Component} +Date: 2022-2023 + +NMO (nested mirror optic) modules + +\subsection*{Identification} +\begin{itemize} + \item \textbf{Site:} + \item \textbf{Author:} Christoph Herb, TUM + \item \textbf{Origin:} TUM + \item \textbf{Date:} 2022-2023 +\end{itemize} + +\subsection*{Description} +\begin{lstlisting} +Simulates NMO (nested mirror optic) modules as concevied by Böni et al., see +Christoph Herb et al., Nucl. Instrum. Meth. A 1040, 1671564 (1-18) 2022. + +The component relies on an updated version of conic.h from MIT. +\end{lstlisting} + +\subsection*{Input parameters} +Parameters in \textbf{boldface} are required; the others are optional. + +\begin{longtable}{p{0.22\textwidth}p{0.12\textwidth}p{0.46\textwidth}p{0.14\textwidth}} +\toprule +\textbf{Name} & \textbf{Unit} & \textbf{Description} & \textbf{Default} \\ +\midrule +\endhead +sourceDist & m & Distance used for calculating the spacing of the mirrors & 0 \\ +LStart & m & Left focal point & 0.6 \\ +LEnd & m & Right focal point & 0.6 \\ +lStart & m & z-Value of the mirror start & 0.0 \\ +lEnd & m & z-Value of the mirror end & 0.0 \\ +r\_0 & m & distance to the mirror at lStart & 0.02076 \\ +nummirror & 1 & number of mirrors & 9 \\ +mf & & mvalue of the inner side of the coating, m\textgreater{}10 results in perfect reflections & 4 \\ +mb & & mvalue of the outer side of the coating, m\textgreater{}10 results in perfect reflections & 0 \\ +R0 & 1 & Low-angle reflectivity & 0.99 \\ +Qc & AA-1 & critical scattering vector & 0.021 \\ +W & AA-1 & width of supermirror cutoff & 0.003 \\ +alpha & AA & Slope of reflectivity & 6.07 \\ +mirror\_width & m & width of the individual mirrors & 0.003 \\ +mirror\_sidelength & m & side length of the individual mirrors & 1 \\ +doubleReflections & 1 & binary value determining whether the mirror backside is reflective & 0 \\ +rfront\_inner\_file & str & file of distances to the optical axis of the individual mirrors & "NULL" \\ +\bottomrule +\end{longtable} + +\subsection*{Links} +\begin{itemize} + \item \href{run:/home/willend/willend-McCode/mcstas-comps/contrib/FlatEllipse_finite_mirror.comp}{Source code} for \texttt{FlatEllipse\_finite\_mirror.comp}. + \item Christoph Herb et al., Nucl. Instrum. Meth. A 1040, 1671564 (1-18) 2022. +\end{itemize} +\IfFileExists{FlatEllipse_finite_mirror_static.tex}{\input{FlatEllipse_finite_mirror_static.tex}}{} \ No newline at end of file diff --git a/docs/manuals/mcstas/contrib/Foil_flipper_magnet.tex b/docs/manuals/mcstas/contrib/Foil_flipper_magnet.tex new file mode 100644 index 000000000..5a988934d --- /dev/null +++ b/docs/manuals/mcstas/contrib/Foil_flipper_magnet.tex @@ -0,0 +1,58 @@ +\section{The \texttt{Foil\_flipper\_magnet} McStas Component} +A magnet with a spin-flip foil inside + +\subsection*{Identification} +\begin{itemize} + \item \textbf{Site:} + \item \textbf{Author:} Erik B Knudsen + \item \textbf{Origin:} DTU Physics + \item \textbf{Date:} Sep. 2015 +\end{itemize} + +\subsection*{Description} +\begin{lstlisting} +ESCRIPTION +A magnet with a spin-flip foil inside + +This component models a magnet with a constant magnetic field and a slanted +magnetized foil inside acting as a spin-flipper. This arrangement may be used to +target the geometry of a Spin-Echo SANS instrument (Rekveldt, NIMB, 1997 || Rekveldt, Rev Sci Instr. 2005). +In its most basic form a SE-SANS instrument nrelies on inclined field regions of +constant magnetic field, which can be difficult to realize. Instead it is possible to emulate +such regions using a magnetized foil. + +In this component th emagntzied foil is modelled as a canted (by the angle phi) mathematical plane inside a region +of constant magnetic field of dimensions (xwidth,yheight,zdepth). Furthermore, exponetially decaying stray fields from +the constant field region may be specified by giving parameters (Bxwidth,Byheight,Bzdepth) > (xwidth,yheight,zdepth). +\end{lstlisting} + +\subsection*{Input parameters} +Parameters in \textbf{boldface} are required; the others are optional. + +\begin{longtable}{p{0.22\textwidth}p{0.12\textwidth}p{0.46\textwidth}p{0.14\textwidth}} +\toprule +\textbf{Name} & \textbf{Unit} & \textbf{Description} & \textbf{Default} \\ +\midrule +\endhead +stray\_field & & Toggle for modelling of stray fields. & 1 \\ +\textbf{xwidth} & m & width of the magnet & \\ +\textbf{yheight} & m & height of the magnet & \\ +\textbf{zdepth} & m & thickness of the magnet & \\ +Bxwidth & m & width of the B-field of thev component & -1 \\ +Byheight & m & height of the B-field of the component & -1 \\ +Bzdepth & m & thickness of the B-field of the component & -1 \\ +phi & rd & angle (from the xz-plane) of the foil-spinflipper inside the magnet & 0.0 \\ +foilthick & um & Thickness of the magnetized foil & 0.0 \\ +\textbf{Bx} & T & Parameter used for x composant of field. & \\ +\textbf{By} & T & Parameter used for y composant of field. & \\ +\textbf{Bz} & T & Parameter used for z composant of field. & \\ +foil\_in & & Toggle for optional foil in the flipper. & 1 \\ +verbose & & Toggle verbose mode & 0 \\ +\bottomrule +\end{longtable} + +\subsection*{Links} +\begin{itemize} + \item \href{run:/home/willend/willend-McCode/mcstas-comps/contrib/Foil_flipper_magnet.comp}{Source code} for \texttt{Foil\_flipper\_magnet.comp}. +\end{itemize} +\IfFileExists{Foil_flipper_magnet_static.tex}{\input{Foil_flipper_magnet_static.tex}}{} \ No newline at end of file diff --git a/docs/manuals/mcstas/contrib/GISANS_sample.tex b/docs/manuals/mcstas/contrib/GISANS_sample.tex new file mode 100644 index 000000000..6619f81e5 --- /dev/null +++ b/docs/manuals/mcstas/contrib/GISANS_sample.tex @@ -0,0 +1,90 @@ +\section{The \texttt{GISANS\_sample} McStas Component} +Sample for GISANS + +\subsection*{Identification} +\begin{itemize} + \item \textbf{Site:} + \item \textbf{Author:} H. Frielinghaus + \item \textbf{Origin:} FZJ + \item \textbf{Date:} March 2023 +\end{itemize} + +\subsection*{Description} +\begin{lstlisting} +The idea of this sample goes back to the real sample studied in the publication https://doi.org/10.1063/1.4723634 +This is a sandwich of a sapphire and silicon slab through which the neutrons impinge and the sample in between where the scattering emerges from. +The sample consist of spherical polystyrene colloids in heavy water that form aligned crystallites at the solid-liquid interface, +while in the middle of the volume the crytallites are orientationally averaged in the polar angle that points in the lateral direaction. +The crystallites of the current verision are not highly realistic because they are monoclinic with a 60° angle mimicking a fraction +of a hexagonal structure with hexagonal planes stacked in the z-direction. +Inside the routine one can change between 2 or 3 different planes. Also the total crystallite size can be changed. +Especially the parallelogram with 60° angle is unrealistic because one usually would assume the crystallites to have a hexagonal shape. +However, the finite crystallites mimic the final correlation length inside the sample. +The sample works for neutrons impingin from the sapphire, the silicon at grazing angles and in transmission in the sense of a SANS sample. +If the neutrons impinge through the other layers (sample and silicon oxide) - the responses are not so realistic and need further development. +Also multiple scattering would be needed to be implemented still - but could be done. + +What this sample component covers relatively well is the fact that damping of the intensity by scattering and absorption is also covered. +That means that even at larger angles than the critical angle the intensity is damped inside the sample and so only a certain near surface +layer scatters neutrons. +This effect is not covered by BornAgain. + +I see this as a start for further developments. + +Information extracted from malformatted docstrings follow: + +the total thickness of the sandwich is zsapph+zsamp+zsilicon +the thicknesses zsampsurf and zsiliconsurf are parts of the total sample/silicon thicknesses + +(scattering length densitites, reciprocal total cross section of absorption, reciprocal total cross section of incoherent scattering) +units rho... [A-2], abslen... [cm], inclen... [cm] +rhosapph, abslensapph, inclensapph for sapphire +rhoD2O, abslenD2O, inclenD2O for D2O as solvent in sample +rhoPS, abslenPS, inclenPS for polystyrene as colloids in sample +rhosiliconsurf, abslensiliconsurf, inclensiliconsurf for silicon surface (oxide layer) +rhosilicon, abslensilicon, inclensilicon for silicon +\end{lstlisting} + +\subsection*{Input parameters} +Parameters in \textbf{boldface} are required; the others are optional. + +\begin{longtable}{p{0.22\textwidth}p{0.12\textwidth}p{0.46\textwidth}p{0.14\textwidth}} +\toprule +\textbf{Name} & \textbf{Unit} & \textbf{Description} & \textbf{Default} \\ +\midrule +\endhead +xwidth & m & Width of sample volume & 0.05 \\ +yheight & m & Height of sample volume & 0.15 \\ +zsapph & m & Thickness of the sapphire layer on one side & 0.02 \\ +zsamp & m & Thickness of the overall sample between sapphire and silicon & 0.002 \\ +zsampsurf & m & Thickness from the total of zsamp on either side of sapphire/silicon that is oriented & 0.000001 \\ +zsilicon & m & Thickness of the silicon layer on the other side & 0.02 \\ +zsiliconsurf & m & Thickness from the total of zsilicon on the sample side (oxidization layer) & 5e-9 \\ +rhosapph & & & 5.773e-6 \\ +abslensapph & & & 163.708 \\ +inclensapph & & & 49.815 \\ +rhoD2O & & & 6.364e-6 \\ +abslenD2O & & & 44066.347 \\ +inclenD2O & & & 7.258 \\ +rhoPS & & & 1.358e-6 \\ +abslenPS & & & 114.502 \\ +inclenPS & & & 0.24588 \\ +rhosiliconsurf & & & 4.123e-6 \\ +abslensiliconsurf & & & 401.051 \\ +inclensiliconsurf & & & 169.11 \\ +rhosilicon & & & 2.079e-6 \\ +abslensilicon & & & 209.919 \\ +inclensilicon & & & 9901.6 \\ +phiPS & 1 & Concentration vol/vol of colloids in D2O & 0.1 \\ +Rad & A & Radius of colloids in Aangstroem & 370.0 \\ +phirot & rad & angle of the ordered (aligned) crytallites at the two surfaces towards sapphire/silicon & 0.0 \\ +sc\_aim & 1 & how much is scattered versus transmitted & 0.98 \\ +sans\_aim & 1 & how much goes to the small angle range versus wide angles & 0.98 \\ +\bottomrule +\end{longtable} + +\subsection*{Links} +\begin{itemize} + \item \href{run:/home/willend/willend-McCode/mcstas-comps/contrib/GISANS_sample.comp}{Source code} for \texttt{GISANS\_sample.comp}. +\end{itemize} +\IfFileExists{GISANS_sample_static.tex}{\input{GISANS_sample_static.tex}}{} \ No newline at end of file diff --git a/docs/manuals/mcstas/contrib/Guide_anyshape_r.tex b/docs/manuals/mcstas/contrib/Guide_anyshape_r.tex new file mode 100644 index 000000000..805c21707 --- /dev/null +++ b/docs/manuals/mcstas/contrib/Guide_anyshape_r.tex @@ -0,0 +1,71 @@ +\section{The \texttt{Guide\_anyshape\_r} McStas Component} +Reflecting surface (guide and mirror) with any shape, defined from an OFF file +and a patch to allow m-, alpha- and W-values added per polygon face. +Derived from Guide\_anyshape / Guide\_anyshape\_r . + +\subsection*{Identification} +\begin{itemize} + \item \textbf{Site:} + \item \textbf{Author:} Emmanuel Farhi, adapted by Peter Link and Gaetano Mangiapia + \item \textbf{Origin:} ILL/MLZ + \item \textbf{Date:} August 4th 2010 +\end{itemize} + +\subsection*{Description} +\begin{lstlisting} +This is a reflecting object component, derived from Guide_anyshape. +Its shape, as well as m-, alpha- and W-values (IN THIS ORDER) for each face, are defined from +an OFF file, given with its file name. The object size is set as given from the file, where +dimensions should be in meters. The bounding box may be re-scaled by specifying +xwidth,yheight,zdepth parameters. The object may optionally be centered when +using 'center=1'. + +If in input only the values of R0 and Qc are specified, leaving m, alpha and W all null, then +Guide_anyshape_g will use the values of these last three parameters that are specified in the OFF +file for each face: floating point based values may be provided for them. +In case at least one among m, alpha and W is not null, then Guide_anyshape_g will use these +values as input (common for all the faces), ignoring those specified in the OFF file + +The complex OFF/PLY geometry option handles any closed non-convex polyhedra. +It supports the OFF and NOFF file format but not COFF (colored faces). +Standard .OFF files may be generated from XYZ data using: +qhull < coordinates.xyz Qx Qv Tv o > geomview.off +or +powercrust coordinates.xyz +and viewed with geomview or java -jar jroff.jar (see below). +The default size of the object depends of the OFF file data, but its +bounding box may be resized using xwidth,yheight and zdepth. +PLY geometry files are also supported. +\end{lstlisting} + +\subsection*{Input parameters} +Parameters in \textbf{boldface} are required; the others are optional. + +\begin{longtable}{p{0.22\textwidth}p{0.12\textwidth}p{0.46\textwidth}p{0.14\textwidth}} +\toprule +\textbf{Name} & \textbf{Unit} & \textbf{Description} & \textbf{Default} \\ +\midrule +\endhead +xwidth & m & Redimension the object bounding box on X axis is non-zero & 0 \\ +yheight & m & Redimension the object bounding box on Y axis is non-zero & 0 \\ +zdepth & m & Redimension the object bounding box on Z axis is non-zero & 0 \\ +center & 1 & When set to 1, the object will be centered w.r.t. the local coordinate frame & 0 \\ +transmit & 1 & When true, non reflected neutrons are transmitted through the surfaces, instead of being absorbed. No material absorption is taken into account though & 0 \\ +R0 & 1 & Low-angle reflectivity & 0.99 \\ +Qc & AA-1 & Critical scattering vector & 0.0219 \\ +alpha & AA & Slope of reflectivity & 0 \\ +m & 1 & m-value of material. Zero means completely absorbing. & 0 \\ +W & AA-1 & Width of supermirror cut-off & 0 \\ +geometry & str & Name of the OFF/PLY file describing the guide geometry & 0 \\ +\bottomrule +\end{longtable} + +\subsection*{Links} +\begin{itemize} + \item \href{run:/home/willend/willend-McCode/mcstas-comps/contrib/Guide_anyshape_r.comp}{Source code} for \texttt{Guide\_anyshape\_r.comp}. + \item \textless{}a href="http://www.geomview.org"\textgreater{}Geomview and Object File Format (OFF)\textless{}/a\textgreater{} + \item Java version of Geomview (display only) \textless{}a href="http://www.holmes3d.net/graphics/roffview/"\textgreater{}jroff.jar\textless{}/a\textgreater{} + \item \textless{}a href="http://qhull.org"\textgreater{}qhull\textless{}/a\textgreater{} + \item \textless{}a href="http://www.cs.ucdavis.edu/\textasciitilde{}amenta/powercrust.html"\textgreater{}powercrust\textless{}/a\textgreater{} +\end{itemize} +\IfFileExists{Guide_anyshape_r_static.tex}{\input{Guide_anyshape_r_static.tex}}{} \ No newline at end of file diff --git a/docs/manuals/mcstas/contrib/Guide_curved.tex b/docs/manuals/mcstas/contrib/Guide_curved.tex new file mode 100644 index 000000000..b04ef7bdd --- /dev/null +++ b/docs/manuals/mcstas/contrib/Guide_curved.tex @@ -0,0 +1,51 @@ +\section{The \texttt{Guide\_curved} McStas Component} +Non-focusing curved neutron guide. + +\subsection*{Identification} +\begin{itemize} + \item \textbf{Site:} + \item \textbf{Author:} Ross Stewart + \item \textbf{Origin:} \textless{}a href="http://www.ill.fr"\textgreater{}ILL (France)\textless{}/a\textgreater{}. + \item \textbf{Date:} November 18 2003 +\end{itemize} + +\subsection*{Description} +\begin{lstlisting} +Models a rectangular curved guide tube with entrance centered on the Z axis. +The entrance lies in the X-Y plane. Draws a true depiction +of the guide, and trajectories. Guide is not focusing. + +Example: Guide_curved(w1=0.1, h1=0.1, l=2.0, R0=0.99, Qc=0.021, +alpha=6.07, m=2, W=0.003, curvature=2700) + +%BUGS +This component does not work with gravitation on. Use component Guide_gravity then. +Systematic error on transmitted flux is found to be about 10%. +\end{lstlisting} + +\subsection*{Input parameters} +Parameters in \textbf{boldface} are required; the others are optional. + +\begin{longtable}{p{0.22\textwidth}p{0.12\textwidth}p{0.46\textwidth}p{0.14\textwidth}} +\toprule +\textbf{Name} & \textbf{Unit} & \textbf{Description} & \textbf{Default} \\ +\midrule +\endhead +\textbf{w1} & m & Width at the guide entry & \\ +\textbf{h1} & m & Height at the guide entry & \\ +\textbf{l} & m & length of guide & \\ +R0 & 1 & Low-angle reflectivity & 0.995 \\ +Qc & AA-1 & Critical scattering vector & 0.0218 \\ +alpha & AA & Slope of reflectivity & 4.38 \\ +m & 1 & m-value of material. Zero means completely absorbing. & 2 \\ +W & AA-1 & Width of supermirror cut-off & 0.003 \\ +curvature & m & Radius of curvature of the guide & 2700 \\ +\bottomrule +\end{longtable} + +\subsection*{Links} +\begin{itemize} + \item \href{run:/home/willend/willend-McCode/mcstas-comps/contrib/Guide_curved.comp}{Source code} for \texttt{Guide\_curved.comp}. + \item \textless{}a href="../optics/Bender.comp.html"\textgreater{}Bender\textless{}/a\textgreater{} +\end{itemize} +\IfFileExists{Guide_curved_static.tex}{\input{Guide_curved_static.tex}}{} \ No newline at end of file diff --git a/docs/manuals/mcstas/contrib/Guide_four_side.tex b/docs/manuals/mcstas/contrib/Guide_four_side.tex new file mode 100644 index 000000000..2e5e31dfa --- /dev/null +++ b/docs/manuals/mcstas/contrib/Guide_four_side.tex @@ -0,0 +1,137 @@ +\section{The \texttt{Guide\_four\_side} McStas Component} +Guide with four side walls + +\subsection*{Identification} +\begin{itemize} + \item \textbf{Site:} + \item \textbf{Author:} Tobias Panzner + \item \textbf{Origin:} PSI + \item \textbf{Date:} 07/08/2010 +\end{itemize} + +\subsection*{Description} +\begin{lstlisting} +This component models a guide with four side walls. +As user you can controll the properties of every wall separatly. All togther you have up to +8 walls: 4 inner walls and 4 outer walls. + +Every single wall can have a elliptic, parabolic or straight shape. +All four sides of the guide are independent from each other. +In the elliptic case the side wall shape follows the equation x^2/b^2+(z+z0)^2/a^2=1 +(the center of the ellipse is located at (0,-z0)). +In the parabolic case the side wall shape follows the equation z=b-ax^2;mc +In the straight case the side wall shape follows the equation z=l/(w2-w1)*x-w1. + +The shape selection is done by the focal points. The focal points are located at the +z-axis and are defined by their distance to the entrance or exit window of the guide +(in the following called 'focal length'). + +If both focal lengths for one wall are zero it will be a straight wall (entrance and +exit width have to be given in the beginning). + +If one of the focal lengths is not zero the shape will be parabolic (only the entrance width +given in the beginning is recognized; exit width will be calculated). If the the entrance +focal length is zero the guide will be a focusing devise. +If the exit focal length is zero it will be defocusing devise. + +If both focals are non zero the shape of the wall will be elliptic (only the entrance width +given in the beginning is recognized; exit width will be calculated). + +Notice: 1.)The focal points are in general located outside the guide (positive focal lengths). +Focal points inside the guide need to have negative focal lengths. +2.)The exit width parameters (w2r, w2l, h2u,h2d) are only taken into account if the +walls have a linear shape. In the ellitic or parabolic case they will be ignored. + +For the inner channel: the outer side of each wall is calculated by the component in depentence +of the wallthickness and the shape of the inner side. + +Each of walls can have a own indepenting reflecting layer (defined by an input file) +or it can be a absorber or it can be transparent. + +The reflectivity properties can be given by an input file (Format [q(Angs-1) R(0-1)]) or by +parameters (Qc, alpha, m, W). + +%BUGS +This component does not work with gravitation on. + +This component does not work correctly in GROUP-modus. +\end{lstlisting} + +\subsection*{Input parameters} +Parameters in \textbf{boldface} are required; the others are optional. + +\begin{longtable}{p{0.22\textwidth}p{0.12\textwidth}p{0.46\textwidth}p{0.14\textwidth}} +\toprule +\textbf{Name} & \textbf{Unit} & \textbf{Description} & \textbf{Default} \\ +\midrule +\endhead +RIreflect & & (str) Name of relfectivity file for the right inner wall. & 0 \\ +LIreflect & & (str) Name of relfectivity file for the left inner wall. & 0 \\ +UIreflect & & (str) Name of relfectivity file for the top inner wall. & 0 \\ +DIreflect & & (str) Name of relfectivity file for the bottom inner wall. & 0 \\ +ROreflect & & (str) Name of relfectivity file for the right outer wall. & 0 \\ +LOreflect & & (str) Name of relfectivity file for the left outer wall. & 0 \\ +UOreflect & & (str) Name of relfectivity file for the top outer wall. & 0 \\ +DOreflect & & (str) Name of relfectivity file for the bottom outer wall. & 0 \\ +w1l & m & Width at the left guide entry (positive x-axis) & 0.002 \\ +w2l & m & Width at the left guide exit (positive x-axis) & 0.002 \\ +linwl & m & left horizontal wall: distance of 1st focal point & 0 \\ +loutwl & m & left horizontal wall: distance of 2nd focal point & 0 \\ +w1r & m & Width at the right guide entry (negative x-axis) & 0.002 \\ +w2r & m & Width at the right guide exit (negative x-axis) & 0.002 \\ +linwr & m & right horizontal wall: distance of 1st focal point & 0.0 \\ +loutwr & m & right horizontal wall: distance of 2nd focal point & 0 \\ +h1u & m & Height at the top guide entry (positive y-axis) & 0.002 \\ +h2u & m & Height at the top guide entry (positive y-axis) & 0.002 \\ +linhu & m & upper vertical wall: distance of 1st focal point & 0.0 \\ +louthu & m & upper vertical wall: distance of 2nd focal point & 0 \\ +h1d & m & Height at the bottom guide entry (negative y-axis) & 0.002 \\ +h2d & m & Height at the bottom guide entry (negative y-axis) & 0.002 \\ +linhd & m & lower vertical wall: distance of 1st focal point & 0.0 \\ +louthd & m & lower vertical wall: distance of 2nd focal point & 0 \\ +l & m & length of guide (DEFAULT = 0) & 0 \\ +R0 & 1 & Low-angle reflectivity (DEFAULT = 0.99) & 0.99 \\ +Qcxl & AA-1 & Critical scattering vector for left vertical & 0.0217 \\ +Qcxr & AA-1 & Critical scattering vector for right vertical & 0.0217 \\ +Qcyu & AA-1 & Critical scattering vector for top inner wall & 0.0217 \\ +Qcyd & AA-1 & Critical scattering vector for bottom inner wall & 0.0217 \\ +alphaxl & AA & Slope of reflectivity for left vertical & 6.07 \\ +alphaxr & AA & Slope of reflectivity for right vertical & 6.07 \\ +alphayu & AA & Slope of reflectivity for top inner wall & 6.07 \\ +alphayd & AA & Slope of reflectivity for bottom inner wall & 6.07 \\ +Wxr & AA-1 & Width of supermirror cut-off for right inner wall & 0.003 \\ +Wxl & AA-1 & Width of supermirror cut-off for left inner wall & 0.003 \\ +Wyu & AA-1 & Width of supermirror cut-off for top inner wall & 0.003 \\ +Wyd & AA-1 & Width of supermirror cut-off for bottom inner wall & 0.003 \\ +mxr & 1 & m-value of material for right vertical inner wall. & 3.6 \\ +mxl & 1 & m-value of material for left vertical inner wall. & 3.6 \\ +myu & 1 & m-value of material for top inner wall & 3.6 \\ +myd & 1 & m-value of material for bottom inner wall & 3.6 \\ +QcxrOW & AA-1 & Critical scattering vector for right vertical & 0.0217 \\ +QcxlOW & AA-1 & Critical scattering vector for left vertical & 0.0217 \\ +QcyuOW & AA-1 & Critical scattering vector for top outer wall & 0.0217 \\ +QcydOW & AA-1 & Critical scattering vector for bottom outer wall & 0.0217 \\ +alphaxlOW & AA & Slope of reflectivity for left vertical & 6.07 \\ +alphaxrOW & AA & Slope of reflectivity for right vertical & 6.07 \\ +alphayuOW & AA & Slope of reflectivity for top outer wall & 6.07 \\ +alphaydOW & AA & Slope of reflectivity for bottom outer wall & 6.07 \\ +WxrOW & AA-1 & Width of supermirror cut-off for right outer wall & 0.003 \\ +WxlOW & AA-1 & Width of supermirror cut-off for left outer wall & 0.003 \\ +WyuOW & AA-1 & Width of supermirror cut-off for top outer wall & 0.003 \\ +WydOW & AA-1 & Width of supermirror cut-off for bottom outer wall & 0.003 \\ +mxrOW & 1 & m-value of material for right vertical outer wall & 0 \\ +mxlOW & 1 & m-value of material for left vertical outer wall & 0 \\ +myuOW & 1 & m-value of material for top outer wall & 0 \\ +mydOW & 1 & m-value of material for bottom outer wall & 0 \\ +rwallthick & m & thickness of the right wall (DEFAULT = 0.001 m) & 0.001 \\ +lwallthick & m & thickness of the left wall (DEFAULT = 0.001 m) & 0.001 \\ +uwallthick & m & thickness of the top wall (DEFAULT = 0.001 m) & 0.001 \\ +dwallthick & m & thickness of the bottom wall(DEFAULT = 0.001 m) & 0.001 \\ +\bottomrule +\end{longtable} + +\subsection*{Links} +\begin{itemize} + \item \href{run:/home/willend/willend-McCode/mcstas-comps/contrib/Guide_four_side.comp}{Source code} for \texttt{Guide\_four\_side.comp}. +\end{itemize} +\IfFileExists{Guide_four_side_static.tex}{\input{Guide_four_side_static.tex}}{} \ No newline at end of file diff --git a/docs/manuals/mcstas/contrib/Guide_gravity_psd.tex b/docs/manuals/mcstas/contrib/Guide_gravity_psd.tex new file mode 100644 index 000000000..cd95ed44c --- /dev/null +++ b/docs/manuals/mcstas/contrib/Guide_gravity_psd.tex @@ -0,0 +1,102 @@ +\section{The \texttt{Guide\_gravity\_psd} McStas Component} +Neutron straight guide with gravity. Can be channeled and focusing. +Waviness may be specified, as well as side chamfers (on substrate). + +\subsection*{Identification} +\begin{itemize} + \item \textbf{Site:} + \item \textbf{Author:} \textless{}a href="mailto:farhi@ill.fr"\textgreater{}Emmanuel Farhi\textless{}/a\textgreater{} + \item \textbf{Origin:} \textless{}a href="http://www.ill.fr"\textgreater{}ILL (France)\textless{}/a\textgreater{}. + \item \textbf{Date:} Aug 03 2001 +\end{itemize} + +\subsection*{Description} +\begin{lstlisting} +Models a rectangular straight guide tube centered on the Z axis, with +gravitation handling. The entrance lies in the X-Y plane. +The guide can be channeled (nslit,d,nhslit parameters). The guide coating +specifications may be entered via different ways (global, or for +each wall m-value). + +Waviness (random) may be specified either globally or for each mirror type. +Side chamfers (due to substrate processing) may be specified the same way. +In order to model a realistic straight guide assembly, a long guide of +length 'l' may be splitted into 'nelements' between which chamfers/gaps are +positioned. + +The reflectivity may be specified either using an analytical mode (see +Component manual) or as a text file in free format, with 1st +column as q[Angs-1] and 2nd column as the reflectivity R in [0-1]. +For details on the geometry calculation see the description in the McStas +component manual. + +There is a special rotating mode in order to approximate a Fermi Chopper +behaviour, in the case the neutron trajectory is nearly linear inside the +chopper slits, i.e. the neutrons are fast w/r/ to the chopper speed. +Slits are straight, but may be super-mirror coated. In this case, the +component is NOT centered, but located at its entry window. It should then +be shifted by -l/2. + +Example: Guide_gravity_psd(w1=0.1, h1=0.1, w2=0.1, h2=0.1, l=12, +R0=0.99, Qc=0.0219, alpha=6.07, m=1.0, W=0.003) + +%VALIDATION +May 2005: extensive internal test, all problems solved +Validated by: K. Lieutenant +\end{lstlisting} + +\subsection*{Input parameters} +Parameters in \textbf{boldface} are required; the others are optional. + +\begin{longtable}{p{0.22\textwidth}p{0.12\textwidth}p{0.46\textwidth}p{0.14\textwidth}} +\toprule +\textbf{Name} & \textbf{Unit} & \textbf{Description} & \textbf{Default} \\ +\midrule +\endhead +\textbf{nxpsd} & 1 & Number of bins in the built-in mirror parallel monitors & \\ +\textbf{filenameT} & str & Filename for top-mirror-monitor & \\ +\textbf{filenameB} & str & Filename for bottom-mirror-monitor & \\ +\textbf{filenameL} & str & Filename for left-mirror-monitor & \\ +\textbf{filenameR} & str & Filename for right-mirror-monitor & \\ +\textbf{w1} & m & Width at the guide entry & \\ +\textbf{h1} & m & Height at the guide entry & \\ +w2 & m & Width at the guide exit. If 0, use w1. & 0 \\ +h2 & m & Height at the guide exit. If 0, use h1. & 0 \\ +\textbf{l} & m & length of guide & \\ +R0 & 1 & Low-angle reflectivity & 0.995 \\ +Qc & AA-1 & Critical scattering vector & 0.0218 \\ +alpha & AA & Slope of reflectivity & 4.38 \\ +m & 1 & m-value of material. Zero means completely absorbing. m=0.65 & 1.0 \\ +W & AA-1 & Width of supermirror cut-off & 0.003 \\ +nslit & 1 & Number of vertical channels in the guide (\textgreater{}= 1) (nslit-1 vertical dividing walls). & 1 \\ +d & m & Thickness of subdividing walls & 0.0005 \\ +mleft & 1 & m-value of material for left. vert. mirror & -1 \\ +mright & 1 & m-value of material for right. vert. mirror & -1 \\ +mtop & 1 & m-value of material for top. horz. mirror & -1 \\ +mbottom & 1 & m-value of material for bottom. horz. mirror & -1 \\ +nhslit & 1 & Number of horizontal channels in the guide (\textgreater{}= 1). (nhslit-1 horizontal dividing walls). this enables to have nslit*nhslit rectangular channels & 1 \\ +G & m/s2 & Gravitation norm. 0 value disables G effects. & 0 \\ +aleft & 1 & alpha-value of left vert. mirror & -1 \\ +aright & 1 & alpha-value of right vert. mirror & -1 \\ +atop & 1 & alpha-value of top horz. mirror & -1 \\ +abottom & 1 & alpha-value of left horz. mirror & -1 \\ +wavy & deg & Global guide waviness & 0 \\ +wavy\_z & deg & Partial waviness along propagation axis & 0 \\ +wavy\_tb & deg & Partial waviness in transverse direction for top/bottom mirrors & 0 \\ +wavy\_lr & deg & Partial waviness in transverse direction for left/right mirrors & 0 \\ +chamfers & m & Global chamfers specifications (in/out/mirror sides). & 0 \\ +chamfers\_z & m & Input and output chamfers & 0 \\ +chamfers\_lr & m & Chamfers on left/right mirror sides & 0 \\ +chamfers\_tb & m & Chamfers on top/bottom mirror sides & 0 \\ +nelements & 1 & Number of sections in the guide (length l/nelements). & 1 \\ +nu & Hz & Rotation frequency (round/s) for Fermi Chopper approximation & 0 \\ +phase & deg & Phase shift for the Fermi Chopper approximation & 0 \\ +reflect & str & Reflectivity file name. Format q(Angs-1) R(0-1) & "NULL" \\ +\bottomrule +\end{longtable} + +\subsection*{Links} +\begin{itemize} + \item \href{run:/home/willend/willend-McCode/mcstas-comps/contrib/Guide_gravity_psd.comp}{Source code} for \texttt{Guide\_gravity\_psd.comp}. +\end{itemize} +\IfFileExists{Guide_gravity_psd_static.tex}{\input{Guide_gravity_psd_static.tex}}{} \ No newline at end of file diff --git a/docs/manuals/mcstas/contrib/Guide_honeycomb.tex b/docs/manuals/mcstas/contrib/Guide_honeycomb.tex new file mode 100644 index 000000000..cc85638be --- /dev/null +++ b/docs/manuals/mcstas/contrib/Guide_honeycomb.tex @@ -0,0 +1,58 @@ +\section{The \texttt{Guide\_honeycomb} McStas Component} +Neutron guide with gravity and honeycomb geometry. Can be channeled and focusing. + +\subsection*{Identification} +\begin{itemize} + \item \textbf{Site:} + \item \textbf{Author:} G. Venturi + \item \textbf{Origin:} \textless{}a href="http://www.ill.fr"\textgreater{}ILL (France)\textless{}/a\textgreater{}. + \item \textbf{Date:} Apr 2003 +\end{itemize} + +\subsection*{Description} +\begin{lstlisting} +Models a honeycomb guide tube centered on the Z axis. The entrance lies +in the X-Y plane. Gravitation applies also when reaching the guide input +window. The guide can be channeled (hexagonal channel section; nslit,d parameters). +The guide coating specifications may be entered via different ways (global, +or for each wall m-value). +For details on the geometry calculation see the description in the McStas +reference manual. + +Example: Guide_honeycomb(w1=0.1, w2=0.1, l=12, +R0=0.99, Qc=0.0219, alpha=6.07, m=1.0, W=0.003, nslit=1, d=0.0005) +\end{lstlisting} + +\subsection*{Input parameters} +Parameters in \textbf{boldface} are required; the others are optional. + +\begin{longtable}{p{0.22\textwidth}p{0.12\textwidth}p{0.46\textwidth}p{0.14\textwidth}} +\toprule +\textbf{Name} & \textbf{Unit} & \textbf{Description} & \textbf{Default} \\ +\midrule +\endhead +\textbf{w1} & m & Width at the guide entry & \\ +w2 & m & Width at the guide exit. If zero, sets w2=w1. & 0 \\ +\textbf{l} & m & length of guide & \\ +R0 & 1 & Low-angle reflectivity & 0.995 \\ +Qc & AA-1 & Critical scattering vector & 0.0218 \\ +alpha & AA & Slope of reflectivity & 4.38 \\ +m & 1 & m-value of material. Zero means completely absorbing. & 1.0 \\ +W & AA-1 & Width of supermirror cut-off & 0.003 \\ +nslit & 1 & Number of horizontal channels in the guide (\textgreater{}= 1) [1] & 1 \\ +d & m & Thickness of subdividing walls [0] & 0.0005 \\ +mleftup & 1 & m-value of material for leftup. oblique mirror & -1 \\ +mrightup & 1 & m-value of material for rightdown. oblique mirror & -1 \\ +mleftdown & 1 & m-value of material for rightdown. oblique mirror & -1 \\ +mrightdown & 1 & m-value of material for leftup. oblique mirror & -1 \\ +mleft & 1 & m-value of material for left. vertical mirror & -1 \\ +mright & 1 & m-value of material for right. vertical mirror & -1 \\ +G & m/s2 & Gravitation norm. 0 value disables G effects. & 0 \\ +\bottomrule +\end{longtable} + +\subsection*{Links} +\begin{itemize} + \item \href{run:/home/willend/willend-McCode/mcstas-comps/contrib/Guide_honeycomb.comp}{Source code} for \texttt{Guide\_honeycomb.comp}. +\end{itemize} +\IfFileExists{Guide_honeycomb_static.tex}{\input{Guide_honeycomb_static.tex}}{} \ No newline at end of file diff --git a/docs/manuals/mcstas/contrib/Guide_m.tex b/docs/manuals/mcstas/contrib/Guide_m.tex new file mode 100644 index 000000000..f8e2a6acc --- /dev/null +++ b/docs/manuals/mcstas/contrib/Guide_m.tex @@ -0,0 +1,81 @@ +\section{The \texttt{Guide\_m} McStas Component} +Release: McStas 1.12c + +Neutron guide. + +\subsection*{Identification} +\begin{itemize} + \item \textbf{Site:} + \item \textbf{Author:} Kristian Nielsen + \item \textbf{Origin:} Risoe + \item \textbf{Date:} September 2 1998, Modified 2013 +\end{itemize} + +\subsection*{Description} +\begin{lstlisting} +Models a rectangular guide tube centered on the Z axis. The entrance lies +in the X-Y plane. +For details on the geometry calculation see the description in the McStas +reference manual. +The reflectivity profile may either use an analytical mode (see Component +Manual) or a 2-columns reflectivity free text file with format +[q(Angs-1) R(0-1)]. + +Example: Guide(w1=0.1, h1=0.1, w2=0.1, h2=0.1, l=2.0, +R0=0.99, Qc=0.021, alpha=6.07, m=2, W=0.003 + +%VALIDATION +May 2005: extensive internal test, no bugs found +Validated by: K. Lieutenant + +%BUGS +This component does not work with gravitation on. Use component Guide_gravity then. +\end{lstlisting} + +\subsection*{Input parameters} +Parameters in \textbf{boldface} are required; the others are optional. + +\begin{longtable}{p{0.22\textwidth}p{0.12\textwidth}p{0.46\textwidth}p{0.14\textwidth}} +\toprule +\textbf{Name} & \textbf{Unit} & \textbf{Description} & \textbf{Default} \\ +\midrule +\endhead +reflect & str & Reflectivity file name. Format [q(Angs-1) R(0-1)] & 0 \\ +\textbf{w1} & m & Width at the guide entry & \\ +\textbf{h1} & m & Height at the guide entry & \\ +\textbf{w2} & m & Width at the guide exit & \\ +\textbf{h2} & m & Height at the guide exit & \\ +\textbf{l} & m & Length of guide & \\ +R0\_left & 1 & Low-angle reflectivity, left mirrror. & 0.99 \\ +R0\_right & 1 & Low-angle reflectivity, right mirror. & 0.99 \\ +R0\_top & 1 & Low-angle reflectivity, top mirror. & 0.99 \\ +R0\_bottom & 1 & Low-angle reflectivity, bottom mirror. & 0.99 \\ +Qc\_left & AA-1 & Critical scattering vector, left mirrror. & 0.0219 \\ +Qc\_right & AA-1 & Critical scattering vector, right mirror. & 0.0219 \\ +Qc\_top & AA-1 & Critical scattering vector, top mirror. & 0.0219 \\ +Qc\_bottom & AA-1 & Critical scattering vector, bottom mirror. & 0.0219 \\ +aleft & AA & Slope of reflectivity, left mirrror. & 6.07 \\ +aright & AA & Slope of reflectivity, right mirror. & 6.07 \\ +atop & AA & Slope of reflectivity, top mirror. & 6.07 \\ +abottom & AA & Slope of reflectivity, bottom mirror. & 6.07 \\ +mleft & 1 & m-value of material. Zero means completely absorbing, left mirrror. & 2 \\ +mright & 1 & m-value of material. Zero means completely absorbing, right mirror. & 2 \\ +mtop & 1 & m-value of material. Zero means completely absorbing, top mirror. & 2 \\ +mbottom & 1 & m-value of material. Zero means completely absorbing, bottom mirror. & 2 \\ +W\_left & AA-1 & Width of supermirror cut-off, left mirrror. & 0.003 \\ +W\_right & AA-1 & Width of supermirror cut-off, right mirror. & 0.003 \\ +W\_top & AA-1 & Width of supermirror cut-off, top mirror. & 0.003 \\ +W\_bottom & AA-1 & Width of supermirror cut-off, bottom mirror. & 0.003 \\ +W & AA-1 & Overall width of supermirror cut-off, overwrites values from individual mirrors & 0 \\ +m & 1 & Overall m-value of supermirrors, overwrites values from individual mirrors & 0 \\ +alpha & AA & Overall slope of reflectivity, overwrites values from individual mirrors & 0 \\ +R0 & 1 & Overall, low-angle reflectivity, overwrites values from individual mirrors & 0 \\ +Qc & AA-1 & Overall, critical scattering vector, overwrites values from individual mirrors & 0 \\ +\bottomrule +\end{longtable} + +\subsection*{Links} +\begin{itemize} + \item \href{run:/home/willend/willend-McCode/mcstas-comps/contrib/Guide_m.comp}{Source code} for \texttt{Guide\_m.comp}. +\end{itemize} +\IfFileExists{Guide_m_static.tex}{\input{Guide_m_static.tex}}{} \ No newline at end of file diff --git a/docs/manuals/mcstas/contrib/Guide_multichannel.tex b/docs/manuals/mcstas/contrib/Guide_multichannel.tex new file mode 100644 index 000000000..fad8d71a0 --- /dev/null +++ b/docs/manuals/mcstas/contrib/Guide_multichannel.tex @@ -0,0 +1,75 @@ +\section{The \texttt{Guide\_multichannel} McStas Component} +Multichannel neutron guide with semi-transparent blades. +Derived from Guide\_channeled by Christian Nielsen. +Allows to simulate bi-spectral extraction optics. + +\subsection*{Identification} +\begin{itemize} + \item \textbf{Site:} + \item \textbf{Author:} Jan Saroun (saroun@ujf.cas.cz) + \item \textbf{Origin:} Nuclear Physics Institute, CAS, Rez + \item \textbf{Date:} 17.3.2022 +\end{itemize} + +\subsection*{Description} +\begin{lstlisting} +Models a rectangular guide with equidistant vertical blades of finite thickness. +The blades material can be either fully absorbing or semi-transparent. The absorption +coefficient is wavelength dependent according to the semi-empirical model used +e.g. in J. Baker et al., J. Appl. Cryst. 41 (2008) 1003 or +A. Freund, Nucl. Instr. Meth. A 213 (1983) 495. +Data are provided for Si and Al2O3. + +All walls are flat, curvature is not implemented (may be added as a future upgrade) +Tapering is possible by setting different entry ad exit dimensions. +Different guide coating can be set for vertical and horizontal mirrors. +For transparent walls, neutrons are alloed to migrate between channels and to +propagate through the blades. + +The model is almost equivalent to the GUIDE component in SIMRES (http://neutron.ujf.cas.cz/restrax) +when used with zero curvature and type set to "guide or bender". +The features from SIMRES not included in this McSas model are: +- has a more conservative model for absorption in blades: events above r(m geomview.off +or +powercrust coordinates.xyz +and viewed with geomview or java -jar jroff.jar (see below). + +The lens cross-section is seen as a 2*radius disk from the beam Z axis, except +when a 'geometry' file is given. +Usually, you should stack more than one of these to get a significant effect +on the neutron beam, so-called 'compound refractive lens'. + +The focal length for N lenses with focal 'f' is f/N, where f=R/(1-n) +and R = r/2 for a spherical lens with curvature radius 'r' +R = focus for a parabolic lens with focal of the parabola +and n = sqrt(1-(lambda*lambda*rho*bc/PI)) with +bc = sqrt(fabs(sigma_coh)*100/4/PI)*1e-5 +rho = density*6.02214179*1e23*1e-24/weight + +Common materials: Should have high coherent, and low incoherent and absorption cross sections +Be: density=1.85, weight=9.0121, sigma_coh=7.63, sigma_inc=0.0018,sigma_abs=0.0076 +Pb: density=11.115,weight=207.2, sigma_coh=11.115,sigma_inc=0.003, sigma_abs=0.171 +Pb206: sigma_coh=10.68, sigma_inc=0 , sigma_abs=0.03 +Pb208: sigma_coh=11.34, sigma_inc=0 , sigma_abs=0.00048 +Zr: density=6.52, weight=91.224, sigma_coh=6.44, sigma_inc=0.02, sigma_abs=0.185 +Zr90: sigma_coh=5.1, sigma_inc=0 , sigma_abs=0.011 +Zr94: sigma_coh=8.4, sigma_inc=0 , sigma_abs=0.05 +Bi: density=9.78, weight=208.98, sigma_coh=9.148, sigma_inc=0.0084,sigma_abs=0.0338 +Mg: density=1.738, weight=24.3, sigma_coh=3.631, sigma_inc=0.08, sigma_abs=0.063 +MgF2: density=3.148, weight=62.3018,sigma_coh=11.74, sigma_inc=0.0816,sigma_abs=0.0822 +diamond: density=3.52, weight=12.01, sigma_coh=5.551, sigma_inc=0.001, sigma_abs=0.0035 +Quartz/silica: density=2.53, weight=60.08, sigma_coh=10.625,sigma_inc=0.0056,sigma_abs=0.1714 +Si: density=2.329, weight=28.0855,sigma_coh=2.1633,sigma_inc=0.004, sigma_abs=0.171 +Al: density=2.7, weight=26.98, sigma_coh=1.495, sigma_inc=0.0082,sigma_abs=0.231 +perfluoropolymer(PTFE/Teflon/CF2): +density=2.2, weight=50.007, sigma_coh=13.584,sigma_inc=0.0026,sigma_abs=0.0227 +Organic molecules with C,O,H,F + +Example: Lens(r1=0.025,r2=0.025, thickness=0.001,radius=0.0150) + +%BUGS +parabolic shape is not fully validated yet, but should do still... +\end{lstlisting} + +\subsection*{Input parameters} +Parameters in \textbf{boldface} are required; the others are optional. + +\begin{longtable}{p{0.22\textwidth}p{0.12\textwidth}p{0.46\textwidth}p{0.14\textwidth}} +\toprule +\textbf{Name} & \textbf{Unit} & \textbf{Description} & \textbf{Default} \\ +\midrule +\endhead +r1 & m & radius of the first circle describing the lens. r\textgreater{}0 means concave face, r\textless{}0 means convex, r=0 means plane & 0 \\ +r2 & m & radius of the second circle describing the lens r\textgreater{}0 means concave face, r\textless{}0 means convex, r=0 means plane & 0 \\ +focus1 & m & focal of the first parabola describing the lens & 0 \\ +focus2 & m & focal of the second parabola describing the lens & 0 \\ +phiy1 & deg & angle of plane1 (r1=0) around y vertical axis & 0 \\ +phiy2 & deg & angle of plane2 (r2=0) around y vertical axis & 0 \\ +thickness & m & thickness of the lens between its two surfaces & 0.001 \\ +radius & m & radius of the lens section, e.g. beam size. & 0.015 \\ +sigma\_coh & barn & coherent cross section & 11.74 \\ +sigma\_inc & barn & incoherent cross section & 0.0816 \\ +sigma\_abs & barn & thermal absorption cross section & 0.0822 \\ +density & g/cm3 & density of the material for the lens & 3.148 \\ +weight & g/mol & molar mass of the material & 62.3018 \\ +p\_interact & 1 & MC Probability for scattering the ray; otherwise transmit & 0.1 \\ +focus\_aw & deg & vertical angle to forward focus after scattering & 10 \\ +focus\_ah & deg & horizontal angle to forward focus after scattering & 10 \\ +RMS & Angs & root mean square roughness of the surface & 0 \\ +geometry & str & Name of an Object File Format (OFF) or PLY file for complex geometry. The OFF/PLY file may be generated from XYZ coordinates using qhull/powercrust & 0 \\ +\bottomrule +\end{longtable} + +\subsection*{Links} +\begin{itemize} + \item \href{run:/home/willend/willend-McCode/mcstas-comps/contrib/Lens.comp}{Source code} for \texttt{Lens.comp}. + \item M. L. Goldberger et al, Phys. Rev. 71, 294 - 310 (1947) + \item Sears V.F. Neutron optics. An introduction to the theory of neutron optical phenomena and their applications. Oxford University Press, 1989. + \item H. Park et al. Measured operationnal neutron energies of compound refractive lenses. Nuclear Instruments and Methods B, 251:507-511, 2006. + \item J. Feinstein and R. H. Pantell. Characteristics of the thick, compound refractive lens. Applied Optics, 42 No. 4:719-723, 2001. + \item \textless{}a href="http://www.geomview.org"\textgreater{}Geomview and Object File Format (OFF)\textless{}/a\textgreater{} + \item Java version of Geomview (display only) \textless{}a href="http://www.holmes3d.net/graphics/roffview/"\textgreater{}jroff.jar\textless{}/a\textgreater{} + \item \textless{}a href="http://qhull.org"\textgreater{}qhull\textless{}/a\textgreater{} + \item \textless{}a href="http://www.cs.ucdavis.edu/\textasciitilde{}amenta/powercrust.html"\textgreater{}powercrust\textless{}/a\textgreater{} +\end{itemize} +\IfFileExists{Lens_static.tex}{\input{Lens_static.tex}}{} \ No newline at end of file diff --git a/docs/manuals/mcstas/contrib/Lens_simple.tex b/docs/manuals/mcstas/contrib/Lens_simple.tex new file mode 100644 index 000000000..6132f129c --- /dev/null +++ b/docs/manuals/mcstas/contrib/Lens_simple.tex @@ -0,0 +1,73 @@ +\section{The \texttt{Lens\_simple} McStas Component} +Rectangular/circular slit with parabolic/spherical LENS. + +\subsection*{Identification} +\begin{itemize} + \item \textbf{Site:} + \item \textbf{Author:} Henrich Frielinghaus + \item \textbf{Origin:} FZ Juelich + \item \textbf{Date:} June 2010 +\end{itemize} + +\subsection*{Description} +\begin{lstlisting} +A simple rectangular or circular slit. You may either +specify the radius (circular shape), or the rectangular bounds. +No transmission around the slit is allowed. + +At the slit position there is/are also a LENS or multiple LENSES present. +Spherical/parabolic abberation is taken into account in a simplified +manner. The focal point becomes a function of the distance ss from the +origin of the lens where the ray hits the lens (plane). +With this focal distance the refraction is calculated based on simple +geometrical optics (as tought already in school). + +The approximation gets wrong when the distance ss is too big, and +total reflection becomes possible. Then the corrections of the focal +distance are strong (see foc*= ... lines. When this correction factor +is too close to zero, the corrections become highly wrong). + +The advantage of this routine is the simplicity which makes the +simulation very fast - especially for multiple lenses. The argument +for this way of treating the lenses is that the collimation and +detector distance are large (say 20m) compared to the lens thickness +(say 2-5cm) and the lens array thickness (say max. 1m). + +For lens arrays one still can simulate several of these simplified +lenses instead of an exact treatment (because 5cm<<1m). The author +believes that this medium detailed treatment meets usually the +desired accuracy. + +Example: Lens_simple(rho=5.16e10,Rc=0.0254,Nl=7,xmin=-0.01,xmax=0.01,ymin=-0.01,ymax=0.01) +Lens_simple(rho=5.16e10,Rc=0.0254,Nl=7,radius=0.01) +Lens_simple(rho=5.16e10,Rc=0.0254,Nl=7,radius=0.035,SigmaAL=0.141, d0=0.002) +^^^^^^^^^^^ last example includes absorption of MgF2-lens. +\end{lstlisting} + +\subsection*{Input parameters} +Parameters in \textbf{boldface} are required; the others are optional. + +\begin{longtable}{p{0.22\textwidth}p{0.12\textwidth}p{0.46\textwidth}p{0.14\textwidth}} +\toprule +\textbf{Name} & \textbf{Unit} & \textbf{Description} & \textbf{Default} \\ +\midrule +\endhead +rho & m-2 & Scattering length density & 5.16e14 \\ +Rc & m & Radius (concave: Rc\textgreater{}0) of biconcave lens & 0.02 \\ +Nl & 1 & Number of single lenses & 7.0 \\ +parab & & Switch (not 0 -\textgreater{} parabolic, for 0 spherical) & 1.1 \\ +xmin & m & Lower x bound & 0 \\ +xmax & m & Upper x bound & 0 \\ +ymin & m & Lower y bound & 0 \\ +ymax & m & Upper y bound & 0 \\ +radius & m & Radius of slit in the z=0 plane, centered at Origin & 0 \\ +SigmaAL & & Absorption cross section per lambda (wavelength) [1/(m*AA)] & 0.141 \\ +d0 & m & Minimum thickness in the centre of the lens & 0.002 \\ +\bottomrule +\end{longtable} + +\subsection*{Links} +\begin{itemize} + \item \href{run:/home/willend/willend-McCode/mcstas-comps/contrib/Lens_simple.comp}{Source code} for \texttt{Lens\_simple.comp}. +\end{itemize} +\IfFileExists{Lens_simple_static.tex}{\input{Lens_simple_static.tex}}{} \ No newline at end of file diff --git a/docs/manuals/mcstas/contrib/Mirror_Curved_Bispectral.tex b/docs/manuals/mcstas/contrib/Mirror_Curved_Bispectral.tex new file mode 100644 index 000000000..2c722a27c --- /dev/null +++ b/docs/manuals/mcstas/contrib/Mirror_Curved_Bispectral.tex @@ -0,0 +1,47 @@ +\section{The \texttt{Mirror\_Curved\_Bispectral} McStas Component} +Single mirror plate that is curved and fits into an elliptic guide. + +\subsection*{Identification} +\begin{itemize} + \item \textbf{Site:} + \item \textbf{Author:} Henrik Jacobsen + \item \textbf{Origin:} RNBI + \item \textbf{Date:} April 2012 +\end{itemize} + +\subsection*{Description} +\begin{lstlisting} + +\end{lstlisting} + +\subsection*{Input parameters} +Parameters in \textbf{boldface} are required; the others are optional. + +\begin{longtable}{p{0.22\textwidth}p{0.12\textwidth}p{0.46\textwidth}p{0.14\textwidth}} +\toprule +\textbf{Name} & \textbf{Unit} & \textbf{Description} & \textbf{Default} \\ +\midrule +\endhead +reflect & q(Angs-1) R(0-1) & (str) Name of relfectivity file. Format & 0 \\ +\textbf{focus\_s} & m & first focal point of ellipse in ABSOLUTE COORDINATES & \\ +\textbf{focus\_e} & m & second focal point of ellipse in ABSOLUTE COORDINATES & \\ +\textbf{mirror\_start} & m & start of mirror in ABSOLUTE COORDINATES & \\ +\textbf{guide\_start} & m & start of guide in ABSOLUTE COORDINATES & \\ +\textbf{yheight} & m & the height of the mirror when not in the guide & \\ +\textbf{smallaxis} & m & the smallaxis of the guide & \\ +\textbf{length} & m & the length of the mirror & \\ +\textbf{m} & & m-value of material & \\ +transmit & 0/1 & 0: non reflected neutrons are absorbed. 1: non reflected neutrons pass through & 0 \\ +substrate\_thickness & m & thickness of substrate (for absorption) & 0.0005 \\ +coating\_thickness & m & thickness of coating (for absorption) & 10e-6 \\ +theta\_1 & deg & angle of mirror wrt propagation direction at start of mirror & 1.25 \\ +theta\_2 & deg & angle of mirror wrt propagation direction at center of mirror & 1.25 \\ +theta\_3 & deg & angle of mirror wrt propagation direction at end of mirror & 1.25 \\ +\bottomrule +\end{longtable} + +\subsection*{Links} +\begin{itemize} + \item \href{run:/home/willend/willend-McCode/mcstas-comps/contrib/Mirror_Curved_Bispectral.comp}{Source code} for \texttt{Mirror\_Curved\_Bispectral.comp}. +\end{itemize} +\IfFileExists{Mirror_Curved_Bispectral_static.tex}{\input{Mirror_Curved_Bispectral_static.tex}}{} \ No newline at end of file diff --git a/docs/manuals/mcstas/contrib/Mirror_Elliptic.tex b/docs/manuals/mcstas/contrib/Mirror_Elliptic.tex new file mode 100644 index 000000000..5bfe4b806 --- /dev/null +++ b/docs/manuals/mcstas/contrib/Mirror_Elliptic.tex @@ -0,0 +1,47 @@ +\section{The \texttt{Mirror\_Elliptic} McStas Component} +Elliptical mirror. + +\subsection*{Identification} +\begin{itemize} + \item \textbf{Site:} + \item \textbf{Author:} \textless{}a href="mailto:desert@drecam.cea.fr"\textgreater{}Sylvain Desert\textless{}/a\textgreater{} + \item \textbf{Origin:} \textless{}a href="http://www-llb.cea.fr/"\textgreater{}LLB\textless{}/a\textgreater{} + \item \textbf{Date:} 2007 +\end{itemize} + +\subsection*{Description} +\begin{lstlisting} +Models an elliptical mirror. The reflectivity profile is given by a 2-column reflectivity free +text file with format [q(Angs-1) R(0-1)]. The component is centered on the ellipse. + +Example: Mirror_Elliptic(reflect="supermirror_m3.rfl", focus=6.6e-4, +interfocus = 8.2, yheight = 0.0002, zmin=-3.24, zmax=-1.49) +\end{lstlisting} + +\subsection*{Input parameters} +Parameters in \textbf{boldface} are required; the others are optional. + +\begin{longtable}{p{0.22\textwidth}p{0.12\textwidth}p{0.46\textwidth}p{0.14\textwidth}} +\toprule +\textbf{Name} & \textbf{Unit} & \textbf{Description} & \textbf{Default} \\ +\midrule +\endhead +reflect & q(Angs-1) R(0-1) & (str) Reflectivity file name. Format & 0 \\ +focus & m & focal length (m) & 6.6e-4 \\ +interfocus & m & Distance between the two elliptical focal points & 8.2 \\ +yheight & m & height of the mirror & 2e-4 \\ +zmin & m & z-axis coordinate of ellipse start & 0 \\ +zmax & m & z-axis coordinate of ellipse end & 0 \\ +R0 & 1 & Low-angle reflectivity & 0.99 \\ +Qc & AA-1 & Critical scattering vector & 0.0219 \\ +alpha & AA & Slope of reflectivity & 6.07 \\ +m & 1 & m-value of material. Zero means completely absorbing. & 1.0 \\ +W & AA-1 & Width of supermirror cut-off & 0.003 \\ +\bottomrule +\end{longtable} + +\subsection*{Links} +\begin{itemize} + \item \href{run:/home/willend/willend-McCode/mcstas-comps/contrib/Mirror_Elliptic.comp}{Source code} for \texttt{Mirror\_Elliptic.comp}. +\end{itemize} +\IfFileExists{Mirror_Elliptic_static.tex}{\input{Mirror_Elliptic_static.tex}}{} \ No newline at end of file diff --git a/docs/manuals/mcstas/contrib/Mirror_Elliptic_Bispectral.tex b/docs/manuals/mcstas/contrib/Mirror_Elliptic_Bispectral.tex new file mode 100644 index 000000000..84e75a4c4 --- /dev/null +++ b/docs/manuals/mcstas/contrib/Mirror_Elliptic_Bispectral.tex @@ -0,0 +1,45 @@ +\section{The \texttt{Mirror\_Elliptic\_Bispectral} McStas Component} +Single mirror plate that is curved and fits into an elliptic guide. + +\subsection*{Identification} +\begin{itemize} + \item \textbf{Site:} + \item \textbf{Author:} Henrik Jacobsen + \item \textbf{Origin:} RNBI + \item \textbf{Date:} April 2012 +\end{itemize} + +\subsection*{Description} +\begin{lstlisting} + +\end{lstlisting} + +\subsection*{Input parameters} +Parameters in \textbf{boldface} are required; the others are optional. + +\begin{longtable}{p{0.22\textwidth}p{0.12\textwidth}p{0.46\textwidth}p{0.14\textwidth}} +\toprule +\textbf{Name} & \textbf{Unit} & \textbf{Description} & \textbf{Default} \\ +\midrule +\endhead +reflect & q(Angs-1) R(0-1) & (str) Name of relfectivity file. Format & 0 \\ +\textbf{focus\_start\_w} & m & Horizontal position of first focal point of ellipse in ABSOLUTE COORDINATES & \\ +\textbf{focus\_end\_w} & m & Horizontal position of second focal point of ellipse in ABSOLUTE COORDINATES & \\ +\textbf{focus\_start\_h} & m & Vertical position of first focal point of ellipse in ABSOLUTE COORDINATES & \\ +\textbf{focus\_end\_h} & m & VErtical position of second focal point of ellipse in ABSOLUTE COORDINATES & \\ +\textbf{mirror\_start} & m & start of mirror in ABSOLUTE COORDINATES & \\ +\textbf{m} & & m-value of material & \\ +\textbf{smallaxis\_w} & m & Small-axis dimension of horizontal ellipse & \\ +\textbf{smallaxis\_h} & m & Small-axis dimension of vertical ellipse & \\ +\textbf{length} & m & the length of the mirror & \\ +transmit & 0/1 & 0: non reflected neutrons are absorbed. 1: non reflected neutrons pass through & 0 \\ +substrate\_thickness & m & thickness of substrate (for absorption) & 0.0005 \\ +coating\_thickness & m & thickness of coating (for absorption) & 10e-6 \\ +\bottomrule +\end{longtable} + +\subsection*{Links} +\begin{itemize} + \item \href{run:/home/willend/willend-McCode/mcstas-comps/contrib/Mirror_Elliptic_Bispectral.comp}{Source code} for \texttt{Mirror\_Elliptic\_Bispectral.comp}. +\end{itemize} +\IfFileExists{Mirror_Elliptic_Bispectral_static.tex}{\input{Mirror_Elliptic_Bispectral_static.tex}}{} \ No newline at end of file diff --git a/docs/manuals/mcstas/contrib/Mirror_Parabolic.tex b/docs/manuals/mcstas/contrib/Mirror_Parabolic.tex new file mode 100644 index 000000000..22d3e48d0 --- /dev/null +++ b/docs/manuals/mcstas/contrib/Mirror_Parabolic.tex @@ -0,0 +1,46 @@ +\section{The \texttt{Mirror\_Parabolic} McStas Component} +Parabolic mirror. + +\subsection*{Identification} +\begin{itemize} + \item \textbf{Site:} + \item \textbf{Author:} \textless{}a href="mailto:desert@drecam.cea.fr"\textgreater{}Sylvain Desert\textless{}/a\textgreater{} + \item \textbf{Origin:} \textless{}a href="http://www-llb.cea.fr/"\textgreater{}LLB\textless{}/a\textgreater{} + \item \textbf{Date:} 2007 +\end{itemize} + +\subsection*{Description} +\begin{lstlisting} +Models a parabolic mirror. The reflectivity profile is given by a 2-column reflectivity free +text file with format [q(Angs-1) R(0-1)]. + +Example: Mirror_Parabolic(reflect="supermirror_m3.rfl", xwidth = 0.05, xshift=0.05, +yheight = 2e-4, focus = 6.6e-4) +\end{lstlisting} + +\subsection*{Input parameters} +Parameters in \textbf{boldface} are required; the others are optional. + +\begin{longtable}{p{0.22\textwidth}p{0.12\textwidth}p{0.46\textwidth}p{0.14\textwidth}} +\toprule +\textbf{Name} & \textbf{Unit} & \textbf{Description} & \textbf{Default} \\ +\midrule +\endhead +reflect & q(Angs-1) R(0-1) & (str) Reflectivity file name. Format & 0 \\ +xwidth & m & width of the illuminated parabola & 0.05 \\ +xshift & m & distance between the beam centre and the symetric axis of the parabolla & 0.019 \\ +yheight & m & height of the mirror & 2e-4 \\ +focus & m & focal length & 6.6e-4 \\ +R0 & 1 & Low-angle reflectivity & 0.99 \\ +Qc & AA-1 & Critical scattering vector & 0.0219 \\ +alpha & AA & Slope of reflectivity & 6.07 \\ +m & 1 & m-value of material. Zero means completely absorbing. & 1.0 \\ +W & AA-1 & Width of supermirror cut-off & 0.003 \\ +\bottomrule +\end{longtable} + +\subsection*{Links} +\begin{itemize} + \item \href{run:/home/willend/willend-McCode/mcstas-comps/contrib/Mirror_Parabolic.comp}{Source code} for \texttt{Mirror\_Parabolic.comp}. +\end{itemize} +\IfFileExists{Mirror_Parabolic_static.tex}{\input{Mirror_Parabolic_static.tex}}{} \ No newline at end of file diff --git a/docs/manuals/mcstas/contrib/Monochromator_2foc.tex b/docs/manuals/mcstas/contrib/Monochromator_2foc.tex new file mode 100644 index 000000000..022ffe93f --- /dev/null +++ b/docs/manuals/mcstas/contrib/Monochromator_2foc.tex @@ -0,0 +1,74 @@ +\section{The \texttt{Monochromator\_2foc} McStas Component} +Double bent monochromator with multiple slabs + +\subsection*{Identification} +\begin{itemize} + \item \textbf{Site:} + \item \textbf{Author:} \textless{}a href="mailto:plink@physik.tu-muenchen.de"\textgreater{}Peter Link\textless{}/a\textgreater{}. + \item \textbf{Origin:} Uni. Gottingen (Germany) + \item \textbf{Date:} Feb. 12,1999 +\end{itemize} + +\subsection*{Description} +\begin{lstlisting} +Double bent monochromator which uses a small-mosaicity approximation as well +as the approximation vy^2 << vz^2 + vx^2. +Second order scattering is neglected. +For an unrotated monochromator component, the crystal plane lies in the y-z +plane (ie. parallel to the beam). +When curvatures are set to 0, the monochromator is flat. +The curvatures approximation for parallel beam focusing to distance L, with +monochromator rotation angle A1 are: +RV = 2*L*sin(DEG2RAD*A1); +RH = 2*L/sin(DEG2RAD*A1); + +Example: Monochromator_2foc(zwidth=0.02, yheight=0.02, gap=0.0005, NH=11, NV=11, +mosaich=30, mosaicv=30, r0=0.7, Q=1.8734) + +Example values for lattice parameters +PG 002 DM=3.355 AA (Highly Oriented Pyrolytic Graphite) +PG 004 DM=1.607 AA +Heusler 111 DM=3.362 AA (Cu2MnAl) +CoFe DM=1.771 AA (Co0.92Fe0.08)b +Ge 311 DM=1.714 AA +Si 111 DM=3.135 AA +Cu 111 DM=2.087 AA +Cu 002 DM=1.807 AA +Cu 220 DM=1.278 AA +Cu 111 DM=2.095 AA +\end{lstlisting} + +\subsection*{Input parameters} +Parameters in \textbf{boldface} are required; the others are optional. + +\begin{longtable}{p{0.22\textwidth}p{0.12\textwidth}p{0.46\textwidth}p{0.14\textwidth}} +\toprule +\textbf{Name} & \textbf{Unit} & \textbf{Description} & \textbf{Default} \\ +\midrule +\endhead +reflect & k, R & reflectivity file name of text file as 2 columns & 0 \\ +zwidth & m & horizontal width of an individual slab & 0.01 \\ +yheight & m & vertical height of an individual slab & 0.01 \\ +gap & m & typical gap between adjacent slabs & 0.0005 \\ +NH & columns & number of slabs horizontal & 11 \\ +NV & rows & number of slabs vertical & 11 \\ +mosaich & arcmin & Horisontal mosaic FWHM & 30.0 \\ +mosaicv & arcmin & Vertical mosaic FWHM & 30.0 \\ +r0 & 1 & Maximum reflectivity & 0.7 \\ +Q & AA-1 & Scattering vector & 1.8734 \\ +RV & m & radius of vertical focussing, flat for 0 & 0 \\ +RH & m & radius of horizontal focussing, flat for 0 & 0 \\ +DM & Angstrom & monochromator d-spacing instead of Q=2*pi/DM & 0 \\ +mosaic & arcmin & sets mosaich=mosaicv & 0 \\ +width & m & total width of monochromator & 0 \\ +height & m & total height of monochromator & 0 \\ +verbose & 0/1 & verbosity level & 0 \\ +\bottomrule +\end{longtable} + +\subsection*{Links} +\begin{itemize} + \item \href{run:/home/willend/willend-McCode/mcstas-comps/contrib/Monochromator_2foc.comp}{Source code} for \texttt{Monochromator\_2foc.comp}. + \item \textless{}a href="http://mailman.risoe.dk/pipermail/neutron-mc/1999q1/000133.html"\textgreater{}Additional note\textless{}/a\textgreater{} from \textless{}a href="mailto:plink@physik.tu-muenchen.de"\textgreater{}Peter Link\textless{}/a\textgreater{}. +\end{itemize} +\IfFileExists{Monochromator_2foc_static.tex}{\input{Monochromator_2foc_static.tex}}{} \ No newline at end of file diff --git a/docs/manuals/mcstas/contrib/Monochromator_bent.tex b/docs/manuals/mcstas/contrib/Monochromator_bent.tex new file mode 100644 index 000000000..359b949af --- /dev/null +++ b/docs/manuals/mcstas/contrib/Monochromator_bent.tex @@ -0,0 +1,64 @@ +\section{The \texttt{Monochromator\_bent} McStas 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. + +\subsection*{Identification} +\begin{itemize} + \item \textbf{Site:} + \item \textbf{Author:} Daniel Lomholt Christensen \textless{}dlc@math.ku.dk\textgreater{} with help from Jan \Šaroun + \item \textbf{Origin:} ILL/NBI + \item \textbf{Date:} 24 August 2023 +\end{itemize} + +\subsection*{Description} +\begin{lstlisting} +This monochromator is an array of crystals, that can be bent. +The crystals are placed by the user in the x,y,z pos and rot parameters. +The crystal is bent, so that it follows a curve on a cylinder of radius_x. +The monochromator lies along the z plane, so when a diffraction angle of theta +is desired, it should just be inserted in the ROTATED parameter around +the y-axis. +Instruments that showcase the use of this component is the +"Test_monochromator_bent.instr", and the "ILL_SALSA.instr" under the examples folder. +SALSA showcases its complex use in a real instrument, while Test_monochromator_bent +makes a simple show of its capabilities. +\end{lstlisting} + +\subsection*{Input parameters} +Parameters in \textbf{boldface} are required; the others are optional. + +\begin{longtable}{p{0.22\textwidth}p{0.12\textwidth}p{0.46\textwidth}p{0.14\textwidth}} +\toprule +\textbf{Name} & \textbf{Unit} & \textbf{Description} & \textbf{Default} \\ +\midrule +\endhead +zwidth & m & Width of each crystal without bending. & 0.2 \\ +yheight & m & Height of each crystal without bending. & 0.1 \\ +xthickness & m & Thickness of each crystal without bending. & 0.0005 \\ +radius\_x & m & Radius of the circle the monochromator bends on in the plane. Can be negative. & 2 \\ +radius\_y & m & Radius 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. & 0 \\ +plane\_of\_reflection & "Si400" & The plane of reflection from the material. The list of possible reflections can be seen in the source code. & "Si400" \\ +angle\_to\_cut\_horizontal & degrees & Angle between cut and normal of crystal slab, horizontally & 0 \\ +mosaicity & arcmin & Gaussian mosaicity of the crystal. Always the horizontal mosaicity & 30 \\ +mosaic\_anisotropy & 1 & Anisotropy of the mosaicity, changes vertical mosaicity to be mosaic\_anisotropy*mosaicity & 1 \\ +n\_crystals & \# & Number of crystals in your array. & 1 \\ +domainthickness & \&\#956;m & Thickness of the crystal domains. & 10 \\ +temperature & K & Temperature of the monochromator in Kelvin. & 300 \\ +optimize & & Flag to tell if the component should optimize for reflections or not. & 0 \\ +x\_pos & vector & x-Position of each crystal & NULL \\ +y\_pos & vector & y-Position of each crystal & NULL \\ +z\_pos & vector & z-Position of each crystal & NULL \\ +x\_rot & vector & Rotation around x-axis for each crystal & NULL \\ +y\_rot & vector & Rotation around y-axis for each crystal & NULL \\ +z\_rot & vector & Rotation around z-axis for each crystal NOTE: Rotations happen around x, then y, then z. & NULL \\ +verbose & & Verbosity of the monochromator. Used for debugging. & 0 \\ +draw\_as\_rectangles & & Draw the monochromators as boxes. DOES NOT WORK WHEN USING \_rot parameters. & 0 \\ +\bottomrule +\end{longtable} + +\subsection*{Links} +\begin{itemize} + \item \href{run:/home/willend/willend-McCode/mcstas-comps/contrib/Monochromator_bent.comp}{Source code} for \texttt{Monochromator\_bent.comp}. + \item \textless{}a href="https://doi.org/10.1016/j.nima.2004.04.197"\textgreater{}Jan \Šaroun NIM A Volume 529, Issue 1-3 (2004), pp162-165\textless{}/a\textgreater{} +\end{itemize} +\IfFileExists{Monochromator_bent_static.tex}{\input{Monochromator_bent_static.tex}}{} \ No newline at end of file diff --git a/docs/manuals/mcstas/contrib/Monochromator_bent_complex.tex b/docs/manuals/mcstas/contrib/Monochromator_bent_complex.tex new file mode 100644 index 000000000..5bb57f44d --- /dev/null +++ b/docs/manuals/mcstas/contrib/Monochromator_bent_complex.tex @@ -0,0 +1,59 @@ +\section{The \texttt{Monochromator\_bent\_complex} McStas 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. + +\subsection*{Identification} +\begin{itemize} + \item \textbf{Site:} + \item \textbf{Author:} Daniel Lomholt Christensen \textless{}dlc@math.ku.dk\textgreater{} with help from Jan \Šaroun + \item \textbf{Origin:} ILL/NBI + \item \textbf{Date:} 2 August 2025 +\end{itemize} + +\subsection*{Description} +\begin{lstlisting} +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. +\end{lstlisting} + +\subsection*{Input parameters} +Parameters in \textbf{boldface} are required; the others are optional. + +\begin{longtable}{p{0.22\textwidth}p{0.12\textwidth}p{0.46\textwidth}p{0.14\textwidth}} +\toprule +\textbf{Name} & \textbf{Unit} & \textbf{Description} & \textbf{Default} \\ +\midrule +\endhead +zwidth & m & Width of each crystal without bending. & NULL \\ +yheight & m & Height of each crystal without bending. & NULL \\ +xthickness & m & Thickness of each crystal without bending. & NULL \\ +radius\_x & m & Radius of the circle the monochromator bends on in the plane. Can be negative. & NULL \\ +radius\_y & m & Radius 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\_horizontal & degrees & Angle between cut and normal of crystal slab, horizontally & NULL \\ +mosaicity & arcmin & Gaussian mosaicity of the crystal. Always the horizontal mosaicity & NULL \\ +mosaic\_anisotropy & 1 & Anisotropy of the mosaicity, changes vertical mosaicity to be mosaic\_anisotropy*mosaicity & NULL \\ +domainthickness & \&\#956;m & Thickness of the crystal domains. & NULL \\ +temperature & K & Temperature of the monochromator in Kelvin. & NULL \\ +plane\_of\_reflection & string & The 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\_pos & vector & x-Position of each crystal & NULL \\ +y\_pos & vector & y-Position of each crystal & NULL \\ +z\_pos & vector & z-Position of each crystal & NULL \\ +x\_rot & vector & Rotation around x-axis for each crystal & NULL \\ +y\_rot & vector & Rotation around y-axis for each crystal & NULL \\ +z\_rot & vector & Rotation around z-axis for each crystal NOTE: Rotations happen around x, then y, then z. & NULL \\ +n\_crystals & 1 & Number of crystals in your array. & 1 \\ +optimize & 1 & Flag to tell if the component should optimize for reflections or not. & 0 \\ +verbose & 1 & Verbosity of the monochromator. Used for debugging. & 0 \\ +draw\_as\_rectangles & 1 & Draw the monochromators as boxes. DOES NOT WORK WHEN USING \_rot parameters. & 0 \\ +\bottomrule +\end{longtable} + +\subsection*{Links} +\begin{itemize} + \item \href{run:/home/willend/willend-McCode/mcstas-comps/contrib/Monochromator_bent_complex.comp}{Source code} for \texttt{Monochromator\_bent\_complex.comp}. + \item \textless{}a href="https://doi.org/10.1016/j.nima.2004.04.197"\textgreater{}Jan \Šaroun NIM A Volume 529, Issue 1-3 (2004), pp162-165\textless{}/a\textgreater{} + \item \textless{}a href="https://doi.org/10.3390/qubs10010006"\textgreater{}Christensen, D.L.; Cabeza, S.; Pirling, T.; Lefmann, K.; \Šaroun, J. Simulating Neutron Diffraction from Deformed Mosaic Crystals in McStas. Quantum Beam Sci. 2026, 10, 6. https://doi.org/10.3390/qubs10010006\textless{}/a\textgreater{} +\end{itemize} +\IfFileExists{Monochromator_bent_complex_static.tex}{\input{Monochromator_bent_complex_static.tex}}{} \ No newline at end of file diff --git a/docs/manuals/mcstas/contrib/MultiDiskChopper.tex b/docs/manuals/mcstas/contrib/MultiDiskChopper.tex new file mode 100644 index 000000000..bfd2f5a35 --- /dev/null +++ b/docs/manuals/mcstas/contrib/MultiDiskChopper.tex @@ -0,0 +1,69 @@ +\section{The \texttt{MultiDiskChopper} McStas Component} +Based on DiskChopper (Revision 1.18) by Peter Willendrup (2006), +which in turn is based on Chopper (Philipp Bernhardt), Jitter and beamstop from work by +Kaspar Hewitt Klenoe (jan 2006), adjustments by Rob Bewey (march 2006) + +\subsection*{Identification} +\begin{itemize} + \item \textbf{Site:} + \item \textbf{Author:} Markus Appel + \item \textbf{Origin:} ILL / FAU Erlangen-Nuernberg + \item \textbf{Date:} 2015-10-19 +\end{itemize} + +\subsection*{Description} +\begin{lstlisting} +Models a disk chopper with a freely configurable slit pattern. For simple applications, +use the DiskChopper component and see the component manual example of DiskChopper GROUPing. +If the chopper slit pattern should be dynamically configurable or a complicated pattern +is to be used as first chopper on a continuous source, use this component. + +Width and position of the slits is defined as a list in string parameters so +they can easily be taken from instrument parameters. +The chopper axis is located on the y axis as defined by the parameter delta_y. +When the chopper is the first chopper after a continuous (i.e. time-independent) +source, the parameter isfirst should be set to 1 to increase Monte-Carlo efficiency. + + +Examples (see parameter definitions for details): +Two opposite slits with 10 and 20deg opening, with the 20deg slit in the beam at t=0.02: +MultiDiskChopper(radius=0.2, slit_center="0;180", slit_width="10;20", delta_y=-0.1, +nu=302, nslits=2, phase=180, delay=0.02) + +First chopper on a continuous source, creating pulse trains for one additional revolution +before and after the revolution at t=0: +MultiDiskChopper(radius=0.2, slit_center="0;180", slit_width="10;20", delta_y=-0.1, +nu=302, nslits=2, phase=180, isfirst=1, nrev=1) +\end{lstlisting} + +\subsection*{Input parameters} +Parameters in \textbf{boldface} are required; the others are optional. + +\begin{longtable}{p{0.22\textwidth}p{0.12\textwidth}p{0.46\textwidth}p{0.14\textwidth}} +\toprule +\textbf{Name} & \textbf{Unit} & \textbf{Description} & \textbf{Default} \\ +\midrule +\endhead +slit\_center & string & (deg) Angular position of the slits (similar to slit\_width) & "0 180" \\ +slit\_width & string & (deg) Angular width of the slits, given as list in a string separated by space ' ', comma ',', underscore '\_' or semicolon ';'. Example: "0;20;90;135;270" & "10 20" \\ +nslits & & Number of slits to read from slit\_width and slit\_center & 2 \\ +delta\_y & m & y-position of the chopper rotation axis. If the chopper is located above the guide (delta\_y\textgreater{}0), the coordinate system will be mirrored such that the created pulse pattern in time is the same as for delta\_y\textless{}0. A warning will be printed in this case. & -0.3 \\ +nu & Hz & Rotation speed of the disk, the sign determines the direction. & 0 \\ +nrev & & When isfirst=1: Number of *additional* disk revolutions before *and* after the one around t=delay to distribute events on. If set to 2 for example, there will be 2 leading, 1 central, and 2 trailing revolutions of the disk (2*nrev+1 in total). & 0 \\ +ratio & & When isfirst=1: Spacing of the additional revolutions from the parameter nrev from the central revolution. & 1 \\ +jitter & s & Jitter in the time phase. & 0 \\ +delay & s & Time delay of the chopper clock. & 0 \\ +isfirst & 0/1 & Set to 1 for the first chopper after a continuous source. The neutron events & 0 \\ +phase & deg & Phase angle located on top of the disk at t=delay (see below). & 0 \\ +radius & m & Outer radius of the disk & 0.375 \\ +equal & 0/1 & When isfirst=1: If 0, the neutron events will be distributed between different slits proportional to the slit size. If 1, the events will be distributed such that each slit transmits the same number of events. This parameter can be used to achieve comparable simulation statistics over different pulses when simulating small and large slits together. & 0 \\ +abs\_out & & If 1, absorb all neutrons outside the disk diameter. & 0 \\ +verbose & 0/1 & Set to 1 to display more information during the simulation. & 0 \\ +\bottomrule +\end{longtable} + +\subsection*{Links} +\begin{itemize} + \item \href{run:/home/willend/willend-McCode/mcstas-comps/contrib/MultiDiskChopper.comp}{Source code} for \texttt{MultiDiskChopper.comp}. +\end{itemize} +\IfFileExists{MultiDiskChopper_static.tex}{\input{MultiDiskChopper_static.tex}}{} \ No newline at end of file diff --git a/docs/manuals/mcstas/contrib/Multilayer_Sample.tex b/docs/manuals/mcstas/contrib/Multilayer_Sample.tex new file mode 100644 index 000000000..27d7a3c94 --- /dev/null +++ b/docs/manuals/mcstas/contrib/Multilayer_Sample.tex @@ -0,0 +1,57 @@ +\section{The \texttt{Multilayer\_Sample} McStas Component} +Multilayer Reflecting sample using matrix Formula, v2 with 'nrepeats' for repeating multilayer structure. + +\subsection*{Identification} +\begin{itemize} + \item \textbf{Site:} + \item \textbf{Author:} Robert Dalgliesh + \item \textbf{Origin:} ISIS + \item \textbf{Date:} June 2010 +\end{itemize} + +\subsection*{Description} +\begin{lstlisting} +in order to get this to compile you need to link against +the gsl and gslcblas libraries. + +to do this automatically edit +/usr/local/lib/mcstas/tools/perl/mcstas_config.perl + +add -lgsl and -lgslcblas to the CFLAGS line + +Horizontal reflecting substrate defined by SLDs,Thicknesses, roughnesses +The superphase may also be determined + +Example: Multilayer_Sample(xmin=-0.1, xmax=0.1,zmin=-0.1, zmax=0.1, nlayer=1,sldPar={0.0,2.0e-6,0.0e-6},dPar={20.0}, sigmaPar={5.0,5.0}) + +Example: d1 500: sld1 (air) 0.0: sld2 (Si) 2.07e-6: sldf1(film Ni) 9.1e-6 +\end{lstlisting} + +\subsection*{Input parameters} +Parameters in \textbf{boldface} are required; the others are optional. + +\begin{longtable}{p{0.22\textwidth}p{0.12\textwidth}p{0.46\textwidth}p{0.14\textwidth}} +\toprule +\textbf{Name} & \textbf{Unit} & \textbf{Description} & \textbf{Default} \\ +\midrule +\endhead +xwidth & m & Width of substrate & 0.2 \\ +zlength & m & Length of substrate & 0.2 \\ +nlayer & 1 & Number of film layers & 1 \\ +nrepeats & 1 & Number of repeats of the block of layers appart from the superphase and substrate & 1 \\ +sldPar & AA\textasciicircum{}-2 & Scattering length Density's of layers & \{0.0,2.0e-6,0.0e-6\} \\ +dPar & AA & Thicknesses of film layers & \{20.0\} \\ +sigmaPar & AA & r.m.s roughnesses of the interfaces & \{5.0,5.0\} \\ +frac\_inc & 1 & Fraction of statistics to assign to incoherent scattering & 0 \\ +ythick & m & Thickness of substrate & 0 \\ +mu\_inc & m\textasciicircum{}-1 & Incoherent scattering length & 5.62 \\ +target\_index & 1 & Used in combination with focus\_xw and focus\_yh to indicate solid angle for incoherent scattering. & 0 \\ +focus\_xw & m & Used in combination with target\_index and focus\_yh to indicate solid angle for incoherent scattering. & 0 \\ +\bottomrule +\end{longtable} + +\subsection*{Links} +\begin{itemize} + \item \href{run:/home/willend/willend-McCode/mcstas-comps/contrib/Multilayer_Sample.comp}{Source code} for \texttt{Multilayer\_Sample.comp}. +\end{itemize} +\IfFileExists{Multilayer_Sample_static.tex}{\input{Multilayer_Sample_static.tex}}{} \ No newline at end of file diff --git a/docs/manuals/mcstas/contrib/NMO.tex b/docs/manuals/mcstas/contrib/NMO.tex new file mode 100644 index 000000000..555b1df64 --- /dev/null +++ b/docs/manuals/mcstas/contrib/NMO.tex @@ -0,0 +1,57 @@ +\section{The \texttt{NMO} McStas Component} +Date: 2022-2023 + +NMO (nested mirror optic) modules + +\subsection*{Identification} +\begin{itemize} + \item \textbf{Site:} + \item \textbf{Author:} Christoph Herb, TUM + \item \textbf{Origin:} TUM + \item \textbf{Date:} 2022-2023 +\end{itemize} + +\subsection*{Description} +\begin{lstlisting} +Simulates NMO (nested mirror optic) modules as concevied by Böni et al., see +Christoph Herb et al., Nucl. Instrum. Meth. A 1040, 1671564 (1-18) 2022. + +The component relies on an updated version of conic.h from MIT. + +NMO.comp contains no actual code, uses INHERIT of all sections from FlatEllipse_finite_mirror +\end{lstlisting} + +\subsection*{Input parameters} +Parameters in \textbf{boldface} are required; the others are optional. + +\begin{longtable}{p{0.22\textwidth}p{0.12\textwidth}p{0.46\textwidth}p{0.14\textwidth}} +\toprule +\textbf{Name} & \textbf{Unit} & \textbf{Description} & \textbf{Default} \\ +\midrule +\endhead +sourceDist & m & Distance used for calculating the spacing of the mirrors & 0 \\ +LStart & m & Left focal point & 0.6 \\ +LEnd & m & Right focal point & 0.6 \\ +lStart & m & z-Value of the mirror start & 0. \\ +lEnd & m & z-Value of the mirror end & 0. \\ +r\_0 & m & distance to the mirror at lStart & 0.02076 \\ +nummirror & 1 & number of mirrors & 9 \\ +mf & & mvalue of the inner side of the coating, m\textgreater{}10 results in perfect reflections & 4 \\ +mb & & mvalue of the outer side of the coating, m\textgreater{}10 results in perfect reflections & 0 \\ +R0 & 1 & Low-angle reflectivity & 0.99 \\ +Qc & AA-1 & critical scattering vector & 0.021 \\ +W & AA-1 & width of supermirror cutoff & 0.003 \\ +alpha & AA & Slope of reflectivity & 6.07 \\ +mirror\_width & m & width of the individual mirrors & 0.003 \\ +mirror\_sidelength & m & side length of the individual mirrors & 1 \\ +doubleReflections & 1 & binary value determining whether the mirror backside is reflective & 0 \\ +rfront\_inner\_file & str & file of distances to the optical axis of the individual mirrors & "NULL" \\ +\bottomrule +\end{longtable} + +\subsection*{Links} +\begin{itemize} + \item \href{run:/home/willend/willend-McCode/mcstas-comps/contrib/NMO.comp}{Source code} for \texttt{NMO.comp}. + \item Christoph Herb et al., Nucl. Instrum. Meth. A 1040, 1671564 (1-18) 2022. +\end{itemize} +\IfFileExists{NMO_static.tex}{\input{NMO_static.tex}}{} \ No newline at end of file diff --git a/docs/manuals/mcstas/contrib/NPI_tof_dhkl_detector.tex b/docs/manuals/mcstas/contrib/NPI_tof_dhkl_detector.tex new file mode 100644 index 000000000..74583e4ac --- /dev/null +++ b/docs/manuals/mcstas/contrib/NPI_tof_dhkl_detector.tex @@ -0,0 +1,74 @@ +\section{The \texttt{NPI\_tof\_dhkl\_detector} McStas Component} +Release: McStas 2.5 +Last update: 30/11/2018 + +NPI detector for estimating dhkl from tof + +\subsection*{Identification} +\begin{itemize} + \item \textbf{Site:} + \item \textbf{Author:} Jan Saroun, saroun@ujf.cas.cz + \item \textbf{Origin:} NPI + \item \textbf{Date:} July 1, 2017 +\end{itemize} + +\subsection*{Description} +\begin{lstlisting} +A cylindrical detector which converts time-of-flight data (x,y,z,time) to a 1D diffractogram in dhkl. +The detector model includes finite detection depth, spatial and time resolution. Optionally, the component +exports position and time coordinates of detection events in an ASCII file. + +The component can also handle setups employing a modulation chopper for peak multiplexing at a long pulse source, +as proposed for the diffractometer BEER@ESS. In this case, the component requires chopper parameters +(modulation period, width of the primary unmodulated pulse), and a file with estimated dhkl values. +The component then estimates valid regions on the angle/tof map, excluding areas assumed to be empty +or with overlaping lines. This map is exported together with the diffractogram. + +Tips for usage: +1) Centre the detector at the sample axis, keep z-axis parallel to the incident beam. +2) Set the radius equal to the distance from the sample axis to the front face of the detection volume. +3) Linst-Lc is used to determine "instrumental" wavelength as lambda = h/m_n*time/(Linst-Lc); +\end{lstlisting} + +\subsection*{Input parameters} +Parameters in \textbf{boldface} are required; the others are optional. + +\begin{longtable}{p{0.22\textwidth}p{0.12\textwidth}p{0.46\textwidth}p{0.14\textwidth}} +\toprule +\textbf{Name} & \textbf{Unit} & \textbf{Description} & \textbf{Default} \\ +\midrule +\endhead +filename & str & Name of file in which to store the detector data. & 0 \\ +radius & m & Radius of detector. & 2 \\ +yheight & m & Height of detector. & 0.3 \\ +zdepth & m & Thickness of the detection volume. & 0.01 \\ +amin & deg & minimum of scattering angle to be detected. & 75 \\ +amax & deg & maximum of scattering angle to be detected. & 105 \\ +nd & & Number of bins for dhkl in the 1D diffractograms. & 200 \\ +na & & Number of bins for scattering angles in the 2D maps. & 800 \\ +nt & & Number of bins for time of flight in the 2D maps. & 800 \\ +nev & & Number of detection events to export in "events.dat" (only modulation mode, set 1 for no export) & 1 \\ +d\_min & AA & minimum of inter-planar spacing to be detected. & 1 \\ +d\_max & AA & maximum of inter-planar spacing to be detected. & 3 \\ +\textbf{time0} & s & Time delay of the wavelength definition chopper with respect to the source pulse. & \\ +\textbf{Linst} & m & Distance from the source to the detector. & \\ +\textbf{Lc} & m & Distance from the source to the pulse chopper (set 0 for a short pulse source). & \\ +res\_x & m & Spatial resolution along x (Gaussian FWHM). & 0 \\ +res\_y & m & Spatial resolution along y (Gaussian FWHM). & 0 \\ +res\_t & s & Time resolution (Gaussian FWHM). Readout only, path to capture is accounted for by the tracing code. & 0 \\ +mu & 1/cm/AA & Capture coefficient for the detection medium. & 1.0 \\ +mod\_shift & float & Relative shift of the modulation pattern (delta\_d/d, constant for all reflections). & 0 \\ +modulation & 1|0 & Switch on/off the modulation regime (BEER multiplexing technique). & 0 \\ +mod\_dt & s & Modulation period. & 0 \\ +mod\_twidth & s & Width of the primary source pulse. & 0 \\ +mod\_d0\_table & str & Name of a file with the list of dhkl estimates (one per line). & 0 \\ +verbose & 1|0 & Switch for extended reporting. & 0 \\ +restore\_neutron & 1|0 & Switch for restoring of previous neutron state. & 1 \\ +\bottomrule +\end{longtable} + +\subsection*{Links} +\begin{itemize} + \item \href{run:/home/willend/willend-McCode/mcstas-comps/contrib/NPI_tof_dhkl_detector.comp}{Source code} for \texttt{NPI\_tof\_dhkl\_detector.comp}. +\end{itemize} +\IfFileExists{NPI_tof_dhkl_detector_static.tex}{\input{NPI_tof_dhkl_detector_static.tex}}{} \ No newline at end of file diff --git a/docs/manuals/mcstas/contrib/NPI_tof_theta_monitor.tex b/docs/manuals/mcstas/contrib/NPI_tof_theta_monitor.tex new file mode 100644 index 000000000..fbc766d57 --- /dev/null +++ b/docs/manuals/mcstas/contrib/NPI_tof_theta_monitor.tex @@ -0,0 +1,51 @@ +\section{The \texttt{NPI\_tof\_theta\_monitor} McStas Component} +Release: McStas 1.6 + +Cylindrical (2pi) PSD Time-of-flight monitor. + +\subsection*{Identification} +\begin{itemize} + \item \textbf{Site:} + \item \textbf{Author:} Kim Lefmann + \item \textbf{Origin:} Risoe + \item \textbf{Date:} October 2000 +\end{itemize} + +\subsection*{Description} +\begin{lstlisting} +Derived from TOF_cylPSD_monitor. +Code is extended by the option allowing to define range of scattering angles, therefore creating only a part of the cylinder surface. +The plot is transposed when compared to TOF_cylPSD_monitor: scattering angles are on the horizontal axis. + + +Example: TOF_cylPSD_monitor_NPI(nt = 1024, nphi = 960, filename = "Output.dat", +radius = 2, yheight = 1.0, tmin = 3e4, tmax = 12e4, amin = 75, amax = 105, restore_neutron = 1) +\end{lstlisting} + +\subsection*{Input parameters} +Parameters in \textbf{boldface} are required; the others are optional. + +\begin{longtable}{p{0.22\textwidth}p{0.12\textwidth}p{0.46\textwidth}p{0.14\textwidth}} +\toprule +\textbf{Name} & \textbf{Unit} & \textbf{Description} & \textbf{Default} \\ +\midrule +\endhead +filename & str & Name of file in which to store the detector image & 0 \\ +radius & m & Cylinder radius & 1 \\ +yheight & m & Cylinder height & 0.3 \\ +\textbf{tmin} & mu-s & Beginning of time window & \\ +\textbf{tmax} & mu-s & End of time window & \\ +\textbf{amin} & deg & minimum angle to detect & \\ +\textbf{amax} & deg & maximum angle to detect & \\ +restore\_neutron & 1 & If set, the monitor does not influence the neutron state & 1 \\ +verbose & & & 0 \\ +nt & 1 & Number of time bins & 128 \\ +na & & & 90 \\ +\bottomrule +\end{longtable} + +\subsection*{Links} +\begin{itemize} + \item \href{run:/home/willend/willend-McCode/mcstas-comps/contrib/NPI_tof_theta_monitor.comp}{Source code} for \texttt{NPI\_tof\_theta\_monitor.comp}. +\end{itemize} +\IfFileExists{NPI_tof_theta_monitor_static.tex}{\input{NPI_tof_theta_monitor_static.tex}}{} \ No newline at end of file diff --git a/docs/manuals/mcstas/contrib/PSD_Detector.tex b/docs/manuals/mcstas/contrib/PSD_Detector.tex new file mode 100644 index 000000000..f57247d0e --- /dev/null +++ b/docs/manuals/mcstas/contrib/PSD_Detector.tex @@ -0,0 +1,169 @@ +\section{The \texttt{PSD\_Detector} McStas Component} +Position-sensitive gas-filled detector with gaseous thermal-neutron +converter (box, cylinder or 'banana'). + +\subsection*{Identification} +\begin{itemize} + \item \textbf{Site:} + \item \textbf{Author:} Thorwald van Vuure + \item \textbf{Origin:} ILL + \item \textbf{Date:} Feb 21st, 2005 +\end{itemize} + +\subsection*{Description} +\begin{lstlisting} +An n times m pixel Position Sensitive Detector (PSD), box, cylinder or banana +filled with a mixture of thermal-neutron converter gas and stopping gas. +This model implements wires detection, including charge drift, parallax, etc. +The default is a simple 1D/2D position detector. However, setting +the parameter 'type' to "events" will save the signal as an event file which +contains all neutron parameters at detection points, including time. This is +especially suited for TOF detectors. Please use Histogrammer afterwards. +The gas creation event (neutron absorption in gas) is flagged as SCATTERED==1, +and the charge detection (signal) is flagged as SCATTERED==2. + +GEOMETRY: +A flat rectangular box of given depth is simulated, or alternatively +a cylinder (when giving radius), or a horizontal cylindrical 'banana' +detector (when giving the width along the arc). +Box position is at its center, the 'banana' and cylinder have their +position at focus point, symetric in angular range for the 'banana'. + +GAS SPECIFICATIONS: +The converter gas can be specified as He-3, BF3 or N2. +The filling pressure of converter gas must be specified along +with the zdepth: this gives an absorption probability (e.g. ~90% for +0.18 nm neutrons at zdepth 3 cm and He-3 pressure 5 bar). +The stopping gas can be specified as one of the following gases: +CF4, C3H8, CO2, Xe/TMA or He, or any for which a table of stopping +powers is available. NB: each stopping gas table has specific +data on a pair of particles (from thermal-neutron absorptions in +either He-3, BF3 or N2) in a specific gas. Unusual choices like N2 +as a converter and He as a stopping gas probably require the +calculation of a new table. +Tip: to do a simulation in pure He-3, specify 0 bar for the stopping gas. +The pressures of the two gases together put a lower limit on the +achievable spatial resolution, no matter what pixel size is +specified. +Example: 1 bar CF4 gives ~2.5 mm spatial resolution, 3 bar CF4 gives +~1 mm. C3H8 requires more pressure for the same resolution, then +Xe/TMA, then CO2 and finally He. + +IMPLEMENTED FEATURES: +Taken into account are the following effects: +- (rectangularly distributed) error in the recorded position due to +the range of the neutron capture products in the gas +- angular dependence of absorption efficiency +- border effect (events outside the sensitive volume tend to be +counted in the border pixels) +- parallax effect (with, if desired, an electrostatic lens to +partially correct for this - use "LensOn=1") +- wall effect +To correctly take the wall effect into account, a value must be +specified for the energy threshold for acceptance of an event as a +valid neutron event. This normally serves to discriminate from +gammas. Because these are not simulated in McStas, a value of 0 keV +can be chosen for this threshold if one is interested in seeing the +maximum number of neutrons; however, a more realistic value would be +100 keV. This implies seeing the maximum number of neutrons as well, +except in geometries with dominating wall effect. +The border effect is a considerably complex phenomenon: it depends +on the precise electric field configuration near the border. It is +simulated here simply by introducing a dead zone, gas-filled, +bordering the sensitive volume. Events in there can still cause +signals in the detector. The dead zone can cause a shadow in the +sensitive volume, just as in reality. +The algorithm simply adds all events on the first 'pixel' in the +dead zone to the border pixels. This is a coarse approximation, +because the physical effect depends on the orientation of the +tracks and the energy threshold setting. The bottom line is that +tracking the position of the Center Of Gravity of the charge +deposition in the detector does not allow for accurate modeling of +the border effect, and therefore the border pixels should be +ignored, just as in a real detector. +Note that specifying 0 width of the dead zone next to the +sensitive volume, apart from being unrealistic, does not allow +accurate simulation of the border effect: in this case, there will +be a relative lack of events on the border pixels due to the wall +effect. +This component determines the position of the Center Of Gravity of +the charge cloud in the detector. It does not simulate independent +channels. +Manufacturing imperfections such as wire diameter variations and +spread in electronic amplifier component properties are not simulated. +This should allow an experimenter to identify these manufacturing +imperfections in his physical machine and correct for them. + +Example: PSD_Detector(xwidth=0.192, yheight=0.192, nx=64, ny=64, +zdepth=0.03, threshold=100, borderx=-1, bordery=-1, +PressureConv=5, PressureStop=1, +FN_Conv="Gas_tables/He3inHe.table", FN_Stop="Gas_tables/He3inCF4.table", +xChDivRelSigma=0, yChDivRelSigma=0, +filename="BIDIM19.psd") + +Example: PSD_Detector(xwidth=0.26, yheight=0.26, nx=128, ny=128, +zdepth=0.03, threshold=100, borderx=-1, bordery=-1, +PressureConv=5, PressureStop=1, +FN_Conv="Gas_tables/He3inHe.table", FN_Stop="Gas_tables/He3inCF4.table", +xChDivRelSigma=0, yChDivRelSigma=0, +filename="BIDIM26.psd") + +Example: PSD_Detector(radius=0.0127, yheight=0.20, nx=1, ny=128, +threshold=100, borderx=-1, +PressureConv=9.9, PressureStop=0.1, +FN_Conv="Gas_tables/He3inHe.table", FN_Stop="Gas_tables/He3inCO2.table", +yChDivRelSigma=0.006, +filename="ReuterStokes.psd") + +Example: PSD_Detector(awidth=1.533, yheight=0.4, nx=640, ny=256, +radius=0.73, zdepth=0.032, dc=0.026, threshold=100, +borderx=-1, bordery=-1, +PressureConv=5, PressureStop=1, +FN_Conv="Gas_tables/He3inHe.table", FN_Stop="Gas_tables/He3inCF4.table", +xChDivRelSigma=0, yChDivRelSigma=0.0037, +LensOn=1, filename="D19.psd") +\end{lstlisting} + +\subsection*{Input parameters} +Parameters in \textbf{boldface} are required; the others are optional. + +\begin{longtable}{p{0.22\textwidth}p{0.12\textwidth}p{0.46\textwidth}p{0.14\textwidth}} +\toprule +\textbf{Name} & \textbf{Unit} & \textbf{Description} & \textbf{Default} \\ +\midrule +\endhead +nx & 1 & Number of pixel columns & 128 \\ +ny & 1 & Number of pixel rows & 128 \\ +xwidth & m & Width of detector opening, in the case of a flat box & 0 \\ +radius & m & Radius of detector for cylindrical/banana shape & 0 \\ +awidth & m & Width of detector opening along the horizontal arc of the detector, measured along the inside arc of the sensitive volume in the case of a 'banana' detector & 0 \\ +yheight & m & Height of detector opening & 0 \\ +zdepth & m & Depth of the sensitive volume of the detector & 0.03 \\ +threshold & keV & Energy threshold for acceptance of an event & 100 \\ +PressureConv & bar & Pressure of gaseous thermal-neutron converter (e.g. He-3) & 5 \\ +PressureStop & bar & Pressure of stopping gas & 1 \\ +interpolate & 1 & Performs energy interpolation if true & 1 \\ +p\_interact & 1 & Fraction of statistical events to be treated by component. Set it to 0 to use real absorption probability & 0 \\ +verbose & 1 & Gives more information and spectrum & 0 \\ +LensOn & 1 & set to 1 to simulate an electrostatic lens according to P. Van Esch, NIM A 540 (2005) pp. 361-367. & 1 \\ +dc & m & Distance from the entrance window to the cathode plane, where the correction zone of the lens ends for banana shape and LensOn=1 & 0 \\ +borderx & m & Width of (gas-filled) border on the side of the detector & -2 \\ +bordery & m & Height of (gas-filled) border on the top/bottom of the detector giving rise to various border effects. Set to -2 to obtain the height of one pixel, -1 for the depth of the detector (default), or specify a non-negativedistance & -2 \\ +xChDivRelSigma & 1 & Sigma of the error in position determination along the x axis (relative to xwidth), uniquely due to charge division readout. Set to 0 in case of independent channel readout along the x dimension & 0 \\ +yChDivRelSigma & 1 & Relative sigma due to charge division in y direction, relative to yheight. & 0 \\ +bufsize & 1 & Size of neutron output buffer default is 0, i.e. save all - recommended. & 0 \\ +restore\_neutron & 1 & If set, the monitor does not influence the neutron state & 0 \\ +angle & deg & Angular opening of detector in the case of a 'banana' detector, then overrides awidth parameter & 0 \\ +type & string & If set to 'events' detector signal saves signal into an event file to be read e.g. by Histogrammer. This is to be used for TOF detectors. & 0 \\ +filename & text & Name of file in which to store the detector image. The name of the component is used if file name is not specified & 0 \\ +FN\_Conv & text & Filename of the stopping power table of the converter gas & "He3inHe.table" \\ +FN\_Stop & text & Filename of the stopping power table of the stopping gas & "He3inCF4.table" \\ +\bottomrule +\end{longtable} + +\subsection*{Links} +\begin{itemize} + \item \href{run:/home/willend/willend-McCode/mcstas-comps/contrib/PSD_Detector.comp}{Source code} for \texttt{PSD\_Detector.comp}. + \item The test/example instrument \textless{}a href="../examples/Test\_PSD\_Detector.instr"\textgreater{}Test\_PSD\_Detector.instr\textless{}/a\textgreater{}. +\end{itemize} +\IfFileExists{PSD_Detector_static.tex}{\input{PSD_Detector_static.tex}}{} \ No newline at end of file diff --git a/docs/manuals/mcstas/contrib/PSD_Pol_monitor.tex b/docs/manuals/mcstas/contrib/PSD_Pol_monitor.tex new file mode 100644 index 000000000..45b85ff84 --- /dev/null +++ b/docs/manuals/mcstas/contrib/PSD_Pol_monitor.tex @@ -0,0 +1,48 @@ +\section{The \texttt{PSD\_Pol\_monitor} McStas Component} +Position-sensitive monitor. + +\subsection*{Identification} +\begin{itemize} + \item \textbf{Site:} + \item \textbf{Author:} Alexander Backs, based on PSD\_monitor by K. Lefmann + \item \textbf{Origin:} ESS + \item \textbf{Date:} 2022 +\end{itemize} + +\subsection*{Description} +\begin{lstlisting} +An (n times m) pixel PSD monitor, measuring local polarisation as function of x,y coordinates. + +Example: PSD_Pol_monitor(xmin=-0.1, xmax=0.1, ymin=-0.1, ymax=0.1, nx=90, ny=90, my=1, filename="Output.psd") +\end{lstlisting} + +\subsection*{Input parameters} +Parameters in \textbf{boldface} are required; the others are optional. + +\begin{longtable}{p{0.22\textwidth}p{0.12\textwidth}p{0.46\textwidth}p{0.14\textwidth}} +\toprule +\textbf{Name} & \textbf{Unit} & \textbf{Description} & \textbf{Default} \\ +\midrule +\endhead +nx & 1 & Number of pixel columns & 90 \\ +ny & 1 & Number of pixel rows & 90 \\ +filename & string & Name of file in which to store the detector image & 0 \\ +xmin & m & Lower x bound of detector opening & -0.05 \\ +xmax & m & Upper x bound of detector opening & 0.05 \\ +ymin & m & Lower y bound of detector opening & -0.05 \\ +ymax & m & Upper y bound of detector opening & 0.05 \\ +xwidth & m & Width of detector. Overrides xmin, xmax & 0 \\ +yheight & m & Height of detector. Overrides ymin, ymax & 0 \\ +restore\_neutron & 1 & If set, the monitor does not influence the neutron state & 0 \\ +nowritefile & 1 & If set, monitor will skip writing to disk & 0 \\ +mx & 1 & Define the projection axis along which the polarizatoin is evaluated, x-component & 0 \\ +my & 1 & Define the projection axis along which the polarizatoin is evaluated, y-component & 0 \\ +mz & 1 & Define the projection axis along which the polarizatoin is evaluated, z-component & 0 \\ +\bottomrule +\end{longtable} + +\subsection*{Links} +\begin{itemize} + \item \href{run:/home/willend/willend-McCode/mcstas-comps/contrib/PSD_Pol_monitor.comp}{Source code} for \texttt{PSD\_Pol\_monitor.comp}. +\end{itemize} +\IfFileExists{PSD_Pol_monitor_static.tex}{\input{PSD_Pol_monitor_static.tex}}{} \ No newline at end of file diff --git a/docs/manuals/mcstas/contrib/PSD_monitor_rad.tex b/docs/manuals/mcstas/contrib/PSD_monitor_rad.tex new file mode 100644 index 000000000..5bff80404 --- /dev/null +++ b/docs/manuals/mcstas/contrib/PSD_monitor_rad.tex @@ -0,0 +1,41 @@ +\section{The \texttt{PSD\_monitor\_rad} McStas Component} +Position-sensitive monitor with radially averaging. + +\subsection*{Identification} +\begin{itemize} + \item \textbf{Site:} + \item \textbf{Author:} Henrich Frielinghaus + \item \textbf{Origin:} FZ-Juelich/FRJ-2/IFF/KWS-2 + \item \textbf{Date:} Sept 2004 +\end{itemize} + +\subsection*{Description} +\begin{lstlisting} +Radial monitor that allows for radial averaging. +Comment: The intensity is given as two files: +1) a radial sum +2) a radial average (i.e. intensity per area) + +Example: PSD_monitor_rad(rmax=0.2, nr=100, filename="Output.psd", filename_av="Output_av.psd") +\end{lstlisting} + +\subsection*{Input parameters} +Parameters in \textbf{boldface} are required; the others are optional. + +\begin{longtable}{p{0.22\textwidth}p{0.12\textwidth}p{0.46\textwidth}p{0.14\textwidth}} +\toprule +\textbf{Name} & \textbf{Unit} & \textbf{Description} & \textbf{Default} \\ +\midrule +\endhead +nr & 1 & Number of concentric circles & 100 \\ +filename & text & Name of file in which to store the detector image & 0 \\ +filename\_av & text & Name of file in which to store the averaged detector image & 0 \\ +rmax & m & Outer radius of detector & 0.2 \\ +\bottomrule +\end{longtable} + +\subsection*{Links} +\begin{itemize} + \item \href{run:/home/willend/willend-McCode/mcstas-comps/contrib/PSD_monitor_rad.comp}{Source code} for \texttt{PSD\_monitor\_rad.comp}. +\end{itemize} +\IfFileExists{PSD_monitor_rad_static.tex}{\input{PSD_monitor_rad_static.tex}}{} \ No newline at end of file diff --git a/docs/manuals/mcstas/contrib/PSD_spinDmon.tex b/docs/manuals/mcstas/contrib/PSD_spinDmon.tex new file mode 100644 index 000000000..a16496a91 --- /dev/null +++ b/docs/manuals/mcstas/contrib/PSD_spinDmon.tex @@ -0,0 +1,45 @@ +\section{The \texttt{PSD\_spinDmon} McStas Component} +Position-sensitive monitor, measuring the spin-down component of the neutron beam. + +\subsection*{Identification} +\begin{itemize} + \item \textbf{Site:} + \item \textbf{Author:} Michael Schneider (SNAG) + \item \textbf{Origin:} SNAG + \item \textbf{Date:} 2024 +\end{itemize} + +\subsection*{Description} +\begin{lstlisting} +An (n times m) pixel PSD monitor, measuring the spin-down component of the neutron beam. + +Example: PSD_monitor(xmin=-0.1, xmax=0.1, ymin=-0.1, ymax=0.1, nx=90, ny=90, filename="Output.psd") +\end{lstlisting} + +\subsection*{Input parameters} +Parameters in \textbf{boldface} are required; the others are optional. + +\begin{longtable}{p{0.22\textwidth}p{0.12\textwidth}p{0.46\textwidth}p{0.14\textwidth}} +\toprule +\textbf{Name} & \textbf{Unit} & \textbf{Description} & \textbf{Default} \\ +\midrule +\endhead +nx & 1 & Number of pixel columns & 90 \\ +ny & 1 & Number of pixel rows & 90 \\ +filename & string & Name of file in which to store the detector image & 0 \\ +xmin & m & Lower x bound of detector opening & -0.05 \\ +xmax & m & Upper x bound of detector opening & 0.05 \\ +ymin & m & Lower y bound of detector opening & -0.05 \\ +ymax & m & Upper y bound of detector opening & 0.05 \\ +xwidth & m & Width of detector. Overrides xmin, xmax & 0 \\ +yheight & m & Height of detector. Overrides ymin, ymax & 0 \\ +restore\_neutron & 1 & If set, the monitor does not influence the neutron state & 0 \\ +nowritefile & 1 & If set, monitor will skip writing to disk & 0 \\ +\bottomrule +\end{longtable} + +\subsection*{Links} +\begin{itemize} + \item \href{run:/home/willend/willend-McCode/mcstas-comps/contrib/PSD_spinDmon.comp}{Source code} for \texttt{PSD\_spinDmon.comp}. +\end{itemize} +\IfFileExists{PSD_spinDmon_static.tex}{\input{PSD_spinDmon_static.tex}}{} \ No newline at end of file diff --git a/docs/manuals/mcstas/contrib/PSD_spinUmon.tex b/docs/manuals/mcstas/contrib/PSD_spinUmon.tex new file mode 100644 index 000000000..79c55d136 --- /dev/null +++ b/docs/manuals/mcstas/contrib/PSD_spinUmon.tex @@ -0,0 +1,45 @@ +\section{The \texttt{PSD\_spinUmon} McStas Component} +Position-sensitive monitor, measuring the spin-up component of the neutron beam. + +\subsection*{Identification} +\begin{itemize} + \item \textbf{Site:} + \item \textbf{Author:} Michael Schneider (SNAG) + \item \textbf{Origin:} SNAG + \item \textbf{Date:} 2024 +\end{itemize} + +\subsection*{Description} +\begin{lstlisting} +An (n times m) pixel PSD monitor, measuring the spin-up component of the neutron beam. + +Example: PSD_monitor(xmin=-0.1, xmax=0.1, ymin=-0.1, ymax=0.1, nx=90, ny=90, filename="Output.psd") +\end{lstlisting} + +\subsection*{Input parameters} +Parameters in \textbf{boldface} are required; the others are optional. + +\begin{longtable}{p{0.22\textwidth}p{0.12\textwidth}p{0.46\textwidth}p{0.14\textwidth}} +\toprule +\textbf{Name} & \textbf{Unit} & \textbf{Description} & \textbf{Default} \\ +\midrule +\endhead +nx & 1 & Number of pixel columns & 90 \\ +ny & 1 & Number of pixel rows & 90 \\ +filename & string & Name of file in which to store the detector image & 0 \\ +xmin & m & Lower x bound of detector opening & -0.05 \\ +xmax & m & Upper x bound of detector opening & 0.05 \\ +ymin & m & Lower y bound of detector opening & -0.05 \\ +ymax & m & Upper y bound of detector opening & 0.05 \\ +xwidth & m & Width of detector. Overrides xmin, xmax & 0 \\ +yheight & m & Height of detector. Overrides ymin, ymax & 0 \\ +restore\_neutron & 1 & If set, the monitor does not influence the neutron state & 0 \\ +nowritefile & 1 & If set, monitor will skip writing to disk & 0 \\ +\bottomrule +\end{longtable} + +\subsection*{Links} +\begin{itemize} + \item \href{run:/home/willend/willend-McCode/mcstas-comps/contrib/PSD_spinUmon.comp}{Source code} for \texttt{PSD\_spinUmon.comp}. +\end{itemize} +\IfFileExists{PSD_spinUmon_static.tex}{\input{PSD_spinUmon_static.tex}}{} \ No newline at end of file diff --git a/docs/manuals/mcstas/contrib/PerfectCrystal.tex b/docs/manuals/mcstas/contrib/PerfectCrystal.tex new file mode 100644 index 000000000..60b40ebe9 --- /dev/null +++ b/docs/manuals/mcstas/contrib/PerfectCrystal.tex @@ -0,0 +1,90 @@ +\section{The \texttt{PerfectCrystal} McStas Component} +Based on a perfect crystal component by: Miguel A. Gonzalez, A. Dianoux June 2013 (ILL) + +Changelog: +Version 1.1 +- BUGFIX: correct neutron energy shift in Doppler mode +- added option 'debyescherrer' to select analyzer geometry +- added option 'facette' to approximate analyzer sphere by small, flat crystals + +Version 1.0 +- inital release + +\subsection*{Identification} +\begin{itemize} + \item \textbf{Site:} + \item \textbf{Author:} Markus Appel + \item \textbf{Origin:} ILL / FAU Erlangen-Nuernberg + \item \textbf{Date:} 2015-12-21 +\end{itemize} + +\subsection*{Description} +\begin{lstlisting} +Perfect crystal component, primarily for use as monochromator and analyzer in +backscattering spectrometers. Reflection from a single Bragg reflex of a flat or +spherical surface is simulated using a Darwin, Ewald or Gaussian profile. Doppler +movement of the monochromator is supported as well. + +Orientation of the crystal surface is *different* from other monochromator components! +Gravitational energy shift for tall analyzers should work in principle, but it not tested yet. +See the parameter description on how to define the geometry and properties. + +[1] Website for Backscattering Spectroscopy: http://www.ill.eu/sites/BS-review/index.htm + +Examples: +IN16B (ILL) Si111 large angle analyzers (approximate dimensions): +PerfectCrystal(radius=2, lambda=6.2708, sigma=0.24e-3, +ttmin=40, ttmax=165, phimin=-45, phimax=+45, centerfocus=1) + +IN16B (ILL) Si111 Doppler monochromator: +PerfectCrystal(radius=2.165, lambda=6.2708, sigma=0.24e-3, +width = 0.500, height = 0.250, centerfocus=0, +speed = 4.7, amplitude = 0.075, exclusive=1) +\end{lstlisting} + +\subsection*{Input parameters} +Parameters in \textbf{boldface} are required; the others are optional. + +\begin{longtable}{p{0.22\textwidth}p{0.12\textwidth}p{0.46\textwidth}p{0.14\textwidth}} +\toprule +\textbf{Name} & \textbf{Unit} & \textbf{Description} & \textbf{Default} \\ +\midrule +\endhead +ttmin & deg & & NAN \\ +ttmax & deg & analyzer coverage angle in horizontal xz-plane between -180 and 180 & NAN \\ +tt0 & deg & & NAN \\ +ttwidth & deg & horizontal coverage as center and full width & NAN \\ +width & m & absolute width & NAN \\ +phimin & deg & & NAN \\ +phimax & deg & vertical analyzer coverage between -90 and 90 (-180 and 180 if debyescherrer==1) & NAN \\ +phi0 & deg & & NAN \\ +phiwidth & deg & vertical coverage as center and full width & NAN \\ +height & m & absolute height (only if debyescherrer==0) & NAN \\ +debyescherrer & -180...180 & (0/1) bend analyzer following a Debye-Scherrer ring along scattering angle tt (twotheta) (phi = & 0 \\ +facette & m & width of square crystal facettes arranged on the spherical surface (set 0 to disable). Default: 0 Warning: Facettation will fail at the poles along +-y axis. & 0 \\ +facette\_xi & deg & random misalignemt of each facette. Default: 0 & 0 \\ +centerfocus & 0/1 & Component origin is the center of the analyzer sphere if 1, if set to 0 the origin is on the analyzer surface. Default: 0 & 0 \\ +radius & m & Radius of curvature, set to 0 for a flat surface. Default: 0 & 0 \\ +tau & A\textasciicircum{}-1 & Scattering vector of the reflex (sometimes also called Q...) & NAN \\ +lambda & A & Alternatively to tau: backscattered wavelength & NAN \\ +R0 & & Peak reflectivity. Default: 1 & 1.0 \\ +dtauovertau & 1 & Plateau width of the Ewald/Darwin curve (see & NAN \\ +dtauovertau\_ext & & Relative variation of tau (randomized for each trajectory, full width) & 0 \\ +ewald & 0/1 & Use Ewald curve if 1, Darwin curve if 0. Default: 1 (Ewald) & 1 \\ +sigma & meV & Width of the Gaussian reflectivity curve in meV (corresponding to the energy resolution). (The width will be transformed and the Gaussian is actually calculated in k-space.) & NAN \\ +ismirror & 0/1 & Simply reflect all neutrons if 1. Good for debugging/visualization. Default: 0 & 0 \\ +speed & m/s & Maximum Doppler speed. The actual monochromator velocity is randomized between -speed and +speed. Default: 0 & 0 \\ +amplitude & m & Amplitude of the Doppler movement. Default: 0 & 0 \\ +smartphase & 0/1 & Optimize Doppler phase for better MC efficiency if set to 1. *WARNING:* Experimental option! Always compare to a simulation without smartphase. Better do not use smartwidth with Ewald/Darwin curves due to their endless tails. Default: 0 & 0 \\ +smartwidth & meV & Half width of the possible energy reflection window for smartphase. Default: 5*sigma OR 10*2*dtauovertau*E0 & NAN \\ +exclusive & 0/1 & If set to 1, absorb all neutrons that missed the monochromator/analyzer surface. Default: 0 & 0 \\ +transmit & 0...1 & Monte-Carlo probability of transmitting an event through the monochromator/analyzer surface. (Events with R=1.0 for DarwinE/Ewald curves are always reflected!). Default: 0 & 0 \\ +verbose & & & 0 \\ +\bottomrule +\end{longtable} + +\subsection*{Links} +\begin{itemize} + \item \href{run:/home/willend/willend-McCode/mcstas-comps/contrib/PerfectCrystal.comp}{Source code} for \texttt{PerfectCrystal.comp}. +\end{itemize} +\IfFileExists{PerfectCrystal_static.tex}{\input{PerfectCrystal_static.tex}}{} \ No newline at end of file diff --git a/docs/manuals/mcstas/contrib/Pol_bender_tapering.tex b/docs/manuals/mcstas/contrib/Pol_bender_tapering.tex new file mode 100644 index 000000000..072ea4bd2 --- /dev/null +++ b/docs/manuals/mcstas/contrib/Pol_bender_tapering.tex @@ -0,0 +1,74 @@ +\section{The \texttt{Pol\_bender\_tapering} McStas Component} +Polarising bender. + +\subsection*{Identification} +\begin{itemize} + \item \textbf{Site:} + \item \textbf{Author:} Erik Bergbaeck Knudsen (erkn@fysik.dtu.dk) + \item \textbf{Origin:} DTU Physics + \item \textbf{Date:} June 2012 +\end{itemize} + +\subsection*{Description} +\begin{lstlisting} +A component modelling a set of identical blades bent to form a multcihannel (nslits) +bender. The bender has a cylindrically curved entry plane (Will be extended to also +allow a flat entry plane). + +The bender may also be tapered such that it can have focusing or defocusing porperties. +This may be specified through the "channel_file"-parameter, which points to a data file +in which the individual channels are defined by an entry- and an exit-width. + +The file format for channel file columns: +> #d-spacing1 d-spacing2 l_spacer d-coating1 d-coating2 +> 1e-3 0.8e-3 1e-5 1e-9 1e-9 + +Each blades is considered coated with a reflecting coating, whose thickness is defined in the +latter two columsn of the channel data file. + +Coating reflectivities are read from +another data file with separate reflectivities for up and down spin. When a neutron ray hits a blade +the polarization vector associated with the ray is decomposed into spin-up and down +probablities, which in turn determines the overall reflectivity for this ray on the mirror. +Furthermore the probabilities are used to also reconstruct the polarization vector of the reflected +ray. + +File format for the reflectivity file: +> #parameter = m +> q/m R(up) R(down) + +The effect of spacers inside the channels is modelled by absorption only. The depth of the spacers +in a channel is considered constant for one channel (set in the channel data file), the number of +them is constant across all channels and is an input parameter to the component. +\end{lstlisting} + +\subsection*{Input parameters} +Parameters in \textbf{boldface} are required; the others are optional. + +\begin{longtable}{p{0.22\textwidth}p{0.12\textwidth}p{0.46\textwidth}p{0.14\textwidth}} +\toprule +\textbf{Name} & \textbf{Unit} & \textbf{Description} & \textbf{Default} \\ +\midrule +\endhead +channel\_file & & File name of file containing channel data. such as spacer widths etc. (see above for format) & "channel.dat" \\ +xwidth & m & Width at the bender entry. Currently unsupported. & 0 \\ +\textbf{yheight} & m & Height at the bender entry. & \\ +\textbf{length} & m & Length of blades that make up the bender. & \\ +\textbf{d\_substrate} & m & Thickness of the substrate. & \\ +entry\_radius & m & Radius of curvature of the entrance window. & 10 \\ +radius & m & Curvature of a single plate/polarizer. +:curve left/-:right & 100 \\ +G & m/s\textasciicircum{}2 & Magnitude of gravitation. & 9.8 \\ +nslit & 1 & Number of slits in the bender & 1 \\ +debug & & If \textgreater{} 0 print out some internal parameters. & 1 \\ +reflect\_file & & File name of file containing reflectivity data parametrized either by q or m. & NULL \\ +sigma\_abs & barn & Absorption per unit cell at v=2200 m/s of spacers. Defaults to literature value for Al. & 0.231 \\ +V0 & AA\textasciicircum{}3 & Volume of unit cell for spacers. Defaults to Al. & 66.4 \\ +nspacer & & Number of spacers per channel. & 5 \\ +\bottomrule +\end{longtable} + +\subsection*{Links} +\begin{itemize} + \item \href{run:/home/willend/willend-McCode/mcstas-comps/contrib/Pol_bender_tapering.comp}{Source code} for \texttt{Pol\_bender\_tapering.comp}. +\end{itemize} +\IfFileExists{Pol_bender_tapering_static.tex}{\input{Pol_bender_tapering_static.tex}}{} \ No newline at end of file diff --git a/docs/manuals/mcstas/contrib/Pol_pi_2_rotator.tex b/docs/manuals/mcstas/contrib/Pol_pi_2_rotator.tex new file mode 100644 index 000000000..f10bdeb0f --- /dev/null +++ b/docs/manuals/mcstas/contrib/Pol_pi_2_rotator.tex @@ -0,0 +1,40 @@ +\section{The \texttt{Pol\_pi\_2\_rotator} McStas Component} +Ideal \π/2-rotator + +\subsection*{Identification} +\begin{itemize} + \item \textbf{Site:} + \item \textbf{Author:} Erik Knudsen (erkn@fysik.dtu.dk) + \item \textbf{Origin:} Risoe + \item \textbf{Date:} 8/4-2008 +\end{itemize} + +\subsection*{Description} +\begin{lstlisting} +Simple, idelized, component that turns the polarization exactly π/2 around the specified vector +vector (rx,ry,rx). +The geometry of the component is realized as a box, where the the spin is rotated at the z-midpoint. +\end{lstlisting} + +\subsection*{Input parameters} +Parameters in \textbf{boldface} are required; the others are optional. + +\begin{longtable}{p{0.22\textwidth}p{0.12\textwidth}p{0.46\textwidth}p{0.14\textwidth}} +\toprule +\textbf{Name} & \textbf{Unit} & \textbf{Description} & \textbf{Default} \\ +\midrule +\endhead +xwidth & m & width of the component & 0.1 \\ +yheight & m & height of the component & 0.1 \\ +zdepth & m & thickness of the component & 0.01 \\ +rx & & x-component of the rotation axis & 0 \\ +ry & & y-component of the rotation axis & 0 \\ +rz & & z-component of the rotation axis & 1 \\ +\bottomrule +\end{longtable} + +\subsection*{Links} +\begin{itemize} + \item \href{run:/home/willend/willend-McCode/mcstas-comps/contrib/Pol_pi_2_rotator.comp}{Source code} for \texttt{Pol\_pi\_2\_rotator.comp}. +\end{itemize} +\IfFileExists{Pol_pi_2_rotator_static.tex}{\input{Pol_pi_2_rotator_static.tex}}{} \ No newline at end of file diff --git a/docs/manuals/mcstas/contrib/Pol_triafield.tex b/docs/manuals/mcstas/contrib/Pol_triafield.tex new file mode 100644 index 000000000..b1654bb8c --- /dev/null +++ b/docs/manuals/mcstas/contrib/Pol_triafield.tex @@ -0,0 +1,57 @@ +\section{The \texttt{Pol\_triafield} McStas Component} +Constant magnetic field in a isosceles triangular coil + +\subsection*{Identification} +\begin{itemize} + \item \textbf{Site:} + \item \textbf{Author:} Morten Sales, based on Pol\_constBfield by Peter Christiansen + \item \textbf{Origin:} Helmholtz-Zentrum Berlin + \item \textbf{Date:} 2013 +\end{itemize} + +\subsection*{Description} +\begin{lstlisting} +Rectangular box with constant B field along y-axis (up) in a isosceles triangle. +There is a guide (or precession) field as well. It is along y in the entire rectangular box. +A neutron hitting outside the box opening or the box sides is absorbed. + + +__________________ +| /\ | +| Bguide/ \Bguide | x +| / \ | ^ +| / \ | | +| / B \ | |-----> z +| / and \ | +| / Bguide \ | +| / \ | +|/________________\| + +The angle of the inclination of the triangular field boundary is given by the arctangent to xwidth/(0.5*zdepth) + +This component does NOT take gravity into account. + +Example: Pol_triafield(xwidth=0.1, yheight=0.1, zdepth=0.2, B=1e-3, Bguide=0.0) +\end{lstlisting} + +\subsection*{Input parameters} +Parameters in \textbf{boldface} are required; the others are optional. + +\begin{longtable}{p{0.22\textwidth}p{0.12\textwidth}p{0.46\textwidth}p{0.14\textwidth}} +\toprule +\textbf{Name} & \textbf{Unit} & \textbf{Description} & \textbf{Default} \\ +\midrule +\endhead +\textbf{xwidth} & m & Width of opening & \\ +\textbf{yheight} & m & Height of opening & \\ +\textbf{zdepth} & m & zdepth of field & \\ +B & T & Magnetic field along y-direction inside triangle & 0 \\ +Bguide & T & Magnetic field along y-direction inside entire box & 0 \\ +\bottomrule +\end{longtable} + +\subsection*{Links} +\begin{itemize} + \item \href{run:/home/willend/willend-McCode/mcstas-comps/contrib/Pol_triafield.comp}{Source code} for \texttt{Pol\_triafield.comp}. +\end{itemize} +\IfFileExists{Pol_triafield_static.tex}{\input{Pol_triafield_static.tex}}{} \ No newline at end of file diff --git a/docs/manuals/mcstas/contrib/Radial_div.tex b/docs/manuals/mcstas/contrib/Radial_div.tex new file mode 100644 index 000000000..be3f837b5 --- /dev/null +++ b/docs/manuals/mcstas/contrib/Radial_div.tex @@ -0,0 +1,47 @@ +\section{The \texttt{Radial\_div} McStas Component} +A radial divergence sensitive monitor with wavelength restrictions. + +\subsection*{Identification} +\begin{itemize} + \item \textbf{Site:} + \item \textbf{Author:} Kaspar Hewitt Klen\ø, modified from Hdiv\_monitor + \item \textbf{Origin:} NBI + \item \textbf{Date:} Jan 2011 +\end{itemize} + +\subsection*{Description} +\begin{lstlisting} +A radial divergence sensitive monitor with wavelength restrictions. The counts are distributed in +n pixels. + +Example: +\end{lstlisting} + +\subsection*{Input parameters} +Parameters in \textbf{boldface} are required; the others are optional. + +\begin{longtable}{p{0.22\textwidth}p{0.12\textwidth}p{0.46\textwidth}p{0.14\textwidth}} +\toprule +\textbf{Name} & \textbf{Unit} & \textbf{Description} & \textbf{Default} \\ +\midrule +\endhead +ndiv & 1 & Number of pixel rows & 20 \\ +restore\_neutron & 1 & If set, the monitor does not influence the neutron state & 0 \\ +\textbf{filename} & str & Name of file in which to store the detector image & \\ +xmin & m & Lower x bound of detector opening & 0 \\ +xmax & m & Upper x bound of detector opening & 0 \\ +ymin & m & Lower y bound of detector opening & 0 \\ +ymax & m & Upper y bound of detector opening & 0 \\ +xwidth & m & Width/diameter of detector (x). Overrides xmin,xmax. & 0 \\ +yheight & m & Height of detector (y). Overrides ymin,ymax. & 0 \\ +maxdiv\_r & deg & Maximal radial divergence detected & 2 \\ +\textbf{Lmin} & AA & Minimum wavelength detected & \\ +\textbf{Lmax} & AA & Maximum wavelength detected & \\ +\bottomrule +\end{longtable} + +\subsection*{Links} +\begin{itemize} + \item \href{run:/home/willend/willend-McCode/mcstas-comps/contrib/Radial_div.comp}{Source code} for \texttt{Radial\_div.comp}. +\end{itemize} +\IfFileExists{Radial_div_static.tex}{\input{Radial_div_static.tex}}{} \ No newline at end of file diff --git a/docs/manuals/mcstas/contrib/SANSCurve.tex b/docs/manuals/mcstas/contrib/SANSCurve.tex new file mode 100644 index 000000000..e1bf10db2 --- /dev/null +++ b/docs/manuals/mcstas/contrib/SANSCurve.tex @@ -0,0 +1,45 @@ +\section{The \texttt{SANSCurve} McStas Component} +A component mimicking the scattering from a given I(q)-curve by using +linear interpolation between the given points. + +\subsection*{Identification} +\begin{itemize} + \item \textbf{Site:} + \item \textbf{Author:} Søren Kynde (kynde@nbi.dk) + \item \textbf{Origin:} KU-Science + \item \textbf{Date:} October 17, 2012 +\end{itemize} + +\subsection*{Description} +\begin{lstlisting} +A box-shaped component simulating the scattering from any given I(q)-curve. +The component uses linear interpolation to generate the points necessary to +compute the scattering of any given neutron. +\end{lstlisting} + +\subsection*{Input parameters} +Parameters in \textbf{boldface} are required; the others are optional. + +\begin{longtable}{p{0.22\textwidth}p{0.12\textwidth}p{0.46\textwidth}p{0.14\textwidth}} +\toprule +\textbf{Name} & \textbf{Unit} & \textbf{Description} & \textbf{Default} \\ +\midrule +\endhead +DeltaRho & cm/AA\textasciicircum{}3 & Excess scattering length density of the particles. & 1.0e-14 \\ +Volume & AA\textasciicircum{}3 & Volume of the particles. & 1000.0 \\ +Concentration & mM & Concentration of sample. & 0.01 \\ +AbsorptionCrosssection & 1/m & Absorption cross section of the sample. & 0.0 \\ +\textbf{xwidth} & m & Dimension of component in the x-direction. & \\ +\textbf{yheight} & m & Dimension of component in the y-direction. & \\ +\textbf{zdepth} & m & Dimension of component in the z-direction. & \\ +\textbf{SampleToDetectorDistance} & m & Distance from sample to detector (for focusing the scattered neutrons). & \\ +\textbf{DetectorRadius} & m & Radius of the detector (for focusing the scattered neutrons). & \\ +FileWithCurve & & Datafile with the given I(q). & "Curve.dat" \\ +\bottomrule +\end{longtable} + +\subsection*{Links} +\begin{itemize} + \item \href{run:/home/willend/willend-McCode/mcstas-comps/contrib/SANSCurve.comp}{Source code} for \texttt{SANSCurve.comp}. +\end{itemize} +\IfFileExists{SANSCurve_static.tex}{\input{SANSCurve_static.tex}}{} \ No newline at end of file diff --git a/docs/manuals/mcstas/contrib/SANSCylinders.tex b/docs/manuals/mcstas/contrib/SANSCylinders.tex new file mode 100644 index 000000000..80ea91115 --- /dev/null +++ b/docs/manuals/mcstas/contrib/SANSCylinders.tex @@ -0,0 +1,43 @@ +\section{The \texttt{SANSCylinders} McStas Component} +A sample of monodisperse cylindrical particles in solution. + +\subsection*{Identification} +\begin{itemize} + \item \textbf{Site:} + \item \textbf{Author:} Martin Cramer Pedersen (mcpe@nbi.dk) + \item \textbf{Origin:} KU-Science + \item \textbf{Date:} October 17, 2012 +\end{itemize} + +\subsection*{Description} +\begin{lstlisting} +A component simulating the scattering from a box-shaped, thin solution +of monodisperse, cylindrical particles. +\end{lstlisting} + +\subsection*{Input parameters} +Parameters in \textbf{boldface} are required; the others are optional. + +\begin{longtable}{p{0.22\textwidth}p{0.12\textwidth}p{0.46\textwidth}p{0.14\textwidth}} +\toprule +\textbf{Name} & \textbf{Unit} & \textbf{Description} & \textbf{Default} \\ +\midrule +\endhead +R & AA & Semiaxis of the cross section of the cylinder. & 40.0 \\ +Height & AA & Height of the cylinder. & 100.0 \\ +Concentration & mM & Concentration of sample. & 0.01 \\ +DeltaRho & cm/AA\textasciicircum{}3 & Excess scattering length density of the particles. & 1.0e-14 \\ +AbsorptionCrosssection & 1/m & Absorption cross section of the sample. & 0.0 \\ +\textbf{xwidth} & m & Dimension of component in the x-direction. & \\ +\textbf{yheight} & m & Dimension of component in the y-direction. & \\ +\textbf{zdepth} & m & Dimension of component in the z-direction. & \\ +\textbf{SampleToDetectorDistance} & m & Distance from sample to detector (for focusing the scattered neutrons). & \\ +\textbf{DetectorRadius} & m & Radius of the detector (for focusing the scattered neutrons). & \\ +\bottomrule +\end{longtable} + +\subsection*{Links} +\begin{itemize} + \item \href{run:/home/willend/willend-McCode/mcstas-comps/contrib/SANSCylinders.comp}{Source code} for \texttt{SANSCylinders.comp}. +\end{itemize} +\IfFileExists{SANSCylinders_static.tex}{\input{SANSCylinders_static.tex}}{} \ No newline at end of file diff --git a/docs/manuals/mcstas/contrib/SANSEllipticCylinders.tex b/docs/manuals/mcstas/contrib/SANSEllipticCylinders.tex new file mode 100644 index 000000000..30795643e --- /dev/null +++ b/docs/manuals/mcstas/contrib/SANSEllipticCylinders.tex @@ -0,0 +1,45 @@ +\section{The \texttt{SANSEllipticCylinders} McStas Component} +A sample of monodisperse cylindrical particles with elliptic cross section in +solution. + +\subsection*{Identification} +\begin{itemize} + \item \textbf{Site:} + \item \textbf{Author:} Martin Cramer Pedersen (mcpe@nbi.dk) + \item \textbf{Origin:} KU-Science + \item \textbf{Date:} October 17, 2012 +\end{itemize} + +\subsection*{Description} +\begin{lstlisting} +A component simulating the scattering from a box-shaped, thin solution +of monodisperse, cylindrical particles with elliptic cross section. +\end{lstlisting} + +\subsection*{Input parameters} +Parameters in \textbf{boldface} are required; the others are optional. + +\begin{longtable}{p{0.22\textwidth}p{0.12\textwidth}p{0.46\textwidth}p{0.14\textwidth}} +\toprule +\textbf{Name} & \textbf{Unit} & \textbf{Description} & \textbf{Default} \\ +\midrule +\endhead +R1 & AA & First semiaxis of the cross section of the & 20.0 \\ +R2 & AA & Second semiaxis of the cross section of the & 40.0 \\ +Height & AA & Height of the elliptic cylinder. & 100.0 \\ +Concentration & mM & Concentration of sample. & 0.01 \\ +DeltaRho & cm/AA\textasciicircum{}3 & Excess scattering length density of the & 1.0e-14 \\ +AbsorptionCrosssection & 1/m & Absorption cross section of the sample. & 0.0 \\ +\textbf{xwidth} & m & Dimension of component in the x-direction. & \\ +\textbf{yheight} & m & Dimension of component in the y-direction. & \\ +\textbf{zdepth} & m & Dimension of component in the z-direction. & \\ +\textbf{SampleToDetectorDistance} & m & Distance from sample to detector (for & \\ +\textbf{DetectorRadius} & m & Radius of the detector (for focusing the & \\ +\bottomrule +\end{longtable} + +\subsection*{Links} +\begin{itemize} + \item \href{run:/home/willend/willend-McCode/mcstas-comps/contrib/SANSEllipticCylinders.comp}{Source code} for \texttt{SANSEllipticCylinders.comp}. +\end{itemize} +\IfFileExists{SANSEllipticCylinders_static.tex}{\input{SANSEllipticCylinders_static.tex}}{} \ No newline at end of file diff --git a/docs/manuals/mcstas/contrib/SANSLiposomes.tex b/docs/manuals/mcstas/contrib/SANSLiposomes.tex new file mode 100644 index 000000000..dbe3b48de --- /dev/null +++ b/docs/manuals/mcstas/contrib/SANSLiposomes.tex @@ -0,0 +1,50 @@ +\section{The \texttt{SANSLiposomes} McStas Component} +A sample of polydisperse liposomes in solution (water). + +\subsection*{Identification} +\begin{itemize} + \item \textbf{Site:} + \item \textbf{Author:} Martin Cramer Pedersen (mcpe@nbi.dk) + \item \textbf{Origin:} KU-Science + \item \textbf{Date:} October 17, 2012 +\end{itemize} + +\subsection*{Description} +\begin{lstlisting} +A component simulating the scattering from a box-shaped, thin solution (water) +of liposomes described by a pentuple-shell model. +\end{lstlisting} + +\subsection*{Input parameters} +Parameters in \textbf{boldface} are required; the others are optional. + +\begin{longtable}{p{0.22\textwidth}p{0.12\textwidth}p{0.46\textwidth}p{0.14\textwidth}} +\toprule +\textbf{Name} & \textbf{Unit} & \textbf{Description} & \textbf{Default} \\ +\midrule +\endhead +Radius & AA & Average thickness of the liposomes. & 800.0 \\ +Thickness & AA & Thickness of the bilayer. & 38.89 \\ +SigmaRadius & & Relative Gaussian deviation of the radius in the distribution of liposomes. & 0.20 \\ +VolumeOfHeadgroup & AA\textasciicircum{}3 & Volume of one lipid headgroup - default is POPC. & 319.0 \\ +VolumeOfCH2Tail & AA\textasciicircum{}3 & Volume of the CH2-chains of one lipid - default is POPC. & 818.8 \\ +VolumeOfCH3Tail & AA\textasciicircum{}3 & Volume of the CH3-tails of one lipid - default is POPC. & 108.6 \\ +ScatteringLengthOfHeadgroup & cm & Scattering length of one lipid headgroup - default is POPC in D2O. & 7.05E-12 \\ +ScatteringLengthOfCH2Tail & cm & Scattering length of the CH2-chains of one lipid - default is POPC in D2O. & -1.76E-12 \\ +ScatteringLengthOfCH3Tail & cm & Scattering length of the CH3-tails of one lipid - default is POPC in D2O. & -9.15E-13 \\ +Concentration & mM & Concentration of sample. & 0.01 \\ +RhoSolvent & cm/AA\textasciicircum{}3 & Scattering length density of solvent - default is D2O. & 6.4e-14 \\ +AbsorptionCrosssection & 1/m & Absorption cross section of the sample. & 0.0 \\ +\textbf{xwidth} & m & Dimension of component in the x-direction. & \\ +\textbf{yheight} & m & Dimension of component in the y-direction. & \\ +\textbf{zdepth} & m & Dimension of component in the z-direction. & \\ +\textbf{SampleToDetectorDistance} & m & Distance from sample to detector (for focusing the scattered neutrons). & \\ +\textbf{DetectorRadius} & m & Radius of the detector (for focusing the scattered neutrons). & \\ +\bottomrule +\end{longtable} + +\subsection*{Links} +\begin{itemize} + \item \href{run:/home/willend/willend-McCode/mcstas-comps/contrib/SANSLiposomes.comp}{Source code} for \texttt{SANSLiposomes.comp}. +\end{itemize} +\IfFileExists{SANSLiposomes_static.tex}{\input{SANSLiposomes_static.tex}}{} \ No newline at end of file diff --git a/docs/manuals/mcstas/contrib/SANSNanodiscs.tex b/docs/manuals/mcstas/contrib/SANSNanodiscs.tex new file mode 100644 index 000000000..5d42a935c --- /dev/null +++ b/docs/manuals/mcstas/contrib/SANSNanodiscs.tex @@ -0,0 +1,54 @@ +\section{The \texttt{SANSNanodiscs} McStas Component} +A sample of monodisperse phospholipid bilayer nanodiscs in solution (water). + +\subsection*{Identification} +\begin{itemize} + \item \textbf{Site:} + \item \textbf{Author:} Martin Cramer Pedersen (mcpe@nbi.dk) + \item \textbf{Origin:} KU-Science + \item \textbf{Date:} October 17, 2012 +\end{itemize} + +\subsection*{Description} +\begin{lstlisting} +A component simulating the scattering from a box-shaped, thin solution (water) +of monodisperse phospholipid bilayer nanodiscs. +\end{lstlisting} + +\subsection*{Input parameters} +Parameters in \textbf{boldface} are required; the others are optional. + +\begin{longtable}{p{0.22\textwidth}p{0.12\textwidth}p{0.46\textwidth}p{0.14\textwidth}} +\toprule +\textbf{Name} & \textbf{Unit} & \textbf{Description} & \textbf{Default} \\ +\midrule +\endhead +AxisRatio & & Axis ratio of the bilayer patch. & 1.4 \\ +NumberOfLipids & & Number of lipids per nanodisc. & 130.0 \\ +AreaPerLipidHeadgroup & AA\textasciicircum{}2 & Area per lipid headgroup - default is POPC. & 65.0 \\ +HeightOfMSP & AA & Height of the belt protein - default is MSP1D1. & 24.0 \\ +VolumeOfOneMSP & AA\textasciicircum{}3 & Volume of one belt protein - default is MSP1D1. & 26296.5 \\ +VolumeOfHeadgroup & AA\textasciicircum{}3 & Volume of one lipid headgroup - default is POPC. & 319.0 \\ +VolumeOfCH2Tail & AA\textasciicircum{}3 & Volume of the CH2-chains of one lipid - default is POPC. & 818.8 \\ +VolumeOfCH3Tail & AA\textasciicircum{}3 & Volume of the CH3-tails of one lipid - default is POPC. & 108.6 \\ +ScatteringLengthOfOneMSP & cm & Scattering length of one belt protein - default is MSP1D1 in D2O. & 8.8E-10 \\ +ScatteringLengthOfHeadgroup & cm & Scattering length of one lipid headgroup - default is POPC in D2O. & 7.05E-12 \\ +ScatteringLengthOfCH2Tail & cm & Scattering length of the CH2-chains of one lipid - default is POPC in D2O. & -1.76E-12 \\ +ScatteringLengthOfCH3Tail & cm & Scattering length of the CH3-tails of one lipid - default is POPC in D2O. & -9.15E-13 \\ +Roughness & & Factor used to smear the interfaces of the nanodisc. & 5.0 \\ +Concentration & mM & Concentration of sample. & 0.01 \\ +RhoSolvent & cm/AA\textasciicircum{}3 & Scattering length density of solvent - default is D2O. & 6.4e-14 \\ +AbsorptionCrosssection & 1/m & Absorption cross section of the sample. & 0.0 \\ +\textbf{xwidth} & m & Dimension of component in the x-direction. & \\ +\textbf{yheight} & m & Dimension of component in the y-direction. & \\ +\textbf{zdepth} & m & Dimension of component in the z-direction. & \\ +\textbf{SampleToDetectorDistance} & m & Distance from sample to detector (for focusing the scattered neutrons). & \\ +\textbf{DetectorRadius} & m & Radius of the detector (for focusing the scattered neutrons). & \\ +\bottomrule +\end{longtable} + +\subsection*{Links} +\begin{itemize} + \item \href{run:/home/willend/willend-McCode/mcstas-comps/contrib/SANSNanodiscs.comp}{Source code} for \texttt{SANSNanodiscs.comp}. +\end{itemize} +\IfFileExists{SANSNanodiscs_static.tex}{\input{SANSNanodiscs_static.tex}}{} \ No newline at end of file diff --git a/docs/manuals/mcstas/contrib/SANSNanodiscsFast.tex b/docs/manuals/mcstas/contrib/SANSNanodiscsFast.tex new file mode 100644 index 000000000..6f741cb83 --- /dev/null +++ b/docs/manuals/mcstas/contrib/SANSNanodiscsFast.tex @@ -0,0 +1,58 @@ +\section{The \texttt{SANSNanodiscsFast} McStas Component} +A sample of monodisperse phospholipid bilayer nanodiscs in solution (water). + +\subsection*{Identification} +\begin{itemize} + \item \textbf{Site:} + \item \textbf{Author:} Martin Cramer Pedersen (mcpe@nbi.dk) + \item \textbf{Origin:} KU-Science + \item \textbf{Date:} October 17, 2012 +\end{itemize} + +\subsection*{Description} +\begin{lstlisting} +A component very similar to EmptyNanodiscs.comp - however, the scattering +profile is only computed once, and linear interpolation is the used to +simulate the instrument. +\end{lstlisting} + +\subsection*{Input parameters} +Parameters in \textbf{boldface} are required; the others are optional. + +\begin{longtable}{p{0.22\textwidth}p{0.12\textwidth}p{0.46\textwidth}p{0.14\textwidth}} +\toprule +\textbf{Name} & \textbf{Unit} & \textbf{Description} & \textbf{Default} \\ +\midrule +\endhead +NumberOfQBins & & Number of points generated in inital scattering profile. & 200 \\ +AxisRatio & & Axis ratio of the bilayer patch. & 1.4 \\ +NumberOfLipids & & Number of lipids per nanodisc. & 130.0 \\ +AreaPerLipidHeadgroup & AA\textasciicircum{}2 & Area per lipid headgroup - default is POPC. & 65.0 \\ +HeightOfMSP & AA & Height of the belt protein - default is MSP1D1. & 24.0 \\ +VolumeOfOneMSP & AA\textasciicircum{}3 & Volume of one belt protein - default is MSP1D1. & 26296.5 \\ +VolumeOfHeadgroup & AA\textasciicircum{}3 & Volume of one lipid headgroup - default is POPC. & 319.0 \\ +VolumeOfCH2Tail & AA\textasciicircum{}3 & Volume of the CH2-chains of one lipid - default is POPC. & 818.8 \\ +VolumeOfCH3Tail & AA\textasciicircum{}3 & Volume of the CH3-tails of one lipid - default is POPC. & 108.6 \\ +ScatteringLengthOfOneMSP & cm & Scattering length of one belt protein - default is MSP1D1. & 8.8E-10 \\ +ScatteringLengthOfHeadgroup & cm & Scattering length of one lipid headgroup - default is POPC. & 7.05E-12 \\ +ScatteringLengthOfCH2Tail & cm & Scattering length of the CH2-chains of one lipid - default is POPC. & -1.76E-12 \\ +ScatteringLengthOfCH3Tail & cm & Scattering length of the CH3-tails of one lipid - default is POPC. & -9.15E-13 \\ +Roughness & & Factor used to smear the interfaces of the nanodisc. & 5.0 \\ +Concentration & mM & Concentration of sample. & 0.01 \\ +RhoSolvent & cm/AA\textasciicircum{}3 & Scattering length density of solvent - default is D2O. & 6.4e-14 \\ +AbsorptionCrosssection & 1/m & Absorption cross section of the sample. & 0.0 \\ +\textbf{xwidth} & m & Dimension of component in the x-direction. & \\ +\textbf{yheight} & m & Dimension of component in the y-direction. & \\ +\textbf{zdepth} & m & Dimension of component in the z-direction. & \\ +\textbf{SampleToDetectorDistance} & m & Distance from sample to detector (for focusing the scattered neutrons). & \\ +\textbf{DetectorRadius} & m & Radius of the detector (for focusing the scattered neutrons). & \\ +qMin & AA\textasciicircum{}-1 & Lowest q-value, for which a point is generated in the scattering profile & 0.001 \\ +qMax & AA\textasciicircum{}-1 & Highest q-value, for which a point is generated in the scattering profile & 1.0 \\ +\bottomrule +\end{longtable} + +\subsection*{Links} +\begin{itemize} + \item \href{run:/home/willend/willend-McCode/mcstas-comps/contrib/SANSNanodiscsFast.comp}{Source code} for \texttt{SANSNanodiscsFast.comp}. +\end{itemize} +\IfFileExists{SANSNanodiscsFast_static.tex}{\input{SANSNanodiscsFast_static.tex}}{} \ No newline at end of file diff --git a/docs/manuals/mcstas/contrib/SANSNanodiscsWithTags.tex b/docs/manuals/mcstas/contrib/SANSNanodiscsWithTags.tex new file mode 100644 index 000000000..2b2b3d21b --- /dev/null +++ b/docs/manuals/mcstas/contrib/SANSNanodiscsWithTags.tex @@ -0,0 +1,59 @@ +\section{The \texttt{SANSNanodiscsWithTags} McStas Component} +A sample of monodisperse phospholipid bilayer nanodiscs in solution (water) - with +histidine tag still on the belt proteins. + +\subsection*{Identification} +\begin{itemize} + \item \textbf{Site:} + \item \textbf{Author:} Martin Cramer Pedersen (mcpe@nbi.dk) + \item \textbf{Origin:} KU-Science + \item \textbf{Date:} October 17, 2012 +\end{itemize} + +\subsection*{Description} +\begin{lstlisting} +A component simulating the scattering from a box-shaped, thin solution (water) +of monodisperse phospholipid bilayer nanodiscs - with histidine tags still +on the belt proteins. +\end{lstlisting} + +\subsection*{Input parameters} +Parameters in \textbf{boldface} are required; the others are optional. + +\begin{longtable}{p{0.22\textwidth}p{0.12\textwidth}p{0.46\textwidth}p{0.14\textwidth}} +\toprule +\textbf{Name} & \textbf{Unit} & \textbf{Description} & \textbf{Default} \\ +\midrule +\endhead +AxisRatio & & Axis ratio of the bilayer patch. & 1.4 \\ +NumberOfLipids & & Number of lipids per nanodisc. & 130.0 \\ +AreaPerLipidHeadgroup & AA\textasciicircum{}2 & Area per lipid headgroup - default is POPC. & 65.0 \\ +HeightOfMSP & AA & Height of the belt protein - default is MSP1D1. & 24.0 \\ +RadiusOfGyrationForHisTag & AA & Radius of gyration for the his-tag. & 10.0 \\ +VolumeOfOneMSP & AA\textasciicircum{}3 & Volume of one belt protein - default is MSP1D1. & 26296.5 \\ +VolumeOfHeadgroup & AA\textasciicircum{}3 & Volume of one lipid headgroup - default is POPC. & 319.0 \\ +VolumeOfCH2Tail & AA\textasciicircum{}3 & Volume of the CH2-chains of one lipid - default is POPC. & 818.8 \\ +VolumeOfCH3Tail & AA\textasciicircum{}3 & Volume of the CH3-tails of one lipid - default is POPC. & 108.6 \\ +VolumeOfOneHisTag & AA\textasciicircum{}3 & Volume of one his-tag. & 2987.3 \\ +ScatteringLengthOfOneMSP & cm & Scattering length of one belt protein - default is MSP1D1. & 8.8E-10 \\ +ScatteringLengthOfHeadgroup & cm & Scattering length of one lipid headgroup - default is POPC. & 7.05E-12 \\ +ScatteringLengthOfCH2Tail & cm & Scattering length of the CH2-chains of one lipid - default is POPC. & -1.76E-12 \\ +ScatteringLengthOfCH3Tail & cm & Scattering length of the CH3-tails of one lipid - default is POPC. & -9.15E-13 \\ +ScatteringLengthOfOneHisTag & cm & Scattering length of one his-tag. & 1.10E-10 \\ +Roughness & & Factor used to smear the interfaces of the nanodisc. & 5.0 \\ +Concentration & mM & Concentration of sample. & 0.01 \\ +RhoSolvent & cm/AA\textasciicircum{}3 & Scattering length density of solvent - default is D2O. & 6.4e-14 \\ +AbsorptionCrosssection & 1/m & Absorption cross section of the sample. & 0.0 \\ +\textbf{xwidth} & m & Dimension of component in the x-direction. & \\ +\textbf{yheight} & m & Dimension of component in the y-direction. & \\ +\textbf{zdepth} & m & Dimension of component in the z-direction. & \\ +\textbf{SampleToDetectorDistance} & m & Distance from sample to detector (for focusing the scattered neutrons). & \\ +\textbf{DetectorRadius} & m & Radius of the detector (for focusing the scattered neutrons). & \\ +\bottomrule +\end{longtable} + +\subsection*{Links} +\begin{itemize} + \item \href{run:/home/willend/willend-McCode/mcstas-comps/contrib/SANSNanodiscsWithTags.comp}{Source code} for \texttt{SANSNanodiscsWithTags.comp}. +\end{itemize} +\IfFileExists{SANSNanodiscsWithTags_static.tex}{\input{SANSNanodiscsWithTags_static.tex}}{} \ No newline at end of file diff --git a/docs/manuals/mcstas/contrib/SANSNanodiscsWithTagsFast.tex b/docs/manuals/mcstas/contrib/SANSNanodiscsWithTagsFast.tex new file mode 100644 index 000000000..c50e78c00 --- /dev/null +++ b/docs/manuals/mcstas/contrib/SANSNanodiscsWithTagsFast.tex @@ -0,0 +1,62 @@ +\section{The \texttt{SANSNanodiscsWithTagsFast} McStas Component} +A sample of monodisperse phospholipid bilayer nanodiscs in solution (water) - with +histidine tag still on the belt proteins. + +\subsection*{Identification} +\begin{itemize} + \item \textbf{Site:} + \item \textbf{Author:} Martin Cramer Pedersen (mcpe@nbi.dk) + \item \textbf{Origin:} KU-Science + \item \textbf{Date:} October 17, 2012 +\end{itemize} + +\subsection*{Description} +\begin{lstlisting} +A component very similar to EmptyNanodiscsWithTags.comp - however, the +scattering profile is only computed once, and linear interpolation is the used +to simulate the instrument. +\end{lstlisting} + +\subsection*{Input parameters} +Parameters in \textbf{boldface} are required; the others are optional. + +\begin{longtable}{p{0.22\textwidth}p{0.12\textwidth}p{0.46\textwidth}p{0.14\textwidth}} +\toprule +\textbf{Name} & \textbf{Unit} & \textbf{Description} & \textbf{Default} \\ +\midrule +\endhead +NumberOfQBins & & Number of points generated in inital scattering profile. & 200 \\ +AxisRatio & & Axis ratio of the bilayer patch. & 1.4 \\ +NumberOfLipids & & Number of lipids per nanodisc. & 130.0 \\ +AreaPerLipidHeadgroup & AA\textasciicircum{}2 & Area per lipid headgroup - default is POPC. & 65.0 \\ +HeightOfMSP & AA & Height of the belt protein - default is MSP1D1. & 24.0 \\ +RadiusOfGyrationForHisTag & AA & Radius of gyration for the his-tag. & 12.7 \\ +VolumeOfOneMSP & AA\textasciicircum{}3 & Volume of one belt protein - default is MSP1D1. & 26296.5 \\ +VolumeOfHeadgroup & AA\textasciicircum{}3 & Volume of one lipid headgroup - default is POPC. & 319.0 \\ +VolumeOfCH2Tail & AA\textasciicircum{}3 & Volume of the CH2-chains of one lipid - default is POPC. & 818.8 \\ +VolumeOfCH3Tail & AA\textasciicircum{}3 & Volume of the CH3-tails of one lipid - default is POPC. & 108.6 \\ +VolumeOfOneHisTag & AA\textasciicircum{}3 & Volume of one his-tag. & 2987.3 \\ +ScatteringLengthOfOneMSP & cm & Scattering length of one belt protein - default is MSP1D1. & 8.8E-10 \\ +ScatteringLengthOfHeadgroup & cm & Scattering length of one lipid headgroup - default is POPC. & 7.05E-12 \\ +ScatteringLengthOfCH2Tail & cm & Scattering length of the CH2-chains of one lipid - default is POPC. & -1.76E-12 \\ +ScatteringLengthOfCH3Tail & cm & Scattering length of the CH3-tails of one lipid - default is POPC. & -9.15E-13 \\ +ScatteringLengthOfOneHisTag & cm & Scattering length of one his-tag. & 1.10E-10 \\ +Roughness & & Factor used to smear the interfaces of the nanodisc. & 5.0 \\ +Concentration & mM & Concentration of sample. & 0.01 \\ +RhoSolvent & cm/AA\textasciicircum{}3 & Scattering length density of solvent - default is D2O. & 6.4e-14 \\ +AbsorptionCrosssection & 1/m & Absorption cross section of the sample. & 0.0 \\ +\textbf{xwidth} & m & Dimension of component in the x-direction. & \\ +\textbf{yheight} & m & Dimension of component in the y-direction. & \\ +\textbf{zdepth} & m & Dimension of component in the z-direction. & \\ +\textbf{SampleToDetectorDistance} & m & Distance from sample to detector (for focusing the scattered neutrons). & \\ +\textbf{DetectorRadius} & m & Radius of the detector (for focusing the scattered neutrons). & \\ +qMin & AA\textasciicircum{}-1 & Lowest q-value, for which a point is generated in the scattering profile & 0.001 \\ +qMax & AA\textasciicircum{}-1 & Highest q-value, for which a point is generated in the scattering profile & 1.0 \\ +\bottomrule +\end{longtable} + +\subsection*{Links} +\begin{itemize} + \item \href{run:/home/willend/willend-McCode/mcstas-comps/contrib/SANSNanodiscsWithTagsFast.comp}{Source code} for \texttt{SANSNanodiscsWithTagsFast.comp}. +\end{itemize} +\IfFileExists{SANSNanodiscsWithTagsFast_static.tex}{\input{SANSNanodiscsWithTagsFast_static.tex}}{} \ No newline at end of file diff --git a/docs/manuals/mcstas/contrib/SANSPDB.tex b/docs/manuals/mcstas/contrib/SANSPDB.tex new file mode 100644 index 000000000..b3b45c492 --- /dev/null +++ b/docs/manuals/mcstas/contrib/SANSPDB.tex @@ -0,0 +1,46 @@ +\section{The \texttt{SANSPDB} McStas Component} +A sample describing a thin solution of proteins. This components must be compiled +with the -lgsl and -lgslcblas flags (and possibly linked to the appropriate +libraries). + +\subsection*{Identification} +\begin{itemize} + \item \textbf{Site:} + \item \textbf{Author:} Martin Cramer Pedersen (mcpe@nbi.dk) and S\øren Kynde (kynde@nbi.dk) + \item \textbf{Origin:} KU-Science + \item \textbf{Date:} October 17, 2012 +\end{itemize} + +\subsection*{Description} +\begin{lstlisting} +This components expands the formfactor amplitude of the protein on spherical +harmonics and computes the scattering profile using these. The expansion is +done on amino-acid level and does not take hydration layer into account. +The component must have a valid .pdb-file as an argument. +\end{lstlisting} + +\subsection*{Input parameters} +Parameters in \textbf{boldface} are required; the others are optional. + +\begin{longtable}{p{0.22\textwidth}p{0.12\textwidth}p{0.46\textwidth}p{0.14\textwidth}} +\toprule +\textbf{Name} & \textbf{Unit} & \textbf{Description} & \textbf{Default} \\ +\midrule +\endhead +RhoSolvent & AA & Scattering length density of the buffer. & 9.4e-14 \\ +Concentration & mM & Concentration of sample. & 0.01 \\ +AbsorptionCrosssection & 1/m & Absorption cross section of the sample. & 0.0 \\ +\textbf{xwidth} & m & Dimension of component in the x-direction. & \\ +\textbf{yheight} & m & Dimension of component in the y-direction. & \\ +\textbf{zdepth} & m & Dimension of component in the z-direction. & \\ +\textbf{SampleToDetectorDistance} & m & Distance from sample to detector (for focusing the scattered neutrons). & \\ +\textbf{DetectorRadius} & m & Radius of the detector (for focusing the scattered neutrons). & \\ +PDBFilepath & & Path to the file describing the high resolution structure of the protein. & "PDBfile.pdb" \\ +\bottomrule +\end{longtable} + +\subsection*{Links} +\begin{itemize} + \item \href{run:/home/willend/willend-McCode/mcstas-comps/contrib/SANSPDB.comp}{Source code} for \texttt{SANSPDB.comp}. +\end{itemize} +\IfFileExists{SANSPDB_static.tex}{\input{SANSPDB_static.tex}}{} \ No newline at end of file diff --git a/docs/manuals/mcstas/contrib/SANSPDBFast.tex b/docs/manuals/mcstas/contrib/SANSPDBFast.tex new file mode 100644 index 000000000..4826ebc57 --- /dev/null +++ b/docs/manuals/mcstas/contrib/SANSPDBFast.tex @@ -0,0 +1,51 @@ +\section{The \texttt{SANSPDBFast} McStas Component} +A sample describing a thin solution of proteins using linear interpolation +to increase computational speed. This components must be compiled with the +-lgsl and -lgslcblas flags (and possibly linked to the appropriate libraries). + +\subsection*{Identification} +\begin{itemize} + \item \textbf{Site:} + \item \textbf{Author:} Martin Cramer Pedersen (mcpe@nbi.dk) and S\øren Kynde (kynde@nbi.dk) + \item \textbf{Origin:} KU-Science + \item \textbf{Date:} October 17, 2012 +\end{itemize} + +\subsection*{Description} +\begin{lstlisting} +This components expands the formfactor amplitude of the protein on spherical +harmonics and computes the scattering profile using these. The expansion is +done on amino-acid level and does not take hydration layer into account. +The component must have a valid .pdb-file as an argument. + +This is fast implementation of the SANSPDB sample component. +\end{lstlisting} + +\subsection*{Input parameters} +Parameters in \textbf{boldface} are required; the others are optional. + +\begin{longtable}{p{0.22\textwidth}p{0.12\textwidth}p{0.46\textwidth}p{0.14\textwidth}} +\toprule +\textbf{Name} & \textbf{Unit} & \textbf{Description} & \textbf{Default} \\ +\midrule +\endhead +RhoSolvent & AA & Scattering length density of the buffer - default is 100\% D2O. & 9.4e-14 \\ +Concentration & mM & Concentration of sample. & 0.01 \\ +AbsorptionCrosssection & 1/m & Absorption cross section of the sample. & 0.0 \\ +\textbf{xwidth} & m & Dimension of component in the x-direction. & \\ +\textbf{yheight} & m & Dimension of component in the y-direction. & \\ +\textbf{zdepth} & m & Dimension of component in the z-direction. & \\ +\textbf{SampleToDetectorDistance} & m & Distance from sample to detector (for focusing the scattered neutrons). & \\ +\textbf{DetectorRadius} & m & Radius of the detector (for focusing the scattered neutrons). & \\ +qMin & AA\textasciicircum{}-1 & Lowest q-value, for which a point is generated in the scattering profile & 0.001 \\ +qMax & AA\textasciicircum{}-1 & Highest q-value, for which a point is generated in the scattering profile & 0.5 \\ +NumberOfQBins & & Number of points generated in inital scattering profile. & 200 \\ +PDBFilepath & & Path to the file describing the high resolution structure of the protein. & "PDBfile.pdb" \\ +\bottomrule +\end{longtable} + +\subsection*{Links} +\begin{itemize} + \item \href{run:/home/willend/willend-McCode/mcstas-comps/contrib/SANSPDBFast.comp}{Source code} for \texttt{SANSPDBFast.comp}. +\end{itemize} +\IfFileExists{SANSPDBFast_static.tex}{\input{SANSPDBFast_static.tex}}{} \ No newline at end of file diff --git a/docs/manuals/mcstas/contrib/SANSQMonitor.tex b/docs/manuals/mcstas/contrib/SANSQMonitor.tex new file mode 100644 index 000000000..f3fa29bc3 --- /dev/null +++ b/docs/manuals/mcstas/contrib/SANSQMonitor.tex @@ -0,0 +1,42 @@ +\section{The \texttt{SANSQMonitor} McStas Component} +A circular detector measuring the radial average of intensity as a function +of the momentum transform in the sample. + +\subsection*{Identification} +\begin{itemize} + \item \textbf{Site:} + \item \textbf{Author:} S\øren Kynde (kynde@nbi.dk) and Martin Cramer Pedersen (mcpe@nbi.dk) + \item \textbf{Origin:} KU-Science + \item \textbf{Date:} October 17, 2012 +\end{itemize} + +\subsection*{Description} +\begin{lstlisting} +A simple component simulating the scattering from a box-shaped, thin solution +of monodisperse, spherical particles. +\end{lstlisting} + +\subsection*{Input parameters} +Parameters in \textbf{boldface} are required; the others are optional. + +\begin{longtable}{p{0.22\textwidth}p{0.12\textwidth}p{0.46\textwidth}p{0.14\textwidth}} +\toprule +\textbf{Name} & \textbf{Unit} & \textbf{Description} & \textbf{Default} \\ +\midrule +\endhead +NumberOfBins & & Number of bins in the r (and q). & 100 \\ +RFilename & & File used for storing I(r). & "RDetector" \\ +qFilename & & File used for storing I(q). & "QDetector" \\ +\textbf{RadiusDetector} & m & Radius of the detector (in the xy-plane). & \\ +\textbf{DistanceFromSample} & m & Distance from the sample to this component. & \\ +LambdaMin & AA & Max sensitivity in lambda - used to compute the highest possible value of momentum transfer, q. & 1.0 \\ +Lambda0 & & If lambda is given, the momentum transfers of all rays are computed from this value. Otherwise, instrumental effects are neglected. & 0.0 \\ +restore\_neutron & & If set to 1, the component restores the original neutron. & 0 \\ +\bottomrule +\end{longtable} + +\subsection*{Links} +\begin{itemize} + \item \href{run:/home/willend/willend-McCode/mcstas-comps/contrib/SANSQMonitor.comp}{Source code} for \texttt{SANSQMonitor.comp}. +\end{itemize} +\IfFileExists{SANSQMonitor_static.tex}{\input{SANSQMonitor_static.tex}}{} \ No newline at end of file diff --git a/docs/manuals/mcstas/contrib/SANSShells.tex b/docs/manuals/mcstas/contrib/SANSShells.tex new file mode 100644 index 000000000..279132afd --- /dev/null +++ b/docs/manuals/mcstas/contrib/SANSShells.tex @@ -0,0 +1,43 @@ +\section{The \texttt{SANSShells} McStas Component} +A sample of monodisperse shell-like particles in solution. + +\subsection*{Identification} +\begin{itemize} + \item \textbf{Site:} + \item \textbf{Author:} Martin Cramer Pedersen (mcpe@nbi.dk) + \item \textbf{Origin:} KU-Science + \item \textbf{Date:} October 17, 2012 +\end{itemize} + +\subsection*{Description} +\begin{lstlisting} +A simple component simulating the scattering from a box-shaped, thin solution +of monodisperse, shell-like particles. +\end{lstlisting} + +\subsection*{Input parameters} +Parameters in \textbf{boldface} are required; the others are optional. + +\begin{longtable}{p{0.22\textwidth}p{0.12\textwidth}p{0.46\textwidth}p{0.14\textwidth}} +\toprule +\textbf{Name} & \textbf{Unit} & \textbf{Description} & \textbf{Default} \\ +\midrule +\endhead +R & AA & Average radius of the particles. & 100.0 \\ +Thickness & AA & Thickness of the shell - so that the outer radius is R + Thickness and the inner is R - Thickness. & 5.0 \\ +Concentration & mM & Concentration of sample. & 0.01 \\ +DeltaRho & cm/AA\textasciicircum{}3 & Excess scattering length density of the particles. & 1.0e-14 \\ +AbsorptionCrosssection & 1/m & Absorption cross section of the sample. & 0.0 \\ +\textbf{xwidth} & m & Dimension of component in the x-direction. & \\ +\textbf{yheight} & m & Dimension of component in the y-direction. & \\ +\textbf{zdepth} & m & Dimension of component in the z-direction. & \\ +\textbf{SampleToDetectorDistance} & m & Distance from sample to detector (for focusing the scattered neutrons). & \\ +\textbf{DetectorRadius} & m & Radius of the detector (for focusing the scattered neutrons). & \\ +\bottomrule +\end{longtable} + +\subsection*{Links} +\begin{itemize} + \item \href{run:/home/willend/willend-McCode/mcstas-comps/contrib/SANSShells.comp}{Source code} for \texttt{SANSShells.comp}. +\end{itemize} +\IfFileExists{SANSShells_static.tex}{\input{SANSShells_static.tex}}{} \ No newline at end of file diff --git a/docs/manuals/mcstas/contrib/SANSSpheres.tex b/docs/manuals/mcstas/contrib/SANSSpheres.tex new file mode 100644 index 000000000..b549d8948 --- /dev/null +++ b/docs/manuals/mcstas/contrib/SANSSpheres.tex @@ -0,0 +1,43 @@ +\section{The \texttt{SANSSpheres} McStas Component} +A sample of mono- or polydisperse spherical particles in solution. + +\subsection*{Identification} +\begin{itemize} + \item \textbf{Site:} + \item \textbf{Author:} Martin Cramer Pedersen (mcpe@nbi.dk) + \item \textbf{Origin:} KU-Science + \item \textbf{Date:} October 17, 2012 +\end{itemize} + +\subsection*{Description} +\begin{lstlisting} +A simple component simulating the scattering from a box-shaped, thin solution +of monodisperse, spherical particles. +\end{lstlisting} + +\subsection*{Input parameters} +Parameters in \textbf{boldface} are required; the others are optional. + +\begin{longtable}{p{0.22\textwidth}p{0.12\textwidth}p{0.46\textwidth}p{0.14\textwidth}} +\toprule +\textbf{Name} & \textbf{Unit} & \textbf{Description} & \textbf{Default} \\ +\midrule +\endhead +R & AA & Radius of the spherical particles. & 100.0 \\ +dR & AA & Variance of the radius of spherical particles. Default 0 (monodisperse spheres) & 0.0 \\ +Concentration & mM & Concentration of sample. & 0.01 \\ +DeltaRho & cm/AA\textasciicircum{}3 & Excess scattering length density of the particles. & 1.0e-14 \\ +AbsorptionCrosssection & 1/m & Absorption cross section of the sample. & 0.0 \\ +\textbf{xwidth} & m & Dimension of component in the x-direction. & \\ +\textbf{yheight} & m & Dimension of component in the y-direction. & \\ +\textbf{zdepth} & m & Dimension of component in the z-direction. & \\ +\textbf{SampleToDetectorDistance} & m & Distance from sample to detector (for focusing the scattered neutrons). & \\ +\textbf{DetectorRadius} & m & Radius of the detector (for focusing the scattered neutrons). & \\ +\bottomrule +\end{longtable} + +\subsection*{Links} +\begin{itemize} + \item \href{run:/home/willend/willend-McCode/mcstas-comps/contrib/SANSSpheres.comp}{Source code} for \texttt{SANSSpheres.comp}. +\end{itemize} +\IfFileExists{SANSSpheres_static.tex}{\input{SANSSpheres_static.tex}}{} \ No newline at end of file diff --git a/docs/manuals/mcstas/contrib/SANSSpheresPolydisperse.tex b/docs/manuals/mcstas/contrib/SANSSpheresPolydisperse.tex new file mode 100644 index 000000000..0256fdaa4 --- /dev/null +++ b/docs/manuals/mcstas/contrib/SANSSpheresPolydisperse.tex @@ -0,0 +1,43 @@ +\section{The \texttt{SANSSpheresPolydisperse} McStas Component} +A sample of mono- or polydisperse spherical particles in solution. + +\subsection*{Identification} +\begin{itemize} + \item \textbf{Site:} + \item \textbf{Author:} Linda Udby (udby@nbi.dk) - modified from SANSSpheres by Martin Cramer Pedersen (mcpe@nbi.dk) + \item \textbf{Origin:} KU-Science + \item \textbf{Date:} October 17, 2012 +\end{itemize} + +\subsection*{Description} +\begin{lstlisting} +A simple component simulating the scattering from a box-shaped, thin solution +of monodisperse, spherical particles. +\end{lstlisting} + +\subsection*{Input parameters} +Parameters in \textbf{boldface} are required; the others are optional. + +\begin{longtable}{p{0.22\textwidth}p{0.12\textwidth}p{0.46\textwidth}p{0.14\textwidth}} +\toprule +\textbf{Name} & \textbf{Unit} & \textbf{Description} & \textbf{Default} \\ +\midrule +\endhead +R & AA & Radius of the spherical particles. & 100.0 \\ +dR & AA & Variance of the radius of spherical particles. Default 0 (monodisperse spheres) & 0.0 \\ +Concentration & mM & Concentration of sample. & 0.01 \\ +DeltaRho & cm/AA\textasciicircum{}3 & Excess scattering length density of the & 1.0e-14 \\ +AbsorptionCrosssection & 1/m & Absorption cross section of the sample. & 0.0 \\ +\textbf{xwidth} & m & Dimension of component in the x-direction. & \\ +\textbf{yheight} & m & Dimension of component in the y-direction. & \\ +\textbf{zdepth} & m & Dimension of component in the z-direction. & \\ +\textbf{SampleToDetectorDistance} & m & Distance from sample to detector (for & \\ +\textbf{DetectorRadius} & m & Radius of the detector (for focusing the & \\ +\bottomrule +\end{longtable} + +\subsection*{Links} +\begin{itemize} + \item \href{run:/home/willend/willend-McCode/mcstas-comps/contrib/SANSSpheresPolydisperse.comp}{Source code} for \texttt{SANSSpheresPolydisperse.comp}. +\end{itemize} +\IfFileExists{SANSSpheresPolydisperse_static.tex}{\input{SANSSpheresPolydisperse_static.tex}}{} \ No newline at end of file diff --git a/docs/manuals/mcstas/contrib/SANS_AnySamp.tex b/docs/manuals/mcstas/contrib/SANS_AnySamp.tex new file mode 100644 index 000000000..29d0d245a --- /dev/null +++ b/docs/manuals/mcstas/contrib/SANS_AnySamp.tex @@ -0,0 +1,60 @@ +\section{The \texttt{SANS\_AnySamp} McStas Component} +Sample for Small Angle Neutron Scattering. To be customized. + +\subsection*{Identification} +\begin{itemize} + \item \textbf{Site:} + \item \textbf{Author:} Henrich Frielinghaus + \item \textbf{Origin:} FZ-Juelich/FRJ-2/IFF/KWS-2 + \item \textbf{Date:} Sept 2004 +\end{itemize} + +\subsection*{Description} +\begin{lstlisting} +Sample for Small Angle Neutron Scattering. +May be customized for Any Sample model. +Copy this component and modify it to your needs. +Just give shape of scattering function. +Normalization of scattering will be done in INITIALIZE. + +Some remarks: +Scattering function should be a defined the same way in INITIALIZE and TRACE sections +There exist maybe better library functions for the integral. + +Here for comparison: Guinier. +Transmitted paths set to 3% of all paths. In this simulation method paths are +well distributed among transmission and scattering (equally in Q-space). + +Sample components leave the units of flux for the probability +of the individual paths. That is more consitent than the +Sans_spheres routine. Furthermore one can simulate the +transmitted beam. This allows to determine the needed size of +the beam stop. Only absorption has not been included yet to +these sample-components. But thats really nothing. + +Example: SANS_AnySamp(transm=0.5, Rg=100, qmax=0.03, xwidth=0.01, yheight=0.01, zdepth=0.001) +\end{lstlisting} + +\subsection*{Input parameters} +Parameters in \textbf{boldface} are required; the others are optional. + +\begin{longtable}{p{0.22\textwidth}p{0.12\textwidth}p{0.46\textwidth}p{0.14\textwidth}} +\toprule +\textbf{Name} & \textbf{Unit} & \textbf{Description} & \textbf{Default} \\ +\midrule +\endhead +transm & 1 & coherent transmission of sample for the optical path "zdepth" & 0.5 \\ +Rg & Angs & Radius of Gyration & 100 \\ +qmax & AA-1 & Maximum scattering vector & 0.03 \\ +xwidth & m & horizontal dimension of sample, as a width & 0.01 \\ +yheight & m & vertical dimension of sample, as a height & 0.01 \\ +zdepth & m & thickness of sample & 0.001 \\ +\bottomrule +\end{longtable} + +\subsection*{Links} +\begin{itemize} + \item \href{run:/home/willend/willend-McCode/mcstas-comps/contrib/SANS_AnySamp.comp}{Source code} for \texttt{SANS\_AnySamp.comp}. + \item Sans\_spheres component +\end{itemize} +\IfFileExists{SANS_AnySamp_static.tex}{\input{SANS_AnySamp_static.tex}}{} \ No newline at end of file diff --git a/docs/manuals/mcstas/contrib/SANS_DebyeS.tex b/docs/manuals/mcstas/contrib/SANS_DebyeS.tex new file mode 100644 index 000000000..21ac3d0aa --- /dev/null +++ b/docs/manuals/mcstas/contrib/SANS_DebyeS.tex @@ -0,0 +1,53 @@ +\section{The \texttt{SANS\_DebyeS} McStas Component} +Sample for Small Angle Neutron Scattering, Debye-Scherrer Ring + +\subsection*{Identification} +\begin{itemize} + \item \textbf{Site:} + \item \textbf{Author:} Henrich Frielinghaus + \item \textbf{Origin:} FZ-Juelich/FRJ-2/IFF/KWS-2 + \item \textbf{Date:} Sept 2004 +\end{itemize} + +\subsection*{Description} +\begin{lstlisting} +Debye-Scherrer Ring: Model for highly ordered diblock copolymer. +This example is highly simple. +Multiple scattering neglected, but could be incorporated. +Sample that only produces a DebyeSherrer ring. +Advantages: Transmitted beam is simulated. +Intensities still in flux units. +Minor point: Absolute scattering probability given by transmission. + +Sample components leave the units of flux for the probability +of the individual paths. That is more consitent than the +Sans_spheres routine. Furthermore one can simulate the +transmitted beam. This allows to determine the needed size of +the beam stop. Only absorption has not been included yet to +these sample-components. But thats really nothing. + +Example: SANS_DebyeS(transm=0.5, qDS=0.008, xwidth=0.01, yheight=0.01, zdepth=0.001) +\end{lstlisting} + +\subsection*{Input parameters} +Parameters in \textbf{boldface} are required; the others are optional. + +\begin{longtable}{p{0.22\textwidth}p{0.12\textwidth}p{0.46\textwidth}p{0.14\textwidth}} +\toprule +\textbf{Name} & \textbf{Unit} & \textbf{Description} & \textbf{Default} \\ +\midrule +\endhead +transm & 1 & coherent transmission of sample for the optical path "zdepth" & 0.5 \\ +qDS & AA-1 & Scattering vector of Debye-Sherrer ring & 0.008 \\ +xwidth & m & horiz. dimension of sample, as a width (m) & 0.01 \\ +yheight & m & vert.. dimension of sample, as a height (m) & 0.01 \\ +zdepth & m & thickness of sample (m) & 0.001 \\ +\bottomrule +\end{longtable} + +\subsection*{Links} +\begin{itemize} + \item \href{run:/home/willend/willend-McCode/mcstas-comps/contrib/SANS_DebyeS.comp}{Source code} for \texttt{SANS\_DebyeS.comp}. + \item Sans\_spheres component +\end{itemize} +\IfFileExists{SANS_DebyeS_static.tex}{\input{SANS_DebyeS_static.tex}}{} \ No newline at end of file diff --git a/docs/manuals/mcstas/contrib/SANS_Guinier.tex b/docs/manuals/mcstas/contrib/SANS_Guinier.tex new file mode 100644 index 000000000..bdb0e92aa --- /dev/null +++ b/docs/manuals/mcstas/contrib/SANS_Guinier.tex @@ -0,0 +1,60 @@ +\section{The \texttt{SANS\_Guinier} McStas Component} +Sample for Small Angle Neutron Scattering, Guinier model + +\subsection*{Identification} +\begin{itemize} + \item \textbf{Site:} + \item \textbf{Author:} Henrich Frielinghaus + \item \textbf{Origin:} FZ-Juelich/FRJ-2/IFF/KWS-2 + \item \textbf{Date:} Sept 2004 +\end{itemize} + +\subsection*{Description} +\begin{lstlisting} +Sample that scatters with a Guinier shape. This is just an example where analytically +an integral exists. The neutron paths are proportional to the intensity +(low intensity > few paths). + +Guinier function (Rg) +a = Rg*Rg/3 +propability_unscaled = q * exp(-a*q*q) +integral_prop_unscal = 1/(2*a) * (1 - exp(-a*q*q)) +propability_scaled = 2*a * q*exp(-a*q*q) / (1 - exp(-a*q*q)) +integral_prop_scaled = (1 - exp(-a*q*q)) / (1 - exp(-a*qmax*qmax)) + +In this simulation method many paths occur for high propability. +For simulation of low intensities see SANS_AnySamp. + +Sample components leave the units of flux for the probability +of the individual paths. That is more consitent than the +Sans_spheres routine. Furthermore one can simulate the +transmitted beam. This allows to determine the needed size of +the beam stop. Only absorption has not been included yet to +these sample-components. But thats really nothing. + +Example: SANS_Guinier(transm=0.5, Rg=100, qmax=0.03, xwidth=0.01, yheight=0.01, zdepth=0.001) +\end{lstlisting} + +\subsection*{Input parameters} +Parameters in \textbf{boldface} are required; the others are optional. + +\begin{longtable}{p{0.22\textwidth}p{0.12\textwidth}p{0.46\textwidth}p{0.14\textwidth}} +\toprule +\textbf{Name} & \textbf{Unit} & \textbf{Description} & \textbf{Default} \\ +\midrule +\endhead +transm & 1 & (coherent) transmission of sample for the optical path "zdepth" & 0.5 \\ +Rg & Angs & Radius of Gyration & 100 \\ +qmax & AA-1 & Maximum scattering vector & 0.03 \\ +xwidth & m & horiz. dimension of sample, as a width & 0.01 \\ +yheight & m & vert.. dimension of sample, as a height & 0.01 \\ +zdepth & m & thickness of sample & 0.001 \\ +\bottomrule +\end{longtable} + +\subsection*{Links} +\begin{itemize} + \item \href{run:/home/willend/willend-McCode/mcstas-comps/contrib/SANS_Guinier.comp}{Source code} for \texttt{SANS\_Guinier.comp}. + \item Sans\_spheres component +\end{itemize} +\IfFileExists{SANS_Guinier_static.tex}{\input{SANS_Guinier_static.tex}}{} \ No newline at end of file diff --git a/docs/manuals/mcstas/contrib/SANS_Liposomes_Abs.tex b/docs/manuals/mcstas/contrib/SANS_Liposomes_Abs.tex new file mode 100644 index 000000000..d71b4f048 --- /dev/null +++ b/docs/manuals/mcstas/contrib/SANS_Liposomes_Abs.tex @@ -0,0 +1,63 @@ +\section{The \texttt{SANS\_Liposomes\_Abs} McStas Component} +Solid dilute monodisperse spheres sample with transmitted beam for Small Angle Neutron Scattering. + +\subsection*{Identification} +\begin{itemize} + \item \textbf{Site:} + \item \textbf{Author:} Wim Bouwman, Delft University of Technology + \item \textbf{Origin:} TUDelft + \item \textbf{Date:} Aug 2012 +\end{itemize} + +\subsection*{Description} +\begin{lstlisting} +Sample for Small Angle Neutron Scattering. +Modified from the Any Sample model. +Normalization of scattering is done in INITIALIZE. +Some elements of Sans_spheres have been re-used + +Some remarks: +Scattering function should be a defined the same way in INITIALIZE and TRACE sections +There exist maybe better library functions for the integral. + +Transmitted paths set to 50% of all paths to be optimised for SESANS. In this simulation method paths are +well distributed among transmission and scattering (equally in Q-space). + +Sample components leave the units of flux for the probability +of the individual paths. That is more consitent than the +Sans_spheres routine. Furthermore one can simulate the +transmitted beam. This allows to determine the needed size of +the beam stop. Absorption is included to +these sample-components. + +Example: SANS_Spheres_Abs(R=100, Phi=1e-3, Delta_rho=0.6, sigma_a = 50, qmax=0.03, xwidth=0.01, yheight=0.01, zthick=0.001) +\end{lstlisting} + +\subsection*{Input parameters} +Parameters in \textbf{boldface} are required; the others are optional. + +\begin{longtable}{p{0.22\textwidth}p{0.12\textwidth}p{0.46\textwidth}p{0.14\textwidth}} +\toprule +\textbf{Name} & \textbf{Unit} & \textbf{Description} & \textbf{Default} \\ +\midrule +\endhead +R & AA & Radius of scattering hard spheres & 100 \\ +dR & & & 0.0 \\ +Phi & 1 & Particle volume fraction & 1e-3 \\ +Delta\_rho & fm/AA\textasciicircum{}3 & Excess scattering length density & 0.6 \\ +sigma\_a & m\textasciicircum{}-1 & Absorption cross section density at 2200 m/s & 0.50 \\ +qmax & AA-1 & Maximum scattering vector (typically 10/R to observe the 3rd ring) & 0.03 \\ +xwidth & m & horiz. dimension of sample, as a width & 0.01 \\ +yheight & m & vert.. dimension of sample, as a height & 0.01 \\ +zthick & m & thickness of sample & 0.001 \\ +dbilayer & & & 35 \\ +\bottomrule +\end{longtable} + +\subsection*{Links} +\begin{itemize} + \item \href{run:/home/willend/willend-McCode/mcstas-comps/contrib/SANS_Liposomes_Abs.comp}{Source code} for \texttt{SANS\_Liposomes\_Abs.comp}. + \item Sans\_spheres component + \item SANS\_AnySamp component +\end{itemize} +\IfFileExists{SANS_Liposomes_Abs_static.tex}{\input{SANS_Liposomes_Abs_static.tex}}{} \ No newline at end of file diff --git a/docs/manuals/mcstas/contrib/SANS_benchmark2.tex b/docs/manuals/mcstas/contrib/SANS_benchmark2.tex new file mode 100644 index 000000000..efc33b9f6 --- /dev/null +++ b/docs/manuals/mcstas/contrib/SANS_benchmark2.tex @@ -0,0 +1,56 @@ +\section{The \texttt{SANS\_benchmark2} McStas Component} +SANS\_benchmark2 sample from FZ J\ülichx + +\subsection*{Identification} +\begin{itemize} + \item \textbf{Site:} + \item \textbf{Author:} Henrich Frielinghaus + \item \textbf{Origin:} FZJ + \item \textbf{Date:} Apr 2013 +\end{itemize} + +\subsection*{Description} +\begin{lstlisting} +Several benchmark SANS samples are defined in this routine. The first ones are analytically defined. Higher numbers are forseen for tables. +In principle, the exact definitions can be changed freely - inside this code. +The consideration of all parameters as a routine parameter would be too much for the general purpose. +The user might decide to make single parameters routine parameters. + +For the scattering simulation a high fraction of neutron paths is directed to the scattering (exact fraction is sc_aim). +The remaining paths are used for the transmitted beams. The absolute intensities are treated accordingly, and the p-parameter is set accordingly. + +For the scattering probability, the integral of the scattering function between Q = 0.0001 and 1.0 AA-1 is calculated. +This is used in terms of transmisson, and of course for the scattering probability. +In this way, multiple scattering processes could be treated as well. + +The typical SANS range was considered to be between 0.0001 and 1.0 AA-1. +This means that the scattered neutrons are equally distributed in this range on logarithmic Q-scales. +The Q-parameters can be changed still inside the code, if needed. + +Example: SANS_benchmark(xwidth=0.01, yheight=0.01, zthick=0.001, model=1.0, dsdw_inc=0.02, sc_aim=0.97, sans_aim=0.95, singlesp = 0.0) +\end{lstlisting} + +\subsection*{Input parameters} +Parameters in \textbf{boldface} are required; the others are optional. + +\begin{longtable}{p{0.22\textwidth}p{0.12\textwidth}p{0.46\textwidth}p{0.14\textwidth}} +\toprule +\textbf{Name} & \textbf{Unit} & \textbf{Description} & \textbf{Default} \\ +\midrule +\endhead +xwidth & m & width of sample volume & 0.01 \\ +yheight & m & height of sample volume & 0.01 \\ +zthick & m & thickness of sample volume & 0.001 \\ +model & & model no., real variable will be rounded. negative numbers interpreted as model \#0, too large as \#18. & 1.0 \\ +dsdw\_inc & & the incoherent background from the overall sample (cm-1), should read ca. 1.0 for water, 0.5 for half D2O, half H2O, and ca. 0.02 for D2O & 0.02 \\ +sc\_aim & & the fraction of neutron paths used to represent the scattered neutrons (including everything: incoherent and coherent). rest is transmission. & 0.97 \\ +sans\_aim & & the fraction of neutron paths used to represent the scattered neutrons in the sans-range (up to 1.0AA-1). rest is incoherent with Q\textgreater{}1AA-1. & 0.95 \\ +singlesp & & switches between multiple scattering (parameter zero 0.0) and single scattering (parameter 1.0). The sc\_aim directs a fraction of paths to the first scattering process accordingly. The no. of paths for the second scattering process is derived from the real probability. Up to 10 scattering processes are considered. & 0.0 \\ +\bottomrule +\end{longtable} + +\subsection*{Links} +\begin{itemize} + \item \href{run:/home/willend/willend-McCode/mcstas-comps/contrib/SANS_benchmark2.comp}{Source code} for \texttt{SANS\_benchmark2.comp}. +\end{itemize} +\IfFileExists{SANS_benchmark2_static.tex}{\input{SANS_benchmark2_static.tex}}{} \ No newline at end of file diff --git a/docs/manuals/mcstas/contrib/SNS_source.tex b/docs/manuals/mcstas/contrib/SNS_source.tex new file mode 100644 index 000000000..58859b5b9 --- /dev/null +++ b/docs/manuals/mcstas/contrib/SNS_source.tex @@ -0,0 +1,55 @@ +\section{The \texttt{SNS\_source} McStas Component} +Modified: G. E. Granroth Nov 2014 Move to Mcstas V2 +Modified: J.Y.Y. Lin April 2021 to Fix race condition +Modified: P. WIllendrup 2021 Move to Move to Mcstas Version 3 and enable GPus + +A source that produces a time and energy distribution from the SNS moderator files + +\subsection*{Identification} +\begin{itemize} + \item \textbf{Site:} + \item \textbf{Author:} G. Granroth + \item \textbf{Origin:} SNS Project Oak Ridge National Laboratory + \item \textbf{Date:} July 2004 +\end{itemize} + +\subsection*{Description} +\begin{lstlisting} +Produces a time-of-flight spectrum from SNS moderator files +moderator files can be obtained from the SNS website . +IMPORTANT: The output units of this component are N/pulse +IMPORTANT: The component needs a FULL PATH to the source input file +Notes: +(1) the raw moderator files are per Sr. The focusing parameters provide the solid +angle accepted by the guide to remove the Sr dependence from the output. Therefore +the best practice is to set focus_xw and focus_yh to the width and height of the next beam +component, respectively. The dist parameter should then be set as the distance +from the moderator to the first component. +(2) This component works purely by interpolation. Therefore be sure that Emin and +Emax are within the limits of the moderator file +\end{lstlisting} + +\subsection*{Input parameters} +Parameters in \textbf{boldface} are required; the others are optional. + +\begin{longtable}{p{0.22\textwidth}p{0.12\textwidth}p{0.46\textwidth}p{0.14\textwidth}} +\toprule +\textbf{Name} & \textbf{Unit} & \textbf{Description} & \textbf{Default} \\ +\midrule +\endhead +\textbf{filename} & & Filename of source data & \\ +xwidth & m & width of moderator & 0.1 \\ +yheight & m & height of moderator & 0.12 \\ +\textbf{dist} & m & Distance from source to the focusing rectangle & \\ +\textbf{focus\_xw} & m & Width of focusing rectangle & \\ +\textbf{focus\_yh} & m & Height of focusing rectangle & \\ +\textbf{Emin} & meV & minimum energy of neutron to generate & \\ +\textbf{Emax} & meV & maximum energy of neutron to generate & \\ +\bottomrule +\end{longtable} + +\subsection*{Links} +\begin{itemize} + \item \href{run:/home/willend/willend-McCode/mcstas-comps/contrib/SNS_source.comp}{Source code} for \texttt{SNS\_source.comp}. +\end{itemize} +\IfFileExists{SNS_source_static.tex}{\input{SNS_source_static.tex}}{} \ No newline at end of file diff --git a/docs/manuals/mcstas/contrib/SNS_source_analytic.tex b/docs/manuals/mcstas/contrib/SNS_source_analytic.tex new file mode 100644 index 000000000..357b06c55 --- /dev/null +++ b/docs/manuals/mcstas/contrib/SNS_source_analytic.tex @@ -0,0 +1,67 @@ +\section{The \texttt{SNS\_source\_analytic} McStas Component} +A source that produces a time and energy distribution from +parameterized SNS moderator files + +\subsection*{Identification} +\begin{itemize} + \item \textbf{Site:} + \item \textbf{Author:} F. X. Gallmeier + \item \textbf{Origin:} SNS Oak Ridge National Laboratory + \item \textbf{Date:} October 18, 2010 +\end{itemize} + +\subsection*{Description} +\begin{lstlisting} +Produces a time-of-flight spectrum from SNS moderator files +moderator files can be obtained from the author +IMPORTANT: The output units of this component are N/pulse +IMPORTANT: The component needs a FULL PATH to the source input file +Notes: +(1) the raw moderator files are per Sr. The parameters focus_xw focus_yh and dist +provide the solid angle with which the beam line is served. +The best practice is to set focus_xw and focus_yh to the width and height of the +closest beam component, and dist as the distance from the moderator +location to this component. +(2) Be sure that Emin and Emax are within the limits of 1e-5 to 100 eV +(3) the proton pulse length T determines short- and long-pulse mode + +Beamport definitions: +BL11: a1Gw2-11-f5_fit_fit.dat +BL14: a1Gw2-14-f5_fit_fit.dat +BL17: a1Gw2-17-f5_fit_fit.dat +BL02: a1Gw2-2-f5_fit_fit.dat +BL05: a1Gw2-5-f5_fit_fit.dat +BL08: a1Gw2-8-f5_fit_fit.dat +\end{lstlisting} + +\subsection*{Input parameters} +Parameters in \textbf{boldface} are required; the others are optional. + +\begin{longtable}{p{0.22\textwidth}p{0.12\textwidth}p{0.46\textwidth}p{0.14\textwidth}} +\toprule +\textbf{Name} & \textbf{Unit} & \textbf{Description} & \textbf{Default} \\ +\midrule +\endhead +\textbf{filename} & & Filename of source data & \\ +xwidth & m & width of moderator (default 0.1 m) & 0.10 \\ +yheight & m & height of moderator (default 0.12 m) & 0.12 \\ +\textbf{dist} & m & Distance from source to the focusing rectangle (no default) & \\ +\textbf{focus\_xw} & m & Width of focusing rectangle (no default) & \\ +\textbf{focus\_yh} & m & Height of focusing rectangle (no default) & \\ +Emin & meV & minimum energy of neutrons (default 0.01 meV) & 0.01 \\ +Emax & meV & maximum energy of neutrons (default 1e5 meV) & 1.0e5 \\ +tinmin & us & minimum time of neutrons (default 0 us) & 0.0 \\ +tinmax & us & maximum time of neutrons (default 2000 us) & 2000.0 \\ +sample\_E & & sample energy from: (default 0) & 0 \\ +sample\_t & & sample t from: (default 0) & 0 \\ +proton\_T & us & proton pulse length (0 us) & 0.0 \\ +p\_power & MW & proton power (default 2 MW) & 2.0 \\ +n\_pulses & & number of pulses (default 1) & 1.0 \\ +\bottomrule +\end{longtable} + +\subsection*{Links} +\begin{itemize} + \item \href{run:/home/willend/willend-McCode/mcstas-comps/contrib/SNS_source_analytic.comp}{Source code} for \texttt{SNS\_source\_analytic.comp}. +\end{itemize} +\IfFileExists{SNS_source_analytic_static.tex}{\input{SNS_source_analytic_static.tex}}{} \ No newline at end of file diff --git a/docs/manuals/mcstas/contrib/Sans_liposomes_new.tex b/docs/manuals/mcstas/contrib/Sans_liposomes_new.tex new file mode 100644 index 000000000..ab61d6c40 --- /dev/null +++ b/docs/manuals/mcstas/contrib/Sans_liposomes_new.tex @@ -0,0 +1,54 @@ +\section{The \texttt{Sans\_liposomes\_new} McStas Component} +Release: McStas 1.12 + +SANS sample, spherical shells in thin solution with gaussian size distribution + +\subsection*{Identification} +\begin{itemize} + \item \textbf{Site:} + \item \textbf{Author:} P. Willendrup, K. Lefmann, L. Arleth, L. Udby + \item \textbf{Origin:} Risoe + \item \textbf{Date:} 19.12.2003 +\end{itemize} + +\subsection*{Description} +\begin{lstlisting} +Sample for Small Angle Neutron Scattering - spherical shells in thin solution with gaussian size distribution +The shape of the sample may be a cylinder of given radius or a box with dimensions +xwidth, yheight, zthick. qmax defines a cutoff in q. + +Example: Sans_spheres(R = 100, dR = 5, dbilayer=35, Phi = 1e-3, Delta_rho = 0.6, sigma_a = 50, qmax = 0.3 ,xwidth=0.01, yheight=0.01, zthick=0.005) + +%BUGS +This component does NOT simulate absolute intensities. This latter depends on the detector parameters. +\end{lstlisting} + +\subsection*{Input parameters} +Parameters in \textbf{boldface} are required; the others are optional. + +\begin{longtable}{p{0.22\textwidth}p{0.12\textwidth}p{0.46\textwidth}p{0.14\textwidth}} +\toprule +\textbf{Name} & \textbf{Unit} & \textbf{Description} & \textbf{Default} \\ +\midrule +\endhead +R & AA & Radius of scattering hard spheres & 100 \\ +dR & & & 0.0 \\ +Phi & 1 & Particle volume fraction & 1e-3 \\ +Delta\_rho & fm/AA\textasciicircum{}3 & Excess scattering length density & 0.6 \\ +sigma\_a & m\textasciicircum{}-1 & Absorption cross section density at 2200 m/s & 0.50 \\ +dist & m & Distance from sample to detector & 6 \\ +Rdet & m & Detector (disk-shaped) radius & 0.5 \\ +xwidth & m & horiz. dimension of sample, as a width & 0.01 \\ +yheight & m & vert . dimension of sample, as a height & 0.01 \\ +zthick & m & thickness of sample & 0.005 \\ +qmax & AA\textasciicircum{}-1 & Maximum momentum transfer & 0 \\ +dbilayer & AA & Thickness of shell & 35 \\ +\bottomrule +\end{longtable} + +\subsection*{Links} +\begin{itemize} + \item \href{run:/home/willend/willend-McCode/mcstas-comps/contrib/Sans_liposomes_new.comp}{Source code} for \texttt{Sans\_liposomes\_new.comp}. + \item The test/example instrument \textless{}a href="../examples/SANS.instr"\textgreater{}SANS.instr\textless{}/a\textgreater{}. +\end{itemize} +\IfFileExists{Sans_liposomes_new_static.tex}{\input{Sans_liposomes_new_static.tex}}{} \ No newline at end of file diff --git a/docs/manuals/mcstas/contrib/Sapphire_Filter.tex b/docs/manuals/mcstas/contrib/Sapphire_Filter.tex new file mode 100644 index 000000000..3dbeec6d7 --- /dev/null +++ b/docs/manuals/mcstas/contrib/Sapphire_Filter.tex @@ -0,0 +1,55 @@ +\section{The \texttt{Sapphire\_Filter} McStas Component} +Sapphire filter at 300K + +\subsection*{Identification} +\begin{itemize} + \item \textbf{Site:} + \item \textbf{Author:} Jonas Okkels Birk (based upon Filteg\_Graphite by Thomas C Hansen (2000)) + \item \textbf{Origin:} PSI + \item \textbf{Date:} 6 December 2006 +\end{itemize} + +\subsection*{Description} +\begin{lstlisting} +ESCRIPTION + +This sapphire filter, defined by two identical rectangular opening apertures, +is based upon an absorption function absorp=exp(L*A+C*(exp(-(B/L^2+D/L^4)))) +decribed by Freund (1983) Nucl. Instrum. Methods, A278, 379-401. The +defaultvalues is for Sapphire at 300K as found by measurement by (Mildner & +Lamaze (1998) J. Appl. Cryst. 31,835-840 +( http://journals.iucr.org/j/issues/1998/06/00/hw0070/hw0070bdy.html#BB4)). It +is possble to ajust the formular to other materials or temperatures by typing in +other parameters. +The transmission in sapphire is only lightly demependt on temperature, but +The formular is only cheked at wavelenths between 0.5 and 14 AA (0.4 meV 0.3 +eV). +The filter is for example used in the Eiger beamline at PSI to cut of high +energies. +\end{lstlisting} + +\subsection*{Input parameters} +Parameters in \textbf{boldface} are required; the others are optional. + +\begin{longtable}{p{0.22\textwidth}p{0.12\textwidth}p{0.46\textwidth}p{0.14\textwidth}} +\toprule +\textbf{Name} & \textbf{Unit} & \textbf{Description} & \textbf{Default} \\ +\midrule +\endhead +xmin & m & Lower x bound & -0.16 \\ +xmax & m & Upper x bound & 0.16 \\ +ymin & m & Lower y bound & -0.16 \\ +ymax & m & Upper y bound & 0.16 \\ +len & m & Thickness of filter & 0.1 \\ +A & m\textasciicircum{}-1 AA\textasciicircum{}-1 & & 0.8116 \\ +B & AA\textasciicircum{}2 & & 0.1618 \\ +C & m\textasciicircum{}-1 & & 21.24 \\ +D & AA\textasciicircum{}4 & & 0.1291 \\ +\bottomrule +\end{longtable} + +\subsection*{Links} +\begin{itemize} + \item \href{run:/home/willend/willend-McCode/mcstas-comps/contrib/Sapphire_Filter.comp}{Source code} for \texttt{Sapphire\_Filter.comp}. +\end{itemize} +\IfFileExists{Sapphire_Filter_static.tex}{\input{Sapphire_Filter_static.tex}}{} \ No newline at end of file diff --git a/docs/manuals/mcstas/contrib/SiC.tex b/docs/manuals/mcstas/contrib/SiC.tex new file mode 100644 index 000000000..dd5750471 --- /dev/null +++ b/docs/manuals/mcstas/contrib/SiC.tex @@ -0,0 +1,36 @@ +\section{The \texttt{SiC} McStas Component} +SiC layer sample + +\subsection*{Identification} +\begin{itemize} + \item \textbf{Site:} + \item \textbf{Author:} \textless{}a href="mailto:S.RYCROFT@IRI.TUDELFT.NL"\textgreater{}S. Rycroft\textless{}/a\textgreater{} + \item \textbf{Origin:} IRI. + \item \textbf{Date:} Jan 2000 +\end{itemize} + +\subsection*{Description} +\begin{lstlisting} +SiC layer sample + +Example: SiC() +\end{lstlisting} + +\subsection*{Input parameters} +Parameters in \textbf{boldface} are required; the others are optional. + +\begin{longtable}{p{0.22\textwidth}p{0.12\textwidth}p{0.46\textwidth}p{0.14\textwidth}} +\toprule +\textbf{Name} & \textbf{Unit} & \textbf{Description} & \textbf{Default} \\ +\midrule +\endhead +\textbf{xlength} & m & length of SiC plate & \\ +\textbf{yheight} & m & height of SiC plate & \\ +\bottomrule +\end{longtable} + +\subsection*{Links} +\begin{itemize} + \item \href{run:/home/willend/willend-McCode/mcstas-comps/contrib/SiC.comp}{Source code} for \texttt{SiC.comp}. +\end{itemize} +\IfFileExists{SiC_static.tex}{\input{SiC_static.tex}}{} \ No newline at end of file diff --git a/docs/manuals/mcstas/contrib/Single_crystal_inelastic.tex b/docs/manuals/mcstas/contrib/Single_crystal_inelastic.tex new file mode 100644 index 000000000..9915a8f2f --- /dev/null +++ b/docs/manuals/mcstas/contrib/Single_crystal_inelastic.tex @@ -0,0 +1,98 @@ +\section{The \texttt{Single\_crystal\_inelastic} McStas Component} +An extension of Single crystal with material dispersion + +\subsection*{Identification} +\begin{itemize} + \item \textbf{Site:} + \item \textbf{Author:} Duc Le + \item \textbf{Origin:} STFC + \item \textbf{Date:} August 2020 +\end{itemize} + +\subsection*{Description} +\begin{lstlisting} +The component handles a 4D S(q,w) material dispersion, and scatters neutrons +out of it. It is based on the Isotropic_Sqw methodology, extended to 4D. + +A number of approximations are applied: + +- geometry is restricted to box, cylinder and sphere +- ignore absorption, multiple scattering and incoherent scattering +- no temperature handling. The temperature must be taken into account when +generating the S(q,w) data sets, which should contain Bose/detailed balance. +- intensity is used as provided by the S(q,w) data set + +We recommend that you first try the Test_Single_crystal_inelastic example to +learn how to use this complex component. + +4D S(q,w) data files +-------------------- + +The input data file derives from other McStas formats. It may contain structural +information as in Lau/Laz files, and a list of S(q,w) [one per row] with 5 columns + +[ H K L E S(q,w) ] + +An example file example.sqw4 is provided in the McStas/Data directory. + +You may generate such files using iFit such as: + +s = sqw_vaks('defaults'); % a 4D model +d = iData(s); % use default coarse grid for axes [-0.5:0.5] +saveas(d, 'sx_coh.sqw4', 'mcstas'); % export to 4D Sqw file + +%VALIDATION: +This component is undergoing validation. +\end{lstlisting} + +\subsection*{Input parameters} +Parameters in \textbf{boldface} are required; the others are optional. + +\begin{longtable}{p{0.22\textwidth}p{0.12\textwidth}p{0.46\textwidth}p{0.14\textwidth}} +\toprule +\textbf{Name} & \textbf{Unit} & \textbf{Description} & \textbf{Default} \\ +\midrule +\endhead +mosaic\_AB & arcmin,arcmin,1,1,1,1,1,1 & In Plane mosaic rotation and plane vectors (anisotropic), & \{0,0, 0,0,0, 0,0,0\} \\ +sqw & string & Name of a 4d S(q,w) file - example.sqw4 is included in your installation & 0 \\ +geometry & string & Name of an Object File Format (OFF) or PLY file for complex geometry. The OFF/PLY file may be generated from XYZ coordinates using qhull/powercrust. & 0 \\ +qwidth & & & 0.05 \\ +xwidth & m & Width of crystal. & 0 \\ +yheight & m & Height of crystal. & 0 \\ +zdepth & m & Depth of crystal (no extinction simulated) & 0 \\ +radius & m & Outer radius of sample in (x,z) plane. & 0 \\ +delta\_d\_d & 1 & Lattice spacing variance, gaussian RMS. & 1e-4 \\ +mosaic & arcmin & Isotropic crystal mosaic, gaussian RMS. Puts the crystal in the isotropic mosaic model state, thus disregarding other mosaicity parameters. & -1 \\ +mosaic\_a & arcmin & Horizontal (rotation around lattice vector a) mosaic (anisotropic), gaussian RMS. Put the crystal in the anisotropic crystal vector state. I.e. model mosaicity through rotation around the crystal lattice vectors. Has precedence over in-plane mosaic model. & -1 \\ +mosaic\_b & arcmin & Vertical (rotation around lattice vector b) mosaic (anisotropic), gaussian RMS. & -1 \\ +mosaic\_c & arcmin & Out-of-plane (Rotation around lattice vector c) mosaic (anisotropic), gaussian RMS. & -1 \\ +recip\_cell & 1 & Choice of direct/reciprocal (0/1) unit cell definition. & 0 \\ +barns & 1 & Flag to indicate if |F|\textasciicircum{}2 from 'reflections' is in barns or fm\textasciicircum{}2. & 0 \\ +ax & AA / AA\textasciicircum{}-1 & Coordinates of first (direct/recip) unit cell vector. & 0 \\ +ay & AA / AA\textasciicircum{}-1 & a on y axis & 0 \\ +az & AA / AA\textasciicircum{}-1 & a on z axis & 0 \\ +bx & AA / AA\textasciicircum{}-1 & Coordinates of second (direct/recip) unit cell vector. & 0 \\ +by & AA / AA\textasciicircum{}-1 & b on y axis & 0 \\ +bz & AA / AA\textasciicircum{}-1 & b on z axis & 0 \\ +cx & AA / AA\textasciicircum{}-1 & Coordinates of third (direct/recip) unit cell vector. & 0 \\ +cy & AA / AA\textasciicircum{}-1 & c on y axis & 0 \\ +cz & AA / AA\textasciicircum{}-1 & c on z axis & 0 \\ +p\_transmit & 1 & Monte Carlo probability for neutrons to be transmitted & -1 \\ +sigma\_abs & barns & Absorption cross-section per unit cell at 2200 m/s. & 0 \\ +sigma\_inc & barns & Incoherent scattering cross-section per unit cell. & 0 \\ +aa & deg & Unit cell angles alpha, beta and gamma. Then uses norms of & 0 \\ +bb & deg & Beta angle. & 0 \\ +cc & deg & Gamma angle. & 0 \\ +order & 1 & Limit multiple scattering up to given order & 0 \\ +RX & m & Radius of horizontal along X lattice curvature. flat for 0. & 0 \\ +RY & m & Radius of vertical lattice curvature. flat for 0. & 0 \\ +RZ & m & Radius of horizontal along Z lattice curvature. flat for 0. & 0 \\ +max\_stored\_ki & & & 1000 \\ +\bottomrule +\end{longtable} + +\subsection*{Links} +\begin{itemize} + \item \href{run:/home/willend/willend-McCode/mcstas-comps/contrib/Single_crystal_inelastic.comp}{Source code} for \texttt{Single\_crystal\_inelastic.comp}. +\end{itemize} +\IfFileExists{Single_crystal_inelastic_static.tex}{\input{Single_crystal_inelastic_static.tex}}{} \ No newline at end of file diff --git a/docs/manuals/mcstas/contrib/Source_custom.tex b/docs/manuals/mcstas/contrib/Source_custom.tex new file mode 100644 index 000000000..cf885165a --- /dev/null +++ b/docs/manuals/mcstas/contrib/Source_custom.tex @@ -0,0 +1,131 @@ +\section{The \texttt{Source\_custom} McStas Component} +A flexible pulsed or continuous source with customisable parameters. Multiple pulses can be simulated over time. + +\subsection*{Identification} +\begin{itemize} + \item \textbf{Site:} + \item \textbf{Author:} Pablo Gila-Herranz, based on 'Source\_pulsed' by K. Lieutenant + \item \textbf{Origin:} Materials Physics Center (CFM-MPC), CSIC-UPV/EHU + \item \textbf{Date:} May 2025 +\end{itemize} + +\subsection*{Description} +\begin{lstlisting} +Produces a custom pulse spectrum with a wavelength distribution as a sum of up to 3 Maxwellian distributions and one of undermoderated neutrons. + +Usage: + +By default, all Maxwellian distributions are assumed to come from anywhere in the moderator. +A custom radius r_i can be defined such that the central circle is at temperature T1, +and the surrounding ring is at temperature T2. +The third Maxwellian distribution at temperature T3 always comes from anywhere in the moderator. + +Multiple pulses can be simulated over time with the n_pulses parameter. +The input flux is in units of [1/(cm^2 sr s AA)], and the output flux is per second, regardless of the number of pulses. +This means that the intensity spreads over n_pulses, so that the units of neutrons per second are preserved. +To simulate only the neutron counts of a single pulse, the input flux should be divided by the frequency. +Bear in mind that the maximum emission time is given by t_pulse * tmax_multiplier, +so short pulses with long tails may require a higher tmax_multiplier value (3 by default). + +To simulate a continuous source, set a pulse length equal to the pulse period (e.g. t_pulse=1.0, freq=1.0). +Note that this continuous beam is simulated over time, unlike other continuous sources in McStas which produce a Dirac delta at time 0. + +Parameters xwidth and yheight must be provided for rectangular moderators, otherwise a circular shape is assumed. + +Model description: + +The normalised Maxwellian distribution for moderated neutrons is defined by [1] +

    +$M(\lambda)=\frac{2a^2}{T^2\lambda^5}\exp\left(-\frac{a}{T\lambda^{2}}\right)$ +
    +where +
    +$a=\left(\frac{h^2}{2m_{N}k_{B}}\right)$ +
    +and the joining function for the under-moderated neutrons is given by [1] +
    +$M(\lambda)_{um}=\frac{1}{\lambda(1+\exp(\lambda\chi-\kappa))}$ +
    + +The normalised time structure of the long pulse is defined by [2] +
    +$N_{t<=t_p}=1-\exp\left(-\frac{t}{\tau/n}\right)$ +
    +
    +$N_{t>t_p}=\exp\left(-\frac{t-t_p}{\tau}\right)-\exp\left(-\frac{t}{\tau/n}\right)$ +
    +where tp is the pulse period, tau is the pulse decay time constant, and n is the ratio of decay to ascend time constants. + +Parameters for some sources: + +HBS thermal source: +t_pulse=0.016, freq=24.0, xwidth=0.04, yheight=0.04, +T1=325.0, I1=0.68e+12, tau1=0.000125, +I_um=2.47e+10, chi_um=2.5 + +HBS cold source: +t_pulse=0.016, freq=24.0, radius=0.010, +T1=60.0, I1=1.75e+12, tau1=0.000170, +I_um=3.82e+10, chi_um=0.9 + +HBS bi-spectral: +t_pulse=0.016, freq=24.0, radius=0.022, r_i=0.010, +T1= 60.0, I1=1.75e+12, tau1=0.000170, +T2=305.0, I2=0.56e+12, tau2=0.000130, +I_um=3.82e+10, chi_um=2.5 + +PSI cold source: +t_pulse=1, freq=1, xwidth=0.1, yheight=0.1, +T1=296.2, I1=8.5e+11, T2=40.68, I2=5.2e+11 + +References: +[1] J. M. Carpenter et al, Nuclear Instruments and Methods in Physics Research Section A, 234, 542-551 (1985). +[2] J. M. Carpenter and W. B. Yelon, Methods in Experimental Physics 23, p. 127, Chapter 2, Neutron Sources (1986). +\end{lstlisting} + +\subsection*{Input parameters} +Parameters in \textbf{boldface} are required; the others are optional. + +\begin{longtable}{p{0.22\textwidth}p{0.12\textwidth}p{0.46\textwidth}p{0.14\textwidth}} +\toprule +\textbf{Name} & \textbf{Unit} & \textbf{Description} & \textbf{Default} \\ +\midrule +\endhead +target\_index & 1 & Relative index of component to focus at, e.g. next is +1 (used to compute 'dist' automatically) & 1 \\ +dist & m & Distance from the source to the target & 0.0 \\ +focus\_xw & m & Width of the target (focusing rectangle) & 0.02 \\ +focus\_yh & m & Height of the target (focusing rectangle) & 0.02 \\ +xwidth & m & Width of the source & 0.0 \\ +yheight & m & Height of the source & 0.0 \\ +radius & m & Outer radius of the source (ignored if xwidth and yheight are set) & 0.010 \\ +r\_i & m & Radius of a central circle at temperature T1, sorrounded by a ring at temperature T2 (ignored by default) & 0.0 \\ +\textbf{Lmin} & AA & Lower edge of the wavelength distribution & \\ +\textbf{Lmax} & AA & Upper edge of the wavelength distribution & \\ +\textbf{freq} & Hz & Frequency of pulses & \\ +\textbf{t\_pulse} & s & Proton pulse length & \\ +tmax\_multiplier & 1 & Defined maximum emission time at moderator (tmax = tmax\_multiplier * t\_pulse); 1 for continuous sources & 3.0 \\ +n\_pulses & 1 & Number of pulses to be simulated (ignored for continuous sources) & 1 \\ +T1 & K & Temperature of the 1st Maxwellian distribution; for r\_i \textgreater{} 0 it is only used for the central radii r \textless{} r\_i & 0.0 \\ +I1 & 1/(cm\textasciicircum{}2 sr s AA) & Flux per solid angle of the 1st Maxwellian distribution (integrated over the whole wavelength range) & 0.0 \\ +tau1 & s & Pulse decay time constant of the 1st Maxwellian distribution & 0.000125 \\ +T2 & K & Temperature of the 2nd Maxwellian distribution (0 to disable); for r\_i \textgreater{} 0 it is only used for the external ring r \textgreater{} r\_i & 0.0 \\ +I2 & 1/(cm\textasciicircum{}2 sr s AA) & Flux per solid angle of the 2nd Maxwellian distribution & 0.0 \\ +tau2 & s & Pulse decay time constant of the 2nd Maxwellian distribution & 0.000125 \\ +T3 & K & Temperature of the 3rd Maxwellian distribution (0 to disable) & 0.0 \\ +I3 & 1/(cm\textasciicircum{}2 sr s AA) & Flux per solid angle of the 3rd Maxwellian distribution & 0.0 \\ +tau3 & s & Pulse decay time constant of the 3rd Maxwellian distribution & 0.000125 \\ +n\_mod & 1 & Ratio of pulse decay constant to pulse ascend constant of moderated neutrons (n = tau\_decay / tau\_ascend) & 1 \\ +I\_um & 1/(cm\textasciicircum{}2 sr s AA) & Flux per solid angle for the under-moderated neutrons & 0.0 \\ +tau\_um & s & Pulse decay time constant of under-moderated neutrons & 0.000012 \\ +n\_um & 1 & Ratio of pulse decay constant to pulse ascend constant of under-moderated neutrons & 1 \\ +chi\_um & 1/AA & Factor for the wavelength dependence of under-moderated neutrons & 2.5 \\ +kap\_um & 1 & Scaling factor for the flux of under-moderated neutrons & 2.2 \\ +\bottomrule +\end{longtable} + +\subsection*{Links} +\begin{itemize} + \item \href{run:/home/willend/willend-McCode/mcstas-comps/contrib/Source_custom.comp}{Source code} for \texttt{Source\_custom.comp}. + \item This model is implemented in an \textless{}a href="https://github.com/pablogila/Source\_custom"\textgreater{}interactive notebook\textless{}/a\textgreater{} to fit custom neutron sources. +\end{itemize} +\IfFileExists{Source_custom_static.tex}{\input{Source_custom_static.tex}}{} \ No newline at end of file diff --git a/docs/manuals/mcstas/contrib/Source_gen4.tex b/docs/manuals/mcstas/contrib/Source_gen4.tex new file mode 100644 index 000000000..fc68c2d58 --- /dev/null +++ b/docs/manuals/mcstas/contrib/Source_gen4.tex @@ -0,0 +1,119 @@ +\section{The \texttt{Source\_gen4} McStas Component} +Circular/squared neutron source with flat or Maxwellian energy/wavelength +spectrum (possibly spatially gaussian) + +\subsection*{Identification} +\begin{itemize} + \item \textbf{Site:} + \item \textbf{Author:} Emmanuel Farhi, Kim Lefmann, modified to PSI use by Jonas Okkels Birk + \item \textbf{Origin:} ILL/Risoe + \item \textbf{Date:} Aug 27, 2001 +\end{itemize} + +\subsection*{Description} +\begin{lstlisting} +This routine is a neutron source (rectangular or circular), which aims at +a square target centered at the beam (in order to improve MC-acceptance +rate). The angular divergence is then given by the dimensions of the +target. +The neutron energy/wavelength is distributed between Emin=E0-dE and +Emax=E0+dE or Lmin=Lambda0-dLambda and Lmax=Lambda0+dLambda. The I1 may +be either arbitrary (I1=0), or specified in neutrons per steradian per +square cm per Angstrom. A Maxwellian spectra may be selected if you give +the source temperatures (up to 3). And a high energytail of the shape A/(lambda0-lambda) can also be +specified if you give an A. Finally, a file with the flux as a +function of the wavelength [lambda(AA) flux(n/s/cm^2/st/AA)] may be used +with the 'flux_file' parameter. Format is 2 columns free text. +Additionl distributions for the horizontal and vertical phase spaces +distributions (position-divergence) may be specified with the +'xdiv_file' and 'ydiv_file' parameters. Format is free text, requiring +a comment line '# xylimits: pos_min pos_max div_min div_max' to set +the axis of the distribution matrix. All these files may be generated using +standard monitors (better in McStas/PGPLOT format), e.g.: +Monitor_nD(options="auto lambda per cm2") +Monitor_nD(options="x hdiv, all auto") +Monitor_nD(options="y vdiv, all auto") +The source shape is defined by its radius, or can alternatively be squared +if you specify non-zero h and w parameters. +The beam is spatially uniform, but becomes gaussian if one of the source +dimensions (radius, h or w) is negative, or you set the gaussian flag. +Divergence profiles are triangular. +The source may have a thickness, which will broaden the default zero time +distribution. +For the Maxwellian spectra, the generated intensity is dPhi/dLambda (n/s/AA) +For flat spectra, the generated intensity is Phi (n/s). + +Usage example: +Source_gen(radius=0.1,Lambda0=2.36,dLambda=0.16, T1=20, I1=1e13) +Source_gen(h=0.1,w=0.1,Emin=1,Emax=3, I1=1e13, verbose=1, gaussian=1) +EXTEND +%{ +t = rand0max(1e-3); // set time from 0 to 1 ms for TOF instruments. +%} + +Some sources parameters: +PSI cold source T1= 296.16, I1=8.5E11, T2=40.68, I2=5.2E11 +ILL VCS cold source T1=216.8,I1=1.24e+13,T2=33.9,I2=1.02e+13 +(H1) T3=16.7 ,I3=3.0423e+12 +ILL HCS cold source T1=413.5,I1=10.22e12,T2=145.8,I2=3.44e13 +(H5) T3=40.1 ,I3=2.78e13 +ILL Thermal tube T1=683.7,I1=0.5874e+13,T2=257.7,I2=2.5099e+13 +(H12) T3=16.7 ,I3=1.0343e+12 +ILL Hot source T1=1695,I1=1.74e13,T2=708,I2=3.9e12 + +%VALIDATION +Feb 2005: output cross-checked for 3 Maxwellians against VITESS source +I(lambda), I(hor_div), I(vert_div) identical in shape and absolute values +Validated by: K. Lieutenant +\end{lstlisting} + +\subsection*{Input parameters} +Parameters in \textbf{boldface} are required; the others are optional. + +\begin{longtable}{p{0.22\textwidth}p{0.12\textwidth}p{0.46\textwidth}p{0.14\textwidth}} +\toprule +\textbf{Name} & \textbf{Unit} & \textbf{Description} & \textbf{Default} \\ +\midrule +\endhead +flux\_file & str & Name of a two columns [lambda flux] text file that contains the wavelength distribution of the flux in [1/(s*cm**2*st*AA)]. Comments (\#) and further columns are ignored. Format is compatible with McStas/PGPLOT wavelength monitor files. When specified, temperature and intensity values are ignored. NO correction for solid-angle is applied, the intensity emitted into the chosen xw x yh rectangle at distance dist. & 0 \\ +xdiv\_file & str & Name of the x-horiz. divergence distribution file, given as a free format text matrix, preceeded with a line '\# xylimits: xmin xmax xdiv\_min xdiv\_max' & 0 \\ +ydiv\_file & str & Name of the y-vert. divergence distribution file, given as a free format text matrix, preceeded with a line '\# xylimits: ymin ymax ydiv\_min ydiv\_max' & 0 \\ +radius & m & Radius of circle in (x,y,0) plane where neutrons are generated. You may also use 'h' and 'w' for a square source & 0.0 \\ +dist & m & Distance to target along z axis. & 0 \\ +xw & m & Width(x) of target. If dist=0.0, xw = full horz. div in deg & 0 \\ +yh & m & Height(y) of target. If dist=0.0, yh = full vert. div in deg & 0 \\ +E0 & meV & Mean energy of neutrons. & 0 \\ +dE & meV & Energy spread of neutrons, half width. & 0 \\ +Lambda0 & AA & Mean wavelength of neutrons. & 0 \\ +dLambda & AA & Wavelength spread of neutrons,half width & 0 \\ +I1 & 1/(cm**2*st) & Source flux per solid angle, area and Angstrom & 0 \\ +h & m & Source y-height, then does not use radius parameter & 0 \\ +w & m & Source x-width, then does not use radius parameter & 0 \\ +gaussian & 0/1 & Use gaussian divergence beam, normal distributions & 0 \\ +verbose & 0/1 & display info about the source. -1 inactivate source. & 0 \\ +T1 & K & Temperature of the Maxwellian source, 0=none & 0 \\ +flux\_file\_perAA & 1 & When true (1), indicates that flux file data is already per Angstroem. If false, file data is per wavelength bin. & 0 \\ +flux\_file\_log & 1 & When true, will transform the flux table in log scale to improve the sampling. This may also cause & 0 \\ +Lmin & AA & Minimum wavelength of neutrons & 0 \\ +Lmax & AA & Maximum wavelength of neutrons & 0 \\ +Emin & meV & Minimum energy of neutrons & 0 \\ +Emax & meV & Maximum energy of neutrons & 0 \\ +T2 & K & Second Maxwellian source Temperature, 0=none & 0 \\ +I2 & 1/(cm**2*st) & Second Maxwellian Source flux & 0 \\ +T3 & K & Third Maxwellian source Temperature, 0=none & 0 \\ +I3 & 1/(cm**2*st) & Third Maxwellian Source flux & 0 \\ +length & m & Source z-length, not anymore flat & 0 \\ +phi\_init & degrees & Angle abowe the x-z-plan that the source is amied at & 0 \\ +theta\_init & degrees & Angle from the z-axis in the x-z-plan that the source is amied at & 0 \\ +HEtailA & 1/(cm**2*st*AA) & Amplitude of heigh energy tail & 0 \\ +HEtailL0 & AA & Offset of heigh energy tail & 0 \\ +\bottomrule +\end{longtable} + +\subsection*{Links} +\begin{itemize} + \item \href{run:/home/willend/willend-McCode/mcstas-comps/contrib/Source_gen4.comp}{Source code} for \texttt{Source\_gen4.comp}. + \item \textless{}a href="http://www.ill.fr/Yellowbook"\textgreater{}The ILL Yellow book\textless{}/a\textgreater{} + \item P. Ageron, Nucl. Inst. Meth. A 284 (1989) 197 +\end{itemize} +\IfFileExists{Source_gen4_static.tex}{\input{Source_gen4_static.tex}}{} \ No newline at end of file diff --git a/docs/manuals/mcstas/contrib/Source_multi_surfaces.tex b/docs/manuals/mcstas/contrib/Source_multi_surfaces.tex new file mode 100644 index 000000000..18f905a60 --- /dev/null +++ b/docs/manuals/mcstas/contrib/Source_multi_surfaces.tex @@ -0,0 +1,95 @@ +\section{The \texttt{Source\_multi\_surfaces} McStas Component} +Rectangular neutron source with subareas - using wavelength spectra reading +from files + +\subsection*{Identification} +\begin{itemize} + \item \textbf{Site:} + \item \textbf{Author:} Ludovic Giller, Uwe Filges + \item \textbf{Origin:} PSI/Villigen + \item \textbf{Date:} 31.10.06 +\end{itemize} + +\subsection*{Description} +\begin{lstlisting} +This routine is a rectangular neutron source, which aims at a square target +centered at the beam (in order to improve MC-acceptance rate). +The angular divergence is then given by the dimensions of the target. +The source surface can be divided in subareas (maximum 7 in one dimension). +For each subarea a discret spectrum must be loaded given by its corresponding +file. The name of the files are saved in one file and will be called with the +parameter "filename". +In fact the routine first reads the spectrum from files (up to 49) and it +selects randomly a subarea. Secondly it generates a neutron with an random +energy, selected from the spectrum corresponding to the subsurface chosen, and +with a random direction of propagation within the target. +ATTENTION 1: the files must be located in the working directory where also +the instrument file is located +ATTENTION 2: the wavelenght distribution (or binning) must be uniform + +The file giving the name of sub-sources is matrix like, +eg. for a 3x2 (x,y) division : +spec1_1.dat spec1_2.dat spec1_3.dat +spec2_1.dat spec2_2.dat spec2_3.dat(RETURN-key) + +ATTENTION : The line break after the last line is important. +Otherwise the files can not be read in !!! + +and for example spec1_2.dat must be like, always from big to +small lambda : +#surface 1_2 +#comments must be preceded by "#" +#lambda [AA] intensity [a.u.] +9.0 1.39E+08 +8.75 9.67E+08 +8.5 1.17E+09 +8.25 1.50E+09 +8.0 1.60E+09 +7.75 1.43E+09 +7.5 1.40E+09 +7.25 1.36E+09 +7.0 1.35E+09 +6.75 1.33E+09 +6.5 1.32E+09 +6.25 1.31E+09 + + +[a.u.] means that your chosen unit for the intensity influences +the outcoming unit. What you put in you will get out ! +i.e. whatever is the unit for the input intensity you +will have the same unit for the the output. +Generally McStas works in neutrons per second [n/s]. + +Usage example: +Source_multi_surfaces(yheight=0.16,xwidth=0.09,dist=1.18,xw=0.08,yh=0.15,xdim=4,ydim=4, +Lmin=0.01,Lmax=10.0,filename="files_name.dat") +\end{lstlisting} + +\subsection*{Input parameters} +Parameters in \textbf{boldface} are required; the others are optional. + +\begin{longtable}{p{0.22\textwidth}p{0.12\textwidth}p{0.46\textwidth}p{0.14\textwidth}} +\toprule +\textbf{Name} & \textbf{Unit} & \textbf{Description} & \textbf{Default} \\ +\midrule +\endhead +filename & str & Name of the file containing a list of the spectra file names & 0 \\ +yheight & m & Source y-height & 0.16 \\ +xwidth & m & Source x-width & 0.09 \\ +dist & m & Distance to target along z axis & 1.18 \\ +xw & m & Width(x) of target & 0.08 \\ +yh & m & Height(y) of target & 0.15 \\ +xdim & int & Number of subareas in the x direction & 4 \\ +ydim & int & Number of subareas in the y direction & 4 \\ +Emin & eV & Minimum energy of neutrons & 0.0 \\ +Emax & eV & Maximum energy of neutrons & 0.0 \\ +Lmin & AA & Minimum wavelength of neutrons & 0.0 \\ +Lmax & AA & Maximum wavelength of neutrons & 0.0 \\ +\bottomrule +\end{longtable} + +\subsection*{Links} +\begin{itemize} + \item \href{run:/home/willend/willend-McCode/mcstas-comps/contrib/Source_multi_surfaces.comp}{Source code} for \texttt{Source\_multi\_surfaces.comp}. +\end{itemize} +\IfFileExists{Source_multi_surfaces_static.tex}{\input{Source_multi_surfaces_static.tex}}{} \ No newline at end of file diff --git a/docs/manuals/mcstas/contrib/Source_pulsed.tex b/docs/manuals/mcstas/contrib/Source_pulsed.tex new file mode 100644 index 000000000..6b1c9fb1b --- /dev/null +++ b/docs/manuals/mcstas/contrib/Source_pulsed.tex @@ -0,0 +1,75 @@ +\section{The \texttt{Source\_pulsed} McStas Component} +A pulsed source for variable proton pulse lenghts + +\subsection*{Identification} +\begin{itemize} + \item \textbf{Site:} + \item \textbf{Author:} Klaus Lieutenant, based on component 'Moderator' by K. Nielsen, M. Hagen and 'ESS\_moderator\_long\_2001' by K. Lefmann + \item \textbf{Origin:} FZ Juelich + \item \textbf{Date:} +\end{itemize} + +\subsection*{Description} +\begin{lstlisting} +Produces a long pulse spectrum with a wavelength distribution as a sum of up to 3 Maxwellian distributions and one of undermoderated neutrons + +It uses the time dependence of long pulses. Short pulses can, however, also be simulated by setting the proton pulse short. + +If moderator width and height are given, it assumes a rectangular moderator, and otherwise a circular + +Usage example: +Source_pulsed(xwidth=0.04, yheight=0.04, Lmin=1.0, Lmax=3.0, t_min=0.0, t_max=0.5, dist=0.700, focus_xw=0.020, focus_yh=0.020, +freq=96.0, t_pulse=0.000208, T1=325.0, I1=7.6e09, tau1=0.000170, I_um=2.7e08, chi_um=2.5) + +Parameters for some sources: +HBS thermal source: xwidth=0.04, yheight=0.04, T1=325.0, I1=0.68e+12/freq, tau1=0.000125, n_mod=10, I_um=2.47e+10/freq, chi_um=2.5, t_pulse=0.016/freq, freq=96.0 or 24.0 +HBS cold source : radius=0.010, T1= 60.0, I1=1.75e+12/freq, tau2=0.000170, n_mod= 5, I_um=3.82e+10/freq, chi_um=0.9, t_pulse=0.016/freq, freq=24.0 or 96.0 +HBS bi-spectral : radius=0.022, r_i=0.010, T1= 60.0, I1=1.75e+12/freq, tau2=0.000170, +T2=305.0, I2=0.56e+12/freq, tau1=0.000130, n_mod= 5, I_um=3.82e+10/freq, chi_um=2.5, t_pulse=0.016/freq, freq=24.0 or 96.0 +\end{lstlisting} + +\subsection*{Input parameters} +Parameters in \textbf{boldface} are required; the others are optional. + +\begin{longtable}{p{0.22\textwidth}p{0.12\textwidth}p{0.46\textwidth}p{0.14\textwidth}} +\toprule +\textbf{Name} & \textbf{Unit} & \textbf{Description} & \textbf{Default} \\ +\midrule +\endhead +xwidth & m & Width of the source & 0.0 \\ +yheight & m & Height of the source & 0.0 \\ +radius & m & Outer radius of the source & 0.010 \\ +r\_i & m & Radius of a central circle that is sorrounded by a ring of different temperature & 0.0 \\ +\textbf{Lmin} & Ang & Lower edge of the wavelength distribution & \\ +\textbf{Lmax} & Ang & Upper edge of the wavelength distribution & \\ +t\_min & s & Lower edge of the time interval & 0.0 \\ +t\_max & s & Upper edge of the time interval & 0.001 \\ +target\_index & 1 & relative index of component to focus at, e.g. next is +1 this is used to compute 'dist' automatically. & 1 \\ +dist & m & Distance from the source to the target & 0.0 \\ +focus\_xw & m & Width of the target (= focusing rectangle) & 0.02 \\ +focus\_yh & m & Height of the target (= focusing rectangle) & 0.02 \\ +\textbf{freq} & Hz & Frequency of pulses & \\ +\textbf{t\_pulse} & s & Proton pulse length & \\ +T1 & K & Temperature of the 1st Maxwellian distribution, for r\_i \textgreater{} 0 only for radii r in the range 0 \textless{} r \textless{} r\_i & 0.0 \\ +I1 & 1/(cm**2*sr) & Flux per solid angle of the 1st Maxwellian distribution (integrated over the whole wavelength range). & 0.0 \\ +tau1 & s & Pulse decay constant of the 1st Maxwellian distribution & 0.000125 \\ +T2 & K & Temperature of the 2nd Maxwellian distribution, 0=none, for r\_i \textgreater{} 0 only for radii r in the range r\_i \textless{} r \textless{} radius & 0.0 \\ +I2 & 1/(cm**2*sr) & Flux per solid angle of the 2nd Maxwellian distribution & 0.0 \\ +tau2 & s & Pulse decay constant of the 2nd Maxwellian distribution & 0.0 \\ +T3 & K & Temperature of the 3rd Maxwellian distribution, 0=none & 0.0 \\ +I3 & 1/(cm**2*sr) & Flux per solid angle of the 3rd Maxwellian distribution & 0.0 \\ +tau3 & s & Pulse decay constant of the 3rd Maxwellian distribution & 0.0 \\ +n\_mod & 1 & Ratio of pulse decay constant to pulse ascend constant of moderated neutrons & 10 \\ +I\_um & 1/(cm**2*sr) & Flux per solid angle for the under-moderated neutrons & 0.0 \\ +tau\_um & s & Pulse decay constant of under-moderated neutrons & 0.000012 \\ +n\_um & 1 & Ratio of pulse decay constant to pulse ascend constant of under-moderated neutrons & 5 \\ +chi\_um & 1/Ang & Factor for the wavelength dependence of under-moderated neutrons & 2.5 \\ +kap\_um & 1 & Scaling factor for the flux of under-moderated neutrons & 2.2 \\ +\bottomrule +\end{longtable} + +\subsection*{Links} +\begin{itemize} + \item \href{run:/home/willend/willend-McCode/mcstas-comps/contrib/Source_pulsed.comp}{Source code} for \texttt{Source\_pulsed.comp}. +\end{itemize} +\IfFileExists{Source_pulsed_static.tex}{\input{Source_pulsed_static.tex}}{} \ No newline at end of file diff --git a/docs/manuals/mcstas/contrib/Spherical_Backscattering_Analyser.tex b/docs/manuals/mcstas/contrib/Spherical_Backscattering_Analyser.tex new file mode 100644 index 000000000..b046cc099 --- /dev/null +++ b/docs/manuals/mcstas/contrib/Spherical_Backscattering_Analyser.tex @@ -0,0 +1,51 @@ +\section{The \texttt{Spherical\_Backscattering\_Analyser} McStas Component} +Spherical backscattering analyser + +\subsection*{Identification} +\begin{itemize} + \item \textbf{Site:} + \item \textbf{Author:} Nikolaos Tsapatsaris with P Willendrup, R Lechner, H Bordallo + \item \textbf{Origin:} NBI/ESS + \item \textbf{Date:} 2015 +\end{itemize} + +\subsection*{Description} +\begin{lstlisting} +Spherical backscattering analyser with variable reflectivity, and mosaic gaussian response. + +Based on earlier developments by Miguel A. Gonzalez 2000, Tilo Seydel 2007, Henrik Jacobsen 2011. + +Example: +COMPONENT doppler = Spherical_Backscattering_Analyser( +xmin=0, xmax=0, ymin=0, ymax=0, mosaic=21.0, dspread=0.00035, Q=2.003886241, DM=0, radius=2.5, f_doppler=0, A_doppler=0, R0=1, debug=0) +\end{lstlisting} + +\subsection*{Input parameters} +Parameters in \textbf{boldface} are required; the others are optional. + +\begin{longtable}{p{0.22\textwidth}p{0.12\textwidth}p{0.46\textwidth}p{0.14\textwidth}} +\toprule +\textbf{Name} & \textbf{Unit} & \textbf{Description} & \textbf{Default} \\ +\midrule +\endhead +xmin & m & Minimum absolute value of x =\textasciitilde{} 0.5 * Width of the monochromator & 0 \\ +xmax & m & Maximum absolute value of x =\textasciitilde{} 0.5 * Width of the monochromator & 0 \\ +ymin & m & Minimum absolute value of x =\textasciitilde{} 0.5 * Width of the monochromator & 0 \\ +ymax & m & Maximum absolute value of y =\textasciitilde{} 0.5 * Height of the monochromator & 0 \\ +mosaic & arc min & Mosaicity, FWHM & 21.0 \\ +dspread & 1 & Relative d-sprea, FWHM & 0.00035 \\ +Q & AA-1 & Magnitude of scattering vector & 2.003886241 \\ +DM & AA & monochromator d-spacing instead of Q = 2*pi/DM & 0 \\ +radius & m & Curvature radius & 2.5 \\ +f\_doppler & Hz & Frequency of doppler drive & 0 \\ +A\_doppler & m & Amplitude of doppler drive & 0 \\ +R0 & 1 & Scalar, maximum reflectivity of neutrons & 1 \\ +debug & 1 & if debug \textgreater{} 0 print out some info about the calculations & 0 \\ +\bottomrule +\end{longtable} + +\subsection*{Links} +\begin{itemize} + \item \href{run:/home/willend/willend-McCode/mcstas-comps/contrib/Spherical_Backscattering_Analyser.comp}{Source code} for \texttt{Spherical\_Backscattering\_Analyser.comp}. +\end{itemize} +\IfFileExists{Spherical_Backscattering_Analyser_static.tex}{\input{Spherical_Backscattering_Analyser_static.tex}}{} \ No newline at end of file diff --git a/docs/manuals/mcstas/contrib/Spin_random.tex b/docs/manuals/mcstas/contrib/Spin_random.tex new file mode 100644 index 000000000..6751b66b0 --- /dev/null +++ b/docs/manuals/mcstas/contrib/Spin_random.tex @@ -0,0 +1,33 @@ +\section{The \texttt{Spin\_random} McStas Component} +Set a random polarisation + +\subsection*{Identification} +\begin{itemize} + \item \textbf{Site:} + \item \textbf{Author:} Michael Schneider (SNAG) + \item \textbf{Origin:} SNAG + \item \textbf{Date:} 2024 +\end{itemize} + +\subsection*{Description} +\begin{lstlisting} +This component has no physical size or extent, it simply asigns the neutron +ray polarisation randomly to either spin-up or spin-down. +\end{lstlisting} + +\subsection*{Input parameters} +Parameters in \textbf{boldface} are required; the others are optional. + +\begin{longtable}{p{0.22\textwidth}p{0.12\textwidth}p{0.46\textwidth}p{0.14\textwidth}} +\toprule +\textbf{Name} & \textbf{Unit} & \textbf{Description} & \textbf{Default} \\ +\midrule +\endhead +\bottomrule +\end{longtable} + +\subsection*{Links} +\begin{itemize} + \item \href{run:/home/willend/willend-McCode/mcstas-comps/contrib/Spin_random.comp}{Source code} for \texttt{Spin\_random.comp}. +\end{itemize} +\IfFileExists{Spin_random_static.tex}{\input{Spin_random_static.tex}}{} \ No newline at end of file diff --git a/docs/manuals/mcstas/contrib/Spot_sample.tex b/docs/manuals/mcstas/contrib/Spot_sample.tex new file mode 100644 index 000000000..e8ee3b2a2 --- /dev/null +++ b/docs/manuals/mcstas/contrib/Spot_sample.tex @@ -0,0 +1,60 @@ +\section{The \texttt{Spot\_sample} McStas Component} +Spot sample. + +\subsection*{Identification} +\begin{itemize} + \item \textbf{Site:} + \item \textbf{Author:} Garrett Granroth + \item \textbf{Origin:} Oak Ridge National Laboratory + \item \textbf{Date:} 14.11.14 +\end{itemize} + +\subsection*{Description} +\begin{lstlisting} +A sample that is a series of delta functions in omega and Q. The Q is +determined by a two theta value and an equal number of spots around the +beam center. This component is a variation of the V sample written +by Kim Lefmann and Kristian Nielsen. The following text comes from their +original component. +A Double-cylinder shaped incoherent scatterer (a V-sample) +No multiple scattering. Absorbtion included. +The shape of the sample may be a box with dimensions xwidth, yheight, zthick. +The area to scatter to is a disk of radius 'focus_r' situated at the target. +This target area may also be rectangular if specified focus_xw and focus_yh +or focus_aw and focus_ah, respectively in meters and degrees. +The target itself is either situated according to given coordinates (x,y,z), or +setting the relative target_index of the component to focus at (next is +1). +This target position will be set to its AT position. When targeting to centered +components, such as spheres or cylinders, define an Arm component where to +focus at. + +Example: spot_sample(radius_o=0.01, h=0.05, pack = 1, +xwidth=0, yheight=0, zthick=0, Eideal=100.0,w=50.0,two_theta=25.0,n_spots=4) +\end{lstlisting} + +\subsection*{Input parameters} +Parameters in \textbf{boldface} are required; the others are optional. + +\begin{longtable}{p{0.22\textwidth}p{0.12\textwidth}p{0.46\textwidth}p{0.14\textwidth}} +\toprule +\textbf{Name} & \textbf{Unit} & \textbf{Description} & \textbf{Default} \\ +\midrule +\endhead +radius\_o & m & Outer radius of sample in (x,z) plane & 0.01 \\ +h & m & Height of sample y direction & 0.05 \\ +pack & 1 & Packing factor & 1 \\ +xwidth & m & horiz. dimension of sample, as a width & 0 \\ +yheight & m & vert.. dimension of sample, as a height & 0 \\ +zthick & m & thickness of sample & 0 \\ +Eideal & meV & The presumed incident energy & 100.0 \\ +w & meV & The energy transfer of the delta function & 50.0 \\ +two\_theta & degrees & the scattering angle of the spot & 25.0 \\ +n\_spots & 1 & The number of spots to generate symmetrically around the beam & 4 \\ +\bottomrule +\end{longtable} + +\subsection*{Links} +\begin{itemize} + \item \href{run:/home/willend/willend-McCode/mcstas-comps/contrib/Spot_sample.comp}{Source code} for \texttt{Spot\_sample.comp}. +\end{itemize} +\IfFileExists{Spot_sample_static.tex}{\input{Spot_sample_static.tex}}{} \ No newline at end of file diff --git a/docs/manuals/mcstas/contrib/StatisticalChopper.tex b/docs/manuals/mcstas/contrib/StatisticalChopper.tex new file mode 100644 index 000000000..2cfaf7fd0 --- /dev/null +++ b/docs/manuals/mcstas/contrib/StatisticalChopper.tex @@ -0,0 +1,47 @@ +\section{The \texttt{StatisticalChopper} McStas Component} +Statistical (correlation) Chopper + +\subsection*{Identification} +\begin{itemize} + \item \textbf{Site:} + \item \textbf{Author:} C. Monzat/E. Farhi/S. Rozenkranz + \item \textbf{Origin:} ILL + \item \textbf{Date:} Nov 10th, 2009 +\end{itemize} + +\subsection*{Description} +\begin{lstlisting} +This component is a statistical chopper based on a pseudo random sequence that the user +can specify. Inspired from DiskChopper, it should be used with SatisticalChopper_Monitor component. + +Example: StatisticalChopper(nu=1487*60/255) use default sequence +\end{lstlisting} + +\subsection*{Input parameters} +Parameters in \textbf{boldface} are required; the others are optional. + +\begin{longtable}{p{0.22\textwidth}p{0.12\textwidth}p{0.46\textwidth}p{0.14\textwidth}} +\toprule +\textbf{Name} & \textbf{Unit} & \textbf{Description} & \textbf{Default} \\ +\midrule +\endhead +radius & m & Radius of the disc & 0.5 \\ +yheight & m & Slit height (if = 0, equal to radius). Auto centering of beam at half height. & 0 \\ +\textbf{nu} & Hz & Frequency of the Chopper, omega=2*PI*nu & \\ +jitter & s & Jitter in the time phase & 0 \\ +delay & s & Time 'delay'. & 0 \\ +isfirst & 0/1 & Set it to 1 for the first chopper position in a cw source & 0 \\ +abs\_out & 0/1 & Absorb neutrons hitting outside of chopper radius? & 1 \\ +phase & deg & Angular 'delay' (overrides delay) & 0 \\ +verbose & 1 & Set to 1 to display Disk chopper configuration & 0 \\ +n\_pulse & 1 & Number of pulses (Only if isfirst) & 1 \\ +sequence & str & Slit sequence around disk, with 0=closed, 1=open positions. & "NULL" \\ +\bottomrule +\end{longtable} + +\subsection*{Links} +\begin{itemize} + \item \href{run:/home/willend/willend-McCode/mcstas-comps/contrib/StatisticalChopper.comp}{Source code} for \texttt{StatisticalChopper.comp}. + \item R. Von Jan and R. Scherm. The statistical chopper for neutron time-of-flight spectroscopy. Nuclear Instruments and Methods, 80 (1970) 69-76. +\end{itemize} +\IfFileExists{StatisticalChopper_static.tex}{\input{StatisticalChopper_static.tex}}{} \ No newline at end of file diff --git a/docs/manuals/mcstas/contrib/StatisticalChopper_Monitor.tex b/docs/manuals/mcstas/contrib/StatisticalChopper_Monitor.tex new file mode 100644 index 000000000..c6e364490 --- /dev/null +++ b/docs/manuals/mcstas/contrib/StatisticalChopper_Monitor.tex @@ -0,0 +1,43 @@ +\section{The \texttt{StatisticalChopper\_Monitor} McStas Component} +Monitor designed to compute the autocorrelation signal for the Statistical Chopper + +\subsection*{Identification} +\begin{itemize} + \item \textbf{Site:} + \item \textbf{Author:} C. Monzat/E. Farhi + \item \textbf{Origin:} ILL + \item \textbf{Date:} 2009 +\end{itemize} + +\subsection*{Description} +\begin{lstlisting} +This component is a time sensitive monitor which calculates the cross +correlation between the pseudo random sequence of a statistical chopper +and the signal received. It mainly uses fonctions of component Monitor_nD. +It is possible to use the various options of the Monitor_nD but the user MUST NOT +specify "time" in the options. Auto detection of the time limits is possible if the +user chooses tmin=>tmax. + +StatisticalChopper_Monitor(options ="banana bins=500, abs theta limits=[5,105],bins=1000") +\end{lstlisting} + +\subsection*{Input parameters} +Parameters in \textbf{boldface} are required; the others are optional. + +\begin{longtable}{p{0.22\textwidth}p{0.12\textwidth}p{0.46\textwidth}p{0.14\textwidth}} +\toprule +\textbf{Name} & \textbf{Unit} & \textbf{Description} & \textbf{Default} \\ +\midrule +\endhead +\textbf{comp} & StatisticalChopper & quoted name of the component monitored & \\ +tmin & s & minimal time of detection & 0.0 \\ +tmax & s & maximal time of detection & 0.0 \\ +\bottomrule +\end{longtable} + +\subsection*{Links} +\begin{itemize} + \item \href{run:/home/willend/willend-McCode/mcstas-comps/contrib/StatisticalChopper_Monitor.comp}{Source code} for \texttt{StatisticalChopper\_Monitor.comp}. + \item R. Von Jan and R. Scherm. The statistical chopper for neutron time-of-flight spectroscopy. Nuclear Instruments and Methods, 80 (1970) 69-76. +\end{itemize} +\IfFileExists{StatisticalChopper_Monitor_static.tex}{\input{StatisticalChopper_Monitor_static.tex}}{} \ No newline at end of file diff --git a/docs/manuals/mcstas/contrib/SupermirrorFlat.tex b/docs/manuals/mcstas/contrib/SupermirrorFlat.tex new file mode 100644 index 000000000..7d08c63eb --- /dev/null +++ b/docs/manuals/mcstas/contrib/SupermirrorFlat.tex @@ -0,0 +1,167 @@ +\section{The \texttt{SupermirrorFlat} McStas Component} +Model of flat supermirror with parallel mirror surfaces + +\subsection*{Identification} +\begin{itemize} + \item \textbf{Site:} + \item \textbf{Author:} Wai Tung Lee + \item \textbf{Origin:} ESS + \item \textbf{Date:} September 2024 +\end{itemize} + +\subsection*{Description} +\begin{lstlisting} +Calculate the neutron reflection and transmission of a flat supermirror with parallel mirror surfaces. +The following can be specified: +1. reflection from either mirror coating or substrate surface, mirror coating can be single-side, double-side, +2. absorber coating: beneath mirror coating, single-side coated, double-side coated, or uncoated, +3. refraction and total reflection at substrate surface, +4. attenuation and internal reflection inside substrate. + +note: supermirror name is case-sensitive +text entries of parameters below are not sensitive to case +default regional spelling is UK, but some paramters accept other reginal spelling + + +INITIALISATION parameters: + + +STEP 1: Specify supermirror shape, supermirror coating, absorber and substrate material +In this step, supermirror is standing vertically, mirror coating = yz plane with long side along +z. + +SUPERMIRROR SHAPE ------------------------------------------------- +1. +x: "top" mirror surface normal, horizontal transverse to beam; ++y: vertical up, parallel to mirror surface; ++z: longitudinal to beam, parallel to mirror surface; +2. top and bottom mirrors' surface normals are +x and -x, respectively; +3. entrance-side edge normal is -z, exit-side edge normal is +z (beam direction); +3. normals of and points on the remaining edge surfaces at +y and -y are user-specified, + +Mirror shape is specified by length, thickness, and the normals of and points on the edge surfaces at +y and -y sides. + +The two side-edges at +y and -y are taken to be symmetric about the xz-plane, only one needs to be specified. +Use InitialiseStdSupermirrorFlat_detail if not symmetric. + +SUPERMIRROR COATING ------------------------------------------------- +Mirror reflectivity parameters are specified by name to look up 6 parameters {R0, Qc, alpha, m, W, beta}. + +If name = SubstrateSurface, reflectivity is calculated by +R = R0 (when q<=Qc), R0*( (q - (q^2 - Qc^2)^1/2) / (q + (q^2 - Qc^2)^1/2) )^2 (when q>Qc), with Qc=sqrt(16 Pi SLD). +with Qc = Qc_sub defined in SubstrateSurfaceParameters and SLD defined in SubstrateParameters, +otherwise reflectivity is calculated by +R = R0 (when q<=Qc), R = R0*0.5*(1-tanh((q - m*Qc)/W))*(1-alpha*(q-Qc)+beta*(q-Qc)*(q-Qc)) (when q>Qc). + +specified mirror material name matching one of those defined in "Supermirror_reflective_coating_materials.txt". +If the mirror is non-polarising, specify the same name and parameters for spin plus and spin minus. + +ABSORBER LAYER ------------------------------------------------- +Absorber parameters are either specified by name or by parameters L_abs, L_inc and the coating thickness. + + +SUBSTRATE ------------------------------------------------- +Substrate parameters are specified by name to look up 3 parameters {L_abs, L_inc, SLD}. + +specify substrate material name matching one of those defined in "Supermirror_substrate_materials.txt". + + + +STEP 2: Orient and position the as-defined supermirror in the McStas module XYZ coordinates. + +1. Specify initially a location on the front side of the mirror (see parameter "initial_placement_at_origin" below). +The supermirror is shifted so that the selected point coincides with the origin of the McStas module XYZ coordinates +2. Then the orientation and position of the supermirror are specified by the movements in sequence as +1st, tilting about an axis in +y direction at a selected location (see parameters "tilt_y_axis_location" and "tilt_about_y_first_in_degree" below), +2nd, translation, +3rd, rotation about the z-axis of the McStas module XYZ coordinates. + + + +OUTPUT: +Supermirror struct with all parameter values entered and initialised +User declares "Supermirror supermirror;" or its equivalence, +then passes pointer "&supermirror" to function. + + + +End INITIALISATION parameters + + + + +RAY-TRACING parameters + +FUNCTION IntersectStdSupermirrorFlat +INPUT: +neutron parameters: w_sm=p, t_sm=t, p_sm=coords_set(x,y,z), v_sm=coords_set(vx,vy,vz), s_sm=coords_set(sx,sy,sz) +last_exit_time [s] time of last exit from a supermirror, use F_INDETERMINED if not determined. (F_INDETERMINED defined in this file) +last_exit_point [m,m,m] position of last exit from a supermirror, use coords_set(F_INDETERMINED,F_INDETERMINED,F_INDETERMINED) if not determined. +last_exit_plane [1] plane of last exit from a supermirror, use I_INDETERMINEDif not determined. +sm: [struct] Supermirror structure +OUTPUT: +num_intersect: [1] number of intersects through supermirror +First intersect time, point, plane if there is intersect. +User declare one or more parameters, e.g. "int num_intersect; double first_intersect_time; Coords first_intersect_point; int first_intersect_plane;", +then passes pointers "&num_intersect, &first_intersect_time, &first_intersect_point, &first_intersect_plane" to function. +Pass 0 as pointer if not needed. +first_intersect_dtime: [s] time difference from neutron to first intersect +first_intersect_dpoint: [m,m,m] position difference from neutron to point of first intersect +first_intersect_time: [s] time of first intersect +first_intersect_point: [m,m,m] point of first intersect +first_intersect_plane: [1] plane of first intersect +RETRUN: +sm_Intersected, sm_Missed. sm_Error + + +FUNCTION StdSupermirrorFlat +INPUT: +sm [struct] Supermirror structure +INPUT & OUTPUT: +neutron parameters: w_sm=p, t_sm=t, p_sm=coords_set(x,y,z), v_sm=coords_set(vx,vy,vz), s_sm=coords_set(sx,sy,sz) +last_exit_time [s] time of last exit from a supermirror, use F_INDETERMINED if not determined. (F_INDETERMINED defined in this file) +last_exit_point [m,m,m] position of last exit from a supermirror, use coords_set(F_INDETERMINED,F_INDETERMINED,F_INDETERMINED) if not determined. +last_exit_plane [1] plane of last exit from a supermirror, use I_INDETERMINEDif not determined. +RETRUN: +sm_Exited, sm_Absorbed. sm_Error +sm: [struct Supermirror] Supermirror structure + + +End RAY-TRACING parameters +\end{lstlisting} + +\subsection*{Input parameters} +Parameters in \textbf{boldface} are required; the others are optional. + +\begin{longtable}{p{0.22\textwidth}p{0.12\textwidth}p{0.46\textwidth}p{0.14\textwidth}} +\toprule +\textbf{Name} & \textbf{Unit} & \textbf{Description} & \textbf{Default} \\ +\midrule +\endhead +side\_edge\_normal & 1,1,1 & Normal vector of one of the two side-edge surface, use Coords structure, doesn't need to be normalised & \{0,+1,0\} \\ +side\_edge\_point & m,m,m & A point on one of the two side-edge surface with its normal specified above, use Coords structure & \{0,+0.1,0\} \\ +length & m & Supermirror length & 0.5 \\ +thickness\_in\_mm & mm & Substrate thickness in mm & 0.3 \\ +mirror\_coated\_side & string & Sequential keywords combinations of position and surface property. position: "Both", "Top", "Bottom"; surface property: "Coated", "SubstrateSurface", "NoReflection"; Note: "NotCoated"="Empty"="SubstrateSurface", e.g. "BothCoated", "BottomCoatedTopSubstrate" (case-insensitive.) & "BothCoated" \\ +mirror\_spin\_plus\_material\_name & string & mirror spin+ material name in "Supermirror\_reflective\_coating\_materials.txt". (case-insensitive) & "FeSiPlus" \\ +mirror\_spin\_plus\_m & 1 & mirror spin+ m-value, -1=use default value & 3.5 \\ +mirror\_spin\_minus\_material\_name & string & mirror spin- material name in "Supermirror\_reflective\_coating\_materials.txt". (case-insensitive) & "FeSiMinus" \\ +mirror\_spin\_minus\_m & 1 & mirror spin- m-value, -1=use default value (useful for spin-) & -1 \\ +substrate\_material\_name & string & substrate material name in "Supermirror\_substrate\_materials.txt". (Material name is case-insensitive) & "Glass" \\ +absorber\_coated\_side & string & "BothNotCoated", "BothCoated", "TopCoated", "BottomCoated". & "BothNotCoated" \\ +absorber\_material\_name & string & absorber material name in "Supermirror\_absorber\_coating\_materials.txt" or "Empty", 0="Empty", & "Gd" \\ +absorber\_thickness\_in\_micron & micrometer & absorber coating thickness in micrometer & 100 \\ +initial\_placement\_at\_origin & & & "FrontSubstrateCentre" \\ +tilt\_y\_axis\_location & & & "FrontSubstrateCentre" \\ +tilt\_about\_y\_first\_in\_degree & & & 1.5 \\ +translation\_second\_x & & & 0 \\ +translation\_second\_y & & & 0 \\ +translation\_second\_z & & & 0 \\ +rot\_about\_z\_third\_in\_degree & & & 0 \\ +tracking & & & "DetailTracking" \\ +\bottomrule +\end{longtable} + +\subsection*{Links} +\begin{itemize} + \item \href{run:/home/willend/willend-McCode/mcstas-comps/contrib/SupermirrorFlat.comp}{Source code} for \texttt{SupermirrorFlat.comp}. +\end{itemize} +\IfFileExists{SupermirrorFlat_static.tex}{\input{SupermirrorFlat_static.tex}}{} \ No newline at end of file diff --git a/docs/manuals/mcstas/contrib/TOF2Q_cyl_monitor.tex b/docs/manuals/mcstas/contrib/TOF2Q_cyl_monitor.tex new file mode 100644 index 000000000..14926d4d4 --- /dev/null +++ b/docs/manuals/mcstas/contrib/TOF2Q_cyl_monitor.tex @@ -0,0 +1,46 @@ +\section{The \texttt{TOF2Q\_cyl\_monitor} McStas Component} +Release: McStas 2.0 + +Cylindrical (2pi) 2theta v. q Time-of-flight monitor. + +\subsection*{Identification} +\begin{itemize} + \item \textbf{Site:} + \item \textbf{Author:} Kim Lefmann + \item \textbf{Origin:} Risoe + \item \textbf{Date:} October 2000 +\end{itemize} + +\subsection*{Description} +\begin{lstlisting} +Cylindrical (2pi) 2theta v. q Time-of-flight monitor. +\end{lstlisting} + +\subsection*{Input parameters} +Parameters in \textbf{boldface} are required; the others are optional. + +\begin{longtable}{p{0.22\textwidth}p{0.12\textwidth}p{0.46\textwidth}p{0.14\textwidth}} +\toprule +\textbf{Name} & \textbf{Unit} & \textbf{Description} & \textbf{Default} \\ +\midrule +\endhead +nq & 1 & Number of q bins & 100 \\ +nphi & 1 & Number of angular bins & 100 \\ +nh & 1 & Number of bins in detector height & 10 \\ +restore\_neutron & 1 & If set, the monitor does not influence the neutron state & 0 \\ +filename & str & Name of file in which to store the detector image & 0 \\ +radius & m & Cylinder radius & 1.0 \\ +height & m & Cylinder height & 0.1 \\ +q\_min & 1/AA & Minimum q value & 0 \\ +q\_max & 1/AA & Maximum q value & 20 \\ +L\_chop2samp & m & Distance from resolution chopper to sample position & 144.0 \\ +t\_chop & ms & Flight time of mean wave length from source to resolution chopper & 0.004 \\ +pixel & 1 & Flag, 0: no pixelation and perfect time. 1: make pixels from nphi and nh and time resolution limitation. & 1 \\ +\bottomrule +\end{longtable} + +\subsection*{Links} +\begin{itemize} + \item \href{run:/home/willend/willend-McCode/mcstas-comps/contrib/TOF2Q_cyl_monitor.comp}{Source code} for \texttt{TOF2Q\_cyl\_monitor.comp}. +\end{itemize} +\IfFileExists{TOF2Q_cyl_monitor_static.tex}{\input{TOF2Q_cyl_monitor_static.tex}}{} \ No newline at end of file diff --git a/docs/manuals/mcstas/contrib/TOFSANSdet.tex b/docs/manuals/mcstas/contrib/TOFSANSdet.tex new file mode 100644 index 000000000..3bdef7cc9 --- /dev/null +++ b/docs/manuals/mcstas/contrib/TOFSANSdet.tex @@ -0,0 +1,66 @@ +\section{The \texttt{TOFSANSdet} McStas Component} +Multiple TOF detectors for SANS instrument. +The component is to be placed at the sample position. +For the time being better switch gravity off. + +\subsection*{Identification} +\begin{itemize} + \item \textbf{Site:} + \item \textbf{Author:} Henrich Frielinghaus, FZJuelich + \item \textbf{Origin:} FZJ + \item \textbf{Date:} Apr 2013 +\end{itemize} + +\subsection*{Description} +\begin{lstlisting} +TOF monitor that calculates I of q. + +Example: TOFSANSdet(); +\end{lstlisting} + +\subsection*{Input parameters} +Parameters in \textbf{boldface} are required; the others are optional. + +\begin{longtable}{p{0.22\textwidth}p{0.12\textwidth}p{0.46\textwidth}p{0.14\textwidth}} +\toprule +\textbf{Name} & \textbf{Unit} & \textbf{Description} & \textbf{Default} \\ +\midrule +\endhead +Nq & 1 & Number of q-bins & 100 \\ +plength & & & 0.00286 \\ +ssdist & & Source-Sample distance for TOF calculation. & 27.0 \\ +coldis & & Collimation length & 20.0 \\ +Sthckn & cm & sample thickness & 0.1 \\ +ds1 & & distance of detector 1 & 1.0 \\ +xw1 & & width of detector 1 (0 for off) & 0.0 \\ +yh1 & & height of detector 1 (0 for off) & 0.0 \\ +hl1 & & w/h of hole in det 1 (0 for off), full width & 0.0 \\ +ds2 & & distance...........2 & 5.0 \\ +xw2 & & width..............2 & 1.0 \\ +yh2 & & heigth.............2 & 1.0 \\ +hl2 & & hole...............2 & 0.2 \\ +ds3 & & & 20.0 \\ +xw3 & & width..............3 & 1.0 \\ +yh3 & & height.............3 & 1.0 \\ +hl3 & & hole...............3 (beam stop, used for primary beam detection) & 0.04 \\ +vx3 & & vertical extension of beam stop down (in case of gravity off set 0.0, otherwise value larger than 1.0) & 0.0 \\ +tmin & s & Beginning of time window & 0.005 \\ +tmax & s & End of time window & 0.15 \\ +Nx & & Number of horizontal detector pixels (detector 1,2,3) better leave unchanged & 128.0 \\ +Ny & & Number of vertical detector pixels (detector 1,2,3) better leave unchanged & 128.0 \\ +Nt & & Number of time bins (detector 1,2,3) better leave unchanged & 500.0 \\ +qmin & 1/A & Lower limit of q-range & 0.0005 \\ +qmax & 1/A & Upper limit of q-range & 0.11 \\ +rstneu & & restore neutron after treatment ??? (0.0 = no) & 0.0 \\ +centol & & tolerance of center determination (if center larger than centol*calculated\_center then set back to theory) & 0.1 \\ +inttol & & tolerance of intensity (if primary beam intensity smaller than inttol*max\_intensity then discard data) & 0.0001 \\ +qcal & & calibration of intensity (cps) to width of q-bin (non\_zero = yes, zero = no) & 1 \\ +fname & & file name (first part without extensions) & 0 \\ +\bottomrule +\end{longtable} + +\subsection*{Links} +\begin{itemize} + \item \href{run:/home/willend/willend-McCode/mcstas-comps/contrib/TOFSANSdet.comp}{Source code} for \texttt{TOFSANSdet.comp}. +\end{itemize} +\IfFileExists{TOFSANSdet_static.tex}{\input{TOFSANSdet_static.tex}}{} \ No newline at end of file diff --git a/docs/manuals/mcstas/contrib/TOF_PSDmonitor.tex b/docs/manuals/mcstas/contrib/TOF_PSDmonitor.tex new file mode 100644 index 000000000..c618c90d3 --- /dev/null +++ b/docs/manuals/mcstas/contrib/TOF_PSDmonitor.tex @@ -0,0 +1,50 @@ +\section{The \texttt{TOF\_PSDmonitor} McStas Component} +Position-sensitive TOF vs. (height) linear monitor. + +\subsection*{Identification} +\begin{itemize} + \item \textbf{Site:} + \item \textbf{Author:} Robert Dalgliesh + \item \textbf{Origin:} ISIS + \item \textbf{Date:} September 2021 +\end{itemize} + +\subsection*{Description} +\begin{lstlisting} +Adapted from Kim Lefmann's TOF_cylPSDmonitor and PSD_monitors +An n pixel (vertical, linear) PSD monitor with Time of Flight detection. +This component may also be used as a beam +detector. + +Example: TOF_PSDmonitor(xmin=-0.1, xmax=0.1, ymin=-0.1, ymax=0.1, +ny=90, nchan=100, TOFmin=0.0, TOFmax=20000.0, filename="Output.psd") +\end{lstlisting} + +\subsection*{Input parameters} +Parameters in \textbf{boldface} are required; the others are optional. + +\begin{longtable}{p{0.22\textwidth}p{0.12\textwidth}p{0.46\textwidth}p{0.14\textwidth}} +\toprule +\textbf{Name} & \textbf{Unit} & \textbf{Description} & \textbf{Default} \\ +\midrule +\endhead +ny & 1 & Number of pixel rows & 90 \\ +nchan & 1 & Number of TOF channels & 100 \\ +xwidth & m & width of detector opening & 0.1 \\ +xmin & m & Lower x bound of detector opening & 0 \\ +xmax & m & Upper x bound of detector opening & 0 \\ +yheight & m & height of detector opening & 0.1 \\ +ymin & m & Lower y bound of detector opening & 0 \\ +ymax & m & Upper y bound of detector opening & 0 \\ +TOFmin & mu-s & Beginning TOF window & 0 \\ +TOFmax & mu-s & End TO window & 1e6 \\ +nowritefile & 1 & If set, detector will skip writing to disk & 0 \\ +filename & str & Name of file in which to store the detector image & 0 \\ +\bottomrule +\end{longtable} + +\subsection*{Links} +\begin{itemize} + \item \href{run:/home/willend/willend-McCode/mcstas-comps/contrib/TOF_PSDmonitor.comp}{Source code} for \texttt{TOF\_PSDmonitor.comp}. +\end{itemize} +\IfFileExists{TOF_PSDmonitor_static.tex}{\input{TOF_PSDmonitor_static.tex}}{} \ No newline at end of file diff --git a/docs/manuals/mcstas/contrib/TOF_PSDmonitor_toQ.tex b/docs/manuals/mcstas/contrib/TOF_PSDmonitor_toQ.tex new file mode 100644 index 000000000..675ece5fe --- /dev/null +++ b/docs/manuals/mcstas/contrib/TOF_PSDmonitor_toQ.tex @@ -0,0 +1,58 @@ +\section{The \texttt{TOF\_PSDmonitor\_toQ} McStas Component} +Position-sensitive, linear Q monitor. + +\subsection*{Identification} +\begin{itemize} + \item \textbf{Site:} + \item \textbf{Author:} Robert Dalgliesh + \item \textbf{Origin:} ISIS + \item \textbf{Date:} September 2021 +\end{itemize} + +\subsection*{Description} +\begin{lstlisting} +One-dimensional Q-monitor. Calculates Q from "measured" time-of-flight, +i.e. not from particle velocity parameters. + +Adapted from Kim Lefmann's TOF_cylPSDmonitor and PSD_monitors +An n pixel Q-monitor based on measured Time of Flight detection. +This component may also be used as a beam +detector. + +Example: TOF_PSDmonitor_toQ(xmin=-0.1, xmax=0.1, ymin=-0.1, ymax=0.1, +ny=90, nqbin=100, TOFmin=0.0, TOFmax=20000.0, filename="Output.psd") +\end{lstlisting} + +\subsection*{Input parameters} +Parameters in \textbf{boldface} are required; the others are optional. + +\begin{longtable}{p{0.22\textwidth}p{0.12\textwidth}p{0.46\textwidth}p{0.14\textwidth}} +\toprule +\textbf{Name} & \textbf{Unit} & \textbf{Description} & \textbf{Default} \\ +\midrule +\endhead +ny & 1 & Number of y bins (for discretisation of vertical detector dimension into "bins") & 90 \\ +nqbin & 1 & number of q bins & 500 \\ +xwidth & m & width of detector opening & 0.1 \\ +xmin & m & Lower x bound of detector opening & 0 \\ +xmax & m & Upper x bound of detector opening & 0 \\ +yheight & m & height of detector opening & 0.1 \\ +ymin & m & Lower y bound of detector opening & 0 \\ +ymax & m & Upper y bound of detector opening & 0 \\ +tmin & mu-s & Beginning TOF window & 0.0 \\ +tmax & mu-s & End TO window & 100000.0 \\ +qmin & AA\textasciicircum{}-1 & Start of q window & 0.005 \\ +qmax & AA\textasciicircum{}-1 & End of q window & 0.5 \\ +L1 & m & distance from source to sample (m) & 23.0 \\ +L2 & m & distance from sample to detector (m) & 3.0 \\ +detTheta & deg & Nominal detector theta & 0.91 \\ +filename & str & Name of file in which to store the detector image & 0 \\ +nowritefile & 1 & If set, detector will skip writing to disk & 0 \\ +\bottomrule +\end{longtable} + +\subsection*{Links} +\begin{itemize} + \item \href{run:/home/willend/willend-McCode/mcstas-comps/contrib/TOF_PSDmonitor_toQ.comp}{Source code} for \texttt{TOF\_PSDmonitor\_toQ.comp}. +\end{itemize} +\IfFileExists{TOF_PSDmonitor_toQ_static.tex}{\input{TOF_PSDmonitor_toQ_static.tex}}{} \ No newline at end of file diff --git a/docs/manuals/mcstas/contrib/Transmission_V_polarisator.tex b/docs/manuals/mcstas/contrib/Transmission_V_polarisator.tex new file mode 100644 index 000000000..238758e9c --- /dev/null +++ b/docs/manuals/mcstas/contrib/Transmission_V_polarisator.tex @@ -0,0 +1,60 @@ +\section{The \texttt{Transmission\_V\_polarisator} McStas Component} +Transmission V-polarisator including absorption by Fe in the supermirror. Experimentally benchmarked. + +\subsection*{Identification} +\begin{itemize} + \item \textbf{Site:} + \item \textbf{Author:} Andreas Ostermann (additions from Michael Schneider, SNAG) + \item \textbf{Origin:} TUM + \item \textbf{Date:} 2024 +\end{itemize} + +\subsection*{Description} +\begin{lstlisting} +Transmission V-polarisator including absorption by Fe in the supermirror. + +Example: Transmission_V_polarisator(w1=0.050, h1=0.050, +w2=0.050, h2=0.050, l=2.700, +waferD=0.0003, FeD=2.16e-06, +Si_i=0.2, Si_a=0.215, +R0=0.99, Qc=0.02174, alpha=4.25, W=0.001, +mleft=1.2, mright=1.2, mtop=1.2, mbottom=1.2, +reflectUP="measured_up_q.dat",reflectDW="measured_dw_q.dat") +\end{lstlisting} + +\subsection*{Input parameters} +Parameters in \textbf{boldface} are required; the others are optional. + +\begin{longtable}{p{0.22\textwidth}p{0.12\textwidth}p{0.46\textwidth}p{0.14\textwidth}} +\toprule +\textbf{Name} & \textbf{Unit} & \textbf{Description} & \textbf{Default} \\ +\midrule +\endhead +reflectUP & str & Reflectivity profile of the FeSi-wafer for spin-up neutrons; columns [q,R] & 0 \\ +reflectDW & str & Reflectivity profile of the FeSi-wafer for spin-down neutrons; columns [q,R] & 0 \\ +\textbf{w1} & m & Width at the polarizer entry & \\ +\textbf{h1} & m & Height at the polarizer entry & \\ +\textbf{w2} & m & Width at the polarizer exit & \\ +\textbf{h2} & m & Height at the polarizer exit & \\ +\textbf{l} & m & length of polarizer & \\ +\textbf{waferD} & m & Thickness of Si wafer & \\ +\textbf{Si\_i} & barns & Scattering cross section per atom (barns) & \\ +\textbf{Si\_a} & barns & Absorption cross section per atom (barns) at 2200m/s & \\ +\textbf{FeD} & m & Thickness of Fe in supermirror, Ti is neglected & \\ +R0 & 1 & Low-angle reflectivity of the outer guide & 0.99 \\ +Qc & AA-1 & Critical scattering vector of the outer guide & 0.02174 \\ +alpha & AA & Slope of reflectivity of the outer guide & 4.25 \\ +W & AA-1 & Width of supermirror cut-off of the outer guide & 0.001 \\ +mleft & 1 & m-value of material for left. vert. mirror of the outer guide & -1 \\ +mright & 1 & m-value of material for right. vert. mirror of the outer guide & -1 \\ +mtop & 1 & m-value of material for top. horz. mirror of the outer guide & -1 \\ +mbottom & 1 & m-value of material for bottom. horz. mirror of the outer guide & -1 \\ +\bottomrule +\end{longtable} + +\subsection*{Links} +\begin{itemize} + \item \href{run:/home/willend/willend-McCode/mcstas-comps/contrib/Transmission_V_polarisator.comp}{Source code} for \texttt{Transmission\_V\_polarisator.comp}. + \item P. B\öni, W. M\ünzer and A. Ostermann: \textless{}a href="https://doi.org/10.1016/j.physb.2009.06.031"\textgreater{}Physica B: Condensed Matter Volume 404, Issue 17, 1 September 2009, Pages 2620-2623\textless{}/a\textgreater{} +\end{itemize} +\IfFileExists{Transmission_V_polarisator_static.tex}{\input{Transmission_V_polarisator_static.tex}}{} \ No newline at end of file diff --git a/docs/manuals/mcstas/contrib/Transmission_polarisatorABSnT.tex b/docs/manuals/mcstas/contrib/Transmission_polarisatorABSnT.tex new file mode 100644 index 000000000..f40bca8b6 --- /dev/null +++ b/docs/manuals/mcstas/contrib/Transmission_polarisatorABSnT.tex @@ -0,0 +1,70 @@ +\section{The \texttt{Transmission\_polarisatorABSnT} McStas Component} +Transmission V-polarisator including absorption by Fe in the supermirror. + +\subsection*{Identification} +\begin{itemize} + \item \textbf{Site:} + \item \textbf{Author:} Andreas Ostermann + \item \textbf{Origin:} TUM + \item \textbf{Date:} 2004 +\end{itemize} + +\subsection*{Description} +\begin{lstlisting} +Transmission V-polarisator including absorption by Fe in the supermirror. + +Example: Gravity_guide(w1=0.1, h1=0.1, w2=0.1, h2=0.1, l=12, +R0=0.99, Qc=0.021, alpha=6.07, m=1.0, W=0.003, k=1, d=0.0005) +Example: Transmission_polarisatorABSnT(w1=0.050, h1=0.050, +w2=0.050, h2=0.050, l=2.700, +waferD=0.0003, FeD=2.16e-06, +Si_i=0.2, Si_a=0.215, +R0=0.99, Qc=0.02174, alpha=4.25, W=0.001, +mleft=1.2, mright=1.2, mtop=1.2, mbottom=1.2, +R0_up=0.99, Qc_up=0.014, alpha_up=2.25, W_up=0.0025, mup=1.0, +R0_down=0.99, Qc_down=0.02174, alpha_down=3.8, W_down=0.00235, mdown=2.5) +\end{lstlisting} + +\subsection*{Input parameters} +Parameters in \textbf{boldface} are required; the others are optional. + +\begin{longtable}{p{0.22\textwidth}p{0.12\textwidth}p{0.46\textwidth}p{0.14\textwidth}} +\toprule +\textbf{Name} & \textbf{Unit} & \textbf{Description} & \textbf{Default} \\ +\midrule +\endhead +\textbf{w1} & m & Width at the polarizer entry & \\ +\textbf{h1} & m & Height at the polarizer entry & \\ +\textbf{w2} & m & Width at the polarizer exit & \\ +\textbf{h2} & m & Height at the polarizer exit & \\ +\textbf{l} & m & length of polarizer & \\ +\textbf{waferD} & m & Thickness of Si wafer & \\ +\textbf{Si\_i} & barns & Scattering cross section per atom (barns) & \\ +\textbf{Si\_a} & barns & Absorption cross section per atom (barns) at 2200m/s & \\ +\textbf{FeD} & m & Thickness of Fe wafer & \\ +R0 & 1 & Low-angle reflectivity of the outer guide & 0.99 \\ +Qc & AA-1 & Critical scattering vector of the outer guide & 0.02174 \\ +alpha & AA & Slope of reflectivity of the outer guide & 4.25 \\ +W & AA-1 & Width of supermirror cut-off of the outer guide & 0.001 \\ +R0\_up & 1 & Low-angle reflectivity of the Fe/Si-wafer for spin up neutrons & 0.99 \\ +Qc\_up & AA-1 & Critical scattering vector of the Fe/Si-wafer for spin up neutrons & 0.0109 \\ +alpha\_up & AA & Slope of reflectivity of the Fe/Si-wafer for spin up neutrons & 4.25 \\ +W\_up & AA-1 & Width of supermirror cut-off of the Fe/Si-wafer for spin up neutrons & 0.0025 \\ +R0\_down & 1 & Low-angle reflectivity of the Fe/Si-wafer for spin down neutrons & 0.99 \\ +Qc\_down & AA-1 & Critical scattering vector of the Fe/Si-wafer for spin down neutrons & 0.02174 \\ +alpha\_down & AA & Slope of reflectivity of the Fe/Si-wafer for spin down neutrons & 6.25 \\ +W\_down & AA-1 & Width of supermirror cut-off of the Fe/Si-wafer for spin down neutrons & 0.001 \\ +mleft & 1 & m-value of material for left. vert. mirror of the outer guide & -1 \\ +mright & 1 & m-value of material for right. vert. mirror of the outer guide & -1 \\ +mtop & 1 & m-value of material for top. horz. mirror of the outer guide & -1 \\ +mbottom & 1 & m-value of material for bottom. horz. mirror of the outer guide & -1 \\ +mup & 1 & m-value of the Fe/Si-wafer for spin up neutrons & -1 \\ +mdown & 1 & m-value of the Fe/Si-wafer for spin down neutrons & -1 \\ +\bottomrule +\end{longtable} + +\subsection*{Links} +\begin{itemize} + \item \href{run:/home/willend/willend-McCode/mcstas-comps/contrib/Transmission_polarisatorABSnT.comp}{Source code} for \texttt{Transmission\_polarisatorABSnT.comp}. +\end{itemize} +\IfFileExists{Transmission_polarisatorABSnT_static.tex}{\input{Transmission_polarisatorABSnT_static.tex}}{} \ No newline at end of file diff --git a/docs/manuals/mcstas/contrib/Vertical_Bender.tex b/docs/manuals/mcstas/contrib/Vertical_Bender.tex new file mode 100644 index 000000000..29788a918 --- /dev/null +++ b/docs/manuals/mcstas/contrib/Vertical_Bender.tex @@ -0,0 +1,88 @@ +\section{The \texttt{Vertical\_Bender} McStas Component} +Release: McStas 2.4 + +Multi-channel bender curving vertically down. + +\subsection*{Identification} +\begin{itemize} + \item \textbf{Site:} + \item \textbf{Author:} Andrew Jackson, Richard Heenan + \item \textbf{Origin:} ESS + \item \textbf{Date:} August 2016, June 2017 +\end{itemize} + +\subsection*{Description} +\begin{lstlisting} +Based on Pol_bender written by Peter Christiansen +Models a rectangular curved guide with entrance on Z axis. +Entrance is on the X-Y plane. Draws a correct depiction of +the guide with multiple channels - i.e. following components need to be +displaced. +Guide can contain multiple channels using horizontal blades +Reflectivity modeled using StdReflecFunc and {R0, Qc, alpha, m, W} can be set +for top (outside of curve), bottom (inside of curve) and sides +(both sides equal), blades reflectivities match top and bottom (each channel is +like a "mini guide"). +Neutrons are tracked, with gravity, inside the wall of a cylinder using distance +steps of diststep1. Upon crossing the inner or outer wall, the final step is +repeated using steps of diststep2, thus checking more +closely for the first crossing of either wall. If diststep1 is too +large than a "grazing incidence reflection" may be missed altogether. +If diststep1 is too small, then the code will run slower! +Exact intersection tmes with the flat sides and ends of the bender channel are calculated +first in order to limit the time spent tracking curved trajectories. +Turning gravity off will not make this run any faster, as the same method is used. + +28/06/2017 still need validation against other codes (e.g. for gravity off case) + +Example: +Vertical_Bender(xwidth = 0.05, yheight = 0.05, length = 3.0, +radius = 70.0, nslit = 5, d=0.0005, diststep1=0.020, diststep2=0.002, +rTopPar={0.99, 0.219, 6.07, 3.0, 0.003}, +rBottomPar={0.99, 0.219, 6.07, 2.0, 0.003}, +rSidesPar={0.99, 0.219, 6.07, 2.0, 0.003}, + +See example instrument Test_Vert_Bender + +%BUGS +Original code did not work with rotation about axes and gravity. +This tedious tracking method should work (28/6/17 still under test) for a vertical bender, with optional +rotation about x axis and gravity (and likely rotation about y axis but needs testing, +and even perhaps rotation about z axis as in rotated local frame Gx then is non zero but the edge solver still works). +Would also need test the drawing in trace mode). + +GRAVITY : Yes, when component is not rotated +\end{lstlisting} + +\subsection*{Input parameters} +Parameters in \textbf{boldface} are required; the others are optional. + +\begin{longtable}{p{0.22\textwidth}p{0.12\textwidth}p{0.46\textwidth}p{0.14\textwidth}} +\toprule +\textbf{Name} & \textbf{Unit} & \textbf{Description} & \textbf{Default} \\ +\midrule +\endhead +rTopPar & vector & Parameters for reflectivity of bender top surface & \{0.99, 0.219, 6.07, 0.0, 0.003\} \\ +rBottomPar & vector & Parameters for reflectivity of bender bottom surface & \{0.99, 0.219, 6.07, 0.0, 0.003\} \\ +rSidesPar & vector & Parameters for reflectivity of bender sides surface & \{0.99, 0.219, 6.07, 0.0, 0.003\} \\ +\textbf{xwidth} & m & Width at the guide entry & \\ +\textbf{yheight} & m & Height at the guide entry & \\ +\textbf{length} & m & length of guide along center & \\ +\textbf{radius} & m & Radius of curvature of the guide (+:curve up/-:curve down) & \\ +G & & & 9.8 \\ +nchan & 1 & Number of channels & 1 \\ +d & m & Width of spacers (subdividing absorbing walls) & 0.0 \\ +debug & 1 & 0 to 10 for zero to maximum print out - reduce number of neutrons to run ! & 0 \\ +endFlat & 1 & If endflat\textgreater{}0 then entrance and exit planes are parallel. & 0 \\ +drawOption & & & 1 \\ +alwaystrack & 1 & default 0, 1 to force tracking even when gravity is off & 0 \\ +diststep1 & m & inital collision search steps for trajectory in cylinder when gravity is non zero & 0.020 \\ +diststep2 & m & final steps for trajectory in cylinder & 0.002 \\ +\bottomrule +\end{longtable} + +\subsection*{Links} +\begin{itemize} + \item \href{run:/home/willend/willend-McCode/mcstas-comps/contrib/Vertical_Bender.comp}{Source code} for \texttt{Vertical\_Bender.comp}. +\end{itemize} +\IfFileExists{Vertical_Bender_static.tex}{\input{Vertical_Bender_static.tex}}{} \ No newline at end of file diff --git a/docs/manuals/mcstas/contrib/Vertical_T0a.tex b/docs/manuals/mcstas/contrib/Vertical_T0a.tex new file mode 100644 index 000000000..d15bfcb50 --- /dev/null +++ b/docs/manuals/mcstas/contrib/Vertical_T0a.tex @@ -0,0 +1,40 @@ +\section{The \texttt{Vertical\_T0a} McStas Component} +Vertical T0-chopper as used in SNS\_ARCS + +\subsection*{Identification} +\begin{itemize} + \item \textbf{Site:} + \item \textbf{Author:} Garrett Granroth + \item \textbf{Origin:} SNS Oak Ridge,TN + \item \textbf{Date:} 2 NOV 2004 +\end{itemize} + +\subsection*{Description} +\begin{lstlisting} +Vertical T0-chopper as used in SNS_ARCS +\end{lstlisting} + +\subsection*{Input parameters} +Parameters in \textbf{boldface} are required; the others are optional. + +\begin{longtable}{p{0.22\textwidth}p{0.12\textwidth}p{0.46\textwidth}p{0.14\textwidth}} +\toprule +\textbf{Name} & \textbf{Unit} & \textbf{Description} & \textbf{Default} \\ +\midrule +\endhead +\textbf{len} & m & length of slot & \\ +\textbf{w1} & m & center width & \\ +\textbf{w2} & m & edgewidth & \\ +\textbf{nu} & Hz & frequency & \\ +\textbf{delta} & s & time from edge of chopper to center Phase angle & \\ +\textbf{tc} & s & time when desired neutron is at the center of the chopper & \\ +\textbf{ymin} & m & Lower y bound & \\ +\textbf{ymax} & m & Upper y bound & \\ +\bottomrule +\end{longtable} + +\subsection*{Links} +\begin{itemize} + \item \href{run:/home/willend/willend-McCode/mcstas-comps/contrib/Vertical_T0a.comp}{Source code} for \texttt{Vertical\_T0a.comp}. +\end{itemize} +\IfFileExists{Vertical_T0a_static.tex}{\input{Vertical_T0a_static.tex}}{} \ No newline at end of file diff --git a/docs/manuals/mcstas/contrib/ViewModISIS.tex b/docs/manuals/mcstas/contrib/ViewModISIS.tex new file mode 100644 index 000000000..958148852 --- /dev/null +++ b/docs/manuals/mcstas/contrib/ViewModISIS.tex @@ -0,0 +1,73 @@ +\section{The \texttt{ViewModISIS} McStas Component} +ISIS Moderators + +\subsection*{Identification} +\begin{itemize} + \item \textbf{Site:} + \item \textbf{Author:} G. Skoro, based on ViewModerator4 from S. Ansell + \item \textbf{Origin:} ISIS + \item \textbf{Date:} February 2016 +\end{itemize} + +\subsection*{Description} +\begin{lstlisting} +Produces a neutron distribution at the ISIS TS1 or TS2 beamline shutter front face (or corresponding moderator) position. +The Face argument determines which TS1 or TS2 beamline is to be sampled by using corresponding Etable file. +Neutrons are created having a range of energies determined by the E0 and E1 arguments. +Trajectories are produced such that they pass through the shutter front face (RECOMENDED) or moderator face (defined by +xw and yh) and a focusing rectangle (defined by focus_xw, focus_yh and dist). + +Example 1: ViewModISISver1(Face="TS1_S04_Merlin.mcstas", E0 = E_min, E1 = E_max, +dist = 1.7, focus_xw = 0.094, focus_yh = 0.094, modPosition=0, +xw=0.12,yh=0.12) + +MERLIN simulation. +modPosition=0 so initial surface is at (near to) the moderator face. +In this example, focus_xw and focus_yh are chosen to be identical to the shutter opening dimension. +dist = 1.7 is the 'real' distance to the shutter front face => This is TimeOffset value (=170 [cm]) +from TS1_S04_Merlin.mcstas file. + + +Example 2: ViewModISISver1(Face="Let_timeTest_155.mcstas", E0 = E_min, E1 = E_max, +modPosition=1, xw=0.196, yh = 0.12, focus_xw = 0.04, focus_yh = 0.094, dist = 0.5) + +LET simulation. +modPosition=1 so initial surface is at front face of shutter insert. + +(IMPORTANT) If modPosition=1, the xw and yh values are obsolete. The dimensions of +initial surface are automatically calculated using "RDUM" values in Let_timeTest_155.mcstas file. + +In this example, focus_xw and focus_yh are arbitrary chosen to be identical to the shutter opening dimension. + + + +N.B. Absolute normalization: The result of the Mc-Stas simulation will show neutron intensity for beam current of 1 uA. +\end{lstlisting} + +\subsection*{Input parameters} +Parameters in \textbf{boldface} are required; the others are optional. + +\begin{longtable}{p{0.22\textwidth}p{0.12\textwidth}p{0.46\textwidth}p{0.14\textwidth}} +\toprule +\textbf{Name} & \textbf{Unit} & \textbf{Description} & \textbf{Default} \\ +\midrule +\endhead +Face & string & Etable filename & "TS1\_S04\_Merlin.mcstas" \\ +\textbf{E0} & meV & Lower edge of energy distribution & \\ +\textbf{E1} & meV & Upper edge of energy distribution & \\ +modPosition & int & Defines the initial surface for neutron distribution production. Possible values = 0 (at moderator) or 1 (at shutter insert) & 0 \\ +xwidth & m & Moderator width & 0.12 \\ +yheight & & & 0.12 \\ +focus\_xw & m & Width of focusing rectangle & 0.094 \\ +focus\_yh & m & Height of focusing rectangle & 0.094 \\ +dist & m & Distance from source surface to the focusing rectangle & 1.7 \\ +verbose & int & Flag to output debugging information & 0 \\ +beamcurrent & uA & ISIS beam current & 1 \\ +\bottomrule +\end{longtable} + +\subsection*{Links} +\begin{itemize} + \item \href{run:/home/willend/willend-McCode/mcstas-comps/contrib/ViewModISIS.comp}{Source code} for \texttt{ViewModISIS.comp}. +\end{itemize} +\IfFileExists{ViewModISIS_static.tex}{\input{ViewModISIS_static.tex}}{} \ No newline at end of file diff --git a/docs/manuals/mcstas/contrib/multi_pipe.tex b/docs/manuals/mcstas/contrib/multi_pipe.tex new file mode 100644 index 000000000..88ff31b9a --- /dev/null +++ b/docs/manuals/mcstas/contrib/multi_pipe.tex @@ -0,0 +1,52 @@ +\section{The \texttt{multi\_pipe} McStas Component} +multi-pipe circular slit. + +\subsection*{Identification} +\begin{itemize} + \item \textbf{Site:} + \item \textbf{Author:} Uwe Filges + \item \textbf{Origin:} PSI + \item \textbf{Date:} March, 2005 +\end{itemize} + +\subsection*{Description} +\begin{lstlisting} +No transmission around the slit is allowed. + +example for an input file +# user defined geometry +# x(i) y(i) r(i) [m] +0.02 0.03 0.01 +-0.04 0.015 0.005 + +warning: at least two values must be in the file + +Example: multi_pipe(xmin=-0.01, xmax=0.01, ymin=-0.01, ymax=0.01) +\end{lstlisting} + +\subsection*{Input parameters} +Parameters in \textbf{boldface} are required; the others are optional. + +\begin{longtable}{p{0.22\textwidth}p{0.12\textwidth}p{0.46\textwidth}p{0.14\textwidth}} +\toprule +\textbf{Name} & \textbf{Unit} & \textbf{Description} & \textbf{Default} \\ +\midrule +\endhead +filename & str & define user table of holes & 0 \\ +\textbf{xmin} & m & Lower x bound & \\ +\textbf{xmax} & m & Upper x bound & \\ +\textbf{ymin} & m & Lower y bound & \\ +\textbf{ymax} & m & Upper y bound & \\ +radius & & radius of a single hole & 0.0 \\ +gap & m & distance between holes & 0.0 \\ +thickness & m & thickness of the pipe & 0.0 \\ +xwidth & m & Width of slit plate. Overrides xmin,xmax. & 0 \\ +yheight & m & Height of slit plate. Overrides ymin,ymax. & 0 \\ +\bottomrule +\end{longtable} + +\subsection*{Links} +\begin{itemize} + \item \href{run:/home/willend/willend-McCode/mcstas-comps/contrib/multi_pipe.comp}{Source code} for \texttt{multi\_pipe.comp}. +\end{itemize} +\IfFileExists{multi_pipe_static.tex}{\input{multi_pipe_static.tex}}{} \ No newline at end of file diff --git a/docs/manuals/mcstas/misc/Annulus.tex b/docs/manuals/mcstas/misc/Annulus.tex new file mode 100644 index 000000000..181f4937e --- /dev/null +++ b/docs/manuals/mcstas/misc/Annulus.tex @@ -0,0 +1,42 @@ +\section{The \texttt{Annulus} McStas Component} +A geometric shape without effect on neutron, for instrument display purpose. + +\subsection*{Identification} +\begin{itemize} + \item \textbf{Site:} + \item \textbf{Author:} E. Farhi + \item \textbf{Origin:} ILL + \item \textbf{Date:} June 23rd 2009 +\end{itemize} + +\subsection*{Description} +\begin{lstlisting} +An inactive geometrical shape (annulus), for drawing purposes only. +Derived from the Shape component + +Example: Annulus(radius=0.05, yheight=0.1) +\end{lstlisting} + +\subsection*{Input parameters} +Parameters in \textbf{boldface} are required; the others are optional. + +\begin{longtable}{p{0.22\textwidth}p{0.12\textwidth}p{0.46\textwidth}p{0.14\textwidth}} +\toprule +\textbf{Name} & \textbf{Unit} & \textbf{Description} & \textbf{Default} \\ +\midrule +\endhead +outer\_radius & m & Outer radius of geometry in (x,z) plane & 0 \\ +inner\_radius & m & Inner radius of geometry in (x,z) plane & 0 \\ +radius & m & Outer radius of geometry in (x,z) plane & 0 \\ +xwidth & m & Horiz. dimension of geometry as a width & 0 \\ +yheight & m & Vert. & 0 \\ +zdepth & m & Depth dimension of geometry & 0 \\ +\bottomrule +\end{longtable} + +\subsection*{Links} +\begin{itemize} + \item \href{run:/home/willend/willend-McCode/mcstas-comps/misc/Annulus.comp}{Source code} for \texttt{Annulus.comp}. + \item mcdoc page of \textless{}a href="Shape.html"\textgreater{}Shape\textless{}/a\textgreater{}\textless{}/b\textgreater{} component +\end{itemize} +\IfFileExists{Annulus_static.tex}{\input{Annulus_static.tex}}{} \ No newline at end of file diff --git a/docs/manuals/mcstas/misc/Circle.tex b/docs/manuals/mcstas/misc/Circle.tex new file mode 100644 index 000000000..0ac4998b0 --- /dev/null +++ b/docs/manuals/mcstas/misc/Circle.tex @@ -0,0 +1,40 @@ +\section{The \texttt{Circle} McStas Component} +A geometric shape without effect on neutron, for instrument display purpose. + +\subsection*{Identification} +\begin{itemize} + \item \textbf{Site:} + \item \textbf{Author:} E. Farhi + \item \textbf{Origin:} ILL + \item \textbf{Date:} June 23rd 2009 +\end{itemize} + +\subsection*{Description} +\begin{lstlisting} +An inactive geometrical shape (circle), for drawing purposes only. +Derived from the Shape component + +Example: Circle(radius=0.05, yheight=0.1) +\end{lstlisting} + +\subsection*{Input parameters} +Parameters in \textbf{boldface} are required; the others are optional. + +\begin{longtable}{p{0.22\textwidth}p{0.12\textwidth}p{0.46\textwidth}p{0.14\textwidth}} +\toprule +\textbf{Name} & \textbf{Unit} & \textbf{Description} & \textbf{Default} \\ +\midrule +\endhead +radius & m & Outer radius of geometry in (x,z) plane & 0 \\ +xwidth & m & Horiz. dimension of geometry & 0 \\ +yheight & m & Vert. dimension of geometry & 0 \\ +zdepth & m & Depth dimension of geometry & 0 \\ +\bottomrule +\end{longtable} + +\subsection*{Links} +\begin{itemize} + \item \href{run:/home/willend/willend-McCode/mcstas-comps/misc/Circle.comp}{Source code} for \texttt{Circle.comp}. + \item mcdoc page of \textless{}a href="Shape.html"\textgreater{}Shape\textless{}/a\textgreater{}\textless{}/b\textgreater{} component +\end{itemize} +\IfFileExists{Circle_static.tex}{\input{Circle_static.tex}}{} \ No newline at end of file diff --git a/docs/manuals/mcstas/misc/Cone.tex b/docs/manuals/mcstas/misc/Cone.tex new file mode 100644 index 000000000..6cdf6f5cd --- /dev/null +++ b/docs/manuals/mcstas/misc/Cone.tex @@ -0,0 +1,40 @@ +\section{The \texttt{Cone} McStas Component} +An inactive geometrical shape (cone), for drawing purposes only. +Derived from the \textless{}b\textgreater{}\textless{}a href="Shape.html"\textgreater{}Shape\textless{}/a\textgreater{}\textless{}/b\textgreater{} component + +Example: Cone(radius=0.05, yheight=0.1) + +\subsection*{Identification} +\begin{itemize} + \item \textbf{Site:} + \item \textbf{Author:} E. Farhi + \item \textbf{Origin:} ILL + \item \textbf{Date:} June 23rd 2009 +\end{itemize} + +\subsection*{Description} +\begin{lstlisting} + +\end{lstlisting} + +\subsection*{Input parameters} +Parameters in \textbf{boldface} are required; the others are optional. + +\begin{longtable}{p{0.22\textwidth}p{0.12\textwidth}p{0.46\textwidth}p{0.14\textwidth}} +\toprule +\textbf{Name} & \textbf{Unit} & \textbf{Description} & \textbf{Default} \\ +\midrule +\endhead +radius & m & Outer radius of geometry in (x,z) plane & 0 \\ +xwidth & m & Horiz. dimension of geometry as a width & 0 \\ +yheight & m & Vert. & 0 \\ +zdepth & m & Depth dimension of geometry & 0 \\ +\bottomrule +\end{longtable} + +\subsection*{Links} +\begin{itemize} + \item \href{run:/home/willend/willend-McCode/mcstas-comps/misc/Cone.comp}{Source code} for \texttt{Cone.comp}. + \item mcdoc page of \textless{}a href="Shape.html"\textgreater{}Shape\textless{}/a\textgreater{}\textless{}/b\textgreater{} component +\end{itemize} +\IfFileExists{Cone_static.tex}{\input{Cone_static.tex}}{} \ No newline at end of file diff --git a/docs/manuals/mcstas/misc/Disc.tex b/docs/manuals/mcstas/misc/Disc.tex new file mode 100644 index 000000000..7857615e2 --- /dev/null +++ b/docs/manuals/mcstas/misc/Disc.tex @@ -0,0 +1,43 @@ +\section{The \texttt{Disc} McStas Component} +A geometric shape without effect on neutron, for instrument display purpose. + +\subsection*{Identification} +\begin{itemize} + \item \textbf{Site:} + \item \textbf{Author:} E. Farhi + \item \textbf{Origin:} ILL + \item \textbf{Date:} June 23rd 2009 +\end{itemize} + +\subsection*{Description} +\begin{lstlisting} +An inactive geometrical shape (annulus), for drawing purposes only. +Derived from the Shape component + +Example: Annulus(radius=0.05, yheight=0.1) +\end{lstlisting} + +\subsection*{Input parameters} +Parameters in \textbf{boldface} are required; the others are optional. + +\begin{longtable}{p{0.22\textwidth}p{0.12\textwidth}p{0.46\textwidth}p{0.14\textwidth}} +\toprule +\textbf{Name} & \textbf{Unit} & \textbf{Description} & \textbf{Default} \\ +\midrule +\endhead +radius & m & Outer radius of geometry in (x,z) plane & 0 \\ +xwidth & m & Horiz. dimension of geometry & 0 \\ +yheight & m & Vert. dimensuon of geometry & 0 \\ +zdepth & m & Depth dimension of geometry & 0 \\ +nx & 1 & x-comp of orientation vector & 0 \\ +ny & 1 & y-comp of orientation vector & 1 \\ +nz & 1 & z-comp of orientation vector & 0 \\ +\bottomrule +\end{longtable} + +\subsection*{Links} +\begin{itemize} + \item \href{run:/home/willend/willend-McCode/mcstas-comps/misc/Disc.comp}{Source code} for \texttt{Disc.comp}. + \item mcdoc page of \textless{}a href="Shape.html"\textgreater{}Shape\textless{}/a\textgreater{}\textless{}/b\textgreater{} component +\end{itemize} +\IfFileExists{Disc_static.tex}{\input{Disc_static.tex}}{} \ No newline at end of file diff --git a/docs/manuals/mcstas/misc/File.tex b/docs/manuals/mcstas/misc/File.tex new file mode 100644 index 000000000..09304e5c0 --- /dev/null +++ b/docs/manuals/mcstas/misc/File.tex @@ -0,0 +1,37 @@ +\section{The \texttt{File} McStas Component} +File.comp - allows to generate instrument/component input-files +from METADATA blocks + +\subsection*{Identification} +\begin{itemize} + \item \textbf{Site:} + \item \textbf{Author:} Greg Tucker + \item \textbf{Origin:} ESS + \item \textbf{Date:} 2024 +\end{itemize} + +\subsection*{Description} +\begin{lstlisting} +File.comp - allows to generate instrument/component input-files +from METADATA blocks - see test_File.instr for an example. +\end{lstlisting} + +\subsection*{Input parameters} +Parameters in \textbf{boldface} are required; the others are optional. + +\begin{longtable}{p{0.22\textwidth}p{0.12\textwidth}p{0.46\textwidth}p{0.14\textwidth}} +\toprule +\textbf{Name} & \textbf{Unit} & \textbf{Description} & \textbf{Default} \\ +\midrule +\endhead +filename & string & Filename for output-file generated from metadata block & 0 \\ +\textbf{metadatakey} & string & METADATA-key for looking up file content (may belong to File instance or another comp) & \\ +keep & 1 & Flag to indicate if file should be kept post-simulation & 0 \\ +\bottomrule +\end{longtable} + +\subsection*{Links} +\begin{itemize} + \item \href{run:/home/willend/willend-McCode/mcstas-comps/misc/File.comp}{Source code} for \texttt{File.comp}. +\end{itemize} +\IfFileExists{File_static.tex}{\input{File_static.tex}}{} \ No newline at end of file diff --git a/docs/manuals/mcstas/misc/Legacy_circle.tex b/docs/manuals/mcstas/misc/Legacy_circle.tex new file mode 100644 index 000000000..95269feab --- /dev/null +++ b/docs/manuals/mcstas/misc/Legacy_circle.tex @@ -0,0 +1,57 @@ +\section{The \texttt{Legacy\_circle} McStas Component} +A geometric shape without effect on neutron, for instrument display purpose. + +\subsection*{Identification} +\begin{itemize} + \item \textbf{Site:} + \item \textbf{Author:} E. Farhi + \item \textbf{Origin:} ILL + \item \textbf{Date:} June 23rd 2009 +\end{itemize} + +\subsection*{Description} +\begin{lstlisting} +An inactive geometrical shape, for drawing purposes only. +It does not propagate neutron, nor interact. +Shape: +Geometric shape may be a cylinder, a sphere, a box or any other shape +box/plate: xwidth x yheight x zdepth (thickness=0) +hollow box/plate:xwidth x yheight x zdepth and thickness>0 +cylinder: radius x yheight (thickness=0) +hollow cylinder: radius x yheight and thickness>0 +sphere: radius (yheight=0 thickness=0) +hollow sphere: radius and thickness>0 (yheight=0) +any shape: geometry=OFF file + +The complex geometry option handles any closed non-convex polyhedra. +It computes the intersection points of the neutron ray with the object +transparently, so that it can be used like a regular sample object. +It supports the OFF and NOFF file format but not COFF (colored faces). +Such files may be generated from XYZ data using qhull/powercrust, and +viewed with geomview +The default size of the object depends of the OFF file data, but its +bounding box may be resized using xwidth,yheight and zdepth. + +Example: Shape(radius=0.05, yheight=0.1) +Shape(geometry="socket.off") +\end{lstlisting} + +\subsection*{Input parameters} +Parameters in \textbf{boldface} are required; the others are optional. + +\begin{longtable}{p{0.22\textwidth}p{0.12\textwidth}p{0.46\textwidth}p{0.14\textwidth}} +\toprule +\textbf{Name} & \textbf{Unit} & \textbf{Description} & \textbf{Default} \\ +\midrule +\endhead +radius & m & Outer radius of sample in (x,z) plane & 0 \\ +\bottomrule +\end{longtable} + +\subsection*{Links} +\begin{itemize} + \item \href{run:/home/willend/willend-McCode/mcstas-comps/misc/Legacy_circle.comp}{Source code} for \texttt{Legacy\_circle.comp}. + \item Geomview and Object File Format (OFF) \textless{}http|://www.geomview.org\textgreater{} + \item Powercrust/qhull \textless{}http://www.cs.utexas.edu/users/amenta/powercrust\textgreater{} +\end{itemize} +\IfFileExists{Legacy_circle_static.tex}{\input{Legacy_circle_static.tex}}{} \ No newline at end of file diff --git a/docs/manuals/mcstas/misc/MCPL_input.tex b/docs/manuals/mcstas/misc/MCPL_input.tex new file mode 100644 index 000000000..ae22ec4bc --- /dev/null +++ b/docs/manuals/mcstas/misc/MCPL_input.tex @@ -0,0 +1,50 @@ +\section{The \texttt{MCPL\_input} McStas Component} +Source-like component that reads neutron state parameters from an mcpl-file. + +\subsection*{Identification} +\begin{itemize} + \item \textbf{Site:} + \item \textbf{Author:} Erik B Knudsen + \item \textbf{Origin:} DTU Physics + \item \textbf{Date:} Mar 2016 +\end{itemize} + +\subsection*{Description} +\begin{lstlisting} +Source-like component that reads neutron state parameters from a binary mcpl-file. + +MCPL is short for Monte Carlo Particle List, and is a new format for sharing events +between e.g. MCNP(X), Geant4 and McStas. + +When used with MPI, the --ncount given on the commandline is overwritten by +#MPI nodes x #events in the file. + +Example: MCPL_input(filename=voutput,verbose=1,repeat_count=1,v_smear=0.1,pos_smear=0.001,dir_smear=0.01) +\end{lstlisting} + +\subsection*{Input parameters} +Parameters in \textbf{boldface} are required; the others are optional. + +\begin{longtable}{p{0.22\textwidth}p{0.12\textwidth}p{0.46\textwidth}p{0.14\textwidth}} +\toprule +\textbf{Name} & \textbf{Unit} & \textbf{Description} & \textbf{Default} \\ +\midrule +\endhead +filename & str & Name of neutron mcpl file to read & 0 \\ +polarisationuse & & If !=0 read polarisation vectors from file & 1 \\ +verbose & & Print debugging information for first 10 particles read & 1 \\ +Emin & meV & Lower energy bound. Particles found in the MCPL-file below the limit are skipped & 0 \\ +Emax & meV & Upper energy bound. Particles found in the MCPL-file above the limit are skipped & FLT\_MAX \\ +repeat\_count & 1 & Repeat contents of the MCPL file this number of times. NB: When running MPI, repeating is implicit and is taken into account by integer division. MUST be combined with \_smear options! & 1 \\ +v\_smear & 1 & When repeating events, make a Gaussian MC choice within v\_smear*V around particle velocity V & 0 \\ +pos\_smear & m & When repeating events, make a flat MC choice of position within pos\_smear around particle starting position & 0 \\ +dir\_smear & deg & When repeating events, make a Gaussian MC choice of direction within dir\_smear around particle direction & 0 \\ +preload & & Load particles during INITIALIZE. On GPU preload is forced & 0 \\ +\bottomrule +\end{longtable} + +\subsection*{Links} +\begin{itemize} + \item \href{run:/home/willend/willend-McCode/mcstas-comps/misc/MCPL_input.comp}{Source code} for \texttt{MCPL\_input.comp}. +\end{itemize} +\IfFileExists{MCPL_input_static.tex}{\input{MCPL_input_static.tex}}{} \ No newline at end of file diff --git a/docs/manuals/mcstas/misc/MCPL_input_once.tex b/docs/manuals/mcstas/misc/MCPL_input_once.tex new file mode 100644 index 000000000..956f9bb1f --- /dev/null +++ b/docs/manuals/mcstas/misc/MCPL_input_once.tex @@ -0,0 +1,50 @@ +\section{The \texttt{MCPL\_input\_once} McStas Component} +Source-like component that reads neutron state parameters from a MCPL-file one time. + +\subsection*{Identification} +\begin{itemize} + \item \textbf{Site:} + \item \textbf{Author:} Gregory S Tucker + \item \textbf{Origin:} European Spallation Source ERIC + \item \textbf{Date:} Sep 2024 +\end{itemize} + +\subsection*{Description} +\begin{lstlisting} +Source-like component that reads neutron state parameters from a MCPL-file one time. + +MCPL is short for Monte Carlo Particle List, and is a format for sharing events +between e.g. MCNP(X), Geant4 and McStas. + +When used with MPI, the file contents are shared between workers with each accessing +approximately (#events in the file) / (#MPI nodes) + +%BUGS +\end{lstlisting} + +\subsection*{Input parameters} +Parameters in \textbf{boldface} are required; the others are optional. + +\begin{longtable}{p{0.22\textwidth}p{0.12\textwidth}p{0.46\textwidth}p{0.14\textwidth}} +\toprule +\textbf{Name} & \textbf{Unit} & \textbf{Description} & \textbf{Default} \\ +\midrule +\endhead +filename & str & Name of neutron mcpl file to read. & 0 \\ +polarisationuse & & If !=0 read polarisation vectors from file. & 1 \\ +Emin & meV & Lower energy bound. Particles found in the MCPL-file below the limit are skipped. & 0 \\ +Emax & meV & Upper energy bound. Particles found in the MCPL-file above the limit are skipped. & FLT\_MAX \\ +v\_smear & 1 & Relative fraction for randomness in replayed particle velocity v *= (1 + v\_smear * randpm1()) & 0 \\ +pos\_smear & m & Maximum extent of random position for replayed particles & 0 \\ +dir\_smear & deg & Maximum deviation of random direction for replayed particles & 0 \\ +always\_smear & & Finite values force particle property smearing for all particles & 0 \\ +preload & & Load particles during INITIALIZE. On GPU preload is forced. & 0 \\ +verbose & & Finite values may cause extra output (at some point in the future) & 0 \\ +\bottomrule +\end{longtable} + +\subsection*{Links} +\begin{itemize} + \item \href{run:/home/willend/willend-McCode/mcstas-comps/misc/MCPL_input_once.comp}{Source code} for \texttt{MCPL\_input\_once.comp}. +\end{itemize} +\IfFileExists{MCPL_input_once_static.tex}{\input{MCPL_input_once_static.tex}}{} \ No newline at end of file diff --git a/docs/manuals/mcstas/misc/MCPL_output.tex b/docs/manuals/mcstas/misc/MCPL_output.tex new file mode 100644 index 000000000..ba3451675 --- /dev/null +++ b/docs/manuals/mcstas/misc/MCPL_output.tex @@ -0,0 +1,59 @@ +\section{The \texttt{MCPL\_output} McStas Component} +Detector-like component that writes neutron state parameters into an mcpl-format +binary, virtual-source neutron file. + +\subsection*{Identification} +\begin{itemize} + \item \textbf{Site:} + \item \textbf{Author:} Erik B Knudsen + \item \textbf{Origin:} DTU Physics + \item \textbf{Date:} Mar 2016 +\end{itemize} + +\subsection*{Description} +\begin{lstlisting} +Detector-like component that writes neutron state parameters into an mcpl-format +binary, virtual-source neutron file. + +MCPL is short for Monte Carlo Particle List, and is a new format for sharing events +between e.g. MCNP(X), Geant4 and McStas. + +When used with MPI, the component will output #MPI nodes individual MCPL files that +can be merged using the mcpltool. + +MCPL_output allows a few flags to tweak the output files: +1. If use_polarisation is unset (default) the polarisation vector will not be stored (saving space) +2. If doubleprec is unset (default) data will be stored as 32 bit floating points, effectively cutting the output file size in half. +3. Extra information may be attached to each ray in the form of a userflag, a user-defined variable wich is packed into 32 bits. If +the user variable does not fit in 32 bits the value will be truncated and likely garbage. If more than one variable is to be attached to +each neutron this must be packed into the 32 bits. + +These features are set this way to keep file sizes as manageable as possible. + +Example: MCPL_output( filename="voutput", verbose=1, userflag="flag", userflagcomment="Neutron Id" ) +\end{lstlisting} + +\subsection*{Input parameters} +Parameters in \textbf{boldface} are required; the others are optional. + +\begin{longtable}{p{0.22\textwidth}p{0.12\textwidth}p{0.46\textwidth}p{0.14\textwidth}} +\toprule +\textbf{Name} & \textbf{Unit} & \textbf{Description} & \textbf{Default} \\ +\midrule +\endhead +filename & str & Name of neutron file to write. If not given, the component name will be used. & 0 \\ +weight\_mode & 1 & weight\_mode=1: record initial ray count in MCPL stat:sum entry and rescale particle weights. weight\_mode=2: classical (deprecated) mode of outputting particle weights directly. & -1 \\ +verbose & 1 & If 1) Print summary information for created MCPL file. 2) Also print summary of first 10 particles information stored in the MCPL file. \textgreater{}2) Also print information for first 10 particles as they are being stored by McStas & 0 \\ +polarisationuse & 1 & Enable storing the polarisation state of the neutron. & 0 \\ +doubleprec & 1 & Use double precision storage & 0 \\ +userflag & 1 & Extra variable to attach to each neutron. The value of this variable will be packed into a 32 bit integer. & "" \\ +userflagcomment & str & String variable to describe the userflag. If this string is empty (the default) no userflags will be stored. & "" \\ +buffermax & 1 & Maximal number of events to save ( \textless{}= MAXINT), GPU/OpenACC only & 0 \\ +\bottomrule +\end{longtable} + +\subsection*{Links} +\begin{itemize} + \item \href{run:/home/willend/willend-McCode/mcstas-comps/misc/MCPL_output.comp}{Source code} for \texttt{MCPL\_output.comp}. +\end{itemize} +\IfFileExists{MCPL_output_static.tex}{\input{MCPL_output_static.tex}}{} \ No newline at end of file diff --git a/docs/manuals/mcstas/misc/MCPL_output_noacc.tex b/docs/manuals/mcstas/misc/MCPL_output_noacc.tex new file mode 100644 index 000000000..36747c51b --- /dev/null +++ b/docs/manuals/mcstas/misc/MCPL_output_noacc.tex @@ -0,0 +1,59 @@ +\section{The \texttt{MCPL\_output\_noacc} McStas Component} +Detector-like component that writes neutron state parameters into an mcpl-format +binary, virtual-source neutron file. + +\subsection*{Identification} +\begin{itemize} + \item \textbf{Site:} + \item \textbf{Author:} Erik B Knudsen + \item \textbf{Origin:} DTU Physics + \item \textbf{Date:} Mar 2016 +\end{itemize} + +\subsection*{Description} +\begin{lstlisting} +Detector-like component that writes neutron state parameters into an mcpl-format +binary, virtual-source neutron file. + +MCPL is short for Monte Carlo Particle List, and is a new format for sharing events +between e.g. MCNP(X), Geant4 and McStas. + +When used with MPI, the component will output #MPI nodes individual MCPL files that +can be merged using the mcpltool. + +MCPL_output allows a few flags to tweak the output files: +1. If use_polarisation is unset (default) the polarisation vector will not be stored (saving space) +2. If doubleprec is unset (default) data will be stored as 32 bit floating points, effectively cutting the output file size in half. +3. Extra information may be attached to each ray in the form of a userflag, a user-defined variable wich is packed into 32 bits. If +the user variable does not fit in 32 bits the value will be truncated and likely garbage. If more than one variable is to be attached to +each neutron this must be packed into the 32 bits. + +These features are set this way to keep file sizes as manageable as possible. + +%BUGS +\end{lstlisting} + +\subsection*{Input parameters} +Parameters in \textbf{boldface} are required; the others are optional. + +\begin{longtable}{p{0.22\textwidth}p{0.12\textwidth}p{0.46\textwidth}p{0.14\textwidth}} +\toprule +\textbf{Name} & \textbf{Unit} & \textbf{Description} & \textbf{Default} \\ +\midrule +\endhead +filename & str & Name of neutron file to write. If not given, the component name will be used. & 0 \\ +weight\_mode & 1 & weight\_mode=1: record initial ray count in MCPL stat:sum entry and rescale particle weights. weight\_mode=2: classical (deprecated) mode of outputting particle weights directly. & -1 \\ +verbose & 1 & If 1) Print summary information for created MCPL file. 2) Also print summary of first 10 particles information stored in the MCPL file. \textgreater{}2) Also print information for first 10 particles as they are being stored by McStas & 0 \\ +polarisationuse & 1 & Enable storing the polarisation state of the neutron. & 0 \\ +doubleprec & 1 & Use double precision storage & 0 \\ +userflag & 1 & Extra variable to attach to each neutron. The value of this variable will be packed into a 32 bit integer. & "" \\ +userflagcomment & str & String variable to describe the userflag. If this string is empty (the default) no userflags will be stored. & "" \\ +buffermax & 1 & Maximal number of events to save ( \textless{}= MAXINT), GPU/OpenACC only & 0 \\ +\bottomrule +\end{longtable} + +\subsection*{Links} +\begin{itemize} + \item \href{run:/home/willend/willend-McCode/mcstas-comps/misc/MCPL_output_noacc.comp}{Source code} for \texttt{MCPL\_output\_noacc.comp}. +\end{itemize} +\IfFileExists{MCPL_output_noacc_static.tex}{\input{MCPL_output_noacc_static.tex}}{} \ No newline at end of file diff --git a/docs/manuals/mcstas/misc/Progress_bar.tex b/docs/manuals/mcstas/misc/Progress_bar.tex new file mode 100644 index 000000000..a61c4d44b --- /dev/null +++ b/docs/manuals/mcstas/misc/Progress_bar.tex @@ -0,0 +1,43 @@ +\section{The \texttt{Progress\_bar} McStas Component} +A simulation progress bar + +\subsection*{Identification} +\begin{itemize} + \item \textbf{Site:} + \item \textbf{Author:} Emmanuel Farhi + \item \textbf{Origin:} ILL + \item \textbf{Date:} 2002 +\end{itemize} + +\subsection*{Description} +\begin{lstlisting} +An indicator of the progress of the simulation, monitoring +the Init, Trace with the achieved percentage, and the Finally section. +Intermediate savings (e.g. triggered by USR2 signal) are also shown. +This component should be positioned at the very begining of the instrument +The profile option will save the intensity and number of events for each +component It may be used to evaluate the simulation efficiency. + +Example: Progress_bar(percent=10,flag_save=1) AT (0,0,0) +\end{lstlisting} + +\subsection*{Input parameters} +Parameters in \textbf{boldface} are required; the others are optional. + +\begin{longtable}{p{0.22\textwidth}p{0.12\textwidth}p{0.46\textwidth}p{0.14\textwidth}} +\toprule +\textbf{Name} & \textbf{Unit} & \textbf{Description} & \textbf{Default} \\ +\midrule +\endhead +profile & str & file name to save the simulation profile if set to "", it is set to the name of the instrument. & "NULL" \\ +percent & 0-100 & percentage interval between updates. Default is 10\%. & 10 \\ +flag\_save & 0|1 & flag to enable intermediate saving for all monitors & 0 \\ +minutes & min & time in minutes between updates (Overrides percent flag). & 0 \\ +\bottomrule +\end{longtable} + +\subsection*{Links} +\begin{itemize} + \item \href{run:/home/willend/willend-McCode/mcstas-comps/misc/Progress_bar.comp}{Source code} for \texttt{Progress\_bar.comp}. +\end{itemize} +\IfFileExists{Progress_bar_static.tex}{\input{Progress_bar_static.tex}}{} \ No newline at end of file diff --git a/docs/manuals/mcstas/misc/Shape.tex b/docs/manuals/mcstas/misc/Shape.tex new file mode 100644 index 000000000..7a4eeb8b0 --- /dev/null +++ b/docs/manuals/mcstas/misc/Shape.tex @@ -0,0 +1,66 @@ +\section{The \texttt{Shape} McStas Component} +A geometric shape without effect on neutron, for instrument display purpose. + +\subsection*{Identification} +\begin{itemize} + \item \textbf{Site:} + \item \textbf{Author:} E. Farhi + \item \textbf{Origin:} ILL + \item \textbf{Date:} June 23rd 2009 +\end{itemize} + +\subsection*{Description} +\begin{lstlisting} +An inactive geometrical shape, for drawing purposes only. +It does not propagate neutron, nor interact. +Shape: +Geometric shape may be a cylinder, a sphere, a box or any other shape +box/plate: xwidth x yheight x zdepth (thickness=0) +hollow box/plate:xwidth x yheight x zdepth and thickness>0 +cylinder: radius x yheight (thickness=0) +hollow cylinder: radius x yheight and thickness>0 +sphere: radius (yheight=0 thickness=0) +hollow sphere: radius and thickness>0 (yheight=0) +any shape: geometry=OFF file + +The complex geometry option handles any closed non-convex polyhedra. +It computes the intersection points of the neutron ray with the object +transparently, so that it can be used like a regular sample object. +It supports the OFF and NOFF file format but not COFF (colored faces). +Such files may be generated from XYZ data using qhull/powercrust, and +viewed with geomview +The default size of the object depends of the OFF file data, but its +bounding box may be resized using xwidth,yheight and zdepth. + +Example: Shape(radius=0.05, yheight=0.1) +Shape(geometry="socket.off") +\end{lstlisting} + +\subsection*{Input parameters} +Parameters in \textbf{boldface} are required; the others are optional. + +\begin{longtable}{p{0.22\textwidth}p{0.12\textwidth}p{0.46\textwidth}p{0.14\textwidth}} +\toprule +\textbf{Name} & \textbf{Unit} & \textbf{Description} & \textbf{Default} \\ +\midrule +\endhead +geometry & str & Name of an Object File Format (OFF) file for complex geometry. The OFF file may be generated from XYZ coordinates using qhull/powercrust & 0 \\ +radius & m & Outer radius of sample in (x,z) plane & 0 \\ +xwidth & m & Horiz. dimension of sample (bounding box if off file), as a width & 0 \\ +yheight & m & Vert. dimension of sample (bounding box if off file), as a height. A sphere shape is used when 0 and radius is set & 0 \\ +zdepth & m & Depth of sample (bounding box if off file) & 0 \\ +thickness & m & Thickness of hollow sample & 0 \\ +nx & 1 & x-comp of orientation vector & 0 \\ +ny & 1 & y-comp of orientation vector & 1 \\ +nz & 1 & z-comp of orientation vector & 0 \\ +center & 1 & Flag to determine if OFF object is centered on its centre of mass. & 1 \\ +\bottomrule +\end{longtable} + +\subsection*{Links} +\begin{itemize} + \item \href{run:/home/willend/willend-McCode/mcstas-comps/misc/Shape.comp}{Source code} for \texttt{Shape.comp}. + \item Geomview and Object File Format (OFF) \textless{}http|://www.geomview.org\textgreater{} + \item Powercrust/qhull \textless{}http://www.cs.utexas.edu/users/amenta/powercrust\textgreater{} +\end{itemize} +\IfFileExists{Shape_static.tex}{\input{Shape_static.tex}}{} \ No newline at end of file diff --git a/docs/manuals/mcstas/misc/Shape_simple.tex b/docs/manuals/mcstas/misc/Shape_simple.tex new file mode 100644 index 000000000..cc3e3d76e --- /dev/null +++ b/docs/manuals/mcstas/misc/Shape_simple.tex @@ -0,0 +1,63 @@ +\section{The \texttt{Shape\_simple} McStas Component} +A geometric shape without effect on neutron, for instrument display purpose. + +\subsection*{Identification} +\begin{itemize} + \item \textbf{Site:} + \item \textbf{Author:} E. Farhi + \item \textbf{Origin:} ILL + \item \textbf{Date:} June 23rd 2009 +\end{itemize} + +\subsection*{Description} +\begin{lstlisting} +An inactive geometrical shape, for drawing purposes only. +It does not propagate neutron, nor interact. +Shape: +Geometric shape may be a cylinder, a sphere, a box or any other shape +box/plate: xwidth x yheight x zdepth (thickness=0) +hollow box/plate:xwidth x yheight x zdepth and thickness>0 +cylinder: radius x yheight (thickness=0) +hollow cylinder: radius x yheight and thickness>0 +sphere: radius (yheight=0 thickness=0) +hollow sphere: radius and thickness>0 (yheight=0) +any shape: geometry=OFF file + +The complex geometry option handles any closed non-convex polyhedra. +It computes the intersection points of the neutron ray with the object +transparently, so that it can be used like a regular sample object. +It supports the OFF and NOFF file format but not COFF (colored faces). +Such files may be generated from XYZ data using qhull/powercrust, and +viewed with geomview +The default size of the object depends of the OFF file data, but its +bounding box may be resized using xwidth,yheight and zdepth. + +Example: Shape(radius=0.05, yheight=0.1) +Shape(geometry="socket.off") +\end{lstlisting} + +\subsection*{Input parameters} +Parameters in \textbf{boldface} are required; the others are optional. + +\begin{longtable}{p{0.22\textwidth}p{0.12\textwidth}p{0.46\textwidth}p{0.14\textwidth}} +\toprule +\textbf{Name} & \textbf{Unit} & \textbf{Description} & \textbf{Default} \\ +\midrule +\endhead +geometry & str & Name of an Object File Format (OFF) file for complex geometry. The OFF file may be generated from XYZ coordinates using qhull/powercrust & 0 \\ +radius & m & Outer radius of sample in (x,z) plane & 0 \\ +xwidth & m & Horiz. dimension of sample (bounding box if off file), as a width & 0 \\ +yheight & m & Vert. dimension of sample (bounding box if off file), as a height. A sphere shape is used when 0 and radius is set & 0 \\ +zdepth & m & Depth of sample (bounding box if off file) & 0 \\ +thickness & m & Thickness of hollow sample & 0 \\ +center & 1 & Flag to determine if OFF object is centered on its centre of mass. & 1 \\ +\bottomrule +\end{longtable} + +\subsection*{Links} +\begin{itemize} + \item \href{run:/home/willend/willend-McCode/mcstas-comps/misc/Shape_simple.comp}{Source code} for \texttt{Shape\_simple.comp}. + \item Geomview and Object File Format (OFF) \textless{}http|://www.geomview.org\textgreater{} + \item Powercrust/qhull \textless{}http://www.cs.utexas.edu/users/amenta/powercrust\textgreater{} +\end{itemize} +\IfFileExists{Shape_simple_static.tex}{\input{Shape_simple_static.tex}}{} \ No newline at end of file diff --git a/docs/manuals/mcstas/monitors/Brilliance_monitor.tex b/docs/manuals/mcstas/monitors/Brilliance_monitor.tex new file mode 100644 index 000000000..4bfc1a9af --- /dev/null +++ b/docs/manuals/mcstas/monitors/Brilliance_monitor.tex @@ -0,0 +1,70 @@ +\section{The \texttt{Brilliance\_monitor} McStas Component} +Special "Brilliance" monitor. + +\subsection*{Identification} +\begin{itemize} + \item \textbf{Site:} + \item \textbf{Author:} Peter Willendrup, derived from TOF\_lambda\_monitor.comp + \item \textbf{Origin:} DTU Physics + \item \textbf{Date:} May 23, 2012 +\end{itemize} + +\subsection*{Description} +\begin{lstlisting} +If used in the right setting, will output "instantaneous" and "mean" brilliances in units of Neutrons/cm^2/ster/AA/s. Conditions for proper units: +
      +
    • Use a with a source of area 1x1cm +
    • The source must illuminate/focus to an area of 1x1cm a 1m distance +
    • Parametrise the Brilliance_monitor with the frequency of the source +
    • To not change the source TOF distribution, place the Brilliance monitor close to the source! +
    + +with a source of area 1x1cm illuminating/focusing to an area of 1x1cm a 1m distance, this monitor will output "instantaneous" and "mean" brilliances in units of Neutrons/cm^2/ster/AA/s + +Here is an example of the use of the component. Note how the mentioned Unit conditions are implemented in instrument code. + +COMPONENT Source = ESS_moderator_long( +l_low = lambdamin, l_high = lambdamax, dist = 1, xw = 0.01, yh = 0.01, +freq = 14, T=50, tau=287e-6, tau1=0, tau2=20e-6, +n=20, n2=5, d=0.00286, chi2=0.9, I0=6.9e11, I2=27.6e10, +branch1=0, branch2=0.5, twopulses=0, size=0.01) +AT (0, 0, 0) RELATIVE Origin + +COMPONENT BRIL = Brilliance_monitor(nlam=196,nt=401,filename="bril.sim", +t_0=0,t_1=4000,lambda_0=lambdamin, +lambda_1=lambdamax, Freq=14) +AT (0,0,0.000001) RELATIVE Source +\end{lstlisting} + +\subsection*{Input parameters} +Parameters in \textbf{boldface} are required; the others are optional. + +\begin{longtable}{p{0.22\textwidth}p{0.12\textwidth}p{0.46\textwidth}p{0.14\textwidth}} +\toprule +\textbf{Name} & \textbf{Unit} & \textbf{Description} & \textbf{Default} \\ +\midrule +\endhead +nlam & 1 & Number of bins in wavelength & 101 \\ +nt & 1 & Number of bins in TOF & 1001 \\ +nowritefile & 1 & If set, monitor will skip writing to disk & 0 \\ +lambda\_0 & AA & Minimum wavelength detected & 0 \\ +lambda\_1 & AA & Maximum wavelength detected & 20 \\ +restore\_neutron & 1 & If set, the monitor does not influence the neutron state & 0 \\ +\textbf{Freq} & Hz & Source frequency. Use freq=1 for reactor source & \\ +tofcuts & 1 & Flag to generate TOF-distributions as function of wavelength & 0 \\ +toflambda & 1 & Flag to generate TOF-lambda distribution output & 0 \\ +xwidth & m & width of monitor & 0.01 \\ +yheight & m & height of monitor & 0.01 \\ +source\_dist & m & Distance from source. Beware when transporting through neutron optics! & 1 \\ +filename & string & Defines filenames for the detector images. Stored as:\textless{}br\textgreater{}Peak\_\<filename\> and Mean\_\<filename\> & 0 \\ +t\_0 & us & Minimum time & 0 \\ +t\_1 & us & Maximum time & 20000 \\ +srcarea & cm\textasciicircum{}2 & Source area & 1 \\ +\bottomrule +\end{longtable} + +\subsection*{Links} +\begin{itemize} + \item \href{run:/home/willend/willend-McCode/mcstas-comps/monitors/Brilliance_monitor.comp}{Source code} for \texttt{Brilliance\_monitor.comp}. +\end{itemize} +\IfFileExists{Brilliance_monitor_static.tex}{\input{Brilliance_monitor_static.tex}}{} \ No newline at end of file diff --git a/docs/manuals/mcstas/monitors/Cyl_monitor.tex b/docs/manuals/mcstas/monitors/Cyl_monitor.tex new file mode 100644 index 000000000..72bf7fdd4 --- /dev/null +++ b/docs/manuals/mcstas/monitors/Cyl_monitor.tex @@ -0,0 +1,44 @@ +\section{The \texttt{Cyl\_monitor} McStas Component} +A 2D Position-sensitive monitor. The shape is cylindrical with +the axis vertical. The monitor covers the whole cylinder (360 degrees). + +\subsection*{Identification} +\begin{itemize} + \item \textbf{Site:} + \item \textbf{Author:} Kim Lefmann + \item \textbf{Origin:} Risoe + \item \textbf{Date:} October 26, 2000 +\end{itemize} + +\subsection*{Description} +\begin{lstlisting} +An (n times m) pixel PSD monitor with cylinder shape, +vertical axis, centered at (0,0,0). + +Example: PSDcyl_monitor(nr=20, ny=20, filename="Output.cyl", yheight=0.2, radius=0.1) +\end{lstlisting} + +\subsection*{Input parameters} +Parameters in \textbf{boldface} are required; the others are optional. + +\begin{longtable}{p{0.22\textwidth}p{0.12\textwidth}p{0.46\textwidth}p{0.14\textwidth}} +\toprule +\textbf{Name} & \textbf{Unit} & \textbf{Description} & \textbf{Default} \\ +\midrule +\endhead +nr & 1 & Number of pixel (radial) columns & 20 \\ +filename & string & Name of file in which to store the detector image & 0 \\ +yheight & m & Height of detector & 10 \\ +radius & m & Radius of detector & 1 \\ +restore\_neutron & 1 & If set, the monitor does not influence the neutron state & 0 \\ +thmin & deg & Minimum angle covered/measured & -180 \\ +thmax & deg & Maximum angle covered/measured & 180 \\ +nowritefile & 1 & If set, monitor will skip writing to disk & 0 \\ +\bottomrule +\end{longtable} + +\subsection*{Links} +\begin{itemize} + \item \href{run:/home/willend/willend-McCode/mcstas-comps/monitors/Cyl_monitor.comp}{Source code} for \texttt{Cyl\_monitor.comp}. +\end{itemize} +\IfFileExists{Cyl_monitor_static.tex}{\input{Cyl_monitor_static.tex}}{} \ No newline at end of file diff --git a/docs/manuals/mcstas/monitors/Cyl_monitor_PSD.tex b/docs/manuals/mcstas/monitors/Cyl_monitor_PSD.tex new file mode 100644 index 000000000..d12ebd952 --- /dev/null +++ b/docs/manuals/mcstas/monitors/Cyl_monitor_PSD.tex @@ -0,0 +1,45 @@ +\section{The \texttt{Cyl\_monitor\_PSD} McStas Component} +A 2D Position-sensitive monitor. The shape is cylindrical with +the axis vertical. The monitor covers the whole cylinder (360 degrees). + +\subsection*{Identification} +\begin{itemize} + \item \textbf{Site:} + \item \textbf{Author:} Kim Lefmann + \item \textbf{Origin:} Risoe + \item \textbf{Date:} October 26, 2000 +\end{itemize} + +\subsection*{Description} +\begin{lstlisting} +An (n times m) pixel PSD monitor with cylinder shape, +vertical axis, centered at (0,0,0). + +Example: PSDcyl_monitor(nr=20, ny=20, filename="Output.cyl", yheight=0.2, radius=0.1) +\end{lstlisting} + +\subsection*{Input parameters} +Parameters in \textbf{boldface} are required; the others are optional. + +\begin{longtable}{p{0.22\textwidth}p{0.12\textwidth}p{0.46\textwidth}p{0.14\textwidth}} +\toprule +\textbf{Name} & \textbf{Unit} & \textbf{Description} & \textbf{Default} \\ +\midrule +\endhead +nr & 1 & Number of pixel (radial) columns & 20 \\ +filename & string & Name of file in which to store the detector image & 0 \\ +yheight & m & Height of detector & 10 \\ +radius & m & Radius of detector & 1 \\ +restore\_neutron & 1 & If set, the monitor does not influence the neutron state & 0 \\ +thmin & deg & Minimum angle covered/measured & -180 \\ +thmax & deg & Maximum angle covered/measured & 180 \\ +ny & 1 & Number of pixel rows & 100 \\ +nowritefile & 1 & If set, monitor will skip writing to disk & 0 \\ +\bottomrule +\end{longtable} + +\subsection*{Links} +\begin{itemize} + \item \href{run:/home/willend/willend-McCode/mcstas-comps/monitors/Cyl_monitor_PSD.comp}{Source code} for \texttt{Cyl\_monitor\_PSD.comp}. +\end{itemize} +\IfFileExists{Cyl_monitor_PSD_static.tex}{\input{Cyl_monitor_PSD_static.tex}}{} \ No newline at end of file diff --git a/docs/manuals/mcstas/monitors/Cyl_monitor_TOF.tex b/docs/manuals/mcstas/monitors/Cyl_monitor_TOF.tex new file mode 100644 index 000000000..887e4fe32 --- /dev/null +++ b/docs/manuals/mcstas/monitors/Cyl_monitor_TOF.tex @@ -0,0 +1,47 @@ +\section{The \texttt{Cyl\_monitor\_TOF} McStas Component} +A 2D Position-sensitive monitor. The shape is cylindrical with +the axis vertical. The monitor covers the whole cylinder (360 degrees). + +\subsection*{Identification} +\begin{itemize} + \item \textbf{Site:} + \item \textbf{Author:} Kim Lefmann + \item \textbf{Origin:} Risoe + \item \textbf{Date:} October 26, 2000 +\end{itemize} + +\subsection*{Description} +\begin{lstlisting} +An (n times m) pixel PSD monitor with cylinder shape, +vertical axis, centered at (0,0,0). + +Example: PSDcyl_monitor(nr=20, ny=20, filename="Output.cyl", yheight=0.2, radius=0.1) +\end{lstlisting} + +\subsection*{Input parameters} +Parameters in \textbf{boldface} are required; the others are optional. + +\begin{longtable}{p{0.22\textwidth}p{0.12\textwidth}p{0.46\textwidth}p{0.14\textwidth}} +\toprule +\textbf{Name} & \textbf{Unit} & \textbf{Description} & \textbf{Default} \\ +\midrule +\endhead +nr & 1 & Number of pixel (radial) columns & 20 \\ +filename & string & Name of file in which to store the detector image & 0 \\ +yheight & m & Height of detector & 10 \\ +radius & m & Radius of detector & 1 \\ +restore\_neutron & 1 & If set, the monitor does not influence the neutron state & 0 \\ +thmin & deg & Minimum angle covered/measured & -180 \\ +thmax & deg & Maximum angle covered/measured & 180 \\ +nt & 1 & Number of t-bins & 100 \\ +\textbf{tmin} & s & Minimum time measured & \\ +\textbf{tmax} & s & Maximum time measured & \\ +nowritefile & 1 & If set, monitor will skip writing to disk & 0 \\ +\bottomrule +\end{longtable} + +\subsection*{Links} +\begin{itemize} + \item \href{run:/home/willend/willend-McCode/mcstas-comps/monitors/Cyl_monitor_TOF.comp}{Source code} for \texttt{Cyl\_monitor\_TOF.comp}. +\end{itemize} +\IfFileExists{Cyl_monitor_TOF_static.tex}{\input{Cyl_monitor_TOF_static.tex}}{} \ No newline at end of file diff --git a/docs/manuals/mcstas/monitors/Div1D_monitor.tex b/docs/manuals/mcstas/monitors/Div1D_monitor.tex new file mode 100644 index 000000000..30d0a5ca6 --- /dev/null +++ b/docs/manuals/mcstas/monitors/Div1D_monitor.tex @@ -0,0 +1,47 @@ +\section{The \texttt{Div1D\_monitor} McStas Component} +A 1D divergence sensitive monitor. + +\subsection*{Identification} +\begin{itemize} + \item \textbf{Site:} + \item \textbf{Author:} KL, + \item \textbf{Origin:} Risoe + \item \textbf{Date:} Nov. 11, 1998 +\end{itemize} + +\subsection*{Description} +\begin{lstlisting} +A divergence sensitive monitor. The counts are distributed in +ndiv pixels along either the horizontal axis x (default) or the vertical y. + +Example: Div1D_monitor(xmin=-0.1, xmax=0.1, ymin=-0.1, ymax=0.1, ndiv=20, filename="Output.hd", maxdiv=2) +\end{lstlisting} + +\subsection*{Input parameters} +Parameters in \textbf{boldface} are required; the others are optional. + +\begin{longtable}{p{0.22\textwidth}p{0.12\textwidth}p{0.46\textwidth}p{0.14\textwidth}} +\toprule +\textbf{Name} & \textbf{Unit} & \textbf{Description} & \textbf{Default} \\ +\midrule +\endhead +ndiv & 1 & Number of pixel rows & 20 \\ +filename & str & Name of file in which to store the detector image & 0 \\ +xmin & m & Lower x bound of detector opening & -0.05 \\ +xmax & m & Upper x bound of detector opening & 0.05 \\ +ymin & m & Lower y bound of detector opening & -0.05 \\ +ymax & m & Upper y bound of detector opening & 0.05 \\ +xwidth & m & Width of detector. Overrides xmin,xmax. & 0 \\ +yheight & m & Height of detector. Overrides ymin,ymax. & 0 \\ +maxdiv & deg & Maximal divergence detected & 2 \\ +restore\_neutron & 1 & If set, the monitor does not influence the neutron state & 0 \\ +nowritefile & 1 & If set, monitor will skip writing to disk & 0 \\ +vertical & 1 & If set, measure vertical divergence instead of horizontal. & 0 \\ +\bottomrule +\end{longtable} + +\subsection*{Links} +\begin{itemize} + \item \href{run:/home/willend/willend-McCode/mcstas-comps/monitors/Div1D_monitor.comp}{Source code} for \texttt{Div1D\_monitor.comp}. +\end{itemize} +\IfFileExists{Div1D_monitor_static.tex}{\input{Div1D_monitor_static.tex}}{} \ No newline at end of file diff --git a/docs/manuals/mcstas/monitors/DivLambda_monitor.tex b/docs/manuals/mcstas/monitors/DivLambda_monitor.tex new file mode 100644 index 000000000..e26018bc1 --- /dev/null +++ b/docs/manuals/mcstas/monitors/DivLambda_monitor.tex @@ -0,0 +1,54 @@ +\section{The \texttt{DivLambda\_monitor} McStas Component} +Divergence/wavelength monitor. + +\subsection*{Identification} +\begin{itemize} + \item \textbf{Site:} + \item \textbf{Author:} Kristian Nielsen + \item \textbf{Origin:} Risoe + \item \textbf{Date:} 1999 +\end{itemize} + +\subsection*{Description} +\begin{lstlisting} +2D detector for intensity as a function of both horizontal divergence +and wavelength. + +Example: DivLambda_monitor(nL=20, nh=20, filename="Output.div", +xmin=-0.1, xmax=0.1, ymin=-0.1, ymax=0.1, +maxdiv_h=2, Lmin=2, Lmax=10) +\end{lstlisting} + +\subsection*{Input parameters} +Parameters in \textbf{boldface} are required; the others are optional. + +\begin{longtable}{p{0.22\textwidth}p{0.12\textwidth}p{0.46\textwidth}p{0.14\textwidth}} +\toprule +\textbf{Name} & \textbf{Unit} & \textbf{Description} & \textbf{Default} \\ +\midrule +\endhead +nL & 1 & Number of bins in wavelength & 20 \\ +nh & 1 & Number of bins in divergence & 20 \\ +nowritefile & 1 & If set, monitor will skip writing to disk & 0 \\ +filename & string & Name of file in which to store the detector image & 0 \\ +xmin & m & Lower x bound of detector opening & -0.05 \\ +xmax & m & Upper x bound of detector opening & 0.05 \\ +ymin & m & Lower y bound of detector opening & -0.05 \\ +ymax & m & Upper y bound of detector opening & 0.05 \\ +xwidth & m & Width of detector. Overrides xmin,xmax. & 0 \\ +yheight & m & Height of detector. Overrides ymin,ymax. & 0 \\ +maxdiv\_h & degrees & Maximal horizontal divergence detected & 2 \\ +\textbf{Lmin} & AA & Minimum wavelength detected & \\ +\textbf{Lmax} & AA & Maximum wavelength detected & \\ +restore\_neutron & 1 & If set, the monitor does not influence the neutron state & 0 \\ +nx & 1 & & 0 \\ +ny & 1 & Vector definition of "forward" direction wrt. divergence, to be used e.g. when the monitor is rotated into the horizontal plane. & 0 \\ +nz & 1 & & 1 \\ +\bottomrule +\end{longtable} + +\subsection*{Links} +\begin{itemize} + \item \href{run:/home/willend/willend-McCode/mcstas-comps/monitors/DivLambda_monitor.comp}{Source code} for \texttt{DivLambda\_monitor.comp}. +\end{itemize} +\IfFileExists{DivLambda_monitor_static.tex}{\input{DivLambda_monitor_static.tex}}{} \ No newline at end of file diff --git a/docs/manuals/mcstas/monitors/DivPos_monitor.tex b/docs/manuals/mcstas/monitors/DivPos_monitor.tex new file mode 100644 index 000000000..5ccabee52 --- /dev/null +++ b/docs/manuals/mcstas/monitors/DivPos_monitor.tex @@ -0,0 +1,54 @@ +\section{The \texttt{DivPos\_monitor} McStas Component} +Divergence/position monitor (acceptance diagram). + +\subsection*{Identification} +\begin{itemize} + \item \textbf{Site:} + \item \textbf{Author:} Kristian Nielsen + \item \textbf{Origin:} Risoe + \item \textbf{Date:} 1999 +\end{itemize} + +\subsection*{Description} +\begin{lstlisting} +2D detector for intensity as a function of position +and divergence, either horizontally or vertically (depending on the flag vertical). +This gives information similar to an aceptance diagram used +eg. to investigate beam profiles in neutron guides. + +Example: DivPos_monitor(nh=20, ndiv=20, filename="Output.dip", +xmin=-0.1, xmax=0.1, ymin=-0.1, ymax=0.1, maxdiv_h=2) +\end{lstlisting} + +\subsection*{Input parameters} +Parameters in \textbf{boldface} are required; the others are optional. + +\begin{longtable}{p{0.22\textwidth}p{0.12\textwidth}p{0.46\textwidth}p{0.14\textwidth}} +\toprule +\textbf{Name} & \textbf{Unit} & \textbf{Description} & \textbf{Default} \\ +\midrule +\endhead +nb & 1 & Number of bins in position. & 20 \\ +ndiv & 1 & Number of bins in divergence. & 20 \\ +filename & string & Name of file in which to store the detector image. & 0 \\ +xmin & m & Lower x bound of detector opening & -0.05 \\ +xmax & m & Upper x bound of detector opening & 0.05 \\ +ymin & m & Lower y bound of detector opening & -0.05 \\ +ymax & m & Upper y bound of detector opening & 0.05 \\ +xwidth & m & Width of detector. Overrides xmin,xmax. & 0 \\ +yheight & m & Height of detector. Overrides ymin,ymax. & 0 \\ +maxdiv & degrees & Maximal divergence detected. & 2 \\ +restore\_neutron & 1 & If set, the monitor does not influence the neutron state. & 0 \\ +nx & 1 & & 0 \\ +ny & 1 & Vector definition of "forward" direction wrt. divergence, to be used e.g. when the monitor is rotated into the horizontal plane & 0 \\ +nz & 1 & & 1 \\ +vertical & 1 & Monitor intensity as a function of vertical divergence and position. & 0 \\ +nowritefile & 1 & If set, monitor will skip writing to disk & 0 \\ +\bottomrule +\end{longtable} + +\subsection*{Links} +\begin{itemize} + \item \href{run:/home/willend/willend-McCode/mcstas-comps/monitors/DivPos_monitor.comp}{Source code} for \texttt{DivPos\_monitor.comp}. +\end{itemize} +\IfFileExists{DivPos_monitor_static.tex}{\input{DivPos_monitor_static.tex}}{} \ No newline at end of file diff --git a/docs/manuals/mcstas/monitors/Divergence_monitor.tex b/docs/manuals/mcstas/monitors/Divergence_monitor.tex new file mode 100644 index 000000000..d6b9a1b9f --- /dev/null +++ b/docs/manuals/mcstas/monitors/Divergence_monitor.tex @@ -0,0 +1,53 @@ +\section{The \texttt{Divergence\_monitor} McStas Component} +Horizontal+vertical divergence monitor. + +\subsection*{Identification} +\begin{itemize} + \item \textbf{Site:} + \item \textbf{Author:} Kim Lefmann + \item \textbf{Origin:} Risoe + \item \textbf{Date:} Nov. 11, 1998 +\end{itemize} + +\subsection*{Description} +\begin{lstlisting} +A divergence sensitive monitor. The counts are distributed in +(n times m) pixels. + +Example: Divergence_monitor(nh=20, nv=20, filename="Output.pos", +xmin=-0.1, xmax=0.1, ymin=-0.1, ymax=0.1, +maxdiv_h=2, maxdiv_v=2) +\end{lstlisting} + +\subsection*{Input parameters} +Parameters in \textbf{boldface} are required; the others are optional. + +\begin{longtable}{p{0.22\textwidth}p{0.12\textwidth}p{0.46\textwidth}p{0.14\textwidth}} +\toprule +\textbf{Name} & \textbf{Unit} & \textbf{Description} & \textbf{Default} \\ +\midrule +\endhead +nh & 1 & Number of pixel rows & 20 \\ +nv & 1 & Number of pixel columns & 20 \\ +filename & str & Name of file in which to store the detector image text & 0 \\ +xmin & m & Lower x bound of detector opening & -0.05 \\ +xmax & m & Upper x bound of detector opening & 0.05 \\ +ymin & m & Lower y bound of detector opening & -0.05 \\ +ymax & m & Upper y bound of detector opening & 0.05 \\ +nowritefile & 1 & If set, monitor will skip writing to disk & 0 \\ +xwidth & m & Width of detector. Overrides xmin, xmax & 0 \\ +yheight & m & Height of detector. Overrides ymin, ymax & 0 \\ +maxdiv\_h & degrees & Maximal vertical divergence detected & 2 \\ +maxdiv\_v & degrees & Maximal vertical divergence detected & 2 \\ +restore\_neutron & 1 & If set, the monitor does not influence the neutron state & 0 \\ +nx & 1 & & 0 \\ +ny & 1 & Vector definition of "forward" direction wrt. divergence, to be used e.g. when the monitor is rotated into the horizontal plane & 0 \\ +nz & 1 & & 1 \\ +\bottomrule +\end{longtable} + +\subsection*{Links} +\begin{itemize} + \item \href{run:/home/willend/willend-McCode/mcstas-comps/monitors/Divergence_monitor.comp}{Source code} for \texttt{Divergence\_monitor.comp}. +\end{itemize} +\IfFileExists{Divergence_monitor_static.tex}{\input{Divergence_monitor_static.tex}}{} \ No newline at end of file diff --git a/docs/manuals/mcstas/monitors/EPSD_monitor.tex b/docs/manuals/mcstas/monitors/EPSD_monitor.tex new file mode 100644 index 000000000..aef1da781 --- /dev/null +++ b/docs/manuals/mcstas/monitors/EPSD_monitor.tex @@ -0,0 +1,48 @@ +\section{The \texttt{EPSD\_monitor} McStas Component} +A monitor measuring neutron intensity vs. position, x, and neutron energy, E + +\subsection*{Identification} +\begin{itemize} + \item \textbf{Site:} + \item \textbf{Author:} Kim Lefmann + \item \textbf{Origin:} Risoe + \item \textbf{Date:} 16.4.00 +\end{itemize} + +\subsection*{Description} +\begin{lstlisting} +A monitor measuring neutron intensity vs. position, x, and neutron energy, E + +Example: EPSD_monitor(xmin=-0.1, xmax=0.1, ymin=-0.1, ymax=0.1, +Emin=1, Emax=50, nx=20, nE=20, filename="Output.poe") +\end{lstlisting} + +\subsection*{Input parameters} +Parameters in \textbf{boldface} are required; the others are optional. + +\begin{longtable}{p{0.22\textwidth}p{0.12\textwidth}p{0.46\textwidth}p{0.14\textwidth}} +\toprule +\textbf{Name} & \textbf{Unit} & \textbf{Description} & \textbf{Default} \\ +\midrule +\endhead +nx & 1 & Number of pixel columns in scattering plane & 20 \\ +nE & 1 & Number of energy bins & 20 \\ +filename & string & Name of file in which to store the detector image & 0 \\ +xmin & m & Lower x bound of detector opening & -0.05 \\ +xmax & m & Upper x bound of detector opening & 0.05 \\ +ymin & m & Lower y bound of detector opening & -0.05 \\ +ymax & m & Upper y bound of detector opening & 0.05 \\ +nowritefile & 1 & If set, monitor will skip writing to disk & 0 \\ +xwidth & m & Width of detector. Overrides xmin,xmax. & 0 \\ +yheight & m & Height of detector. Overrides ymin,ymax. & 0 \\ +\textbf{Emin} & meV & Lower bound of energy & \\ +\textbf{Emax} & meV & Upper bound of energy & \\ +restore\_neutron & 1 & If set, the monitor does not influence the neutron state & 0 \\ +\bottomrule +\end{longtable} + +\subsection*{Links} +\begin{itemize} + \item \href{run:/home/willend/willend-McCode/mcstas-comps/monitors/EPSD_monitor.comp}{Source code} for \texttt{EPSD\_monitor.comp}. +\end{itemize} +\IfFileExists{EPSD_monitor_static.tex}{\input{EPSD_monitor_static.tex}}{} \ No newline at end of file diff --git a/docs/manuals/mcstas/monitors/E_monitor.tex b/docs/manuals/mcstas/monitors/E_monitor.tex new file mode 100644 index 000000000..634194811 --- /dev/null +++ b/docs/manuals/mcstas/monitors/E_monitor.tex @@ -0,0 +1,47 @@ +\section{The \texttt{E\_monitor} McStas Component} +Energy-sensitive monitor. + +\subsection*{Identification} +\begin{itemize} + \item \textbf{Site:} + \item \textbf{Author:} Kristian Nielsen and Kim Lefmann + \item \textbf{Origin:} Risoe + \item \textbf{Date:} April 20, 1998 +\end{itemize} + +\subsection*{Description} +\begin{lstlisting} +A square single monitor that measures the energy of the incoming neutrons. + +Example: E_monitor(xmin=-0.1, xmax=0.1, ymin=-0.1, ymax=0.1, +Emin=1, Emax=50, nE=20, filename="Output.nrj") +\end{lstlisting} + +\subsection*{Input parameters} +Parameters in \textbf{boldface} are required; the others are optional. + +\begin{longtable}{p{0.22\textwidth}p{0.12\textwidth}p{0.46\textwidth}p{0.14\textwidth}} +\toprule +\textbf{Name} & \textbf{Unit} & \textbf{Description} & \textbf{Default} \\ +\midrule +\endhead +nE & 1 & Number of energy channels & 20 \\ +filename & string & Name of file in which to store the detector image & 0 \\ +xmin & m & Lower x bound of detector opening & -0.05 \\ +xmax & m & Upper x bound of detector opening & 0.05 \\ +ymin & m & Lower y bound of detector opening & -0.05 \\ +ymax & m & Upper y bound of detector opening & 0.05 \\ +nowritefile & 1 & If set, monitor will skip writing to disk & 0 \\ +xwidth & m & Width of detector. Overrides xmin, xmax. & 0 \\ +yheight & m & Height of detector. Overrides ymin, ymax. & 0 \\ +\textbf{Emin} & meV & Minimum energy to detect & \\ +\textbf{Emax} & meV & Maximum energy to detect & \\ +restore\_neutron & 1 & If set, the monitor does not influence the neutron state & 0 \\ +\bottomrule +\end{longtable} + +\subsection*{Links} +\begin{itemize} + \item \href{run:/home/willend/willend-McCode/mcstas-comps/monitors/E_monitor.comp}{Source code} for \texttt{E\_monitor.comp}. +\end{itemize} +\IfFileExists{E_monitor_static.tex}{\input{E_monitor_static.tex}}{} \ No newline at end of file diff --git a/docs/manuals/mcstas/monitors/Event_monitor_simple.tex b/docs/manuals/mcstas/monitors/Event_monitor_simple.tex new file mode 100644 index 000000000..2fe275b21 --- /dev/null +++ b/docs/manuals/mcstas/monitors/Event_monitor_simple.tex @@ -0,0 +1,35 @@ +\section{The \texttt{Event\_monitor\_simple} McStas Component} +Low-key event-monitor for debugging purposes. + +\subsection*{Identification} +\begin{itemize} + \item \textbf{Site:} + \item \textbf{Author:} Peter Willendrup + \item \textbf{Origin:} DTU + \item \textbf{Date:} Oct 3rd, 2020 +\end{itemize} + +\subsection*{Description} +\begin{lstlisting} +Simple, low-key event-monitor for debugging purposes. No propagation, +no MPI support. Simply prints the event list to a log file in the SAVE section. +The filename is "comp-instance".log +\end{lstlisting} + +\subsection*{Input parameters} +Parameters in \textbf{boldface} are required; the others are optional. + +\begin{longtable}{p{0.22\textwidth}p{0.12\textwidth}p{0.46\textwidth}p{0.14\textwidth}} +\toprule +\textbf{Name} & \textbf{Unit} & \textbf{Description} & \textbf{Default} \\ +\midrule +\endhead +nevents & 1 & Number of events to store and print & 1e6 \\ +\bottomrule +\end{longtable} + +\subsection*{Links} +\begin{itemize} + \item \href{run:/home/willend/willend-McCode/mcstas-comps/monitors/Event_monitor_simple.comp}{Source code} for \texttt{Event\_monitor\_simple.comp}. +\end{itemize} +\IfFileExists{Event_monitor_simple_static.tex}{\input{Event_monitor_simple_static.tex}}{} \ No newline at end of file diff --git a/docs/manuals/mcstas/monitors/Flex_monitor_1D.tex b/docs/manuals/mcstas/monitors/Flex_monitor_1D.tex new file mode 100644 index 000000000..8e07c2dd6 --- /dev/null +++ b/docs/manuals/mcstas/monitors/Flex_monitor_1D.tex @@ -0,0 +1,43 @@ +\section{The \texttt{Flex\_monitor\_1D} McStas Component} +Flexible monitor. + +\subsection*{Identification} +\begin{itemize} + \item \textbf{Site:} + \item \textbf{Author:} Erik B Knudsen \& Peter Willendrup + \item \textbf{Origin:} DTU Physics + \item \textbf{Date:} Oct '20 +\end{itemize} + +\subsection*{Description} +\begin{lstlisting} +A square 1D single monitor that measures intensity (or something else) as a function of some variable or parameter. + +Example: Flex_monitor_1D(nU=20, filename="Output", ustring="x", Umin=-.1, Umax=.1) +\end{lstlisting} + +\subsection*{Input parameters} +Parameters in \textbf{boldface} are required; the others are optional. + +\begin{longtable}{p{0.22\textwidth}p{0.12\textwidth}p{0.46\textwidth}p{0.14\textwidth}} +\toprule +\textbf{Name} & \textbf{Unit} & \textbf{Description} & \textbf{Default} \\ +\midrule +\endhead +nU & 1 & Number of U channels & 20 \\ +filename & string & Name of file in which to store the detector image & 0 \\ +\textbf{Umin} & & Minimum U to detect & \\ +\textbf{Umax} & & Maximum U to detect & \\ +uid & 1 & Integer index of uservar to be monitored. Overrides ustring. & -1 \\ +ustring & string & Name of variable (user or neutron state parameter as a string) to be monitored. & "" \\ +restore\_neutron & 1 & If set, the monitor does not influence the neutron state & 0 \\ +signal & string & Name of variable to be used as an additive signal to be monitored. Default is intensity. & "p" \\ +nowritefile & 1 & Flag to indicate if monitor should not save any data. & 0 \\ +\bottomrule +\end{longtable} + +\subsection*{Links} +\begin{itemize} + \item \href{run:/home/willend/willend-McCode/mcstas-comps/monitors/Flex_monitor_1D.comp}{Source code} for \texttt{Flex\_monitor\_1D.comp}. +\end{itemize} +\IfFileExists{Flex_monitor_1D_static.tex}{\input{Flex_monitor_1D_static.tex}}{} \ No newline at end of file diff --git a/docs/manuals/mcstas/monitors/Flex_monitor_2D.tex b/docs/manuals/mcstas/monitors/Flex_monitor_2D.tex new file mode 100644 index 000000000..a2bc196c8 --- /dev/null +++ b/docs/manuals/mcstas/monitors/Flex_monitor_2D.tex @@ -0,0 +1,48 @@ +\section{The \texttt{Flex\_monitor\_2D} McStas Component} +Flexible monitor. + +\subsection*{Identification} +\begin{itemize} + \item \textbf{Site:} + \item \textbf{Author:} Erik B Knudsen \& Peter Willendrup + \item \textbf{Origin:} DTU Physics + \item \textbf{Date:} Oct '20 +\end{itemize} + +\subsection*{Description} +\begin{lstlisting} +A square 2D single monitor that measures intensity (or something else) as a function of two selectable variables or parameters. + +Example: Flex_monitor_2D(nU1=20, nU2=20, filename="Output", ustring1="x", ustring2="y", Umin1=-.1, Umax1=.1, Umin2=-.1, Umax2=.1) +\end{lstlisting} + +\subsection*{Input parameters} +Parameters in \textbf{boldface} are required; the others are optional. + +\begin{longtable}{p{0.22\textwidth}p{0.12\textwidth}p{0.46\textwidth}p{0.14\textwidth}} +\toprule +\textbf{Name} & \textbf{Unit} & \textbf{Description} & \textbf{Default} \\ +\midrule +\endhead +nU1 & 1 & Number of U1 channels & 20 \\ +nU2 & 1 & Number of U1 channels & 20 \\ +filename & string & Name of file in which to store the detector image & 0 \\ +\textbf{Umin1} & & Minimum U1 to detect & \\ +\textbf{Umax1} & & Maximum U1 to detect & \\ +uid1 & 1 & Integer index of uservar to be monitored. Overrides ustring1. & -1 \\ +ustring1 & string & Name of variable U1 (user or neutron state parameter as a string) to be monitored. & "" \\ +\textbf{Umin2} & & Minimum U1 to detect & \\ +\textbf{Umax2} & & Maximum U1 to detect & \\ +uid2 & 1 & Integer index of uservar to be monitored. Overrides ustring2. & -1 \\ +ustring2 & string & Name of variable U2 (user or neutron state parameter as a string) to be monitored. & "" \\ +restore\_neutron & 1 & If set, the monitor does not influence the neutron state & 0 \\ +signal & string & Name of variable to be used as an additive signal to be monitored. Default is intensity. & "p" \\ +nowritefile & 1 & Flag to indicate if monitor should not save any data. & 0 \\ +\bottomrule +\end{longtable} + +\subsection*{Links} +\begin{itemize} + \item \href{run:/home/willend/willend-McCode/mcstas-comps/monitors/Flex_monitor_2D.comp}{Source code} for \texttt{Flex\_monitor\_2D.comp}. +\end{itemize} +\IfFileExists{Flex_monitor_2D_static.tex}{\input{Flex_monitor_2D_static.tex}}{} \ No newline at end of file diff --git a/docs/manuals/mcstas/monitors/Flex_monitor_3D.tex b/docs/manuals/mcstas/monitors/Flex_monitor_3D.tex new file mode 100644 index 000000000..20c6cc501 --- /dev/null +++ b/docs/manuals/mcstas/monitors/Flex_monitor_3D.tex @@ -0,0 +1,53 @@ +\section{The \texttt{Flex\_monitor\_3D} McStas Component} +Flexible monitor. + +\subsection*{Identification} +\begin{itemize} + \item \textbf{Site:} + \item \textbf{Author:} Erik B Knudsen \& Peter Willendrup + \item \textbf{Origin:} DTU Physics + \item \textbf{Date:} Oct '20 +\end{itemize} + +\subsection*{Description} +\begin{lstlisting} +A square 3D single monitor that measures intensity (or something else) as a function of two selectable variables or parameters. + +Example: Flex_monitor_3D(nU1=20, nU2=20, nU3=20, filename="Output", ustring1="x", ustring2="y", ustring1="z", Umin1=-.1, Umax1=.1, Umin2=-.1, Umax2=.1, Umin3=-.1, Umax3=.1) +\end{lstlisting} + +\subsection*{Input parameters} +Parameters in \textbf{boldface} are required; the others are optional. + +\begin{longtable}{p{0.22\textwidth}p{0.12\textwidth}p{0.46\textwidth}p{0.14\textwidth}} +\toprule +\textbf{Name} & \textbf{Unit} & \textbf{Description} & \textbf{Default} \\ +\midrule +\endhead +nU1 & 1 & Number of U1 channels & 20 \\ +nU2 & 1 & Number of U1 channels & 20 \\ +nU3 & 1 & Number of U3 channels & 20 \\ +filename & string & Name of file in which to store the detector image & 0 \\ +\textbf{Umin1} & & Minimum U1 to detect & \\ +\textbf{Umax1} & & Maximum U1 to detect & \\ +uid1 & 1 & Integer index of uservar to be monitored. Overrides ustring1. & -1 \\ +ustring1 & string & Name of variable U1 (user or neutron state parameter as a string) to be monitored. & "" \\ +\textbf{Umin2} & & Minimum U1 to detect & \\ +\textbf{Umax2} & & Maximum U1 to detect & \\ +uid2 & 1 & Integer index of uservar to be monitored. Overrides ustring2. & -1 \\ +ustring2 & string & Name of variable U2 (user or neutron state parameter as a string) to be monitored. & "" \\ +\textbf{Umin3} & & Minimum U3 to detect & \\ +\textbf{Umax3} & & Maximum U3 to detect & \\ +uid3 & 1 & Integer index of uservar to be monitored. Overrides ustring3. & -1 \\ +ustring3 & string & Name of variable U3 (user or neutron state parameter as a string) to be monitored. & "" \\ +restore\_neutron & 1 & If set, the monitor does not influence the neutron state & 0 \\ +signal & string & Name of variable to be used as an additive signal to be monitored. Default is intensity. & "p" \\ +nowritefile & 1 & Flag to indicate if monitor should not save any data. & 0 \\ +\bottomrule +\end{longtable} + +\subsection*{Links} +\begin{itemize} + \item \href{run:/home/willend/willend-McCode/mcstas-comps/monitors/Flex_monitor_3D.comp}{Source code} for \texttt{Flex\_monitor\_3D.comp}. +\end{itemize} +\IfFileExists{Flex_monitor_3D_static.tex}{\input{Flex_monitor_3D_static.tex}}{} \ No newline at end of file diff --git a/docs/manuals/mcstas/monitors/L_monitor.tex b/docs/manuals/mcstas/monitors/L_monitor.tex new file mode 100644 index 000000000..537f237ba --- /dev/null +++ b/docs/manuals/mcstas/monitors/L_monitor.tex @@ -0,0 +1,47 @@ +\section{The \texttt{L\_monitor} McStas Component} +Wavelength-sensitive monitor. + +\subsection*{Identification} +\begin{itemize} + \item \textbf{Site:} + \item \textbf{Author:} Kristian Nielsen and Kim Lefmann + \item \textbf{Origin:} Risoe + \item \textbf{Date:} April 20, 1998 +\end{itemize} + +\subsection*{Description} +\begin{lstlisting} +A square single monitor that measures the wavelength of the incoming +neutrons. + +Example: L_monitor(xmin=-0.1, xmax=0.1, ymin=-0.1, ymax=0.1, nL=20, filename="Output.L", Lmin=2, Lmax=10) +\end{lstlisting} + +\subsection*{Input parameters} +Parameters in \textbf{boldface} are required; the others are optional. + +\begin{longtable}{p{0.22\textwidth}p{0.12\textwidth}p{0.46\textwidth}p{0.14\textwidth}} +\toprule +\textbf{Name} & \textbf{Unit} & \textbf{Description} & \textbf{Default} \\ +\midrule +\endhead +nL & 1 & Number of wavelength channels & 20 \\ +filename & string & Name of file in which to store the detector image & 0 \\ +nowritefile & 1 & If set, monitor will skip writing to disk & 0 \\ +xmin & m & Lower x bound of detector opening & -0.05 \\ +xmax & m & Upper x bound of detector opening & 0.05 \\ +ymin & m & Lower y bound of detector opening & -0.05 \\ +ymax & m & Upper y bound of detector opening & 0.05 \\ +xwidth & m & Width of detector. Overrides xmin, xmax. & 0 \\ +yheight & m & Height of detector. Overrides ymin, ymax. & 0 \\ +\textbf{Lmin} & AA & Minimum wavelength to detect & \\ +\textbf{Lmax} & AA & Maximum wavelength to detect & \\ +restore\_neutron & 1 & If set, the monitor does not influence the neutron state & 0 \\ +\bottomrule +\end{longtable} + +\subsection*{Links} +\begin{itemize} + \item \href{run:/home/willend/willend-McCode/mcstas-comps/monitors/L_monitor.comp}{Source code} for \texttt{L\_monitor.comp}. +\end{itemize} +\IfFileExists{L_monitor_static.tex}{\input{L_monitor_static.tex}}{} \ No newline at end of file diff --git a/docs/manuals/mcstas/monitors/MeanPolLambda_monitor.tex b/docs/manuals/mcstas/monitors/MeanPolLambda_monitor.tex new file mode 100644 index 000000000..6c0a0b459 --- /dev/null +++ b/docs/manuals/mcstas/monitors/MeanPolLambda_monitor.tex @@ -0,0 +1,47 @@ +\section{The \texttt{MeanPolLambda\_monitor} McStas Component} +Polarisation and wavelength sensitive monitor. + +\subsection*{Identification} +\begin{itemize} + \item \textbf{Site:} + \item \textbf{Author:} Peter Christiansen + \item \textbf{Origin:} Risoe + \item \textbf{Date:} July 2006 +\end{itemize} + +\subsection*{Description} +\begin{lstlisting} +A square single monitor that measures the MEAN projection of the +polarisation along a given normalized m-vector (mx, my, mz) as a +function of wavelength. + +Example: MeanPollambda_monitor(xwidth=0.1, yheight=0.1, npol=11, my=1, filename="meanpollambdaMon.data") +\end{lstlisting} + +\subsection*{Input parameters} +Parameters in \textbf{boldface} are required; the others are optional. + +\begin{longtable}{p{0.22\textwidth}p{0.12\textwidth}p{0.46\textwidth}p{0.14\textwidth}} +\toprule +\textbf{Name} & \textbf{Unit} & \textbf{Description} & \textbf{Default} \\ +\midrule +\endhead +xwidth & m & Width of detector & 0.1 \\ +yheight & m & Height of detector & 0.1 \\ +nL & 1 & Number of bins in wavelength & 20 \\ +restore\_neutron & 1 & If set, the monitor does not influence the neutron state & 0 \\ +filename & string & Name of file in which to store the data & 0 \\ +nowritefile & 1 & If set, monitor will skip writing to disk & 0 \\ +mx & 1 & X-component of monitor vector (can be negative) & 0 \\ +my & 1 & Y-component of monitor vector (can be negative) & 0 \\ +mz & 1 & Z-component of monitor vector (can be negative) & 0 \\ +\textbf{Lmin} & AA & Minimum wavelength detected & \\ +\textbf{Lmax} & AA & Maximum wavelength detected & \\ +\bottomrule +\end{longtable} + +\subsection*{Links} +\begin{itemize} + \item \href{run:/home/willend/willend-McCode/mcstas-comps/monitors/MeanPolLambda_monitor.comp}{Source code} for \texttt{MeanPolLambda\_monitor.comp}. +\end{itemize} +\IfFileExists{MeanPolLambda_monitor_static.tex}{\input{MeanPolLambda_monitor_static.tex}}{} \ No newline at end of file diff --git a/docs/manuals/mcstas/monitors/Monitor.tex b/docs/manuals/mcstas/monitors/Monitor.tex new file mode 100644 index 000000000..b6ec51ab5 --- /dev/null +++ b/docs/manuals/mcstas/monitors/Monitor.tex @@ -0,0 +1,42 @@ +\section{The \texttt{Monitor} McStas Component} +Simple single detector/monitor. + +\subsection*{Identification} +\begin{itemize} + \item \textbf{Site:} + \item \textbf{Author:} Kim Lefmann + \item \textbf{Origin:} Risoe + \item \textbf{Date:} October 4, 1997 +\end{itemize} + +\subsection*{Description} +\begin{lstlisting} +Sums neutrons (0th, 1st, and 2nd moment of p) flying through +the rectangular monitor opening. May also be used as detector. + +Example: Monitor(xmin=-0.1, xmax=0.1, ymin=-0.1, ymax=0.1) +\end{lstlisting} + +\subsection*{Input parameters} +Parameters in \textbf{boldface} are required; the others are optional. + +\begin{longtable}{p{0.22\textwidth}p{0.12\textwidth}p{0.46\textwidth}p{0.14\textwidth}} +\toprule +\textbf{Name} & \textbf{Unit} & \textbf{Description} & \textbf{Default} \\ +\midrule +\endhead +xmin & m & Lower x bound of opening & -0.05 \\ +xmax & m & Upper x bound of opening & 0.05 \\ +ymin & m & Lower y bound of opening & -0.05 \\ +ymax & m & Upper y bound of opening & 0.05 \\ +xwidth & m & Width of detector. Overrides xmin,xmax. & 0 \\ +yheight & m & Height of detector. Overrides ymin,ymax. & 0 \\ +restore\_neutron & 1 & If set, the monitor does not influence the neutron state & 0 \\ +\bottomrule +\end{longtable} + +\subsection*{Links} +\begin{itemize} + \item \href{run:/home/willend/willend-McCode/mcstas-comps/monitors/Monitor.comp}{Source code} for \texttt{Monitor.comp}. +\end{itemize} +\IfFileExists{Monitor_static.tex}{\input{Monitor_static.tex}}{} \ No newline at end of file diff --git a/docs/manuals/mcstas/monitors/Monitor_4PI.tex b/docs/manuals/mcstas/monitors/Monitor_4PI.tex new file mode 100644 index 000000000..a5012c332 --- /dev/null +++ b/docs/manuals/mcstas/monitors/Monitor_4PI.tex @@ -0,0 +1,37 @@ +\section{The \texttt{Monitor\_4PI} McStas Component} +Release: McStas 1.6 + +Monitor that detects ALL non-absorbed neutrons. + +Example: Monitor\_4PI() + +\subsection*{Identification} +\begin{itemize} + \item \textbf{Site:} + \item \textbf{Author:} Kim Lefmann and Kristian Nielsen + \item \textbf{Origin:} Risoe + \item \textbf{Date:} April 17, 1998 +\end{itemize} + +\subsection*{Description} +\begin{lstlisting} +Counts ALL neutrons that propagate this far in the instrument, regardless +of origin or direction. Mostly used for test purposes. +\end{lstlisting} + +\subsection*{Input parameters} +Parameters in \textbf{boldface} are required; the others are optional. + +\begin{longtable}{p{0.22\textwidth}p{0.12\textwidth}p{0.46\textwidth}p{0.14\textwidth}} +\toprule +\textbf{Name} & \textbf{Unit} & \textbf{Description} & \textbf{Default} \\ +\midrule +\endhead +\bottomrule +\end{longtable} + +\subsection*{Links} +\begin{itemize} + \item \href{run:/home/willend/willend-McCode/mcstas-comps/monitors/Monitor_4PI.comp}{Source code} for \texttt{Monitor\_4PI.comp}. +\end{itemize} +\IfFileExists{Monitor_4PI_static.tex}{\input{Monitor_4PI_static.tex}}{} \ No newline at end of file diff --git a/docs/manuals/mcstas/monitors/Monitor_nD.tex b/docs/manuals/mcstas/monitors/Monitor_nD.tex new file mode 100644 index 000000000..d206a7c70 --- /dev/null +++ b/docs/manuals/mcstas/monitors/Monitor_nD.tex @@ -0,0 +1,222 @@ +\section{The \texttt{Monitor\_nD} McStas Component} +Release: McStas 1.6 +Version: \$Revision\$ + +This component is a general Monitor that can output 0/1/2D signals +(Intensity or signal vs. [something] and vs. [something] ...) + +\subsection*{Identification} +\begin{itemize} + \item \textbf{Site:} + \item \textbf{Author:} \textless{}a href="mailto:farhi@ill.fr"\textgreater{}Emmanuel Farhi\textless{}/a\textgreater{} + \item \textbf{Origin:} \textless{}a href="http://www.ill.fr"\textgreater{}ILL\textless{}/a\textgreater{} + \item \textbf{Date:} 14th Feb 2000. +\end{itemize} + +\subsection*{Description} +\begin{lstlisting} +This component is a general Monitor that can output 0/1/2D signals +It can produce many 1D signals (one for any variable specified in +option list), or a single 2D output (two variables correlation). +Also, an additional 'list' of neutron events can be produced. +By default, monitor is square (in x/y plane). A disk shape is also possible +The 'cylinder' and 'banana' option will change that for a banana shape +The 'sphere' option simulates spherical detector. The 'box' is a box. +The cylinder, sphere and banana should be centered on the scattering point. +The monitored flux may be per monitor unit area, and weighted by +a lambda/lambda(2200m/s) factor to obtain standard integrated capture flux. +In normal configuration, the Monitor_nD measures the current parameters +of the neutron that is beeing detected. But a PreMonitor_nD component can +be used in order to study correlations between a neutron being detected in +a Monitor_nD place, and given parameters that are monitored elsewhere +(at PreMonitor_nD). +The monitor can also act as a 3He gas detector, taking into account the +detection efficiency. + +The 'bins' and 'limits' modifiers are to be used after each variable, +and 'auto','log' and 'abs' come before it. (eg: auto abs log hdiv bins=10 +limits=[-5 5]) When placed after all variables, these two latter modifiers +apply to the signal (e.g. intensity). Unknown keywords are ignored. +If no limits are specified for a given observable, reasonable defaults will be +applied. Note that these implicit limits are even applied in list mode. + +Implicit limits for typical variables: +(consult monitor_nd-lib.c if you don't find your variable here) +x, y, z: Derived from detection-object geometry +k: [0 10] Angs-1 +v: [0 1e6] m/s +t: [0 1] s +p: [0 FLT_MAX] in intensity-units +vx, vy: [-1000 1000] m/s +vz: [0 10000] m/s +kx, ky: [-1 1] Angs-1 +kz: [-10 10] Angs-1 +energy, omega: [0 100] meV +lambda,wavelength: [0 100] Angs +sx, sy, sz: [-1 1] in polarisation-units +angle: [-50 50] deg +divergence, vdiv, hdiv, xdiv, ydiv: [-5 5] deg +longitude, lattitude: [-180 180] deg +neutron: [0 simulaton_ncount] +id, pixel id: [0 FLT_MAX] +uservars u1,u2,u3: [-1e10 1e10] + +In the case of multiple components at the same position, the 'parallel' +keyword must be used in each instance instead of defining a GROUP. + +Possible options are +Variables to record: +kx ky kz k wavevector [Angs-1] Wavevector on x,y,z and norm +vx vy vz v [m/s] Velocity on x,y,z and norm +x y z radius [m] Distance, Position and norm +xy, yz, xz [m] Radial position in xy, yz and xz plane +kxy kyz kxz [Angs-1] Radial wavevector in xy, yz and xz plane +vxy vyz vxz [m/s] Radial velocity in xy, yz and xz plane +t time [s] Time of Flight +energy omega [meV] energy of neutron +lambda wavelength [Angs] wavelength of neutron +sx sy sz [1] Spin +vdiv ydiv dy [deg] vertical divergence (y) +hdiv divergence xdiv [deg] horizontal divergence (x) +angle [deg] divergence from direction +theta longitude [deg] longitude (x/z) for sphere and cylinder +phi lattitude [deg] lattitude (y/z) for sphere and cylinder + +user user1 will monitor the [Mon_Name]_Vars.UserVariable{1|2|3} +user2 user3 to be assigned in an other component (see below) + +p intensity flux [n/s or n/cm^2/s] +ncounts n neutron [1] neutron ID, i.e current event index +pixel id [1] pixelID in histogram made of preceeding vars, e.g. 'theta y'. To set an offset PixelID use the 'min=value' keyword. Sets event mode. + +Other options keywords are: +abs Will monitor the abs of the following variable or of the signal (if used after all variables) +auto Automatically set detector limits for one/all +all {limits|bins|auto} To set all limits or bins values or auto mode +binary {float|double} with 'source' option, saves in compact files +bins=[bins=20] Number of bins in the detector along dimension +borders To also count off-limits neutrons (X < min or X > max) +capture weight by lambda/lambda(2200m/s) capture flux +file=string Detector image file name. default is component name, plus date and variable extension. +incoming Monitor incoming beam in non flat det +limits=[min max] Lower/Upper limits for axes (see up for the variable unit) +list=[counts=1000] or all For a long file of neutron characteristics with [counts] or all events +log Will monitor the log of the following variable or of the signal (if used after all variables) +min=[min_value] Same as limits, but only sets the min or max +max=[max_value] +multiple Create multiple independant 1D monitors files +no or not Revert next option +outgoing Monitor outgoing beam (default) +parallel Use this option when the next component is at the same position (parallel components) +per cm2 Intensity will be per cm^2 (detector area). Displays beam section. +per steradian Displays beam solid angle in steradian +premonitor Will monitor neutron parameters stored previously with PreMonitor_nD. +signal=[var] Will monitor [var] instead of usual intensity +slit or absorb Absorb neutrons that are out detector +source The monitor will save neutron states +inactivate To inactivate detector (0D detector) +verbose To display additional informations +3He_pressure=[3 in bars] The 3He gas pressure in detector. 3He_pressure=0 is perfect detector (default) + +Detector shape options (specified as xwidth,yheight,zdepth or x/y/z/min/max) +box Box of size xwidth, yheight, zdepth. +cylinder To get a cylindrical monitor (diameter is xwidth or set radius, height is yheight). +banana Same as cylinder, without top/bottom, on restricted angular area; use theta variable with limits to define arc. (diameter is xwidth or set radius, height is yheight). +disk Disk flat xy monitor. diameter is xwidth. +sphere To get a spherical monitor (e.g. a 4PI) (diameter is xwidth or set radius). +square Square flat xy monitor (xwidth, yheight). +previous The monitor uses PREVIOUS component as detector surface. Or use 'geometry' parameter to specify any PLY/OFF geometry file. + +EXAMPLES: +
      +
    • MyMon = Monitor_nD(xwidth = 0.1, yheight = 0.1, zdepth = 0, +  options = "intensity per cm2 angle,limits=[-5 5] bins=10,with +  borders, file = mon1"); +will monitor neutron angle from [z] axis, between -5 +and 5 degrees, in 10 bins, into "mon1.A" output 1D file + +
    • options = "sphere theta phi outgoing" +for a sphere PSD detector (out beam) and saves into file "MyMon_[Date_ID].th_ph" + +
    • options = "banana, theta limits=[10,130], bins=120, y" +a theta/height banana detector + +
    • options = "angle radius all auto" +is a 2D monitor with automatic limits + +
    • options = "list=1000 kx ky kz energy" +records 1000 neutron event in a file + +
    • options = "multiple kx ky kz, auto abs log t, and list all neutrons" +makes 4 output 1D files and produces a complete list for all neutrons +and monitor log(abs(tof)) within automatic limits (for t) + +
    • options = "theta y, sphere, pixel min=100" +a 4pi detector which outputs an event list with pixelID from the actual +detector surface, starting from index 100. + +
    +To dynamically define a number of bins, or limits: +Use in DECLARE: char op[256]; +Use in INITIALIZE: sprintf(op, "lambda limits=[%g %g], bins=%i", lmin, lmax, lbin); +Use in TRACE: Monitor_nD(... options=op ...) + +How to monitor any instrument/component variable into a Monitor_nD +Suppose you want to monitor a variable 'age' which you assign somwhere in +the instrument: +COMPONENT MyMonitor = Monitor_nD( +xwidth = 0.1, yheight = 0.1, +user1="age", username1="Age of the Captain [years]", +options="user1, auto") +AT ... + +See also the example in PreMonitor_nD to +monitor neutron parameters cross-correlations. + +%BUGS +The 'auto' option for guessing optimal variable bounds should NOT be used with MPI +as each process may use different limits. +\end{lstlisting} + +\subsection*{Input parameters} +Parameters in \textbf{boldface} are required; the others are optional. + +\begin{longtable}{p{0.22\textwidth}p{0.12\textwidth}p{0.46\textwidth}p{0.14\textwidth}} +\toprule +\textbf{Name} & \textbf{Unit} & \textbf{Description} & \textbf{Default} \\ +\midrule +\endhead +user1 & str & Variable name of USERVAR to be monitored by user1. & "" \\ +user2 & str & Variable name of USERVAR to be monitored by user2. & "" \\ +user3 & str & Variable name of USERVAR to be monitored by user3. & "" \\ +xwidth & m & Width of detector. & 0 \\ +yheight & m & Height of detector. & 0 \\ +zdepth & m & Thickness of detector (z). & 0 \\ +xmin & m & Lower x bound of opening & 0 \\ +xmax & m & Upper x bound of opening & 0 \\ +ymin & m & Lower y bound of opening & 0 \\ +ymax & m & Upper y bound of opening & 0 \\ +zmin & m & Lower z bound of opening & 0 \\ +zmax & m & Upper z bound of opening & 0 \\ +bins & 1 & Number of bins to force for all variables. Use 'bins' keyword in 'options' for heterogeneous bins & 0 \\ +min & u & Minimum range value to force for all variables. Use 'min' or 'limits' keyword in 'options' for other limits & -1e40 \\ +max & u & Maximum range value to force for all variables. Use 'max' or 'limits' keyword in 'options' for other limits & 1e40 \\ +restore\_neutron & 0|1 & If set, the monitor does not influence the neutron state. Equivalent to setting the 'parallel' option. & 0 \\ +radius & m & Radius of sphere/banana shape monitor & 0 \\ +options & str & String that specifies the configuration of the monitor. The general syntax is "[x] options..." (see \textless{}b\textgreater{}Descr.\textless{}/b\textgreater{}). & "NULL" \\ +filename & str & Output file name (overrides file=XX option). & "NULL" \\ +geometry & str & Name of an OFF file to specify a complex geometry detector & "NULL" \\ +nowritefile & 1 & If set, monitor will skip writing to disk & 0 \\ +nexus\_bins & 1 & NeXus mode only: store component BIN information \textless{}br\textgreater{}(-1 disable, 0 enable for list mode monitor, 1 enable for any montor) & 0 \\ +username1 & str & Name assigned to User1 & "NULL" \\ +username2 & str & Name assigned to User2 & "NULL" \\ +username3 & str & Name assigned to User3 & "NULL" \\ +\bottomrule +\end{longtable} + +\subsection*{Links} +\begin{itemize} + \item \href{run:/home/willend/willend-McCode/mcstas-comps/monitors/Monitor_nD.comp}{Source code} for \texttt{Monitor\_nD.comp}. + \item \textless{}a href="PreMonitor\_nD.html"\textgreater{}PreMonitor\_nD\textless{}/a\textgreater{} +\end{itemize} +\IfFileExists{Monitor_nD_static.tex}{\input{Monitor_nD_static.tex}}{} \ No newline at end of file diff --git a/docs/manuals/mcstas/monitors/Monitor_nD_noacc.tex b/docs/manuals/mcstas/monitors/Monitor_nD_noacc.tex new file mode 100644 index 000000000..6449560e0 --- /dev/null +++ b/docs/manuals/mcstas/monitors/Monitor_nD_noacc.tex @@ -0,0 +1,222 @@ +\section{The \texttt{Monitor\_nD\_noacc} McStas Component} +Release: McStas 1.6 +Version: \$Revision\$ + +This component is a general Monitor that can output 0/1/2D signals +(Intensity or signal vs. [something] and vs. [something] ...) + +\subsection*{Identification} +\begin{itemize} + \item \textbf{Site:} + \item \textbf{Author:} \textless{}a href="mailto:farhi@ill.fr"\textgreater{}Emmanuel Farhi\textless{}/a\textgreater{} + \item \textbf{Origin:} \textless{}a href="http://www.ill.fr"\textgreater{}ILL\textless{}/a\textgreater{} + \item \textbf{Date:} 14th Feb 2000. +\end{itemize} + +\subsection*{Description} +\begin{lstlisting} +This component is a general Monitor that can output 0/1/2D signals +It can produce many 1D signals (one for any variable specified in +option list), or a single 2D output (two variables correlation). +Also, an additional 'list' of neutron events can be produced. +By default, monitor is square (in x/y plane). A disk shape is also possible +The 'cylinder' and 'banana' option will change that for a banana shape +The 'sphere' option simulates spherical detector. The 'box' is a box. +The cylinder, sphere and banana should be centered on the scattering point. +The monitored flux may be per monitor unit area, and weighted by +a lambda/lambda(2200m/s) factor to obtain standard integrated capture flux. +In normal configuration, the Monitor_nD measures the current parameters +of the neutron that is beeing detected. But a PreMonitor_nD component can +be used in order to study correlations between a neutron being detected in +a Monitor_nD place, and given parameters that are monitored elsewhere +(at PreMonitor_nD). +The monitor can also act as a 3He gas detector, taking into account the +detection efficiency. + +The 'bins' and 'limits' modifiers are to be used after each variable, +and 'auto','log' and 'abs' come before it. (eg: auto abs log hdiv bins=10 +limits=[-5 5]) When placed after all variables, these two latter modifiers +apply to the signal (e.g. intensity). Unknown keywords are ignored. +If no limits are specified for a given observable, reasonable defaults will be +applied. Note that these implicit limits are even applied in list mode. + +Implicit limits for typical variables: +(consult monitor_nd-lib.c if you don't find your variable here) +x, y, z: Derived from detection-object geometry +k: [0 10] Angs-1 +v: [0 1e6] m/s +t: [0 1] s +p: [0 FLT_MAX] in intensity-units +vx, vy: [-1000 1000] m/s +vz: [0 10000] m/s +kx, ky: [-1 1] Angs-1 +kz: [-10 10] Angs-1 +energy, omega: [0 100] meV +lambda,wavelength: [0 100] Angs +sx, sy, sz: [-1 1] in polarisation-units +angle: [-50 50] deg +divergence, vdiv, hdiv, xdiv, ydiv: [-5 5] deg +longitude, lattitude: [-180 180] deg +neutron: [0 simulaton_ncount] +id, pixel id: [0 FLT_MAX] +uservars u1,u2,u3: [-1e10 1e10] + +In the case of multiple components at the same position, the 'parallel' +keyword must be used in each instance instead of defining a GROUP. + +Possible options are +Variables to record: +kx ky kz k wavevector [Angs-1] Wavevector on x,y,z and norm +vx vy vz v [m/s] Velocity on x,y,z and norm +x y z radius [m] Distance, Position and norm +xy, yz, xz [m] Radial position in xy, yz and xz plane +kxy kyz kxz [Angs-1] Radial wavevector in xy, yz and xz plane +vxy vyz vxz [m/s] Radial velocity in xy, yz and xz plane +t time [s] Time of Flight +energy omega [meV] energy of neutron +lambda wavelength [Angs] wavelength of neutron +sx sy sz [1] Spin +vdiv ydiv dy [deg] vertical divergence (y) +hdiv divergence xdiv [deg] horizontal divergence (x) +angle [deg] divergence from direction +theta longitude [deg] longitude (x/z) for sphere and cylinder +phi lattitude [deg] lattitude (y/z) for sphere and cylinder + +user user1 will monitor the [Mon_Name]_Vars.UserVariable{1|2|3} +user2 user3 to be assigned in an other component (see below) + +p intensity flux [n/s or n/cm^2/s] +ncounts n neutron [1] neutron ID, i.e current event index +pixel id [1] pixelID in histogram made of preceeding vars, e.g. 'theta y'. To set an offset PixelID use the 'min=value' keyword. Sets event mode. + +Other options keywords are: +abs Will monitor the abs of the following variable or of the signal (if used after all variables) +auto Automatically set detector limits for one/all +all {limits|bins|auto} To set all limits or bins values or auto mode +binary {float|double} with 'source' option, saves in compact files +bins=[bins=20] Number of bins in the detector along dimension +borders To also count off-limits neutrons (X < min or X > max) +capture weight by lambda/lambda(2200m/s) capture flux +file=string Detector image file name. default is component name, plus date and variable extension. +incoming Monitor incoming beam in non flat det +limits=[min max] Lower/Upper limits for axes (see up for the variable unit) +list=[counts=1000] or all For a long file of neutron characteristics with [counts] or all events +log Will monitor the log of the following variable or of the signal (if used after all variables) +min=[min_value] Same as limits, but only sets the min or max +max=[max_value] +multiple Create multiple independant 1D monitors files +no or not Revert next option +outgoing Monitor outgoing beam (default) +parallel Use this option when the next component is at the same position (parallel components) +per cm2 Intensity will be per cm^2 (detector area). Displays beam section. +per steradian Displays beam solid angle in steradian +premonitor Will monitor neutron parameters stored previously with PreMonitor_nD. +signal=[var] Will monitor [var] instead of usual intensity +slit or absorb Absorb neutrons that are out detector +source The monitor will save neutron states +inactivate To inactivate detector (0D detector) +verbose To display additional informations +3He_pressure=[3 in bars] The 3He gas pressure in detector. 3He_pressure=0 is perfect detector (default) + +Detector shape options (specified as xwidth,yheight,zdepth or x/y/z/min/max) +box Box of size xwidth, yheight, zdepth. +cylinder To get a cylindrical monitor (diameter is xwidth or set radius, height is yheight). +banana Same as cylinder, without top/bottom, on restricted angular area; use theta variable with limits to define arc. (diameter is xwidth or set radius, height is yheight). +disk Disk flat xy monitor. diameter is xwidth. +sphere To get a spherical monitor (e.g. a 4PI) (diameter is xwidth or set radius). +square Square flat xy monitor (xwidth, yheight). +previous The monitor uses PREVIOUS component as detector surface. Or use 'geometry' parameter to specify any PLY/OFF geometry file. + +EXAMPLES: +
      +
    • MyMon = Monitor_nD(xwidth = 0.1, yheight = 0.1, zdepth = 0, +  options = "intensity per cm2 angle,limits=[-5 5] bins=10,with +  borders, file = mon1"); +will monitor neutron angle from [z] axis, between -5 +and 5 degrees, in 10 bins, into "mon1.A" output 1D file + +
    • options = "sphere theta phi outgoing" +for a sphere PSD detector (out beam) and saves into file "MyMon_[Date_ID].th_ph" + +
    • options = "banana, theta limits=[10,130], bins=120, y" +a theta/height banana detector + +
    • options = "angle radius all auto" +is a 2D monitor with automatic limits + +
    • options = "list=1000 kx ky kz energy" +records 1000 neutron event in a file + +
    • options = "multiple kx ky kz, auto abs log t, and list all neutrons" +makes 4 output 1D files and produces a complete list for all neutrons +and monitor log(abs(tof)) within automatic limits (for t) + +
    • options = "theta y, sphere, pixel min=100" +a 4pi detector which outputs an event list with pixelID from the actual +detector surface, starting from index 100. + +
    +To dynamically define a number of bins, or limits: +Use in DECLARE: char op[256]; +Use in INITIALIZE: sprintf(op, "lambda limits=[%g %g], bins=%i", lmin, lmax, lbin); +Use in TRACE: Monitor_nD(... options=op ...) + +How to monitor any instrument/component variable into a Monitor_nD +Suppose you want to monitor a variable 'age' which you assign somwhere in +the instrument: +COMPONENT MyMonitor = Monitor_nD( +xwidth = 0.1, yheight = 0.1, +user1="age", username1="Age of the Captain [years]", +options="user1, auto") +AT ... + +See also the example in PreMonitor_nD to +monitor neutron parameters cross-correlations. + +%BUGS +The 'auto' option for guessing optimal variable bounds should NOT be used with MPI +as each process may use different limits. +\end{lstlisting} + +\subsection*{Input parameters} +Parameters in \textbf{boldface} are required; the others are optional. + +\begin{longtable}{p{0.22\textwidth}p{0.12\textwidth}p{0.46\textwidth}p{0.14\textwidth}} +\toprule +\textbf{Name} & \textbf{Unit} & \textbf{Description} & \textbf{Default} \\ +\midrule +\endhead +user1 & str & Variable name of USERVAR to be monitored by user1. & "" \\ +user2 & str & Variable name of USERVAR to be monitored by user2. & "" \\ +user3 & str & Variable name of USERVAR to be monitored by user3. & "" \\ +xwidth & m & Width of detector. & 0 \\ +yheight & m & Height of detector. & 0 \\ +zdepth & m & Thickness of detector (z). & 0 \\ +xmin & m & Lower x bound of opening & 0 \\ +xmax & m & Upper x bound of opening & 0 \\ +ymin & m & Lower y bound of opening & 0 \\ +ymax & m & Upper y bound of opening & 0 \\ +zmin & m & Lower z bound of opening & 0 \\ +zmax & m & Upper z bound of opening & 0 \\ +bins & 1 & Number of bins to force for all variables. Use 'bins' keyword in 'options' for heterogeneous bins & 0 \\ +min & u & Minimum range value to force for all variables. Use 'min' or 'limits' keyword in 'options' for other limits & -1e40 \\ +max & u & Maximum range value to force for all variables. Use 'max' or 'limits' keyword in 'options' for other limits & 1e40 \\ +restore\_neutron & 0|1 & If set, the monitor does not influence the neutron state. Equivalent to setting the 'parallel' option. & 0 \\ +radius & m & Radius of sphere/banana shape monitor & 0 \\ +options & str & String that specifies the configuration of the monitor. The general syntax is "[x] options..." (see \textless{}b\textgreater{}Descr.\textless{}/b\textgreater{}). & "NULL" \\ +filename & str & Output file name (overrides file=XX option). & "NULL" \\ +geometry & str & Name of an OFF file to specify a complex geometry detector & "NULL" \\ +nowritefile & 1 & If set, monitor will skip writing to disk & 0 \\ +nexus\_bins & 1 & NeXus mode only: store component BIN information \textless{}br\textgreater{}(-1 disable, 0 enable for list mode monitor, 1 enable for any montor) & 0 \\ +username1 & str & Name assigned to User1 & "NULL" \\ +username2 & str & Name assigned to User2 & "NULL" \\ +username3 & str & Name assigned to User3 & "NULL" \\ +\bottomrule +\end{longtable} + +\subsection*{Links} +\begin{itemize} + \item \href{run:/home/willend/willend-McCode/mcstas-comps/monitors/Monitor_nD_noacc.comp}{Source code} for \texttt{Monitor\_nD\_noacc.comp}. + \item \textless{}a href="PreMonitor\_nD.html"\textgreater{}PreMonitor\_nD\textless{}/a\textgreater{} +\end{itemize} +\IfFileExists{Monitor_nD_noacc_static.tex}{\input{Monitor_nD_noacc_static.tex}}{} \ No newline at end of file diff --git a/docs/manuals/mcstas/monitors/PSD_TOF_monitor.tex b/docs/manuals/mcstas/monitors/PSD_TOF_monitor.tex new file mode 100644 index 000000000..980109f9d --- /dev/null +++ b/docs/manuals/mcstas/monitors/PSD_TOF_monitor.tex @@ -0,0 +1,50 @@ +\section{The \texttt{PSD\_TOF\_monitor} McStas Component} +Position-sensitive monitor with TOF slices. + +\subsection*{Identification} +\begin{itemize} + \item \textbf{Site:} + \item \textbf{Author:} Peter Willendrup, derived from PSD\_monitor by Kim Lefmann + \item \textbf{Origin:} Risoe + \item \textbf{Date:} Feb 3, 1998 +\end{itemize} + +\subsection*{Description} +\begin{lstlisting} +An (nx times ny) pixel PSD monitor with nt time bins pr pixel. + +Will output nt PSD images plus 1 integrated image. + +Example: PSD_TOF_monitor(xmin=-0.1, xmax=0.1, ymin=-0.1, ymax=0.1, nx=90, ny=90, tmin=4000, tmax=7000, nt=3, filename="Output") +\end{lstlisting} + +\subsection*{Input parameters} +Parameters in \textbf{boldface} are required; the others are optional. + +\begin{longtable}{p{0.22\textwidth}p{0.12\textwidth}p{0.46\textwidth}p{0.14\textwidth}} +\toprule +\textbf{Name} & \textbf{Unit} & \textbf{Description} & \textbf{Default} \\ +\midrule +\endhead +nx & 1 & Number of pixel columns & 90 \\ +ny & 1 & Number of pixel rows & 90 \\ +nt & 1 & Number of TOF bins & 10 \\ +restore\_neutron & 1 & If set, the monitor does not influence the neutron state & 0 \\ +filename & string & Name of file in which to store the detector image & 0 \\ +xmin & m & Lower x bound of detector opening & 0 \\ +xmax & m & Upper x bound of detector opening & 0 \\ +ymin & m & Lower y bound of detector opening & 0 \\ +ymax & m & Upper y bound of detector opening & 0 \\ +xwidth & m & Width/diameter of detector (x). Overrides xmin, xmax & 0 \\ +yheight & m & Height of detector (y). Overrides ymin, ymax & 0 \\ +tmin & mu-s & Lower time bound & 0 \\ +tmax & mu-s & Upper time bound & 0 \\ +nowritefile & 1 & If set, monitor will skip writing to disk & 0 \\ +\bottomrule +\end{longtable} + +\subsection*{Links} +\begin{itemize} + \item \href{run:/home/willend/willend-McCode/mcstas-comps/monitors/PSD_TOF_monitor.comp}{Source code} for \texttt{PSD\_TOF\_monitor.comp}. +\end{itemize} +\IfFileExists{PSD_TOF_monitor_static.tex}{\input{PSD_TOF_monitor_static.tex}}{} \ No newline at end of file diff --git a/docs/manuals/mcstas/monitors/PSD_monitor.tex b/docs/manuals/mcstas/monitors/PSD_monitor.tex new file mode 100644 index 000000000..dfd09583c --- /dev/null +++ b/docs/manuals/mcstas/monitors/PSD_monitor.tex @@ -0,0 +1,46 @@ +\section{The \texttt{PSD\_monitor} McStas Component} +Position-sensitive monitor. + +\subsection*{Identification} +\begin{itemize} + \item \textbf{Site:} + \item \textbf{Author:} Kim Lefmann + \item \textbf{Origin:} Risoe + \item \textbf{Date:} Feb 3, 1998 +\end{itemize} + +\subsection*{Description} +\begin{lstlisting} +An (n times m) pixel PSD monitor. This component may also be used as a beam +detector. + +Example: PSD_monitor(xmin=-0.1, xmax=0.1, ymin=-0.1, ymax=0.1, nx=90, ny=90, filename="Output.psd") +\end{lstlisting} + +\subsection*{Input parameters} +Parameters in \textbf{boldface} are required; the others are optional. + +\begin{longtable}{p{0.22\textwidth}p{0.12\textwidth}p{0.46\textwidth}p{0.14\textwidth}} +\toprule +\textbf{Name} & \textbf{Unit} & \textbf{Description} & \textbf{Default} \\ +\midrule +\endhead +nx & 1 & Number of pixel columns & 90 \\ +ny & 1 & Number of pixel rows & 90 \\ +filename & string & Name of file in which to store the detector image & 0 \\ +xmin & m & Lower x bound of detector opening & -0.05 \\ +xmax & m & Upper x bound of detector opening & 0.05 \\ +ymin & m & Lower y bound of detector opening & -0.05 \\ +ymax & m & Upper y bound of detector opening & 0.05 \\ +xwidth & m & Width of detector. Overrides xmin, xmax & 0 \\ +yheight & m & Height of detector. Overrides ymin, ymax & 0 \\ +restore\_neutron & 1 & If set, the monitor does not influence the neutron state & 0 \\ +nowritefile & 1 & If set, monitor will skip writing to disk & 0 \\ +\bottomrule +\end{longtable} + +\subsection*{Links} +\begin{itemize} + \item \href{run:/home/willend/willend-McCode/mcstas-comps/monitors/PSD_monitor.comp}{Source code} for \texttt{PSD\_monitor.comp}. +\end{itemize} +\IfFileExists{PSD_monitor_static.tex}{\input{PSD_monitor_static.tex}}{} \ No newline at end of file diff --git a/docs/manuals/mcstas/monitors/PSD_monitor_4PI.tex b/docs/manuals/mcstas/monitors/PSD_monitor_4PI.tex new file mode 100644 index 000000000..65dd2395f --- /dev/null +++ b/docs/manuals/mcstas/monitors/PSD_monitor_4PI.tex @@ -0,0 +1,43 @@ +\section{The \texttt{PSD\_monitor\_4PI} McStas Component} +Spherical position-sensitive detector. + +\subsection*{Identification} +\begin{itemize} + \item \textbf{Site:} + \item \textbf{Author:} Kim Lefmann and Kristian Nielsen + \item \textbf{Origin:} Risoe + \item \textbf{Date:} April 17, 1998 +\end{itemize} + +\subsection*{Description} +\begin{lstlisting} +An (n times m) pixel spherical PSD monitor using a cylindrical projection. +Mostly for test and debugging purposes. + +Example: PSD_monitor_4PI(radius=0.1, nx=90, ny=90, filename="Output.psd") +\end{lstlisting} + +\subsection*{Input parameters} +Parameters in \textbf{boldface} are required; the others are optional. + +\begin{longtable}{p{0.22\textwidth}p{0.12\textwidth}p{0.46\textwidth}p{0.14\textwidth}} +\toprule +\textbf{Name} & \textbf{Unit} & \textbf{Description} & \textbf{Default} \\ +\midrule +\endhead +nx & 1 & Number of pixel columns & 90 \\ +ny & 1 & Number of pixel rows & 90 \\ +filename & string & Name of file in which to store the detector image & 0 \\ +nowritefile & 1 & If set, monitor will skip writing to disk & 0 \\ +radius & m & Radius of detector & 1 \\ +restore\_neutron & 1 & If set, the monitor does not influence the neutron state & 0 \\ +\bottomrule +\end{longtable} + +\subsection*{Links} +\begin{itemize} + \item \href{run:/home/willend/willend-McCode/mcstas-comps/monitors/PSD_monitor_4PI.comp}{Source code} for \texttt{PSD\_monitor\_4PI.comp}. + \item \textless{}A HREF="http://neutron.risoe.dk/mcstas/components/tests/powder/"\textgreater{}Test + \item results\textless{}/A\textgreater{} (not up-to-date). +\end{itemize} +\IfFileExists{PSD_monitor_4PI_static.tex}{\input{PSD_monitor_4PI_static.tex}}{} \ No newline at end of file diff --git a/docs/manuals/mcstas/monitors/PSD_monitor_4PI_spin.tex b/docs/manuals/mcstas/monitors/PSD_monitor_4PI_spin.tex new file mode 100644 index 000000000..40a3df043 --- /dev/null +++ b/docs/manuals/mcstas/monitors/PSD_monitor_4PI_spin.tex @@ -0,0 +1,44 @@ +\section{The \texttt{PSD\_monitor\_4PI\_spin} McStas Component} +Spherical position-sensitive detector with spin weighting + +\subsection*{Identification} +\begin{itemize} + \item \textbf{Site:} + \item \textbf{Author:} Erik B Knudsen + \item \textbf{Origin:} DTU + \item \textbf{Date:} April 17, 2010 +\end{itemize} + +\subsection*{Description} +\begin{lstlisting} +An (n times m) pixel spherical PSD monitor using a cylindrical projection. +Mostly for test and debugging purposes. + +Example: PSD_monitor_4PI(radius=0.1, +nx=90, ny=90, filename="Output.psd") +\end{lstlisting} + +\subsection*{Input parameters} +Parameters in \textbf{boldface} are required; the others are optional. + +\begin{longtable}{p{0.22\textwidth}p{0.12\textwidth}p{0.46\textwidth}p{0.14\textwidth}} +\toprule +\textbf{Name} & \textbf{Unit} & \textbf{Description} & \textbf{Default} \\ +\midrule +\endhead +nx & 1 & Number of pixel columns & 90 \\ +ny & 1 & Number of pixel rows & 90 \\ +\textbf{radius} & m & Radius of detector & \\ +filename & str & Name of file in which to store the detector image & 0 \\ +restore\_neutron & 1 & If set, the monitor does not influence the neutron state x & 0 \\ +mx & 1 & x-component of spin reference-vector & 0 \\ +my & 1 & y-component of spin reference-vector & 1 \\ +mz & 1 & z-component of spin reference-vector & 0 \\ +\bottomrule +\end{longtable} + +\subsection*{Links} +\begin{itemize} + \item \href{run:/home/willend/willend-McCode/mcstas-comps/monitors/PSD_monitor_4PI_spin.comp}{Source code} for \texttt{PSD\_monitor\_4PI\_spin.comp}. +\end{itemize} +\IfFileExists{PSD_monitor_4PI_spin_static.tex}{\input{PSD_monitor_4PI_spin_static.tex}}{} \ No newline at end of file diff --git a/docs/manuals/mcstas/monitors/PSD_monitor_TOF.tex b/docs/manuals/mcstas/monitors/PSD_monitor_TOF.tex new file mode 100644 index 000000000..8294cdad0 --- /dev/null +++ b/docs/manuals/mcstas/monitors/PSD_monitor_TOF.tex @@ -0,0 +1,50 @@ +\section{The \texttt{PSD\_monitor\_TOF} McStas Component} +Position-sensitive monitor with a TOF signal pr. bin. + +\subsection*{Identification} +\begin{itemize} + \item \textbf{Site:} + \item \textbf{Author:} Peter Willendrup, derived from PSD\_monitor by Kim Lefmann + \item \textbf{Origin:} Risoe + \item \textbf{Date:} Feb 3, 1998 +\end{itemize} + +\subsection*{Description} +\begin{lstlisting} +An (nx times ny) pixel PSD monitor with nt time bins pr pixel. + +Will output 1 integrated PSD images plus an nt time bin TOF signal pr pixel. + +Example: PSD_monitor_TOF(xmin=-0.1, xmax=0.1, ymin=-0.1, ymax=0.1, nx=90, ny=90, tmin=4000, tmax=7000, nt=1000, filename="Output") +\end{lstlisting} + +\subsection*{Input parameters} +Parameters in \textbf{boldface} are required; the others are optional. + +\begin{longtable}{p{0.22\textwidth}p{0.12\textwidth}p{0.46\textwidth}p{0.14\textwidth}} +\toprule +\textbf{Name} & \textbf{Unit} & \textbf{Description} & \textbf{Default} \\ +\midrule +\endhead +nx & 1 & Number of pixel columns & 90 \\ +ny & 1 & Number of pixel rows & 90 \\ +nt & 1 & Number of TOF bins & 10 \\ +restore\_neutron & 1 & If set, the monitor does not influence the neutron state & 0 \\ +filename & string & Name of file in which to store the detector image & 0 \\ +nowritefile & 1 & If set, monitor will skip writing to disk & 0 \\ +xmin & m & Lower x bound of detector opening & 0 \\ +xmax & m & Upper x bound of detector opening & 0 \\ +ymin & m & Lower y bound of detector opening & 0 \\ +ymax & m & Upper y bound of detector opening & 0 \\ +xwidth & m & Width/diameter of detector (x). Overrides xmin, xmax & 0 \\ +yheight & m & Height of detector (y). Overrides ymin, ymax & 0 \\ +tmin & mu-s & Lower time bound & 0 \\ +tmax & mu-s & Upper time bound & 0 \\ +\bottomrule +\end{longtable} + +\subsection*{Links} +\begin{itemize} + \item \href{run:/home/willend/willend-McCode/mcstas-comps/monitors/PSD_monitor_TOF.comp}{Source code} for \texttt{PSD\_monitor\_TOF.comp}. +\end{itemize} +\IfFileExists{PSD_monitor_TOF_static.tex}{\input{PSD_monitor_TOF_static.tex}}{} \ No newline at end of file diff --git a/docs/manuals/mcstas/monitors/PSD_monitor_psf.tex b/docs/manuals/mcstas/monitors/PSD_monitor_psf.tex new file mode 100644 index 000000000..c181ff13b --- /dev/null +++ b/docs/manuals/mcstas/monitors/PSD_monitor_psf.tex @@ -0,0 +1,47 @@ +\section{The \texttt{PSD\_monitor\_psf} McStas Component} +Position-sensitive monitor. + +\subsection*{Identification} +\begin{itemize} + \item \textbf{Site:} + \item \textbf{Author:} Kim Lefmann, Linda Udby + \item \textbf{Origin:} Risoe + \item \textbf{Date:} Feb 3, 1998 +\end{itemize} + +\subsection*{Description} +\begin{lstlisting} +An (n times m) pixel PSD monitor. This component may also be used as a beam +detector. + +Example: PSD_monitor(xmin=-0.1, xmax=0.1, ymin=-0.1, ymax=0.1, nx=90, ny=90, filename="Output.psd") +\end{lstlisting} + +\subsection*{Input parameters} +Parameters in \textbf{boldface} are required; the others are optional. + +\begin{longtable}{p{0.22\textwidth}p{0.12\textwidth}p{0.46\textwidth}p{0.14\textwidth}} +\toprule +\textbf{Name} & \textbf{Unit} & \textbf{Description} & \textbf{Default} \\ +\midrule +\endhead +nx & 1 & Number of pixel columns & 90 \\ +ny & 1 & Number of pixel rows & 90 \\ +restore\_neutron & 1 & If set, the monitor does not influence the neutron state & 0 \\ +filename & string & Name of file in which to store the detector image & 0 \\ +nowritefile & 1 & If set, monitor will skip writing to disk & 0 \\ +xmin & m & Lower x bound of detector opening & 0 \\ +xmax & m & Upper x bound of detector opening & 0 \\ +ymin & m & Lower y bound of detector opening & 0 \\ +ymax & m & Upper y bound of detector opening & 0 \\ +xwidth & m & Width/diameter of detector (x). Overrides xmin, xmax & 0 \\ +yheight & m & Height of detector (y). Overrides ymin, ymax & 0 \\ +psf & m & Point spread function, ray (x,y) coordinate randomized by gaussion of sigma psf & 0 \\ +\bottomrule +\end{longtable} + +\subsection*{Links} +\begin{itemize} + \item \href{run:/home/willend/willend-McCode/mcstas-comps/monitors/PSD_monitor_psf.comp}{Source code} for \texttt{PSD\_monitor\_psf.comp}. +\end{itemize} +\IfFileExists{PSD_monitor_psf_static.tex}{\input{PSD_monitor_psf_static.tex}}{} \ No newline at end of file diff --git a/docs/manuals/mcstas/monitors/PSD_monitor_psf_eff.tex b/docs/manuals/mcstas/monitors/PSD_monitor_psf_eff.tex new file mode 100644 index 000000000..c791263e0 --- /dev/null +++ b/docs/manuals/mcstas/monitors/PSD_monitor_psf_eff.tex @@ -0,0 +1,49 @@ +\section{The \texttt{PSD\_monitor\_psf\_eff} McStas Component} +Position-sensitive monitor. + +\subsection*{Identification} +\begin{itemize} + \item \textbf{Site:} + \item \textbf{Author:} Kim Lefmann, Linda Udby + \item \textbf{Origin:} Risoe + \item \textbf{Date:} Feb 3, 1998 +\end{itemize} + +\subsection*{Description} +\begin{lstlisting} +An (n times m) pixel PSD monitor. This component may also be used as a beam +detector. Models 1/k behaviour and efficiency, based on user defined k0 and eff parameters. + +Example: PSD_monitor(xmin=-0.1, xmax=0.1, ymin=-0.1, ymax=0.1, nx=90, ny=90, filename="Output.psd") +\end{lstlisting} + +\subsection*{Input parameters} +Parameters in \textbf{boldface} are required; the others are optional. + +\begin{longtable}{p{0.22\textwidth}p{0.12\textwidth}p{0.46\textwidth}p{0.14\textwidth}} +\toprule +\textbf{Name} & \textbf{Unit} & \textbf{Description} & \textbf{Default} \\ +\midrule +\endhead +nx & 1 & Number of pixel columns & 90 \\ +ny & 1 & Number of pixel rows & 90 \\ +filename & string & Name of file in which to store the detector image & 0 \\ +xmin & m & Lower x bound of detector opening & 0 \\ +xmax & m & Upper x bound of detector opening & 0 \\ +ymin & m & Lower y bound of detector opening & 0 \\ +ymax & m & Upper y bound of detector opening & 0 \\ +nowritefile & 1 & If set, monitor will skip writing to disk & 0 \\ +xwidth & m & Width/diameter of detector (x). Overrides xmin, xmax & 0 \\ +yheight & m & Height of detector (y). Overrides ymin, ymax & 0 \\ +psf & m & Point spread function, ray (x,y) coordinate randomized by gaussion of sigma psf & 0 \\ +k0 & AA\textasciicircum{}-1 & Numerator in k0/k weighting & 1 \\ +eff & 1 & Detector efficiency & 1 \\ +restore\_neutron & 1 & If set, the monitor does not influence the neutron state & 0 \\ +\bottomrule +\end{longtable} + +\subsection*{Links} +\begin{itemize} + \item \href{run:/home/willend/willend-McCode/mcstas-comps/monitors/PSD_monitor_psf_eff.comp}{Source code} for \texttt{PSD\_monitor\_psf\_eff.comp}. +\end{itemize} +\IfFileExists{PSD_monitor_psf_eff_static.tex}{\input{PSD_monitor_psf_eff_static.tex}}{} \ No newline at end of file diff --git a/docs/manuals/mcstas/monitors/PSDcyl_monitor.tex b/docs/manuals/mcstas/monitors/PSDcyl_monitor.tex new file mode 100644 index 000000000..f156354c0 --- /dev/null +++ b/docs/manuals/mcstas/monitors/PSDcyl_monitor.tex @@ -0,0 +1,45 @@ +\section{The \texttt{PSDcyl\_monitor} McStas Component} +A 2D Position-sensitive monitor. The shape is cylindrical with +the axis vertical. The monitor covers the whole cylinder (360 degrees). + +\subsection*{Identification} +\begin{itemize} + \item \textbf{Site:} + \item \textbf{Author:} Kim Lefmann + \item \textbf{Origin:} Risoe + \item \textbf{Date:} October 26, 2000 +\end{itemize} + +\subsection*{Description} +\begin{lstlisting} +An (n times m) pixel PSD monitor with cylinder shape, +vertical axis, centered at (0,0,0). + +Example: PSDcyl_monitor(nr=20, ny=20, filename="Output.cyl", yheight=0.2, radius=0.1) +\end{lstlisting} + +\subsection*{Input parameters} +Parameters in \textbf{boldface} are required; the others are optional. + +\begin{longtable}{p{0.22\textwidth}p{0.12\textwidth}p{0.46\textwidth}p{0.14\textwidth}} +\toprule +\textbf{Name} & \textbf{Unit} & \textbf{Description} & \textbf{Default} \\ +\midrule +\endhead +nr & 1 & Number of pixel (radial) columns & 20 \\ +ny & 1 & Number of pixel rows & 20 \\ +filename & string & Name of file in which to store the detector image & 0 \\ +yheight & m & Height of detector & 0.3 \\ +radius & m & Radius of detector & 1 \\ +restore\_neutron & 1 & If set, the monitor does not influence the neutron state & 0 \\ +thmin & deg & Minimum angle covered/measured & 0 \\ +thmax & deg & Maximum angle covered/measured & 360 \\ +nowritefile & 1 & If set, monitor will skip writing to disk & 0 \\ +\bottomrule +\end{longtable} + +\subsection*{Links} +\begin{itemize} + \item \href{run:/home/willend/willend-McCode/mcstas-comps/monitors/PSDcyl_monitor.comp}{Source code} for \texttt{PSDcyl\_monitor.comp}. +\end{itemize} +\IfFileExists{PSDcyl_monitor_static.tex}{\input{PSDcyl_monitor_static.tex}}{} \ No newline at end of file diff --git a/docs/manuals/mcstas/monitors/PSDlin_diff_monitor.tex b/docs/manuals/mcstas/monitors/PSDlin_diff_monitor.tex new file mode 100644 index 000000000..7b5fcc80d --- /dev/null +++ b/docs/manuals/mcstas/monitors/PSDlin_diff_monitor.tex @@ -0,0 +1,44 @@ +\section{The \texttt{PSDlin\_diff\_monitor} McStas Component} +Rectangular 1D PSD, measuring intensity vs. horizontal position, x +A second monitor shows the difference of intensities between in n'th and (n-1)'th pixels. + +\subsection*{Identification} +\begin{itemize} + \item \textbf{Site:} + \item \textbf{Author:} Kim Lefmann, Peter Willendrup, Linda Udby + \item \textbf{Origin:} Risoe + \item \textbf{Date:} May 7, 2001 +\end{itemize} + +\subsection*{Description} +\begin{lstlisting} +Example: PSDlin_diff_monitor(nx=20, filename="Output.x", +xmin=-0.1, xmax=0.1, ymin=-0.1, ymax=0.1) +\end{lstlisting} + +\subsection*{Input parameters} +Parameters in \textbf{boldface} are required; the others are optional. + +\begin{longtable}{p{0.22\textwidth}p{0.12\textwidth}p{0.46\textwidth}p{0.14\textwidth}} +\toprule +\textbf{Name} & \textbf{Unit} & \textbf{Description} & \textbf{Default} \\ +\midrule +\endhead +nx & 1 & Number of x bins & 20 \\ +filename & string & Name of file in which to store the detector image & 0 \\ +xmin & m & Lower x bound of detector opening & -0.05 \\ +xmax & m & Upper x bound of detector opening & 0.05 \\ +ymin & m & Lower y bound of detector opening & -0.05 \\ +ymax & m & Upper y bound of detector opening & 0.05 \\ +nowritefile & 1 & If set, monitor will skip writing to disk & 0 \\ +xwidth & m & Width of detector. Overrides xmin,xmax. & 0 \\ +yheight & m & Height of detector. Overrides ymin,ymax. & 0 \\ +restore\_neutron & 1 & If set, the monitor does not influence the neutron state & 0 \\ +\bottomrule +\end{longtable} + +\subsection*{Links} +\begin{itemize} + \item \href{run:/home/willend/willend-McCode/mcstas-comps/monitors/PSDlin_diff_monitor.comp}{Source code} for \texttt{PSDlin\_diff\_monitor.comp}. +\end{itemize} +\IfFileExists{PSDlin_diff_monitor_static.tex}{\input{PSDlin_diff_monitor_static.tex}}{} \ No newline at end of file diff --git a/docs/manuals/mcstas/monitors/PSDlin_monitor.tex b/docs/manuals/mcstas/monitors/PSDlin_monitor.tex new file mode 100644 index 000000000..a8d76f511 --- /dev/null +++ b/docs/manuals/mcstas/monitors/PSDlin_monitor.tex @@ -0,0 +1,47 @@ +\section{The \texttt{PSDlin\_monitor} McStas Component} +Rectangular 1D PSD, measuring intensity vs. position along an axis, + +\subsection*{Identification} +\begin{itemize} + \item \textbf{Site:} + \item \textbf{Author:} Kim Lefmann + \item \textbf{Origin:} Risoe + \item \textbf{Date:} May 7, 2001 +\end{itemize} + +\subsection*{Description} +\begin{lstlisting} +A 1-dimensional PSD measuring intensity along either the horizontal axis x (default) or +the vertical axis y. + + +Example: PSDlin_monitor(nbins=20, filename="Output.x", xmin=-0.1, xmax=0.1, ymin=-0.1, ymax=0.1) +\end{lstlisting} + +\subsection*{Input parameters} +Parameters in \textbf{boldface} are required; the others are optional. + +\begin{longtable}{p{0.22\textwidth}p{0.12\textwidth}p{0.46\textwidth}p{0.14\textwidth}} +\toprule +\textbf{Name} & \textbf{Unit} & \textbf{Description} & \textbf{Default} \\ +\midrule +\endhead +nbins & 1 & Number of positional bins. & 20 \\ +filename & str & Name of file in which to store the detector image. & 0 \\ +xmin & m & Lower x bound of detector opening. & -0.05 \\ +xmax & m & Upper x bound of detector opening. & 0.05 \\ +ymin & m & Lower y bound of detector opening. & -0.05 \\ +ymax & m & Upper y bound of detector opening. & 0.05 \\ +nowritefile & 1 & If set, monitor will skip writing to disk & 0 \\ +xwidth & m & Width of detector. Overrides xmin, xmax. & 0 \\ +yheight & m & Height of detector. Overrides ymin, ymax. & 0 \\ +restore\_neutron & 1 & If set, the monitor does not influence the neutron state. & 0 \\ +vertical & 1 & Flag to indicate whether the monitor measures along the horiz. or vert. axis & 0 \\ +\bottomrule +\end{longtable} + +\subsection*{Links} +\begin{itemize} + \item \href{run:/home/willend/willend-McCode/mcstas-comps/monitors/PSDlin_monitor.comp}{Source code} for \texttt{PSDlin\_monitor.comp}. +\end{itemize} +\IfFileExists{PSDlin_monitor_static.tex}{\input{PSDlin_monitor_static.tex}}{} \ No newline at end of file diff --git a/docs/manuals/mcstas/monitors/PolLambda_monitor.tex b/docs/manuals/mcstas/monitors/PolLambda_monitor.tex new file mode 100644 index 000000000..ed023b9dc --- /dev/null +++ b/docs/manuals/mcstas/monitors/PolLambda_monitor.tex @@ -0,0 +1,48 @@ +\section{The \texttt{PolLambda\_monitor} McStas Component} +Polarisation and wavelength sensitive monitor. + +\subsection*{Identification} +\begin{itemize} + \item \textbf{Site:} + \item \textbf{Author:} Peter Christiansen + \item \textbf{Origin:} Risoe + \item \textbf{Date:} July 2006 +\end{itemize} + +\subsection*{Description} +\begin{lstlisting} +A square single monitor that measures the projection of the +polarisation along a given normalized m-vector (mx, my, mz) as a +function of wavelength. + +Example: Pollambda_monitor(Lmin=1, Lmax=20, nL=20, xwidth=0.1, yheight=0.1, npol=11, mx=0, my=1, mz=0, filename="pollambdaMon.data") +\end{lstlisting} + +\subsection*{Input parameters} +Parameters in \textbf{boldface} are required; the others are optional. + +\begin{longtable}{p{0.22\textwidth}p{0.12\textwidth}p{0.46\textwidth}p{0.14\textwidth}} +\toprule +\textbf{Name} & \textbf{Unit} & \textbf{Description} & \textbf{Default} \\ +\midrule +\endhead +xwidth & m & Width of detector & 0.1 \\ +yheight & m & Height of detector & 0.1 \\ +nL & 1 & Number of bins in wavelength & 20 \\ +npol & 1 & Number of bins in Pol & 21 \\ +restore\_neutron & 1 & If set, the monitor does not influence the neutron state & 0 \\ +filename & string & Name of file in which to store the data & 0 \\ +nowritefile & 1 & If set, monitor will skip writing to disk & 0 \\ +mx & 1 & X-component of monitor vector (can be negative) & 0 \\ +my & 1 & Y-component of monitor vector (can be negative) & 0 \\ +mz & 1 & Z-component of monitor vector (can be negative) & 0 \\ +\textbf{Lmin} & AA & Minimum wavelength detected & \\ +\textbf{Lmax} & AA & Maximum wavelength detected & \\ +\bottomrule +\end{longtable} + +\subsection*{Links} +\begin{itemize} + \item \href{run:/home/willend/willend-McCode/mcstas-comps/monitors/PolLambda_monitor.comp}{Source code} for \texttt{PolLambda\_monitor.comp}. +\end{itemize} +\IfFileExists{PolLambda_monitor_static.tex}{\input{PolLambda_monitor_static.tex}}{} \ No newline at end of file diff --git a/docs/manuals/mcstas/monitors/Pol_monitor.tex b/docs/manuals/mcstas/monitors/Pol_monitor.tex new file mode 100644 index 000000000..c128326fb --- /dev/null +++ b/docs/manuals/mcstas/monitors/Pol_monitor.tex @@ -0,0 +1,43 @@ +\section{The \texttt{Pol\_monitor} McStas Component} +Polarisation sensitive monitor. + +\subsection*{Identification} +\begin{itemize} + \item \textbf{Site:} + \item \textbf{Author:} Peter Christiansen + \item \textbf{Origin:} Risoe + \item \textbf{Date:} July 2006 +\end{itemize} + +\subsection*{Description} +\begin{lstlisting} +A square single monitor that measures the projection of the +polarisation along a given normalized m-vector (mx, my, mz). +The measured quantity is: sx*mx+sy*my+mz*sz + +Example: Pol_monitor(xwidth=0.1, yheight=0.1, nchan=11, mx=0, my=1, mz=0) +\end{lstlisting} + +\subsection*{Input parameters} +Parameters in \textbf{boldface} are required; the others are optional. + +\begin{longtable}{p{0.22\textwidth}p{0.12\textwidth}p{0.46\textwidth}p{0.14\textwidth}} +\toprule +\textbf{Name} & \textbf{Unit} & \textbf{Description} & \textbf{Default} \\ +\midrule +\endhead +xwidth & m & Width of detector & 0.1 \\ +yheight & m & Height of detector & 0.1 \\ +restore\_neutron & 1 & If set, the monitor does not influence the neutron state & 0 \\ +mx & 1 & X-component of monitor vector (can be negative) & 0 \\ +my & 1 & Y-component of monitor vector (can be negative) & 0 \\ +mz & 1 & Z-component of monitor vector (can be negative) & 0 \\ +nowritefile & 1 & If set, monitor will skip writing to disk & 0 \\ +\bottomrule +\end{longtable} + +\subsection*{Links} +\begin{itemize} + \item \href{run:/home/willend/willend-McCode/mcstas-comps/monitors/Pol_monitor.comp}{Source code} for \texttt{Pol\_monitor.comp}. +\end{itemize} +\IfFileExists{Pol_monitor_static.tex}{\input{Pol_monitor_static.tex}}{} \ No newline at end of file diff --git a/docs/manuals/mcstas/monitors/Res_monitor.tex b/docs/manuals/mcstas/monitors/Res_monitor.tex new file mode 100644 index 000000000..bedd9a7ef --- /dev/null +++ b/docs/manuals/mcstas/monitors/Res_monitor.tex @@ -0,0 +1,63 @@ +\section{The \texttt{Res\_monitor} McStas Component} +Monitor for resolution calculations + +\subsection*{Identification} +\begin{itemize} + \item \textbf{Site:} + \item \textbf{Author:} Kristian Nielsen + \item \textbf{Origin:} Risoe + \item \textbf{Date:} 1999 +\end{itemize} + +\subsection*{Description} +\begin{lstlisting} +A single detector/monitor, used together with the Res_sample component to +compute instrument resolution functions. Outputs a list of neutron +scattering events in the sample along with their intensities in the +detector. The output file may be analyzed with the mcresplot front-end. + +Example: Res_monitor(filename="Output.res", res_sample_comp="RSample", xmin=-0.1, xmax=0.1, ymin=-0.1, ymax=0.1) + +Setting the monitor geometry. +The optional parameter 'options' may be set as a string with the +following keywords. Default is rectangular ('square'): +box Box of size xwidth, yheight, zdepth +cylinder To get a cylindrical monitor (diameter is xwidth, height is yheight). +banana Same as cylinder, without top/bottom, on restricted angular area +disk Disk flat xy monitor. diameter is xwidth. +sphrere To get a spherical monitor (e.g. a 4PI) (diameter is xwidth). +square Square flat xy monitor (xwidth, yheight) +\end{lstlisting} + +\subsection*{Input parameters} +Parameters in \textbf{boldface} are required; the others are optional. + +\begin{longtable}{p{0.22\textwidth}p{0.12\textwidth}p{0.46\textwidth}p{0.14\textwidth}} +\toprule +\textbf{Name} & \textbf{Unit} & \textbf{Description} & \textbf{Default} \\ +\midrule +\endhead +\textbf{res\_sample\_comp} & WITH quotes & Name of Res\_sample component in the instrument definition & \\ +filename & string & Name of output file. If unset, use automatic name & 0 \\ +options & str & String that specifies the geometry of the monitor & 0 \\ +xwidth & m & Width/diameter of detector & .1 \\ +yheight & m & Height of detector & .1 \\ +zdepth & m & Thichness of detector & 0 \\ +radius & m & Radius of sphere/cylinder monitor & 0 \\ +xmin & m & Lower x bound of detector opening & 0 \\ +xmax & m & Upper x bound of detector opening & 0 \\ +ymin & m & Lower y bound of detector opening & 0 \\ +ymax & m & Upper y bound of detector opening & 0 \\ +zmin & m & Lower z bound of detector opening & 0 \\ +zmax & m & Upper z bound of detector opening & 0 \\ +bufsize & 1 & Number of events to store. Use 0 to store all & 0 \\ +restore\_neutron & 1 & If set, the monitor does not influence the neutron state & 0 \\ +live\_calc & 1 & If set, the monitor directly outputs the resolution matrix & 1 \\ +\bottomrule +\end{longtable} + +\subsection*{Links} +\begin{itemize} + \item \href{run:/home/willend/willend-McCode/mcstas-comps/monitors/Res_monitor.comp}{Source code} for \texttt{Res\_monitor.comp}. +\end{itemize} +\IfFileExists{Res_monitor_static.tex}{\input{Res_monitor_static.tex}}{} \ No newline at end of file diff --git a/docs/manuals/mcstas/monitors/Sqq_w_monitor.tex b/docs/manuals/mcstas/monitors/Sqq_w_monitor.tex new file mode 100644 index 000000000..a69a85531 --- /dev/null +++ b/docs/manuals/mcstas/monitors/Sqq_w_monitor.tex @@ -0,0 +1,64 @@ +\section{The \texttt{Sqq\_w\_monitor} McStas Component} +Monitor outputting a series of energy-planes in a subset of reciprocal space, spanned by +scattering vectors qa(x,z) and qb(x,z) in the component x-z plane. + +\subsection*{Identification} +\begin{itemize} + \item \textbf{Site:} + \item \textbf{Author:} Peter Willendrup + \item \textbf{Origin:} DTU + \item \textbf{Date:} June-July, 2018 +\end{itemize} + +\subsection*{Description} +\begin{lstlisting} +Cylindrical monitor on the x-z plane outputting a series of energy-planes in a subset of reciprocal +space, spanned by scattering vectors qa(x,z) and qb(x,z). + +The radius and yheight parameters are not used for propagation, but only to define the outgoing divergence +limit considered when estimating k_f + +The assumption is that the "current" neutron represents the final state, whereas the incoming state +is found by restoring the neutron state "index" components earlier. + +Example: Sqq_w_monitor(filename="output",radius=1, yheight=0.05, Emin=0,Emax=5,nE=11,nqa=100,nqb=100,qamin=1,qamax=10,qbmin=1qbmax=10, vix="vix", viy="viy", viz="viz") +AT (0,0,0) RELATIVE sample +\end{lstlisting} + +\subsection*{Input parameters} +Parameters in \textbf{boldface} are required; the others are optional. + +\begin{longtable}{p{0.22\textwidth}p{0.12\textwidth}p{0.46\textwidth}p{0.14\textwidth}} +\toprule +\textbf{Name} & \textbf{Unit} & \textbf{Description} & \textbf{Default} \\ +\midrule +\endhead +radius & m & Cylinder radius & 1 \\ +yheight & m & Cylinder height & 0.05 \\ +qax & 1 & x-component of 1st q-vector & 1 \\ +qaz & 1 & z-component of 1st q-vector & 0 \\ +qbx & 1 & x-component of 2nd q-vector & 0 \\ +qbz & 1 & z-component of 2nd q-vector & 1 \\ +qamin & AA\textasciicircum{}-1 & Defines interval (qamin,qamax) where monitor measures in nqa bins & 0 \\ +qamax & AA\textasciicircum{}-1 & Defines interval (qamin,qamax) where monitor measures in nqa bins & 2 \\ +qbmin & AA\textasciicircum{}-1 & Defines interval (qbmin,qbmax) where monitor measures in nqb bins & 0 \\ +qbmax & AA\textasciicircum{}-1 & Defines interval (qbmin,qbmax) where monitor measures in nqb bins & 2 \\ +Emin & meV & Defines the energy-transfer [Emin,Emax] window to monitor in nE bins & 0 \\ +Emax & meV & Defines the energy-transfer [Emax,Emax] window to monitor in nE bins & 5 \\ +nqa & int & Number of bins along qa direction & 90 \\ +nqb & int & Number of bins along qb direction & 90 \\ +nE & int & Number of energy slices & 10 \\ +filename & string & Base filename to use, nE+1 files will be output & 0 \\ +nowritefile & 1 & If set, monitor will skip writing to disk & 0 \\ +nosum & 1 & If set, monitor will skip writing the energy-summed array to disk & 0 \\ +vix & string & Points to instrument-level USERVAR for reading an earlier x-velocity & "" \\ +viy & string & Points to instrument-level USERVAR for reading an earlier y-velocity & "" \\ +viz & string & Points to instrument-level USERVAR for reading an earlier z-velocity & "" \\ +\bottomrule +\end{longtable} + +\subsection*{Links} +\begin{itemize} + \item \href{run:/home/willend/willend-McCode/mcstas-comps/monitors/Sqq_w_monitor.comp}{Source code} for \texttt{Sqq\_w\_monitor.comp}. +\end{itemize} +\IfFileExists{Sqq_w_monitor_static.tex}{\input{Sqq_w_monitor_static.tex}}{} \ No newline at end of file diff --git a/docs/manuals/mcstas/monitors/Sqw_monitor.tex b/docs/manuals/mcstas/monitors/Sqw_monitor.tex new file mode 100644 index 000000000..7782a6251 --- /dev/null +++ b/docs/manuals/mcstas/monitors/Sqw_monitor.tex @@ -0,0 +1,49 @@ +\section{The \texttt{Sqw\_monitor} McStas Component} +Monitor outputting S(q,w) + +\subsection*{Identification} +\begin{itemize} + \item \textbf{Site:} + \item \textbf{Author:} Peter Willendrup + \item \textbf{Origin:} DTU + \item \textbf{Date:} November, 2020 +\end{itemize} + +\subsection*{Description} +\begin{lstlisting} +The assumption is that the "current" neutron represents the final state, whereas the incoming state +is found by restoring the neutron state "index" components earlier. + +Example: Sqw_monitor(filename="output", Emin=0,Emax=5,nE=11,nq=100,nqb=100,qmin=0,qmax=1,index=-2) +AT (0,0,0) RELATIVE sample +\end{lstlisting} + +\subsection*{Input parameters} +Parameters in \textbf{boldface} are required; the others are optional. + +\begin{longtable}{p{0.22\textwidth}p{0.12\textwidth}p{0.46\textwidth}p{0.14\textwidth}} +\toprule +\textbf{Name} & \textbf{Unit} & \textbf{Description} & \textbf{Default} \\ +\midrule +\endhead +qmin & AA\textasciicircum{}-1 & Defines interval (qmin,qmax) where monitor measures in nq bins & 0 \\ +qmax & AA\textasciicircum{}-1 & Defines interval (qmin,qmax) where monitor measures in nq bins & 2 \\ +Emin & meV & Defines the energy-transfer [Emin,Emax] window to monitor in nE bins & 0 \\ +Emax & meV & Defines the energy-transfer [Emax,Emax] window to monitor in nE bins & 5 \\ +nq & int & Number of bins in q & 90 \\ +nE & int & Number of energy slices & 90 \\ +filename & string & Base filename to use, nE+1 files will be output & 0 \\ +nowritefile & 1 & If set, monitor will skip writing to disk & 0 \\ +vix & string & Points to instrument-level USERVAR for reading an earlier x-velocity & "" \\ +viy & string & Points to instrument-level USERVAR for reading an earlier y-velocity & "" \\ +viz & string & Points to instrument-level USERVAR for reading an earlier z-velocity & "" \\ +radius & m & Cylinder radius (optional) & 0 \\ +yheight & m & Cylinder height (optional) & 0 \\ +\bottomrule +\end{longtable} + +\subsection*{Links} +\begin{itemize} + \item \href{run:/home/willend/willend-McCode/mcstas-comps/monitors/Sqw_monitor.comp}{Source code} for \texttt{Sqw\_monitor.comp}. +\end{itemize} +\IfFileExists{Sqw_monitor_static.tex}{\input{Sqw_monitor_static.tex}}{} \ No newline at end of file diff --git a/docs/manuals/mcstas/monitors/TOF2E_monitor.tex b/docs/manuals/mcstas/monitors/TOF2E_monitor.tex new file mode 100644 index 000000000..bd3826535 --- /dev/null +++ b/docs/manuals/mcstas/monitors/TOF2E_monitor.tex @@ -0,0 +1,49 @@ +\section{The \texttt{TOF2E\_monitor} McStas Component} +TOF-sensitive monitor, converting to energy + +\subsection*{Identification} +\begin{itemize} + \item \textbf{Site:} + \item \textbf{Author:} Kim Lefmann and Helmuth Schoeber + \item \textbf{Origin:} Risoe + \item \textbf{Date:} Sept. 13, 2006 +\end{itemize} + +\subsection*{Description} +\begin{lstlisting} +A square single monitor that measures the energy of the incoming neutrons +from their time-of-flight + +Example: TOF2E_monitor(xmin=-0.1, xmax=0.1, ymin=-0.1, ymax=0.1, Emin=1, Emax=50, nE=20, filename="Output.nrj", L_flight=20, T_zero=0) +\end{lstlisting} + +\subsection*{Input parameters} +Parameters in \textbf{boldface} are required; the others are optional. + +\begin{longtable}{p{0.22\textwidth}p{0.12\textwidth}p{0.46\textwidth}p{0.14\textwidth}} +\toprule +\textbf{Name} & \textbf{Unit} & \textbf{Description} & \textbf{Default} \\ +\midrule +\endhead +nE & 1 & Number of energy channels & 20 \\ +filename & string & Name of file in which to store the detector image & 0 \\ +nowritefile & 1 & If set, monitor will skip writing to disk & 0 \\ +xmin & m & Lower x bound of detector opening & -0.05 \\ +xmax & m & Upper x bound of detector opening & 0.05 \\ +ymin & m & Lower y bound of detector opening & -0.05 \\ +ymax & m & Upper y bound of detector opening & 0.05 \\ +xwidth & m & Width of detector. Overrides xmin, xmax & 0 \\ +yheight & m & Height of detector. Overrides ymin, ymax & 0 \\ +\textbf{Emin} & meV & Minimum energy to detect & \\ +\textbf{Emax} & meV & Maximum energy to detect & \\ +\textbf{T\_zero} & s & Zero point in time & \\ +\textbf{L\_flight} & m & flight length user in conversion & \\ +restore\_neutron & 1 & If set, the monitor does not influence the neutron state & 0 \\ +\bottomrule +\end{longtable} + +\subsection*{Links} +\begin{itemize} + \item \href{run:/home/willend/willend-McCode/mcstas-comps/monitors/TOF2E_monitor.comp}{Source code} for \texttt{TOF2E\_monitor.comp}. +\end{itemize} +\IfFileExists{TOF2E_monitor_static.tex}{\input{TOF2E_monitor_static.tex}}{} \ No newline at end of file diff --git a/docs/manuals/mcstas/monitors/TOF2Q_cylPSD_monitor.tex b/docs/manuals/mcstas/monitors/TOF2Q_cylPSD_monitor.tex new file mode 100644 index 000000000..9f4a87171 --- /dev/null +++ b/docs/manuals/mcstas/monitors/TOF2Q_cylPSD_monitor.tex @@ -0,0 +1,49 @@ +\section{The \texttt{TOF2Q\_cylPSD\_monitor} McStas Component} +Cylindrical (2pi) Time-of-flight to Q monitor. +Calculates Q from TOF and known nominal grazing angle theta: +E = VS2E*(L\_flight/(t-T\_zero))*(L\_flight/(t-T\_zero)); +Q=2*sqrt(E/2.072)*sin(theta); + +\subsection*{Identification} +\begin{itemize} + \item \textbf{Site:} + \item \textbf{Author:} Anette Vickery, derived from Lefmann TOF\_cylPSD + \item \textbf{Origin:} Risoe + \item \textbf{Date:} October 2000 +\end{itemize} + +\subsection*{Description} +\begin{lstlisting} + +\end{lstlisting} + +\subsection*{Input parameters} +Parameters in \textbf{boldface} are required; the others are optional. + +\begin{longtable}{p{0.22\textwidth}p{0.12\textwidth}p{0.46\textwidth}p{0.14\textwidth}} +\toprule +\textbf{Name} & \textbf{Unit} & \textbf{Description} & \textbf{Default} \\ +\midrule +\endhead +\textbf{nQ} & 1 & Number of Q bins & \\ +\textbf{ny} & 1 & Number of y bins & \\ +filename & string & Name of file in which to store the detector image & 0 \\ +nowritefile & 1 & If set, monitor will skip writing to disk & 0 \\ +\textbf{radius} & m & Cylinder radius & \\ +\textbf{yheight} & m & Cylinder height & \\ +\textbf{Qmin} & AA\textasciicircum{}-1 & Beginning of Q-range & \\ +\textbf{Qmax} & AA\textasciicircum{}-1 & End of Q-range & \\ +ymin & m & Minimum value of y monitored & 0 \\ +ymax & m & Maximum value of y monitored & 0 \\ +\textbf{T\_zero} & s & Beginning of time window & \\ +\textbf{L\_flight} & m & Nominal flightpath moderator--detector & \\ +restore\_neutron & 1 & If set, the monitor does not influence the neutron state & 0 \\ +\textbf{theta} & rad & Nominal grazing angle & \\ +\bottomrule +\end{longtable} + +\subsection*{Links} +\begin{itemize} + \item \href{run:/home/willend/willend-McCode/mcstas-comps/monitors/TOF2Q_cylPSD_monitor.comp}{Source code} for \texttt{TOF2Q\_cylPSD\_monitor.comp}. +\end{itemize} +\IfFileExists{TOF2Q_cylPSD_monitor_static.tex}{\input{TOF2Q_cylPSD_monitor_static.tex}}{} \ No newline at end of file diff --git a/docs/manuals/mcstas/monitors/TOFLambda_monitor.tex b/docs/manuals/mcstas/monitors/TOFLambda_monitor.tex new file mode 100644 index 000000000..a961cb4f9 --- /dev/null +++ b/docs/manuals/mcstas/monitors/TOFLambda_monitor.tex @@ -0,0 +1,48 @@ +\section{The \texttt{TOFLambda\_monitor} McStas Component} +Time-of-flight/wavelength monitor. + +\subsection*{Identification} +\begin{itemize} + \item \textbf{Site:} + \item \textbf{Author:} KL + \item \textbf{Origin:} Risoe + \item \textbf{Date:} September 28, 2001 +\end{itemize} + +\subsection*{Description} +\begin{lstlisting} +2D detector for intensity as a function of both time-of-flight +and wavelength. +\end{lstlisting} + +\subsection*{Input parameters} +Parameters in \textbf{boldface} are required; the others are optional. + +\begin{longtable}{p{0.22\textwidth}p{0.12\textwidth}p{0.46\textwidth}p{0.14\textwidth}} +\toprule +\textbf{Name} & \textbf{Unit} & \textbf{Description} & \textbf{Default} \\ +\midrule +\endhead +nowritefile & 1 & If set, monitor will skip writing to disk & 0 \\ +nL & 1 & Number of bins in wavelength & 20 \\ +nt & 1 & Number of bins in TOF & 128 \\ +\textbf{tmin} & us & Minimum time & \\ +\textbf{tmax} & us & Maximum time & \\ +filename & string & Name of file in which to store the detector image & 0 \\ +xmin & m & Lower x bound of detector opening & -0.05 \\ +xmax & m & Upper x bound of detector opening & 0.05 \\ +ymin & m & Lower y bound of detector opening & -0.05 \\ +ymax & m & Upper y bound of detector opening & 0.05 \\ +xwidth & m & Width/diameter of detector (x). Overrides xmin, xmax & 0 \\ +yheight & m & Height of detector (y). Overrides ymin, ymax & 0 \\ +\textbf{Lmin} & AA & Minimum wavelength detected & \\ +\textbf{Lmax} & AA & Maximum wavelength detected & \\ +restore\_neutron & 1 & If set, the monitor does not influence the neutron state & 0 \\ +\bottomrule +\end{longtable} + +\subsection*{Links} +\begin{itemize} + \item \href{run:/home/willend/willend-McCode/mcstas-comps/monitors/TOFLambda_monitor.comp}{Source code} for \texttt{TOFLambda\_monitor.comp}. +\end{itemize} +\IfFileExists{TOFLambda_monitor_static.tex}{\input{TOFLambda_monitor_static.tex}}{} \ No newline at end of file diff --git a/docs/manuals/mcstas/monitors/TOFRes_monitor.tex b/docs/manuals/mcstas/monitors/TOFRes_monitor.tex new file mode 100644 index 000000000..f00d04116 --- /dev/null +++ b/docs/manuals/mcstas/monitors/TOFRes_monitor.tex @@ -0,0 +1,63 @@ +\section{The \texttt{TOFRes\_monitor} McStas Component} +Monitor for resolution calculations, TOFRes version, for use with TOFRes\_sample in 3.x + +\subsection*{Identification} +\begin{itemize} + \item \textbf{Site:} + \item \textbf{Author:} Kristian Nielsen + \item \textbf{Origin:} Risoe + \item \textbf{Date:} 1999 +\end{itemize} + +\subsection*{Description} +\begin{lstlisting} +A single detector/monitor, used together with the TOFRes_sample component to +compute instrument resolution functions. Outputs a list of neutron +scattering events in the sample along with their intensities in the +detector. The output file may be analyzed with the mcresplot front-end. + +Example: TOFRes_monitor(filename="Output.res", res_sample_comp="RSample", xmin=-0.1, xmax=0.1, ymin=-0.1, ymax=0.1) + +Setting the monitor geometry. +The optional parameter 'options' may be set as a string with the +following keywords. Default is rectangular ('square'): +box Box of size xwidth, yheight, zdepth +cylinder To get a cylindrical monitor (diameter is xwidth, height is yheight). +banana Same as cylinder, without top/bottom, on restricted angular area +disk Disk flat xy monitor. diameter is xwidth. +sphrere To get a spherical monitor (e.g. a 4PI) (diameter is xwidth). +square Square flat xy monitor (xwidth, yheight) +\end{lstlisting} + +\subsection*{Input parameters} +Parameters in \textbf{boldface} are required; the others are optional. + +\begin{longtable}{p{0.22\textwidth}p{0.12\textwidth}p{0.46\textwidth}p{0.14\textwidth}} +\toprule +\textbf{Name} & \textbf{Unit} & \textbf{Description} & \textbf{Default} \\ +\midrule +\endhead +\textbf{res\_sample\_comp} & WITH quotes & Name of TOFRes\_sample component in the instrument definition & \\ +filename & string & Name of output file. If unset, use automatic name & 0 \\ +options & str & String that specifies the geometry of the monitor & 0 \\ +xwidth & m & Width/diameter of detector & .1 \\ +yheight & m & Height of detector & .1 \\ +zdepth & m & Thichness of detector & 0 \\ +radius & m & Radius of sphere/cylinder monitor & 0 \\ +xmin & m & Lower x bound of detector opening & 0 \\ +xmax & m & Upper x bound of detector opening & 0 \\ +ymin & m & Lower y bound of detector opening & 0 \\ +ymax & m & Upper y bound of detector opening & 0 \\ +zmin & m & Lower z bound of detector opening & 0 \\ +zmax & m & Upper z bound of detector opening & 0 \\ +bufsize & 1 & Number of events to store. Use 0 to store all & 0 \\ +restore\_neutron & 1 & If set, the monitor does not influence the neutron state & 0 \\ +live\_calc & 1 & If set, the monitor directly outputs the resolution matrix & 1 \\ +\bottomrule +\end{longtable} + +\subsection*{Links} +\begin{itemize} + \item \href{run:/home/willend/willend-McCode/mcstas-comps/monitors/TOFRes_monitor.comp}{Source code} for \texttt{TOFRes\_monitor.comp}. +\end{itemize} +\IfFileExists{TOFRes_monitor_static.tex}{\input{TOFRes_monitor_static.tex}}{} \ No newline at end of file diff --git a/docs/manuals/mcstas/monitors/TOF_PSD_monitor_rad.tex b/docs/manuals/mcstas/monitors/TOF_PSD_monitor_rad.tex new file mode 100644 index 000000000..afc436011 --- /dev/null +++ b/docs/manuals/mcstas/monitors/TOF_PSD_monitor_rad.tex @@ -0,0 +1,46 @@ +\section{The \texttt{TOF\_PSD\_monitor\_rad} McStas Component} +Position-sensitive TOF monitor with radially averaging. + +\subsection*{Identification} +\begin{itemize} + \item \textbf{Site:} + \item \textbf{Author:} Kim Lefmann + \item \textbf{Origin:} UCPH + \item \textbf{Date:} March 2012 +\end{itemize} + +\subsection*{Description} +\begin{lstlisting} +TOF monitor that performs radial averaging. +Comment: The intensity is given as two 2D files: +1) a radial sum vs. TOF +2) a radial average (i.e. intensity per area) vs. TOF + +Example: TOF_PSD_monitor_rad(rmax=0.2, nr=100, filename="Output.psd", filename_av="Output_av.psd") +\end{lstlisting} + +\subsection*{Input parameters} +Parameters in \textbf{boldface} are required; the others are optional. + +\begin{longtable}{p{0.22\textwidth}p{0.12\textwidth}p{0.46\textwidth}p{0.14\textwidth}} +\toprule +\textbf{Name} & \textbf{Unit} & \textbf{Description} & \textbf{Default} \\ +\midrule +\endhead +nr & 1 & Number of concentric circles & 100 \\ +nt & 1 & Number of time bins & 100 \\ +nowritefile & 1 & If set, monitor will skip writing to disk & 0 \\ +filename & string & Name of file in which to store the detector image & 0 \\ +filename\_av & string & Name of file in which to store the averaged detector image & 0 \\ +rmax & m & Outer radius of detector & 0.2 \\ +\textbf{tmin} & mu-s & Beginning of time window & \\ +\textbf{tmax} & mu-s & End of time window & \\ +restore\_neutron & 1 & If set, the monitor does not influence the neutron state & 0 \\ +\bottomrule +\end{longtable} + +\subsection*{Links} +\begin{itemize} + \item \href{run:/home/willend/willend-McCode/mcstas-comps/monitors/TOF_PSD_monitor_rad.comp}{Source code} for \texttt{TOF\_PSD\_monitor\_rad.comp}. +\end{itemize} +\IfFileExists{TOF_PSD_monitor_rad_static.tex}{\input{TOF_PSD_monitor_rad_static.tex}}{} \ No newline at end of file diff --git a/docs/manuals/mcstas/monitors/TOF_cylPSD_monitor.tex b/docs/manuals/mcstas/monitors/TOF_cylPSD_monitor.tex new file mode 100644 index 000000000..0d3ea0efa --- /dev/null +++ b/docs/manuals/mcstas/monitors/TOF_cylPSD_monitor.tex @@ -0,0 +1,41 @@ +\section{The \texttt{TOF\_cylPSD\_monitor} McStas Component} +Cylindrical (2pi) PSD Time-of-flight monitor. + +\subsection*{Identification} +\begin{itemize} + \item \textbf{Site:} + \item \textbf{Author:} Kim Lefmann + \item \textbf{Origin:} Risoe + \item \textbf{Date:} October 2000 +\end{itemize} + +\subsection*{Description} +\begin{lstlisting} + +\end{lstlisting} + +\subsection*{Input parameters} +Parameters in \textbf{boldface} are required; the others are optional. + +\begin{longtable}{p{0.22\textwidth}p{0.12\textwidth}p{0.46\textwidth}p{0.14\textwidth}} +\toprule +\textbf{Name} & \textbf{Unit} & \textbf{Description} & \textbf{Default} \\ +\midrule +\endhead +nt & 1 & Number of time bins & 128 \\ +nphi & deg & Number of angular bins & 90 \\ +filename & string & Name of file in which to store the detector image & 0 \\ +nowritefile & 1 & If set, monitor will skip writing to disk & 0 \\ +radius & m & Cylinder radius & 1 \\ +yheight & m & Cylinder height & 0.3 \\ +\textbf{tmin} & mu-s & Beginning of time window & \\ +\textbf{tmax} & mu-s & End of time window & \\ +restore\_neutron & 1 & If set, the monitor does not influence the neutron state & 0 \\ +\bottomrule +\end{longtable} + +\subsection*{Links} +\begin{itemize} + \item \href{run:/home/willend/willend-McCode/mcstas-comps/monitors/TOF_cylPSD_monitor.comp}{Source code} for \texttt{TOF\_cylPSD\_monitor.comp}. +\end{itemize} +\IfFileExists{TOF_cylPSD_monitor_static.tex}{\input{TOF_cylPSD_monitor_static.tex}}{} \ No newline at end of file diff --git a/docs/manuals/mcstas/monitors/TOF_monitor.tex b/docs/manuals/mcstas/monitors/TOF_monitor.tex new file mode 100644 index 000000000..f927b2dc4 --- /dev/null +++ b/docs/manuals/mcstas/monitors/TOF_monitor.tex @@ -0,0 +1,45 @@ +\section{The \texttt{TOF\_monitor} McStas Component} +Rectangular Time-of-flight monitor. + +\subsection*{Identification} +\begin{itemize} + \item \textbf{Site:} + \item \textbf{Author:} KN, M. Hagen + \item \textbf{Origin:} Risoe + \item \textbf{Date:} August 1998 +\end{itemize} + +\subsection*{Description} +\begin{lstlisting} + +\end{lstlisting} + +\subsection*{Input parameters} +Parameters in \textbf{boldface} are required; the others are optional. + +\begin{longtable}{p{0.22\textwidth}p{0.12\textwidth}p{0.46\textwidth}p{0.14\textwidth}} +\toprule +\textbf{Name} & \textbf{Unit} & \textbf{Description} & \textbf{Default} \\ +\midrule +\endhead +nt & 1 & Number of time bins & 20 \\ +filename & string & Name of file in which to store the detector image & 0 \\ +xmin & m & Lower x bound of detector opening & -0.05 \\ +xmax & m & Upper x bound of detector opening & 0.05 \\ +ymin & m & Lower y bound of detector opening & -0.05 \\ +ymax & m & Upper y bound of detector opening & 0.05 \\ +xwidth & m & Width of detector. Overrides xmin, xmax & 0 \\ +yheight & m & Height of detector. Overrides ymin, ymax & 0 \\ +tmin & mu-s & Lower time limit & 0 \\ +tmax & mu-s & Upper time limit & 0 \\ +dt & mu-s & Length of each time bin & 1.0 \\ +restore\_neutron & 1 & If set, the monitor does not influence the neutron state & 0 \\ +nowritefile & 1 & If set, monitor will skip writing to disk & 0 \\ +\bottomrule +\end{longtable} + +\subsection*{Links} +\begin{itemize} + \item \href{run:/home/willend/willend-McCode/mcstas-comps/monitors/TOF_monitor.comp}{Source code} for \texttt{TOF\_monitor.comp}. +\end{itemize} +\IfFileExists{TOF_monitor_static.tex}{\input{TOF_monitor_static.tex}}{} \ No newline at end of file diff --git a/docs/manuals/mcstas/monitors/TOFlog_monitor.tex b/docs/manuals/mcstas/monitors/TOFlog_monitor.tex new file mode 100644 index 000000000..1a3d79209 --- /dev/null +++ b/docs/manuals/mcstas/monitors/TOFlog_monitor.tex @@ -0,0 +1,45 @@ +\section{The \texttt{TOFlog\_monitor} McStas Component} +Rectangular Time-of-flight monitor with logarithmic time binning. + +\subsection*{Identification} +\begin{itemize} + \item \textbf{Site:} + \item \textbf{Author:} Kim Lefmann + \item \textbf{Origin:} Risoe + \item \textbf{Date:} October 2000 +\end{itemize} + +\subsection*{Description} +\begin{lstlisting} +A rectangular time-of-flight monitor with logarithmic time binning. +(The neutron intensity is NOT given logarithmically) +\end{lstlisting} + +\subsection*{Input parameters} +Parameters in \textbf{boldface} are required; the others are optional. + +\begin{longtable}{p{0.22\textwidth}p{0.12\textwidth}p{0.46\textwidth}p{0.14\textwidth}} +\toprule +\textbf{Name} & \textbf{Unit} & \textbf{Description} & \textbf{Default} \\ +\midrule +\endhead +\textbf{tmin} & mus & Lower bound for time bins & \\ +\textbf{tmax} & mus & Higher bound for time bins & \\ +ndec & 1 & Number of time bins per decade & 10 \\ +nowritefile & 1 & If set, monitor will skip writing to disk & 0 \\ +filename & string & Name of file in which to store the detector image & 0 \\ +xmin & m & Lower x bound of detector opening & -0.05 \\ +xmax & m & Upper x bound of detector opening & 0.05 \\ +ymin & m & Lower y bound of detector opening & -0.05 \\ +ymax & m & Upper y bound of detector opening & 0.05 \\ +xwidth & m & Width of detector. Overrides xmin, xmax & 0 \\ +yheight & m & Height of detector. Overrides ymin, ymax & 0 \\ +restore\_neutron & 1 & If set, the monitor does not influence the neutron state & 0 \\ +\bottomrule +\end{longtable} + +\subsection*{Links} +\begin{itemize} + \item \href{run:/home/willend/willend-McCode/mcstas-comps/monitors/TOFlog_monitor.comp}{Source code} for \texttt{TOFlog\_monitor.comp}. +\end{itemize} +\IfFileExists{TOFlog_monitor_static.tex}{\input{TOFlog_monitor_static.tex}}{} \ No newline at end of file diff --git a/docs/manuals/mcstas/obsolete/Beam_spy.tex b/docs/manuals/mcstas/obsolete/Beam_spy.tex new file mode 100644 index 000000000..384a085e8 --- /dev/null +++ b/docs/manuals/mcstas/obsolete/Beam_spy.tex @@ -0,0 +1,37 @@ +\section{The \texttt{Beam\_spy} McStas Component} +Beam analyzer for previous component + +\subsection*{Identification} +\begin{itemize} + \item \textbf{Site:} + \item \textbf{Author:} E. Farhi + \item \textbf{Origin:} Risoe + \item \textbf{Date:} Nov 2005 +\end{itemize} + +\subsection*{Description} +\begin{lstlisting} +This component displays informations about the beam at the previous component +position. No data file is produced. +It behaves as the Monitor component, but No propagation to the Beam_spy is +performed, and all events are analyzed. +The component should be located at the same position as the previous one. +\end{lstlisting} + +\subsection*{Input parameters} +Parameters in \textbf{boldface} are required; the others are optional. + +\begin{longtable}{p{0.22\textwidth}p{0.12\textwidth}p{0.46\textwidth}p{0.14\textwidth}} +\toprule +\textbf{Name} & \textbf{Unit} & \textbf{Description} & \textbf{Default} \\ +\midrule +\endhead +\bottomrule +\end{longtable} + +\subsection*{Links} +\begin{itemize} + \item \href{run:/home/willend/willend-McCode/mcstas-comps/obsolete/Beam_spy.comp}{Source code} for \texttt{Beam\_spy.comp}. + \item Monitor component +\end{itemize} +\IfFileExists{Beam_spy_static.tex}{\input{Beam_spy_static.tex}}{} \ No newline at end of file diff --git a/docs/manuals/mcstas/obsolete/ESS_moderator_short.tex b/docs/manuals/mcstas/obsolete/ESS_moderator_short.tex new file mode 100644 index 000000000..71271a5f8 --- /dev/null +++ b/docs/manuals/mcstas/obsolete/ESS_moderator_short.tex @@ -0,0 +1,95 @@ +\section{The \texttt{ESS\_moderator\_short} McStas Component} +A parametrised pulsed source for modelling ESS short pulses. + +\subsection*{Identification} +\begin{itemize} + \item \textbf{Site:} + \item \textbf{Author:} KL, February 2001 + \item \textbf{Origin:} Risoe + \item \textbf{Date:} +\end{itemize} + +\subsection*{Description} +\begin{lstlisting} +Produces a time-of-flight spectrum, from the ESS parameters +Chooses evenly in lambda, exponentially decaying in time . +Adapted from Moderator by: KN, M.Hagen, August 1998 + +Units of flux: n/cm^2/s/AA/ster +(McStas units are in general neutrons/second) + +Example general parameters (general): +size=0.12 Lmin=0.1 Lmax=10 dist=2 focus_xw=0.06 yh=0.12 nu=50 +branchframe=0.5 + +Example moderator specific parameters +(From F. Mezei, "ESS reference moderator characteristics for ...", 4/12/00: +Defining the normalised Maxwelian +M(lam,T) = 2 a^2 lam^-5 exp(-a/lam^2); a=949/T; lam in AA; T in K, +and the normalised pulse shape function +F(t,tau,n) = ( exp(-t/tau) - exp(-nt/tau) ) n/(n-1)/tau, +the flux distribution is given as +Phi(t,lam) = I0 M(lam,T) F(t,tau,n) ++ I2/(1+exp(chi2 lam-2.2))/lam*F(t,tau2*lam,n2) ) + +a1: Ambient H20, short pulse, decoupled poisoned +T=325 tau=22e-6 tau1=0 tau2=7e-6 n=5 n2=5 chi2=2.5 +I0=9e10 I2=4.6e10 branch1=0 branch2=0.5 + +a2: Ambient H20, short pulse, decoupled un-poisoned +T=325 tau=35e-6 tau1=0 tau2=12e-6 n=5 n2=5 chi2=2.5 +I0=1.8e11 I2=9.2e10 branch1=0 branch2=0.5 + +a3: Ambient H20, short pulse, coupled +T=325 tau=80e-6 tau1=400e-6 tau2=12e-6 n=20 n2=5 chi2=2.5 +I0=4.5e11 I2=9.2e10 branch1=0.5 branch2=0.5 + +b1: Liquid H2, short pulse, decoupled poisoned +T=50 tau=49e-6 tau1=0 tau2=7e-6 n=5 n2=5 chi2=0.9 +I0=2.7e10 I2=4.6e10 branch1=0 branch2=0.5 + +b2: Liquid H2, short pulse, decoupled un-poisoned +T=50 tau=78e-6 tau1=0 tau2=12e-6 n=5 n2=5 chi2=0.9 +I0=5.4e10 I2=9.2e10 branch1=0 branch2=0.5 + +b3: Liquid H2, short pulse, coupled +T=50 tau=287e-6 tau1=0 tau2=12e-6 n=20 n2=5 chi2=0.9 +I0=2.3e11 I2=9.2e10 branch1=0 branch2=0.5 +\end{lstlisting} + +\subsection*{Input parameters} +Parameters in \textbf{boldface} are required; the others are optional. + +\begin{longtable}{p{0.22\textwidth}p{0.12\textwidth}p{0.46\textwidth}p{0.14\textwidth}} +\toprule +\textbf{Name} & \textbf{Unit} & \textbf{Description} & \textbf{Default} \\ +\midrule +\endhead +\textbf{size} & m & Edge of cube shaped source & \\ +\textbf{Lmin} & AA & Lower edge of wavelength distribution & \\ +\textbf{Lmax} & AA & Upper edge of wavelength distribution & \\ +\textbf{dist} & m & Distance from source to focusing rectangle; at (0,0,dist) & \\ +\textbf{focus\_xw} & m & Width of focusing rectangle & \\ +\textbf{focus\_yh} & m & Height of focusing rectangle & \\ +nu & Hz & Frequency of pulses & 50 \\ +T & K & Temperature of source & 325 \\ +tau & s & long time decay constant for pulse, 1a & 22e-6 \\ +tau1 & s & long time decay constant for pulse, 1b (only for coupled water, else 0) & 0 \\ +tau2 & s/AA & long time decay constant for pulse, 2 & 7e-6 \\ +n & 1 & pulse shape parameter 1 & 5 \\ +n2 & 1 & pulse shape parameter 2 & 5 \\ +chi2 & 1/AA & lambda-distribution parameter in pulse 2 & 2.5 \\ +I0 & flux & integrated flux 1 (in flux units, see above) (default 9e10) & 9e10 \\ +I2 & flux*AA & integrated flux 2 (default 4.6e10) & 4.6e10 \\ +branch1 & 1 & limit for switching between distribution 1 and 2. (has effect only for coupled water, tau1\textgreater{}0) & 0 \\ +branch2 & 1 & limit for switching between distribution 1 and 2. (default value 0.5) & 0.5 \\ +branchframe & 1 & limit for switching between 1st and 2nd pulse (if only one pulse wanted: 1) & 0 \\ +target\_index & 1 & relative index of component to focus at, e.g. next is +1 this is used to compute 'dist' automatically. & 1 \\ +\bottomrule +\end{longtable} + +\subsection*{Links} +\begin{itemize} + \item \href{run:/home/willend/willend-McCode/mcstas-comps/obsolete/ESS_moderator_short.comp}{Source code} for \texttt{ESS\_moderator\_short.comp}. +\end{itemize} +\IfFileExists{ESS_moderator_short_static.tex}{\input{ESS_moderator_short_static.tex}}{} \ No newline at end of file diff --git a/docs/manuals/mcstas/obsolete/V_sample.tex b/docs/manuals/mcstas/obsolete/V_sample.tex new file mode 100644 index 000000000..c89255ef2 --- /dev/null +++ b/docs/manuals/mcstas/obsolete/V_sample.tex @@ -0,0 +1,81 @@ +\section{The \texttt{V\_sample} McStas Component} +Vanadium sample. + +\subsection*{Identification} +\begin{itemize} + \item \textbf{Site:} + \item \textbf{Author:} Kim Lefmann and Kristian Nielsen + \item \textbf{Origin:} Risoe + \item \textbf{Date:} 15.4.98 +\end{itemize} + +\subsection*{Description} +\begin{lstlisting} +A Double-cylinder shaped incoherent scatterer (a V-sample) +with both elastic and quasielastic (Lorentzian) components. +No multiple scattering. Absorbtion included. +The shape of the sample may be a box with dimensions xwidth, yheight, zthick. +The area to scatter to is a disk of radius 'focus_r' situated at the target. +This target area may also be rectangular if specified focus_xw and focus_yh +or focus_aw and focus_ah, respectively in meters and degrees. +The target itself is either situated according to given coordinates (x,y,z), +or defined with the relative target_index of the component to focus +to (next is +1). +This target position will be set to its AT position. When targeting to +centered components, such as spheres or cylinders, define an Arm component +where to focus to. + +Example: V_sample(radius_i=0.001,radius_o=0.01,h=0.02,focus_r=0.035,pack=1, +target_index=1) +\end{lstlisting} + +\subsection*{Input parameters} +Parameters in \textbf{boldface} are required; the others are optional. + +\begin{longtable}{p{0.22\textwidth}p{0.12\textwidth}p{0.46\textwidth}p{0.14\textwidth}} +\toprule +\textbf{Name} & \textbf{Unit} & \textbf{Description} & \textbf{Default} \\ +\midrule +\endhead +radius & m & Outer radius of sample in (x,z) plane & 0 \\ +thickness & m & Thickness of outer wall & 0 \\ +zdepth & m & depth of box sample & 0 \\ +Vc & & Unit cell volume [AA\textasciicircum{}3] & 13.827 \\ +sigma\_abs & barns & Absorbtion cross section pr. unit cell & 5.08 \\ +sigma\_inc & barns & Incoherent scattering cross section pr. unit cell & 5.08 \\ +radius\_i & m & radius-thickness & 0 \\ +radius\_o & m & Same as radius & 0 \\ +h & m & Same as yheight & 0 \\ +focus\_r & m & Radius of disk containing target. Use 0 for full space & 0 \\ +pack & 1 & Packing factor & 1 \\ +frac & 1 & MC Probability for scattering the ray; otherwise penetrate & 1 \\ +f\_QE & 1 & Fraction of quasielastic scattering (rest is elastic) & 0 \\ +gamma & 1 & Lorentzian width of quasielastic broadening (HWHM) & 0 \\ +target\_x & & & 0 \\ +target\_y & m & position of target to focus at & 0 \\ +target\_z & & & 0 \\ +focus\_xw & m & horiz. dimension of a rectangular area & 0 \\ +focus\_yh & m & vert. dimension of a rectangular area & 0 \\ +focus\_aw & deg & angular width dimension of a rectangular area & 0 \\ +focus\_ah & deg & angular height dimension of a rectangular area & 0 \\ +xwidth & m & horiz. dimension of sample & 0 \\ +yheight & m & vert. dimension of sample & 0 \\ +zthick & m & Same as zdepth & 0 \\ +rad\_sphere & m & Radius for a spherical sample & 0 \\ +sig\_a & barns & Same as sigma\_abs & 0 \\ +sig\_i & barns & Same as sigma\_inc & 0 \\ +V0 & & Same as Vc [AA\textasciicircum{}3] & 0 \\ +target\_index & 1 & relative index of component to focus at, e.g. next is +1 & 0 \\ +multiples & 1 & Apply crude estimate for multiple scattering & 1 \\ +\bottomrule +\end{longtable} + +\subsection*{Links} +\begin{itemize} + \item \href{run:/home/willend/willend-McCode/mcstas-comps/obsolete/V_sample.comp}{Source code} for \texttt{V\_sample.comp}. + \item \textless{}A HREF="http://neutron.risoe.dk/mcstas/components/tests/v\_sample/"\textgreater{}Test + \item results\textless{}/A\textgreater{} (not up-to-date). + \item The test/example instrument \textless{}a href="../examples/vanadium\_example.instr"\textgreater{}vanadium\_example.instr\textless{}/a\textgreater{}. + \item The test/example instrument \textless{}a href="../examples/QENS\_test.instr"\textgreater{}QENS\_test.instr\textless{}/a\textgreater{}. +\end{itemize} +\IfFileExists{V_sample_static.tex}{\input{V_sample_static.tex}}{} \ No newline at end of file diff --git a/docs/manuals/mcstas/obsolete/Virtual_input.tex b/docs/manuals/mcstas/obsolete/Virtual_input.tex new file mode 100644 index 000000000..da1efc084 --- /dev/null +++ b/docs/manuals/mcstas/obsolete/Virtual_input.tex @@ -0,0 +1,65 @@ +\section{The \texttt{Virtual\_input} McStas Component} +Source-like component that generates neutron events from an ascii +'virtual source' filename. + +\subsection*{Identification} +\begin{itemize} + \item \textbf{Site:} + \item \textbf{Author:} \textless{}a href="mailto:farhi@ill.fr"\textgreater{}E. Farhi\textless{}/a\textgreater{} + \item \textbf{Origin:} \textless{}a href="http://www.ill.fr"\textgreater{}ILL\textless{}/a\textgreater{} + \item \textbf{Date:} Sep 28th, 2001 +\end{itemize} + +\subsection*{Description} +\begin{lstlisting} +This component reads neutron events stored from a file, and sends them into +the instrument. It thus replaces a Source component, using a previously +computed neutron set. The 'source' file type is an ascii text file with the +format listed below. The number of neutron events for the +simulation is set to the length of the 'source' file times the +repetition parameter 'repeat_count' (1 by default). +It is particularly useful to generate a virtual source at a point that few +neutron reach. A long simulation will then only be performed once, to create +the 'source' filename. Further simulations are much faster if they start from +this low flux position with the 'source' filename. + +The input file format is: +text column formatted with lines containing 11 values in the order: +p x y z vx vy vz t sx sy sz stored into about 83 bytes/n. + +%BUGS +We recommend NOT to use parallel execution (MPI) with this component. If you +need to, set parameter 'smooth=1'. + +EXAMPLE: +To create a 'source' file collecting all neutron states, use: +COMPONENT MySourceCreator = Virtual_output(filename = "MySource.list") +at the position where will be the Virtual_input. +Then inactivate the part of the simulation description before (and including) +the component MySourceCreator. Put the new instrument source: +COMPONENT Source = Virtual_input(filename="MySource.list") +at the same position as 'MySourceCreator'. +A Vitess filename may be obtained from the 'Vitess_output' component or from a +Vitess simulation (104 bytes per neutron) and read with Vitess_input. +\end{lstlisting} + +\subsection*{Input parameters} +Parameters in \textbf{boldface} are required; the others are optional. + +\begin{longtable}{p{0.22\textwidth}p{0.12\textwidth}p{0.46\textwidth}p{0.14\textwidth}} +\toprule +\textbf{Name} & \textbf{Unit} & \textbf{Description} & \textbf{Default} \\ +\midrule +\endhead +filename & str & Name of the neutron input file. Empty string "" inactivates component & 0 \\ +verbose & 0/1 & Display additional information about source, recommended & 0 \\ +repeat\_count & 1 & Number of times the source must be generated/repeated & 1 \\ +smooth & 0/1 & Smooth sparsed event files for filename repetitions. Use this option with MPI. This will apply gaussian distributions around initial events from the file & 1 \\ +\bottomrule +\end{longtable} + +\subsection*{Links} +\begin{itemize} + \item \href{run:/home/willend/willend-McCode/mcstas-comps/obsolete/Virtual_input.comp}{Source code} for \texttt{Virtual\_input.comp}. +\end{itemize} +\IfFileExists{Virtual_input_static.tex}{\input{Virtual_input_static.tex}}{} \ No newline at end of file diff --git a/docs/manuals/mcstas/obsolete/Virtual_mcnp_input.tex b/docs/manuals/mcstas/obsolete/Virtual_mcnp_input.tex new file mode 100644 index 000000000..504bec53a --- /dev/null +++ b/docs/manuals/mcstas/obsolete/Virtual_mcnp_input.tex @@ -0,0 +1,81 @@ +\section{The \texttt{Virtual\_mcnp\_input} McStas Component} +This component uses a filename of recorded neutrons from the reactor monte carlo +code MCNP as a source of particles. + +\subsection*{Identification} +\begin{itemize} + \item \textbf{Site:} + \item \textbf{Author:} \textless{}a href="mailto:hennanec@ensimag.fr"\textgreater{}Chama Hennane\textless{}/a\textgreater{} and E. Farhi + \item \textbf{Origin:} \textless{}a href="http://www.ill.fr/"\textgreater{}ILL\textless{}/a\textgreater{} + \item \textbf{Date:} June 28th, 2006 +\end{itemize} + +\subsection*{Description} +\begin{lstlisting} +This component generates neutron events from a filename created using the +MCNP Monte Carlo code for nuclear reactors. It is used to +calculate flux exiting from hot or cold neutron sources. +Neutron position and velocity is set from the filename. The neutron time is +left at zero. + +Note that axes orientation may be different between MCNP and McStas. +The component has the ability to center and orient the neutron beam to the Z-axis. +It also may change the coordinate system from the MCNP frame to the McStas one. +The verbose mode is highly recommended as it displays lots of useful informations. +To obtain absolute intensity, set 'intensity' and 'nps' parameters. +The source total intensity is 1.054e18 for LLB/Saclay (14 MW) and 4.28e18 for +ILL/Grenoble (58 MW). + +Format of MCNP events are : + +position_X position_Y position_Z dir_X dir_Y dir_Z Energy Weight Time + +energy is in Mega eV, time in shakes (1e-8 s), +positions are in cm and the direction vector is normalized to 1. + +%BUGS +We recommend NOT to use parallel execution (MPI) with this component. If you +need to, set parameter 'smooth=1'. + +EXAMPLE: +To generate PTRAC files using MCNP/MCNPX, add at the end of your input file: +f1:n 2001 // tally +(...) +ptrac filename = asc +max = -1000000 // number of neutrons to generate and stop +write = all +event = sur +filter = 2001,jsu // surface tally id +To create a 'source' from a MCNP simulation event file for the ILL: +COMPONENT source = Virtual_mcnp_input( +filename = "H10p", intensity=4.28e18, nps=11328982, +verbose = 1, autocenter="translate rotate rescale") +\end{lstlisting} + +\subsection*{Input parameters} +Parameters in \textbf{boldface} are required; the others are optional. + +\begin{longtable}{p{0.22\textwidth}p{0.12\textwidth}p{0.46\textwidth}p{0.14\textwidth}} +\toprule +\textbf{Name} & \textbf{Unit} & \textbf{Description} & \textbf{Default} \\ +\midrule +\endhead +filename & str & Name of the MCNP PTRAC neutron input file. Empty string "" unactivates component & 0 \\ +autocenter & str & String which may contain following keywords. "translate" or "center" to center the beam area AT (0,0,0) "rotate" or "orient" to center the beam velocity along Z "change axes" to change coordinate system definition "rescale" to adapt intensity to abs. units. with factor intensity/nps. Other words are ignored. & 0 \\ +repeat\_count & 1 & Number of times the source must be generated. 0 unactivates the component & 1 \\ +verbose & 0|1 & Displays additional informations if set to 1 & 0 \\ +intensity & n/s & Intensity multiplication factor & 0 \\ +MCNP\_ANALYSE & 1 & Number of neutron events to read for file pre-analysis. Use 0 to analyze them all. & 10000 \\ +surface\_id & 1 & Index of the emitting MCNP surface to use. -1 for all. & -1 \\ +nps & 1 & Number of total events shot by MCNP to generate the PTRAC as indicated at the end of the MCNP 'o' file as 'source particle weight for summary table normalization' or alternatively 'nps = '. & 0 \\ +smooth & 0/1 & Smooth sparsed event files for file repetitions. & 1 \\ +\bottomrule +\end{longtable} + +\subsection*{Links} +\begin{itemize} + \item \href{run:/home/willend/willend-McCode/mcstas-comps/obsolete/Virtual_mcnp_input.comp}{Source code} for \texttt{Virtual\_mcnp\_input.comp}. + \item \textless{}a href="http://mcnp-green.lanl.gov/index.html"\textgreater{}MCNP\textless{}/a\textgreater{} + \item MCNP -- A General Monte Carlo N-Particle Transport Code, Version 5, Volume II: User's Guide, p177 +\end{itemize} +\IfFileExists{Virtual_mcnp_input_static.tex}{\input{Virtual_mcnp_input_static.tex}}{} \ No newline at end of file diff --git a/docs/manuals/mcstas/obsolete/Virtual_mcnp_output.tex b/docs/manuals/mcstas/obsolete/Virtual_mcnp_output.tex new file mode 100644 index 000000000..d55202011 --- /dev/null +++ b/docs/manuals/mcstas/obsolete/Virtual_mcnp_output.tex @@ -0,0 +1,54 @@ +\section{The \texttt{Virtual\_mcnp\_output} McStas Component} +Detector-like component that writes neutron state parameters into a +'virtual source' neutron file with MCNP/PTRAC format. + +\subsection*{Identification} +\begin{itemize} + \item \textbf{Site:} + \item \textbf{Author:} \textless{}a href="mailto hennanec@ensimag.fr"\textgreater{}Chama Hennane\textless{}/a\textgreater{} and E. Farhi + \item \textbf{Origin:} \textless{}a href="http://www.ill.fr/"\textgreater{}ILL\textless{}/a\textgreater{} + \item \textbf{Date:} July 7th, 2006 +\end{itemize} + +\subsection*{Description} +\begin{lstlisting} +Detector-like component writing neutron state parameters to a +virtual source neutron file with MCNP/PTRAC format. +The component geometry is the full plane, and saves the neutron state as +it exits from the previous component. +Format is the one used by MCNP 5 files : + +position_X position_Y position_Z dir_X dir_Y dir_Z energy weight time + +energy is in Mega eV +positions are in cm and the direction vector is normalized to 1. + +%BUGS +This component will NOT work with parallel execution (MPI). + +EXAMPLE: +To create a file collecting all neutron states with MCNP5 format +COMPONENT fichier_sortie = Virtual_mcnp_output( +filename = "exit_guide_result.dat") +at the position where will be the Virtual_mcnp_input. +\end{lstlisting} + +\subsection*{Input parameters} +Parameters in \textbf{boldface} are required; the others are optional. + +\begin{longtable}{p{0.22\textwidth}p{0.12\textwidth}p{0.46\textwidth}p{0.14\textwidth}} +\toprule +\textbf{Name} & \textbf{Unit} & \textbf{Description} & \textbf{Default} \\ +\midrule +\endhead +filename & str & name of the MCNP5 neutron output file, & 0 \\ +\bottomrule +\end{longtable} + +\subsection*{Links} +\begin{itemize} + \item \href{run:/home/willend/willend-McCode/mcstas-comps/obsolete/Virtual_mcnp_output.comp}{Source code} for \texttt{Virtual\_mcnp\_output.comp}. + \item \textless{}a href="http://mcnp-green.lanl.gov/index.html"\textgreater{}MCNP\textless{}/a\textgreater{} + \item MCNP -- A General Monte Carlo N-Particle Transport Code, Version 5, Volume II: User's Guide, p177 +\end{itemize} +\IfFileExists{Virtual_mcnp_output_static.tex}{\input{Virtual_mcnp_output_static.tex}}{} \ No newline at end of file diff --git a/docs/manuals/mcstas/obsolete/Virtual_mcnp_ss_Guide.tex b/docs/manuals/mcstas/obsolete/Virtual_mcnp_ss_Guide.tex new file mode 100644 index 000000000..8627b2aaa --- /dev/null +++ b/docs/manuals/mcstas/obsolete/Virtual_mcnp_ss_Guide.tex @@ -0,0 +1,71 @@ +\section{The \texttt{Virtual\_mcnp\_ss\_Guide} McStas Component} +Neutron guide initiated using Virtual\_mcnp\_ss\_input.comp, and replacing Virtual\_mcnp\_ss\_output.comp - see examples//Test\_SSR\_SSW\_Guide.instr + +\subsection*{Identification} +\begin{itemize} + \item \textbf{Site:} + \item \textbf{Author:} Esben klinkby and Peter Willendrup + \item \textbf{Origin:} Risoe-DTU + \item \textbf{Date:} Marts 2012 +\end{itemize} + +\subsection*{Description} +\begin{lstlisting} +Based on Kristian Nielsens Guide.comp +Models a rectangular guide tube centered on the Z axis. The entrance lies +in the X-Y plane. +The component must be initiated after Virtual_mcnp_ss_input.comp, +and replaces Virtual_mcnp_ss_output.comp - see examples/Test_SSR_SSW_Guide.instr. +The basic idea is, that rather than discarding unreflected (i.e. absorbed) +neutrons at the guide mirrors, these neutron states are stored on disk. +Thus, after the McStas simulation a MCNP simulation can be performed based +on the un-reflected neutrons - intended for shielding studies. +(details: we don't deal with actual neutrons, so what is transferred between +simulations suites is neutron state parameters: pos,mom,time,weight. The latter is +whatever remains after reflection. + +For details on the geometry calculation see the description in the McStas +reference manual. +The reflectivity profile may either use an analytical mode (see Component +Manual) or a 2-columns reflectivity free text file with format +[q(Angs-1) R(0-1)]. + +Example: Virtual_mcnp_ss_Guide(w1=0.1, h1=0.1, w2=0.1, h2=0.1, l=2.0, +R0=0.99, Qc=0.021, alpha=6.07, m=2, W=0.003 + +%VALIDATION +Upcomming in 2012 based on ESS shielding +Validated by: D. Ene & E. Klinkby + +%BUGS +This component does not work with gravitation on. Use component Guide_gravity then +(doesn't work with SSR/SSW unfortunately) +\end{lstlisting} + +\subsection*{Input parameters} +Parameters in \textbf{boldface} are required; the others are optional. + +\begin{longtable}{p{0.22\textwidth}p{0.12\textwidth}p{0.46\textwidth}p{0.14\textwidth}} +\toprule +\textbf{Name} & \textbf{Unit} & \textbf{Description} & \textbf{Default} \\ +\midrule +\endhead +reflect & str & Reflectivity file name. Format \textless{}q(Angs-1) R(0-1)\textgreater{} & 0 \\ +\textbf{w1} & m & Width at the guide entry & \\ +\textbf{h1} & m & Height at the guide entry & \\ +\textbf{w2} & m & Width at the guide exit & \\ +\textbf{h2} & m & Height at the guide exit & \\ +\textbf{l} & m & length of guide & \\ +R0 & 1 & Low-angle reflectivity & 0.99 \\ +Qc & AA-1 & Critical scattering vector & 0.0219 \\ +alpha & AA & Slope of reflectivity & 6.07 \\ +m & 1 & m-value of material. Zero means completely absorbing. & 2 \\ +W & AA-1 & Width of supermirror cut-off & 0.003 \\ +\bottomrule +\end{longtable} + +\subsection*{Links} +\begin{itemize} + \item \href{run:/home/willend/willend-McCode/mcstas-comps/obsolete/Virtual_mcnp_ss_Guide.comp}{Source code} for \texttt{Virtual\_mcnp\_ss\_Guide.comp}. +\end{itemize} +\IfFileExists{Virtual_mcnp_ss_Guide_static.tex}{\input{Virtual_mcnp_ss_Guide_static.tex}}{} \ No newline at end of file diff --git a/docs/manuals/mcstas/obsolete/Virtual_mcnp_ss_input.tex b/docs/manuals/mcstas/obsolete/Virtual_mcnp_ss_input.tex new file mode 100644 index 000000000..cd90ce31f --- /dev/null +++ b/docs/manuals/mcstas/obsolete/Virtual_mcnp_ss_input.tex @@ -0,0 +1,73 @@ +\section{The \texttt{Virtual\_mcnp\_ss\_input} McStas Component} +This component uses a Source Surface type file of recorded neutrons from the +reactor monte carlo code MCNP as a source of particles. + +\subsection*{Identification} +\begin{itemize} + \item \textbf{Site:} + \item \textbf{Author:} \textless{}a href="mailto:esbe@dtu.dk"\textgreater{}Esben Klinkby\textless{}/a\textgreater{} and \textless{}a href="mailto:pkwi@dtu.dk"\textgreater{}Peter Willendrup\textless{}/a\textgreater{} + \item \textbf{Origin:} \textless{}a href="http://www.risoe.dtu.dk/"\textgreater{}DTU\textless{}/a\textgreater{} + \item \textbf{Date:} January, 2012 +\end{itemize} + +\subsection*{Description} +\begin{lstlisting} +This component draws neutron events from a Source Surface file created using the +MCNP Monte Carlo code and converts them to make them suitable for a McStas simulation + +Note that axes orientation may be different between MCNP and McStas! +Note also that the conversion of between McStas and MCNP units and parameters +is done automatically by this component - but the user must ensure that +geometry description matches between the two Monte Carlo codes. + +The verbose mode is highly recommended as it displays lots of useful informations. + +This interface uses the MCNP Source Surface Read/Write format (SSW/SSR). +Infomation transfer from(to) SSW files proceeds via a set of Fortran modules +and subroutines collected in "subs.f" +For succesful compilation, it is required that these subroutines are compiled +and linked to the instrument file: + +mcstas dummy.instr -> generates dummy.c +gfortran -c subs.f -> generates subs.f +gcc -o runme.out dummy.c subs.o -lm -lgfortran -> generates runme.out + +Note that this requires a fortran compiler (here gfortran) and gcc. + +%BUGS +None known bugs so far. But surely this will change... +Caveat: when writing the header for the output wssa file, the number of histories and tracks are assumed to be that of the +input MNCP run. This is generally not the case, due to losses in the McStas simulation step. +In case of losses any subsequel MCNP run based on the McStas output, can be confused by inconsistency between +header and file content. To resolve, either ensure that NPS is lower than the actual number of events in the McStas output. +Or hardcode values of nhis & ntrk in either subs.f or Virtual_mcnp_ss_output.comp. + +EXAMPLE of usage: +first a MCNP simulation is run +and at a relevant surface, a Source Surface Write card is given (e.g. for MCNP surface #1, add the line: +SSW 1 +to the end of the input file. +By this a ".w" file is produced, which then serves as input to the McStas simulation. +Present version: rename *.w to rssa, and make sure to put it in the dir from which McStas is run +\end{lstlisting} + +\subsection*{Input parameters} +Parameters in \textbf{boldface} are required; the others are optional. + +\begin{longtable}{p{0.22\textwidth}p{0.12\textwidth}p{0.46\textwidth}p{0.14\textwidth}} +\toprule +\textbf{Name} & \textbf{Unit} & \textbf{Description} & \textbf{Default} \\ +\midrule +\endhead +file & str & Name of the MCNP SSW neutron input file. Not active: Name assumed to be 'rssa' & "rssa" \\ +verbose & 1 & Toggles debugging info on/off & 1 \\ +\bottomrule +\end{longtable} + +\subsection*{Links} +\begin{itemize} + \item \href{run:/home/willend/willend-McCode/mcstas-comps/obsolete/Virtual_mcnp_ss_input.comp}{Source code} for \texttt{Virtual\_mcnp\_ss\_input.comp}. + \item \textless{}a href="http://mcnp-green.lanl.gov/index.html"\textgreater{}MCNP\textless{}/a\textgreater{} + \item MCNP -- A General Monte Carlo N-Particle Transport Code, Version 5, Volume II: User's Guide, p177 +\end{itemize} +\IfFileExists{Virtual_mcnp_ss_input_static.tex}{\input{Virtual_mcnp_ss_input_static.tex}}{} \ No newline at end of file diff --git a/docs/manuals/mcstas/obsolete/Virtual_mcnp_ss_output.tex b/docs/manuals/mcstas/obsolete/Virtual_mcnp_ss_output.tex new file mode 100644 index 000000000..1bbceb41a --- /dev/null +++ b/docs/manuals/mcstas/obsolete/Virtual_mcnp_ss_output.tex @@ -0,0 +1,73 @@ +\section{The \texttt{Virtual\_mcnp\_ss\_output} McStas Component} +This component uses a Source Surface type file of recorded neutrons from the +reactor monte carlo code MCNP as a source of particles. + +\subsection*{Identification} +\begin{itemize} + \item \textbf{Site:} + \item \textbf{Author:} \textless{}a href="mailto:esbe@dtu.dk"\textgreater{}Esben Klinkby\textless{}/a\textgreater{} and \textless{}a href="mailto:pkwi@dtu.dk"\textgreater{}Peter Willendrup\textless{}/a\textgreater{} + \item \textbf{Origin:} \textless{}a href="http://www.risoe.dtu.dk/"\textgreater{}DTU\textless{}/a\textgreater{} + \item \textbf{Date:} January, 2012 +\end{itemize} + +\subsection*{Description} +\begin{lstlisting} +This component draws neutron events from a Source Surface file created using the +MCNP Monte Carlo code and converts them to make them suitable for a McStas simulation + +Note that axes orientation may be different between MCNP and McStas! +Note also that the conversion of between McStas and MCNP units and parameters +is done automatically by this component - but the user must ensure that +geometry description matches between the two Monte Carlo codes. + +The verbose mode is highly recommended as it displays lots of useful informations. + +This interface uses the MCNP Source Surface Read/Write format (SSW/SSR). +Infomation transfer from(to) SSW files proceeds via a set of Fortran modules +and subroutines collected in "subs.f" +For succesful compilation, it is required that these subroutines are compiled +and linked to the instrument file: + +mcstas dummy.instr -> generates dummy.c +gfortran -c subs.f -> generates subs.f +gcc -o runme.out dummy.c subs.o -lm -lgfortran -> generates runme.out + +Note that this requires a fortran compiler (here gfortran) and gcc. + +%BUGS +None known bugs so far. But surely this will change... +Caveat: when writing the header for the output wssa file, the number of histories and tracks are assumed to be that of the +input MNCP run. This is generally not the case, due to losses in the McStas simulation step. +In case of losses any subsequel MCNP run based on the McStas output, can be confused by inconsistency between +header and file content. To resolve, either ensure that NPS is lower than the actual number of events in the McStas output. +Or hardcode values of nhis & ntrk in either subs.f or Virtual_mcnp_ss_output.comp. + +EXAMPLE of usage: +first a MCNP simulation is run +and at a relevant surface, a Source Surface Write card is given (e.g. for MCNP surface #1, add the line: +SSW 1 +to the end of the input file. +By this a ".w" file is produced, which then serves as input to the McStas simulation. +Present version: rename *.w to rssa, and make sure to put it in the dir from which McStas is run (or use symbolic links) +\end{lstlisting} + +\subsection*{Input parameters} +Parameters in \textbf{boldface} are required; the others are optional. + +\begin{longtable}{p{0.22\textwidth}p{0.12\textwidth}p{0.46\textwidth}p{0.14\textwidth}} +\toprule +\textbf{Name} & \textbf{Unit} & \textbf{Description} & \textbf{Default} \\ +\midrule +\endhead +file & str & Name of the MCNP SSW neutron input file. Not active: Name assumed to be 'rssa' & "rssa" \\ +verbose & 1 & Toggles debugging info on/off & 1 \\ +\bottomrule +\end{longtable} + +\subsection*{Links} +\begin{itemize} + \item \href{run:/home/willend/willend-McCode/mcstas-comps/obsolete/Virtual_mcnp_ss_output.comp}{Source code} for \texttt{Virtual\_mcnp\_ss\_output.comp}. + \item \textless{}a href="http://mcnp-green.lanl.gov/index.html"\textgreater{}MCNP\textless{}/a\textgreater{} + \item MCNP -- A General Monte Carlo N-Particle Transport Code, Version 5, Volume II: User's Guide, p177 +\end{itemize} +\IfFileExists{Virtual_mcnp_ss_output_static.tex}{\input{Virtual_mcnp_ss_output_static.tex}}{} \ No newline at end of file diff --git a/docs/manuals/mcstas/obsolete/Virtual_output.tex b/docs/manuals/mcstas/obsolete/Virtual_output.tex new file mode 100644 index 000000000..c9f2bc132 --- /dev/null +++ b/docs/manuals/mcstas/obsolete/Virtual_output.tex @@ -0,0 +1,63 @@ +\section{The \texttt{Virtual\_output} McStas Component} +Detector-like component that writes neutron state parameters into an ascci-format +'virtual source' neutron file. + +\subsection*{Identification} +\begin{itemize} + \item \textbf{Site:} + \item \textbf{Author:} \textless{}a href="mailto:farhi@ill.fr"\textgreater{}E. Farhi\textless{}/a\textgreater{} + \item \textbf{Origin:} \textless{}a href="http://www.ill.fr"\textgreater{}ILL\textless{}/a\textgreater{} + \item \textbf{Date:} Dec 17th, 2002 +\end{itemize} + +\subsection*{Description} +\begin{lstlisting} +Detector-like component writing neutron state parameters to a +virtual source neutron filename. The component geometry is the full +plane, and saves the neutron state as it exits from the previous +component. + +It is particularly useful to generate a virtual source at a point that few +neutron reach. A long simulation will then only be performed once, to create +the upstream 'source' file. Further simulations are much faster if they start +from this low flux position with the 'source' filename. + +The output file format is: +text column formatted with lines containing 11 values in the order: +p x y z vx vy vz t sx sy sz stored into about 83 bytes/n. + +Beware the size of generated files ! When saving all events (bufsize=0) the +required memory has been optimized and remains very small. On the other hand +using large bufsize values (not recommended) requires huge storage memory. +Moreover, using the 'bufsize' parameter will often lead to wrong intensities. +Both methods will generate huge files. + +A Vitess file may be obtained from the 'Vitess_output' component or from a +Vitess simulation (104 bytes per neutron) and read with Vitess_input. + +Example: Virtual_output(filename="MySource.dat") +will generate a 9 Mo text file for 1e5 events stored. + +%BUGS +Using bufsize non-zero may generate a virtual source with wrong intensity. This +component works with MPI (parallel execution mode). +\end{lstlisting} + +\subsection*{Input parameters} +Parameters in \textbf{boldface} are required; the others are optional. + +\begin{longtable}{p{0.22\textwidth}p{0.12\textwidth}p{0.46\textwidth}p{0.14\textwidth}} +\toprule +\textbf{Name} & \textbf{Unit} & \textbf{Description} & \textbf{Default} \\ +\midrule +\endhead +filename & str & Name of neutron file to write. Default is standard output [string]. If not given, a unique name will be used. & 0 \\ +bufsize & 1 & Size of neutron output buffer default is 0, i.e. save all - recommended. & 0 \\ +\bottomrule +\end{longtable} + +\subsection*{Links} +\begin{itemize} + \item \href{run:/home/willend/willend-McCode/mcstas-comps/obsolete/Virtual_output.comp}{Source code} for \texttt{Virtual\_output.comp}. +\end{itemize} +\IfFileExists{Virtual_output_static.tex}{\input{Virtual_output_static.tex}}{} \ No newline at end of file diff --git a/docs/manuals/mcstas/obsolete/Virtual_tripoli4_input.tex b/docs/manuals/mcstas/obsolete/Virtual_tripoli4_input.tex new file mode 100644 index 000000000..244259baa --- /dev/null +++ b/docs/manuals/mcstas/obsolete/Virtual_tripoli4_input.tex @@ -0,0 +1,79 @@ +\section{The \texttt{Virtual\_tripoli4\_input} McStas Component} +This component reads a file of recorded neutrons from the reactor Monte Carlo +code TRIPOLI4.4 as a source of particles. + +\subsection*{Identification} +\begin{itemize} + \item \textbf{Site:} + \item \textbf{Author:} \textless{}a href="mailto:guillaume.campioni@cea.fr"\textgreater{}Guillaume Campioni\textless{}/a\textgreater{} + \item \textbf{Origin:} \textless{}a href="http://www.serma.cea.fr/"\textgreater{}SERMA\textless{}/a\textgreater{} + \item \textbf{Date:} Sep 28th, 2001 +\end{itemize} + +\subsection*{Description} +\begin{lstlisting} +This component generates neutron events from a file created using the +TRIPOLI4 Monte Carlo code for nuclear reactors (as MCNP). It is used to +calculate flux exiting from hot or cold neutron sources. +Neutron position and velocity is set from the file. The neutron time is +left at zero. +Storage files from TRIPOLI4.4 contain several batches of particules, all +of them having the same statictical weight. + +Note that axes orientation may be different between TRIPOLI4.4 and McStas. +The component has the ability to center and orient the neutron beam to the Z-axis. +It also changes the coordinate system from the Tripoli frame to the McStas one. +The verbose mode is highly recommended as it displays lots of useful informations, +including the absolute intensity normalisation factor. All neutron fluxes in the +instrument should be multiplied by this factor. Such a renormalization is done +when 'autocenter' contains the word 'rescale'. +The source total intensity is 1.054e18 for LLB/Saclay (14 MW) and 4.28e18 for +ILL/Grenoble (58 MW). + +Format of TRIPOLI4.4 event files is : + +NEUTRON energy position_X position_Y position_Z dir_X dir_Y dir_Z weight + +energy is in Mega eV +positions are in cm and the direction vector is normalized to 1. + +%BUGS +We recommend NOT to use parallel execution (MPI) with this component. If you +need to, set parameter 'smooth=1'. + +EXAMPLE: +To create a 'source' from a Tripoli4 simulation event file for the ILL: +COMPONENT source = Virtual_tripoli4_input( +filename = "ILL_SFH.dat", intensity=4.28e18, +verbose = 1, autocenter="translate rotate rescale") +\end{lstlisting} + +\subsection*{Input parameters} +Parameters in \textbf{boldface} are required; the others are optional. + +\begin{longtable}{p{0.22\textwidth}p{0.12\textwidth}p{0.46\textwidth}p{0.14\textwidth}} +\toprule +\textbf{Name} & \textbf{Unit} & \textbf{Description} & \textbf{Default} \\ +\midrule +\endhead +filename & str & Name of the Tripoli4.4 neutron input file. Empty string "" unactivates component & 0 \\ +autocenter & str & String which may contain following keywords. "translate" or "center" to center the beam area AT (0,0,0) "rotate" or "orient" to center the beam velocity along Z "rescale" to adapt intensity to abs. units. Other words are ignored. & 0 \\ +repeat\_count & 1 & Number of times the source must be generated. 0 unactivates the component & 1 \\ +verbose & 0|1 & Displays additional informations if set to 1 & 0 \\ +intensity & n/s & Initial total Source integrated intensity & 1 \\ +T4\_ANALYSE & 1 & Number of neutron events to read for file pre-analysis. Use 0 to analyze them all. & 10000 \\ +radius & m & In the case the Tripoli4 batch file is a point, you may specify a disk emission area for the source. & 0 \\ +T4\_ANALYSE\_EMIN & meV & Minimal energy to use for file pre-analysis & 0 \\ +T4\_ANALYSE\_EMAX & meV & Maximal energy to use for file pre-analysis & 0 \\ +smooth & 0/1 & Smooth sparsed event files for file repetitions. & 1 \\ +\bottomrule +\end{longtable} + +\subsection*{Links} +\begin{itemize} + \item \href{run:/home/willend/willend-McCode/mcstas-comps/obsolete/Virtual_tripoli4_input.comp}{Source code} for \texttt{Virtual\_tripoli4\_input.comp}. + \item \textless{}a href="http://www.nea.fr/html/dbprog/tripoli-abs.html"\textgreater{}Tripoli\textless{}/a\textgreater{} + \item Virtual\_tripoli4\_output + \item CAMPIONI Guillaume, Etude et Modelisation des Sources Froides de Neutrons, These de Doctorat, CEA Saclay/UJF (2004) +\end{itemize} +\IfFileExists{Virtual_tripoli4_input_static.tex}{\input{Virtual_tripoli4_input_static.tex}}{} \ No newline at end of file diff --git a/docs/manuals/mcstas/obsolete/Virtual_tripoli4_output.tex b/docs/manuals/mcstas/obsolete/Virtual_tripoli4_output.tex new file mode 100644 index 000000000..2daf90ef4 --- /dev/null +++ b/docs/manuals/mcstas/obsolete/Virtual_tripoli4_output.tex @@ -0,0 +1,57 @@ +\section{The \texttt{Virtual\_tripoli4\_output} McStas Component} +Detector-like component that writes neutron state parameters into a +'virtual source' neutron file when neutrons come from the source : +Virtual\_tripoli4\_input.comp + +\subsection*{Identification} +\begin{itemize} + \item \textbf{Site:} + \item \textbf{Author:} \textless{}a href="mailtoguillaume.campioni@cea.fr"\textgreater{}Guillaume Campioni\textless{}/a\textgreater{} + \item \textbf{Origin:} \textless{}a href="http://www.cea-llb.fr"\textgreater{}LLB\textless{}/a\textgreater{} + \item \textbf{Date:} Sep 28th, 2001 +\end{itemize} + +\subsection*{Description} +\begin{lstlisting} +Detector-like component writing neutron state parameters to a +virtual source neutron file when neutron are coming from a +Virtual_tripoli4_input.comp. +The component geometry is the full plane, and saves the neutron state as +it exits from the previous component. +Format is the one used by TRIPOLI4.4 stock files : + +NEUTRON energy position_X position_Y position_Z dir_X dir_Y dir_Z weight + +energy is in [Mega eV] +positions are in [cm] and the direction vector is normalized to 1. + +%BUGS +This component will NOT work with parallel execution (MPI/GPU). + +EXAMPLE: +To create a file collecting all neutron states with TRIPOLI4 format +COMPONENT T4output = Virtual_tripoli4_output( +filename = "exit_guide_result.dat", batch = 1 ) +at the position where will be the Virtual_tripoli4_input when reading the file. +\end{lstlisting} + +\subsection*{Input parameters} +Parameters in \textbf{boldface} are required; the others are optional. + +\begin{longtable}{p{0.22\textwidth}p{0.12\textwidth}p{0.46\textwidth}p{0.14\textwidth}} +\toprule +\textbf{Name} & \textbf{Unit} & \textbf{Description} & \textbf{Default} \\ +\midrule +\endhead +filename & str & Name of the Tripoli4 neutron output file, & 0 \\ +batch & 1 & Index of the Tripoli batch to generate, when no & 1 \\ +\bottomrule +\end{longtable} + +\subsection*{Links} +\begin{itemize} + \item \href{run:/home/willend/willend-McCode/mcstas-comps/obsolete/Virtual_tripoli4_output.comp}{Source code} for \texttt{Virtual\_tripoli4\_output.comp}. + \item \textless{}a href="http://www.nea.fr/html/dbprog/tripoli-abs.html"\textgreater{}Tripoli\textless{}/a\textgreater{} + \item Virtual\_tripoli4\_input +\end{itemize} +\IfFileExists{Virtual_tripoli4_output_static.tex}{\input{Virtual_tripoli4_output_static.tex}}{} \ No newline at end of file diff --git a/docs/manuals/mcstas/obsolete/Vitess_input.tex b/docs/manuals/mcstas/obsolete/Vitess_input.tex new file mode 100644 index 000000000..c2217c949 --- /dev/null +++ b/docs/manuals/mcstas/obsolete/Vitess_input.tex @@ -0,0 +1,42 @@ +\section{The \texttt{Vitess\_input} McStas Component} +Read neutron state parameters from VITESS neutron filename. + +\subsection*{Identification} +\begin{itemize} + \item \textbf{Site:} + \item \textbf{Author:} Kristian Nielsen + \item \textbf{Origin:} Risoe/ILL + \item \textbf{Date:} June 6, 2000 +\end{itemize} + +\subsection*{Description} +\begin{lstlisting} +Source-like component reading neutron state parameters from a +VITESS neutron filename. Used to interface McStas components or +simulations into VITESS. Each neutron is 104 bytes. + +Example: Vitess_input(filename="MySource.vit", bufsize = 10000, repeat_count = 2) + +%BUGS +We recommend NOT to use parallel execution (MPI) with this component. +\end{lstlisting} + +\subsection*{Input parameters} +Parameters in \textbf{boldface} are required; the others are optional. + +\begin{longtable}{p{0.22\textwidth}p{0.12\textwidth}p{0.46\textwidth}p{0.14\textwidth}} +\toprule +\textbf{Name} & \textbf{Unit} & \textbf{Description} & \textbf{Default} \\ +\midrule +\endhead +filename & string & Filename of neutron file to read. Default (NULL) is standard input. Empty string "" unactivates component & 0 \\ +bufsize & records & Size of neutron input buffer & 10000 \\ +repeat\_count & 1 & Number of times to repeat each neutron read & 1 \\ +\bottomrule +\end{longtable} + +\subsection*{Links} +\begin{itemize} + \item \href{run:/home/willend/willend-McCode/mcstas-comps/obsolete/Vitess_input.comp}{Source code} for \texttt{Vitess\_input.comp}. +\end{itemize} +\IfFileExists{Vitess_input_static.tex}{\input{Vitess_input_static.tex}}{} \ No newline at end of file diff --git a/docs/manuals/mcstas/obsolete/Vitess_output.tex b/docs/manuals/mcstas/obsolete/Vitess_output.tex new file mode 100644 index 000000000..fb73b24aa --- /dev/null +++ b/docs/manuals/mcstas/obsolete/Vitess_output.tex @@ -0,0 +1,47 @@ +\section{The \texttt{Vitess\_output} McStas Component} +Write neutron state parameters to VITESS neutron filename. + +\subsection*{Identification} +\begin{itemize} + \item \textbf{Site:} + \item \textbf{Author:} Kristian Nielsen + \item \textbf{Origin:} Risoe/ILL + \item \textbf{Date:} June 6, 2000 +\end{itemize} + +\subsection*{Description} +\begin{lstlisting} +Detector-like component writing neutron state parameters to a +VITESS neutron filename. Used to interface McStas components or +simulations into VITESS. Each neutron is 104 bytes. + +Note that when standard output is used, as is the default, no +monitors or other components that produce terminal output must be +used, or the neutron output from this component will become +corrupted. + +Example: Vitess_output(filename="MySource.vit", bufsize = 10000, progress = 1) + +%BUGS +This component will NOT work with parallel execution (MPI). +\end{lstlisting} + +\subsection*{Input parameters} +Parameters in \textbf{boldface} are required; the others are optional. + +\begin{longtable}{p{0.22\textwidth}p{0.12\textwidth}p{0.46\textwidth}p{0.14\textwidth}} +\toprule +\textbf{Name} & \textbf{Unit} & \textbf{Description} & \textbf{Default} \\ +\midrule +\endhead +filename & string & Filename of neutron file to write. Default is standard output & 0 \\ +bufsize & records & Size of neutron output buffer & 10000 \\ +progress & flag & If not zero, output dots as progress indicator & 0 \\ +\bottomrule +\end{longtable} + +\subsection*{Links} +\begin{itemize} + \item \href{run:/home/willend/willend-McCode/mcstas-comps/obsolete/Vitess_output.comp}{Source code} for \texttt{Vitess\_output.comp}. +\end{itemize} +\IfFileExists{Vitess_output_static.tex}{\input{Vitess_output_static.tex}}{} \ No newline at end of file diff --git a/docs/manuals/mcstas/optics/Absorber.tex b/docs/manuals/mcstas/optics/Absorber.tex new file mode 100644 index 000000000..07b54117d --- /dev/null +++ b/docs/manuals/mcstas/optics/Absorber.tex @@ -0,0 +1,40 @@ +\section{The \texttt{Absorber} McStas Component} +Box-shaped absorbing slab. + +\subsection*{Identification} +\begin{itemize} + \item \textbf{Site:} + \item \textbf{Author:} Peter Willendrup + \item \textbf{Origin:} Risoe + \item \textbf{Date:} November 2008 +\end{itemize} + +\subsection*{Description} +\begin{lstlisting} +Infinitely absorbing slab of material. + +Example: Absorber(xmin=-0.01, xmax=0.01, ymin=-0.05, ymax=0.05, zmin=-0.2, zmax=0) +\end{lstlisting} + +\subsection*{Input parameters} +Parameters in \textbf{boldface} are required; the others are optional. + +\begin{longtable}{p{0.22\textwidth}p{0.12\textwidth}p{0.46\textwidth}p{0.14\textwidth}} +\toprule +\textbf{Name} & \textbf{Unit} & \textbf{Description} & \textbf{Default} \\ +\midrule +\endhead +xmin & m & Lower x bound & 0 \\ +xmax & m & Upper x bound & 0 \\ +ymin & m & Lower y bound & 0 \\ +ymax & m & Upper y bound & 0 \\ +zmin & m & Lower z bound & 0 \\ +zmax & m & Upper z bound & 0 \\ +\bottomrule +\end{longtable} + +\subsection*{Links} +\begin{itemize} + \item \href{run:/home/willend/willend-McCode/mcstas-comps/optics/Absorber.comp}{Source code} for \texttt{Absorber.comp}. +\end{itemize} +\IfFileExists{Absorber_static.tex}{\input{Absorber_static.tex}}{} \ No newline at end of file diff --git a/docs/manuals/mcstas/optics/Arm.tex b/docs/manuals/mcstas/optics/Arm.tex new file mode 100644 index 000000000..a37b4250f --- /dev/null +++ b/docs/manuals/mcstas/optics/Arm.tex @@ -0,0 +1,35 @@ +\section{The \texttt{Arm} McStas Component} +Arm/optical bench + +\subsection*{Identification} +\begin{itemize} + \item \textbf{Site:} + \item \textbf{Author:} Kim Lefmann and Kristian Nielsen + \item \textbf{Origin:} Risoe + \item \textbf{Date:} September 1997 +\end{itemize} + +\subsection*{Description} +\begin{lstlisting} +An arm does not actually do anything, it is just there to set +up a new coordinate system. + +Example: Arm() +\end{lstlisting} + +\subsection*{Input parameters} +Parameters in \textbf{boldface} are required; the others are optional. + +\begin{longtable}{p{0.22\textwidth}p{0.12\textwidth}p{0.46\textwidth}p{0.14\textwidth}} +\toprule +\textbf{Name} & \textbf{Unit} & \textbf{Description} & \textbf{Default} \\ +\midrule +\endhead +\bottomrule +\end{longtable} + +\subsection*{Links} +\begin{itemize} + \item \href{run:/home/willend/willend-McCode/mcstas-comps/optics/Arm.comp}{Source code} for \texttt{Arm.comp}. +\end{itemize} +\IfFileExists{Arm_static.tex}{\input{Arm_static.tex}}{} \ No newline at end of file diff --git a/docs/manuals/mcstas/optics/Beamstop.tex b/docs/manuals/mcstas/optics/Beamstop.tex new file mode 100644 index 000000000..668f099d5 --- /dev/null +++ b/docs/manuals/mcstas/optics/Beamstop.tex @@ -0,0 +1,45 @@ +\section{The \texttt{Beamstop} McStas Component} +Rectangular/circular beam stop. + +\subsection*{Identification} +\begin{itemize} + \item \textbf{Site:} + \item \textbf{Author:} Kristian Nielsen + \item \textbf{Origin:} Risoe + \item \textbf{Date:} January 2000 +\end{itemize} + +\subsection*{Description} +\begin{lstlisting} +A simple rectangular or circular beam stop. +Infinitely thin and infinitely absorbing. +The beam stop is by default rectangular. You may either +specify the radius (circular shape), or the rectangular bounds. + +Example: Beamstop(xmin=-0.05, xmax=0.05, ymin=-0.05, ymax=0.05) +Beamstop(radius=0.1) +\end{lstlisting} + +\subsection*{Input parameters} +Parameters in \textbf{boldface} are required; the others are optional. + +\begin{longtable}{p{0.22\textwidth}p{0.12\textwidth}p{0.46\textwidth}p{0.14\textwidth}} +\toprule +\textbf{Name} & \textbf{Unit} & \textbf{Description} & \textbf{Default} \\ +\midrule +\endhead +xmin & m & Lower x bound & -0.05 \\ +xmax & m & Upper x bound & 0.05 \\ +ymin & m & Lower y bound & -0.05 \\ +ymax & m & Upper y bound & 0.05 \\ +xwidth & m & Width of beamstop (x). Overrides xmin, xmax. & 0 \\ +yheight & m & Height of beamstop (y). Overrides ymin, ymax. & 0 \\ +radius & m & radius of the beam stop in the z=0 plane, centered at Origo & 0 \\ +\bottomrule +\end{longtable} + +\subsection*{Links} +\begin{itemize} + \item \href{run:/home/willend/willend-McCode/mcstas-comps/optics/Beamstop.comp}{Source code} for \texttt{Beamstop.comp}. +\end{itemize} +\IfFileExists{Beamstop_static.tex}{\input{Beamstop_static.tex}}{} \ No newline at end of file diff --git a/docs/manuals/mcstas/optics/Bender.tex b/docs/manuals/mcstas/optics/Bender.tex new file mode 100644 index 000000000..e80dfc0d0 --- /dev/null +++ b/docs/manuals/mcstas/optics/Bender.tex @@ -0,0 +1,88 @@ +\section{The \texttt{Bender} McStas Component} +Models a curved neutron guide. + +\subsection*{Identification} +\begin{itemize} + \item \textbf{Site:} + \item \textbf{Author:} Philipp Bernhardt + \item \textbf{Origin:} Uni. Erlangen (Germany) + \item \textbf{Date:} Februar 7 1999 +\end{itemize} + +\subsection*{Description} +\begin{lstlisting} +Models a curved neutron guide with cylindrical walls. + +Bender radius, entrance width and height are necessary input data. To define +the bender, you may either enter the deviation angle 'Win' or the length 'l'. +The bender may consist of 'k' vertical channels, separated by partitioning walls +of thickness 'd'. Three different reflectivity profiles can be given: for outer +walls, for inner walls and for the top and bottom walls. The partitioning walls +have the same coating as the exterior walls. + +The entrance lies in the X-Y plane, centered on the Z axis. The neutrons will +also leave the bender in the X-Y plane at the z-value l=r*Win, i.e. they are +centred on (0,0,r*Win); they have an (average) flight direction along the z-axis. +Therefore, the following component is adjacent, if positioned AT (0,0,r*Win) +without rotation. +So, seen from outside, it behaves like a straight guide along the Z axis. As a +consequence, it is shown straight in 'mcdisplay'. +This behaviour results from a co-ordinate transformation inside the component. +It is done to facilitate its use. Neither rotation nor shift along the x-axis +need to be calculated; a new arm is not necessary. Internally, the bender is +bent to the negative X axis; + +Example: +Bender of 120 mm height, 50 mm width, 250 m radius and 0.04 rad (or 2.292 deg) curvature +not channeled, with a standard m=2 coating on + +Bender(w=0.05,h=0.12,r=250,Win=0.04, +R0a=0.99,Qca=0.021,alphaa=6.07,ma=2,Wa=0.003, +R0i=0.99,Qci=0.021,alphai=6.07,mi=2,Wi=0.003, +R0s=0.99,Qcs=0.021,alphas=6.07,ms=2,Ws=0.003) + +%BUGS +Some users have reported potentially strange behaviours with this component. +This component does not work with gravitation on. +\end{lstlisting} + +\subsection*{Input parameters} +Parameters in \textbf{boldface} are required; the others are optional. + +\begin{longtable}{p{0.22\textwidth}p{0.12\textwidth}p{0.46\textwidth}p{0.14\textwidth}} +\toprule +\textbf{Name} & \textbf{Unit} & \textbf{Description} & \textbf{Default} \\ +\midrule +\endhead +\textbf{w} & m & Width at the bender entry and exit & \\ +\textbf{h} & m & Height at the bender entry and exit & \\ +\textbf{r} & m & Radius of the bender & \\ +Win & rad & Angle of the deflection of the whole bender & 0.04 \\ +k & 1 & Number of channels inside the bender & 1 \\ +d & m & Thickness of one blade separating the channels & 0.001 \\ +l & m & length of bender l=r*Win & 0 \\ +R0a & 1 & Low-angle reflectivity at the \textless{}b\textgreater{}outer\textless{}/b\textgreater{} side of the bender & 0.99 \\ +Qca & AA-1 & Critical scattering vector & 0.021 \\ +alphaa & AA & Slope of reflectivity & 6.07 \\ +ma & 1 & m-value of material & 2 \\ +Wa & AA-1 & Width of supermirror cut-off & 0.003 \\ +R0i & 1 & Low-angle reflectivity at the \textless{}b\textgreater{}inner\textless{}/b\textgreater{} side of the bender & 0.99 \\ +Qci & AA-1 & Critical scattering vector & 0.021 \\ +alphai & AA & Slope of reflectivity & 6.07 \\ +mi & 1 & m-value of material & 2 \\ +Wi & AA-1 & Width of supermirror cut-off & 0.003 \\ +R0s & 1 & Low-angle reflectivity at the \textless{}b\textgreater{}top and bottom\textless{}/b\textgreater{} side of the bender & 0.99 \\ +Qcs & AA-1 & Critical scattering vector & 0.021 \\ +alphas & AA & Slope of reflectivity & 6.07 \\ +ms & 1 & m-value of material & 2 \\ +Ws & AA-1 & Width of supermirror cut-off & 0.003 \\ +\bottomrule +\end{longtable} + +\subsection*{Links} +\begin{itemize} + \item \href{run:/home/willend/willend-McCode/mcstas-comps/optics/Bender.comp}{Source code} for \texttt{Bender.comp}. + \item \textless{}a href="../contrib/Guide\_curved.comp.html\textgreater{}Guide\_curved\textless{}/a\textgreater{} (contributed) + \item See also \textless{}a href="http://mailman.risoe.dk/pipermail/neutron-mc/1999q1/000052.html"\textgreater{}Additional note\textless{}/a\textgreater{} from \textless{}a href="mailto:philipp.bernhardt@siemens.com"\textgreater{}Philipp Bernhardt\textless{}/a\textgreater{}. +\end{itemize} +\IfFileExists{Bender_static.tex}{\input{Bender_static.tex}}{} \ No newline at end of file diff --git a/docs/manuals/mcstas/optics/Collimator_linear.tex b/docs/manuals/mcstas/optics/Collimator_linear.tex new file mode 100644 index 000000000..ee97cd544 --- /dev/null +++ b/docs/manuals/mcstas/optics/Collimator_linear.tex @@ -0,0 +1,47 @@ +\section{The \texttt{Collimator\_linear} McStas Component} +A simple analytical Soller collimator (with triangular transmission). + +\subsection*{Identification} +\begin{itemize} + \item \textbf{Site:} + \item \textbf{Author:} Kristian Nielsen + \item \textbf{Origin:} Risoe + \item \textbf{Date:} August 1998 +\end{itemize} + +\subsection*{Description} +\begin{lstlisting} +Soller collimator with rectangular opening and specified length. The +transmission function is an average and does not utilize knowledge of the +actual neutron trajectory. A zero divergence disables collimation (then the +component works as a double slit). + +Example: Collimator_linear(xmin=-0.1, xmax=0.1, ymin=-0.1, ymax=0.1, length=0.25, divergence=40,transmission=0.7) +\end{lstlisting} + +\subsection*{Input parameters} +Parameters in \textbf{boldface} are required; the others are optional. + +\begin{longtable}{p{0.22\textwidth}p{0.12\textwidth}p{0.46\textwidth}p{0.14\textwidth}} +\toprule +\textbf{Name} & \textbf{Unit} & \textbf{Description} & \textbf{Default} \\ +\midrule +\endhead +xmin & m & Lower x bound on slits & -0.02 \\ +xmax & m & Upper x bound on slits & 0.02 \\ +ymin & m & Lower y bound on slits & -0.05 \\ +ymax & m & Upper y bound on slits & 0.05 \\ +xwidth & m & Width of slits & 0 \\ +yheight & m & Height of slits & 0 \\ +length & m & Distance between input and output slits & 0.3 \\ +divergence & minutes of arc & Divergence horizontal angle (calculated as atan(d/length), where d is the blade spacing) & 40 \\ +transmission & 1 & Transmission of Soller (0\textless{}=t\textless{}=1) & 1 \\ +divergenceV & minutes of arc & Divergence vertical angle & 0 \\ +\bottomrule +\end{longtable} + +\subsection*{Links} +\begin{itemize} + \item \href{run:/home/willend/willend-McCode/mcstas-comps/optics/Collimator_linear.comp}{Source code} for \texttt{Collimator\_linear.comp}. +\end{itemize} +\IfFileExists{Collimator_linear_static.tex}{\input{Collimator_linear_static.tex}}{} \ No newline at end of file diff --git a/docs/manuals/mcstas/optics/Collimator_radial.tex b/docs/manuals/mcstas/optics/Collimator_radial.tex new file mode 100644 index 000000000..6d4410c16 --- /dev/null +++ b/docs/manuals/mcstas/optics/Collimator_radial.tex @@ -0,0 +1,74 @@ +\section{The \texttt{Collimator\_radial} McStas Component} +A radial Soller collimator. + +\subsection*{Identification} +\begin{itemize} + \item \textbf{Site:} + \item \textbf{Author:} Emmanuel Farhi \textless{}farhi@ill.fr\textgreater{} + \item \textbf{Origin:} ILL + \item \textbf{Date:} July 2005 +\end{itemize} + +\subsection*{Description} +\begin{lstlisting} +Radial Soller collimator with rectangular opening and specified length. +The collimator is made of many rectangular channels stacked radially. +Each channel is a set of transmitting layers (nslit), separated by an absorbing +material (infinitely thin), the whole stuff is inside an absorbing housing. + +When specifying the number of channels (nchan), each channel has a total +entrance width=radius*fabs(theta_max-theta_min)/nchan, but only the central +portion 'xwidth' accepts neutrons. When xwidth=0, it is set to the full +apperture so that all neutrons enter the channels (all walls are infinitely thin). + +When using zero as the number of channels (nchan), the collimator is continuous, +whithout shadowing effect. + +The component should be positioned at the radius center. +The component can be made oscillating (usual on diffractometers and TOF +machines) with the 'roc' parameter. +The neutron beam outside the collimator angular area is transmitted unaffected. + +When used as a focusing collimator, the focusing parameter should be set to 1. + +An example of a instrument that uses this collimator can be found in the SALSA instrument, +in the example folder + +Example: +Channelled radial collimator with shadow parts +Collimator_radial(xwidth=0.015, yheight=.3, length=.35, divergence=40,transmission=1, theta_min=5, theta_max=165, nchan=128, radius=0.9) +A continuous radial collimator +Collimator_radial(yheight=.3, length=.35, divergence=40,transmission=1, theta_min=5, theta_max=165, radius=0.9) +\end{lstlisting} + +\subsection*{Input parameters} +Parameters in \textbf{boldface} are required; the others are optional. + +\begin{longtable}{p{0.22\textwidth}p{0.12\textwidth}p{0.46\textwidth}p{0.14\textwidth}} +\toprule +\textbf{Name} & \textbf{Unit} & \textbf{Description} & \textbf{Default} \\ +\midrule +\endhead +xwidth & m & Soller window width, filled with nslit slits. Use 0 value for continuous collimator. & 0 \\ +yheight & m & Collimator height. If yheight\_inner is specified, then this is the outer cylinders height & .3 \\ +length & m & Length/Distance between inner and outer slits. & .35 \\ +divergence & min of arc & Divergence angle. May also be specified with the nslit parameter. A zero value unactivates component. & 0 \\ +transmission & 1 & Maximum transmission of Soller (0\textless{}=t\textless{}=1). & 1 \\ +theta\_min & deg & Minimum Theta angle for the radial setting. & 5 \\ +theta\_max & deg & Maximum Theta angle for the radial setting. & 165 \\ +nchan & 1 & Number of Soller channels in the theta range. Use 0 value for continuous collimator. & 0 \\ +radius & m & Radius of the collimator (to entry window). & 1.3 \\ +nslit & 1 & Number of blades composing each Soller. Overrides the divergence parameter. & 0 \\ +roc & deg & Amplitude of oscillation of collimator. 0=fixed. & 0 \\ +verbose & & Gives additional information. & 0 \\ +approx & & Use Soller triangular transmission approximation. & 0 \\ +focusing & 1 & When set allows you to use the collimators for focusing, rather than dispersing. & 0 \\ +yheight\_inner & 1 & Defines the inner height of the collimator & 0 \\ +\bottomrule +\end{longtable} + +\subsection*{Links} +\begin{itemize} + \item \href{run:/home/willend/willend-McCode/mcstas-comps/optics/Collimator_radial.comp}{Source code} for \texttt{Collimator\_radial.comp}. +\end{itemize} +\IfFileExists{Collimator_radial_static.tex}{\input{Collimator_radial_static.tex}}{} \ No newline at end of file diff --git a/docs/manuals/mcstas/optics/Derotator.tex b/docs/manuals/mcstas/optics/Derotator.tex new file mode 100644 index 000000000..17831e9fd --- /dev/null +++ b/docs/manuals/mcstas/optics/Derotator.tex @@ -0,0 +1,41 @@ +\section{The \texttt{Derotator} McStas Component} +The counterpart of the Rotator component. + +\subsection*{Identification} +\begin{itemize} + \item \textbf{Site:} + \item \textbf{Author:} Emmanuel Farhi + \item \textbf{Origin:} \textless{}a href="http://www.ill.fr"\textgreater{}ILL\textless{}/a\textgreater{} + \item \textbf{Date:} June 20th 2013 +\end{itemize} + +\subsection*{Description} +\begin{lstlisting} +A component which stops the rotative frame set by the Rotator component. +Its position should better coincide with the Rotator instance. +Components preceding the Derotator are rotating, all following are steady. + +Example: +R=Rotator(nu=14, phase=0) +... +DR=Derotator(rotator="R") +AT (0,0,0) RELATIVE R +\end{lstlisting} + +\subsection*{Input parameters} +Parameters in \textbf{boldface} are required; the others are optional. + +\begin{longtable}{p{0.22\textwidth}p{0.12\textwidth}p{0.46\textwidth}p{0.14\textwidth}} +\toprule +\textbf{Name} & \textbf{Unit} & \textbf{Description} & \textbf{Default} \\ +\midrule +\endhead +\textbf{rotator} & string & the name of the Rotator component used to initiate the rotation & \\ +\bottomrule +\end{longtable} + +\subsection*{Links} +\begin{itemize} + \item \href{run:/home/willend/willend-McCode/mcstas-comps/optics/Derotator.comp}{Source code} for \texttt{Derotator.comp}. +\end{itemize} +\IfFileExists{Derotator_static.tex}{\input{Derotator_static.tex}}{} \ No newline at end of file diff --git a/docs/manuals/mcstas/optics/Diaphragm.tex b/docs/manuals/mcstas/optics/Diaphragm.tex new file mode 100644 index 000000000..dcd1d7b99 --- /dev/null +++ b/docs/manuals/mcstas/optics/Diaphragm.tex @@ -0,0 +1,40 @@ +\section{The \texttt{Diaphragm} McStas Component} +Rectangular/circular diaphragm (alias of the Slit component) + +\subsection*{Identification} +\begin{itemize} + \item \textbf{Site:} + \item \textbf{Author:} Peter Willendrup + \item \textbf{Origin:} DTU + \item \textbf{Date:} February 2016 +\end{itemize} + +\subsection*{Description} +\begin{lstlisting} +A simple rectangular or circular diaphragm. You may either +specify the radius (circular shape), or the rectangular bounds. +No transmission around the diaphragm is allowed. + +Example: Diaphragm(xmin=-0.01, xmax=0.01, ymin=-0.01, ymax=0.01) +Diaphragm(radius=0.01) + + +For INPUT PARAMETERS - please consult Slit.comp as Diaphragm is a copy of that component. +\end{lstlisting} + +\subsection*{Input parameters} +Parameters in \textbf{boldface} are required; the others are optional. + +\begin{longtable}{p{0.22\textwidth}p{0.12\textwidth}p{0.46\textwidth}p{0.14\textwidth}} +\toprule +\textbf{Name} & \textbf{Unit} & \textbf{Description} & \textbf{Default} \\ +\midrule +\endhead +\bottomrule +\end{longtable} + +\subsection*{Links} +\begin{itemize} + \item \href{run:/home/willend/willend-McCode/mcstas-comps/optics/Diaphragm.comp}{Source code} for \texttt{Diaphragm.comp}. +\end{itemize} +\IfFileExists{Diaphragm_static.tex}{\input{Diaphragm_static.tex}}{} \ No newline at end of file diff --git a/docs/manuals/mcstas/optics/DiskChopper.tex b/docs/manuals/mcstas/optics/DiskChopper.tex new file mode 100644 index 000000000..81ffb9ea5 --- /dev/null +++ b/docs/manuals/mcstas/optics/DiskChopper.tex @@ -0,0 +1,69 @@ +\section{The \texttt{DiskChopper} McStas Component} +Based on Chopper (Philipp Bernhardt), Jitter and beamstop from work by +Kaspar Hewitt Klenoe (jan 2006), adjustments by Rob Bewey (march 2006) + +\subsection*{Identification} +\begin{itemize} + \item \textbf{Site:} + \item \textbf{Author:} Peter Willendrup + \item \textbf{Origin:} Risoe + \item \textbf{Date:} March 9 2006 +\end{itemize} + +\subsection*{Description} +\begin{lstlisting} +Models a disc chopper with nslit identical slits, which are symmetrically distributed +on the disc. At time t=0, the centre of the first slit opening will be situated at the +vertical axis when phase=0, assuming the chopper centre of rotation is placed BELOW the beam axis. +If you want to place the chopper ABOVE the beam axis, please use a 180 degree rotation around Z +(otherwise unexpected beam splitting can occur in combination with the isfirst=1 setting, see +related bug on GitHub) + +For more complicated gemometries, see component manual example of DiskChopper GROUPing. + +If the chopper is the 1st chopper of a continuous source instrument, you should use the "isfirst" parameter. +This parameter SETS the neutron time to match the passage of the chooper slit(s), taking into account the +chopper timing and phasing (thus conserving your simulated statistics). + +The isfirst parameter is ONLY relevant for use in continuous source settings. + +Example: DiskChopper(radius=0.2, theta_0=10, nu=41.7, nslit=3, delay=0, isfirst=1) First chopper +DiskChopper(radius=0.2, theta_0=10, nu=41.7, nslit=3, delay=0, isfirst=0) + +NOTA BENE wrt. GROUPing and isfirst: +When setting up a GROUP of DiskChoppers for a steady-state / reactor source, you will need +to set up +1) An initial chopper with isfirst=1, NOT part of the GROUP - and using a "big" chopper opening +that spans the full angular extent of the openings of the subsequent GROUP +2) Add your DiskChopper GROUP setting isfirst=0 +\end{lstlisting} + +\subsection*{Input parameters} +Parameters in \textbf{boldface} are required; the others are optional. + +\begin{longtable}{p{0.22\textwidth}p{0.12\textwidth}p{0.46\textwidth}p{0.14\textwidth}} +\toprule +\textbf{Name} & \textbf{Unit} & \textbf{Description} & \textbf{Default} \\ +\midrule +\endhead +theta\_0 & deg & Angular width of the slits. & 0 \\ +radius & m & Radius of the disc & 0.5 \\ +\textbf{yheight} & m & Slit height (if = 0, equal to radius). Auto centering of beam at half height. & \\ +\textbf{nu} & Hz & Frequency of the Chopper, omega=2*PI*nu (algebraic sign defines the direction of rotation) & \\ +nslit & 1 & Number of slits, regularly arranged around the disk & 3 \\ +jitter & s & Jitter in the time phase & 0 \\ +delay & s & Time 'delay' & 0 \\ +isfirst & 0/1 & Set it to 1 for the first chopper position in a cw source (it then spreads the neutron time distribution) & 0 \\ +n\_pulse & 1 & Number of pulses (Only if isfirst) & 1 \\ +abs\_out & 0/1 & Absorb neutrons hitting outside of chopper radius? & 1 \\ +phase & deg & Angular 'delay' (overrides delay) & 0 \\ +xwidth & m & Horizontal slit width opening at beam center & 0 \\ +verbose & 1 & Set to 1 to display Disk chopper configuration & 0 \\ +\bottomrule +\end{longtable} + +\subsection*{Links} +\begin{itemize} + \item \href{run:/home/willend/willend-McCode/mcstas-comps/optics/DiskChopper.comp}{Source code} for \texttt{DiskChopper.comp}. +\end{itemize} +\IfFileExists{DiskChopper_static.tex}{\input{DiskChopper_static.tex}}{} \ No newline at end of file diff --git a/docs/manuals/mcstas/optics/Elliptic_guide_gravity.tex b/docs/manuals/mcstas/optics/Elliptic_guide_gravity.tex new file mode 100644 index 000000000..befead359 --- /dev/null +++ b/docs/manuals/mcstas/optics/Elliptic_guide_gravity.tex @@ -0,0 +1,128 @@ +\section{The \texttt{Elliptic\_guide\_gravity} McStas Component} +Perfect elliptic guide which allow for simulations with gravity. +The guide mirrors can be divided into segments with individual m-values. +Parabolic guide components can also be simulated. + +\subsection*{Identification} +\begin{itemize} + \item \textbf{Site:} + \item \textbf{Author:} Henrik Bo Hoffmann Carlsen and Mads Bertelsen + \item \textbf{Origin:} NBI + \item \textbf{Date:} 27 Aug 2012 +\end{itemize} + +\subsection*{Description} +\begin{lstlisting} +The perfect elliptic guide is centered along the z-axis with the entrance +and exit in the xy-plane. The horizontal and vertical ellipses defining +the guide geometry is by default set by two focal points. +These are placed a distance away from the guide openings along the z-axis; +if distance given is positive, when the focal point is outside the guide. + +Multiple options for defining these ellipse exist including approximation of +parabolas and half ellipses (mid point of the ellipse or one of the guide openings) + +The guide coating parameters can be set for each side of the guide. +Furthermore the m-value can be specified for user defined segments +of the guide. + +Example 1, Elliptical definition using focal points: + +Elliptic_guide_gravity( +l=50, +linxw=5,linyh=5,loutxw=10,loutyh=10, +xwidth=0.05,yheight=0.05, +R0=0.99,Qc=0.0219,alpha=6.07,m=1.0,W=0.003 +) + +Example 2: Half elliptical definition: + +Elliptic_guide_gravity( +l=50, +linxw=5,linyh=5,loutxw=10,loutyh=10, +xwidth=0.1,yheight=0.1, +R0=0.99,Qc=0.0219,alpha=6.07,m=1.0,W=0.003, +option = "halfEllipse", +dimensionsAt = "entrance" +) + +Example 3: Parabolic approximation: + +Elliptic_guide_gravity( +l=50, +linxw=5,linyh=5,loutxw=1e6,loutyh=1e6, // values larger than 1e8 may cause erroneous results +xwidth=0.1,yheight=0.1, +R0 = 0.99,Qc=0.0219,alpha=6.07,m=1.0,W=0.003, +dimensionsAt = "exit" +) + +Example 4: Elliptical definition with varying m-values: + +Elliptic_guide_gravity( +l=50, +linxw=5,linyh=5,loutxw=10,loutyh=10, +xwidth=0.1,yheight=0.1, +R0 = 0.99,Qc=0.0219,alpha=6.07,m=1.0,W=0.003, +mvaluesright=marray,mvaluesleft=marray,mvaluestop=marray,mvaluesbottom=marray +) + +where marray is initialized as +for(iter=0; iter < 50; iter++){ marray[iter] = 2; } +And Declared as +double mValues[50]; +If you are using the array-based coating-specification, you **must** give nSegments a compatible value. +\end{lstlisting} + +\subsection*{Input parameters} +Parameters in \textbf{boldface} are required; the others are optional. + +\begin{longtable}{p{0.22\textwidth}p{0.12\textwidth}p{0.46\textwidth}p{0.14\textwidth}} +\toprule +\textbf{Name} & \textbf{Unit} & \textbf{Description} & \textbf{Default} \\ +\midrule +\endhead +xwidth & m & width at the guide entry, mid or exit (see dimensionsAt) & 0 \\ +yheight & m & height at the guide entry, mid or exit (see dimensionsAt) & 0 \\ +\textbf{l} & m & length of the guide & \\ +linxw & m & distance from 1st focal point to guide entrance - left and right horizontal mirrors & 0 \\ +loutxw & m & distance from 2nd focal point to guide exit - left and right horizontal mirrors & 0 \\ +linyh & m & distance from 1st focal point to guide entrance - top and bottom vertical mirrors & 0 \\ +loutyh & m & distance from 2nd focal point to guide exit - top and bottom vertical mirrors & 0 \\ +majorAxisxw & m & direct defination of the guide geometry, will ignore w,h lin and lout parameters if this is nonzero. Length of the axis parallel to the z for the horizontal ellipse & 0 \\ +minorAxisxw & m & direct defination of the guide geometry, will ignore w,h lin and lout parameters if this is nonzero. Length of the axis Perpendicular to the z for the horizontal ellipse & 0 \\ +majorAxisyh & m & direct defination of the guide geometry, will ignore w,h lin and lout parameters if this is nonzero. Length of the axis parallel to the z for the vertical ellipse & 0 \\ +minorAxisyh & m & direct defination of the guide geometry, will ignore w,h lin and lout parameters if this is nonzero. Length of the axis Perpendicular to the z for the vertical ellipse & 0 \\ +majorAxisoffsetxw & m & direct defination of the guide geometry, distance between the center of the horizontal ellipse and the guide entrance & 0 \\ +majorAxisoffsetyh & m & direct defination of the guide geometry, distance between the center of the vertical ellipse and the guide entrance & 0 \\ +dimensionsAt & string & define whether xwidth and yheight sets the size of the opening, minor axis or the end of the guide. & "entrance" \\ +option & string & options are 'ellipse' and 'halfEllipse'. Ellipse is defined by both the focal points, while halfEllipse locked the center of the ellipse either the entrance or exit of the guide, and use the focal point of the other end to define the ellipse & "ellipse" \\ +R0 & 1 & Low-angle reflectivity & 0.99 \\ +Qc & AA-1 & Critical scattering vector & 0.0218 \\ +alpha & AA & Slope of reflectivity & 6.07 \\ +m & 1 & m-value of material for all mirrors, zero means complete absorption. & 2 \\ +W & AA-1 & Width of supermirror cut-off & 0.003 \\ +alpharight & AA & Slope of reflectivity for right vertical mirror & -1 \\ +mright & 1 & m-value of material for right vertical mirror & -1 \\ +alphaleft & AA & Slope of reflectivity for left vertical mirror & -1 \\ +mleft & 1 & m-value of material for left vertical mirror & -1 \\ +alphatop & AA & Slope of reflectivity for top horizontal mirror, overwrites alpha & -1 \\ +mtop & 1 & m-value of material for top horizontal mirror, overwrites m & -1 \\ +alphabottom & AA & Slope of reflectivity for bottom horizontal mirror & -1 \\ +mbottom & 1 & m-value of material for bottom horizontal mirror & -1 \\ +verbose & bool & Give extra information about calculations & "on" \\ +enableGravity & m & Flag to select propagation with gravity. & 1.0 \\ +curvature & m & Simulate horizontal radius of curvature by centripetal force added to the gravity. Note: Does not curve the guide in mcdisplay but "curves the neutron". Has opposite sign definition of Guide\_curved. & 0 \\ +nSegments & m & Must be used to specify number of guide segments, i.e. when giving inputs mvaluesright ... etc. & -1 \\ +mvaluesright & pointer & Pointer to array of m-values, right mirror & NULL \\ +mvaluesleft & pointer & - same, left mirror & NULL \\ +mvaluestop & pointer & - same, top mirror & NULL \\ +mvaluesbottom & pointer & - same, bottom mirror & NULL \\ +seglength & pointer & Pointer to array of segment lengths for discrete mirror description & NULL \\ +\bottomrule +\end{longtable} + +\subsection*{Links} +\begin{itemize} + \item \href{run:/home/willend/willend-McCode/mcstas-comps/optics/Elliptic_guide_gravity.comp}{Source code} for \texttt{Elliptic\_guide\_gravity.comp}. +\end{itemize} +\IfFileExists{Elliptic_guide_gravity_static.tex}{\input{Elliptic_guide_gravity_static.tex}}{} \ No newline at end of file diff --git a/docs/manuals/mcstas/optics/FZP_simple.tex b/docs/manuals/mcstas/optics/FZP_simple.tex new file mode 100644 index 000000000..7972d2e10 --- /dev/null +++ b/docs/manuals/mcstas/optics/FZP_simple.tex @@ -0,0 +1,48 @@ +\section{The \texttt{FZP\_simple} McStas Component} +Fresnel zone-plate as a thin object approximation. + +\subsection*{Identification} +\begin{itemize} + \item \textbf{Site:} + \item \textbf{Author:} A Komar Ravn, and Erik B Knudsen + \item \textbf{Origin:} NBI/DTU + \item \textbf{Date:} Aug, 2015 +\end{itemize} + +\subsection*{Description} +\begin{lstlisting} +A simple phenomenological thin-object approximation of a Fresnel Zone Plate. +This component was adapted for neutrons from the original component +written for helium scattering. +The focal length of the Zone Plate is determined by the formula: +\[f = 2*r*dr/(lambda)\] +If a diffraction order other than 1 is wanted the focal distance is scaled accordingly. +\end{lstlisting} + +\subsection*{Input parameters} +Parameters in \textbf{boldface} are required; the others are optional. + +\begin{longtable}{p{0.22\textwidth}p{0.12\textwidth}p{0.46\textwidth}p{0.14\textwidth}} +\toprule +\textbf{Name} & \textbf{Unit} & \textbf{Description} & \textbf{Default} \\ +\midrule +\endhead +\textbf{rad} & m & Radius of the zone-plate. & \\ +\textbf{dr} & m & Width of the outermost ring-slit. & \\ +bs0rad & m & Radius of the central blocking zone. & 0 \\ +order & m & Use this diffaction order. & 1 \\ +eta & & Efficiency of the FZP. For neutrons and (order==1) typically \{5...30\}\%. Overrides the sigma\_x cross sections. & 0.1 \\ +sigma\_abs & barn & 2200 m/s absorption cross section. & 0 \\ +sigma\_inc & barn & Incoherent scattering cross section. & 0 \\ +sigma\_coh & barn & Coherent scattering cross section. & 0 \\ +rho & g/cm3 & Density of Zone plate material - used merely for absorption estimation. & 1 \\ +thickness & m & Thickness of the FZP. Note that the FZP still is modelled as a thin object. The thickness is used in conjunction with the sigma\_x cross sections. & 0 \\ +gamma & & Duty cycle of the Zone plate - used merely for absorption estimation. & 0.5 \\ +\bottomrule +\end{longtable} + +\subsection*{Links} +\begin{itemize} + \item \href{run:/home/willend/willend-McCode/mcstas-comps/optics/FZP_simple.comp}{Source code} for \texttt{FZP\_simple.comp}. +\end{itemize} +\IfFileExists{FZP_simple_static.tex}{\input{FZP_simple_static.tex}}{} \ No newline at end of file diff --git a/docs/manuals/mcstas/optics/FermiChopper.tex b/docs/manuals/mcstas/optics/FermiChopper.tex new file mode 100644 index 000000000..9e45e76f6 --- /dev/null +++ b/docs/manuals/mcstas/optics/FermiChopper.tex @@ -0,0 +1,70 @@ +\section{The \texttt{FermiChopper} McStas Component} +Fermi Chopper with rotating frame. + +\subsection*{Identification} +\begin{itemize} + \item \textbf{Site:} + \item \textbf{Author:} M. Poehlmann, C. Carbogno, H. Schober, E. Farhi + \item \textbf{Origin:} ILL Grenoble / TU Muenchen + \item \textbf{Date:} May 2002 +\end{itemize} + +\subsection*{Description} +\begin{lstlisting} +Models a fermi chopper with optional supermirror coated blades +supermirror facilities may be disabled by setting m = 0, R0=0 +Slit packages are straight. Chopper slits are separated by an infinitely +thin absorbing material. The effective transmission (resulting from fraction +of the transparent material and its transmission) may be specified. +The chopper slit package width may be specified through the total width 'xwidth' +of the full package or the width 'w' of each single slit. The other parameter +is calculated by: xwidth = nslit*w. The slit package may be made curved and use +super-mirror coating. + +Example: +FermiChopper(phase=-50.0, radius=0.04, nu=100, yheight=0.08, w=0.00022475, nslit=200.0, R0=0.0, Qc=0.02176, alpha=2.33, m=0.0, length=0.012, eff=0.95) + +%VALIDATION +Apr 2005: extensive external test, most problems solved (cf. 'Bugs') +Validated by: K. Lieutenant, E. Farhi + +limitations: +no absorbing blade width used +\end{lstlisting} + +\subsection*{Input parameters} +Parameters in \textbf{boldface} are required; the others are optional. + +\begin{longtable}{p{0.22\textwidth}p{0.12\textwidth}p{0.46\textwidth}p{0.14\textwidth}} +\toprule +\textbf{Name} & \textbf{Unit} & \textbf{Description} & \textbf{Default} \\ +\midrule +\endhead +phase & deg & chopper phase at t=0 & 0 \\ +radius & m & chopper cylinder radius & 0.04 \\ +nu & Hz & chopper frequency. Omega=2*PI*nu in rad/s, nu*60 in rpm. Positive value corresponds to a counter-clockwise rotation around y. & 100 \\ +w & m & width of one chopper slit & 0.00022475 \\ +nslit & 1 & number of chopper slits & 200 \\ +R0 & 1 & low-angle reflectivity & 0.0 \\ +Qc & AA-1 & critical scattering vector & 0.02176 \\ +alpha & AA & slope of reflectivity & 2.33 \\ +m & 1 & m-value of material. Zero means completely absorbing. & 0.0 \\ +W & AA-1 & width of supermirror cut-off & 2e-3 \\ +length & m & channel length of the Fermi chopper & 0.012 \\ +eff & 1 & efficiency = transmission x fraction of transparent material & 0.95 \\ +zero\_time & 1 & set time to zero: 0=no, 1=once per half cycle, 2=auto adjust phase & 0 \\ +xwidth & m & optional total width of slit package & 0 \\ +verbose & 1 & set to 1,2 or 3 gives debugging information & 0 \\ +yheight & m & height of slit package & 0.08 \\ +curvature & m-1 & Curvature of slits (1/radius of curvature). & 0 \\ +delay & s & sets phase so that transmision is centered on 'delay' & 0 \\ +\bottomrule +\end{longtable} + +\subsection*{Links} +\begin{itemize} + \item \href{run:/home/willend/willend-McCode/mcstas-comps/optics/FermiChopper.comp}{Source code} for \texttt{FermiChopper.comp}. + \item \textless{}a href="Vitess\_ChopperFermi.html"\textgreater{}Vitess\_ChopperFermi\textless{}/a\textgreater{} component by + \item G. Zsigmond, imported from Vitess by K. Lieutenant. +\end{itemize} +\IfFileExists{FermiChopper_static.tex}{\input{FermiChopper_static.tex}}{} \ No newline at end of file diff --git a/docs/manuals/mcstas/optics/Filter_gen.tex b/docs/manuals/mcstas/optics/Filter_gen.tex new file mode 100644 index 000000000..312ac55ba --- /dev/null +++ b/docs/manuals/mcstas/optics/Filter_gen.tex @@ -0,0 +1,82 @@ +\section{The \texttt{Filter\_gen} McStas Component} +Release: McStas 1.6 + +This components may either set the flux or change it (filter-like), using +an external data filename. + +\subsection*{Identification} +\begin{itemize} + \item \textbf{Site:} + \item \textbf{Author:} E. Farhi + \item \textbf{Origin:} ILL + \item \textbf{Date:} Dec, 15th, 2002 +\end{itemize} + +\subsection*{Description} +\begin{lstlisting} +This component changes the neutron flux (weight) in order to match +a reference table in a filename. +Typically you may set the neutron flux (source-like), or multiply it +using a transmission table (filter-like). +The component may be placed after a source, in order to e.g. +simulate a real source from a reference table, or used as a filter (BeO) +or as a window (Al). The behaviour of the component is +specified using the 'options' parameter, or from the filename itself (see below) +If the thickness for the transmission data filename D was t0, and a different +thickness t1 would be required, then the resulting transmission is: +D^(t1/t0). +You may use the 'thickness' and 'scaling' parameter for that purpose. + +File format: +This filename may be of any 2-columns free format (k[Angs-1],p), (omega[meV],p) +and (lambda[Angs],p) where p is the weight. The type of the filename may be +written explicitely in the filename, as a comment, or using the 'options' +parameter. +Non mumerical content in filename is treated as comment (e.g. lines starting +with '#' character). +A table rebinning and linear interpolation are performed. + +EXAMPLE : in order to simulate a PG filter, using the lib/data/HOPG.trm file +Filter_gen(xwidth=.1 yheight=.1, filename="HOPG.trm") +A Sapphire filter, using the lib/data/Al2O3_sapphire.trm file +Filter_gen(xwidth=.1 yheight=.1, filename="Al2O3_sapphire.trm") +A Berylium filter, using the lib/data/Be.trm file +Filter_gen(xwidth=.1 yheight=.1, filename="Be.trm") +an other possibility to simulate a Be filter is to use the PowderN component: +PowderN(xwidth=.1, yheight=.1, zdepth=.1, reflections="Be.laz", p_inc=1e-4) + +in this filename, the comment line +# wavevector multiply +sets the behaviour of the component. One may as well have used +options="wavevector multiply" +in the component instance parameters. +\end{lstlisting} + +\subsection*{Input parameters} +Parameters in \textbf{boldface} are required; the others are optional. + +\begin{longtable}{p{0.22\textwidth}p{0.12\textwidth}p{0.46\textwidth}p{0.14\textwidth}} +\toprule +\textbf{Name} & \textbf{Unit} & \textbf{Description} & \textbf{Default} \\ +\midrule +\endhead +filename & str & name of the filename to look at (first two columns data). Data D should rather be sorted (ascending order) and monotonic filename may contain options (see below) as comment & 0 \\ +options & str & string that can contain: "[ k p ]" or "wavevector" for filename type, "[ omega p]" or "energy", "[ lambda p ]" or "wavelength", "set" to set the weight according to the table,"multiply" to multiply (instead of set) the weight by factor,"add" to add to current flux,"verbose" to display additional informations. & 0 \\ +xmin & m & dimension of filter & -0.05 \\ +xmax & m & dimension of filter & 0.05 \\ +ymin & m & dimension of filter & -0.05 \\ +ymax & m & dimension of filter & 0.05 \\ +xwidth & m & Width/diameter of filter). Overrides xmin,xmax. & 0 \\ +yheight & m & Height of filter. Overrides ymin,ymax. & 0 \\ +thickness & 1 & relative thickness. D = D\textasciicircum{}(thickness). & 1 \\ +scaling & 1 & scaling factor. D = D*scaling. & 1 \\ +verbose & 1 & Flag to select verbose output. & 0 \\ +\bottomrule +\end{longtable} + +\subsection*{Links} +\begin{itemize} + \item \href{run:/home/willend/willend-McCode/mcstas-comps/optics/Filter_gen.comp}{Source code} for \texttt{Filter\_gen.comp}. + \item \textless{}a href="../data/HOPG.trm"\textgreater{}HOPG.trm\textless{}/a\textgreater{} filename as an example. +\end{itemize} +\IfFileExists{Filter_gen_static.tex}{\input{Filter_gen_static.tex}}{} \ No newline at end of file diff --git a/docs/manuals/mcstas/optics/Guide.tex b/docs/manuals/mcstas/optics/Guide.tex new file mode 100644 index 000000000..6d2102f9d --- /dev/null +++ b/docs/manuals/mcstas/optics/Guide.tex @@ -0,0 +1,58 @@ +\section{The \texttt{Guide} McStas Component} +Neutron guide. + +\subsection*{Identification} +\begin{itemize} + \item \textbf{Site:} + \item \textbf{Author:} Kristian Nielsen + \item \textbf{Origin:} Risoe + \item \textbf{Date:} September 2 1998 +\end{itemize} + +\subsection*{Description} +\begin{lstlisting} +Models a rectangular guide tube centered on the Z axis. The entrance lies +in the X-Y plane. +For details on the geometry calculation see the description in the McStas +reference manual. +The reflectivity profile may either use an analytical mode (see Component +Manual) or a 2-columns reflectivity free text file with format +[q(Angs-1) R(0-1)]. + +Example: Guide(w1=0.1, h1=0.1, w2=0.1, h2=0.1, l=2.0, R0=0.99, Qc=0.021, alpha=6.07, m=2, W=0.003 + +%VALIDATION +May 2005: extensive internal test, no bugs found +Validated by: K. Lieutenant + +%BUGS +This component does not work with gravitation on. Use component Guide_gravity then. +\end{lstlisting} + +\subsection*{Input parameters} +Parameters in \textbf{boldface} are required; the others are optional. + +\begin{longtable}{p{0.22\textwidth}p{0.12\textwidth}p{0.46\textwidth}p{0.14\textwidth}} +\toprule +\textbf{Name} & \textbf{Unit} & \textbf{Description} & \textbf{Default} \\ +\midrule +\endhead +reflect & str & Reflectivity file name. Format \textless{}q(Angs-1) R(0-1)\textgreater{} & 0 \\ +\textbf{w1} & m & Width at the guide entry & \\ +\textbf{h1} & m & Height at the guide entry & \\ +w2 & m & Width at the guide exit & 0 \\ +h2 & m & Height at the guide exit & 0 \\ +\textbf{l} & m & length of guide & \\ +R0 & 1 & Low-angle reflectivity & 0.99 \\ +Qc & AA-1 & Critical scattering vector & 0.0219 \\ +alpha & AA & Slope of reflectivity & 6.07 \\ +m & 1 & m-value of material. Zero means completely absorbing. glass/SiO2 Si Ni Ni58 supermirror Be Diamond m= 0.65 0.47 1 1.18 2-6 1.01 1.12 & 2 \\ +W & AA-1 & Width of supermirror cut-off & 0.003 \\ +\bottomrule +\end{longtable} + +\subsection*{Links} +\begin{itemize} + \item \href{run:/home/willend/willend-McCode/mcstas-comps/optics/Guide.comp}{Source code} for \texttt{Guide.comp}. +\end{itemize} +\IfFileExists{Guide_static.tex}{\input{Guide_static.tex}}{} \ No newline at end of file diff --git a/docs/manuals/mcstas/optics/Guide_anyshape.tex b/docs/manuals/mcstas/optics/Guide_anyshape.tex new file mode 100644 index 000000000..7f1921a9b --- /dev/null +++ b/docs/manuals/mcstas/optics/Guide_anyshape.tex @@ -0,0 +1,67 @@ +\section{The \texttt{Guide\_anyshape} McStas Component} +Reflecting surface (guide and mirror) with any shape, defined from an OFF file. + +\subsection*{Identification} +\begin{itemize} + \item \textbf{Site:} + \item \textbf{Author:} Emmanuel Farhi + \item \textbf{Origin:} ILL + \item \textbf{Date:} August 4th 2010 +\end{itemize} + +\subsection*{Description} +\begin{lstlisting} +This is a reflecting object component. Its shape is defined from an OFF file, +given with its file name. The object size is set as given from the file, where +dimensions should be in meters. The bounding box may be re-scaled by specifying +xwidth,yheight,zdepth parameters. The object may optionally be centered when +using 'center=1'. + +The reflectivity is specified either from the usual parametric description +R0,Qc,alpha,W,m, or from a reflectivity file 'reflect' with a 2 column +format [q(Angs-1) R(0-1)]. + +The complex OFF/PLY geometry option handles any closed non-convex polyhedra. +It supports the OFF and NOFF file format but not COFF (colored faces). +Such files may be generated from XYZ data using: +qhull < coordinates.xyz Qx Qv Tv o > geomview.off +or +powercrust coordinates.xyz +and viewed with geomview or java -jar jroff.jar (see below). +The default size of the object depends of the OFF file data, but its +bounding box may be resized using xwidth,yheight and zdepth. +PLY geometry files are also supported. +\end{lstlisting} + +\subsection*{Input parameters} +Parameters in \textbf{boldface} are required; the others are optional. + +\begin{longtable}{p{0.22\textwidth}p{0.12\textwidth}p{0.46\textwidth}p{0.14\textwidth}} +\toprule +\textbf{Name} & \textbf{Unit} & \textbf{Description} & \textbf{Default} \\ +\midrule +\endhead +xwidth & m & Redimension the object bounding box on X axis is non-zero & 0 \\ +yheight & m & Redimension the object bounding box on Y axis is non-zero & 0 \\ +zdepth & m & Redimension the object bounding box on Z axis is non-zero & 0 \\ +center & 1 & When set to 1, the object will be centered w.r.t. the local coordinate frame & 0 \\ +transmit & 1 & When true, non reflected neutrons are transmitted through the surfaces, instead of being absorbed. No material absorption is taken into account though & 0 \\ +R0 & 1 & Low-angle reflectivity & 0.99 \\ +Qc & AA-1 & Critical scattering vector & 0.0219 \\ +alpha & AA & Slope of reflectivity & 3 \\ +m & 1 & m-value of material. Zero means completely absorbing. & 2 \\ +W & AA-1 & Width of supermirror cut-off & 0.003 \\ +reflect & q(Angs-1) R(0-1) & (str) Reflectivity file name. Format & 0 \\ +geometry & str & Name of the OFF/PLY file describing the guide geometry & 0 \\ +\bottomrule +\end{longtable} + +\subsection*{Links} +\begin{itemize} + \item \href{run:/home/willend/willend-McCode/mcstas-comps/optics/Guide_anyshape.comp}{Source code} for \texttt{Guide\_anyshape.comp}. + \item \textless{}a href="http://www.geomview.org"\textgreater{}Geomview and Object File Format (OFF)\textless{}/a\textgreater{} + \item Java version of Geomview (display only) \textless{}a href="http://www.holmes3d.net/graphics/roffview/"\textgreater{}jroff.jar\textless{}/a\textgreater{} + \item \textless{}a href="http://qhull.org"\textgreater{}qhull\textless{}/a\textgreater{} + \item \textless{}a href="http://www.cs.ucdavis.edu/\textasciitilde{}amenta/powercrust.html"\textgreater{}powercrust\textless{}/a\textgreater{} +\end{itemize} +\IfFileExists{Guide_anyshape_static.tex}{\input{Guide_anyshape_static.tex}}{} \ No newline at end of file diff --git a/docs/manuals/mcstas/optics/Guide_channeled.tex b/docs/manuals/mcstas/optics/Guide_channeled.tex new file mode 100644 index 000000000..654175dbc --- /dev/null +++ b/docs/manuals/mcstas/optics/Guide_channeled.tex @@ -0,0 +1,70 @@ +\section{The \texttt{Guide\_channeled} McStas Component} +Neutron guide with channels (bender section). + +\subsection*{Identification} +\begin{itemize} + \item \textbf{Site:} + \item \textbf{Author:} Christian Nielsen + \item \textbf{Origin:} Risoe + \item \textbf{Date:} 1999 +\end{itemize} + +\subsection*{Description} +\begin{lstlisting} +Models a rectangular guide tube centered on the Z axis. The entrance lies +in the X-Y plane. +The guide may be tapered, and may have vertical subdivisions (used for +bender devices). + +There is a special rotating mode in order to approximate a Fermi Chopper +behaviour, in the case the neutron trajectory is nearly linear inside the +chopper slits, i.e. the neutrons are fast w/r/ to the chopper speed. +Slits are straight, but may be super-mirror coated. In this case, the +component is NOT centered, but located at its entry window. It should then +be shifted by -l/2. + +Example: Guide_channeled(w1=0.1, h1=0.1, w2=0.1, h2=0.1, l=2.0, +R0=0.99, Qcx=0.0219, Qcy=0.0219, alphax=6.07, alphay=6.07, W=0.003, nslit=1, +d=0.0005, mx=1, my=1) + +%BUGS +This component does not work with gravitation on. Use Guide_gravity. +This component does not work in multichannel focusing geometry. +\end{lstlisting} + +\subsection*{Input parameters} +Parameters in \textbf{boldface} are required; the others are optional. + +\begin{longtable}{p{0.22\textwidth}p{0.12\textwidth}p{0.46\textwidth}p{0.14\textwidth}} +\toprule +\textbf{Name} & \textbf{Unit} & \textbf{Description} & \textbf{Default} \\ +\midrule +\endhead +\textbf{w1} & m & Width at the guide entry & \\ +\textbf{h1} & m & Height at the guide entry & \\ +w2 & m & Width at the guide exit & 0 \\ +h2 & m & Height at the guide exit & 0 \\ +\textbf{l} & m & Length of guide & \\ +R0 & 1 & Low-angle reflectivity & 0.995 \\ +Qc & AA-1 & Critical scattering vector & 0 \\ +alpha & AA & Slope of reflectivity & 0 \\ +m & 1 & m-value of material. Zero means completely absorbing. & 0 \\ +nslit & 1 & Number of channels in the guide (\textgreater{}= 1) & 1 \\ +d & m & Thickness of subdividing absorbing walls & 0.0005 \\ +Qcx & AA-1 & Critical scattering vector for left and right vertical mirrors in each channel & 0.0218 \\ +Qcy & AA-1 & Critical scattering vector for top and bottom mirrors & 0.0218 \\ +alphax & AA & Slope of reflectivity for left and right vertical mirrors in each channel & 4.38 \\ +alphay & AA & Slope of reflectivity for top and bottom mirrors & 4.38 \\ +W & AA-1 & Width of supermirror cut-off for all mirrors & 0.003 \\ +mx & 1 & m-value of material for left and right vertical mirrors in each channel. Zero means completely absorbing. & 1 \\ +my & 1 & m-value of material for top and bottom mirrors. Zero means completely absorbing. & 1 \\ +nu & Hz & Rotation frequency (round/s) for Fermi Chopper approximation & 0 \\ +phase & deg & Phase shift for the Fermi Chopper approximation & 0 \\ +\bottomrule +\end{longtable} + +\subsection*{Links} +\begin{itemize} + \item \href{run:/home/willend/willend-McCode/mcstas-comps/optics/Guide_channeled.comp}{Source code} for \texttt{Guide\_channeled.comp}. +\end{itemize} +\IfFileExists{Guide_channeled_static.tex}{\input{Guide_channeled_static.tex}}{} \ No newline at end of file diff --git a/docs/manuals/mcstas/optics/Guide_gravity.tex b/docs/manuals/mcstas/optics/Guide_gravity.tex new file mode 100644 index 000000000..ca6affd42 --- /dev/null +++ b/docs/manuals/mcstas/optics/Guide_gravity.tex @@ -0,0 +1,97 @@ +\section{The \texttt{Guide\_gravity} McStas Component} +Neutron straight guide with gravity. Can be channeled and focusing. +Waviness may be specified, as well as side chamfers (on substrate). + +\subsection*{Identification} +\begin{itemize} + \item \textbf{Site:} + \item \textbf{Author:} \textless{}a href="mailto:farhi@ill.fr"\textgreater{}Emmanuel Farhi\textless{}/a\textgreater{} + \item \textbf{Origin:} \textless{}a href="http://www.ill.fr"\textgreater{}ILL (France)\textless{}/a\textgreater{}. + \item \textbf{Date:} Aug 03 2001 +\end{itemize} + +\subsection*{Description} +\begin{lstlisting} +Models a rectangular straight guide tube centered on the Z axis, with +gravitation handling. The entrance lies in the X-Y plane. +The guide can be channeled (nslit,d,nhslit parameters). The guide coating +specifications may be entered via different ways (global, or for +each wall m-value). + +Waviness (random) may be specified either globally or for each mirror type. +Side chamfers (due to substrate processing) may be specified the same way. +In order to model a realistic straight guide assembly, a long guide of +length 'l' may be splitted into 'nelements' between which chamfers/gaps are +positioned. + +The reflectivity may be specified either using an analytical mode (see +Component manual) or as a text file in free format, with 1st +column as q[Angs-1] and 2nd column as the reflectivity R in [0-1]. +For details on the geometry calculation see the description in the McStas +component manual. + +There is a special rotating mode in order to approximate a Fermi Chopper +behaviour, in the case the neutron trajectory is nearly linear inside the +chopper slits, i.e. the neutrons are fast w/r/ to the chopper speed. +Slits are straight, but may be super-mirror coated. In this case, the +component is NOT centered, but located at its entry window. It should then +be shifted by -l/2. + +Example: Guide_gravity(w1=0.1, h1=0.1, w2=0.1, h2=0.1, l=12, +R0=0.99, Qc=0.0219, alpha=6.07, m=1.0, W=0.003) + +%VALIDATION +May 2005: extensive internal test, all problems solved +Validated by: nslit. Lieutenant +\end{lstlisting} + +\subsection*{Input parameters} +Parameters in \textbf{boldface} are required; the others are optional. + +\begin{longtable}{p{0.22\textwidth}p{0.12\textwidth}p{0.46\textwidth}p{0.14\textwidth}} +\toprule +\textbf{Name} & \textbf{Unit} & \textbf{Description} & \textbf{Default} \\ +\midrule +\endhead +\textbf{w1} & m & Width at the guide entry & \\ +\textbf{h1} & m & Height at the guide entry & \\ +w2 & m & Width at the guide exit. If 0, use w1. & 0 \\ +h2 & m & Height at the guide exit. If 0, use h1. & 0 \\ +\textbf{l} & m & length of guide & \\ +R0 & 1 & Low-angle reflectivity & 0.995 \\ +Qc & AA-1 & Critical scattering vector & 0.0218 \\ +alpha & AA & Slope of reflectivity & 4.38 \\ +m & 1 & m-value of material. Zero means completely absorbing. m=0.65 glass/SiO2 Si Ni Ni58 supermirror Be Diamond m= 0.65 0.47 1 1.18 2-6 1.01 1.12 for glass/SiO2, m=1 for Ni, 1.2 for Ni58, m=2-6 for supermirror. m=0.47 for Si & 1.0 \\ +W & AA-1 & Width of supermirror cut-off & 0.003 \\ +nslit & 1 & Number of vertical channels in the guide (\textgreater{}= 1) (nslit-1 vertical dividing walls). & 1 \\ +d & m & Thickness of subdividing walls & 0.0005 \\ +mleft & 1 & m-value of material for left. vert. mirror & -1 \\ +mright & 1 & m-value of material for right. vert. mirror & -1 \\ +mtop & 1 & m-value of material for top. horz. mirror & -1 \\ +mbottom & 1 & m-value of material for bottom. horz. mirror & -1 \\ +nhslit & 1 & Number of horizontal channels in the guide (\textgreater{}= 1). (nhslit-1 horizontal dividing walls). this enables to have nslit*nhslit rectangular channels & 1 \\ +G & m/s2 & Gravitation norm. 0 value disables G effects. & 0 \\ +aleft & 1 & alpha-value of left vert. mirror & -1 \\ +aright & 1 & alpha-value of right vert. mirror & -1 \\ +atop & 1 & alpha-value of top horz. mirror & -1 \\ +abottom & 1 & alpha-value of left horz. mirror & -1 \\ +wavy & deg & Global guide waviness & 0 \\ +wavy\_z & deg & Partial waviness along propagation axis & 0 \\ +wavy\_tb & deg & Partial waviness in transverse direction for top/bottom mirrors & 0 \\ +wavy\_lr & deg & Partial waviness in transverse direction for left/right mirrors & 0 \\ +chamfers & m & Global chamfers specifications (in/out/mirror sides). & 0 \\ +chamfers\_z & m & Input and output chamfers & 0 \\ +chamfers\_lr & m & Chamfers on left/right mirror sides & 0 \\ +chamfers\_tb & m & Chamfers on top/bottom mirror sides & 0 \\ +nelements & 1 & Number of sections in the guide (length l/nelements). & 1 \\ +nu & Hz & Rotation frequency (round/s) for Fermi Chopper approximation & 0 \\ +phase & deg & Phase shift for the Fermi Chopper approximation & 0 \\ +reflect & str & Reflectivity file name. Format \textless{}q(Angs-1) R(0-1)\textgreater{} & "NULL" \\ +\bottomrule +\end{longtable} + +\subsection*{Links} +\begin{itemize} + \item \href{run:/home/willend/willend-McCode/mcstas-comps/optics/Guide_gravity.comp}{Source code} for \texttt{Guide\_gravity.comp}. +\end{itemize} +\IfFileExists{Guide_gravity_static.tex}{\input{Guide_gravity_static.tex}}{} \ No newline at end of file diff --git a/docs/manuals/mcstas/optics/Guide_simple.tex b/docs/manuals/mcstas/optics/Guide_simple.tex new file mode 100644 index 000000000..fc4704216 --- /dev/null +++ b/docs/manuals/mcstas/optics/Guide_simple.tex @@ -0,0 +1,57 @@ +\section{The \texttt{Guide\_simple} McStas Component} +Neutron guide. + +\subsection*{Identification} +\begin{itemize} + \item \textbf{Site:} + \item \textbf{Author:} Kristian Nielsen + \item \textbf{Origin:} Risoe + \item \textbf{Date:} September 2 1998 +\end{itemize} + +\subsection*{Description} +\begin{lstlisting} +Models a rectangular guide tube centered on the Z axis. The entrance lies +in the X-Y plane. +For details on the geometry calculation see the description in the McStas +reference manual. +The reflectivity profile may either use an analytical mode (see Component +Manual) or a 2-columns reflectivity free text file with format +[q(Angs-1) R(0-1)]. + +Example: Guide(w1=0.1, h1=0.1, w2=0.1, h2=0.1, l=2.0, R0=0.99, Qc=0.021, alpha=6.07, m=2, W=0.003 + +%VALIDATION +May 2005: extensive internal test, no bugs found +Validated by: K. Lieutenant + +%BUGS +This component does not work with gravitation on. Use component Guide_gravity then. +\end{lstlisting} + +\subsection*{Input parameters} +Parameters in \textbf{boldface} are required; the others are optional. + +\begin{longtable}{p{0.22\textwidth}p{0.12\textwidth}p{0.46\textwidth}p{0.14\textwidth}} +\toprule +\textbf{Name} & \textbf{Unit} & \textbf{Description} & \textbf{Default} \\ +\midrule +\endhead +\textbf{w1} & m & Width at the guide entry & \\ +\textbf{h1} & m & Height at the guide entry & \\ +w2 & m & Width at the guide exit & 0 \\ +h2 & m & Height at the guide exit & 0 \\ +\textbf{l} & m & length of guide & \\ +R0 & 1 & Low-angle reflectivity & 0.99 \\ +Qc & AA-1 & Critical scattering vector & 0.0219 \\ +alpha & AA & Slope of reflectivity & 6.07 \\ +m & 1 & m-value of material. Zero means completely absorbing. glass/SiO2 Si Ni Ni58 supermirror Be Diamond m= 0.65 0.47 1 1.18 2-6 1.01 1.12 & 2 \\ +W & AA-1 & Width of supermirror cut-off & 0.003 \\ +\bottomrule +\end{longtable} + +\subsection*{Links} +\begin{itemize} + \item \href{run:/home/willend/willend-McCode/mcstas-comps/optics/Guide_simple.comp}{Source code} for \texttt{Guide\_simple.comp}. +\end{itemize} +\IfFileExists{Guide_simple_static.tex}{\input{Guide_simple_static.tex}}{} \ No newline at end of file diff --git a/docs/manuals/mcstas/optics/Guide_tapering.tex b/docs/manuals/mcstas/optics/Guide_tapering.tex new file mode 100644 index 000000000..a6cbbd832 --- /dev/null +++ b/docs/manuals/mcstas/optics/Guide_tapering.tex @@ -0,0 +1,85 @@ +\section{The \texttt{Guide\_tapering} McStas Component} +Models a rectangular tapered guide (many shapes) + +\subsection*{Identification} +\begin{itemize} + \item \textbf{Site:} + \item \textbf{Author:} Uwe Filges + \item \textbf{Origin:} PSI + \item \textbf{Date:} 22/10/2003 +\end{itemize} + +\subsection*{Description} +\begin{lstlisting} +Models a rectangular guide tube centered on the Z axis. The entrance lies +in the X-Y plane. +The guide may be tapered. + +The component includes a feature to read in self-defined functions for +guide tapering. Under the parameter 'option' the KEYWORD 'file=' offers +the possibility to read in parameters from an ASC-file. The file structure +is shown below in the example. It is important to know that the first +3 lines will be interpreted as comments. +Afterwards the dimension of each guide segment must be defined. The +length of each segment is constant l(i)=l/segments . The number of +segments is defined through the number of lines minus the first 3 +lines taken from the Input-File. +The guide can be made curved both horizontally and vertically (not shown in 3d +view), and m-coating, when set negative, is varied in 1/width. + +Example Input-File: + +c Guide_tapering.comp +c i = 0 - 199 segments +c h1(i) h2(i) w1(i) w2(i) +0.120000 0.119850 0.020000 0.020000 +0.119850 0.119700 0.020000 0.020000 +0.119700 0.119550 0.020000 0.020000 +0.119550 0.119400 0.020000 0.020000 +0.119400 0.119250 0.020000 0.020000 +0.119250 0.119100 0.020000 0.020000 +... + +Example1: Guide_tapering(w1=0.1, h1=0.18, linw=0.1, loutw=0.1, linh=0.1, louth=0.1, l=1.5, option="elliptical", R0=0.99, Qcx=0.021, Qcy=0.021, alphax=6.07, alphay=6.07, W=0.003, mx=1, my=1, segno=800) + +Example2: Guide_tapering(w1=0, h1=0, linw=0, loutw=0, linh=0, louth=0, l=1.5, option="file=ownfunction.txt", R0=0.99, Qcx=0.021, Qcy=0.021, alphax=6.07, alphay=6.07, W=0.003, mx=1, my=1) + +%BUGS +This component does not work with gravitation on. Use component Guide_gravity then. +\end{lstlisting} + +\subsection*{Input parameters} +Parameters in \textbf{boldface} are required; the others are optional. + +\begin{longtable}{p{0.22\textwidth}p{0.12\textwidth}p{0.46\textwidth}p{0.14\textwidth}} +\toprule +\textbf{Name} & \textbf{Unit} & \textbf{Description} & \textbf{Default} \\ +\midrule +\endhead +option & str & define the input function for the curve of the guide walls options are: "elliptical" - define elliptical function of guide walls "parabolical" - define parabolical function of guide walls "straight" - define a straight elements guide"file=[filename]" - read in ASC-file with arbitrary definition for the curve of the guide walls & 0 \\ +w1 & m & Width at the guide entry & 0 \\ +h1 & m & Height at the guide entry & 0 \\ +\textbf{l} & m & length of guide & \\ +linw & m & distance from 1st focal point to real guide entry - left and right horizontal mirrors & 0 \\ +loutw & m & distance from real guide exit to 2nd focal point - left and right horizontal mirrors & 0 \\ +linh & m & distance from 1st focal point to real guide entry - top and bottom vertical mirrors & 0 \\ +louth & m & distance from real guide exit to 2nd focal point - top and bottom vertical mirrors & 0 \\ +R0 & 1 & Low-angle reflectivity & 0.99 \\ +Qcx & AA-1 & Critical scattering vector for left and right vertical mirrors in each channel & 0.021 \\ +Qcy & AA-1 & Critical scattering vector for top and bottom mirrors & 0.021 \\ +alphax & AA & Slope of reflectivity for left and right vertical mirrors in each channel & 6.07 \\ +alphay & AA & Slope of reflectivity for top and bottom mirrors & 6.07 \\ +W & AA-1 & Width of supermirror cut-off for all mirrors & 0.003 \\ +mx & 1 & m-value of material for left and right vertical mirrors in each channel. Zero means completely absorbing. Negative value will adapt coating as e.g. m=mx*w1/w & 1 \\ +my & 1 & m-value of material for top and bottom mirrors. Zero means completely absorbing. Negative value will adapt coating as e.g. m=my*h1/h & 1 \\ +segno & 1 & number of segments (z-axis) for cutting the tube & 800 \\ +curvature & m & guide horizontal radius of curvature. Zero means straight. & 0 \\ +curvature\_v & m & guide vertical radius of curvature. Zero means straight. & 0 \\ +\bottomrule +\end{longtable} + +\subsection*{Links} +\begin{itemize} + \item \href{run:/home/willend/willend-McCode/mcstas-comps/optics/Guide_tapering.comp}{Source code} for \texttt{Guide\_tapering.comp}. +\end{itemize} +\IfFileExists{Guide_tapering_static.tex}{\input{Guide_tapering_static.tex}}{} \ No newline at end of file diff --git a/docs/manuals/mcstas/optics/Guide_wavy.tex b/docs/manuals/mcstas/optics/Guide_wavy.tex new file mode 100644 index 000000000..c9b12f321 --- /dev/null +++ b/docs/manuals/mcstas/optics/Guide_wavy.tex @@ -0,0 +1,64 @@ +\section{The \texttt{Guide\_wavy} McStas Component} +Neutron guide with gaussian waviness. + +\subsection*{Identification} +\begin{itemize} + \item \textbf{Site:} + \item \textbf{Author:} Kim Lefmann + \item \textbf{Origin:} Risoe + \item \textbf{Date:} +\end{itemize} + +\subsection*{Description} +\begin{lstlisting} +Models a rectangular guide tube centered on the Z axis. The entrance lies +in the X-Y plane. +For details on the geometry calculation see the description in the McStas +reference manual. + +Example: m=2 Qc=0.0218 (nat. Ni) W=1/300 alpha=4.38 R0=0.995 (given by Daniel Clemens, PSI) + +%BUGS +This component does not work with gravitation on. Use component Guide_gravity then. +\end{lstlisting} + +\subsection*{Input parameters} +Parameters in \textbf{boldface} are required; the others are optional. + +\begin{longtable}{p{0.22\textwidth}p{0.12\textwidth}p{0.46\textwidth}p{0.14\textwidth}} +\toprule +\textbf{Name} & \textbf{Unit} & \textbf{Description} & \textbf{Default} \\ +\midrule +\endhead +\textbf{w1} & m & Width at the guide entry & \\ +\textbf{h1} & m & Height at the guide entry & \\ +w2 & m & Width at the guide exit & 0 \\ +h2 & m & Height at the guide exit & 0 \\ +\textbf{l} & m & length of guide & \\ +R0 & 1 & Low-angle reflectivity & 0.995 \\ +Qc & AA-1 & Critical scattering vector & 0.0218 \\ +alpha & AA & Slope of reflectivity & 0 \\ +m & 1 & m-value of material. Zero means completely absorbing. & 0 \\ +W & AA-1 & Width of supermirror cut-off for all mirrors & 0 \\ +alpha1 & AA & Slope of reflectivity left & 4.38 \\ +m1 & 1 & m-value of material, left & 2 \\ +W1 & AA-1 & Width of supermirror cut-off left & 0.003 \\ +alpha2 & AA & Slope of reflectivity right & 4.38 \\ +m2 & 1 & m-value of material, right. & 2 \\ +W2 & AA-1 & Width of supermirror cut-off right & 0.003 \\ +alpha3 & AA & Slope of reflectivity top & 4.38 \\ +m3 & 1 & m-value of material, top. & 2 \\ +W3 & AA-1 & Width of supermirror cut-off top & 0.003 \\ +alpha4 & AA & Slope of reflectivity bottom & 4.38 \\ +m4 & 1 & m-value of material, bottom. & 2 \\ +W4 & AA-1 & Width of supermirror cut-off bottom & 0.003 \\ +wavy\_z & deg & Waviness in the z-(flight-)direction & 0 \\ +wavy\_xy & deg & Waviness in the transverse direction & 0 \\ +\bottomrule +\end{longtable} + +\subsection*{Links} +\begin{itemize} + \item \href{run:/home/willend/willend-McCode/mcstas-comps/optics/Guide_wavy.comp}{Source code} for \texttt{Guide\_wavy.comp}. +\end{itemize} +\IfFileExists{Guide_wavy_static.tex}{\input{Guide_wavy_static.tex}}{} \ No newline at end of file diff --git a/docs/manuals/mcstas/optics/He3_cell.tex b/docs/manuals/mcstas/optics/He3_cell.tex new file mode 100644 index 000000000..2e4828e55 --- /dev/null +++ b/docs/manuals/mcstas/optics/He3_cell.tex @@ -0,0 +1,50 @@ +\section{The \texttt{He3\_cell} McStas Component} +version: \$Revision\$ + +Polarised 3He cell + +\subsection*{Identification} +\begin{itemize} + \item \textbf{Site:} + \item \textbf{Author:} Trefor Roberts \& Erik B Knudsen + \item \textbf{Origin:} ILL/DTU Physics + \item \textbf{Date:} March 1999 +\end{itemize} + +\subsection*{Description} +\begin{lstlisting} +Simple polarised 3He neutron spin filter cell, defaults to a cylindrical geometry but may be +used with a sphere or box geometry also. +The glass container for the cell is not included in the model. + +This component has been validated against: +Batz, M, Baessler, S, Heil, W, et al., J Res Natl Inst Stand Technol. 2005;110(3):293–298. + +Example: He3_cell(radius=0.1,length=.2,pressure=3,p3he=0.7,bx=0,by=1e-3,bz=0) +\end{lstlisting} + +\subsection*{Input parameters} +Parameters in \textbf{boldface} are required; the others are optional. + +\begin{longtable}{p{0.22\textwidth}p{0.12\textwidth}p{0.46\textwidth}p{0.14\textwidth}} +\toprule +\textbf{Name} & \textbf{Unit} & \textbf{Description} & \textbf{Default} \\ +\midrule +\endhead +xwidth & m & width of box geometry & 0 \\ +yheight & m & height of the box geometry & 0 \\ +radius & m & radius of the cylinder / sphere geometry & 0.11 \\ +length & m & length of the cylinder / box geometry along z & 0.01 \\ +pressure & bar & pressure of the gas in the cell & 3 \\ +p3he & & polarisation of the 3He gas [-1 to +1] & 0.7 \\ +bx & tesla & x component of field at the cell & 0 \\ +by & tesla & y component of field at the cell & 1e-3 \\ +bz & tesla & z component of field at the cell & 0 \\ +\bottomrule +\end{longtable} + +\subsection*{Links} +\begin{itemize} + \item \href{run:/home/willend/willend-McCode/mcstas-comps/optics/He3_cell.comp}{Source code} for \texttt{He3\_cell.comp}. +\end{itemize} +\IfFileExists{He3_cell_static.tex}{\input{He3_cell_static.tex}}{} \ No newline at end of file diff --git a/docs/manuals/mcstas/optics/Mask.tex b/docs/manuals/mcstas/optics/Mask.tex new file mode 100644 index 000000000..bd12090fd --- /dev/null +++ b/docs/manuals/mcstas/optics/Mask.tex @@ -0,0 +1,57 @@ +\section{The \texttt{Mask} McStas Component} +A masking image object + +\subsection*{Identification} +\begin{itemize} + \item \textbf{Site:} + \item \textbf{Author:} Erik Knudsen + \item \textbf{Origin:} DTU Physics + \item \textbf{Date:} March 2014 +\end{itemize} + +\subsection*{Description} +\begin{lstlisting} +The Mask component takes an image as input either as an standard image file in png or pnm format, or as an ascii file (see below for format), +and uses the image as a mask. For instance as a manner of measuring resolution for imaging applications. +If the image is supplied as a png or pnm file, they interpretation of the pixels varies depending on the file. If the image is grayscale the pixel values are directly mapped +to opacity (or transparency if invert is set) values in the range [0..1]. If the image has RGB channels the R channel is considered most significant, the B channel least significant. +The resulting number, e.g. R*255^2 + G*255 + B, is then mapped to a real valued opacity. +Additionally png images may have an alpha channel - which is then considered the least significant channel. Palette mapped pngs are as of yet _not_ supported. +A regular ascii file may be supplied - in which case the file is like the one below +#any initial line starting with a hash is silently ignored +0.0 1.0 0.0 1.0 0.0 +0.5 0.0 0.5 0.0 0.5 +0.0 0.25 0.0 0.25 0.0 +0.75 0.0 0.75 0.0 0.75 +1.0 0.0 1.0 0.0 1.0 + +...which defines a 5x5 mask with a kind of checkerboard pattern- + +N.b. If you want to use the png-option of the component you must have libpng installed _and_ link your compiled instrument to it. Assuming libpng is installed you may do this +by adding "-DUSE_PNG=1 -lpng" to 1) the MCXTRACE_CFLAGS environment variable or 2) to the compiler flags textbox in the GUI. Open File->Configuration and edit the textbox. + +The virtual option of the Mask, is intended as a help to use a png-image as a grayscale distribution. If the virtual flag is set, rays are porpagated to the mask plane +and the pixel value at the intersection point is read, but the rays reamin unaffected. By extracting the output parameter masking it can subsequently be used. +\end{lstlisting} + +\subsection*{Input parameters} +Parameters in \textbf{boldface} are required; the others are optional. + +\begin{longtable}{p{0.22\textwidth}p{0.12\textwidth}p{0.46\textwidth}p{0.14\textwidth}} +\toprule +\textbf{Name} & \textbf{Unit} & \textbf{Description} & \textbf{Default} \\ +\midrule +\endhead +\textbf{xwidth} & m & Width of the masking object & \\ +\textbf{yheight} & m & Height of the masking object & \\ +\textbf{mask} & & Name of file containing the masking image & \\ +invert & & By default the values from the masking image are interepreted as opacity (1 is fully blocking). If invert is nonzero this is inverted and the values are considered as transparency (1 is fully transmissive) & 0 \\ +virtual & & Mask does not affect the neutron, but does read the pixel value of the pixel hit. Could be useful to have as a packing factor for a crystal . & 0 \\ +\bottomrule +\end{longtable} + +\subsection*{Links} +\begin{itemize} + \item \href{run:/home/willend/willend-McCode/mcstas-comps/optics/Mask.comp}{Source code} for \texttt{Mask.comp}. +\end{itemize} +\IfFileExists{Mask_static.tex}{\input{Mask_static.tex}}{} \ No newline at end of file diff --git a/docs/manuals/mcstas/optics/Mirror.tex b/docs/manuals/mcstas/optics/Mirror.tex new file mode 100644 index 000000000..ec291ff2b --- /dev/null +++ b/docs/manuals/mcstas/optics/Mirror.tex @@ -0,0 +1,56 @@ +\section{The \texttt{Mirror} McStas Component} +Single mirror plate. + +\subsection*{Identification} +\begin{itemize} + \item \textbf{Site:} + \item \textbf{Author:} Kristian Nielsen + \item \textbf{Origin:} Risoe + \item \textbf{Date:} August 1998 +\end{itemize} + +\subsection*{Description} +\begin{lstlisting} +Single mirror plate (used to build guides in compound components). +The component Mirror models a single rectangular neutron mirror plate. +It can be used as a sample component or to e.g. assemble a complete neutron +guide by putting multiple mirror components at appropriate locations and +orientations in the instrument definition, much like a real guide is build +from individual mirrors. +Additionally, it may be centered in order to be used as a sample or +monochromator plate, else it starts from AT position. +Reflectivity is either defined by an analytical model (see Component Manual) +or from a two-columns file with q [Angs-1] as first and R [0-1] as second. +In the local coordinate system, the mirror lies in the first quadrant of the +x-y plane, with one corner at (0, 0, 0). Plane is thus perpendicular to the +incoming beam, and should usually be rotated. + +Example: Mirror(xwidth=.1, yheight=.1,R0=0.99,Qc=0.021,alpha=6.1,m=2,W=0.003) +\end{lstlisting} + +\subsection*{Input parameters} +Parameters in \textbf{boldface} are required; the others are optional. + +\begin{longtable}{p{0.22\textwidth}p{0.12\textwidth}p{0.46\textwidth}p{0.14\textwidth}} +\toprule +\textbf{Name} & \textbf{Unit} & \textbf{Description} & \textbf{Default} \\ +\midrule +\endhead +reflect & str & Name of reflectivity file. Format q(Angs-1) R(0-1) & 0 \\ +\textbf{xwidth} & m & width of mirror plate & \\ +\textbf{yheight} & m & height of mirror plate & \\ +R0 & 1 & Low-angle reflectivity & 0.99 \\ +Qc & AA-1 & Critical scattering vector & 0.021 \\ +alpha & AA & Slope of reflectivity & 6.07 \\ +m & 1 & m-value of material. Zero means completely absorbing. & 2 \\ +W & AA-1 & Width of supermirror cut-off & 0.003 \\ +center & 1 & if true (1), the Mirror is centered arount AT position. & 0 \\ +transmit & 1 & When true, non reflected neutrons are transmitted through the mirror, instead of being absorbed. & 0 \\ +\bottomrule +\end{longtable} + +\subsection*{Links} +\begin{itemize} + \item \href{run:/home/willend/willend-McCode/mcstas-comps/optics/Mirror.comp}{Source code} for \texttt{Mirror.comp}. +\end{itemize} +\IfFileExists{Mirror_static.tex}{\input{Mirror_static.tex}}{} \ No newline at end of file diff --git a/docs/manuals/mcstas/optics/Monochromator_curved.tex b/docs/manuals/mcstas/optics/Monochromator_curved.tex new file mode 100644 index 000000000..b2ff10bbd --- /dev/null +++ b/docs/manuals/mcstas/optics/Monochromator_curved.tex @@ -0,0 +1,88 @@ +\section{The \texttt{Monochromator\_curved} McStas Component} +Double bent multiple crystal slabs with anisotropic gaussian mosaic. + +\subsection*{Identification} +\begin{itemize} + \item \textbf{Site:} + \item \textbf{Author:} Emmanuel Farhi, Kim, Lefmann, Peter Link + \item \textbf{Origin:} \textless{}a href="http://www.ill.fr"\textgreater{}ILL\textless{}/a\textgreater{} + \item \textbf{Date:} Aug. 24th 2001 +\end{itemize} + +\subsection*{Description} +\begin{lstlisting} +Double bent infinitely thin mosaic crystal, useful as a monochromator or +analyzer. which uses a small-mosaicity approximation and taking into account +higher order scattering. The mosaic is anisotropic gaussian, with different +FWHMs in the Y and Z directions. The scattering vector is perpendicular to the +surface. For an unrotated monochromator component, the crystal plane lies in +the y-z plane (ie. parallel to the beam). The component works in reflection, but +also transmits the non-diffracted beam. Reflectivity and transmission files may +be used. The slabs are positioned in the vertical plane (not on a +cylinder/sphere), and are rotated according to the curvature radius. +When curvatures are set to 0, the monochromator is flat. +The curvatures approximation for parallel beam focusing to distance L, with +monochromator rotation angle A1 are: +RV = 2*L*sin(DEG2RAD*A1); +RH = 2*L/sin(DEG2RAD*A1); + +When you rotate the component by A1 = asin(Q/2/Ki)*RAD2DEG, do not forget to +rotate the following components by A2=2*A1 (for 1st order) ! + +Example: Monochromator_curved(zwidth=0.01, yheight=0.01, gap=0.0005, NH=11, NV=11, mosaich=30.0, mosaicv=30.0, r0=0.7, Q=1.8734) + +Monochromator lattice parameter +PG 002 DM=3.355 AA (Highly Oriented Pyrolythic Graphite) +PG 004 DM=1.677 AA +Heusler 111 DM=3.362 AA (Cu2MnAl) +CoFe DM=1.771 AA (Co0.92Fe0.08) +Ge 111 DM=3.266 AA +Ge 311 DM=1.714 AA +Ge 511 DM=1.089 AA +Ge 533 DM=0.863 AA +Si 111 DM=3.135 AA +Cu 111 DM=2.087 AA +Cu 002 DM=1.807 AA +Cu 220 DM=1.278 AA +Cu 111 DM=2.095 AA +\end{lstlisting} + +\subsection*{Input parameters} +Parameters in \textbf{boldface} are required; the others are optional. + +\begin{longtable}{p{0.22\textwidth}p{0.12\textwidth}p{0.46\textwidth}p{0.14\textwidth}} +\toprule +\textbf{Name} & \textbf{Unit} & \textbf{Description} & \textbf{Default} \\ +\midrule +\endhead +reflect & str & reflectivity file name of text file as 2 columns [k, R] & "NULL" \\ +transmit & str & transmission file name of text file as 2 columns [k, T] & "NULL" \\ +zwidth & m & horizontal width of an individual slab & 0.01 \\ +yheight & m & vertical height of an individual slab & 0.01 \\ +gap & m & typical gap between adjacent slabs & 0.0005 \\ +NH & int & number of slabs horizontal & 11 \\ +NV & int & number of slabs vertical & 11 \\ +mosaich & arc minutes & Horisontal mosaic FWHM & 30.0 \\ +mosaicv & arc minutes & Vertical mosaic FWHM & 30.0 \\ +r0 & 1 & Maximum reflectivity. O unactivates component & 0.7 \\ +t0 & 1 & transmission efficiency & 1.0 \\ +Q & AA-1 & Scattering vector & 1.8734 \\ +RV & m & radius of vertical focussing. flat for 0 & 0 \\ +RH & m & radius of horizontal focussing. flat for 0 & 0 \\ +DM & AA & monochromator d-spacing instead of Q=2*pi/DM & 0 \\ +mosaic & arc minutes & sets mosaich=mosaicv & 0 \\ +width & m & total width of monochromator, along Z & 0 \\ +height & m & total height of monochromator, along Y & 0 \\ +verbose & 0/1 & verbosity level & 0 \\ +order & 1 & specify the diffraction order, 1 is usually prefered. Use 0 for all & 0 \\ +\bottomrule +\end{longtable} + +\subsection*{Links} +\begin{itemize} + \item \href{run:/home/willend/willend-McCode/mcstas-comps/optics/Monochromator_curved.comp}{Source code} for \texttt{Monochromator\_curved.comp}. + \item \textless{}a href="http://mcstas.risoe.dk/pipermail/neutron-mc/1999q1/000133.html"\textgreater{}Additional note\textless{}/a\textgreater{} from Peter Link. + \item Obsolete Mosaic\_anisotropic by Kristian Nielsen + \item Contributed Monochromator\_2foc by Peter Link +\end{itemize} +\IfFileExists{Monochromator_curved_static.tex}{\input{Monochromator_curved_static.tex}}{} \ No newline at end of file diff --git a/docs/manuals/mcstas/optics/Monochromator_flat.tex b/docs/manuals/mcstas/optics/Monochromator_flat.tex new file mode 100644 index 000000000..c68039ed4 --- /dev/null +++ b/docs/manuals/mcstas/optics/Monochromator_flat.tex @@ -0,0 +1,64 @@ +\section{The \texttt{Monochromator\_flat} McStas Component} +Flat Monochromator crystal with anisotropic mosaic. + +\subsection*{Identification} +\begin{itemize} + \item \textbf{Site:} + \item \textbf{Author:} Kristian Nielsen + \item \textbf{Origin:} Risoe + \item \textbf{Date:} 1999 +\end{itemize} + +\subsection*{Description} +\begin{lstlisting} +Flat, infinitely thin mosaic crystal, useful as a monochromator or analyzer. +For an unrotated monochromator component, the crystal surface lies in the Y-Z +plane (ie. parallel to the beam). +The mosaic is anisotropic gaussian, with different FWHMs in the Y and Z +directions. The scattering vector is perpendicular to the surface. + +Example: Monochromator_flat(zmin=-0.1, zmax=0.1, ymin=-0.1, ymax=0.1, mosaich=30.0, mosaicv=30.0, r0=0.7, Q=1.8734) + +Monochromator lattice parameter +PG 002 DM=3.355 AA (Highly Oriented Pyrolythic Graphite) +PG 004 DM=1.677 AA +Heusler 111 DM=3.362 AA (Cu2MnAl) +CoFe DM=1.771 AA (Co0.92Fe0.08) +Ge 111 DM=3.266 AA +Ge 311 DM=1.714 AA +Ge 511 DM=1.089 AA +Ge 533 DM=0.863 AA +Si 111 DM=3.135 AA +Cu 111 DM=2.087 AA +Cu 002 DM=1.807 AA +Cu 220 DM=1.278 AA +Cu 111 DM=2.095 AA +\end{lstlisting} + +\subsection*{Input parameters} +Parameters in \textbf{boldface} are required; the others are optional. + +\begin{longtable}{p{0.22\textwidth}p{0.12\textwidth}p{0.46\textwidth}p{0.14\textwidth}} +\toprule +\textbf{Name} & \textbf{Unit} & \textbf{Description} & \textbf{Default} \\ +\midrule +\endhead +zmin & m & Lower horizontal (z) bound of crystal & -0.05 \\ +zmax & m & Upper horizontal (z) bound of crystal & 0.05 \\ +ymin & m & Lower vertical (y) bound of crystal & -0.05 \\ +ymax & m & Upper vertical (y) bound of crystal & 0.05 \\ +zwidth & m & Width of crystal, instead of zmin and zmax & 0 \\ +yheight & m & Height of crystal, instead of ymin and ymax & 0 \\ +mosaich & arc minutes & Horizontal mosaic (in z direction) (FWHM) & 30.0 \\ +mosaicv & arc minutes & Vertical mosaic (in y direction) (FWHM) & 30.0 \\ +r0 & 1 & Maximum reflectivity & 0.7 \\ +Q & 1/angstrom & Magnitude of scattering vector & 1.8734 \\ +DM & AA & monochromator d-spacing, instead of Q = 2*pi/DM & 0 \\ +\bottomrule +\end{longtable} + +\subsection*{Links} +\begin{itemize} + \item \href{run:/home/willend/willend-McCode/mcstas-comps/optics/Monochromator_flat.comp}{Source code} for \texttt{Monochromator\_flat.comp}. +\end{itemize} +\IfFileExists{Monochromator_flat_static.tex}{\input{Monochromator_flat_static.tex}}{} \ No newline at end of file diff --git a/docs/manuals/mcstas/optics/Monochromator_pol.tex b/docs/manuals/mcstas/optics/Monochromator_pol.tex new file mode 100644 index 000000000..f9e1bec6e --- /dev/null +++ b/docs/manuals/mcstas/optics/Monochromator_pol.tex @@ -0,0 +1,89 @@ +\section{The \texttt{Monochromator\_pol} McStas Component} +Flat polarizaing monochromator crystal. + +\subsection*{Identification} +\begin{itemize} + \item \textbf{Site:} + \item \textbf{Author:} Peter Christiansen + \item \textbf{Origin:} RISOE + \item \textbf{Date:} 2006 +\end{itemize} + +\subsection*{Description} +\begin{lstlisting} +Based on Monochromator_flat. +Flat, infinitely thin mosaic crystal, useful as a monochromator or analyzer. +For an unrotated monochromator component, the crystal surface lies in the Y-Z +plane (ie. parallel to the beam). +The mosaic and d-spread distributions are both Gaussian. +Neutrons are just reflected (billard ball like). No correction is done for +mosaicity of reflecting crystal. +The crystal is assumed to be a ferromagnet with spin pointing up +eta-tilde = (0, 1, 0) (along y-axis), so that the magnetic field is +pointing opposite (0, -|B|, 0). + +The polarisation is done by defining the reflectivity for spin up +(Rup) and spin down (Rdown) (which can be negative, see now!) and +based on this the nuclear and magnetic structure factors are +calculated: +FM = sign(Rup)*sqrt(|Rup|) + sign(Rdown)*sqrt(|Rdown|) +FN = sign(Rup)*sqrt(|Rup|) - sign(Rdown)*sqrt(|Rdown|) +and the physics is calculated as +Pol in = (sx_in, sy_in, sz_in) +Reflectivity R0 = FN*FN + 2*FN*FM*sy_in + FM*FM +(= |Rup| + |Rdown| (for sy_in=0)) +Pol out: +sx = (FN*FN - FM*FM)*sx_in/R0; +sy = ((FN*FN - FM*FM)*sy_in + 2*FN*FM + FM*FM*sy_in)/R0; +sz = (FN*FN - FM*FM)*sz_in/R0; + +These equations are taken from: +Lovesey: "Theory of neutron scattering from condensed matter, Volume +2", Eq. 10.96 and Eq. 10.110 + +This component works with gravity (uses PROP_X0). + +Example: Monochromator_pol(zwidth=0.2, yheight=0.2, mosaic=30.0, dspread=0.0025, Rup=1.0, Rdown=0.0, Q=1.8734) + +Monochromator lattice parameter +PG 002 DM=3.355 AA (Highly Oriented Pyrolythic Graphite) +PG 004 DM=1.677 AA +Heusler 111 DM=3.362 AA (Cu2MnAl) +CoFe DM=1.771 AA (Co0.92Fe0.08) +Ge 111 DM=3.266 AA +Ge 311 DM=1.714 AA +Ge 511 DM=1.089 AA +Ge 533 DM=0.863 AA +Si 111 DM=3.135 AA +Cu 111 DM=2.087 AA +Cu 002 DM=1.807 AA +Cu 220 DM=1.278 AA +Cu 111 DM=2.095 AA +\end{lstlisting} + +\subsection*{Input parameters} +Parameters in \textbf{boldface} are required; the others are optional. + +\begin{longtable}{p{0.22\textwidth}p{0.12\textwidth}p{0.46\textwidth}p{0.14\textwidth}} +\toprule +\textbf{Name} & \textbf{Unit} & \textbf{Description} & \textbf{Default} \\ +\midrule +\endhead +zwidth & m & Width of crystal & 0.1 \\ +yheight & m & Height of crystal & 0.1 \\ +mosaic & & Mosaicity (FWHM) [arc minutes] & 30.0 \\ +dspread & 1 & Relative d-spread (FWHM) & 0 \\ +Q & AA-1 & Magnitude of scattering vector & 1.8734 \\ +DM & AA & monochromator d-spacing instead of Q = 2*pi/DM & 0 \\ +pThreshold & & if probability\textgreater{}pThreshold then accept and weight else random & 0 \\ +Rup & 1 & Reflectivity of neutrons with polarization up & 1 \\ +Rdown & 1 & Reflectivity of neutrons with polarization down & 1 \\ +debug & & if debug \textgreater{} 0, print out some info about the calculations & 0 \\ +\bottomrule +\end{longtable} + +\subsection*{Links} +\begin{itemize} + \item \href{run:/home/willend/willend-McCode/mcstas-comps/optics/Monochromator_pol.comp}{Source code} for \texttt{Monochromator\_pol.comp}. +\end{itemize} +\IfFileExists{Monochromator_pol_static.tex}{\input{Monochromator_pol_static.tex}}{} \ No newline at end of file diff --git a/docs/manuals/mcstas/optics/Place.tex b/docs/manuals/mcstas/optics/Place.tex new file mode 100644 index 000000000..d0f0a5534 --- /dev/null +++ b/docs/manuals/mcstas/optics/Place.tex @@ -0,0 +1,35 @@ +\section{The \texttt{Place} McStas Component} +A place in space - alias of Arm + +\subsection*{Identification} +\begin{itemize} + \item \textbf{Site:} + \item \textbf{Author:} Peter Willendrup + \item \textbf{Origin:} DTU + \item \textbf{Date:} June 2025 +\end{itemize} + +\subsection*{Description} +\begin{lstlisting} +Just like Arm, Place does not actually do anything, it is just there to set +up a new coordinate system. + +Example: Place() +\end{lstlisting} + +\subsection*{Input parameters} +Parameters in \textbf{boldface} are required; the others are optional. + +\begin{longtable}{p{0.22\textwidth}p{0.12\textwidth}p{0.46\textwidth}p{0.14\textwidth}} +\toprule +\textbf{Name} & \textbf{Unit} & \textbf{Description} & \textbf{Default} \\ +\midrule +\endhead +\bottomrule +\end{longtable} + +\subsection*{Links} +\begin{itemize} + \item \href{run:/home/willend/willend-McCode/mcstas-comps/optics/Place.comp}{Source code} for \texttt{Place.comp}. +\end{itemize} +\IfFileExists{Place_static.tex}{\input{Place_static.tex}}{} \ No newline at end of file diff --git a/docs/manuals/mcstas/optics/PolAnalyser_ideal.tex b/docs/manuals/mcstas/optics/PolAnalyser_ideal.tex new file mode 100644 index 000000000..068ca9f57 --- /dev/null +++ b/docs/manuals/mcstas/optics/PolAnalyser_ideal.tex @@ -0,0 +1,39 @@ +\section{The \texttt{PolAnalyser\_ideal} McStas Component} +(Unphysical) ideal analyzer. + +\subsection*{Identification} +\begin{itemize} + \item \textbf{Site:} + \item \textbf{Author:} Erik Knudsen + \item \textbf{Origin:} Risoe + \item \textbf{Date:} June 2010 +\end{itemize} + +\subsection*{Description} +\begin{lstlisting} +This is an ideal model of a polarization analyser device. Given a polarization vector +it "lets through" a scaled neutron weight. An imperfect analyzer could be modelled by an +analysis vector M with |M|<1. + +Example: PolAnalyser_ideal(mx=0, my=1, mz=0) +\end{lstlisting} + +\subsection*{Input parameters} +Parameters in \textbf{boldface} are required; the others are optional. + +\begin{longtable}{p{0.22\textwidth}p{0.12\textwidth}p{0.46\textwidth}p{0.14\textwidth}} +\toprule +\textbf{Name} & \textbf{Unit} & \textbf{Description} & \textbf{Default} \\ +\midrule +\endhead +mx & 1 & X-component of polarisation analysis vector -1\textless{}mx\textless{}1 & 0 \\ +my & 1 & Y-component of polarisation analysis vector -1\textless{}my\textless{}1 & 0 \\ +mz & 1 & Z-component of polarisation analysis vector -1\textless{}mz\textless{}1 & 0 \\ +\bottomrule +\end{longtable} + +\subsection*{Links} +\begin{itemize} + \item \href{run:/home/willend/willend-McCode/mcstas-comps/optics/PolAnalyser_ideal.comp}{Source code} for \texttt{PolAnalyser\_ideal.comp}. +\end{itemize} +\IfFileExists{PolAnalyser_ideal_static.tex}{\input{PolAnalyser_ideal_static.tex}}{} \ No newline at end of file diff --git a/docs/manuals/mcstas/optics/Pol_Bfield.tex b/docs/manuals/mcstas/optics/Pol_Bfield.tex new file mode 100644 index 000000000..564f83651 --- /dev/null +++ b/docs/manuals/mcstas/optics/Pol_Bfield.tex @@ -0,0 +1,86 @@ +\section{The \texttt{Pol\_Bfield} McStas Component} +Magnetic field component. + +\subsection*{Identification} +\begin{itemize} + \item \textbf{Site:} + \item \textbf{Author:} Erik B Knudsen, Peter Christiansen and Peter Willendrup + \item \textbf{Origin:} RISOE + \item \textbf{Date:} July 2011 +\end{itemize} + +\subsection*{Description} +\begin{lstlisting} +Region with a definable magnetic field. + +The component is nestable if the concentric flag is set (the default). This means that it may have a +construction like the following: +// START MAGNETIC FIELD +COMPONENT msf = +Pol_Bfield(xwidth=0.08, yheight=0.08, zdepth=0.2, Bx=0, By=-0.678332e-4, Bz=0) +AT (0, 0, 0) RELATIVE armMSF + +// OTHER COMPONENTS INSIDE THE MAGNETIC FIELD CAN BE PLACED HERE + +// STOP MAGNETIC FIELD +COMPONENT msf_stop = Pol_simpleBfield_stop(magnet_comp_stop=msf) +AT (0, 0, 0) RELATIVE armMSF + +Note that if you have objects within the magnetic field that extend outside it you may get +wrong results, because propagation within the field will then possibly extend outside, e.g. +when using a tabled field. The evaluated field will then use the nearest defined field point +_also_ outside the defintion area. If these outside-points have a non-zero field precession will +continue - even after the neutron has left the field region. + +In between the two component instances the propagation routine +PROP_DT also handles spin propagation. +The current algorithm used for spin propagation is: +SimpleNumMagnetPrecession +in pol-lib. + +Example: Pol_Bfield(xwidth=0.1, yheight=0.1, zdepth=0.2, Bx=0, By=1, Bz=0) +Pol_Bfield(xwidth=0.1, yheight=0.1, zdepth=0.2, field_type=1) + +Functions supplied by the system are (the number is the ID of the function to be given as the field_type parameter: +1. Constant magnetic field: Constant field (Bx,By,Bz) within the region +2. Rotating magnetic_field: Field is initially (0,By,0) but after a length of zdepth +has rotated to (By,0,0) +3. Majorana magnetic_field: Field is initially (Bx,By,0) with By< xwidth +<------> xwidth/nslit (nslit=3) +<> d + +The reflection functions and parameters defaults as follows: +Bot defaults to Top, Left defaults to Top, Right defaults to left. +Down defaults to down and up defaults to up for all functions and +Top(Up and Down) defaults to StdReflecFunc and {0.99,0.0219,6.07,2.0,0.003} +which stands for {R0, Qc, alpha, m, W}. + +Example: +Pol_bender(xwidth = 0.08, yheight = 0.08, length = 1.0, radius= 10.0, +nslit=5, d=0.0, endFlat=0, drawOption=2, +rTopUpPar={0.99, 0.0219, 6.07, 3.0, 0.003}, +rTopDownPar={0.99, 0.0219, 6.07, 1.0, 0.003}) + +See also the example instruments Test_Pol_Bender and +Test_Pol_Bender_Vs_Guide_Curved (under tests). + +%BUGS +This component has been against tested Guide_curved and found to +give the same intensities. Gravity option has not been tested. + +GRAVITY: YES (when gravity is along y-axis) +\end{lstlisting} + +\subsection*{Input parameters} +Parameters in \textbf{boldface} are required; the others are optional. + +\begin{longtable}{p{0.22\textwidth}p{0.12\textwidth}p{0.46\textwidth}p{0.14\textwidth}} +\toprule +\textbf{Name} & \textbf{Unit} & \textbf{Description} & \textbf{Default} \\ +\midrule +\endhead +\textbf{xwidth} & m & Width at the guide entry & \\ +\textbf{yheight} & m & Height at the guide entry & \\ +\textbf{length} & m & length of guide along center & \\ +\textbf{radius} & m & Radius of curvature of the guide (+:curve left/-:right) & \\ +G & m/s\textasciicircum{}2 & Gravitational constant & 9.8 \\ +nslit & 1 & Number of slits & 1 \\ +d & m & Width of spacers (subdividing absorbing walls) & 0.0 \\ +debug & 1 & if debug \textgreater{} 0 print out some internal parameters & 0 \\ +endFlat & 1 & If endflat\textgreater{}0 then entrance and exit planes are parallel. & 0 \\ +rTopUpPar & 1 & Top mirror Parameters for spin up standard reflectivity function & \{0.99,0.0219,6.07,2.0,0.003\} \\ +rTopDownPar & 1 & Top mirror Parameters for spin down standard reflectivity function & \{0.99,0.0219,6.07,2.0,0.003\} \\ +rBotUpPar & 1 & Bottom mirror Parameters for spin up standard reflectivity function & \{0.99,0.0219,6.07,2.0,0.003\} \\ +rBotDownPar & 1 & Bottom mirror Parameters for spin down standard reflectivity function & \{0.99,0.0219,6.07,2.0,0.003\} \\ +rLeftUpPar & 1 & Left mirror Parameters for spin up standard reflectivity function & \{0.99,0.0219,6.07,2.0,0.003\} \\ +rLeftDownPar & 1 & Left mirror Parameters for spin down standard reflectivity function & \{0.99,0.0219,6.07,2.0,0.003\} \\ +rRightUpPar & 1 & Right mirror Parameters for spin up standard reflectivity function & \{0.99,0.0219,6.07,2.0,0.003\} \\ +rRightDownPar & 1 & Right mirror Parameters for spin down standard reflectivity function & \{0.99,0.0219,6.07,2.0,0.003\} \\ +rTopUpData & 1 & Reflectivity file for top mirror, spin up & "" \\ +rTopDownData & 1 & Reflectivity file for top mirror, spin down & "" \\ +rBotUpData & 1 & Reflectivity file for bottom mirror, spin up & "" \\ +rBotDownData & 1 & Reflectivity file for bottom mirror, spin down & "" \\ +rLeftUpData & 1 & Reflectivity file for left mirror, spin up & "" \\ +rLeftDownData & 1 & Reflectivity file for left mirror, spin down & "" \\ +rRightUpData & 1 & Reflectivity file for right mirror, spin up & "" \\ +rRightDownData & 1 & Reflectivity file for right mirror, spin down & "" \\ +\bottomrule +\end{longtable} + +\subsection*{Links} +\begin{itemize} + \item \href{run:/home/willend/willend-McCode/mcstas-comps/optics/Pol_bender.comp}{Source code} for \texttt{Pol\_bender.comp}. +\end{itemize} +\IfFileExists{Pol_bender_static.tex}{\input{Pol_bender_static.tex}}{} \ No newline at end of file diff --git a/docs/manuals/mcstas/optics/Pol_constBfield.tex b/docs/manuals/mcstas/optics/Pol_constBfield.tex new file mode 100644 index 000000000..7a5ada2d7 --- /dev/null +++ b/docs/manuals/mcstas/optics/Pol_constBfield.tex @@ -0,0 +1,43 @@ +\section{The \texttt{Pol\_constBfield} McStas Component} +Constant magnetic field. + +\subsection*{Identification} +\begin{itemize} + \item \textbf{Site:} + \item \textbf{Author:} Peter Christiansen + \item \textbf{Origin:} RISOE + \item \textbf{Date:} July 2006 +\end{itemize} + +\subsection*{Description} +\begin{lstlisting} +Rectangular box with constant B field along y-axis (up). The +component can be rotated to make either a guide field or a spin +flipper. A neutron hitting outside the box opening or the box sides +is absorbed. + +Example: Pol_constBfield(xwidth=0.1, yheight=0.1, zdepth=0.2, fliplambda=5.0) +\end{lstlisting} + +\subsection*{Input parameters} +Parameters in \textbf{boldface} are required; the others are optional. + +\begin{longtable}{p{0.22\textwidth}p{0.12\textwidth}p{0.46\textwidth}p{0.14\textwidth}} +\toprule +\textbf{Name} & \textbf{Unit} & \textbf{Description} & \textbf{Default} \\ +\midrule +\endhead +\textbf{xwidth} & m & Width of opening & \\ +\textbf{yheight} & m & Height of opening & \\ +\textbf{zdepth} & m & Length of field & \\ +B & Gauss & Magnetic field along y-direction & 0 \\ +fliplambda & AA & lambda for calculating B field & 0 \\ +flipangle & deg & Angle flipped for lambda = fliplambda fliplambda and flipangle overrides B so a neutron with s= (1, 0, 0) and v = (0, 0, v(fliplambda)) will have s =(cos(flipangle), sin(flipangle), 0) after the section. & 180 \\ +\bottomrule +\end{longtable} + +\subsection*{Links} +\begin{itemize} + \item \href{run:/home/willend/willend-McCode/mcstas-comps/optics/Pol_constBfield.comp}{Source code} for \texttt{Pol\_constBfield.comp}. +\end{itemize} +\IfFileExists{Pol_constBfield_static.tex}{\input{Pol_constBfield_static.tex}}{} \ No newline at end of file diff --git a/docs/manuals/mcstas/optics/Pol_guide_mirror.tex b/docs/manuals/mcstas/optics/Pol_guide_mirror.tex new file mode 100644 index 000000000..eab18fa16 --- /dev/null +++ b/docs/manuals/mcstas/optics/Pol_guide_mirror.tex @@ -0,0 +1,66 @@ +\section{The \texttt{Pol\_guide\_mirror} McStas Component} +Polarising guide with a supermirror along its diagonal. + +\subsection*{Identification} +\begin{itemize} + \item \textbf{Site:} + \item \textbf{Author:} Erik B Knudsen + \item \textbf{Origin:} DTU Physics + \item \textbf{Date:} July 2018 +\end{itemize} + +\subsection*{Description} +\begin{lstlisting} +Based on Pol_guide_vmirror by P. Christiansen. +Models a rectangular guide with entrance centered on the Z axis and +with one supermirror sitting on the diagonal inside. +The entrance lies in the X-Y plane. Draws a true depiction +of the guide with mirror and trajectories. +The polarisation is handled similar to in Monochromator_pol. +The reflec functions are handled similar to Pol_mirror. +The up direction is hardcoded to be along the y-axis (0, 1, 0) + +Note that this component can also be used as a frame overlap-mirror +if the up and down reflectivities are set equal. In this case the wall +reflectivity (rPar) should probably be set to 0. + +Reflectivity values can either come from datafiles or from +sets of parameters to the standard analytic reflectivity function commonly +used for neutron guides: +R=R0; q geomview.off +or +powercrust coordinates.xyz +and viewed with geomview or java -jar jroff.jar (see below). + +All geometries are centred. The bulk material fills the shape, but can be +set 'outside' when density is given a negative value. In this case, the material +outside the bulk is void (vacuum). + +Usually, you should stack more than one of these to get a significant effect +on the neutron beam, so-called 'compound refractive lens'. +The focal length for N lenses with focal 'f' is f/N, where f=R/(1-n) +and R = r/2 for a spherical lens with curvature radius 'r' + +COMMON MATERIALS: +Should have high coherent, and low incoherent and absorption cross sections +Be: density=1.85, weight=9.0121, sigma_coh=7.63, sigma_inc=0.0018,sigma_abs=0.0076 +Pb: density=11.115,weight=207.2, sigma_coh=11.115,sigma_inc=0.003, sigma_abs=0.171 +Pb206: sigma_coh=10.68, sigma_inc=0 , sigma_abs=0.03 +Pb208: sigma_coh=11.34, sigma_inc=0 , sigma_abs=0.00048 +Zr: density=6.52, weight=91.224, sigma_coh=6.44, sigma_inc=0.02, sigma_abs=0.185 +Zr90: sigma_coh=5.1, sigma_inc=0 , sigma_abs=0.011 +Zr94: sigma_coh=8.4, sigma_inc=0 , sigma_abs=0.05 +Bi: density=9.78, weight=208.98, sigma_coh=9.148, sigma_inc=0.0084,sigma_abs=0.0338 +Mg: density=1.738, weight=24.3, sigma_coh=3.631, sigma_inc=0.08, sigma_abs=0.063 +MgF2: density=3.148, weight=62.3018,sigma_coh=11.74, sigma_inc=0.0816,sigma_abs=0.0822 +diamond: density=3.52, weight=12.01, sigma_coh=5.551, sigma_inc=0.001, sigma_abs=0.0035 +Quartz/silica: density=2.53, weight=60.08, sigma_coh=10.625,sigma_inc=0.0056,sigma_abs=0.1714 +Si: density=2.329, weight=28.0855,sigma_coh=2.1633,sigma_inc=0.004, sigma_abs=0.171 +Al: density=2.7, weight=26.98, sigma_coh=1.495, sigma_inc=0.0082,sigma_abs=0.231 +Ni: density=8.908, weight=58.69, sigma_coh=13.3, sigma_inc=5.2, sigma_abs=4.49 +Mn: (bc < 0) density=7.21, weight=54.94, sigma_coh=-1.75, sigma_inc=0.4, sigma_abs=13.3 +perfluoropolymer(PTFE/Teflon/CF2): +density=2.2, weight=50.007, sigma_coh=13.584,sigma_inc=0.0026,sigma_abs=0.0227 +Organic molecules with C,O,H,F + +Among the most commonly available and machinable materials are MgF2, SiO2, Si, and Al. +\end{lstlisting} + +\subsection*{Input parameters} +Parameters in \textbf{boldface} are required; the others are optional. + +\begin{longtable}{p{0.22\textwidth}p{0.12\textwidth}p{0.46\textwidth}p{0.14\textwidth}} +\toprule +\textbf{Name} & \textbf{Unit} & \textbf{Description} & \textbf{Default} \\ +\midrule +\endhead +xwidth & m & width of box & 0 \\ +yheight & m & height of box/cylinder & 0 \\ +zdepth & m & depth of box & 0 \\ +radius & m & radius of sphere/cylinder & 0 \\ +geometry & str & OFF/PLY geometry file name, or NULL to use simple shape A spherical bi-concave lens can be obtained with geometry="lens\_sphere" and given radius and zdepth & "NULL" \\ +R0 & 1 & Low-angle reflectivity & 0.99 \\ +sigma\_coh & barn & coherent cross section of refracting material. Use negative value to indicate a negative coherent scattering length & 11.74 \\ +density & g/cm3 & density of the refracting material. density \textless{} 0 means the material is outside/before the shape. & 3.148 \\ +weight & g/mol & molar mass of the refracting material & 62.3018 \\ +sigma\_inc & barn & incoherent cross section & 0 \\ +sigma\_abs & barn & thermal absorption cross section & 0 \\ +Qc & Angs-1 & critical scattering vector, e.g. Qc=0.0219 for Ni coating. Set Qc=0 to use the bulk critical grazing angles. & 0 \\ +p\_interact & 1 & MC Probability for scattering the ray; otherwise transmit. Use 0 to compute true probability, or specify it as e.g. 0.05 & 0.05 \\ +RMS & Angs & root mean square wavyness of the surface & 0 \\ +focus\_scatter & deg & angle in which to scatter in bulk, with probability 'p\_interact' & 10 \\ +verbose & 1 & flag to display detailed component behaviour & 0 \\ +p\_scatter & 1 & flag to allow scattering in the refractor bulk & 1 \\ +p\_reflect & 1 & flag to allow reflection (grazing angle) at the surface & 1 \\ +p\_refract & 1 & flag to allow refraction at the refractor surface & 1 \\ +\bottomrule +\end{longtable} + +\subsection*{Links} +\begin{itemize} + \item \href{run:/home/willend/willend-McCode/mcstas-comps/optics/Refractor.comp}{Source code} for \texttt{Refractor.comp}. + \item M. L. Goldberger et al, Phys. Rev. 71, 294 - 310 (1947) + \item Sears V.F. Neutron optics. An introduction to the theory of neutron optical phenomena and their applications. Oxford University Press, 1989. + \item H. Park et al. Measured operational neutron energies of compound refractive lenses. Nuclear Instruments and Methods B, 251:507-511, 2006. + \item J. Feinstein and R. H. Pantell. Characteristics of the thick, compound refractive lens. Applied Optics, 42 No. 4:719-723, 2001. + \item \textless{}a href="http://www.geomview.org"\textgreater{}Geomview and Object File Format (OFF)\textless{}/a\textgreater{} + \item Java version of Geomview (display only) \textless{}a href="http://www.holmes3d.net/graphics/roffview/"\textgreater{}jroff.jar\textless{}/a\textgreater{} + \item \textless{}a hrefp="http://meshlab.sourceforge.net/"\textgreater{}Meshlab\textless{}/a\textgreater{} can view OFF and PLY files + \item \textless{}a href="http://qhull.org"\textgreater{}qhull\textless{}/a\textgreater{} for points to OFF conversion + \item \textless{}a href="http://www.cs.ucdavis.edu/\textasciitilde{}amenta/powercrust.html"\textgreater{}powercrust\textless{}/a\textgreater{} for points to OFF conversion +\end{itemize} +\IfFileExists{Refractor_static.tex}{\input{Refractor_static.tex}}{} \ No newline at end of file diff --git a/docs/manuals/mcstas/optics/Rotator.tex b/docs/manuals/mcstas/optics/Rotator.tex new file mode 100644 index 000000000..449d9ccac --- /dev/null +++ b/docs/manuals/mcstas/optics/Rotator.tex @@ -0,0 +1,46 @@ +\section{The \texttt{Rotator} McStas Component} +A rotative frame along vertical axis + +\subsection*{Identification} +\begin{itemize} + \item \textbf{Site:} + \item \textbf{Author:} Emmanuel Farhi + \item \textbf{Origin:} \textless{}a href="http://www.ill.fr"\textgreater{}ILL\textless{}/a\textgreater{} + \item \textbf{Date:} June 20th 2013 +\end{itemize} + +\subsection*{Description} +\begin{lstlisting} +All components positioned after this one are rotating at frequency 'nu' with +phase 'phase'. Use the Derotator component to put back the model steady. +The rotation is performed w.r.t. the position of the component, along a chosen +main axis (use directon=1 for x, direction=2 for y, direction=3 for z). + +Default rotation axis is vertical axis / 'y'. + +Example: +R=Rotator(nu=14, phase=0) +... +DR=Derotator(rotator=R) +AT (0,0,0) RELATIVE R +\end{lstlisting} + +\subsection*{Input parameters} +Parameters in \textbf{boldface} are required; the others are optional. + +\begin{longtable}{p{0.22\textwidth}p{0.12\textwidth}p{0.46\textwidth}p{0.14\textwidth}} +\toprule +\textbf{Name} & \textbf{Unit} & \textbf{Description} & \textbf{Default} \\ +\midrule +\endhead +nu & Hz & Rotation frequency (round/s) in the rotating option (vertical axis) & 0 \\ +phase & deg & Phase shift & 0 \\ +direction & 1 & Rotation axis selection 1=x, 2=y, 3=z & 2 \\ +\bottomrule +\end{longtable} + +\subsection*{Links} +\begin{itemize} + \item \href{run:/home/willend/willend-McCode/mcstas-comps/optics/Rotator.comp}{Source code} for \texttt{Rotator.comp}. +\end{itemize} +\IfFileExists{Rotator_static.tex}{\input{Rotator_static.tex}}{} \ No newline at end of file diff --git a/docs/manuals/mcstas/optics/Selector.tex b/docs/manuals/mcstas/optics/Selector.tex new file mode 100644 index 000000000..65ce1c992 --- /dev/null +++ b/docs/manuals/mcstas/optics/Selector.tex @@ -0,0 +1,60 @@ +\section{The \texttt{Selector} McStas Component} +velocity selector (helical lamella type) such as \textless{}b\textgreater{}V\_selector\textless{}/b\textgreater{} component + +\subsection*{Identification} +\begin{itemize} + \item \textbf{Site:} + \item \textbf{Author:} Peter Link, \textless{}a href="mailto:Andreas.Ostermann@frm2.tum.de"\textgreater{}Andreas Ostermann\textless{}/a\textgreater{} + \item \textbf{Origin:} Uni. Gottingen (Germany) + \item \textbf{Date:} MARCH 1999 +\end{itemize} + +\subsection*{Description} +\begin{lstlisting} +Velocity selector consisting of rotating Soller-like blades +defining a helically twisted passage. +Geometry is defined by two identical apertures at 12 o'clock position, +The origin is at the ENTRANCE of the selector. + +Example: Selector(xmin=-0.015, xmax=0.015, ymin=-0.025, ymax=0.025, length=0.25, +nslit=72,d=0.0004, radius=0.12, alpha=48.298, nu=500) +These are values for the D11@ILL Dornier 'Dolores' Velocity Selector (NVS 023) + +%VALIDATION +Jun 2005: extensive external test, one minor problem +Jan 2006: problem solved (for McStas-1.9.1) +Validated by: K. Lieutenant + +%BUGS +for transmission calculation, each neutron is supposed to be in the guide centre +\end{lstlisting} + +\subsection*{Input parameters} +Parameters in \textbf{boldface} are required; the others are optional. + +\begin{longtable}{p{0.22\textwidth}p{0.12\textwidth}p{0.46\textwidth}p{0.14\textwidth}} +\toprule +\textbf{Name} & \textbf{Unit} & \textbf{Description} & \textbf{Default} \\ +\midrule +\endhead +xmin & m & Lower x bound of entry aperture & -0.015 \\ +xmax & m & Upper x bound of entry aperture & 0.015 \\ +ymin & m & Lower y bound of entry aperture & -0.025 \\ +ymax & m & Upper y bound of entry aperture & 0.025 \\ +length & m & rotor length & 0.25 \\ +xwidth & m & Width of entry. Overrides xmin,xmax. & 0 \\ +yheight & m & Height of entry. Overrides ymin,ymax. & 0 \\ +nslit & 1 & number of absorbing subdivinding spokes/lamella & 72 \\ +d & m & width of spokes at beam-center & 0.0004 \\ +radius & m & radius of beam-center & 0.12 \\ +alpha & deg & angle of torsion & 48.298 \\ +nu & Hz & frequency of rotation, which is ideally 3956*alpha*DEG2RAD/2/PI/lambda/length & 500 \\ +\bottomrule +\end{longtable} + +\subsection*{Links} +\begin{itemize} + \item \href{run:/home/willend/willend-McCode/mcstas-comps/optics/Selector.comp}{Source code} for \texttt{Selector.comp}. + \item See also Additional notes \textless{}a href="http://mcstas.risoe.dk/pipermail/neutron-mc/1999q1/000134.html"\textgreater{}March 1999\textless{}/a\textgreater{} and \textless{}a href="http://mcstas.risoe.dk/pipermail/neutron-mc/1999q2/000136.html"\textgreater{}Jan 2000\textless{}/a\textgreater{}. +\end{itemize} +\IfFileExists{Selector_static.tex}{\input{Selector_static.tex}}{} \ No newline at end of file diff --git a/docs/manuals/mcstas/optics/Set_pol.tex b/docs/manuals/mcstas/optics/Set_pol.tex new file mode 100644 index 000000000..ef185ae3e --- /dev/null +++ b/docs/manuals/mcstas/optics/Set_pol.tex @@ -0,0 +1,43 @@ +\section{The \texttt{Set\_pol} McStas Component} +(Unphysical) way of setting the polarization. + +\subsection*{Identification} +\begin{itemize} + \item \textbf{Site:} + \item \textbf{Author:} Peter Christiansen + \item \textbf{Origin:} Risoe + \item \textbf{Date:} August 2006 +\end{itemize} + +\subsection*{Description} +\begin{lstlisting} +This component has no physical size (like Arm - also drawn that +way), but is used to set the polarisation in one of four ways: +1) (randomOn=0, normalize=0) Hardcode the polarisation to the vector (px, py, pz) +2) (randomOn!=0, normalize!=0) Set the polarisation to a random vector on the unit sphere +3) (randomOn!=0, normalize=0) Set the polarisation to a radnom vector within the unit sphere +4) (randomOn=0, normalize!=0) Hardcode the polarisation to point in the direction of (px,py,pz) but with polarization=1. +Example: Set_pol(px=0, py=-1, pz=0) +\end{lstlisting} + +\subsection*{Input parameters} +Parameters in \textbf{boldface} are required; the others are optional. + +\begin{longtable}{p{0.22\textwidth}p{0.12\textwidth}p{0.46\textwidth}p{0.14\textwidth}} +\toprule +\textbf{Name} & \textbf{Unit} & \textbf{Description} & \textbf{Default} \\ +\midrule +\endhead +px & 1 & X-component of polarisation vector (can be negative) & 0 \\ +py & 1 & Y-component of polarisation vector (can be negative) & 0 \\ +pz & 1 & Z-component of polarisation vector (can be negative) & 0 \\ +randomOn & 1 & Generate random values if randomOn!=0. & 0 \\ +normalize & 1 & Normalize the polarization vector to unity length. & 0 \\ +\bottomrule +\end{longtable} + +\subsection*{Links} +\begin{itemize} + \item \href{run:/home/willend/willend-McCode/mcstas-comps/optics/Set_pol.comp}{Source code} for \texttt{Set\_pol.comp}. +\end{itemize} +\IfFileExists{Set_pol_static.tex}{\input{Set_pol_static.tex}}{} \ No newline at end of file diff --git a/docs/manuals/mcstas/optics/Slit.tex b/docs/manuals/mcstas/optics/Slit.tex new file mode 100644 index 000000000..120cd35d3 --- /dev/null +++ b/docs/manuals/mcstas/optics/Slit.tex @@ -0,0 +1,47 @@ +\section{The \texttt{Slit} McStas Component} +Rectangular/circular slit + +\subsection*{Identification} +\begin{itemize} + \item \textbf{Site:} + \item \textbf{Author:} Kim Lefmann and Henrik M. Roennow + \item \textbf{Origin:} Risoe + \item \textbf{Date:} June 16, 1997 +\end{itemize} + +\subsection*{Description} +\begin{lstlisting} +A simple rectangular or circular slit. You may either +specify the radius (circular shape), or the rectangular bounds. +No transmission around the slit is allowed. + +Example: Slit(xmin=-0.01, xmax=0.01, ymin=-0.01, ymax=0.01) +Slit(xwidth=0.02, yheight=0.02) +Slit(radius=0.01) + +The Slit will issue a warning if run as "closed" +\end{lstlisting} + +\subsection*{Input parameters} +Parameters in \textbf{boldface} are required; the others are optional. + +\begin{longtable}{p{0.22\textwidth}p{0.12\textwidth}p{0.46\textwidth}p{0.14\textwidth}} +\toprule +\textbf{Name} & \textbf{Unit} & \textbf{Description} & \textbf{Default} \\ +\midrule +\endhead +xmin & m & Lower x bound & UNSET \\ +xmax & m & Upper x bound & UNSET \\ +ymin & m & Lower y bound & UNSET \\ +ymax & m & Upper y bound & UNSET \\ +radius & m & Radius of slit in the z=0 plane, centered at Origin & UNSET \\ +xwidth & m & Width of slit. Overrides xmin,xmax if they are unset. & UNSET \\ +yheight & m & Height of slit. Overrides ymin,ymax if they are unset. & UNSET \\ +\bottomrule +\end{longtable} + +\subsection*{Links} +\begin{itemize} + \item \href{run:/home/willend/willend-McCode/mcstas-comps/optics/Slit.comp}{Source code} for \texttt{Slit.comp}. +\end{itemize} +\IfFileExists{Slit_static.tex}{\input{Slit_static.tex}}{} \ No newline at end of file diff --git a/docs/manuals/mcstas/optics/V_selector.tex b/docs/manuals/mcstas/optics/V_selector.tex new file mode 100644 index 000000000..319eb46f4 --- /dev/null +++ b/docs/manuals/mcstas/optics/V_selector.tex @@ -0,0 +1,52 @@ +\section{The \texttt{V\_selector} McStas Component} +Velocity selector. + +\subsection*{Identification} +\begin{itemize} + \item \textbf{Site:} + \item \textbf{Author:} Kim Lefmann + \item \textbf{Origin:} Risoe + \item \textbf{Date:} Nov 25, 1998 +\end{itemize} + +\subsection*{Description} +\begin{lstlisting} +Velocity selector consisting of rotating Soller-like blades +defining a helically twisted passage. +Geometry defined by two identical, centered apertures at 12 o'clock +position, Origo is at the centre of the selector (input is at -zdepth/2). +Transmission is analytical assuming a continuous source. + +Example: V_selector(xwidth=0.03, yheight=0.05, zdepth=0.30, radius=0.12, alpha=48.298, length=0.25, d=0.0004, nu=20000, nslit=72) +These are values for the D11@ILL Dornier 'Dolores' Velocity Selector (NVS 023) + +%VALIDATION +Jun 2005: extensive external test, no problems found +Validated by: K. Lieutenant +\end{lstlisting} + +\subsection*{Input parameters} +Parameters in \textbf{boldface} are required; the others are optional. + +\begin{longtable}{p{0.22\textwidth}p{0.12\textwidth}p{0.46\textwidth}p{0.14\textwidth}} +\toprule +\textbf{Name} & \textbf{Unit} & \textbf{Description} & \textbf{Default} \\ +\midrule +\endhead +xwidth & m & Width of entry aperture & 0.03 \\ +yheight & m & Height of entry aperture & 0.05 \\ +zdepth & m & Distance between apertures, for housing containing the rotor & 0.30 \\ +radius & m & Height from aperture centre to rotation axis & 0.12 \\ +alpha & deg & Twist angle along the cylinder & 48.298 \\ +length & m & Length of cylinder/rotor (less than zdepth) & 0.25 \\ +d & m & Thickness of blades & 0.0004 \\ +nu & Hz & Cylinder rotation speed, counter-clockwise, which is ideally 3956*alpha*DEG2RAD/2/PI/lambda/length & 300 \\ +nslit & 1 & Number of Soller blades & 72 \\ +\bottomrule +\end{longtable} + +\subsection*{Links} +\begin{itemize} + \item \href{run:/home/willend/willend-McCode/mcstas-comps/optics/V_selector.comp}{Source code} for \texttt{V\_selector.comp}. +\end{itemize} +\IfFileExists{V_selector_static.tex}{\input{V_selector_static.tex}}{} \ No newline at end of file diff --git a/docs/manuals/mcstas/optics/Vitess_ChopperFermi.tex b/docs/manuals/mcstas/optics/Vitess_ChopperFermi.tex new file mode 100644 index 000000000..36b646274 --- /dev/null +++ b/docs/manuals/mcstas/optics/Vitess_ChopperFermi.tex @@ -0,0 +1,97 @@ +\section{The \texttt{Vitess\_ChopperFermi} McStas Component} +Fermi chopper with absorbing walls using the VITESS module 'chopper\_fermi' + +\subsection*{Identification} +\begin{itemize} + \item \textbf{Site:} + \item \textbf{Author:} Geza Zsigmond + \item \textbf{Origin:} VITESS module 'chopper\_fermi' + \item \textbf{Date:} Sep 2004 +\end{itemize} + +\subsection*{Description} +\begin{lstlisting} +This component simulates a Fermi chopper with absorbing walls. The rotation axis is +vertical (y-axis), i.e. the path length through the channels is given by the length +'depth' along the z-axis. +The shape of the channels can be straight, curved with circular, or curved with ideal +(i.e. close to a parabolic) shape. This is determined by the parameter 'GeomOption'. + +Geometry for straight and circular channels: +The geometry of the chopper consists of a rectangular shaped object with a channel +system. In transmission position, there are 'Nchannels' slits along the x-axis, +separated by absorbing walls of thickness 'wallwidth' giving a total width 'width'. +The rectangular channel system is surrounded by a so-called shadowing cylinder +(cf component manual). + +Geometry for parabolic channels: +In this case, the Fermi chopper is supposed to be a full cylinder, i.e. the central +channels are longer than those on the edges (cf. figure in the component manual). +The other features are the same as for the other options. + +Apart from the frequency of rotation, the phase of the chopper at t=0 has to be given; +phase = 0 means transmission orientation. + +The option 'zerotime' may be used to reset the time at the chopper position. The +consequence is that only 1 pulse is generated instead of several. + +NOTE: This component must NOT be located at the same position as the previous one. +This also stands for monitors and Arms. A non zero distance must be defined. + +Examples: +straight Fermi chopper, 18000 rpm, 20 channels a 0.9 mm separated by 0.1 mm walls, +16 mm channel length, minimal shadowing cylinder, phased to be open at 1 ms, +generation of only 1 pulse, normal precision (for short wavelength neutrons) +Vitess_ChopperFermi(GeomOption=0, zerotime=1, Nchannels=20, Ngates=4, +freq=300.0, height=0.06, width=0.0201, +depth=0.016, r_curv=0.0, diameter=0.025691, Phase=-108.0, +wallwidth=0.0001, sGeomFileName="FC_geom_str.dat") + +Fermi chopper with circular channels, 12000 rpm, optimized for 6 Ang, several pulses, +highest accuracy (because of long wavelength neutrons used), rest as above +Vitess_ChopperFermi(GeomOption=2, zerotime=0, Nchannels=20, Ngates=8, +freq=200.0, height=0.06, width=0.0201, +depth=0.016, r_curv=0.2623, diameter=0.025691, Phase=-72.0, +wallwidth=0.0001, sGeomFileName="FC_geom_circ.dat") + +%VALIDATION +Apr 2005: extensive external test, most problems solved (cf. 'Bugs' and source header) +Validated by: K. Lieutenant + +limitations: slow (10 times slower than FermiChopper), especially for a high number of channels + +%BUGS +reduction of transmission by a large shadowing cylinder underestimated +\end{lstlisting} + +\subsection*{Input parameters} +Parameters in \textbf{boldface} are required; the others are optional. + +\begin{longtable}{p{0.22\textwidth}p{0.12\textwidth}p{0.46\textwidth}p{0.14\textwidth}} +\toprule +\textbf{Name} & \textbf{Unit} & \textbf{Description} & \textbf{Default} \\ +\midrule +\endhead +sGeomFileName & str & name of output file for geometry information & 0 \\ +GeomOption & 1 & option: 0:straight 1:parabolic 2:circular & 0 \\ +zerotime & 1 & option: 1:'set time to zero' 0: 'do not' & 0 \\ +Nchannels & 1 & number of channels of the Fermi chopper & 20 \\ +Ngates & 1 & number of gates defining the channel: 4=default, 6 or 8 for long wavelengths & 4 \\ +freq & Hz & number of rotations per second & 300.0 \\ +height & m & height of the Fermi chopper & 0.05 \\ +width & m & total width of the Fermi chopper & 0.04 \\ +depth & m & channel length of the Fermi chopper & 0.03 \\ +r\_curv & m & radius of curvature of the curved Fermi chopper & 0.5 \\ +diameter & m & diameter of the shadowing cylinder & 0.071 \\ +Phase & deg & dephasing angle at zero time & 0.0 \\ +wallwidth & m & thickness of walls separating the channels & 0.0002 \\ +\bottomrule +\end{longtable} + +\subsection*{Links} +\begin{itemize} + \item \href{run:/home/willend/willend-McCode/mcstas-comps/optics/Vitess_ChopperFermi.comp}{Source code} for \texttt{Vitess\_ChopperFermi.comp}. + \item \textless{}a href="http://www.hmi.de/projects/ess/vitess/DOC/chopper\_fermi\_str.html"\textgreater{}straight VITESS Fermi chopper\textless{}/a\textgreater{} + \item \textless{}a href="http://www.hmi.de/projects/ess/vitess/DOC/chopper\_fermi\_cur.html"\textgreater{}curved VITESS Fermi chopper\textless{}/a\textgreater{} +\end{itemize} +\IfFileExists{Vitess_ChopperFermi_static.tex}{\input{Vitess_ChopperFermi_static.tex}}{} \ No newline at end of file diff --git a/docs/manuals/mcstas/samples/Incoherent.tex b/docs/manuals/mcstas/samples/Incoherent.tex new file mode 100644 index 000000000..534839310 --- /dev/null +++ b/docs/manuals/mcstas/samples/Incoherent.tex @@ -0,0 +1,105 @@ +\section{The \texttt{Incoherent} McStas Component} +Incoherent sample (such as Vanadium) sample, with quasielastic component OR or global energy transfer. + +\subsection*{Identification} +\begin{itemize} + \item \textbf{Site:} + \item \textbf{Author:} Kim Lefmann and Kristian Nielsen + \item \textbf{Origin:} Risoe + \item \textbf{Date:} 15.4.98 +\end{itemize} + +\subsection*{Description} +\begin{lstlisting} +A Double-cylinder shaped incoherent scatterer (like Vanadium) +with both elastic and quasielastic (Lorentzian) components. +No multiple scattering (but approximation available). Absorption included. +Sample focusing: +The area to scatter to is a disk of radius 'focus_r' situated at the target. +This target area may also be rectangular if specified focus_xw and focus_yh +or focus_aw and focus_ah, respectively in meters and degrees. +The target itself is either situated according to given coordinates (x,y,z), +or defined with the relative target_index of the component to focus +to (next is +1). +This target position will be set to its AT position. When targeting to +centered components, such as spheres or cylinders, define an Arm component +where to focus to. +Sample shape: +Sample shape may be a cylinder, a sphere, a box or any other shape +box/plate: xwidth x yheight x zdepth (thickness=0) +hollow box/plate:xwidth x yheight x zdepth and thickness>0 +cylinder: radius x yheight (thickness=0) +hollow cylinder: radius x yheight and thickness>0 +sphere: radius (yheight=0 thickness=0) +hollow sphere: radius and thickness>0 (yheight=0) +any shape: geometry=OFF file + +The complex geometry option handles any closed non-convex polyhedra. +It computes the intersection points of the neutron ray with the object +transparently, so that it can be used like a regular sample object. +It supports the PLY, OFF and NOFF file format but not COFF (colored faces). +Such files may be generated from XYZ data using: +qhull < coordinates.xyz Qx Qv Tv o > geomview.off +or +powercrust coordinates.xyz +and viewed with geomview or java -jar jroff.jar (see below). +The default size of the object depends of the OFF file data, but its +bounding box may be resized using xwidth,yheight and zdepth. + +Example: Incoherent(radius=0.05,focus_r=0.035, pack=1, target_index=1) +Incoherent(geometry="socket.off",focus_r=0.035, pack=1, target_index=1) +\end{lstlisting} + +\subsection*{Input parameters} +Parameters in \textbf{boldface} are required; the others are optional. + +\begin{longtable}{p{0.22\textwidth}p{0.12\textwidth}p{0.46\textwidth}p{0.14\textwidth}} +\toprule +\textbf{Name} & \textbf{Unit} & \textbf{Description} & \textbf{Default} \\ +\midrule +\endhead +geometry & str & Name of an Object File Format (OFF) or PLY file for complex geometry. The OFF/PLY file may be generated from XYZ coordinates using qhull/powercrust & 0 \\ +radius & m & Outer radius of sample in (x,z) plane & 0 \\ +xwidth & m & Horiz. dimension of sample (bounding box if off file), as a width & 0 \\ +yheight & m & Vert. dimension of sample (bounding box if off file), as a height. A sphere shape is used when 0 and radius is set & 0 \\ +zdepth & m & Depth of sample (bounding box if off file) & 0 \\ +thickness & m & Thickness of hollow sample & 0 \\ +target\_x & & & 0 \\ +target\_y & m & position of target to focus at & 0 \\ +target\_z & & & 0 \\ +focus\_r & m & Radius of disk containing target. Use 0 for full space & 0 \\ +focus\_xw & m & horiz. dimension of a rectangular area & 0 \\ +focus\_yh & m & vert. dimension of a rectangular area & 0 \\ +focus\_aw & deg & horiz. angular dimension of a rectangular area & 0 \\ +focus\_ah & deg & vert. angular dimension of a rectangular area & 0 \\ +target\_index & 1 & Relative index of component to focus at, e.g. next is +1 & 0 \\ +pack & 1 & Packing factor & 1 \\ +p\_interact & 1 & MC Probability for scattering the ray; otherwise transmit & 1 \\ +f\_QE & 1 & Fraction of quasielastic scattering (rest is elastic) & 0 \\ +gamma & 1 & Lorentzian width of quasielastic broadening (HWHM) & 0 \\ +Etrans & meV & Global energy-transfer, for use in inelastic settings & 0 \\ +deltaE & meV & Width in energy around Etrans, for use in inelastic settings & 0 \\ +sigma\_abs & barns & Absorption cross section pr. unit cell at 2200 m/s & 5.08 \\ +sigma\_inc & barns & Incoherent scattering cross section pr. unit cell & 5.08 \\ +Vc & AA\textasciicircum{}3 & Unit cell volume & 13.827 \\ +concentric & 1 & Indicate that this component has a hollow geometry and may contain other components. It should then be duplicated after the inside part (only for box, cylinder, sphere) & 0 \\ +order & 1 & Limit multiple scattering up to given order 0 means all (default), 1 means single, 2 means double, ... & 0 \\ +\bottomrule +\end{longtable} + +\subsection*{Links} +\begin{itemize} + \item \href{run:/home/willend/willend-McCode/mcstas-comps/samples/Incoherent.comp}{Source code} for \texttt{Incoherent.comp}. + \item \textless{}a href="http://www.ncnr.nist.gov/resources/n-lengths/"\textgreater{}Cross sections for single elements\textless{}/a\textgreater{} + \item \textless{}a href="http://www.ncnr.nist.gov/resources/sldcalc.html\textgreater{}Cross sections for compounds\textless{}/a\textgreater{} + \item \textless{}a href="http://www.webelements.com/"\textgreater{}Web Elements\textless{}/a\textgreater{} + \item \textless{}A HREF="http://neutron.risoe.dk/mcstas/components/tests/Incoherent/"\textgreater{}Test + \item results\textless{}/A\textgreater{} (not up-to-date). + \item The test/example instrument \textless{}a href="../examples/vanadium\_example.instr"\textgreater{}vanadium\_example.instr\textless{}/a\textgreater{}. + \item The test/example instrument \textless{}a href="../examples/QENS\_test.instr"\textgreater{}QENS\_test.instr\textless{}/a\textgreater{}. + \item \textless{}a href="http://www.geomview.org"\textgreater{}Geomview and Object File Format (OFF)\textless{}/a\textgreater{} + \item Java version of Geomview (display only) \textless{}a href="http://www.holmes3d.net/graphics/roffview/"\textgreater{}jroff.jar\textless{}/a\textgreater{} + \item \textless{}a href="http://qhull.org"\textgreater{}qhull\textless{}/a\textgreater{} + \item \textless{}a href="http://www.cs.ucdavis.edu/\textasciitilde{}amenta/powercrust.html"\textgreater{}powercrust\textless{}/a\textgreater{} +\end{itemize} +\IfFileExists{Incoherent_static.tex}{\input{Incoherent_static.tex}}{} \ No newline at end of file diff --git a/docs/manuals/mcstas/samples/Isotropic_Sqw.tex b/docs/manuals/mcstas/samples/Isotropic_Sqw.tex new file mode 100644 index 000000000..82207461b --- /dev/null +++ b/docs/manuals/mcstas/samples/Isotropic_Sqw.tex @@ -0,0 +1,245 @@ +\section{The \texttt{Isotropic\_Sqw} McStas Component} +Isotropic sample handling multiple scattering and absorption for a general +S(q,w) (coherent and/or incoherent/self) + +\subsection*{Identification} +\begin{itemize} + \item \textbf{Site:} + \item \textbf{Author:} E. Farhi, V. Hugouvieux + \item \textbf{Origin:} ILL + \item \textbf{Date:} August 2003 +\end{itemize} + +\subsection*{Description} +\begin{lstlisting} +An isotropic sample handling multiple scattering and including as input the +dynamic structure factor of the chosen sample (e.g. from Molecular +Dynamics). Handles elastic/inelastic, coherent and incoherent scattering - +depending on the input S(q,w) - with multiple scattering and absorption. +Only the norm of q is handled (not the vector), and thus suitable for +liquids, gazes, amorphous and powder samples. + +If incoherent/self S(q,w) file is specified as empty (0 or "") then the +scattering is constant isotropic (Vanadium like). +In case you only have one S(q,w) data containing both coherent and +incoherent contributions you should e.g. use 'Sqw_coh' and set 'sigma_coh' +to the total scattering cross section. Set sigma_coh and sigma_inc to -1 to inactivate. + +The implementation will automatically nornalise S(q,w) so that S(q) -> 1 at +large q (parameter norm=-1). Alternatively, the S(q,w) data will be multiplied +by 'norm' for positive values. Use norm=0 or 1 to use the raw data as input. + +The material temperature can be defined in the S(q,w) data files (see below) +or set manually as parameter T. Setting T=-1 disables detailed balance. +Setting T=-2 attempts to guess the temperature from the input S(q,w) data +which must then be non-classical and extend on both energy sides (+/-). +To use the S(q,w) data as is, without temperature effect, set T=-1 and norm=1. + +Both non symmetric (quantum) and classical S(q,w) data sets can be given by mean +of the 'classical' parameter (see below). + +Additionally, for single order scattering (order=1), you may restrict the +vertical spreading of the scattering area using d_phi parameter. + +An important option to enhance statistics is to set 'p_interact' to, say, +30 percent (0.3) in order to force a fraction of the beam to scatter. This +will result on a larger number of scattered events, retaining intensity. + +If you use this component and produce valuable scientific results, please +cite authors with references bellow (in Links). +E. Farhi et al, J Comp Phys 228 (2009) 5251 + +Sample shape: +Sample shape may be a cylinder, a sphere, a box or any other shape +box/plate: xwidth x yheight x zdepth (thickness=0) +hollow box/plate:xwidth x yheight x zdepth and thickness>0 +cylinder: radius x yheight (thickness=0) +hollow cylinder: radius x yheight and thickness>0 +sphere: radius (yheight=0 thickness=0) +hollow sphere: radius and thickness>0 (yheight=0) +any shape: geometry=OFF file + +The complex geometry option handles any closed non-convex polyhedra. +It computes the intersection points of the neutron ray with the object +transparently, so that it can be used like a regular sample object. +It supports the OFF, PLY and NOFF file format but not COFF (colored faces). +Such files may be generated from XYZ data using: +qhull < coordinates.xyz Qx Qv Tv o > geomview.off +or +powercrust coordinates.xyz +and viewed with geomview or java -jar jroff.jar (see below). +The default size of the object depends of the OFF file data, but its +bounding box may be resized using xwidth,yheight and zdepth. + +Concentric components: +This component has the ability to contain other components when used in +hollow cylinder geometry (namely sample environment, e.g. cryostat and +furnace structure). Such component 'shells' should be split into input and +output side surrounding the 'inside' components. First part must then use +'concentric=1' flag to enter the inside part. The component itself must be +repeated to mark the end of the concentric zone. The number of concentric +shells and number of components inside is not limited. + +COMPONENT S_in = Isotropic_Sqw(Sqw_coh="Al.laz", concentric=1, ...) +AT (0,0,0) RELATIVE sample_position + +COMPONENT something_inside ... // e.g. the sample itself or other materials + +COMPONENT S_out = COPY(S_in)(concentric=0) +AT (0,0,0) RELATIVE sample_position + +Sqw file format: +File format for S(Q,w) (coherent and incoherent) should contain 3 numerical +blocks, defining q axis values (vector), then energy axis values (vector), +then a matrix with one line per q axis value, containing Sqw values for +each energy axis value. Comments (starting with '#') and non numerical lines +are ignored and used to separate blocks. Sampling must be regular. +Some parameters can be specified in comment lines, namely (00 is a numerical value): + +# sigma_abs 00 absorption scattering cross section in [barn] +# sigma_inc 00 coherent scattering cross section in [barn] +# sigma_coh 00 incoherent scattering cross section in [barn] +# Temperature 00 in [K] +# V_rho 00 atom density per Angs^3 +# density 00 in [g/cm^3] +# weight 00 in [g/mol] +# classical 00 [0=contains Bose factor (measurement) ; 1=classical symmetric] + +Example: +# q axis values +# vector of m values in Angstroem-1 +0.001000 .... 3.591000 +# w axis values +# vector of n values in meV +0.001391 ... 1.681391 +# sqw values (one line per q axis value) +# matrix of S(q,w) values (m rows x n values), one line per q value, +9.721422 10.599145 ... 0.000000 +10.054191 11.025244 ... 0.000000 +... +0.000000 ... 3.860253 + +See for instance file He4_liq_coh.sqw. Such files may be obtained from e.g. INX, +Nathan, Lamp and IDA softwares, as well as Molecular Dynamics (nMoldyn). +When the provided S(q,w) data is obtained from the classical correlation function +G(r,t), which is real and symmetric in time, the 'classical=1' parameter +should be set in order to multiply the file data with exp(hw/2kT). Otherwise, +the S(q,w) is NOT symmetrised (classical). If the S(q,w) data set includes both +negative and positive energy values, setting 'classical=-1' will attempt to +guess what type of S(q,w) it is. The temperature can also be determined this way. +In case you do not know if the data is classical or quantum, assume it is usually classical +at high temperatures, and quantum otherwise (T < typical mode excitations). +The positive energy values correspond to Stokes processes, i.e. material gains +energy, and neutrons loose energy. The energy range is symmetrized to allow up +and down scattering, taking into account detailed balance exp(-hw/2kT). + +You may also generate such S(q,w) 2D files using iFit + +Powder file format: +Files for coherent elastic powder scattering may also be used. +Format specification follows the same principle as in the PowderN +component, with parameters: + +powder_format= +Crystallographica: { 4,5,7,0,0,0,0, 0,0 } +Fullprof: { 4,0,8,0,0,5,0, 0,0 } +Undefined: { 0,0,0,0,0,0,0, 0,0 } +Lazy: {17,6,0,0,0,0,0,13,0 } +qSq: {-1,0,0,0,0,0,1, 0,0 } // special case for [q,Sq] table +or: {j,d,F2,DW,Delta_d/d,1/2d,q,F,strain} + +or column indexes (starting from 1) given as comments in the file header +(e.g. '#column_j 4'). Refer to the PowderN component for more details. +Delta_d/d and Debye-Waller factor may be specified for all lines with the +'powder_Dd' and 'powder_DW' parameters. +The reflection list should be ordered by decreasing d-spacing values. + +Additionally a special [q,Sq] format is also defined with: +powder_format=qSq +for which column 1 is 'q' and column 2 is 'S(q)'. + +Examples: +1- Vanadium-like incoherent elastic scattering +Isotropic_Sqw(radius=0.005, yheight=0.01, V_rho=1/13.827, +sigma_abs=5.08, sigma_inc=4.935, sigma_coh=0) + +2- liq-4He parameters +Isotropic_Sqw(..., Sqw_coh="He4_liq_coh.sqw", T=10, p_interact=0.3) + +3- powder sample +Isotropic_Sqw(..., Sqw_coh="Al.laz") + +%BUGS: +When used in concentric mode, multiple bouncing scattering +(traversing the hollow part) is not taken into account. + +%VALIDATION +For Vanadium incoherent scattering mode, V_sample, PowderN, Single_crystal +and Isotropic_Sqw produce equivalent results, eventhough the two later are +more accurate (geometry, multiple scattering). Isotropic_Sqw gives same +powder patterns as PowderN, with an intensity within 20 %. +\end{lstlisting} + +\subsection*{Input parameters} +Parameters in \textbf{boldface} are required; the others are optional. + +\begin{longtable}{p{0.22\textwidth}p{0.12\textwidth}p{0.46\textwidth}p{0.14\textwidth}} +\toprule +\textbf{Name} & \textbf{Unit} & \textbf{Description} & \textbf{Default} \\ +\midrule +\endhead +powder\_format & no quotes & name or definition of column indexes in file & \{0,0,0,0,0,0,0,0,0\} \\ +Sqw\_coh & str & Name of the file containing the values of Q, w and S(Q,w) Coherent part; Q in Angs-1, E in meV, S(q,w) in meV-1. Use 0, NULL or "" to disable. & 0 \\ +Sqw\_inc & str & Name of the file containing the values of Q, w and S(Q,w). Incoherent (self) part. Use 0, NULL or "" to scatter isotropically (V-like). & 0 \\ +geometry & str & Name of an Object File Format (OFF) or PLY file for complex geometry. The OFF/PLY file may be generated from XYZ coordinates using qhull/powercrust & 0 \\ +radius & m & Outer radius of sample in (x,z) plane. cylinder/sphere. & 0 \\ +thickness & m & Thickness of hollow sample Negative value extends the hollow volume outside of the box/cylinder. & 0 \\ +xwidth & m & width for a box sample shape & 0 \\ +yheight & m & Height of sample in vertical direction for box/cylinder shapes & 0 \\ +zdepth & m & depth for a box sample shape & 0 \\ +threshold & 1 & Value under which S(Q,w) is not accounted for. to set according to the S(Q,w) values, i.e. not too low. & 1e-20 \\ +order & 1 & Limit multiple scattering up to given order 0:all (default), 1:single, 2:double, ... & 0 \\ +T & K & Temperature of sample, detailed balance. Use T=-1 to disable it, and T=-2 to guess it from non-classical S(q,w) input. & 0 \\ +verbose & 1 & Verbosity level (0:silent, 1:normal, 2:verbose, 3:debug). A verbosity\textgreater{}1 also computes dispersions and S(q,w) analysis. & 1 \\ +d\_phi & deg & scattering vertical angular spreading (usually the height of the next component/detector). Use 0 for full space. This is only relevant for single scattering (order=1). & 0 \\ +concentric & 1 & Indicate that this component has a hollow geometry and may contain other components. It should then be duplicated after the inside part (only for box, cylinder, sphere) [1] & 0 \\ +rho & AA-3 & Density of scattering elements (nb atoms/unit cell V\_0). & 0 \\ +sigma\_abs & barns & Absorption cross-section at 2200 m/s. Use -1 to inactivate. & 0 \\ +sigma\_coh & barns & Coherent Scattering cross-section. Use -1 to inactivate. & 0 \\ +sigma\_inc & barns & Incoherent Scattering cross-section. Use -1 to inactivate. & 0 \\ +classical & 1 & Assumes the S(q,w) data from the files is a classical S(q,w), and multiply that data by exp(hw/2kT) on up/down energy sides. Use 0 when obtained from raw experiments, 1 from molecular dynamics. Use -1 to guess from a data set including both energy sides. & -1 \\ +powder\_Dd & 1 & global Delta\_d/d spreading, or 0 if ideal. & 0 \\ +powder\_DW & 1 & global Debey-Waller factor, if not in |F2| or 1. & 0 \\ +powder\_Vc & AA\textasciicircum{}3 & volume of the unit cell & 0 \\ +density & g/cm\textasciicircum{}3 & density of material. V\_rho=density/weight/1e24*N\_A & 0 \\ +weight & g/mol & atomic/molecular weight of material & 0 \\ +p\_interact & 1 & Force a given fraction of the beam to scatter, keeping intensity right, to enhance small signals (-1 inactivate). & -1 \\ +norm & 1 & Normalize S(q,w) when -1 (default). Use raw data when 1, multiplier for S(q,w) when norm\textgreater{}0. & -1 \\ +powder\_barns & 1 & 0 when |F2| data in powder file are fm\textasciicircum{}2, 1 when in barns (barns=1 for laz, barns=0 for lau type files). & 1 \\ +\bottomrule +\end{longtable} + +\subsection*{Links} +\begin{itemize} + \item \href{run:/home/willend/willend-McCode/mcstas-comps/samples/Isotropic_Sqw.comp}{Source code} for \texttt{Isotropic\_Sqw.comp}. + \item E. Farhi, V. Hugouvieux, M.R. Johnson, and W. Kob, Journal of Computational Physics 228 (2009) 5251-5261 "Virtual experiments: Combining realistic neutron scattering instrument and sample simulations" + \item Hugouvieux V, Farhi E, Johnson MR, Physica B, 350 (2004) 151 "Virtual neutron scattering experiments" + \item Hugouvieux V, PhD, University of Montpellier II, France (2004). + \item H. Schober, Collection SFN 10 (2010) 159-336 + \item H.E. Fischer, A.C. Barnes, and P.S. Salmon. Rep. Prog. Phys., 69 (2006) 233 + \item P.A. Egelstaff, An Introduction to the Liquid State, 2nd Ed., Oxford Science Pub., Clarendon Press (1992). + \item S. W. Lovesey, Theory of Neutron Scattering from Condensed Matter, Vol1, Oxford Science Pub., Clarendon Press (1984). + \item \textless{}a href="http://www.ncnr.nist.gov/resources/n-lengths/"\textgreater{}Cross sections for single elements\textless{}/a\textgreater{} + \item \textless{}a href="http://www.ncnr.nist.gov/resources/sldcalc.html\textgreater{}Cross sections for compounds\textless{}/a\textgreater{} + \item \textless{}a href="http://www.webelements.com/"\textgreater{}Web Elements\textless{}/a\textgreater{} + \item \textless{}a href="http://www.ill.eu/sites/fullprof/index.html"\textgreater{}Fullprof\textless{}/a\textgreater{} powder refinement + \item \textless{}a href="http://www.crystallographica.com/"\textgreater{}Crystallographica\textless{}/a\textgreater{} software + \item Example data file \textless{}a href="../data/He4\_liq\_coh.sqw"\textgreater{}He4\_liq\_coh.sqw\textless{}/a\textgreater{} + \item The \textless{}a href="PowderN.html"\textgreater{}PowderN\textless{}/a\textgreater{} component. + \item The test/example instrument \textless{}a href="../examples/Test\_Isotropic\_Sqw.instr"\textgreater{}Test\_Isotropic\_Sqw.instr\textless{}/a\textgreater{}. + \item \textless{}a href="http://www.geomview.org"\textgreater{}Geomview and Object File Format (OFF)\textless{}/a\textgreater{} + \item Java version of Geomview (display only) \textless{}a href="http://www.holmes3d.net/graphics/roffview/"\textgreater{}jroff.jar\textless{}/a\textgreater{} + \item \textless{}a href="http://qhull.org"\textgreater{}qhull\textless{}/a\textgreater{} + \item \textless{}a href="http://www.cs.ucdavis.edu/\textasciitilde{}amenta/powercrust.html"\textgreater{}powercrust\textless{}/a\textgreater{} +\end{itemize} +\IfFileExists{Isotropic_Sqw_static.tex}{\input{Isotropic_Sqw_static.tex}}{} \ No newline at end of file diff --git a/docs/manuals/mcstas/samples/Magnon_bcc.tex b/docs/manuals/mcstas/samples/Magnon_bcc.tex new file mode 100644 index 000000000..f5289885b --- /dev/null +++ b/docs/manuals/mcstas/samples/Magnon_bcc.tex @@ -0,0 +1,80 @@ +\section{The \texttt{Magnon\_bcc} McStas Component} +A sample for AFM or FM magnon scattering +based on cross section expressions from Squires, Ch.8.2 + +\subsection*{Identification} +\begin{itemize} + \item \textbf{Site:} + \item \textbf{Author:} Kim Lefmann + \item \textbf{Origin:} KU + \item \textbf{Date:} 23.10.08 - 24.07.18 +\end{itemize} + +\subsection*{Description} +\begin{lstlisting} +Single-cylinder shape. +Absorption included. +No multiple scattering. +No incoherent scattering emitted. +No attenuation from coherent scattering. No Bragg scattering. +bcc crystal n.n. and n.n.n. interactions only +Can do either FM or AFM order upon a flag +Assume J>0 for both FM and AFM. MUST BE CHANGED FOR CONSISTENCY +If AFM, the order is two-sublattice, e.g. the AFM Bragg ordering vectors are Q = (1 0 0) and equivalent. +One magnon branch only +Assume spin along z +Possible easy axis anisotropy along z +No external field + +KNOWN BUGS: +Gives zero scattering for too large J values (for AFM J=0.362, h approx 1). Probably this is a malfunction of zridd or call thereof +The value of the absolute scattered intensity is clearly too high. This is probably due to unit confusion. The relative intensity scaling seems about right. + +Algorithm: +0. Always perform the scattering if possible (otherwise ABSORB) +1. Choose direction within a focusing solid angle +2. Calculate the zeros of (E_i-E_f-hbar omega(kappa)) as a function of k_f +3. Choose one value of k_f (always at least one is possible!) +4. Perform the correct weight transformation +\end{lstlisting} + +\subsection*{Input parameters} +Parameters in \textbf{boldface} are required; the others are optional. + +\begin{longtable}{p{0.22\textwidth}p{0.12\textwidth}p{0.46\textwidth}p{0.14\textwidth}} +\toprule +\textbf{Name} & \textbf{Unit} & \textbf{Description} & \textbf{Default} \\ +\midrule +\endhead +\textbf{radius} & m & Outer radius of sample in (x,z) plane & \\ +\textbf{yheight} & m & Height of sample in y direction & \\ +\textbf{sigma\_abs} & barns & Absorption cross section at 2200 m/s per atom & \\ +\textbf{sigma\_inc} & barns & Incoherent scattering cross section per atom & \\ +\textbf{a} & AA & bcc Lattice constant & \\ +FM & 1 & Flag for whether the order if FM (0 means AFM) & 0 \\ +\textbf{J1} & meV & spin-spin interaction 1 (nn) & \\ +\textbf{J2} & meV & spin-spin interaction 2 (nnn) & \\ +\textbf{D} & mev & single ion anisotropy & \\ +\textbf{s} & 1 & spin & \\ +\textbf{DW} & 1 & Debye-Waller factor & \\ +\textbf{T} & K & Temperature & \\ +target\_x & m & position of target to focus at . Transverse coordinate & 0 \\ +target\_y & m & position of target to focus at. Vertical coordinate & 0 \\ +target\_z & m & position of target to focus at. Straight ahead. & 0 \\ +target\_index & 1 & relative index of component to focus at, e.g. next is +1 & 0 \\ +F2 & 1 & magnetic form factor squared & 1 \\ +focus\_r & m & Radius of sphere containing target. & 0 \\ +focus\_xw & m & horiz. dimension of a rectangular area & 0 \\ +focus\_yh & m & vert. dimension of a rectangular area & 0 \\ +focus\_aw & deg & horiz. angular dimension of a rectangular area & 0 \\ +focus\_ah & deg & vert. angular dimension of a rectangular area & 0 \\ +verbose & 1 & flag for test printing (print if verbose==1) & 0 \\ +\bottomrule +\end{longtable} + +\subsection*{Links} +\begin{itemize} + \item \href{run:/home/willend/willend-McCode/mcstas-comps/samples/Magnon_bcc.comp}{Source code} for \texttt{Magnon\_bcc.comp}. + \item The test/example instrument \textless{}a href="../examples/Test\_Magnon.instr"\textgreater{}Test\_Magnon.instr\textless{}/a\textgreater{}. +\end{itemize} +\IfFileExists{Magnon_bcc_static.tex}{\input{Magnon_bcc_static.tex}}{} \ No newline at end of file diff --git a/docs/manuals/mcstas/samples/NCrystal_sample.tex b/docs/manuals/mcstas/samples/NCrystal_sample.tex new file mode 100644 index 000000000..0ea4838c6 --- /dev/null +++ b/docs/manuals/mcstas/samples/NCrystal_sample.tex @@ -0,0 +1,57 @@ +\section{The \texttt{NCrystal\_sample} McStas Component} +McStas sample component for the NCrystal library for thermal neutron transport +(\textless{}a href="https://github.com/mctools/ncrystal"\textgreater{}www\textless{}/a\textgreater{}). + +\subsection*{Identification} +\begin{itemize} + \item \textbf{Site:} + \item \textbf{Author:} NCrystal developers + \item \textbf{Origin:} NCrystal Developers (European Spallation Source ERIC and DTU Nutech) + \item \textbf{Date:} 2015 +\end{itemize} + +\subsection*{Description} +\begin{lstlisting} +McStas sample component using the NCrystal library for thermal neutron +transport in a single bulk material filling a single simple convex volume +(box, sphere or cylinder). + +The geometrical layout of the volume is determined via the xwidth, yheight, +zdepth, and radius parameters, and the material being modelled is determined +via an NCrystal configuration string ("cfg-string"). + +For more information about NCrystal and cfg-strings, refer to the NCrystal wiki. +In particular, browse the available datafiles at Data-library and read about the +format of the cfg-string expected in the "cfg" parameter at Using-NCrystal. + +For more complicated geometries, it might be desirable to use NCrystal via the +McStas Union components instead. + +Note that the physics backend of this component will be whichever NCrystal +installation is available and associated with the "ncrystal-config" command. +\end{lstlisting} + +\subsection*{Input parameters} +Parameters in \textbf{boldface} are required; the others are optional. + +\begin{longtable}{p{0.22\textwidth}p{0.12\textwidth}p{0.46\textwidth}p{0.14\textwidth}} +\toprule +\textbf{Name} & \textbf{Unit} & \textbf{Description} & \textbf{Default} \\ +\midrule +\endhead +cfg & str & NCrystal material configuration string (details \textless{}a href="https://github.com/mctools/ncrystal/wiki/Using-NCrystal"\textgreater{}on this page\textless{}/a\textgreater{}). & "void" \\ +xwidth & m & x-dimension (width) of sample, if box shape is desired & 0 \\ +yheight & m & y-dimension (height) of sample, if box or cylinder shape is desired & 0 \\ +zdepth & m & z-dimension (depth) of sample, if box shape is desired & 0 \\ +radius & m & radius of sample, if sphere or cylinder shape is desired & 0 \\ +absorptionmode & 0|1|2 & 0 : disable absorption. 1 : enable absorption via intensity reduction. 2 : enable absorption by terminating the tracking. & 1 \\ +multscat & 0|1 & 0 : disable multiple scattering. 1 : enable multiple scattering & 1 \\ +\bottomrule +\end{longtable} + +\subsection*{Links} +\begin{itemize} + \item \href{run:/home/willend/willend-McCode/mcstas-comps/samples/NCrystal_sample.comp}{Source code} for \texttt{NCrystal\_sample.comp}. + \item The NCrystal wiki at \textless{}a href="https://github.com/mctools/ncrystal/wiki"\textgreater{}https://github.com/mctools/ncrystal/wiki\textless{}/a\textgreater{}. +\end{itemize} +\IfFileExists{NCrystal_sample_static.tex}{\input{NCrystal_sample_static.tex}}{} \ No newline at end of file diff --git a/docs/manuals/mcstas/samples/Phonon_simple.tex b/docs/manuals/mcstas/samples/Phonon_simple.tex new file mode 100644 index 000000000..f29808d2c --- /dev/null +++ b/docs/manuals/mcstas/samples/Phonon_simple.tex @@ -0,0 +1,70 @@ +\section{The \texttt{Phonon\_simple} McStas Component} +A sample for phonon scattering based on cross section expressions from Squires, Ch.3. +Possibility for adding an (unphysical) bandgap. + +\subsection*{Identification} +\begin{itemize} + \item \textbf{Site:} + \item \textbf{Author:} Kim Lefmann + \item \textbf{Origin:} Risoe + \item \textbf{Date:} 04.02.04 +\end{itemize} + +\subsection*{Description} +\begin{lstlisting} +Single-cylinder shape. +Absorption included. +No multiple scattering. +No incoherent scattering emitted. +No attenuation from coherent scattering. No Bragg scattering. +fcc crystal n.n. interactions only +One phonon branch only -> phonon polarization not accounted for. +Bravais lattice only. (i.e. just one atom per unit cell) + +Algorithm: +0. Always perform the scattering if possible (otherwise ABSORB) +1. Choose direction within a focusing solid angle +2. Calculate the zeros of (E_i-E_f-hbar omega(kappa)) as a function of k_f +3. Choose one value of k_f (always at least one is possible!) +4. Perform the correct weight transformation +\end{lstlisting} + +\subsection*{Input parameters} +Parameters in \textbf{boldface} are required; the others are optional. + +\begin{longtable}{p{0.22\textwidth}p{0.12\textwidth}p{0.46\textwidth}p{0.14\textwidth}} +\toprule +\textbf{Name} & \textbf{Unit} & \textbf{Description} & \textbf{Default} \\ +\midrule +\endhead +\textbf{radius} & m & Outer radius of sample in (x,z) plane & \\ +\textbf{yheight} & m & Height of sample in y direction & \\ +\textbf{sigma\_abs} & barns & Absorption cross section at 2200 m/s per atom & \\ +\textbf{sigma\_inc} & barns & Incoherent scattering cross section per atom & \\ +\textbf{a} & AA & fcc Lattice constant & \\ +\textbf{b} & fm & Scattering length & \\ +\textbf{M} & a.u. & Atomic mass & \\ +\textbf{c} & meV/AA\textasciicircum{}(-1) & Velocity of sound & \\ +\textbf{DW} & 1 & Debye-Waller factor & \\ +\textbf{T} & K & Temperature & \\ +target\_x & m & position of target to focus at . Transverse coordinate & 0 \\ +target\_y & m & position of target to focus at. Vertical coordinate & 0 \\ +target\_z & m & position of target to focus at. Straight ahead. & 0 \\ +target\_index & 1 & relative index of component to focus at, e.g. next is +1 & 0 \\ +focus\_r & m & Radius of sphere containing target. & 0 \\ +focus\_xw & m & horiz. dimension of a rectangular area & 0 \\ +focus\_yh & m & vert. dimension of a rectangular area & 0 \\ +focus\_aw & deg & horiz. angular dimension of a rectangular area & 0 \\ +focus\_ah & deg & vert. angular dimension of a rectangular area & 0 \\ +gap & meV & Bandgap energy (unphysical) & 0 \\ +e\_steps\_low & 1 & Amount of possible intersections beneath the elastic line & 50 \\ +e\_steps\_high & 1 & Amount of possible intersections above the elastic line & 50 \\ +\bottomrule +\end{longtable} + +\subsection*{Links} +\begin{itemize} + \item \href{run:/home/willend/willend-McCode/mcstas-comps/samples/Phonon_simple.comp}{Source code} for \texttt{Phonon\_simple.comp}. + \item The test/example instrument \textless{}a href="../examples/Test\_Phonon.instr"\textgreater{}Test\_Phonon.instr\textless{}/a\textgreater{}. +\end{itemize} +\IfFileExists{Phonon_simple_static.tex}{\input{Phonon_simple_static.tex}}{} \ No newline at end of file diff --git a/docs/manuals/mcstas/samples/Powder1.tex b/docs/manuals/mcstas/samples/Powder1.tex new file mode 100644 index 000000000..5085e8897 --- /dev/null +++ b/docs/manuals/mcstas/samples/Powder1.tex @@ -0,0 +1,57 @@ +\section{The \texttt{Powder1} McStas Component} +General powder sample with a single scattering vector. + +\subsection*{Identification} +\begin{itemize} + \item \textbf{Site:} + \item \textbf{Author:} E.M.Lauridsen, N.B.Christensen, A.B.Abrahamsen + \item \textbf{Origin:} Risoe + \item \textbf{Date:} 4.2.98 +\end{itemize} + +\subsection*{Description} +\begin{lstlisting} +General powder sample with a single scattering vector. No multiple , +scattering, no incoherent scattering, no secondary extinction. +The shape of the sample may be a cylinder of given radius or a box with +dimensions xwidth, yheight, zdepth. +The efficient is highly improved when restricting the vertical scattering +range on the Debye-Scherrer cone (with 'd_phi'). +You may use PowderN to use N scattering lines defined in a file. + +Example: Powder1(radius=0.015,yheight=0.05,q =1.8049,d_phi=0.07,pack=1, +j=6,DW=1,F2=56.8,Vc=85.0054,sigma_abs=0.463) +\end{lstlisting} + +\subsection*{Input parameters} +Parameters in \textbf{boldface} are required; the others are optional. + +\begin{longtable}{p{0.22\textwidth}p{0.12\textwidth}p{0.46\textwidth}p{0.14\textwidth}} +\toprule +\textbf{Name} & \textbf{Unit} & \textbf{Description} & \textbf{Default} \\ +\midrule +\endhead +radius & m & Radius of sample in (x,z) plane & 0.01 \\ +yheight & m & Height of sample y direction & 0.05 \\ +xwidth & m & horiz. dimension of sample, as a width & 0 \\ +zdepth & m & depth of box sample & 0 \\ +q & AA\textasciicircum{}-1 & Scattering vector of reflection & 1.8049 \\ +d & AA & d-spacing for sample, overrides 'q' & 0 \\ +d\_phi & deg,0-180 & Angle corresponding to the vertical angular range to focus to, e.g. detector height. 0 for no focusing & 0 \\ +pack & 1 & Packing factor & 1 \\ +j & 1 & Multiplicity of reflection & 6 \\ +DW & 1 & Debye-Waller factor of reflection & 1 \\ +F2 & barns & Structure factor of reflection & 56.8 \\ +Vc & AA\textasciicircum{}3 & Volume of unit cell & 85.0054 \\ +sigma\_abs & barns & Absorption cross section per unit cell at 2200 m/s & 0.463 \\ +\bottomrule +\end{longtable} + +\subsection*{Links} +\begin{itemize} + \item \href{run:/home/willend/willend-McCode/mcstas-comps/samples/Powder1.comp}{Source code} for \texttt{Powder1.comp}. + \item \textless{}A HREF="http://neutron.risoe.dk/mcstas/components/tests/powder/"\textgreater{} + \item Test results\textless{}/A\textgreater{} (not up-to-date). + \item See also: Powder1, Powder2 and PowderN +\end{itemize} +\IfFileExists{Powder1_static.tex}{\input{Powder1_static.tex}}{} \ No newline at end of file diff --git a/docs/manuals/mcstas/samples/PowderN.tex b/docs/manuals/mcstas/samples/PowderN.tex new file mode 100644 index 000000000..f92d73f1b --- /dev/null +++ b/docs/manuals/mcstas/samples/PowderN.tex @@ -0,0 +1,183 @@ +\section{The \texttt{PowderN} McStas Component} +General powder sample (N lines, single scattering, incoherent scattering) + +\subsection*{Identification} +\begin{itemize} + \item \textbf{Site:} + \item \textbf{Author:} P. Willendrup, L. Chapon, K. Lefmann, A.B.Abrahamsen, N.B.Christensen, E.M.Lauridsen. + \item \textbf{Origin:} McStas release + \item \textbf{Date:} 4.2.98 +\end{itemize} + +\subsection*{Description} +\begin{lstlisting} +General powder sample with +many scattering vectors +possibility for intrinsic line broadening +incoherent elastic background ratio is specified by user +No multiple scattering. No secondary extinction. + +Based on Powder1/Powder2/Single_crystal. +Geometry is a powder filled cylinder, sphere, box or any shape from an OFF file. +Incoherent scattering is only provided here to account for a background. +The efficient is highly improved when restricting the vertical scattering +range on the Debye-Scherrer cone (with 'd_phi' and 'focus_flip'). +The unit cell volume Vc may also be computed when giving the density, +the atomic/molecular weight and the number of atoms per unit cell. +A simple strain handling is available by mean of either a global Strain parameter, +or a column with a strain value per Bragg reflection. The strain values are +specified in ppm (1e-6). +The Single_crystal component can also handle a powder mode, as well as an +approximated texture. + +Sample shape: +Sample shape may be a cylinder, a sphere, a box or any other shape. +box/plate: xwidth x yheight x zdepth (thickness=0) +hollow box/plate:xwidth x yheight x zdepth and thickness>0 +cylinder: radius x yheight (thickness=0) +hollow cylinder: radius x yheight and thickness>0 +sphere: radius (yheight=0 thickness=0) +hollow sphere: radius and thickness>0 (yheight=0) +any shape: geometry=OFF_file + +The complex geometry option handles any closed non-convex polyhedra. +It computes the intersection points of the neutron ray with the object +transparently, so that it can be used like a regular sample object. +It supports the PLY, OFF and NOFF file format but not COFF (colored faces). +Such files may be generated from XYZ data using: +qhull < coordinates.xyz Qx Qv Tv o > geomview.off +or +powercrust coordinates.xyz +and viewed with geomview or java -jar jroff.jar (see below). +The default size of the object depends of the OFF file data, but its +bounding box may be resized using xwidth,yheight and zdepth. + +If you use this component and produce valuable scientific results, please +cite authors with references bellow (in Links). + +Example: PowderN(reflections = "c60.lau", d_phi = 15 , radius = 0.01, +yheight = 0.05, Vc = 1076.89, sigma_abs = 0, delta_d_d=0, DW=1)) + +Powder definition file format +Powder structure is specified with an ascii data file 'reflections'. +The powder data are free-text column based files. +The reflection list should be ordered by decreasing d-spacing values. +... d ... F2 +Lines begining by '#' are read as comments (ignored) but they may contain +the following keywords (in the header): +#Vc +#sigma_abs +#sigma_inc +#Debye_Waller +#delta_d_d/d +These values are not read if entered as component parameters (Vc=...) + +The signification of the columns in the numerical block may be +set using the 'format' parameter, by defining signification of the +columns as a vector of indexes in the order +format={j,d,F2,DW,delta_d_d/d,1/2d,q,F,Strain} + +Signification of the symbols is given below. Indices start at 1. +Indices with zero means that the column are not present, so that: +Crystallographica={ 4,5,7,0,0,0,0,0,0 } +Fullprof ={ 4,0,8,0,0,5,0,0,0 } +Lazy ={17,6,0,0,0,0,0,13,0} + +At last, the format may be overridden by direct definition of the +column indexes in the file itself by using the following keywords +in the header (e.g. '#column_j 4'): +#column_j +#column_d +#column_F2 +#column_F +#column_DW +#column_Dd +#column_inv2d +#column_q +#column_strain + +Last, CIF, FullProf and ShelX files can be read, and converted to F2(hkl) lists +if 'cif2hkl' is installed. The CIF2HKL env variable can be used to point to a +proper executable, else the McCode, then the system installed versions are used. + +Concentricity + +PowderN assumes 'concentric' shape, i.e. can contain other components inside its +optional inner hollow. Example, Sample in Al cryostat: + + +COMPONENT Cryo = PowderN(reflections="Al.laz", radius = 0.01, thickness = 0.001, +concentric = 1, p_interact=0.1) +AT (0,0,0) RELATIVE Somewhere + +COMPONENT Sample = some_other_component(with geometry FULLY enclosed in the hollow) +AT (0,0,0) RELATIVE Somewhere + +COMPONENT Cryo2 = COPY(Cryo)(concentric = 0) +AT (0,0,0) RELATIVE Somewhere + + +(The second instance of the cryostat component can also be written out completely +using PowderN(...). In both cases, this second instance needs concentric = 0.) +The concentric arrangment can not be used with OFF geometry specification. + +This sample component can advantageously benefit from the SPLIT feature, e.g. +SPLIT COMPONENT pow = PowderN(...) +\end{lstlisting} + +\subsection*{Input parameters} +Parameters in \textbf{boldface} are required; the others are optional. + +\begin{longtable}{p{0.22\textwidth}p{0.12\textwidth}p{0.46\textwidth}p{0.14\textwidth}} +\toprule +\textbf{Name} & \textbf{Unit} & \textbf{Description} & \textbf{Default} \\ +\midrule +\endhead +reflections & string & Input file for reflections (LAZ LAU CIF, FullProf, ShelX). Use only incoherent scattering if NULL or "" & "NULL" \\ +geometry & str & Name of an Object File Format (OFF) or PLY file for complex geometry. The OFF/PLY file may be generated from XYZ coordinates using qhull/powercrust. & "NULL" \\ +format & no quotes & Name of the format, or list of column indexes (see Description). & \{0, 0, 0, 0, 0, 0, 0, 0, 0\} \\ +radius & m & Outer radius of sample in (x,z) plane & 0 \\ +yheight & m & Height of sample y direction & 0 \\ +xwidth & m & Horiz. dimension of sample, as a width & 0 \\ +zdepth & m & Depth of box sample & 0 \\ +thickness & m & Thickness of hollow sample. Negative value extends the hollow volume outside of the box/cylinder. & 0 \\ +pack & 1 & Packing factor. & 1 \\ +Vc & AA\textasciicircum{}3 & Volume of unit cell=nb atoms per cell/density of atoms. & 0 \\ +sigma\_abs & barns & Absorption cross section per unit cell at 2200 m/s. Use a negative value to inactivate it. & 0 \\ +sigma\_inc & barns & Incoherent cross section per unit cell. Use a negative value to inactivate it. & 0 \\ +delta\_d\_d & 0/1 & Global relative delta\_d\_d/d broadening when the 'w' column is not available. Use 0 if ideal. & 0 \\ +p\_inc & 1 & Fraction of incoherently scattered neutron rays. & 0.1 \\ +p\_transmit & 1 & Fraction of transmitted (only attenuated) neutron rays. & 0.1 \\ +DW & 1 & Global Debye-Waller factor when the 'DW' column is not available. Use 1 if included in F2 & 0 \\ +nb\_atoms & 1 & Number of sub-unit per unit cell, that is ratio of sigma for chemical formula to sigma per unit cell & 1 \\ +d\_omega & deg & Horizontal focus range (only for incoherent scattering), 0 for no focusing. & 0 \\ +d\_phi & deg & Angle corresponding to the vertical angular range to focus to, e.g. detector height. 0 for no focusing. & 0 \\ +tth\_sign & 1 & Sign of the scattering angle. If 0, the sign is chosen randomly (left and right). ONLY functional in combination with d\_phi and ONLY applies to bragg lines. & 0 \\ +p\_interact & 1 & Fraction of events interacting coherently with sample. & 0.8 \\ +concentric & 1 & Indicate that this component has a hollow geometry and may contain other components. It should then be duplicated after the inside part (only for box, cylinder, sphere). & 0 \\ +density & g/cm\textasciicircum{}3 & Density of material. rho=density/weight/1e24*N\_A. & 0 \\ +weight & g/mol & Atomic/molecular weight of material. & 0 \\ +barns & 1 & Flag to indicate if |F|\textasciicircum{}2 from 'reflections' is in barns or fm\textasciicircum{}2 (barns=1 for laz, barns=0 for lau type files). & 1 \\ +Strain & ppm & Global relative delta\_d\_d/d shift when the 'Strain' column is not available. Use 0 if ideal. & 0 \\ +focus\_flip & 1 & Controls the sense of d\_phi. If 0 d\_phi is measured against the xz-plane. If !=0 d\_phi is measured against zy-plane. & 0 \\ +target\_index & 1 & Relative index of component to focus incoherent scattering at, e.g. next is +1 & 0 \\ +\bottomrule +\end{longtable} + +\subsection*{Links} +\begin{itemize} + \item \href{run:/home/willend/willend-McCode/mcstas-comps/samples/PowderN.comp}{Source code} for \texttt{PowderN.comp}. + \item "Validation of a realistic powder sample using data from DMC at PSI" Willendrup P, Filges U, Keller L, Farhi E, Lefmann K, Physica B-Cond Matt 385 (2006) 1032. + \item See also: Powder1, Single\_crystal + \item See \textless{}a href="http://icsd.ill.fr"\textgreater{}ICSD\textless{}/a\textgreater{} Inorganic Crystal Structure Database + \item \textless{}a href="http://www.ncnr.nist.gov/resources/n-lengths/"\textgreater{}Cross sections for single elements\textless{}/a\textgreater{} + \item \textless{}a href="http://www.ncnr.nist.gov/resources/sldcalc.html\textgreater{}Cross sections for compounds\textless{}/a\textgreater{} + \item \textless{}a href="http://www.webelements.com/"\textgreater{}Web Elements\textless{}/a\textgreater{} + \item \textless{}a href="http://www.ill.eu/sites/fullprof/index.html"\textgreater{}Fullprof\textless{}/a\textgreater{} powder refinement + \item \textless{}a href="http://www.crystallographica.com/"\textgreater{}Crystallographica\textless{}/a\textgreater{} software (free license) + \item \textless{}a href="http://www.geomview.org"\textgreater{}Geomview and Object File Format (OFF)\textless{}/a\textgreater{} + \item Java version of Geomview (display only) \textless{}a href="http://www.holmes3d.net/graphics/roffview/"\textgreater{}jroff.jar\textless{}/a\textgreater{} + \item \textless{}a href="http://qhull.org"\textgreater{}qhull\textless{}/a\textgreater{} + \item \textless{}a href="http://www.cs.ucdavis.edu/\textasciitilde{}amenta/powercrust.html"\textgreater{}powercrust\textless{}/a\textgreater{} +\end{itemize} +\IfFileExists{PowderN_static.tex}{\input{PowderN_static.tex}}{} \ No newline at end of file diff --git a/docs/manuals/mcstas/samples/Res_sample.tex b/docs/manuals/mcstas/samples/Res_sample.tex new file mode 100644 index 000000000..3d3c7c9fc --- /dev/null +++ b/docs/manuals/mcstas/samples/Res_sample.tex @@ -0,0 +1,66 @@ +\section{The \texttt{Res\_sample} McStas Component} +Sample for resolution function calculation. + +\subsection*{Identification} +\begin{itemize} + \item \textbf{Site:} + \item \textbf{Author:} Kristian Nielsen + \item \textbf{Origin:} Risoe + \item \textbf{Date:} 1999 +\end{itemize} + +\subsection*{Description} +\begin{lstlisting} +An inelastic sample with completely uniform scattering in both Q and +energy. This sample is used together with the Res_monitor component and +(optionally) the mcresplot front-end to compute the resolution function of +triple-axis or inverse-geometry time-of-flight instruments. + +The shape of the sample is either a hollow cylinder or a rectangular box. The +hollow cylinder shape is specified with an inner and outer radius. +The box is specified with dimensions xwidth, yheight, zdepth. + +The scattered neutrons will have directions towards a given disk and +energies betweed E0-dE and E0+dE. +This target area may also be rectangular if specified focus_xw and focus_yh +or focus_aw and focus_ah, respectively in meters and degrees. +The target itself is either situated according to given coordinates (x,y,z), or +setting the relative target_index of the component to focus at (next is +1). +This target position will be set to its AT position. When targeting to centered +components, such as spheres or cylinders, define an Arm component where to focus at. + +Example: Res_sample(thickness=0.001,radius=0.02,yheight=0.4,focus_r=0.05, E0=14.6,dE=2, target_x=0, target_y=0, target_z=1) +\end{lstlisting} + +\subsection*{Input parameters} +Parameters in \textbf{boldface} are required; the others are optional. + +\begin{longtable}{p{0.22\textwidth}p{0.12\textwidth}p{0.46\textwidth}p{0.14\textwidth}} +\toprule +\textbf{Name} & \textbf{Unit} & \textbf{Description} & \textbf{Default} \\ +\midrule +\endhead +thickness & m & Thickness of hollow cylinder in (x,z) plane & 0 \\ +radius & m & Outer radius of hollow cylinder & 0.01 \\ +focus\_r & m & Radius of sphere containing target. & 0.05 \\ +E0 & meV & Center of scattered energy range & 14 \\ +dE & meV & half width of scattered energy range & 2 \\ +target\_x & m & X-position of target to focus at [m] & 0 \\ +target\_y & m & Y-position of target to focus at & 0 \\ +target\_z & m & Z-position of target to focus at [m] & .5 \\ +focus\_xw & m & horiz. dimension of a rectangular area & 0 \\ +focus\_yh & m & vert. dimension of a rectangular area & 0 \\ +focus\_aw & deg & horiz. angular dimension of a rectangular area & 0 \\ +focus\_ah & deg & vert. angular dimension of a rectangular area & 0 \\ +xwidth & m & horiz. dimension of sample, as a width & 0 \\ +yheight & m & vert. dimension of sample, as a height & 0.05 \\ +zdepth & m & depth of sample & 0 \\ +target\_index & 1 & relative index of component to focus at, e.g. next is +1 & 0 \\ +\bottomrule +\end{longtable} + +\subsection*{Links} +\begin{itemize} + \item \href{run:/home/willend/willend-McCode/mcstas-comps/samples/Res_sample.comp}{Source code} for \texttt{Res\_sample.comp}. +\end{itemize} +\IfFileExists{Res_sample_static.tex}{\input{Res_sample_static.tex}}{} \ No newline at end of file diff --git a/docs/manuals/mcstas/samples/SANS_spheres2.tex b/docs/manuals/mcstas/samples/SANS_spheres2.tex new file mode 100644 index 000000000..59ebf6726 --- /dev/null +++ b/docs/manuals/mcstas/samples/SANS_spheres2.tex @@ -0,0 +1,56 @@ +\section{The \texttt{SANS\_spheres2} McStas Component} +Sample for Small Angle Neutron Scattering - hard spheres in thin solution, mono disperse. + +\subsection*{Identification} +\begin{itemize} + \item \textbf{Site:} + \item \textbf{Author:} P. Willendrup, derived from H. Frielinghaus SANS\_benchmark2 + \item \textbf{Origin:} DTU + \item \textbf{Date:} 16.12.2019 +\end{itemize} + +\subsection*{Description} +\begin{lstlisting} +Sample for Small Angle Neutron Scattering - hard spheres in thin solution, mono disperse. + +For the scattering simulation a high fraction of neutron paths is directed to the scattering (exact fraction is sc_aim). +The remaining paths are used for the transmitted beams. The absolute intensities are treated accordingly, and the p-parameter is set accordingly. + +For the scattering probability, the integral of the scattering function between Q = 0.0001 and 1.0 AA-1 is calculated. +This is used in terms of transmisson, and of course for the scattering probability. +In this way, multiple scattering processes could be treated as well. + +The typical SANS range was considered to be between 0.0001 and 1.0 AA-1. +This means that the scattered neutrons are equally distributed in this range on logarithmic Q-scales. + +Example: SANS_spheres2(xwidth=0.01, yheight=0.01, zthick=0.001, model=1.0, dsdw_inc=0.02, sc_aim=0.97, sans_aim=0.95, R-150) +\end{lstlisting} + +\subsection*{Input parameters} +Parameters in \textbf{boldface} are required; the others are optional. + +\begin{longtable}{p{0.22\textwidth}p{0.12\textwidth}p{0.46\textwidth}p{0.14\textwidth}} +\toprule +\textbf{Name} & \textbf{Unit} & \textbf{Description} & \textbf{Default} \\ +\midrule +\endhead +xwidth & m & Width of sample volume & 0.01 \\ +yheight & m & Height of sample volume & 0.01 \\ +zthick & m & Thickness of sample volume & 0.001 \\ +dsdw\_inc & cm\textasciicircum{}-1 & The incoherent background from the overall sample, should read ca. 1.0 for water, 0.5 for half D2O, half H2O, and ca. 0.02 for D2O & 0.02 \\ +sc\_aim & 1 & The fraction of neutron paths used to represent the scattered neutrons (including everything: incoherent and coherent). rest is transmission. & 0.97 \\ +sans\_aim & 1 & The fraction of neutron paths used to represent the scattered neutrons in the sans-range (up to 1.0AA-1). rest is incoherent with Q\textgreater{}1AA-1. & 0.95 \\ +R & AA & Radius of dilute, monodisperse spheres & 150 \\ +phi & 1 & Volume-ratio of the spheres wrt. solution & 1e-3 \\ +drho & cm\textasciicircum{}-2 & Scattering length density & 6e10 \\ +singlesp & 1 & Switches between multiple scattering (parameter zero 0.0) and single scattering (parameter 1.0). The sc\_aim directs a fraction of paths to the first scattering process accordingly. The no. of paths for the second scattering process is derived from the real probability. Up to 10 scattering processes are considered. & 1 \\ +Qmind & AA\textasciicircum{}-1 & Lower limit of "SANS" scattering & 0.0001 \\ +Qmaxd & AA\textasciicircum{}-1 & Upper limit of "SANS" scattering & 2.1544346900319 \\ +\bottomrule +\end{longtable} + +\subsection*{Links} +\begin{itemize} + \item \href{run:/home/willend/willend-McCode/mcstas-comps/samples/SANS_spheres2.comp}{Source code} for \texttt{SANS\_spheres2.comp}. +\end{itemize} +\IfFileExists{SANS_spheres2_static.tex}{\input{SANS_spheres2_static.tex}}{} \ No newline at end of file diff --git a/docs/manuals/mcstas/samples/Sans_spheres.tex b/docs/manuals/mcstas/samples/Sans_spheres.tex new file mode 100644 index 000000000..778e553cd --- /dev/null +++ b/docs/manuals/mcstas/samples/Sans_spheres.tex @@ -0,0 +1,55 @@ +\section{The \texttt{Sans\_spheres} McStas Component} +Sample for Small Angle Neutron Scattering - hard spheres in thin solution, mono disperse. + +\subsection*{Identification} +\begin{itemize} + \item \textbf{Site:} + \item \textbf{Author:} P. Willendrup, K. Lefmann, L. Arleth + \item \textbf{Origin:} Risoe + \item \textbf{Date:} 19.12.2003 +\end{itemize} + +\subsection*{Description} +\begin{lstlisting} +Sample for use in a SANS instrument, models hard, mono disperse spheres in thin solution. +The shape of the sample may be a filled box with dimensions +xwidth, yheight, zdepth, a cylinder with dimensions radius and yheight, +a filled sphere with radius. + +Example: Sans_spheres(R = 100, Phi = 1e-3, Delta_rho = 0.6, sigma_abs = 50, xwidth=0.01, yheight=0.01, zdepth=0.005) +\end{lstlisting} + +\subsection*{Input parameters} +Parameters in \textbf{boldface} are required; the others are optional. + +\begin{longtable}{p{0.22\textwidth}p{0.12\textwidth}p{0.46\textwidth}p{0.14\textwidth}} +\toprule +\textbf{Name} & \textbf{Unit} & \textbf{Description} & \textbf{Default} \\ +\midrule +\endhead +R & AA & Radius of scattering hard spheres & 100 \\ +Phi & 1 & Particle volume fraction & 1e-3 \\ +Delta\_rho & fm/AA\textasciicircum{}3 & Excess scattering length density & 0.6 \\ +sigma\_abs & m\textasciicircum{}-1 & Absorption cross section density at 2200 m/s & 0.05 \\ +xwidth & m & horiz. dimension of sample, as a width & 0 \\ +yheight & m & vert . dimension of sample, as a height for cylinder/box & 0 \\ +zdepth & m & depth of sample & 0 \\ +radius & m & Outer radius of sample in (x,z) plane for cylinder/sphere & 0 \\ +target\_x & m & & 0 \\ +target\_y & m & position of target to focus at & 0 \\ +target\_z & m & & 6 \\ +target\_index & 1 & Relative index of component to focus at, e.g. next is +1 & 0 \\ +focus\_xw & m & horiz. dimension of a rectangular area & 0 \\ +focus\_yh & m & vert. dimension of a rectangular area & 0 \\ +focus\_aw & deg & horiz. angular dimension of a rectangular area & 0 \\ +focus\_ah & deg & vert. angular dimension of a rectangular area & 0 \\ +focus\_r & m & Detector (disk-shaped) radius & 0 \\ +\bottomrule +\end{longtable} + +\subsection*{Links} +\begin{itemize} + \item \href{run:/home/willend/willend-McCode/mcstas-comps/samples/Sans_spheres.comp}{Source code} for \texttt{Sans\_spheres.comp}. + \item The test/example instrument \textless{}a href="../examples/SANS.instr"\textgreater{}SANS.instr\textless{}/a\textgreater{}. +\end{itemize} +\IfFileExists{Sans_spheres_static.tex}{\input{Sans_spheres_static.tex}}{} \ No newline at end of file diff --git a/docs/manuals/mcstas/samples/SasView_model.tex b/docs/manuals/mcstas/samples/SasView_model.tex new file mode 100644 index 000000000..713b27962 --- /dev/null +++ b/docs/manuals/mcstas/samples/SasView_model.tex @@ -0,0 +1,2151 @@ +\section{The \texttt{SasView\_model} McStas Component} +This SANS sample exposes \textless{}a href="http://www.sasview.org"\textgreater{}SasView's\textless{}/a\textgreater{} scattering kernels to McStas. In this way SasView's monodisperse scattering kernels can be call from McStas. + +\subsection*{Identification} +\begin{itemize} + \item \textbf{Site:} + \item \textbf{Author:} Jakob Garde, Torben Nielsen, Peter Willendrup + \item \textbf{Origin:} SasView, DTU, European Spallation Source ERIC + \item \textbf{Date:} 03.02.2016 +\end{itemize} + +\subsection*{Description} +\begin{lstlisting} +Sample for use in SANS instruments. The models describe mono disperse particles in thin solution. The sample geometry may have the shape: + +Shape: - A filled box with dimensions xwidth, yheight and zdepth. +- A cylinder with dimensions radius and yheight. +- A filled sphere given by radius. + +These parameters are mutually exclusive. + +Example using spheres in thin solution, with radius=200 AA and a delta_sld=0.6 fm/AA^3: +SasView_model(model_index=47, model_scale=1.0, model_pars={1, 7, 200}, model_abs=0.0, xwidth=0.01, yheight=0.01, zdepth=0.005,) + + +The algorithm of this component requires use of the ISO C standard c99, standard from McStas 2.7 and 3.0. + +The list of scattering models in SasView is called sasmodels. The list of McStas available SasView sasmodels are found in the table below. + +A few models may require manual documentation lookup using the above link to the SasView site. + +McStas does currently not support multiplication of formfactor models with structure factor models. + +The 2D scattering scattering kernels are denoted by modelname_xy. I.e. to evalulate scattering from aligned cylinders use model_index=10 to use cylinder_xy. + +MDOC + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    Model no.SasView nameParameters
    0NoneNone
    1barbell(sld, solvent_sld, bell_radius, radius, length)
    2barbell_xy(sld, solvent_sld, bell_radius, radius, length, theta, phi)
    3bcc_paracrystal(dnn, d_factor, radius, sld, solvent_sld)
    4bcc_paracrystal_xy(dnn, d_factor, radius, sld, solvent_sld, theta, phi, psi)
    5capped_cylinder(sld, solvent_sld, radius, cap_radius, length)
    6capped_cylinder_xy(sld, solvent_sld, radius, cap_radius, length, theta, phi)
    7core_shell_cylinder(core_sld, shell_sld, solvent_sld, radius, thickness, length)
    8core_shell_cylinder_xy(core_sld, shell_sld, solvent_sld, radius, thickness, length, theta, phi)
    9cylinder(sld, solvent_sld, radius, length)
    10cylinder_xy(sld, solvent_sld, radius, length, theta, phi)
    11dab(length)
    12dab_xy(length)
    13ellipsoid(sld, solvent_sld, rpolar, requatorial)
    14ellipsoid_xy(sld, solvent_sld, rpolar, requatorial, theta, phi)
    15fcc_paracrystal(dnn, d_factor, radius, sld, solvent_sld)
    16fcc_paracrystal_xy(dnn, d_factor, radius, sld, solvent_sld, theta, phi, psi)
    17flexible_cylinder_ex(length, kuhn_length, radius, axis_ratio, sld, solvent_sld)
    18flexible_cylinder_ex_xy(length, kuhn_length, radius, axis_ratio, sld, solvent_sld)
    19gaussian_peak(q0, sigma)
    20gaussian_peak_xy(q0, sigma)
    21guinier(rg)
    22guinier_xy(rg)
    23hardsphere(effect_radius, volfraction)
    24hardsphere_xy(effect_radius, volfraction)
    25HayterMSAsq(effect_radius, zz, VolFrac, Temp, csalt, dialec)
    26HayterMSAsq_xy(effect_radius, charge, volfraction, temperature, saltconc, dielectconst)
    27hollow_cylinder(radius, core_radius, length, sld, solvent_sld)
    28hollow_cylinder_xy(radius, core_radius, length, sld, solvent_sld, theta, phi)
    29lamellar(sld, solvent_sld, thickness)
    30lamellar_xy(sld, solvent_sld, thickness)
    31lamellar_FFHG(tail_length, head_length, sld, head_sld, solvent_sld)
    32lamellar_FFHG_xy(tail_length, head_length, sld, head_sld, solvent_sld)
    33lamellarCailleHG(tail_length, head_length, Nlayers, dd, Cp, tail_sld, head_sld, solvent_sld)
    34lamellarCailleHG_xy(tail_length, head_length, Nlayers, spacing, Caille_parameter, sld, head_sld, solvent_sld)
    35lamellarPC(th, Nlayers, davg, pd, sld, solvent_sld)
    36lamellarPC_xy(thickness, Nlayers, spacing, spacing_polydisp, sld, solvent_sld)
    37lamellarPS(del, Nlayers, dd, Cp, sld, solvent_sld)
    38lamellarPS_xy(thickness, Nlayers, spacing, Caille_parameter, sld, solvent_sld)
    39linear_pearls(radius, edge_sep, num_pearls, pearl_sld, solvent_sld)
    40linear_pearls_xy(radius, edge_sep, num_pearls, pearl_sld, solvent_sld)
    41lorentz(cor_length)
    42lorentz_xy(cor_length)
    43mass_fractal(radius, mass_dim, cutoff_length)
    44mass_fractal_xy(radius, mass_dim, cutoff_length)
    45mass_surface_fractal(mass_dim, surface_dim, cluster_rg, primary_rg)
    46mass_surface_fractal_xy(mass_dim, surface_dim, cluster_rg, primary_rg)
    47parallelepiped(sld, solvent_sld, a_side, b_side, c_side)
    48parallelepiped_xy(sld, solvent_sld, a_side, b_side, c_side, theta, phi, psi)
    49pearl_necklace(radius, edge_separation, string_thickness, number_of_pearls, sld, string_sld, solvent_sld)
    50pearl_necklace_xy(radius, edge_separation, string_thickness, number_of_pearls, sld, string_sld, solvent_sld)
    51sphere(sld, solvent_sld, radius)
    52sphere_xy(sld, solvent_sld, radius)
    53star_polymer(radius2, arms)
    54star_polymer_xy(radius2, arms)
    55stickyhardsphere(effect_radius, volfraction, perturb, stickiness)
    56stickyhardsphere_xy(effect_radius, volfraction, perturb, stickiness)
    57triaxial_ellipsoid(sld, solvent_sld, req_minor, req_major, rpolar)
    58triaxial_ellipsoid_xy(sld, solvent_sld, req_minor, req_major, rpolar, theta, phi, psi)
    + + + +

    Available SasView sasmodels - Extended parameters description

    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    sasmodels nameParameters UnitsRange
    barbell { 4, 1, 40, 20, 400 }  
    barbell_xy { 4, 1, 40, 20, 400, 60, 60 }  
        
     Parameters:  
     Barbell scattering length density4e-6/Ang^2[-inf, inf]
     Solvent scattering length density1e-6/Ang^2[-inf, inf]
     Spherical bell radiusAng[0, inf]
     Cylindrical bar radiusAng[0, inf]
     Cylinder bar lengthAng[0, inf]
     In plane angledegrees[-inf, inf]
     Out of plane angledegrees[-inf, inf]
        
    bcc { 220, 0.06, 40, 4, 1 }  
    bcc_xy { 220, 0.06, 40, 4, 1, 60, 60, 60 }  
        
     Parameters:  
     Nearest neighbour distanceAng[-inf, inf]
     Paracrystal distortion factor [-inf, inf]
     Particle radiusAng[0, inf]
     Particle scattering length density1e-6/Ang^2[-inf, inf]
     Solvent scattering length density1e-6/Ang^2[-inf, inf]
     In plane angledegrees[-inf, inf]
     Out of plane angledegrees[-inf, inf]
     Out of plane angledegrees[-inf, inf]
        
    capped_cylinder { 4, 1, 20, 20, 400 }  
    capped_cylinder_xy { 4, 1, 20, 20, 400, 60, 60 }  
        
     Parameters:  
     Cylinder scattering length density1e-6/Ang^2[-inf, inf]
     Solvent scattering length density1e-6/Ang^2[-inf, inf]
     Cylinder radiusAng[0, inf]
     Cap radiusAng[0, inf]
     Cylinder lengthAng[0, inf]
     In plane angledegrees[-inf, inf]
     Out of plane angledegrees[-inf, inf]
        
    core_shell_cylinder { 4, 4, 1, 20, 20, 400 }  
    core_shell_cylinder_xy { 4, 4, 1, 20, 20, 400, 60, 60 }  
        
     Parameters:  
     Cylinder core scattering length density1e-6/Ang^2[-inf, inf]
     Cylinder shell scattering length density1e-6/Ang^2[-inf, inf]
     Solvent scattering length density1e-6/Ang^2[-inf, inf]
     Cylinder core radiusAng[0, inf]
     Cylinder shell thicknessAng[0, inf]
     Cylinder lengthAng[0, inf]
     In plane angledegrees[-inf, inf]
     Out of plane angledegrees[-inf, inf]
        
    cylinder { 4, 1, 20, 400 }  
    cylinder_xy { 4, 1, 20, 400, 60, 60 }  
        
     Parameters:  
     Cylinder scattering length density4e-6/Ang^2[-inf, inf]
     Solvent scattering length density1e-6/Ang^2[-inf, inf]
     Cylinder radiusAng[0, inf]
     Cylinder lengthAng[0, inf]
     In plane angledegrees[-inf, inf]
     Out of plane angledegrees[-inf, inf]
        
    dab { 50.0 }  
    dab_xy { 50.0 }  
        
     Parameters:  
     correlation lengthAng[0, inf]
        
    ellipsoid { 4, 1, 20, 400 }  
    ellipsoid_xy { 4, 1, 20, 400, 60, 60 }  
        
     Parameters:  
     Ellipsoid scattering length density1e-6/Ang^2[-inf, inf]
     Solvent scattering length density1e-6/Ang^2[-inf, inf]
     Polar radiusAng[0, inf]
     Equatorial radiusAng[0, inf]
     In plane angledegrees[-inf, inf]
     Out of plane angledegrees[-inf, inf]
        
    fcc { 220, 0.06, 40, 4, 1 }  
    fcc_xy { 220, 0.06, 40, 4, 1, 60, 60, 60 }  
        
     Parameters:  
     Nearest neighbour distanceAng[-inf, inf]
     Paracrystal distortion factor [-inf, inf]
     Particle radiusAng[0, inf]
     Particle scattering length density1e-6/Ang^2[-inf, inf]
     Solvent scattering length density1e-6/Ang^2[-inf, inf]
     In plane angledegrees[-inf, inf]
     Out of plane angledegrees[-inf, inf]
     Out of plane angledegrees[-inf, inf]
        
    flexible_cylinder_ex { 1000.0, 100.0, 20.0, 1.5, 1.0, 6.3 }  
    flexible_cylinder_ex_xy { 1000.0, 100.0, 20.0, 1.5, 1.0, 6.3 }  
        
     Parameters:  
     Length of the flexible cylinderAng[0, inf]
     Kuhn length of the flexible cylinderAng[0, inf]
     Radius of the flexible cylinderAng[0, inf]
     Axis_ratio (major_radius/radius [0, inf]
     Cylinder scattering length density1e-6/Ang^2[-inf, inf]
     Solvent scattering length density1e-6/Ang^2[-inf, inf]
        
    gaussian_peak { 0.05, 0.005 }  
    gaussian_peak_xy { 0.05, 0.005 }  
        
     Parameters:  
     Peak position1/Ang[-inf, inf]
     Peak width (standard deviation)1/Ang[0, inf]
        
    guinier { 60.0 }  
    guinier_xy { 60.0 }  
        
     Parameters:  
     Radius of GyrationAng[0, inf]
        
    hardsphere { 50.0, 0.2 }  
    hardsphere_xy { 50.0, 0.2 }  
        
     Parameters:  
     effective radius of hard sphereAng[0, inf]
     volume fraction of hard spheres [0, 0.74]
        
    HayterMSAsq { 20.75, 19.0, 0.0192, 318.16, 0.0, 71.08 }  
    HayterMSAsq_xy { 20.75, 19.0, 0.0192, 318.16, 0.0, 71.08 }  
        
     Parameters:  
     effective radius of hard sphereAng[0, inf]
     charge on sphere (in electrons)e[0, inf]
     volume fraction of spheres [0, 0.74]
     temperature, in Kelvin, for Debye length calculationK[0, inf]
     conc of salt, 1:1 electolyte, for Debye lengthM[-inf, inf]
     dielectric constant of solvent (default water), for Debye length [-inf, inf]
        
    hollow_cylinder { 30.0, 20.0, 400.0, 6.3, 1 }  
    hollow_cylinder_xy { 30.0, 20.0, 400.0, 6.3, 1, 90, 0 }  
        
     Parameters:  
     Cylinder radiusAng[0, inf]
     Hollow core radiusAng[0, inf]
     Cylinder lengthAng[0, inf]
     Cylinder sld1/Ang^2[-inf, inf]
     Solvent sld1/Ang^2[-inf, inf]
     Theta angledegrees[-360, 360]
     Phi angledegrees[-360, 360]
        
    lamellar { 1, 6, 50 }  
    lamellar_xy { 1, 6, 50 }  
        
     Parameters:  
     Layer scattering length density1e-6/Ang^2[-inf, inf]
     Solvent scattering length density1e-6/Ang^2[-inf, inf]
     Bilayer thicknessAng[0, inf]
        
    lamellarCaille { 30.0, 20, 400.0, 0.1, 6.3, 1.0 }  
    lamellarCaille_xy { 30.0, 20, 400.0, 0.1, 6.3, 1.0 }  
        
     Parameters:  
     sheet thicknessAng[0, inf]
     Number of layers [0, inf]
     d-spacing of Caille S(Q)Ang[0.0, inf]
     Caille parameter1/Ang^2[0.0, 0.8]
     layer scattering length density1e-6/Ang^2[-inf, inf]
     Solvent scattering length density1e-6/Ang^2[-inf, inf]
        
    lamellarCailleHG { 10, 2, 30, 40.0, 0.001, 0.4, 2.0, 6 }  
    lamellarCailleHG_xy { 10, 2, 30, 40.0, 0.001, 0.4, 2.0, 6 }  
        
     Parameters:  
     Tail thicknessAng[0, inf]
     head thicknessAng[0, inf]
     Number of layers [0, inf]
     d-spacing of Caille S(Q)Ang[0.0, inf]
     Caille parameter [0.0, 0.8]
     Tail scattering length density1e-6/Ang^2[-inf, inf]
     Head scattering length density1e-6/Ang^2[-inf, inf]
     Solvent scattering length density1e-6/Ang^2[-inf, inf]
        
    lamellarFFHG { 15, 10, 0.4, 3.0, 6 }  
    lamellarFFHG_xy { 15, 10, 0.4, 3.0, 6 }  
        
     Parameters:  
     Tail thicknessAng[0, inf]
     head thicknessAng[0, inf]
     Tail scattering length density1e-6/Ang^2[-inf, inf]
     Head scattering length density1e-6/Ang^2[-inf, inf]
     Solvent scattering length density1e-6/Ang^2[-inf, inf]
        
    lamellarPC { 33.0, 20, 250.0, 0.0, 1.0, 6.34 }  
    lamellarPC_xy { 33.0, 20, 250.0, 0.0, 1.0, 6.34 }  
        
     Parameters:  
     sheet thicknessAng[0, inf]
     Number of layers [0, inf]
     d-spacing of paracrystal stackAng[0.0, inf]
     d-spacing polydispersityAng[0.0, inf]
     layer scattering length density1e-6/Ang^2[-inf, inf]
     Solvent scattering length density1e-6/Ang^2[-inf, inf]
        
    linear_pearls { 80.0, 350.0, 3.0, 1.0, 6.3 }  
    linear_pearls_xy { 80.0, 350.0, 3.0, 1.0, 6.3 }  
        
     Parameters:  
     Radius of the pearlsAng[0, inf]
     Length of the string segment - surface to surfaceAng[0, inf]
     Number of the pearls [0, inf]
     SLD of the pearl spheres1e-6/Ang^2[-inf, inf]
     SLD of the solvent1e-6/Ang^2[-inf, inf]
        
    lorentz { 50.0 }  
    lorentz_xy { 50.0 }  
        
     Parameters:  
     Screening lengthAng[0, inf]
        
    mass_fractal { 10.0, 1.9, 100.0 }  
    mass_fractal_xy { 10.0, 1.9, 100.0 }  
        
     Parameters:  
     Particle radiusAng[0.0, inf]
     Mass fractal dimension [1.0, 6.0]
     Cut-off lengthAng[0.0, inf]
        
    mass_surface_fractal { 1.8, 2.3, 86.7, 4000.0 }  
    mass_surface_fractal_xy { 1.8, 2.3, 86.7, 4000.0 }  
        
     Parameters:  
     Mass fractal dimension [1e-16, 6.0]
     Surface fractal dimension [1e-16, 6.0]
     Cluster radius of gyrationAng[0.0, inf]
     Primary particle radius of gyrationAng[0.0, inf]
        
    parallelepiped { 4, 1, 35, 75, 400 }  
    parallelepiped_xy { 4, 1, 35, 75, 400, 60, 60, 60 }  
        
     Parameters:  
     Parallelepiped scattering length density1e-6/Ang^2[-inf, inf]
     Solvent scattering length density1e-6/Ang^2[-inf, inf]
     Shorter side of the parallelepipedAng[0, inf]
     Second side of the parallelepipedAng[0, inf]
     Larger side of the parallelepipedAng[0, inf]
     In plane angledegrees[-inf, inf]
     Out of plane angledegrees[-inf, inf]
     Rotation angle around its own c axis against q planedegrees[-inf, inf]
        
    pearl_necklace { 80.0, 350.0, 2.5, 3, 1.0, 1.0, 6.3 }  
    pearl_necklace_xy { 80.0, 350.0, 2.5, 3, 1.0, 1.0, 6.3 }  
        
     Parameters:  
     Mean radius of the chained spheresAngstrom[0, inf]
     Mean separation of chained particlesAngstrom[0, inf]
     Thickness of the chain linkageAngstrom[0, inf]
     Mean number of pearls in each necklacenone[0, inf]
     Scattering length density of the chained spheresAngstrom^2[-inf, inf]
     Scattering length density of the chain linkageAngstrom^2[-inf, inf]
     Scattering length density of the solventAngstrom^2[-inf, inf]
        
    sphere { 1, 6, 50 }  
    sphere_xy { 1, 6, 50 }  
        
     Parameters:  
     Layer scattering length density1e-6/Ang^2[-inf, inf]
     Solvent scattering length density1e-6/Ang^2[-inf, inf]
     Sphere radiusAng[0, inf]
        
    star_polymer { 100.0, 3 }  
    star_polymer_xy { 100.0, 3 }  
        
     Parameters:  
     Ensemble radius of gyration squared of an armAng[0.0, inf]
     Number of arms in the model [1.0, 6.0]
        
    stickyhardsphere { 50.0, 0.2, 0.05, 0.2 }  
    stickyhardsphere_xy { 50.0, 0.2, 0.05, 0.2 }  
        
     Parameters:  
     effective radius of hard sphereAng[0, inf]
     volume fraction of hard spheres [0, 0.74]
     perturbation parameter, epsilon [0.01, 0.1]
     stickiness, tau [-inf, inf]
        
    triaxial_ellipsoid { 4, 1, 20, 400, 10 }  
    triaxial_ellipsoid_xy { 4, 1, 20, 400, 10, 60, 60, 60 }  
        
     Parameters:  
     Ellipsoid scattering length density1e-6/Ang^2[-inf, inf]
     Solvent scattering length density1e-6/Ang^2[-inf, inf]
     Minor equitorial radiusAng[0, inf]
     Major equatorial radiusAng[0, inf]
     Polar radiusAng[0, inf]
     In plane angledegrees[-inf, inf]
     Out of plane angledegrees[-inf, inf]
     Out of plane angledegrees[-inf, inf]
        
    +

    +

    +

    Name convention: SasView - sasmodels

    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    SasView namesasmodels name P(Q) S(Q)MultiplyMultiplicity
    BarBellbarbell - - --
    BCCrystalbcc - - --
    CappedCylindercapped_cylinder - - --
    CoreShellCylindercore_shell_cylinder - - --
    Cylindercylinder - - --
    DABdab - - --
    Ellipsoidellipsoid - - --
    FCCrystalfcc - - --
    FlexCylEllipXflexible_cylinder_ex - - --
    PeakGaussgaussian_peak - - --
    Guinierguinier - - --
    HardsphereStructurehardsphere - Y --
    HayterMSAStructureHayterMSAsq - Y --
    HollowCylinderhollow_cylinder - - --
    Lamellarlamellar - - --
    LamellarPSlamellarCaille - - --
    LamellarPSHGlamellarCailleHG - - --
    LamellarFFHGlamellarFFHG - - --
    LamellarPCrystallamellarPC - - --
    LinearPearlslinear_pearls - - --
    Lorentzlorentz - - --
    MassFractalmass_fractal - - --
    MassSurfaceFractalmass_surface_fractal - - --
    Parallelepipedparallelepiped - - --
    PearlNecklacepearl_necklace - - --
    Spheresphere - - --
    StarPolymerstar_polymer - - --
    StickyHSStructurestickyhardsphere - Y --
    TriaxialEllipsoidtriaxial_ellipsoid - - --
    + + +MDOC_END +\end{lstlisting} + +\subsection*{Input parameters} +Parameters in \textbf{boldface} are required; the others are optional. + +\begin{longtable}{p{0.22\textwidth}p{0.12\textwidth}p{0.46\textwidth}p{0.14\textwidth}} +\toprule +\textbf{Name} & \textbf{Unit} & \textbf{Description} & \textbf{Default} \\ +\midrule +\endhead +model\_index & & Index of the applied sasview model. Recompile instrument for changes to take effect. & 21 \\ +model\_scale & & Global scale factor for scattering kernel. For systems without inter-particle interference, the form factors can be related to the scattering intensity by the particle volume fraction. & 1.0 \\ +model\_pars & & Model parameters are given as a set of comma-separated values enclosed by \{\}, e.g. \{60\} for the model index 21 (the guinier model). Consult the sasview docs for further info. & \{60,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0\} \\ +model\_abs & 1/m & Absorption cross section density at 2200 m/s & 0.5 \\ +xwidth & m & horiz. dimension of sample, as a width & 0 \\ +yheight & m & vert . dimension of sample, as a height for cylinder/box & 0 \\ +zdepth & m & depth of sample & 0 \\ +radius & m & Outer radius of sample in (x,z) plane for cylinder/sphere & 0 \\ +target\_x & m & relative focus target position & 0 \\ +target\_y & m & relative focus target position & 0 \\ +target\_z & m & relative focus target position & 6 \\ +target\_index & 1 & Relative index of component to focus at, e.g. next is +1 & 0 \\ +focus\_xw & m & horiz. dimension of a rectangular area & 0 \\ +focus\_yh & m & vert. dimension of a rectangular area & 0 \\ +focus\_aw & deg & horiz. angular dimension of a rectangular area & 0 \\ +focus\_ah & deg & vert. angular dimension of a rectangular area & 0 \\ +\bottomrule +\end{longtable} + +\subsection*{Links} +\begin{itemize} + \item \href{run:/home/willend/willend-McCode/mcstas-comps/samples/SasView_model.comp}{Source code} for \texttt{SasView\_model.comp}. + \item http://www.sasview.org/sasview/user/models/model\_functions.html +\end{itemize} +\IfFileExists{SasView_model_static.tex}{\input{SasView_model_static.tex}}{} \ No newline at end of file diff --git a/docs/manuals/mcstas/samples/Single_crystal.tex b/docs/manuals/mcstas/samples/Single_crystal.tex new file mode 100644 index 000000000..f166e8c35 --- /dev/null +++ b/docs/manuals/mcstas/samples/Single_crystal.tex @@ -0,0 +1,207 @@ +\section{The \texttt{Single\_crystal} McStas Component} +Mosaic single crystal with multiple scattering vectors, optimised for speed +with large crystals and many reflections. + +\subsection*{Identification} +\begin{itemize} + \item \textbf{Site:} + \item \textbf{Author:} Kristian Nielsen + \item \textbf{Origin:} Risoe + \item \textbf{Date:} December 1999 +\end{itemize} + +\subsection*{Description} +\begin{lstlisting} +Single crystal with mosaic. Delta-D/D option for finite-size effects. +Rectangular geometry. Multiple scattering and secondary extinction included. +The mosaic may EITHER be specified isotropic by setting the mosaic input +parameter, OR anisotropic by setting the mosaic_a, mosaic_b, and mosaic_c +parameters. +The crystal lattice can be bent locally, keeping the external geometry unchanged. +Curvature is spherical along vertical and horizontal axes. + +Speed/stat optimisation using SPLIT +In order to dramatically improve the simulation efficiency, we recommend to +use a SPLIT keyword on this component (or prior to it), as well as to disable +the multiple scattering handling by setting order=1. This is especially powerful +for large reflection lists such as with macromolecular proteins. When an incoming +particle is identical to the preceeding, reciprocal space initialisation is +skipped, and a Monte Carlo choice is done on available reflections from the last +repciprocal space calculation! To assist the user in choosing a "relevant" value +of the SPLIT, a rolling average of the number of available reflections is +calculated and presented in the component output. + +Mosacitiy modes: +The component features three independent ways of parametrising mosaicity: +a) The original algorithm where mosaicity is implemented by extending each +reflection by a Gaussian "cigar" in reciprocal space, characterised by +the parameters mosaic and delta_d_d. +(Also known as "isotropic mosaicity".) +b) A similar mode where mosaicities can be non-isotropic and given as the +parameters mosaic_a, mosaic_b and mosaic_c, around the unit cell axes. +(Also known as "anisotropic mosaicity".) +c) Given two "macroscopically"/experimentally measured width/mosaicities +of two independent reflections, parametrised by the list +mosaic_AB = {mos_a, mos_b, a_h, a_k, a_l, b_h, b_k, b_l}, a set of +microscopic mosaicities as in b) are estimated (internally) and applied. +(Also known as "phenomenological mosaicity".) + +Powder- and PG-mode +When these two modes are used (powder=1 or PG=1), a randomised transformation +of the particle direction is made before and after scattering, thereby letting +the single crystal behave as a crystallite of either a powder (crystallite +orientation fully randomised) or pyrolytic graphite (crystallite randomised around +the c-axis). + +Curved crystal mode +The component features a method to curve the lattice planes slightly with respect +to the outer geometry of the crystal. The method is implemented as a transformation +on the particle direction vector, and should be used only in cases where +a) The reflection lattice vector is ~ orthogonal to the crystal surface +b) The modelled curvarture is "small" with respect to the crystal surface + +Sample shape: +Sample shape may be a cylinder, a sphere, a box or any other shape +box/plate: xwidth x yheight x zdepth +cylinder: radius x yheight +sphere: radius (yheight=0) +any shape: geometry=OFF file + +The complex geometry option handles any closed non-convex polyhedra. +It computes the intersection points of the neutron ray with the object +transparently, so that it can be used like a regular sample object. +It supports the PLY, OFF and NOFF file format but not COFF (colored faces). +Such files may be generated from XYZ data using: +qhull < coordinates.xyz Qx Qv Tv o > geomview.off +or +powercrust coordinates.xyz +and viewed with geomview or java -jar jroff.jar (see below). +The default size of the object depends on the OFF file data, but its +bounding box may be resized using xwidth,yheight and zdepth. + +Crystal definition file format +Crystal structure is specified with an ascii data file. Each line contains +4 or more numbers, separated by white spaces: + +h k l ... F2 + +The first three numbers are the (h,k,l) indices of the reciprocal lattice +point, and the 7-th number is the value of the structure factor |F|**2, in +barns. The rest of the numbers are not used; the file is in the format +output by the Crystallographica program. +The reflection list should be ordered by decreasing d-spacing values. +Lines begining by '#' are read as comments (ignored). Most sample parameters +may be defined from the data file header, following the same mechanism as +PowderN. + +Current data file header keywords include, for data format specification: +#column_h +#column_k +#column_l +#column_F2 +#column_F +and for material specification: +#sigma_abs +#sigma_inc +#Delta_d/d +#lattice_a +#lattice_b +#lattice_c +#lattice_aa +#lattice_bb +#lattice_cc + +Last, CIF, FullProf and ShelX files can be read, and converted to F2(hkl) lists +if 'cif2hkl' is installed. The CIF2HKL env variable can be used to point to a +proper executable, else the McCode, then the system installed versions are used. + +See the Component Manual for more defails. + +Example: Single_crystal(xwidth=0.01, yheight=0.01, zdepth=0.01, mosaic = 5, reflections="YBaCuO.lau") + +A PG graphite crystal plate, cut for (002) reflections +Single_crystal(xwidth = 0.002, yheight = 0.1, zdepth = 0.1, +mosaic = 30, reflections = "C_graphite.lau", +ax=0, ay=2.14, az=-1.24, +bx = 0, by = 0, bz = 2.47, +cx = 6.71, cy = 0, cz = 0) + +A leucine protein, without multiple scattering +Single_crystal(xwidth=0.005, yheight=0.005, zdepth=0.005, +mosaic = 5, reflections="leucine.lau", order=1) + +A Vanadium incoherent elastic scattering with multiple scattering +Single_crystal(xwidth=0.01, yheight=0.01, zdepth=0.01, +reflections="", sigma_abs=5.08, sigma_inc=4.935, +ax=3.0282, by=3.0282, cz=3.0282/2) + +Also, always use a non-zero value of delta_d_d. + +%VALIDATION: +This component has been validated. + +This sample component can advantageously benefit from the SPLIT feature, e.g. +SPLIT COMPONENT sx = Single_crystal(...) +\end{lstlisting} + +\subsection*{Input parameters} +Parameters in \textbf{boldface} are required; the others are optional. + +\begin{longtable}{p{0.22\textwidth}p{0.12\textwidth}p{0.46\textwidth}p{0.14\textwidth}} +\toprule +\textbf{Name} & \textbf{Unit} & \textbf{Description} & \textbf{Default} \\ +\midrule +\endhead +reflections & string & File name containing structure factors of reflections (LAZ LAU CIF, FullProf, ShelX). Use empty ("") or NULL for incoherent scattering only & 0 \\ +geometry & str & Name of an Object File Format (OFF) or PLY file for complex geometry. The OFF/PLY file may be generated from XYZ coordinates using qhull/powercrust & 0 \\ +mosaic\_AB & arc\_minutes, arc\_minutes,1, 1, 1, 1, 1, 1 & In Plane mosaic rotation and plane vectors (anisotropic), mosaic\_A, mosaic\_B, A\_h,A\_k,A\_l, B\_h,B\_k,B\_l. Puts the crystal in the in-plane mosaic state. Vectors A and B define plane in which the crystal roation is defined, and mosaic\_A, mosaic\_B, denotes the resp. mosaicities (gaussian RMS) with respect to the two reflections chosen by A and B (Miller indices). & \{0,0, 0,0,0, 0,0,0\} \\ +xwidth & m & Width of crystal & 0 \\ +yheight & m & Height of crystal & 0 \\ +zdepth & m & Depth of crystal (no extinction simulated) & 0 \\ +radius & m & Outer radius of sample in (x,z) plane & 0 \\ +delta\_d\_d & 1 & Lattice spacing variance, gaussian RMS & 1e-4 \\ +mosaic & arc minutes & Crystal mosaic (isotropic), gaussian RMS. Puts the crystal in the isotropic mosaic model state, thus disregarding other mosaicity parameters. & -1 \\ +mosaic\_a & arc minutes & Horizontal (rotation around lattice vector a) mosaic (anisotropic), gaussian RMS. Put the crystal in the anisotropic crystal vector state. I.e. model mosaicity through rotation around the crystal lattice vectors. Has precedence over in-plane mosaic model. & -1 \\ +mosaic\_b & arc minutes & Vertical (rotation around lattice vector b) mosaic (anisotropic), gaussian RMS. & -1 \\ +mosaic\_c & arc minutes & Out-of-plane (Rotation around lattice vector c) mosaic (anisotropic), gaussian RMS & -1 \\ +recip\_cell & 1 & Choice of direct/reciprocal (0/1) unit cell definition & 0 \\ +barns & 1 & Flag to indicate if |F|\textasciicircum{}2 from 'reflections' is in barns or fm\textasciicircum{}2. barns=1 for laz and isotropic constant elastic scattering (reflections=NULL), barns=0 for lau type files & 0 \\ +ax & AA or AA\textasciicircum{}-1 & Coordinates of first (direct/recip) unit cell vector & 0 \\ +ay & & a on y axis & 0 \\ +az & & a on z axis & 0 \\ +bx & AA or AA\textasciicircum{}-1 & Coordinates of second (direct/recip) unit cell vector & 0 \\ +by & & b on y axis & 0 \\ +bz & & b on z axis & 0 \\ +cx & AA or AA\textasciicircum{}-1 & Coordinates of third (direct/recip) unit cell vector & 0 \\ +cy & & c on y axis & 0 \\ +cz & & c on z axis & 0 \\ +p\_transmit & 1 & Monte Carlo probability for neutrons to be transmitted without any scattering. Used to improve statistics from weak reflections & 0.001 \\ +sigma\_abs & barns & Absorption cross-section per unit cell at 2200 m/s & 0 \\ +sigma\_inc & barns & Incoherent scattering cross-section per unit cell Use -1 to inactivate & 0 \\ +aa & deg & Unit cell angles alpha, beta and gamma. Then uses norms of vectors a,b and c as lattice parameters & 0 \\ +bb & deg & Beta angle & 0 \\ +cc & deg & Gamma angle & 0 \\ +order & 1 & Limit multiple scattering up to given order (0: all, 1: first, 2: second, ...) & 0 \\ +extra\_order & 1 & When using order, allow additional multiple scattering without coherent scattering, sensible with very large unit cells (0: disable, 1: one extra, 2: two extra, ...) & 0 \\ +RX & m & Radius of horizontal along X lattice curvature. flat for 0 & 0 \\ +RY & m & Radius of vertical along Y lattice curvature. flat for 0 & 0 \\ +powder & 1 & Flag to indicate powder mode, for simulation of Debye-Scherrer cones via random crystallite orientation. A powder texture can be approximated with 0\textless{}powder\textless{}1 & 0 \\ +PG & 1 & Flag to indicate "Pyrolytic Graphite" mode, only meaningful with choice of Graphite.lau, models PG crystal. A powder texture can be approximated with 0\textless{}PG\textless{}1 with main axis on 'c' & 0 \\ +\bottomrule +\end{longtable} + +\subsection*{Links} +\begin{itemize} + \item \href{run:/home/willend/willend-McCode/mcstas-comps/samples/Single_crystal.comp}{Source code} for \texttt{Single\_crystal.comp}. + \item See \textless{}a href="http://icsd.ill.fr"\textgreater{}ICSD\textless{}/a\textgreater{} Inorganic Crystal Structure Database + \item \textless{}a href="http://www.ncnr.nist.gov/resources/n-lengths/"\textgreater{}Cross sections for single elements\textless{}/a\textgreater{} + \item \textless{}a href="http://www.ncnr.nist.gov/resources/sldcalc.html\textgreater{}Cross sections for compounds\textless{}/a\textgreater{} + \item \textless{}a href="http://www.webelements.com/"\textgreater{}Web Elements\textless{}/a\textgreater{} + \item \textless{}a href="http://www.ill.eu/sites/fullprof/index.html"\textgreater{}Fullprof\textless{}/a\textgreater{} powder refinement + \item \textless{}a href="http://www.crystallographica.com/"\textgreater{}Crystallographica\textless{}/a\textgreater{} software + \item \textless{}a href="http://www.geomview.org"\textgreater{}Geomview and Object File Format (OFF)\textless{}/a\textgreater{} + \item Java version of Geomview (display only) \textless{}a href="http://www.holmes3d.net/graphics/roffview/"\textgreater{}jroff.jar\textless{}/a\textgreater{} + \item \textless{}a href="http://qhull.org"\textgreater{}qhull\textless{}/a\textgreater{} + \item \textless{}a href="http://www.cs.ucdavis.edu/\textasciitilde{}amenta/powercrust.html"\textgreater{}powercrust\textless{}/a\textgreater{} +\end{itemize} +\IfFileExists{Single_crystal_static.tex}{\input{Single_crystal_static.tex}}{} \ No newline at end of file diff --git a/docs/manuals/mcstas/samples/Single_magnetic_crystal.tex b/docs/manuals/mcstas/samples/Single_magnetic_crystal.tex new file mode 100644 index 000000000..16a0a61f9 --- /dev/null +++ b/docs/manuals/mcstas/samples/Single_magnetic_crystal.tex @@ -0,0 +1,98 @@ +\section{The \texttt{Single\_magnetic\_crystal} McStas Component} +Release: McStas 2.6 + +Mosaic magnetic single crystal with multiple scattering vectors. + +\subsection*{Identification} +\begin{itemize} + \item \textbf{Site:} + \item \textbf{Author:} Erik B Knudsen and Linda Udby + \item \textbf{Origin:} DTU Physics + \item \textbf{Date:} Jan 2020 +\end{itemize} + +\subsection*{Description} +\begin{lstlisting} +WARNING: This is an experimental component - no experimental validation has yet been done + +Single magnetic crystal with mosaic. Delta-D/D option for finite-size effects. +Multiple scattering and secondary extinction included. +The mosaic may EITHER be specified isotropic by setting the mosaic input +parameter, OR anisotropic by setting the mosaic_h, mosaic_v, and mosaic_n +parameters. + +The scattering is computed solely in an spin up-down configuration. That is the +scattering is considered in relation to the externally defined vector (mx,my,mz), where it +can be either SF or NSF. +Simplifications and comments : +Lande splitting factor is assumed to be g=2 +Magnetic form factors are set =1 + +Sample shape: +Sample shape may be a cylinder, a sphere, a box or any other shape +box/plate: xwidth x yheight x zdepth +cylinder: radius x yheight +sphere: radius (yheight=0) +any shape: geometry=OFF file + +The complex geometry option handles any closed non-convex polyhedra. +It computes the intersection points of the neutron ray with the object +transparently, so that it can be used like a regular sample object. +It supports the OFF and NOFF file format but not COFF (colored faces). +Such files may be generated from XYZ data using qhull/powercrust, and +viewed with geomview +The default size of the object depends of the OFF file data, but its +bounding box may be resized using xwidth,yheight and zdepth. + +Also, always use a non-zero value of delta_d_d. +\end{lstlisting} + +\subsection*{Input parameters} +Parameters in \textbf{boldface} are required; the others are optional. + +\begin{longtable}{p{0.22\textwidth}p{0.12\textwidth}p{0.46\textwidth}p{0.14\textwidth}} +\toprule +\textbf{Name} & \textbf{Unit} & \textbf{Description} & \textbf{Default} \\ +\midrule +\endhead +atom\_sites & str & File name containing the atoms present in the unit cell. Use empty ("") or NULL for sigma\_inc scattering only & 0 \\ +geometry & str & Name of an Object File Format (OFF) file for complex geometry. The OFF file may be generated from XYZ coordinates using qhull/powercrust & NULL \\ +xwidth & m & Width of crystal & 0 \\ +yheight & m & Height of crystal & 0 \\ +zdepth & m & Depth of crystal (no extinction simulated) & 0 \\ +radius & m & Outer radius of sample in (x,z) plane & 0 \\ +delta\_d\_d & 1 & Lattice spacing variance, gaussian RMS & 1e-4 \\ +mosaic & arcmin & Crystal mosaic (isotropic), gaussian RMS & -1 \\ +mosaic\_h & arcmin & Horizontal (rotation around Y) mosaic (anisotropic), gaussian RMS & -1 \\ +mosaic\_v & arcmin & Vertical (rotation around Z) mosaic (anisotropic), gaussian RMS & -1 \\ +mosaic\_n & arcmin & Out-of-plane (Rotation around X) mosaic (anisotropic), gaussian RMS & -1 \\ +recip\_cell & 1 & Choice of direct/reciprocal (0/1) unit cell definition & 0 \\ +q\_min & AA\textasciicircum{}-1 & lower boundary of momentum transfer range to generate hkls in & 0 \\ +q\_max & AA\textasciicircum{}-1 & upper boundary of momentum transfer range to generate hkls in & -1 \\ +mx & 1 & & 0 \\ +my & 1 & Coordinates of vector defining the SF/NSF direction & 1 \\ +mz & 1 & & 0 \\ +na & 1 & & 1 \\ +nb & 1 & Unit cell multipliers. The specified unit cell vectors are scaled by these factors. Note that the mulitpliers are applied directly to the raw input data. I.e. if recip. cell vectors are given, multipliers should be \textless{}1 (= 1/n). F.i. used to specify a magnetic unit cell which is larger than the chemical unit cell. & 1 \\ +nc & 1 & & 1 \\ +ax & AA or AA\textasciicircum{}-1 & & 0 \\ +ay & AA or AA\textasciicircum{}-1 & Coordinates of first (direct/recip) unit cell vector & 0 \\ +az & AA or AA\textasciicircum{}-1 & & 0 \\ +bx & AA or AA\textasciicircum{}-1 & & 0 \\ +by & AA or AA\textasciicircum{}-1 & Coordinates of second (direct/recip) unit cell vector & 0 \\ +bz & AA or AA\textasciicircum{}-1 & & 0 \\ +cx & AA or AA\textasciicircum{}-1 & & 0 \\ +cy & AA or AA\textasciicircum{}-1 & Coordinates of third (direct/recip) unit cell vector & 0 \\ +cz & AA or AA\textasciicircum{}-1 & & 0 \\ +p\_transmit & 1 & Monte Carlo probability for neutrons to be transmitted without any scattering. Used to improve statistics from weak reflections & -1 \\ +sigma\_abs & barns & absorption cross-section per unit cell at 2200 m/s & 0 \\ +sigma\_inc & barns & incoherent scattering cross-section per unit cell & 0 \\ +order & 1 & limit multiple scattering up to given order (0: all, 1: first, 2: second, ...) & 0 \\ +\bottomrule +\end{longtable} + +\subsection*{Links} +\begin{itemize} + \item \href{run:/home/willend/willend-McCode/mcstas-comps/samples/Single_magnetic_crystal.comp}{Source code} for \texttt{Single\_magnetic\_crystal.comp}. +\end{itemize} +\IfFileExists{Single_magnetic_crystal_static.tex}{\input{Single_magnetic_crystal_static.tex}}{} \ No newline at end of file diff --git a/docs/manuals/mcstas/samples/TOFRes_sample.tex b/docs/manuals/mcstas/samples/TOFRes_sample.tex new file mode 100644 index 000000000..d94ea4fdd --- /dev/null +++ b/docs/manuals/mcstas/samples/TOFRes_sample.tex @@ -0,0 +1,75 @@ +\section{The \texttt{TOFRes\_sample} McStas Component} +Sample for TOF resolution function calculation. + +\subsection*{Identification} +\begin{itemize} + \item \textbf{Site:} + \item \textbf{Author:} KL, 10 October 2004 + \item \textbf{Origin:} Risoe + \item \textbf{Date:} 1999 +\end{itemize} + +\subsection*{Description} +\begin{lstlisting} +An inelastic sample with completely uniform scattering in both solid angle +and energy. This sample is used together with the TOFRes_monitor component +and (optionally) the mcresplot front-end to compute the resolution +function of all time-of-flight instruments. +The method of time focusing is used to optimize the simulations. + +The shape of the sample is either: +1. Hollow cylinder (Please note that the cylinder **must** be specified with both +a radius and a wall-thickness!) +2. A massive, rectangular box specified with dimensions xwidth, yheight, zdepth. +(i.e. **withouht** a thickness) + +hollow cylinder shape **must** be specified with both a radius and a wall-thickness. +The box is + +The scattered neutrons will have directions towards a given target and +detector arrival time in an interval of time_width centered on time_bin. +This target area is default disk shaped, but may also be rectangular +if specified focus_xw and focus_yh +or focus_aw and focus_ah, respectively in meters and degrees. +The target itself is either situated according to given coordinates (x,y,z), +or setting the relative target_index of the component to focus at +(next is +1). This target position will be set to its AT position. +When targeting to centered components, such as spheres or cylinders, +define an Arm component where to focus at. + +Example: TOFRes_sample(thickness=0.001, radius=0.01, yheight=0.04, focus_xw=0.025, focus_yh=0.025, time_bin=3e4, time_width=200, target_x=0, target_y=0, target_z=1) +\end{lstlisting} + +\subsection*{Input parameters} +Parameters in \textbf{boldface} are required; the others are optional. + +\begin{longtable}{p{0.22\textwidth}p{0.12\textwidth}p{0.46\textwidth}p{0.14\textwidth}} +\toprule +\textbf{Name} & \textbf{Unit} & \textbf{Description} & \textbf{Default} \\ +\midrule +\endhead +thickness & m & Thickness of hollow cylinder in (x,z) plane & 0 \\ +radius & m & Outer radius of hollow cylinder & 0.01 \\ +yheight & m & vert. dimension of sample, as a height & 0.05 \\ +focus\_r & m & Radius of sphere containing target & 0.05 \\ +time\_bin & us & position of time bin & 20000 \\ +time\_width & us & width of time bin & 10 \\ +f & 1 & Adaptive time-shortening factor & 50 \\ +target\_x & & & 0 \\ +target\_y & m & position of target to focus at & 0 \\ +target\_z & & & .5 \\ +focus\_xw & m & horiz. dimension of a rectangular area & 0 \\ +focus\_yh & m & vert. dimension of a rectangular area & 0 \\ +focus\_aw & deg & horiz. angular dimension of a rectangular area & 0 \\ +focus\_ah & deg & vert. angular dimension of a rectangular area & 0 \\ +xwidth & m & horiz. dimension of sample, as a width & 0 \\ +zdepth & m & depth of sample & 0 \\ +target\_index & 1 & relative index of component to focus at, e.g. next is +1 & 0 \\ +\bottomrule +\end{longtable} + +\subsection*{Links} +\begin{itemize} + \item \href{run:/home/willend/willend-McCode/mcstas-comps/samples/TOFRes_sample.comp}{Source code} for \texttt{TOFRes\_sample.comp}. +\end{itemize} +\IfFileExists{TOFRes_sample_static.tex}{\input{TOFRes_sample_static.tex}}{} \ No newline at end of file diff --git a/docs/manuals/mcstas/samples/Tunneling_sample.tex b/docs/manuals/mcstas/samples/Tunneling_sample.tex new file mode 100644 index 000000000..8095a03cd --- /dev/null +++ b/docs/manuals/mcstas/samples/Tunneling_sample.tex @@ -0,0 +1,77 @@ +\section{The \texttt{Tunneling\_sample} McStas Component} +A Double-cylinder shaped all-incoherent scatterer +with elastic, quasielastic (Lorentzian), and tunneling (sharp) +components. + +\subsection*{Identification} +\begin{itemize} + \item \textbf{Site:} + \item \textbf{Author:} Kim Lefmann + \item \textbf{Origin:} Risoe + \item \textbf{Date:} 10.05.07 +\end{itemize} + +\subsection*{Description} +\begin{lstlisting} +A Double-cylinder shaped all-incoherent scatterer +with both elastic, quasielastic (Lorentzian), and tunneling (sharp) +components. No multiple scattering. Absorbtion included. +The shape of the sample may be a box with dimensions xwidth, yheight, zdepth. +The area to scatter to is a disk of radius 'focus_r' situated at the target. +This target area may also be rectangular if specified focus_xw and focus_yh +or focus_aw and focus_ah, respectively in meters and degrees. +The target itself is either situated according to given coordinates (x,y,z), +or defined with the relative target_index of the component to focus +to (next is +1). +This target position will be set to its AT position. When targeting to +centered components, such as spheres or cylinders, define an Arm component +where to focus to. + +The outgoing polarization is calculated as for nuclear spin incoherence: +P' = 1/3*P-2/3P = -1/3P +As above multiple scattering is ignored . + +Example: Tunneling_sample(thickness=0.001,radius=0.01,yheight=0.02,focus_r=0.035, +target_index=1) +\end{lstlisting} + +\subsection*{Input parameters} +Parameters in \textbf{boldface} are required; the others are optional. + +\begin{longtable}{p{0.22\textwidth}p{0.12\textwidth}p{0.46\textwidth}p{0.14\textwidth}} +\toprule +\textbf{Name} & \textbf{Unit} & \textbf{Description} & \textbf{Default} \\ +\midrule +\endhead +thickness & m & Thickness of cylindrical sample in (x,z) plane & 0 \\ +radius & m & Outer radius of sample in (x,z) plane & 0.01 \\ +focus\_r & m & Radius of disk containing target. Use 0 for full space & 0 \\ +p\_interact & 1 & MC Probability for scattering the ray; otherwise transmit & 1 \\ +f\_QE & 1 & Fraction of quasielastic scattering & 0 \\ +f\_tun & 1 & Fraction of tunneling scattering (f\_QE+f\_tun \textless{} 1) & 0 \\ +gamma & meV & Lorentzian width of quasielastic broadening (HWHM) & 0 \\ +E\_tun & meV & Tunneling energy & 0 \\ +target\_x & m & X-position of target to focus at & 0 \\ +target\_y & m & Y-position of target to focus at & 0 \\ +target\_z & m & Z-position of target to focus at & 0.235 \\ +focus\_xw & m & horiz. dimension of a rectangular area & 0 \\ +focus\_yh & m & vert. dimension of a rectangular area & 0 \\ +focus\_aw & deg & horiz. angular dimension of a rectangular area & 0 \\ +focus\_ah & deg & vert. angular dimension of a rectangular area & 0 \\ +xwidth & m & horiz. dimension of sample, as a width & 0 \\ +yheight & m & vert. dimension of sample, as a height & 0.05 \\ +zdepth & m & depth of sample & 0 \\ +sigma\_abs & barns & Absorbtion cross section pr. unit cell & 5.08 \\ +sigma\_inc & barns & Total incoherent scattering cross section pr. unit cell & 4.935 \\ +Vc & AA\textasciicircum{}3 & Unit cell volume & 13.827 \\ +target\_index & 1 & relative index of component to focus at, e.g. next is +1 & 0 \\ +\bottomrule +\end{longtable} + +\subsection*{Links} +\begin{itemize} + \item \href{run:/home/willend/willend-McCode/mcstas-comps/samples/Tunneling_sample.comp}{Source code} for \texttt{Tunneling\_sample.comp}. + \item \textless{}A HREF="http://neutron.risoe.dk/mcstas/components/tests/v\_sample/"\textgreater{}Test + \item results\textless{}/A\textgreater{} (not up-to-date). +\end{itemize} +\IfFileExists{Tunneling_sample_static.tex}{\input{Tunneling_sample_static.tex}}{} \ No newline at end of file diff --git a/docs/manuals/mcstas/sasmodels/SasView_adsorbed_layer.tex b/docs/manuals/mcstas/sasmodels/SasView_adsorbed_layer.tex new file mode 100644 index 000000000..11e4d129f --- /dev/null +++ b/docs/manuals/mcstas/sasmodels/SasView_adsorbed_layer.tex @@ -0,0 +1,62 @@ +\section{The \texttt{SasView\_adsorbed\_layer} McStas Component} +SasView adsorbed\_layer model component as sample description. + +\subsection*{Identification} +\begin{itemize} + \item \textbf{Site:} + \item \textbf{Author:} Jose Robledo + \item \textbf{Origin:} FZJ / DTU / ESS DMSC + \item \textbf{Date:} +\end{itemize} + +\subsection*{Description} +\begin{lstlisting} +SasView_adsorbed_layer component, generated from adsorbed_layer.c in sasmodels. + +Example: +SasView_adsorbed_layer(second_moment, adsorbed_amount, density_shell, radius, volfraction, sld_shell, sld_solvent, +model_scale=1.0, model_abs=0.0, xwidth=0.01, yheight=0.01, zdepth=0.005, R=0, +int target_index=1, target_x=0, target_y=0, target_z=1, +focus_xw=0.5, focus_yh=0.5, focus_aw=0, focus_ah=0, focus_r=0, +pd_radius=0.0) +\end{lstlisting} + +\subsection*{Input parameters} +Parameters in \textbf{boldface} are required; the others are optional. + +\begin{longtable}{p{0.22\textwidth}p{0.12\textwidth}p{0.46\textwidth}p{0.14\textwidth}} +\toprule +\textbf{Name} & \textbf{Unit} & \textbf{Description} & \textbf{Default} \\ +\midrule +\endhead +second\_moment & Ang & ([0.0, inf]) Second moment of polymer distribution. & 23.0 \\ +adsorbed\_amount & mg/m\textasciicircum{}2 & ([0.0, inf]) Adsorbed amount of polymer. & 1.9 \\ +density\_shell & g/cm\textasciicircum{}3 & ([0.0, inf]) Bulk density of polymer in the shell. & 0.7 \\ +radius & Ang & ([0.0, inf]) Core particle radius. & 500.0 \\ +volfraction & None & ([0.0, inf]) Core particle volume fraction. & 0.14 \\ +sld\_shell & 1e-6/Ang\textasciicircum{}2 & ([-inf, inf]) Polymer shell SLD. & 1.5 \\ +sld\_solvent & 1e-6/Ang\textasciicircum{}2 & ([-inf, inf]) Solvent SLD. & 6.3 \\ +model\_scale & & Global scale factor for scattering kernel. For systems without inter-particle interference, the form factors can be related to the scattering intensity by the particle volume fraction. & 1.0 \\ +model\_abs & & Absorption cross section density at 2200 m/s. & 0.0 \\ +xwidth & m & ([-inf, inf]) Horiz. dimension of sample, as a width. & 0.01 \\ +yheight & m & ([-inf, inf]) vert . dimension of sample, as a height for cylinder/box & 0.01 \\ +zdepth & m & ([-inf, inf]) depth of sample & 0.005 \\ +R & m & Outer radius of sample in (x,z) plane for cylinder/sphere. & 0 \\ +target\_x & m & relative focus target position. & 0 \\ +target\_y & m & relative focus target position. & 0 \\ +target\_z & m & relative focus target position. & 1 \\ +target\_index & & Relative index of component to focus at, e.g. next is +1. & 1 \\ +focus\_xw & m & horiz. dimension of a rectangular area. & 0.5 \\ +focus\_yh & m & , vert. dimension of a rectangular area. & 0.5 \\ +focus\_aw & deg & , horiz. angular dimension of a rectangular area. & 0 \\ +focus\_ah & deg & , vert. angular dimension of a rectangular area. & 0 \\ +focus\_r & m & case of circular focusing, focusing radius. & 0 \\ +pd\_radius & & (0,inf) defined as (dx/x), where x is de mean value and dx the standard devition of the variable & 0.0 \\ +\bottomrule +\end{longtable} + +\subsection*{Links} +\begin{itemize} + \item \href{run:/home/willend/willend-McCode/mcstas-comps/sasmodels/SasView_adsorbed_layer.comp}{Source code} for \texttt{SasView\_adsorbed\_layer.comp}. +\end{itemize} +\IfFileExists{SasView_adsorbed_layer_static.tex}{\input{SasView_adsorbed_layer_static.tex}}{} \ No newline at end of file diff --git a/docs/manuals/mcstas/sasmodels/SasView_barbell.tex b/docs/manuals/mcstas/sasmodels/SasView_barbell.tex new file mode 100644 index 000000000..d62ca8d0b --- /dev/null +++ b/docs/manuals/mcstas/sasmodels/SasView_barbell.tex @@ -0,0 +1,62 @@ +\section{The \texttt{SasView\_barbell} McStas Component} +SasView barbell model component as sample description. + +\subsection*{Identification} +\begin{itemize} + \item \textbf{Site:} + \item \textbf{Author:} Jose Robledo + \item \textbf{Origin:} FZJ / DTU / ESS DMSC + \item \textbf{Date:} +\end{itemize} + +\subsection*{Description} +\begin{lstlisting} +SasView_barbell component, generated from barbell.c in sasmodels. + +Example: +SasView_barbell(sld, sld_solvent, radius_bell, radius, length, +model_scale=1.0, model_abs=0.0, xwidth=0.01, yheight=0.01, zdepth=0.005, R=0, +int target_index=1, target_x=0, target_y=0, target_z=1, +focus_xw=0.5, focus_yh=0.5, focus_aw=0, focus_ah=0, focus_r=0, +pd_radius_bell=0.0, pd_radius=0.0, pd_length=0.0) +\end{lstlisting} + +\subsection*{Input parameters} +Parameters in \textbf{boldface} are required; the others are optional. + +\begin{longtable}{p{0.22\textwidth}p{0.12\textwidth}p{0.46\textwidth}p{0.14\textwidth}} +\toprule +\textbf{Name} & \textbf{Unit} & \textbf{Description} & \textbf{Default} \\ +\midrule +\endhead +sld & 1e-6/Ang\textasciicircum{}2 & ([-inf, inf]) Barbell scattering length density. & 4 \\ +sld\_solvent & 1e-6/Ang\textasciicircum{}2 & ([-inf, inf]) Solvent scattering length density. & 1 \\ +radius\_bell & Ang & ([0, inf]) Spherical bell radius. & 40 \\ +radius & Ang & ([0, inf]) Cylindrical bar radius. & 20 \\ +length & Ang & ([0, inf]) Cylinder bar length. & 400 \\ +model\_scale & & Global scale factor for scattering kernel. For systems without inter-particle interference, the form factors can be related to the scattering intensity by the particle volume fraction. & 1.0 \\ +model\_abs & & Absorption cross section density at 2200 m/s. & 0.0 \\ +xwidth & m & ([-inf, inf]) Horiz. dimension of sample, as a width. & 0.01 \\ +yheight & m & ([-inf, inf]) vert . dimension of sample, as a height for cylinder/box & 0.01 \\ +zdepth & m & ([-inf, inf]) depth of sample & 0.005 \\ +R & m & Outer radius of sample in (x,z) plane for cylinder/sphere. & 0 \\ +target\_x & m & relative focus target position. & 0 \\ +target\_y & m & relative focus target position. & 0 \\ +target\_z & m & relative focus target position. & 1 \\ +target\_index & & Relative index of component to focus at, e.g. next is +1. & 1 \\ +focus\_xw & m & horiz. dimension of a rectangular area. & 0.5 \\ +focus\_yh & m & , vert. dimension of a rectangular area. & 0.5 \\ +focus\_aw & deg & , horiz. angular dimension of a rectangular area. & 0 \\ +focus\_ah & deg & , vert. angular dimension of a rectangular area. & 0 \\ +focus\_r & m & case of circular focusing, focusing radius. & 0 \\ +pd\_radius\_bell & & (0,inf) defined as (dx/x), where x is de mean value and dx the standard devition of the variable. & 0.0 \\ +pd\_radius & & (0,inf) defined as (dx/x), where x is de mean value and dx the standard devition of the variable. & 0.0 \\ +pd\_length & & (0,inf) defined as (dx/x), where x is de mean value and dx the standard devition of the variable & 0.0 \\ +\bottomrule +\end{longtable} + +\subsection*{Links} +\begin{itemize} + \item \href{run:/home/willend/willend-McCode/mcstas-comps/sasmodels/SasView_barbell.comp}{Source code} for \texttt{SasView\_barbell.comp}. +\end{itemize} +\IfFileExists{SasView_barbell_static.tex}{\input{SasView_barbell_static.tex}}{} \ No newline at end of file diff --git a/docs/manuals/mcstas/sasmodels/SasView_barbell_aniso.tex b/docs/manuals/mcstas/sasmodels/SasView_barbell_aniso.tex new file mode 100644 index 000000000..f10355638 --- /dev/null +++ b/docs/manuals/mcstas/sasmodels/SasView_barbell_aniso.tex @@ -0,0 +1,66 @@ +\section{The \texttt{SasView\_barbell\_aniso} McStas Component} +SasView barbell model component as sample description. + +\subsection*{Identification} +\begin{itemize} + \item \textbf{Site:} + \item \textbf{Author:} Jose Robledo + \item \textbf{Origin:} FZJ / DTU / ESS DMSC + \item \textbf{Date:} +\end{itemize} + +\subsection*{Description} +\begin{lstlisting} +SasView_barbell component, generated from barbell.c in sasmodels. + +Example: +SasView_barbell_aniso(sld, sld_solvent, radius_bell, radius, length, theta, phi, +model_scale=1.0, model_abs=0.0, xwidth=0.01, yheight=0.01, zdepth=0.005, R=0, +int target_index=1, target_x=0, target_y=0, target_z=1, +focus_xw=0.5, focus_yh=0.5, focus_aw=0, focus_ah=0, focus_r=0, +pd_radius_bell=0.0, pd_radius=0.0, pd_length=0.0, pd_theta=0.0, pd_phi=0.0) +\end{lstlisting} + +\subsection*{Input parameters} +Parameters in \textbf{boldface} are required; the others are optional. + +\begin{longtable}{p{0.22\textwidth}p{0.12\textwidth}p{0.46\textwidth}p{0.14\textwidth}} +\toprule +\textbf{Name} & \textbf{Unit} & \textbf{Description} & \textbf{Default} \\ +\midrule +\endhead +sld & 1e-6/Ang\textasciicircum{}2 & ([-inf, inf]) Barbell scattering length density. & 4 \\ +sld\_solvent & 1e-6/Ang\textasciicircum{}2 & ([-inf, inf]) Solvent scattering length density. & 1 \\ +radius\_bell & Ang & ([0, inf]) Spherical bell radius. & 40 \\ +radius & Ang & ([0, inf]) Cylindrical bar radius. & 20 \\ +length & Ang & ([0, inf]) Cylinder bar length. & 400 \\ +theta & & & 60 \\ +phi & & & 60 \\ +model\_scale & & Global scale factor for scattering kernel. For systems without inter-particle interference, the form factors can be related to the scattering intensity by the particle volume fraction. & 1.0 \\ +model\_abs & & Absorption cross section density at 2200 m/s. & 0.0 \\ +xwidth & m & ([-inf, inf]) Horiz. dimension of sample, as a width. & 0.01 \\ +yheight & m & ([-inf, inf]) vert . dimension of sample, as a height for cylinder/box & 0.01 \\ +zdepth & m & ([-inf, inf]) depth of sample & 0.005 \\ +R & m & Outer radius of sample in (x,z) plane for cylinder/sphere. & 0 \\ +target\_x & m & relative focus target position. & 0 \\ +target\_y & m & relative focus target position. & 0 \\ +target\_z & m & relative focus target position. & 1 \\ +target\_index & & Relative index of component to focus at, e.g. next is +1. & 1 \\ +focus\_xw & m & horiz. dimension of a rectangular area. & 0.5 \\ +focus\_yh & m & , vert. dimension of a rectangular area. & 0.5 \\ +focus\_aw & deg & , horiz. angular dimension of a rectangular area. & 0 \\ +focus\_ah & deg & , vert. angular dimension of a rectangular area. & 0 \\ +focus\_r & m & case of circular focusing, focusing radius. & 0 \\ +pd\_radius\_bell & & (0,inf) defined as (dx/x), where x is de mean value and dx the standard devition of the variable. & 0.0 \\ +pd\_radius & & (0,inf) defined as (dx/x), where x is de mean value and dx the standard devition of the variable. & 0.0 \\ +pd\_length & & (0,inf) defined as (dx/x), where x is de mean value and dx the standard devition of the variable. & 0.0 \\ +pd\_theta & & (0,360) defined as (dx/x), where x is de mean value and dx the standard devition of the variable. & 0.0 \\ +pd\_phi & & (0,360) defined as (dx/x), where x is de mean value and dx the standard devition of the variable & 0.0 \\ +\bottomrule +\end{longtable} + +\subsection*{Links} +\begin{itemize} + \item \href{run:/home/willend/willend-McCode/mcstas-comps/sasmodels/SasView_barbell_aniso.comp}{Source code} for \texttt{SasView\_barbell\_aniso.comp}. +\end{itemize} +\IfFileExists{SasView_barbell_aniso_static.tex}{\input{SasView_barbell_aniso_static.tex}}{} \ No newline at end of file diff --git a/docs/manuals/mcstas/sasmodels/SasView_bcc_paracrystal.tex b/docs/manuals/mcstas/sasmodels/SasView_bcc_paracrystal.tex new file mode 100644 index 000000000..b3695cba3 --- /dev/null +++ b/docs/manuals/mcstas/sasmodels/SasView_bcc_paracrystal.tex @@ -0,0 +1,60 @@ +\section{The \texttt{SasView\_bcc\_paracrystal} McStas Component} +SasView bcc\_paracrystal model component as sample description. + +\subsection*{Identification} +\begin{itemize} + \item \textbf{Site:} + \item \textbf{Author:} Jose Robledo + \item \textbf{Origin:} FZJ / DTU / ESS DMSC + \item \textbf{Date:} +\end{itemize} + +\subsection*{Description} +\begin{lstlisting} +SasView_bcc_paracrystal component, generated from bcc_paracrystal.c in sasmodels. + +Example: +SasView_bcc_paracrystal(dnn, d_factor, radius, sld, sld_solvent, +model_scale=1.0, model_abs=0.0, xwidth=0.01, yheight=0.01, zdepth=0.005, R=0, +int target_index=1, target_x=0, target_y=0, target_z=1, +focus_xw=0.5, focus_yh=0.5, focus_aw=0, focus_ah=0, focus_r=0, +pd_radius=0.0) +\end{lstlisting} + +\subsection*{Input parameters} +Parameters in \textbf{boldface} are required; the others are optional. + +\begin{longtable}{p{0.22\textwidth}p{0.12\textwidth}p{0.46\textwidth}p{0.14\textwidth}} +\toprule +\textbf{Name} & \textbf{Unit} & \textbf{Description} & \textbf{Default} \\ +\midrule +\endhead +dnn & Ang & ([-inf, inf]) Nearest neighbour distance. & 220 \\ +d\_factor & & ([-inf, inf]) Paracrystal distortion factor. & 0.06 \\ +radius & Ang & ([0, inf]) Particle radius. & 40 \\ +sld & 1e-6/Ang\textasciicircum{}2 & ([-inf, inf]) Particle scattering length density. & 4 \\ +sld\_solvent & 1e-6/Ang\textasciicircum{}2 & ([-inf, inf]) Solvent scattering length density. & 1 \\ +model\_scale & & Global scale factor for scattering kernel. For systems without inter-particle interference, the form factors can be related to the scattering intensity by the particle volume fraction. & 1.0 \\ +model\_abs & & Absorption cross section density at 2200 m/s. & 0.0 \\ +xwidth & m & ([-inf, inf]) Horiz. dimension of sample, as a width. & 0.01 \\ +yheight & m & ([-inf, inf]) vert . dimension of sample, as a height for cylinder/box & 0.01 \\ +zdepth & m & ([-inf, inf]) depth of sample & 0.005 \\ +R & m & Outer radius of sample in (x,z) plane for cylinder/sphere. & 0 \\ +target\_x & m & relative focus target position. & 0 \\ +target\_y & m & relative focus target position. & 0 \\ +target\_z & m & relative focus target position. & 1 \\ +target\_index & & Relative index of component to focus at, e.g. next is +1. & 1 \\ +focus\_xw & m & horiz. dimension of a rectangular area. & 0.5 \\ +focus\_yh & m & , vert. dimension of a rectangular area. & 0.5 \\ +focus\_aw & deg & , horiz. angular dimension of a rectangular area. & 0 \\ +focus\_ah & deg & , vert. angular dimension of a rectangular area. & 0 \\ +focus\_r & m & case of circular focusing, focusing radius. & 0 \\ +pd\_radius & & (0,inf) defined as (dx/x), where x is de mean value and dx the standard devition of the variable & 0.0 \\ +\bottomrule +\end{longtable} + +\subsection*{Links} +\begin{itemize} + \item \href{run:/home/willend/willend-McCode/mcstas-comps/sasmodels/SasView_bcc_paracrystal.comp}{Source code} for \texttt{SasView\_bcc\_paracrystal.comp}. +\end{itemize} +\IfFileExists{SasView_bcc_paracrystal_static.tex}{\input{SasView_bcc_paracrystal_static.tex}}{} \ No newline at end of file diff --git a/docs/manuals/mcstas/sasmodels/SasView_bcc_paracrystal_aniso.tex b/docs/manuals/mcstas/sasmodels/SasView_bcc_paracrystal_aniso.tex new file mode 100644 index 000000000..6f84b4f07 --- /dev/null +++ b/docs/manuals/mcstas/sasmodels/SasView_bcc_paracrystal_aniso.tex @@ -0,0 +1,66 @@ +\section{The \texttt{SasView\_bcc\_paracrystal\_aniso} McStas Component} +SasView bcc\_paracrystal model component as sample description. + +\subsection*{Identification} +\begin{itemize} + \item \textbf{Site:} + \item \textbf{Author:} Jose Robledo + \item \textbf{Origin:} FZJ / DTU / ESS DMSC + \item \textbf{Date:} +\end{itemize} + +\subsection*{Description} +\begin{lstlisting} +SasView_bcc_paracrystal component, generated from bcc_paracrystal.c in sasmodels. + +Example: +SasView_bcc_paracrystal_aniso(dnn, d_factor, radius, sld, sld_solvent, theta, phi, Psi, +model_scale=1.0, model_abs=0.0, xwidth=0.01, yheight=0.01, zdepth=0.005, R=0, +int target_index=1, target_x=0, target_y=0, target_z=1, +focus_xw=0.5, focus_yh=0.5, focus_aw=0, focus_ah=0, focus_r=0, +pd_radius=0.0, pd_theta=0.0, pd_phi=0.0, pd_Psi=0.0) +\end{lstlisting} + +\subsection*{Input parameters} +Parameters in \textbf{boldface} are required; the others are optional. + +\begin{longtable}{p{0.22\textwidth}p{0.12\textwidth}p{0.46\textwidth}p{0.14\textwidth}} +\toprule +\textbf{Name} & \textbf{Unit} & \textbf{Description} & \textbf{Default} \\ +\midrule +\endhead +dnn & Ang & ([-inf, inf]) Nearest neighbour distance. & 220 \\ +d\_factor & & ([-inf, inf]) Paracrystal distortion factor. & 0.06 \\ +radius & Ang & ([0, inf]) Particle radius. & 40 \\ +sld & 1e-6/Ang\textasciicircum{}2 & ([-inf, inf]) Particle scattering length density. & 4 \\ +sld\_solvent & 1e-6/Ang\textasciicircum{}2 & ([-inf, inf]) Solvent scattering length density. & 1 \\ +theta & & & 60 \\ +phi & & & 60 \\ +Psi & & & 60 \\ +model\_scale & & Global scale factor for scattering kernel. For systems without inter-particle interference, the form factors can be related to the scattering intensity by the particle volume fraction. & 1.0 \\ +model\_abs & & Absorption cross section density at 2200 m/s. & 0.0 \\ +xwidth & m & ([-inf, inf]) Horiz. dimension of sample, as a width. & 0.01 \\ +yheight & m & ([-inf, inf]) vert . dimension of sample, as a height for cylinder/box & 0.01 \\ +zdepth & m & ([-inf, inf]) depth of sample & 0.005 \\ +R & m & Outer radius of sample in (x,z) plane for cylinder/sphere. & 0 \\ +target\_x & m & relative focus target position. & 0 \\ +target\_y & m & relative focus target position. & 0 \\ +target\_z & m & relative focus target position. & 1 \\ +target\_index & & Relative index of component to focus at, e.g. next is +1. & 1 \\ +focus\_xw & m & horiz. dimension of a rectangular area. & 0.5 \\ +focus\_yh & m & , vert. dimension of a rectangular area. & 0.5 \\ +focus\_aw & deg & , horiz. angular dimension of a rectangular area. & 0 \\ +focus\_ah & deg & , vert. angular dimension of a rectangular area. & 0 \\ +focus\_r & m & case of circular focusing, focusing radius. & 0 \\ +pd\_radius & & (0,inf) defined as (dx/x), where x is de mean value and dx the standard devition of the variable. & 0.0 \\ +pd\_theta & & (0,360) defined as (dx/x), where x is de mean value and dx the standard devition of the variable. & 0.0 \\ +pd\_phi & & (0,360) defined as (dx/x), where x is de mean value and dx the standard devition of the variable. & 0.0 \\ +pd\_Psi & & (0,360) defined as (dx/x), where x is de mean value and dx the standard devition of the variable & 0.0 \\ +\bottomrule +\end{longtable} + +\subsection*{Links} +\begin{itemize} + \item \href{run:/home/willend/willend-McCode/mcstas-comps/sasmodels/SasView_bcc_paracrystal_aniso.comp}{Source code} for \texttt{SasView\_bcc\_paracrystal\_aniso.comp}. +\end{itemize} +\IfFileExists{SasView_bcc_paracrystal_aniso_static.tex}{\input{SasView_bcc_paracrystal_aniso_static.tex}}{} \ No newline at end of file diff --git a/docs/manuals/mcstas/sasmodels/SasView_binary_hard_sphere.tex b/docs/manuals/mcstas/sasmodels/SasView_binary_hard_sphere.tex new file mode 100644 index 000000000..7c932a70f --- /dev/null +++ b/docs/manuals/mcstas/sasmodels/SasView_binary_hard_sphere.tex @@ -0,0 +1,63 @@ +\section{The \texttt{SasView\_binary\_hard\_sphere} McStas Component} +SasView binary\_hard\_sphere model component as sample description. + +\subsection*{Identification} +\begin{itemize} + \item \textbf{Site:} + \item \textbf{Author:} Jose Robledo + \item \textbf{Origin:} FZJ / DTU / ESS DMSC + \item \textbf{Date:} +\end{itemize} + +\subsection*{Description} +\begin{lstlisting} +SasView_binary_hard_sphere component, generated from binary_hard_sphere.c in sasmodels. + +Example: +SasView_binary_hard_sphere(radius_lg, radius_sm, volfraction_lg, volfraction_sm, sld_lg, sld_sm, sld_solvent, +model_scale=1.0, model_abs=0.0, xwidth=0.01, yheight=0.01, zdepth=0.005, R=0, +int target_index=1, target_x=0, target_y=0, target_z=1, +focus_xw=0.5, focus_yh=0.5, focus_aw=0, focus_ah=0, focus_r=0, +pd_radius_lg=0.0, pd_radius_sm=0.0) +\end{lstlisting} + +\subsection*{Input parameters} +Parameters in \textbf{boldface} are required; the others are optional. + +\begin{longtable}{p{0.22\textwidth}p{0.12\textwidth}p{0.46\textwidth}p{0.14\textwidth}} +\toprule +\textbf{Name} & \textbf{Unit} & \textbf{Description} & \textbf{Default} \\ +\midrule +\endhead +radius\_lg & Ang & ([0, inf]) radius of large particle. & 100 \\ +radius\_sm & Ang & ([0, inf]) radius of small particle. & 25 \\ +volfraction\_lg & & ([0, 1]) volume fraction of large particle. & 0.1 \\ +volfraction\_sm & & ([0, 1]) volume fraction of small particle. & 0.2 \\ +sld\_lg & 1e-6/Ang\textasciicircum{}2 & ([-inf, inf]) scattering length density of large particle. & 3.5 \\ +sld\_sm & 1e-6/Ang\textasciicircum{}2 & ([-inf, inf]) scattering length density of small particle. & 0.5 \\ +sld\_solvent & 1e-6/Ang\textasciicircum{}2 & ([-inf, inf]) Solvent scattering length density. & 6.36 \\ +model\_scale & & Global scale factor for scattering kernel. For systems without inter-particle interference, the form factors can be related to the scattering intensity by the particle volume fraction. & 1.0 \\ +model\_abs & & Absorption cross section density at 2200 m/s. & 0.0 \\ +xwidth & m & ([-inf, inf]) Horiz. dimension of sample, as a width. & 0.01 \\ +yheight & m & ([-inf, inf]) vert . dimension of sample, as a height for cylinder/box & 0.01 \\ +zdepth & m & ([-inf, inf]) depth of sample & 0.005 \\ +R & m & Outer radius of sample in (x,z) plane for cylinder/sphere. & 0 \\ +target\_x & m & relative focus target position. & 0 \\ +target\_y & m & relative focus target position. & 0 \\ +target\_z & m & relative focus target position. & 1 \\ +target\_index & & Relative index of component to focus at, e.g. next is +1. & 1 \\ +focus\_xw & m & horiz. dimension of a rectangular area. & 0.5 \\ +focus\_yh & m & , vert. dimension of a rectangular area. & 0.5 \\ +focus\_aw & deg & , horiz. angular dimension of a rectangular area. & 0 \\ +focus\_ah & deg & , vert. angular dimension of a rectangular area. & 0 \\ +focus\_r & m & case of circular focusing, focusing radius. & 0 \\ +pd\_radius\_lg & & (0,inf) defined as (dx/x), where x is de mean value and dx the standard devition of the variable. & 0.0 \\ +pd\_radius\_sm & & (0,inf) defined as (dx/x), where x is de mean value and dx the standard devition of the variable & 0.0 \\ +\bottomrule +\end{longtable} + +\subsection*{Links} +\begin{itemize} + \item \href{run:/home/willend/willend-McCode/mcstas-comps/sasmodels/SasView_binary_hard_sphere.comp}{Source code} for \texttt{SasView\_binary\_hard\_sphere.comp}. +\end{itemize} +\IfFileExists{SasView_binary_hard_sphere_static.tex}{\input{SasView_binary_hard_sphere_static.tex}}{} \ No newline at end of file diff --git a/docs/manuals/mcstas/sasmodels/SasView_broad_peak.tex b/docs/manuals/mcstas/sasmodels/SasView_broad_peak.tex new file mode 100644 index 000000000..157915cfa --- /dev/null +++ b/docs/manuals/mcstas/sasmodels/SasView_broad_peak.tex @@ -0,0 +1,62 @@ +\section{The \texttt{SasView\_broad\_peak} McStas Component} +SasView broad\_peak model component as sample description. + +\subsection*{Identification} +\begin{itemize} + \item \textbf{Site:} + \item \textbf{Author:} Jose Robledo + \item \textbf{Origin:} FZJ / DTU / ESS DMSC + \item \textbf{Date:} +\end{itemize} + +\subsection*{Description} +\begin{lstlisting} +SasView_broad_peak component, generated from broad_peak.c in sasmodels. + +Example: +SasView_broad_peak(porod_scale, porod_exp, peak_scale, correlation_length, peak_pos, width_exp, shape_exp, +model_scale=1.0, model_abs=0.0, xwidth=0.01, yheight=0.01, zdepth=0.005, R=0, +int target_index=1, target_x=0, target_y=0, target_z=1, +focus_xw=0.5, focus_yh=0.5, focus_aw=0, focus_ah=0, focus_r=0, +pd_correlation_length=0.0) +\end{lstlisting} + +\subsection*{Input parameters} +Parameters in \textbf{boldface} are required; the others are optional. + +\begin{longtable}{p{0.22\textwidth}p{0.12\textwidth}p{0.46\textwidth}p{0.14\textwidth}} +\toprule +\textbf{Name} & \textbf{Unit} & \textbf{Description} & \textbf{Default} \\ +\midrule +\endhead +porod\_scale & & ([-inf, inf]) Power law scale factor. & 1e-05 \\ +porod\_exp & & ([-inf, inf]) Exponent of power law. & 3.0 \\ +peak\_scale & & ([-inf, inf]) Scale factor for broad peak. & 10.0 \\ +correlation\_length & Ang & ([-inf, inf]) screening length. & 50.0 \\ +peak\_pos & 1/Ang & ([-inf, inf]) Peak position in q. & 0.1 \\ +width\_exp & & ([-inf, inf]) Exponent of peak width. & 2.0 \\ +shape\_exp & & ([-inf, inf]) Exponent of peak shape. & 1.0 \\ +model\_scale & & Global scale factor for scattering kernel. For systems without inter-particle interference, the form factors can be related to the scattering intensity by the particle volume fraction. & 1.0 \\ +model\_abs & & Absorption cross section density at 2200 m/s. & 0.0 \\ +xwidth & m & ([-inf, inf]) Horiz. dimension of sample, as a width. & 0.01 \\ +yheight & m & ([-inf, inf]) vert . dimension of sample, as a height for cylinder/box & 0.01 \\ +zdepth & m & ([-inf, inf]) depth of sample & 0.005 \\ +R & m & Outer radius of sample in (x,z) plane for cylinder/sphere. & 0 \\ +target\_x & m & relative focus target position. & 0 \\ +target\_y & m & relative focus target position. & 0 \\ +target\_z & m & relative focus target position. & 1 \\ +target\_index & & Relative index of component to focus at, e.g. next is +1. & 1 \\ +focus\_xw & m & horiz. dimension of a rectangular area. & 0.5 \\ +focus\_yh & m & , vert. dimension of a rectangular area. & 0.5 \\ +focus\_aw & deg & , horiz. angular dimension of a rectangular area. & 0 \\ +focus\_ah & deg & , vert. angular dimension of a rectangular area. & 0 \\ +focus\_r & m & case of circular focusing, focusing radius. & 0 \\ +pd\_correlation\_length & & (0,inf) defined as (dx/x), where x is de mean value and dx the standard devition of the variable & 0.0 \\ +\bottomrule +\end{longtable} + +\subsection*{Links} +\begin{itemize} + \item \href{run:/home/willend/willend-McCode/mcstas-comps/sasmodels/SasView_broad_peak.comp}{Source code} for \texttt{SasView\_broad\_peak.comp}. +\end{itemize} +\IfFileExists{SasView_broad_peak_static.tex}{\input{SasView_broad_peak_static.tex}}{} \ No newline at end of file diff --git a/docs/manuals/mcstas/sasmodels/SasView_capped_cylinder.tex b/docs/manuals/mcstas/sasmodels/SasView_capped_cylinder.tex new file mode 100644 index 000000000..17d5f7012 --- /dev/null +++ b/docs/manuals/mcstas/sasmodels/SasView_capped_cylinder.tex @@ -0,0 +1,62 @@ +\section{The \texttt{SasView\_capped\_cylinder} McStas Component} +SasView capped\_cylinder model component as sample description. + +\subsection*{Identification} +\begin{itemize} + \item \textbf{Site:} + \item \textbf{Author:} Jose Robledo + \item \textbf{Origin:} FZJ / DTU / ESS DMSC + \item \textbf{Date:} +\end{itemize} + +\subsection*{Description} +\begin{lstlisting} +SasView_capped_cylinder component, generated from capped_cylinder.c in sasmodels. + +Example: +SasView_capped_cylinder(sld, sld_solvent, radius, radius_cap, length, +model_scale=1.0, model_abs=0.0, xwidth=0.01, yheight=0.01, zdepth=0.005, R=0, +int target_index=1, target_x=0, target_y=0, target_z=1, +focus_xw=0.5, focus_yh=0.5, focus_aw=0, focus_ah=0, focus_r=0, +pd_radius=0.0, pd_radius_cap=0.0, pd_length=0.0) +\end{lstlisting} + +\subsection*{Input parameters} +Parameters in \textbf{boldface} are required; the others are optional. + +\begin{longtable}{p{0.22\textwidth}p{0.12\textwidth}p{0.46\textwidth}p{0.14\textwidth}} +\toprule +\textbf{Name} & \textbf{Unit} & \textbf{Description} & \textbf{Default} \\ +\midrule +\endhead +sld & 1e-6/Ang\textasciicircum{}2 & ([-inf, inf]) Cylinder scattering length density. & 4 \\ +sld\_solvent & 1e-6/Ang\textasciicircum{}2 & ([-inf, inf]) Solvent scattering length density. & 1 \\ +radius & Ang & ([0, inf]) Cylinder radius. & 20 \\ +radius\_cap & Ang & ([0, inf]) Cap radius. & 20 \\ +length & Ang & ([0, inf]) Cylinder length. & 400 \\ +model\_scale & & Global scale factor for scattering kernel. For systems without inter-particle interference, the form factors can be related to the scattering intensity by the particle volume fraction. & 1.0 \\ +model\_abs & & Absorption cross section density at 2200 m/s. & 0.0 \\ +xwidth & m & ([-inf, inf]) Horiz. dimension of sample, as a width. & 0.01 \\ +yheight & m & ([-inf, inf]) vert . dimension of sample, as a height for cylinder/box & 0.01 \\ +zdepth & m & ([-inf, inf]) depth of sample & 0.005 \\ +R & m & Outer radius of sample in (x,z) plane for cylinder/sphere. & 0 \\ +target\_x & m & relative focus target position. & 0 \\ +target\_y & m & relative focus target position. & 0 \\ +target\_z & m & relative focus target position. & 1 \\ +target\_index & & Relative index of component to focus at, e.g. next is +1. & 1 \\ +focus\_xw & m & horiz. dimension of a rectangular area. & 0.5 \\ +focus\_yh & m & , vert. dimension of a rectangular area. & 0.5 \\ +focus\_aw & deg & , horiz. angular dimension of a rectangular area. & 0 \\ +focus\_ah & deg & , vert. angular dimension of a rectangular area. & 0 \\ +focus\_r & m & case of circular focusing, focusing radius. & 0 \\ +pd\_radius & & (0,inf) defined as (dx/x), where x is de mean value and dx the standard devition of the variable. & 0.0 \\ +pd\_radius\_cap & & (0,inf) defined as (dx/x), where x is de mean value and dx the standard devition of the variable. & 0.0 \\ +pd\_length & & (0,inf) defined as (dx/x), where x is de mean value and dx the standard devition of the variable & 0.0 \\ +\bottomrule +\end{longtable} + +\subsection*{Links} +\begin{itemize} + \item \href{run:/home/willend/willend-McCode/mcstas-comps/sasmodels/SasView_capped_cylinder.comp}{Source code} for \texttt{SasView\_capped\_cylinder.comp}. +\end{itemize} +\IfFileExists{SasView_capped_cylinder_static.tex}{\input{SasView_capped_cylinder_static.tex}}{} \ No newline at end of file diff --git a/docs/manuals/mcstas/sasmodels/SasView_capped_cylinder_aniso.tex b/docs/manuals/mcstas/sasmodels/SasView_capped_cylinder_aniso.tex new file mode 100644 index 000000000..daadb8948 --- /dev/null +++ b/docs/manuals/mcstas/sasmodels/SasView_capped_cylinder_aniso.tex @@ -0,0 +1,66 @@ +\section{The \texttt{SasView\_capped\_cylinder\_aniso} McStas Component} +SasView capped\_cylinder model component as sample description. + +\subsection*{Identification} +\begin{itemize} + \item \textbf{Site:} + \item \textbf{Author:} Jose Robledo + \item \textbf{Origin:} FZJ / DTU / ESS DMSC + \item \textbf{Date:} +\end{itemize} + +\subsection*{Description} +\begin{lstlisting} +SasView_capped_cylinder component, generated from capped_cylinder.c in sasmodels. + +Example: +SasView_capped_cylinder_aniso(sld, sld_solvent, radius, radius_cap, length, theta, phi, +model_scale=1.0, model_abs=0.0, xwidth=0.01, yheight=0.01, zdepth=0.005, R=0, +int target_index=1, target_x=0, target_y=0, target_z=1, +focus_xw=0.5, focus_yh=0.5, focus_aw=0, focus_ah=0, focus_r=0, +pd_radius=0.0, pd_radius_cap=0.0, pd_length=0.0, pd_theta=0.0, pd_phi=0.0) +\end{lstlisting} + +\subsection*{Input parameters} +Parameters in \textbf{boldface} are required; the others are optional. + +\begin{longtable}{p{0.22\textwidth}p{0.12\textwidth}p{0.46\textwidth}p{0.14\textwidth}} +\toprule +\textbf{Name} & \textbf{Unit} & \textbf{Description} & \textbf{Default} \\ +\midrule +\endhead +sld & 1e-6/Ang\textasciicircum{}2 & ([-inf, inf]) Cylinder scattering length density. & 4 \\ +sld\_solvent & 1e-6/Ang\textasciicircum{}2 & ([-inf, inf]) Solvent scattering length density. & 1 \\ +radius & Ang & ([0, inf]) Cylinder radius. & 20 \\ +radius\_cap & Ang & ([0, inf]) Cap radius. & 20 \\ +length & Ang & ([0, inf]) Cylinder length. & 400 \\ +theta & & & 60 \\ +phi & & & 60 \\ +model\_scale & & Global scale factor for scattering kernel. For systems without inter-particle interference, the form factors can be related to the scattering intensity by the particle volume fraction. & 1.0 \\ +model\_abs & & Absorption cross section density at 2200 m/s. & 0.0 \\ +xwidth & m & ([-inf, inf]) Horiz. dimension of sample, as a width. & 0.01 \\ +yheight & m & ([-inf, inf]) vert . dimension of sample, as a height for cylinder/box & 0.01 \\ +zdepth & m & ([-inf, inf]) depth of sample & 0.005 \\ +R & m & Outer radius of sample in (x,z) plane for cylinder/sphere. & 0 \\ +target\_x & m & relative focus target position. & 0 \\ +target\_y & m & relative focus target position. & 0 \\ +target\_z & m & relative focus target position. & 1 \\ +target\_index & & Relative index of component to focus at, e.g. next is +1. & 1 \\ +focus\_xw & m & horiz. dimension of a rectangular area. & 0.5 \\ +focus\_yh & m & , vert. dimension of a rectangular area. & 0.5 \\ +focus\_aw & deg & , horiz. angular dimension of a rectangular area. & 0 \\ +focus\_ah & deg & , vert. angular dimension of a rectangular area. & 0 \\ +focus\_r & m & case of circular focusing, focusing radius. & 0 \\ +pd\_radius & & (0,inf) defined as (dx/x), where x is de mean value and dx the standard devition of the variable. & 0.0 \\ +pd\_radius\_cap & & (0,inf) defined as (dx/x), where x is de mean value and dx the standard devition of the variable. & 0.0 \\ +pd\_length & & (0,inf) defined as (dx/x), where x is de mean value and dx the standard devition of the variable. & 0.0 \\ +pd\_theta & & (0,360) defined as (dx/x), where x is de mean value and dx the standard devition of the variable. & 0.0 \\ +pd\_phi & & (0,360) defined as (dx/x), where x is de mean value and dx the standard devition of the variable & 0.0 \\ +\bottomrule +\end{longtable} + +\subsection*{Links} +\begin{itemize} + \item \href{run:/home/willend/willend-McCode/mcstas-comps/sasmodels/SasView_capped_cylinder_aniso.comp}{Source code} for \texttt{SasView\_capped\_cylinder\_aniso.comp}. +\end{itemize} +\IfFileExists{SasView_capped_cylinder_aniso_static.tex}{\input{SasView_capped_cylinder_aniso_static.tex}}{} \ No newline at end of file diff --git a/docs/manuals/mcstas/sasmodels/SasView_core_multi_shell.tex b/docs/manuals/mcstas/sasmodels/SasView_core_multi_shell.tex new file mode 100644 index 000000000..021698f38 --- /dev/null +++ b/docs/manuals/mcstas/sasmodels/SasView_core_multi_shell.tex @@ -0,0 +1,39 @@ +\section{The \texttt{SasView\_core\_multi\_shell} McStas Component} +SasView core\_multi\_shell model component as sample description. + +\subsection*{Identification} +\begin{itemize} + \item \textbf{Site:} + \item \textbf{Author:} Jose Robledo + \item \textbf{Origin:} FZJ / DTU / ESS DMSC + \item \textbf{Date:} +\end{itemize} + +\subsection*{Description} +\begin{lstlisting} +SasView_core_multi_shell component, generated from core_multi_shell.c in sasmodels. + +Example: +SasView_core_multi_shell(sld_core, radius, sld_solvent, n, sld[n], thickness[n], +model_scale=1.0, model_abs=0.0, xwidth=0.01, yheight=0.01, zdepth=0.005, R=0, +int target_index=1, target_x=0, target_y=0, target_z=1, +focus_xw=0.5, focus_yh=0.5, focus_aw=0, focus_ah=0, focus_r=0, +pd_radius=0.0, pd_thickness[n]=0.0) +\end{lstlisting} + +\subsection*{Input parameters} +Parameters in \textbf{boldface} are required; the others are optional. + +\begin{longtable}{p{0.22\textwidth}p{0.12\textwidth}p{0.46\textwidth}p{0.14\textwidth}} +\toprule +\textbf{Name} & \textbf{Unit} & \textbf{Description} & \textbf{Default} \\ +\midrule +\endhead +\bottomrule +\end{longtable} + +\subsection*{Links} +\begin{itemize} + \item \href{run:/home/willend/willend-McCode/mcstas-comps/sasmodels/SasView_core_multi_shell.comp}{Source code} for \texttt{SasView\_core\_multi\_shell.comp}. +\end{itemize} +\IfFileExists{SasView_core_multi_shell_static.tex}{\input{SasView_core_multi_shell_static.tex}}{} \ No newline at end of file diff --git a/docs/manuals/mcstas/sasmodels/SasView_core_shell_bicelle.tex b/docs/manuals/mcstas/sasmodels/SasView_core_shell_bicelle.tex new file mode 100644 index 000000000..ab2a27e2c --- /dev/null +++ b/docs/manuals/mcstas/sasmodels/SasView_core_shell_bicelle.tex @@ -0,0 +1,66 @@ +\section{The \texttt{SasView\_core\_shell\_bicelle} McStas Component} +SasView core\_shell\_bicelle model component as sample description. + +\subsection*{Identification} +\begin{itemize} + \item \textbf{Site:} + \item \textbf{Author:} Jose Robledo + \item \textbf{Origin:} FZJ / DTU / ESS DMSC + \item \textbf{Date:} +\end{itemize} + +\subsection*{Description} +\begin{lstlisting} +SasView_core_shell_bicelle component, generated from core_shell_bicelle.c in sasmodels. + +Example: +SasView_core_shell_bicelle(radius, thick_rim, thick_face, length, sld_core, sld_face, sld_rim, sld_solvent, +model_scale=1.0, model_abs=0.0, xwidth=0.01, yheight=0.01, zdepth=0.005, R=0, +int target_index=1, target_x=0, target_y=0, target_z=1, +focus_xw=0.5, focus_yh=0.5, focus_aw=0, focus_ah=0, focus_r=0, +pd_radius=0.0, pd_thick_rim=0.0, pd_thick_face=0.0, pd_length=0.0) +\end{lstlisting} + +\subsection*{Input parameters} +Parameters in \textbf{boldface} are required; the others are optional. + +\begin{longtable}{p{0.22\textwidth}p{0.12\textwidth}p{0.46\textwidth}p{0.14\textwidth}} +\toprule +\textbf{Name} & \textbf{Unit} & \textbf{Description} & \textbf{Default} \\ +\midrule +\endhead +radius & Ang & ([0, inf]) Cylinder core radius. & 80 \\ +thick\_rim & Ang & ([0, inf]) Rim shell thickness. & 10 \\ +thick\_face & Ang & ([0, inf]) Cylinder face thickness. & 10 \\ +length & Ang & ([0, inf]) Cylinder length. & 50 \\ +sld\_core & 1e-6/Ang\textasciicircum{}2 & ([-inf, inf]) Cylinder core scattering length density. & 1 \\ +sld\_face & 1e-6/Ang\textasciicircum{}2 & ([-inf, inf]) Cylinder face scattering length density. & 4 \\ +sld\_rim & 1e-6/Ang\textasciicircum{}2 & ([-inf, inf]) Cylinder rim scattering length density. & 4 \\ +sld\_solvent & 1e-6/Ang\textasciicircum{}2 & ([-inf, inf]) Solvent scattering length density. & 1 \\ +model\_scale & & Global scale factor for scattering kernel. For systems without inter-particle interference, the form factors can be related to the scattering intensity by the particle volume fraction. & 1.0 \\ +model\_abs & & Absorption cross section density at 2200 m/s. & 0.0 \\ +xwidth & m & ([-inf, inf]) Horiz. dimension of sample, as a width. & 0.01 \\ +yheight & m & ([-inf, inf]) vert . dimension of sample, as a height for cylinder/box & 0.01 \\ +zdepth & m & ([-inf, inf]) depth of sample & 0.005 \\ +R & m & Outer radius of sample in (x,z) plane for cylinder/sphere. & 0 \\ +target\_x & m & relative focus target position. & 0 \\ +target\_y & m & relative focus target position. & 0 \\ +target\_z & m & relative focus target position. & 1 \\ +target\_index & & Relative index of component to focus at, e.g. next is +1. & 1 \\ +focus\_xw & m & horiz. dimension of a rectangular area. & 0.5 \\ +focus\_yh & m & , vert. dimension of a rectangular area. & 0.5 \\ +focus\_aw & deg & , horiz. angular dimension of a rectangular area. & 0 \\ +focus\_ah & deg & , vert. angular dimension of a rectangular area. & 0 \\ +focus\_r & m & case of circular focusing, focusing radius. & 0 \\ +pd\_radius & & (0,inf) defined as (dx/x), where x is de mean value and dx the standard devition of the variable. & 0.0 \\ +pd\_thick\_rim & & (0,inf) defined as (dx/x), where x is de mean value and dx the standard devition of the variable. & 0.0 \\ +pd\_thick\_face & & (0,inf) defined as (dx/x), where x is de mean value and dx the standard devition of the variable. & 0.0 \\ +pd\_length & & (0,inf) defined as (dx/x), where x is de mean value and dx the standard devition of the variable & 0.0 \\ +\bottomrule +\end{longtable} + +\subsection*{Links} +\begin{itemize} + \item \href{run:/home/willend/willend-McCode/mcstas-comps/sasmodels/SasView_core_shell_bicelle.comp}{Source code} for \texttt{SasView\_core\_shell\_bicelle.comp}. +\end{itemize} +\IfFileExists{SasView_core_shell_bicelle_static.tex}{\input{SasView_core_shell_bicelle_static.tex}}{} \ No newline at end of file diff --git a/docs/manuals/mcstas/sasmodels/SasView_core_shell_bicelle_aniso.tex b/docs/manuals/mcstas/sasmodels/SasView_core_shell_bicelle_aniso.tex new file mode 100644 index 000000000..174226763 --- /dev/null +++ b/docs/manuals/mcstas/sasmodels/SasView_core_shell_bicelle_aniso.tex @@ -0,0 +1,70 @@ +\section{The \texttt{SasView\_core\_shell\_bicelle\_aniso} McStas Component} +SasView core\_shell\_bicelle model component as sample description. + +\subsection*{Identification} +\begin{itemize} + \item \textbf{Site:} + \item \textbf{Author:} Jose Robledo + \item \textbf{Origin:} FZJ / DTU / ESS DMSC + \item \textbf{Date:} +\end{itemize} + +\subsection*{Description} +\begin{lstlisting} +SasView_core_shell_bicelle component, generated from core_shell_bicelle.c in sasmodels. + +Example: +SasView_core_shell_bicelle_aniso(radius, thick_rim, thick_face, length, sld_core, sld_face, sld_rim, sld_solvent, theta, phi, +model_scale=1.0, model_abs=0.0, xwidth=0.01, yheight=0.01, zdepth=0.005, R=0, +int target_index=1, target_x=0, target_y=0, target_z=1, +focus_xw=0.5, focus_yh=0.5, focus_aw=0, focus_ah=0, focus_r=0, +pd_radius=0.0, pd_thick_rim=0.0, pd_thick_face=0.0, pd_length=0.0, pd_theta=0.0, pd_phi=0.0) +\end{lstlisting} + +\subsection*{Input parameters} +Parameters in \textbf{boldface} are required; the others are optional. + +\begin{longtable}{p{0.22\textwidth}p{0.12\textwidth}p{0.46\textwidth}p{0.14\textwidth}} +\toprule +\textbf{Name} & \textbf{Unit} & \textbf{Description} & \textbf{Default} \\ +\midrule +\endhead +radius & Ang & ([0, inf]) Cylinder core radius. & 80 \\ +thick\_rim & Ang & ([0, inf]) Rim shell thickness. & 10 \\ +thick\_face & Ang & ([0, inf]) Cylinder face thickness. & 10 \\ +length & Ang & ([0, inf]) Cylinder length. & 50 \\ +sld\_core & 1e-6/Ang\textasciicircum{}2 & ([-inf, inf]) Cylinder core scattering length density. & 1 \\ +sld\_face & 1e-6/Ang\textasciicircum{}2 & ([-inf, inf]) Cylinder face scattering length density. & 4 \\ +sld\_rim & 1e-6/Ang\textasciicircum{}2 & ([-inf, inf]) Cylinder rim scattering length density. & 4 \\ +sld\_solvent & 1e-6/Ang\textasciicircum{}2 & ([-inf, inf]) Solvent scattering length density. & 1 \\ +theta & & & 90 \\ +phi & & & 0 \\ +model\_scale & & Global scale factor for scattering kernel. For systems without inter-particle interference, the form factors can be related to the scattering intensity by the particle volume fraction. & 1.0 \\ +model\_abs & & Absorption cross section density at 2200 m/s. & 0.0 \\ +xwidth & m & ([-inf, inf]) Horiz. dimension of sample, as a width. & 0.01 \\ +yheight & m & ([-inf, inf]) vert . dimension of sample, as a height for cylinder/box & 0.01 \\ +zdepth & m & ([-inf, inf]) depth of sample & 0.005 \\ +R & m & Outer radius of sample in (x,z) plane for cylinder/sphere. & 0 \\ +target\_x & m & relative focus target position. & 0 \\ +target\_y & m & relative focus target position. & 0 \\ +target\_z & m & relative focus target position. & 1 \\ +target\_index & & Relative index of component to focus at, e.g. next is +1. & 1 \\ +focus\_xw & m & horiz. dimension of a rectangular area. & 0.5 \\ +focus\_yh & m & , vert. dimension of a rectangular area. & 0.5 \\ +focus\_aw & deg & , horiz. angular dimension of a rectangular area. & 0 \\ +focus\_ah & deg & , vert. angular dimension of a rectangular area. & 0 \\ +focus\_r & m & case of circular focusing, focusing radius. & 0 \\ +pd\_radius & & (0,inf) defined as (dx/x), where x is de mean value and dx the standard devition of the variable. & 0.0 \\ +pd\_thick\_rim & & (0,inf) defined as (dx/x), where x is de mean value and dx the standard devition of the variable. & 0.0 \\ +pd\_thick\_face & & (0,inf) defined as (dx/x), where x is de mean value and dx the standard devition of the variable. & 0.0 \\ +pd\_length & & (0,inf) defined as (dx/x), where x is de mean value and dx the standard devition of the variable. & 0.0 \\ +pd\_theta & & (0,360) defined as (dx/x), where x is de mean value and dx the standard devition of the variable. & 0.0 \\ +pd\_phi & & (0,360) defined as (dx/x), where x is de mean value and dx the standard devition of the variable & 0.0 \\ +\bottomrule +\end{longtable} + +\subsection*{Links} +\begin{itemize} + \item \href{run:/home/willend/willend-McCode/mcstas-comps/sasmodels/SasView_core_shell_bicelle_aniso.comp}{Source code} for \texttt{SasView\_core\_shell\_bicelle\_aniso.comp}. +\end{itemize} +\IfFileExists{SasView_core_shell_bicelle_aniso_static.tex}{\input{SasView_core_shell_bicelle_aniso_static.tex}}{} \ No newline at end of file diff --git a/docs/manuals/mcstas/sasmodels/SasView_core_shell_bicelle_elliptical.tex b/docs/manuals/mcstas/sasmodels/SasView_core_shell_bicelle_elliptical.tex new file mode 100644 index 000000000..a66d58b9b --- /dev/null +++ b/docs/manuals/mcstas/sasmodels/SasView_core_shell_bicelle_elliptical.tex @@ -0,0 +1,67 @@ +\section{The \texttt{SasView\_core\_shell\_bicelle\_elliptical} McStas Component} +SasView core\_shell\_bicelle\_elliptical model component as sample description. + +\subsection*{Identification} +\begin{itemize} + \item \textbf{Site:} + \item \textbf{Author:} Jose Robledo + \item \textbf{Origin:} FZJ / DTU / ESS DMSC + \item \textbf{Date:} +\end{itemize} + +\subsection*{Description} +\begin{lstlisting} +SasView_core_shell_bicelle_elliptical component, generated from core_shell_bicelle_elliptical.c in sasmodels. + +Example: +SasView_core_shell_bicelle_elliptical(radius, x_core, thick_rim, thick_face, length, sld_core, sld_face, sld_rim, sld_solvent, +model_scale=1.0, model_abs=0.0, xwidth=0.01, yheight=0.01, zdepth=0.005, R=0, +int target_index=1, target_x=0, target_y=0, target_z=1, +focus_xw=0.5, focus_yh=0.5, focus_aw=0, focus_ah=0, focus_r=0, +pd_radius=0.0, pd_thick_rim=0.0, pd_thick_face=0.0, pd_length=0.0) +\end{lstlisting} + +\subsection*{Input parameters} +Parameters in \textbf{boldface} are required; the others are optional. + +\begin{longtable}{p{0.22\textwidth}p{0.12\textwidth}p{0.46\textwidth}p{0.14\textwidth}} +\toprule +\textbf{Name} & \textbf{Unit} & \textbf{Description} & \textbf{Default} \\ +\midrule +\endhead +radius & Ang & ([0, inf]) Cylinder core radius r\_minor. & 30 \\ +x\_core & None & ([0, inf]) Axial ratio of core, X = r\_major/r\_minor. & 3 \\ +thick\_rim & Ang & ([0, inf]) Rim shell thickness. & 8 \\ +thick\_face & Ang & ([0, inf]) Cylinder face thickness. & 14 \\ +length & Ang & ([0, inf]) Cylinder length. & 50 \\ +sld\_core & 1e-6/Ang\textasciicircum{}2 & ([-inf, inf]) Cylinder core scattering length density. & 4 \\ +sld\_face & 1e-6/Ang\textasciicircum{}2 & ([-inf, inf]) Cylinder face scattering length density. & 7 \\ +sld\_rim & 1e-6/Ang\textasciicircum{}2 & ([-inf, inf]) Cylinder rim scattering length density. & 1 \\ +sld\_solvent & 1e-6/Ang\textasciicircum{}2 & ([-inf, inf]) Solvent scattering length density. & 6 \\ +model\_scale & & Global scale factor for scattering kernel. For systems without inter-particle interference, the form factors can be related to the scattering intensity by the particle volume fraction. & 1.0 \\ +model\_abs & & Absorption cross section density at 2200 m/s. & 0.0 \\ +xwidth & m & ([-inf, inf]) Horiz. dimension of sample, as a width. & 0.01 \\ +yheight & m & ([-inf, inf]) vert . dimension of sample, as a height for cylinder/box & 0.01 \\ +zdepth & m & ([-inf, inf]) depth of sample & 0.005 \\ +R & m & Outer radius of sample in (x,z) plane for cylinder/sphere. & 0 \\ +target\_x & m & relative focus target position. & 0 \\ +target\_y & m & relative focus target position. & 0 \\ +target\_z & m & relative focus target position. & 1 \\ +target\_index & & Relative index of component to focus at, e.g. next is +1. & 1 \\ +focus\_xw & m & horiz. dimension of a rectangular area. & 0.5 \\ +focus\_yh & m & , vert. dimension of a rectangular area. & 0.5 \\ +focus\_aw & deg & , horiz. angular dimension of a rectangular area. & 0 \\ +focus\_ah & deg & , vert. angular dimension of a rectangular area. & 0 \\ +focus\_r & m & case of circular focusing, focusing radius. & 0 \\ +pd\_radius & & (0,inf) defined as (dx/x), where x is de mean value and dx the standard devition of the variable. & 0.0 \\ +pd\_thick\_rim & & (0,inf) defined as (dx/x), where x is de mean value and dx the standard devition of the variable. & 0.0 \\ +pd\_thick\_face & & (0,inf) defined as (dx/x), where x is de mean value and dx the standard devition of the variable. & 0.0 \\ +pd\_length & & (0,inf) defined as (dx/x), where x is de mean value and dx the standard devition of the variable & 0.0 \\ +\bottomrule +\end{longtable} + +\subsection*{Links} +\begin{itemize} + \item \href{run:/home/willend/willend-McCode/mcstas-comps/sasmodels/SasView_core_shell_bicelle_elliptical.comp}{Source code} for \texttt{SasView\_core\_shell\_bicelle\_elliptical.comp}. +\end{itemize} +\IfFileExists{SasView_core_shell_bicelle_elliptical_static.tex}{\input{SasView_core_shell_bicelle_elliptical_static.tex}}{} \ No newline at end of file diff --git a/docs/manuals/mcstas/sasmodels/SasView_core_shell_bicelle_elliptical_aniso.tex b/docs/manuals/mcstas/sasmodels/SasView_core_shell_bicelle_elliptical_aniso.tex new file mode 100644 index 000000000..eb9306593 --- /dev/null +++ b/docs/manuals/mcstas/sasmodels/SasView_core_shell_bicelle_elliptical_aniso.tex @@ -0,0 +1,73 @@ +\section{The \texttt{SasView\_core\_shell\_bicelle\_elliptical\_aniso} McStas Component} +SasView core\_shell\_bicelle\_elliptical model component as sample description. + +\subsection*{Identification} +\begin{itemize} + \item \textbf{Site:} + \item \textbf{Author:} Jose Robledo + \item \textbf{Origin:} FZJ / DTU / ESS DMSC + \item \textbf{Date:} +\end{itemize} + +\subsection*{Description} +\begin{lstlisting} +SasView_core_shell_bicelle_elliptical component, generated from core_shell_bicelle_elliptical.c in sasmodels. + +Example: +SasView_core_shell_bicelle_elliptical_aniso(radius, x_core, thick_rim, thick_face, length, sld_core, sld_face, sld_rim, sld_solvent, theta, phi, Psi, +model_scale=1.0, model_abs=0.0, xwidth=0.01, yheight=0.01, zdepth=0.005, R=0, +int target_index=1, target_x=0, target_y=0, target_z=1, +focus_xw=0.5, focus_yh=0.5, focus_aw=0, focus_ah=0, focus_r=0, +pd_radius=0.0, pd_thick_rim=0.0, pd_thick_face=0.0, pd_length=0.0, pd_theta=0.0, pd_phi=0.0, pd_Psi=0.0) +\end{lstlisting} + +\subsection*{Input parameters} +Parameters in \textbf{boldface} are required; the others are optional. + +\begin{longtable}{p{0.22\textwidth}p{0.12\textwidth}p{0.46\textwidth}p{0.14\textwidth}} +\toprule +\textbf{Name} & \textbf{Unit} & \textbf{Description} & \textbf{Default} \\ +\midrule +\endhead +radius & Ang & ([0, inf]) Cylinder core radius r\_minor. & 30 \\ +x\_core & None & ([0, inf]) Axial ratio of core, X = r\_major/r\_minor. & 3 \\ +thick\_rim & Ang & ([0, inf]) Rim shell thickness. & 8 \\ +thick\_face & Ang & ([0, inf]) Cylinder face thickness. & 14 \\ +length & Ang & ([0, inf]) Cylinder length. & 50 \\ +sld\_core & 1e-6/Ang\textasciicircum{}2 & ([-inf, inf]) Cylinder core scattering length density. & 4 \\ +sld\_face & 1e-6/Ang\textasciicircum{}2 & ([-inf, inf]) Cylinder face scattering length density. & 7 \\ +sld\_rim & 1e-6/Ang\textasciicircum{}2 & ([-inf, inf]) Cylinder rim scattering length density. & 1 \\ +sld\_solvent & 1e-6/Ang\textasciicircum{}2 & ([-inf, inf]) Solvent scattering length density. & 6 \\ +theta & & & 90.0 \\ +phi & & & 0 \\ +Psi & & & 0 \\ +model\_scale & & Global scale factor for scattering kernel. For systems without inter-particle interference, the form factors can be related to the scattering intensity by the particle volume fraction. & 1.0 \\ +model\_abs & & Absorption cross section density at 2200 m/s. & 0.0 \\ +xwidth & m & ([-inf, inf]) Horiz. dimension of sample, as a width. & 0.01 \\ +yheight & m & ([-inf, inf]) vert . dimension of sample, as a height for cylinder/box & 0.01 \\ +zdepth & m & ([-inf, inf]) depth of sample & 0.005 \\ +R & m & Outer radius of sample in (x,z) plane for cylinder/sphere. & 0 \\ +target\_x & m & relative focus target position. & 0 \\ +target\_y & m & relative focus target position. & 0 \\ +target\_z & m & relative focus target position. & 1 \\ +target\_index & & Relative index of component to focus at, e.g. next is +1. & 1 \\ +focus\_xw & m & horiz. dimension of a rectangular area. & 0.5 \\ +focus\_yh & m & , vert. dimension of a rectangular area. & 0.5 \\ +focus\_aw & deg & , horiz. angular dimension of a rectangular area. & 0 \\ +focus\_ah & deg & , vert. angular dimension of a rectangular area. & 0 \\ +focus\_r & m & case of circular focusing, focusing radius. & 0 \\ +pd\_radius & & (0,inf) defined as (dx/x), where x is de mean value and dx the standard devition of the variable. & 0.0 \\ +pd\_thick\_rim & & (0,inf) defined as (dx/x), where x is de mean value and dx the standard devition of the variable. & 0.0 \\ +pd\_thick\_face & & (0,inf) defined as (dx/x), where x is de mean value and dx the standard devition of the variable. & 0.0 \\ +pd\_length & & (0,inf) defined as (dx/x), where x is de mean value and dx the standard devition of the variable. & 0.0 \\ +pd\_theta & & (0,360) defined as (dx/x), where x is de mean value and dx the standard devition of the variable. & 0.0 \\ +pd\_phi & & (0,360) defined as (dx/x), where x is de mean value and dx the standard devition of the variable. & 0.0 \\ +pd\_Psi & & (0,360) defined as (dx/x), where x is de mean value and dx the standard devition of the variable & 0.0 \\ +\bottomrule +\end{longtable} + +\subsection*{Links} +\begin{itemize} + \item \href{run:/home/willend/willend-McCode/mcstas-comps/sasmodels/SasView_core_shell_bicelle_elliptical_aniso.comp}{Source code} for \texttt{SasView\_core\_shell\_bicelle\_elliptical\_aniso.comp}. +\end{itemize} +\IfFileExists{SasView_core_shell_bicelle_elliptical_aniso_static.tex}{\input{SasView_core_shell_bicelle_elliptical_aniso_static.tex}}{} \ No newline at end of file diff --git a/docs/manuals/mcstas/sasmodels/SasView_core_shell_bicelle_elliptical_belt_rough.tex b/docs/manuals/mcstas/sasmodels/SasView_core_shell_bicelle_elliptical_belt_rough.tex new file mode 100644 index 000000000..a7a983fa8 --- /dev/null +++ b/docs/manuals/mcstas/sasmodels/SasView_core_shell_bicelle_elliptical_belt_rough.tex @@ -0,0 +1,68 @@ +\section{The \texttt{SasView\_core\_shell\_bicelle\_elliptical\_belt\_rough} McStas Component} +SasView core\_shell\_bicelle\_elliptical\_belt\_rough model component as sample description. + +\subsection*{Identification} +\begin{itemize} + \item \textbf{Site:} + \item \textbf{Author:} Jose Robledo + \item \textbf{Origin:} FZJ / DTU / ESS DMSC + \item \textbf{Date:} +\end{itemize} + +\subsection*{Description} +\begin{lstlisting} +SasView_core_shell_bicelle_elliptical_belt_rough component, generated from core_shell_bicelle_elliptical_belt_rough.c in sasmodels. + +Example: +SasView_core_shell_bicelle_elliptical_belt_rough(radius, x_core, thick_rim, thick_face, length, sld_core, sld_face, sld_rim, sld_solvent, sigma, +model_scale=1.0, model_abs=0.0, xwidth=0.01, yheight=0.01, zdepth=0.005, R=0, +int target_index=1, target_x=0, target_y=0, target_z=1, +focus_xw=0.5, focus_yh=0.5, focus_aw=0, focus_ah=0, focus_r=0, +pd_radius=0.0, pd_thick_rim=0.0, pd_thick_face=0.0, pd_length=0.0) +\end{lstlisting} + +\subsection*{Input parameters} +Parameters in \textbf{boldface} are required; the others are optional. + +\begin{longtable}{p{0.22\textwidth}p{0.12\textwidth}p{0.46\textwidth}p{0.14\textwidth}} +\toprule +\textbf{Name} & \textbf{Unit} & \textbf{Description} & \textbf{Default} \\ +\midrule +\endhead +radius & Ang & ([0, inf]) Cylinder core radius r\_minor. & 30 \\ +x\_core & None & ([0, inf]) Axial ratio of core, X = r\_major/r\_minor. & 3 \\ +thick\_rim & Ang & ([0, inf]) Rim or belt shell thickness. & 8 \\ +thick\_face & Ang & ([0, inf]) Cylinder face thickness. & 14 \\ +length & Ang & ([0, inf]) Cylinder length. & 50 \\ +sld\_core & 1e-6/Ang\textasciicircum{}2 & ([-inf, inf]) Cylinder core scattering length density. & 4 \\ +sld\_face & 1e-6/Ang\textasciicircum{}2 & ([-inf, inf]) Cylinder face scattering length density. & 7 \\ +sld\_rim & 1e-6/Ang\textasciicircum{}2 & ([-inf, inf]) Cylinder rim scattering length density. & 1 \\ +sld\_solvent & 1e-6/Ang\textasciicircum{}2 & ([-inf, inf]) Solvent scattering length density. & 6 \\ +sigma & Ang & ([0, inf]) Interfacial roughness. & 0 \\ +model\_scale & & Global scale factor for scattering kernel. For systems without inter-particle interference, the form factors can be related to the scattering intensity by the particle volume fraction. & 1.0 \\ +model\_abs & & Absorption cross section density at 2200 m/s. & 0.0 \\ +xwidth & m & ([-inf, inf]) Horiz. dimension of sample, as a width. & 0.01 \\ +yheight & m & ([-inf, inf]) vert . dimension of sample, as a height for cylinder/box & 0.01 \\ +zdepth & m & ([-inf, inf]) depth of sample & 0.005 \\ +R & m & Outer radius of sample in (x,z) plane for cylinder/sphere. & 0 \\ +target\_x & m & relative focus target position. & 0 \\ +target\_y & m & relative focus target position. & 0 \\ +target\_z & m & relative focus target position. & 1 \\ +target\_index & & Relative index of component to focus at, e.g. next is +1. & 1 \\ +focus\_xw & m & horiz. dimension of a rectangular area. & 0.5 \\ +focus\_yh & m & , vert. dimension of a rectangular area. & 0.5 \\ +focus\_aw & deg & , horiz. angular dimension of a rectangular area. & 0 \\ +focus\_ah & deg & , vert. angular dimension of a rectangular area. & 0 \\ +focus\_r & m & case of circular focusing, focusing radius. & 0 \\ +pd\_radius & & (0,inf) defined as (dx/x), where x is de mean value and dx the standard devition of the variable. & 0.0 \\ +pd\_thick\_rim & & (0,inf) defined as (dx/x), where x is de mean value and dx the standard devition of the variable. & 0.0 \\ +pd\_thick\_face & & (0,inf) defined as (dx/x), where x is de mean value and dx the standard devition of the variable. & 0.0 \\ +pd\_length & & (0,inf) defined as (dx/x), where x is de mean value and dx the standard devition of the variable & 0.0 \\ +\bottomrule +\end{longtable} + +\subsection*{Links} +\begin{itemize} + \item \href{run:/home/willend/willend-McCode/mcstas-comps/sasmodels/SasView_core_shell_bicelle_elliptical_belt_rough.comp}{Source code} for \texttt{SasView\_core\_shell\_bicelle\_elliptical\_belt\_rough.comp}. +\end{itemize} +\IfFileExists{SasView_core_shell_bicelle_elliptical_belt_rough_static.tex}{\input{SasView_core_shell_bicelle_elliptical_belt_rough_static.tex}}{} \ No newline at end of file diff --git a/docs/manuals/mcstas/sasmodels/SasView_core_shell_bicelle_elliptical_belt_rough_aniso.tex b/docs/manuals/mcstas/sasmodels/SasView_core_shell_bicelle_elliptical_belt_rough_aniso.tex new file mode 100644 index 000000000..8204ff86a --- /dev/null +++ b/docs/manuals/mcstas/sasmodels/SasView_core_shell_bicelle_elliptical_belt_rough_aniso.tex @@ -0,0 +1,74 @@ +\section{The \texttt{SasView\_core\_shell\_bicelle\_elliptical\_belt\_rough\_aniso} McStas Component} +SasView core\_shell\_bicelle\_elliptical\_belt\_rough model component as sample description. + +\subsection*{Identification} +\begin{itemize} + \item \textbf{Site:} + \item \textbf{Author:} Jose Robledo + \item \textbf{Origin:} FZJ / DTU / ESS DMSC + \item \textbf{Date:} +\end{itemize} + +\subsection*{Description} +\begin{lstlisting} +SasView_core_shell_bicelle_elliptical_belt_rough component, generated from core_shell_bicelle_elliptical_belt_rough.c in sasmodels. + +Example: +SasView_core_shell_bicelle_elliptical_belt_rough_aniso(radius, x_core, thick_rim, thick_face, length, sld_core, sld_face, sld_rim, sld_solvent, sigma, theta, phi, Psi, +model_scale=1.0, model_abs=0.0, xwidth=0.01, yheight=0.01, zdepth=0.005, R=0, +int target_index=1, target_x=0, target_y=0, target_z=1, +focus_xw=0.5, focus_yh=0.5, focus_aw=0, focus_ah=0, focus_r=0, +pd_radius=0.0, pd_thick_rim=0.0, pd_thick_face=0.0, pd_length=0.0, pd_theta=0.0, pd_phi=0.0, pd_Psi=0.0) +\end{lstlisting} + +\subsection*{Input parameters} +Parameters in \textbf{boldface} are required; the others are optional. + +\begin{longtable}{p{0.22\textwidth}p{0.12\textwidth}p{0.46\textwidth}p{0.14\textwidth}} +\toprule +\textbf{Name} & \textbf{Unit} & \textbf{Description} & \textbf{Default} \\ +\midrule +\endhead +radius & Ang & ([0, inf]) Cylinder core radius r\_minor. & 30 \\ +x\_core & None & ([0, inf]) Axial ratio of core, X = r\_major/r\_minor. & 3 \\ +thick\_rim & Ang & ([0, inf]) Rim or belt shell thickness. & 8 \\ +thick\_face & Ang & ([0, inf]) Cylinder face thickness. & 14 \\ +length & Ang & ([0, inf]) Cylinder length. & 50 \\ +sld\_core & 1e-6/Ang\textasciicircum{}2 & ([-inf, inf]) Cylinder core scattering length density. & 4 \\ +sld\_face & 1e-6/Ang\textasciicircum{}2 & ([-inf, inf]) Cylinder face scattering length density. & 7 \\ +sld\_rim & 1e-6/Ang\textasciicircum{}2 & ([-inf, inf]) Cylinder rim scattering length density. & 1 \\ +sld\_solvent & 1e-6/Ang\textasciicircum{}2 & ([-inf, inf]) Solvent scattering length density. & 6 \\ +sigma & Ang & ([0, inf]) Interfacial roughness. & 0 \\ +theta & & & 90.0 \\ +phi & & & 0 \\ +Psi & & & 0 \\ +model\_scale & & Global scale factor for scattering kernel. For systems without inter-particle interference, the form factors can be related to the scattering intensity by the particle volume fraction. & 1.0 \\ +model\_abs & & Absorption cross section density at 2200 m/s. & 0.0 \\ +xwidth & m & ([-inf, inf]) Horiz. dimension of sample, as a width. & 0.01 \\ +yheight & m & ([-inf, inf]) vert . dimension of sample, as a height for cylinder/box & 0.01 \\ +zdepth & m & ([-inf, inf]) depth of sample & 0.005 \\ +R & m & Outer radius of sample in (x,z) plane for cylinder/sphere. & 0 \\ +target\_x & m & relative focus target position. & 0 \\ +target\_y & m & relative focus target position. & 0 \\ +target\_z & m & relative focus target position. & 1 \\ +target\_index & & Relative index of component to focus at, e.g. next is +1. & 1 \\ +focus\_xw & m & horiz. dimension of a rectangular area. & 0.5 \\ +focus\_yh & m & , vert. dimension of a rectangular area. & 0.5 \\ +focus\_aw & deg & , horiz. angular dimension of a rectangular area. & 0 \\ +focus\_ah & deg & , vert. angular dimension of a rectangular area. & 0 \\ +focus\_r & m & case of circular focusing, focusing radius. & 0 \\ +pd\_radius & & (0,inf) defined as (dx/x), where x is de mean value and dx the standard devition of the variable. & 0.0 \\ +pd\_thick\_rim & & (0,inf) defined as (dx/x), where x is de mean value and dx the standard devition of the variable. & 0.0 \\ +pd\_thick\_face & & (0,inf) defined as (dx/x), where x is de mean value and dx the standard devition of the variable. & 0.0 \\ +pd\_length & & (0,inf) defined as (dx/x), where x is de mean value and dx the standard devition of the variable. & 0.0 \\ +pd\_theta & & (0,360) defined as (dx/x), where x is de mean value and dx the standard devition of the variable. & 0.0 \\ +pd\_phi & & (0,360) defined as (dx/x), where x is de mean value and dx the standard devition of the variable. & 0.0 \\ +pd\_Psi & & (0,360) defined as (dx/x), where x is de mean value and dx the standard devition of the variable & 0.0 \\ +\bottomrule +\end{longtable} + +\subsection*{Links} +\begin{itemize} + \item \href{run:/home/willend/willend-McCode/mcstas-comps/sasmodels/SasView_core_shell_bicelle_elliptical_belt_rough_aniso.comp}{Source code} for \texttt{SasView\_core\_shell\_bicelle\_elliptical\_belt\_rough\_aniso.comp}. +\end{itemize} +\IfFileExists{SasView_core_shell_bicelle_elliptical_belt_rough_aniso_static.tex}{\input{SasView_core_shell_bicelle_elliptical_belt_rough_aniso_static.tex}}{} \ No newline at end of file diff --git a/docs/manuals/mcstas/sasmodels/SasView_core_shell_cylinder.tex b/docs/manuals/mcstas/sasmodels/SasView_core_shell_cylinder.tex new file mode 100644 index 000000000..ae9411e76 --- /dev/null +++ b/docs/manuals/mcstas/sasmodels/SasView_core_shell_cylinder.tex @@ -0,0 +1,63 @@ +\section{The \texttt{SasView\_core\_shell\_cylinder} McStas Component} +SasView core\_shell\_cylinder model component as sample description. + +\subsection*{Identification} +\begin{itemize} + \item \textbf{Site:} + \item \textbf{Author:} Jose Robledo + \item \textbf{Origin:} FZJ / DTU / ESS DMSC + \item \textbf{Date:} +\end{itemize} + +\subsection*{Description} +\begin{lstlisting} +SasView_core_shell_cylinder component, generated from core_shell_cylinder.c in sasmodels. + +Example: +SasView_core_shell_cylinder(sld_core, sld_shell, sld_solvent, radius, thickness, length, +model_scale=1.0, model_abs=0.0, xwidth=0.01, yheight=0.01, zdepth=0.005, R=0, +int target_index=1, target_x=0, target_y=0, target_z=1, +focus_xw=0.5, focus_yh=0.5, focus_aw=0, focus_ah=0, focus_r=0, +pd_radius=0.0, pd_thickness=0.0, pd_length=0.0) +\end{lstlisting} + +\subsection*{Input parameters} +Parameters in \textbf{boldface} are required; the others are optional. + +\begin{longtable}{p{0.22\textwidth}p{0.12\textwidth}p{0.46\textwidth}p{0.14\textwidth}} +\toprule +\textbf{Name} & \textbf{Unit} & \textbf{Description} & \textbf{Default} \\ +\midrule +\endhead +sld\_core & 1e-6/Ang\textasciicircum{}2 & ([-inf, inf]) Cylinder core scattering length density. & 4 \\ +sld\_shell & 1e-6/Ang\textasciicircum{}2 & ([-inf, inf]) Cylinder shell scattering length density. & 4 \\ +sld\_solvent & 1e-6/Ang\textasciicircum{}2 & ([-inf, inf]) Solvent scattering length density. & 1 \\ +radius & Ang & ([0, inf]) Cylinder core radius. & 20 \\ +thickness & Ang & ([0, inf]) Cylinder shell thickness. & 20 \\ +length & Ang & ([0, inf]) Cylinder length. & 400 \\ +model\_scale & & Global scale factor for scattering kernel. For systems without inter-particle interference, the form factors can be related to the scattering intensity by the particle volume fraction. & 1.0 \\ +model\_abs & & Absorption cross section density at 2200 m/s. & 0.0 \\ +xwidth & m & ([-inf, inf]) Horiz. dimension of sample, as a width. & 0.01 \\ +yheight & m & ([-inf, inf]) vert . dimension of sample, as a height for cylinder/box & 0.01 \\ +zdepth & m & ([-inf, inf]) depth of sample & 0.005 \\ +R & m & Outer radius of sample in (x,z) plane for cylinder/sphere. & 0 \\ +target\_x & m & relative focus target position. & 0 \\ +target\_y & m & relative focus target position. & 0 \\ +target\_z & m & relative focus target position. & 1 \\ +target\_index & & Relative index of component to focus at, e.g. next is +1. & 1 \\ +focus\_xw & m & horiz. dimension of a rectangular area. & 0.5 \\ +focus\_yh & m & , vert. dimension of a rectangular area. & 0.5 \\ +focus\_aw & deg & , horiz. angular dimension of a rectangular area. & 0 \\ +focus\_ah & deg & , vert. angular dimension of a rectangular area. & 0 \\ +focus\_r & m & case of circular focusing, focusing radius. & 0 \\ +pd\_radius & & (0,inf) defined as (dx/x), where x is de mean value and dx the standard devition of the variable. & 0.0 \\ +pd\_thickness & & (0,inf) defined as (dx/x), where x is de mean value and dx the standard devition of the variable. & 0.0 \\ +pd\_length & & (0,inf) defined as (dx/x), where x is de mean value and dx the standard devition of the variable & 0.0 \\ +\bottomrule +\end{longtable} + +\subsection*{Links} +\begin{itemize} + \item \href{run:/home/willend/willend-McCode/mcstas-comps/sasmodels/SasView_core_shell_cylinder.comp}{Source code} for \texttt{SasView\_core\_shell\_cylinder.comp}. +\end{itemize} +\IfFileExists{SasView_core_shell_cylinder_static.tex}{\input{SasView_core_shell_cylinder_static.tex}}{} \ No newline at end of file diff --git a/docs/manuals/mcstas/sasmodels/SasView_core_shell_cylinder_aniso.tex b/docs/manuals/mcstas/sasmodels/SasView_core_shell_cylinder_aniso.tex new file mode 100644 index 000000000..edb556a24 --- /dev/null +++ b/docs/manuals/mcstas/sasmodels/SasView_core_shell_cylinder_aniso.tex @@ -0,0 +1,67 @@ +\section{The \texttt{SasView\_core\_shell\_cylinder\_aniso} McStas Component} +SasView core\_shell\_cylinder model component as sample description. + +\subsection*{Identification} +\begin{itemize} + \item \textbf{Site:} + \item \textbf{Author:} Jose Robledo + \item \textbf{Origin:} FZJ / DTU / ESS DMSC + \item \textbf{Date:} +\end{itemize} + +\subsection*{Description} +\begin{lstlisting} +SasView_core_shell_cylinder component, generated from core_shell_cylinder.c in sasmodels. + +Example: +SasView_core_shell_cylinder_aniso(sld_core, sld_shell, sld_solvent, radius, thickness, length, theta, phi, +model_scale=1.0, model_abs=0.0, xwidth=0.01, yheight=0.01, zdepth=0.005, R=0, +int target_index=1, target_x=0, target_y=0, target_z=1, +focus_xw=0.5, focus_yh=0.5, focus_aw=0, focus_ah=0, focus_r=0, +pd_radius=0.0, pd_thickness=0.0, pd_length=0.0, pd_theta=0.0, pd_phi=0.0) +\end{lstlisting} + +\subsection*{Input parameters} +Parameters in \textbf{boldface} are required; the others are optional. + +\begin{longtable}{p{0.22\textwidth}p{0.12\textwidth}p{0.46\textwidth}p{0.14\textwidth}} +\toprule +\textbf{Name} & \textbf{Unit} & \textbf{Description} & \textbf{Default} \\ +\midrule +\endhead +sld\_core & 1e-6/Ang\textasciicircum{}2 & ([-inf, inf]) Cylinder core scattering length density. & 4 \\ +sld\_shell & 1e-6/Ang\textasciicircum{}2 & ([-inf, inf]) Cylinder shell scattering length density. & 4 \\ +sld\_solvent & 1e-6/Ang\textasciicircum{}2 & ([-inf, inf]) Solvent scattering length density. & 1 \\ +radius & Ang & ([0, inf]) Cylinder core radius. & 20 \\ +thickness & Ang & ([0, inf]) Cylinder shell thickness. & 20 \\ +length & Ang & ([0, inf]) Cylinder length. & 400 \\ +theta & & & 60 \\ +phi & & & 60 \\ +model\_scale & & Global scale factor for scattering kernel. For systems without inter-particle interference, the form factors can be related to the scattering intensity by the particle volume fraction. & 1.0 \\ +model\_abs & & Absorption cross section density at 2200 m/s. & 0.0 \\ +xwidth & m & ([-inf, inf]) Horiz. dimension of sample, as a width. & 0.01 \\ +yheight & m & ([-inf, inf]) vert . dimension of sample, as a height for cylinder/box & 0.01 \\ +zdepth & m & ([-inf, inf]) depth of sample & 0.005 \\ +R & m & Outer radius of sample in (x,z) plane for cylinder/sphere. & 0 \\ +target\_x & m & relative focus target position. & 0 \\ +target\_y & m & relative focus target position. & 0 \\ +target\_z & m & relative focus target position. & 1 \\ +target\_index & & Relative index of component to focus at, e.g. next is +1. & 1 \\ +focus\_xw & m & horiz. dimension of a rectangular area. & 0.5 \\ +focus\_yh & m & , vert. dimension of a rectangular area. & 0.5 \\ +focus\_aw & deg & , horiz. angular dimension of a rectangular area. & 0 \\ +focus\_ah & deg & , vert. angular dimension of a rectangular area. & 0 \\ +focus\_r & m & case of circular focusing, focusing radius. & 0 \\ +pd\_radius & & (0,inf) defined as (dx/x), where x is de mean value and dx the standard devition of the variable. & 0.0 \\ +pd\_thickness & & (0,inf) defined as (dx/x), where x is de mean value and dx the standard devition of the variable. & 0.0 \\ +pd\_length & & (0,inf) defined as (dx/x), where x is de mean value and dx the standard devition of the variable. & 0.0 \\ +pd\_theta & & (0,360) defined as (dx/x), where x is de mean value and dx the standard devition of the variable. & 0.0 \\ +pd\_phi & & (0,360) defined as (dx/x), where x is de mean value and dx the standard devition of the variable & 0.0 \\ +\bottomrule +\end{longtable} + +\subsection*{Links} +\begin{itemize} + \item \href{run:/home/willend/willend-McCode/mcstas-comps/sasmodels/SasView_core_shell_cylinder_aniso.comp}{Source code} for \texttt{SasView\_core\_shell\_cylinder\_aniso.comp}. +\end{itemize} +\IfFileExists{SasView_core_shell_cylinder_aniso_static.tex}{\input{SasView_core_shell_cylinder_aniso_static.tex}}{} \ No newline at end of file diff --git a/docs/manuals/mcstas/sasmodels/SasView_core_shell_ellipsoid.tex b/docs/manuals/mcstas/sasmodels/SasView_core_shell_ellipsoid.tex new file mode 100644 index 000000000..035654ba1 --- /dev/null +++ b/docs/manuals/mcstas/sasmodels/SasView_core_shell_ellipsoid.tex @@ -0,0 +1,63 @@ +\section{The \texttt{SasView\_core\_shell\_ellipsoid} McStas Component} +SasView core\_shell\_ellipsoid model component as sample description. + +\subsection*{Identification} +\begin{itemize} + \item \textbf{Site:} + \item \textbf{Author:} Jose Robledo + \item \textbf{Origin:} FZJ / DTU / ESS DMSC + \item \textbf{Date:} +\end{itemize} + +\subsection*{Description} +\begin{lstlisting} +SasView_core_shell_ellipsoid component, generated from core_shell_ellipsoid.c in sasmodels. + +Example: +SasView_core_shell_ellipsoid(radius_equat_core, x_core, thick_shell, x_polar_shell, sld_core, sld_shell, sld_solvent, +model_scale=1.0, model_abs=0.0, xwidth=0.01, yheight=0.01, zdepth=0.005, R=0, +int target_index=1, target_x=0, target_y=0, target_z=1, +focus_xw=0.5, focus_yh=0.5, focus_aw=0, focus_ah=0, focus_r=0, +pd_radius_equat_core=0.0, pd_thick_shell=0.0) +\end{lstlisting} + +\subsection*{Input parameters} +Parameters in \textbf{boldface} are required; the others are optional. + +\begin{longtable}{p{0.22\textwidth}p{0.12\textwidth}p{0.46\textwidth}p{0.14\textwidth}} +\toprule +\textbf{Name} & \textbf{Unit} & \textbf{Description} & \textbf{Default} \\ +\midrule +\endhead +radius\_equat\_core & Ang & ([0, inf]) Equatorial radius of core. & 20 \\ +x\_core & None & ([0, inf]) axial ratio of core, X = r\_polar/r\_equatorial. & 3 \\ +thick\_shell & Ang & ([0, inf]) thickness of shell at equator. & 30 \\ +x\_polar\_shell & & ([0, inf]) ratio of thickness of shell at pole to that at equator. & 1 \\ +sld\_core & 1e-6/Ang\textasciicircum{}2 & ([-inf, inf]) Core scattering length density. & 2 \\ +sld\_shell & 1e-6/Ang\textasciicircum{}2 & ([-inf, inf]) Shell scattering length density. & 1 \\ +sld\_solvent & 1e-6/Ang\textasciicircum{}2 & ([-inf, inf]) Solvent scattering length density. & 6.3 \\ +model\_scale & & Global scale factor for scattering kernel. For systems without inter-particle interference, the form factors can be related to the scattering intensity by the particle volume fraction. & 1.0 \\ +model\_abs & & Absorption cross section density at 2200 m/s. & 0.0 \\ +xwidth & m & ([-inf, inf]) Horiz. dimension of sample, as a width. & 0.01 \\ +yheight & m & ([-inf, inf]) vert . dimension of sample, as a height for cylinder/box & 0.01 \\ +zdepth & m & ([-inf, inf]) depth of sample & 0.005 \\ +R & m & Outer radius of sample in (x,z) plane for cylinder/sphere. & 0 \\ +target\_x & m & relative focus target position. & 0 \\ +target\_y & m & relative focus target position. & 0 \\ +target\_z & m & relative focus target position. & 1 \\ +target\_index & & Relative index of component to focus at, e.g. next is +1. & 1 \\ +focus\_xw & m & horiz. dimension of a rectangular area. & 0.5 \\ +focus\_yh & m & , vert. dimension of a rectangular area. & 0.5 \\ +focus\_aw & deg & , horiz. angular dimension of a rectangular area. & 0 \\ +focus\_ah & deg & , vert. angular dimension of a rectangular area. & 0 \\ +focus\_r & m & case of circular focusing, focusing radius. & 0 \\ +pd\_radius\_equat\_core & & (0,inf) defined as (dx/x), where x is de mean value and dx the standard devition of the variable. & 0.0 \\ +pd\_thick\_shell & & (0,inf) defined as (dx/x), where x is de mean value and dx the standard devition of the variable & 0.0 \\ +\bottomrule +\end{longtable} + +\subsection*{Links} +\begin{itemize} + \item \href{run:/home/willend/willend-McCode/mcstas-comps/sasmodels/SasView_core_shell_ellipsoid.comp}{Source code} for \texttt{SasView\_core\_shell\_ellipsoid.comp}. +\end{itemize} +\IfFileExists{SasView_core_shell_ellipsoid_static.tex}{\input{SasView_core_shell_ellipsoid_static.tex}}{} \ No newline at end of file diff --git a/docs/manuals/mcstas/sasmodels/SasView_core_shell_ellipsoid_aniso.tex b/docs/manuals/mcstas/sasmodels/SasView_core_shell_ellipsoid_aniso.tex new file mode 100644 index 000000000..d96000d42 --- /dev/null +++ b/docs/manuals/mcstas/sasmodels/SasView_core_shell_ellipsoid_aniso.tex @@ -0,0 +1,67 @@ +\section{The \texttt{SasView\_core\_shell\_ellipsoid\_aniso} McStas Component} +SasView core\_shell\_ellipsoid model component as sample description. + +\subsection*{Identification} +\begin{itemize} + \item \textbf{Site:} + \item \textbf{Author:} Jose Robledo + \item \textbf{Origin:} FZJ / DTU / ESS DMSC + \item \textbf{Date:} +\end{itemize} + +\subsection*{Description} +\begin{lstlisting} +SasView_core_shell_ellipsoid component, generated from core_shell_ellipsoid.c in sasmodels. + +Example: +SasView_core_shell_ellipsoid_aniso(radius_equat_core, x_core, thick_shell, x_polar_shell, sld_core, sld_shell, sld_solvent, theta, phi, +model_scale=1.0, model_abs=0.0, xwidth=0.01, yheight=0.01, zdepth=0.005, R=0, +int target_index=1, target_x=0, target_y=0, target_z=1, +focus_xw=0.5, focus_yh=0.5, focus_aw=0, focus_ah=0, focus_r=0, +pd_radius_equat_core=0.0, pd_thick_shell=0.0, pd_theta=0.0, pd_phi=0.0) +\end{lstlisting} + +\subsection*{Input parameters} +Parameters in \textbf{boldface} are required; the others are optional. + +\begin{longtable}{p{0.22\textwidth}p{0.12\textwidth}p{0.46\textwidth}p{0.14\textwidth}} +\toprule +\textbf{Name} & \textbf{Unit} & \textbf{Description} & \textbf{Default} \\ +\midrule +\endhead +radius\_equat\_core & Ang & ([0, inf]) Equatorial radius of core. & 20 \\ +x\_core & None & ([0, inf]) axial ratio of core, X = r\_polar/r\_equatorial. & 3 \\ +thick\_shell & Ang & ([0, inf]) thickness of shell at equator. & 30 \\ +x\_polar\_shell & & ([0, inf]) ratio of thickness of shell at pole to that at equator. & 1 \\ +sld\_core & 1e-6/Ang\textasciicircum{}2 & ([-inf, inf]) Core scattering length density. & 2 \\ +sld\_shell & 1e-6/Ang\textasciicircum{}2 & ([-inf, inf]) Shell scattering length density. & 1 \\ +sld\_solvent & 1e-6/Ang\textasciicircum{}2 & ([-inf, inf]) Solvent scattering length density. & 6.3 \\ +theta & & & 0 \\ +phi & & & 0 \\ +model\_scale & & Global scale factor for scattering kernel. For systems without inter-particle interference, the form factors can be related to the scattering intensity by the particle volume fraction. & 1.0 \\ +model\_abs & & Absorption cross section density at 2200 m/s. & 0.0 \\ +xwidth & m & ([-inf, inf]) Horiz. dimension of sample, as a width. & 0.01 \\ +yheight & m & ([-inf, inf]) vert . dimension of sample, as a height for cylinder/box & 0.01 \\ +zdepth & m & ([-inf, inf]) depth of sample & 0.005 \\ +R & m & Outer radius of sample in (x,z) plane for cylinder/sphere. & 0 \\ +target\_x & m & relative focus target position. & 0 \\ +target\_y & m & relative focus target position. & 0 \\ +target\_z & m & relative focus target position. & 1 \\ +target\_index & & Relative index of component to focus at, e.g. next is +1. & 1 \\ +focus\_xw & m & horiz. dimension of a rectangular area. & 0.5 \\ +focus\_yh & m & , vert. dimension of a rectangular area. & 0.5 \\ +focus\_aw & deg & , horiz. angular dimension of a rectangular area. & 0 \\ +focus\_ah & deg & , vert. angular dimension of a rectangular area. & 0 \\ +focus\_r & m & case of circular focusing, focusing radius. & 0 \\ +pd\_radius\_equat\_core & & (0,inf) defined as (dx/x), where x is de mean value and dx the standard devition of the variable. & 0.0 \\ +pd\_thick\_shell & & (0,inf) defined as (dx/x), where x is de mean value and dx the standard devition of the variable. & 0.0 \\ +pd\_theta & & (0,360) defined as (dx/x), where x is de mean value and dx the standard devition of the variable. & 0.0 \\ +pd\_phi & & (0,360) defined as (dx/x), where x is de mean value and dx the standard devition of the variable & 0.0 \\ +\bottomrule +\end{longtable} + +\subsection*{Links} +\begin{itemize} + \item \href{run:/home/willend/willend-McCode/mcstas-comps/sasmodels/SasView_core_shell_ellipsoid_aniso.comp}{Source code} for \texttt{SasView\_core\_shell\_ellipsoid\_aniso.comp}. +\end{itemize} +\IfFileExists{SasView_core_shell_ellipsoid_aniso_static.tex}{\input{SasView_core_shell_ellipsoid_aniso_static.tex}}{} \ No newline at end of file diff --git a/docs/manuals/mcstas/sasmodels/SasView_core_shell_parallelepiped.tex b/docs/manuals/mcstas/sasmodels/SasView_core_shell_parallelepiped.tex new file mode 100644 index 000000000..e46098466 --- /dev/null +++ b/docs/manuals/mcstas/sasmodels/SasView_core_shell_parallelepiped.tex @@ -0,0 +1,71 @@ +\section{The \texttt{SasView\_core\_shell\_parallelepiped} McStas Component} +SasView core\_shell\_parallelepiped model component as sample description. + +\subsection*{Identification} +\begin{itemize} + \item \textbf{Site:} + \item \textbf{Author:} Jose Robledo + \item \textbf{Origin:} FZJ / DTU / ESS DMSC + \item \textbf{Date:} +\end{itemize} + +\subsection*{Description} +\begin{lstlisting} +SasView_core_shell_parallelepiped component, generated from core_shell_parallelepiped.c in sasmodels. + +Example: +SasView_core_shell_parallelepiped(sld_core, sld_a, sld_b, sld_c, sld_solvent, length_a, length_b, length_c, thick_rim_a, thick_rim_b, thick_rim_c, +model_scale=1.0, model_abs=0.0, xwidth=0.01, yheight=0.01, zdepth=0.005, R=0, +int target_index=1, target_x=0, target_y=0, target_z=1, +focus_xw=0.5, focus_yh=0.5, focus_aw=0, focus_ah=0, focus_r=0, +pd_length_a=0.0, pd_length_b=0.0, pd_length_c=0.0, pd_thick_rim_a=0.0, pd_thick_rim_b=0.0, pd_thick_rim_c=0.0) +\end{lstlisting} + +\subsection*{Input parameters} +Parameters in \textbf{boldface} are required; the others are optional. + +\begin{longtable}{p{0.22\textwidth}p{0.12\textwidth}p{0.46\textwidth}p{0.14\textwidth}} +\toprule +\textbf{Name} & \textbf{Unit} & \textbf{Description} & \textbf{Default} \\ +\midrule +\endhead +sld\_core & 1e-6/Ang\textasciicircum{}2 & ([-inf, inf]) Parallelepiped core scattering length density. & 1 \\ +sld\_a & 1e-6/Ang\textasciicircum{}2 & ([-inf, inf]) Parallelepiped A rim scattering length density. & 2 \\ +sld\_b & 1e-6/Ang\textasciicircum{}2 & ([-inf, inf]) Parallelepiped B rim scattering length density. & 4 \\ +sld\_c & 1e-6/Ang\textasciicircum{}2 & ([-inf, inf]) Parallelepiped C rim scattering length density. & 2 \\ +sld\_solvent & 1e-6/Ang\textasciicircum{}2 & ([-inf, inf]) Solvent scattering length density. & 6 \\ +length\_a & Ang & ([0, inf]) Shorter side of the parallelepiped. & 35 \\ +length\_b & Ang & ([0, inf]) Second side of the parallelepiped. & 75 \\ +length\_c & Ang & ([0, inf]) Larger side of the parallelepiped. & 400 \\ +thick\_rim\_a & Ang & ([0, inf]) Thickness of A rim. & 10 \\ +thick\_rim\_b & Ang & ([0, inf]) Thickness of B rim. & 10 \\ +thick\_rim\_c & Ang & ([0, inf]) Thickness of C rim. & 10 \\ +model\_scale & & Global scale factor for scattering kernel. For systems without inter-particle interference, the form factors can be related to the scattering intensity by the particle volume fraction. & 1.0 \\ +model\_abs & & Absorption cross section density at 2200 m/s. & 0.0 \\ +xwidth & m & ([-inf, inf]) Horiz. dimension of sample, as a width. & 0.01 \\ +yheight & m & ([-inf, inf]) vert . dimension of sample, as a height for cylinder/box & 0.01 \\ +zdepth & m & ([-inf, inf]) depth of sample & 0.005 \\ +R & m & Outer radius of sample in (x,z) plane for cylinder/sphere. & 0 \\ +target\_x & m & relative focus target position. & 0 \\ +target\_y & m & relative focus target position. & 0 \\ +target\_z & m & relative focus target position. & 1 \\ +target\_index & & Relative index of component to focus at, e.g. next is +1. & 1 \\ +focus\_xw & m & horiz. dimension of a rectangular area. & 0.5 \\ +focus\_yh & m & , vert. dimension of a rectangular area. & 0.5 \\ +focus\_aw & deg & , horiz. angular dimension of a rectangular area. & 0 \\ +focus\_ah & deg & , vert. angular dimension of a rectangular area. & 0 \\ +focus\_r & m & case of circular focusing, focusing radius. & 0 \\ +pd\_length\_a & & (0,inf) defined as (dx/x), where x is de mean value and dx the standard devition of the variable. & 0.0 \\ +pd\_length\_b & & (0,inf) defined as (dx/x), where x is de mean value and dx the standard devition of the variable. & 0.0 \\ +pd\_length\_c & & (0,inf) defined as (dx/x), where x is de mean value and dx the standard devition of the variable. & 0.0 \\ +pd\_thick\_rim\_a & & (0,inf) defined as (dx/x), where x is de mean value and dx the standard devition of the variable. & 0.0 \\ +pd\_thick\_rim\_b & & (0,inf) defined as (dx/x), where x is de mean value and dx the standard devition of the variable. & 0.0 \\ +pd\_thick\_rim\_c & & (0,inf) defined as (dx/x), where x is de mean value and dx the standard devition of the variable & 0.0 \\ +\bottomrule +\end{longtable} + +\subsection*{Links} +\begin{itemize} + \item \href{run:/home/willend/willend-McCode/mcstas-comps/sasmodels/SasView_core_shell_parallelepiped.comp}{Source code} for \texttt{SasView\_core\_shell\_parallelepiped.comp}. +\end{itemize} +\IfFileExists{SasView_core_shell_parallelepiped_static.tex}{\input{SasView_core_shell_parallelepiped_static.tex}}{} \ No newline at end of file diff --git a/docs/manuals/mcstas/sasmodels/SasView_core_shell_parallelepiped_aniso.tex b/docs/manuals/mcstas/sasmodels/SasView_core_shell_parallelepiped_aniso.tex new file mode 100644 index 000000000..43e949ce7 --- /dev/null +++ b/docs/manuals/mcstas/sasmodels/SasView_core_shell_parallelepiped_aniso.tex @@ -0,0 +1,77 @@ +\section{The \texttt{SasView\_core\_shell\_parallelepiped\_aniso} McStas Component} +SasView core\_shell\_parallelepiped model component as sample description. + +\subsection*{Identification} +\begin{itemize} + \item \textbf{Site:} + \item \textbf{Author:} Jose Robledo + \item \textbf{Origin:} FZJ / DTU / ESS DMSC + \item \textbf{Date:} +\end{itemize} + +\subsection*{Description} +\begin{lstlisting} +SasView_core_shell_parallelepiped component, generated from core_shell_parallelepiped.c in sasmodels. + +Example: +SasView_core_shell_parallelepiped_aniso(sld_core, sld_a, sld_b, sld_c, sld_solvent, length_a, length_b, length_c, thick_rim_a, thick_rim_b, thick_rim_c, theta, phi, Psi, +model_scale=1.0, model_abs=0.0, xwidth=0.01, yheight=0.01, zdepth=0.005, R=0, +int target_index=1, target_x=0, target_y=0, target_z=1, +focus_xw=0.5, focus_yh=0.5, focus_aw=0, focus_ah=0, focus_r=0, +pd_length_a=0.0, pd_length_b=0.0, pd_length_c=0.0, pd_thick_rim_a=0.0, pd_thick_rim_b=0.0, pd_thick_rim_c=0.0, pd_theta=0.0, pd_phi=0.0, pd_Psi=0.0) +\end{lstlisting} + +\subsection*{Input parameters} +Parameters in \textbf{boldface} are required; the others are optional. + +\begin{longtable}{p{0.22\textwidth}p{0.12\textwidth}p{0.46\textwidth}p{0.14\textwidth}} +\toprule +\textbf{Name} & \textbf{Unit} & \textbf{Description} & \textbf{Default} \\ +\midrule +\endhead +sld\_core & 1e-6/Ang\textasciicircum{}2 & ([-inf, inf]) Parallelepiped core scattering length density. & 1 \\ +sld\_a & 1e-6/Ang\textasciicircum{}2 & ([-inf, inf]) Parallelepiped A rim scattering length density. & 2 \\ +sld\_b & 1e-6/Ang\textasciicircum{}2 & ([-inf, inf]) Parallelepiped B rim scattering length density. & 4 \\ +sld\_c & 1e-6/Ang\textasciicircum{}2 & ([-inf, inf]) Parallelepiped C rim scattering length density. & 2 \\ +sld\_solvent & 1e-6/Ang\textasciicircum{}2 & ([-inf, inf]) Solvent scattering length density. & 6 \\ +length\_a & Ang & ([0, inf]) Shorter side of the parallelepiped. & 35 \\ +length\_b & Ang & ([0, inf]) Second side of the parallelepiped. & 75 \\ +length\_c & Ang & ([0, inf]) Larger side of the parallelepiped. & 400 \\ +thick\_rim\_a & Ang & ([0, inf]) Thickness of A rim. & 10 \\ +thick\_rim\_b & Ang & ([0, inf]) Thickness of B rim. & 10 \\ +thick\_rim\_c & Ang & ([0, inf]) Thickness of C rim. & 10 \\ +theta & & & 0 \\ +phi & & & 0 \\ +Psi & & & 0 \\ +model\_scale & & Global scale factor for scattering kernel. For systems without inter-particle interference, the form factors can be related to the scattering intensity by the particle volume fraction. & 1.0 \\ +model\_abs & & Absorption cross section density at 2200 m/s. & 0.0 \\ +xwidth & m & ([-inf, inf]) Horiz. dimension of sample, as a width. & 0.01 \\ +yheight & m & ([-inf, inf]) vert . dimension of sample, as a height for cylinder/box & 0.01 \\ +zdepth & m & ([-inf, inf]) depth of sample & 0.005 \\ +R & m & Outer radius of sample in (x,z) plane for cylinder/sphere. & 0 \\ +target\_x & m & relative focus target position. & 0 \\ +target\_y & m & relative focus target position. & 0 \\ +target\_z & m & relative focus target position. & 1 \\ +target\_index & & Relative index of component to focus at, e.g. next is +1. & 1 \\ +focus\_xw & m & horiz. dimension of a rectangular area. & 0.5 \\ +focus\_yh & m & , vert. dimension of a rectangular area. & 0.5 \\ +focus\_aw & deg & , horiz. angular dimension of a rectangular area. & 0 \\ +focus\_ah & deg & , vert. angular dimension of a rectangular area. & 0 \\ +focus\_r & m & case of circular focusing, focusing radius. & 0 \\ +pd\_length\_a & & (0,inf) defined as (dx/x), where x is de mean value and dx the standard devition of the variable. & 0.0 \\ +pd\_length\_b & & (0,inf) defined as (dx/x), where x is de mean value and dx the standard devition of the variable. & 0.0 \\ +pd\_length\_c & & (0,inf) defined as (dx/x), where x is de mean value and dx the standard devition of the variable. & 0.0 \\ +pd\_thick\_rim\_a & & (0,inf) defined as (dx/x), where x is de mean value and dx the standard devition of the variable. & 0.0 \\ +pd\_thick\_rim\_b & & (0,inf) defined as (dx/x), where x is de mean value and dx the standard devition of the variable. & 0.0 \\ +pd\_thick\_rim\_c & & (0,inf) defined as (dx/x), where x is de mean value and dx the standard devition of the variable. & 0.0 \\ +pd\_theta & & (0,360) defined as (dx/x), where x is de mean value and dx the standard devition of the variable. & 0.0 \\ +pd\_phi & & (0,360) defined as (dx/x), where x is de mean value and dx the standard devition of the variable. & 0.0 \\ +pd\_Psi & & (0,360) defined as (dx/x), where x is de mean value and dx the standard devition of the variable & 0.0 \\ +\bottomrule +\end{longtable} + +\subsection*{Links} +\begin{itemize} + \item \href{run:/home/willend/willend-McCode/mcstas-comps/sasmodels/SasView_core_shell_parallelepiped_aniso.comp}{Source code} for \texttt{SasView\_core\_shell\_parallelepiped\_aniso.comp}. +\end{itemize} +\IfFileExists{SasView_core_shell_parallelepiped_aniso_static.tex}{\input{SasView_core_shell_parallelepiped_aniso_static.tex}}{} \ No newline at end of file diff --git a/docs/manuals/mcstas/sasmodels/SasView_core_shell_sphere.tex b/docs/manuals/mcstas/sasmodels/SasView_core_shell_sphere.tex new file mode 100644 index 000000000..75b6ee3bb --- /dev/null +++ b/docs/manuals/mcstas/sasmodels/SasView_core_shell_sphere.tex @@ -0,0 +1,61 @@ +\section{The \texttt{SasView\_core\_shell\_sphere} McStas Component} +SasView core\_shell\_sphere model component as sample description. + +\subsection*{Identification} +\begin{itemize} + \item \textbf{Site:} + \item \textbf{Author:} Jose Robledo + \item \textbf{Origin:} FZJ / DTU / ESS DMSC + \item \textbf{Date:} +\end{itemize} + +\subsection*{Description} +\begin{lstlisting} +SasView_core_shell_sphere component, generated from core_shell_sphere.c in sasmodels. + +Example: +SasView_core_shell_sphere(radius, thickness, sld_core, sld_shell, sld_solvent, +model_scale=1.0, model_abs=0.0, xwidth=0.01, yheight=0.01, zdepth=0.005, R=0, +int target_index=1, target_x=0, target_y=0, target_z=1, +focus_xw=0.5, focus_yh=0.5, focus_aw=0, focus_ah=0, focus_r=0, +pd_radius=0.0, pd_thickness=0.0) +\end{lstlisting} + +\subsection*{Input parameters} +Parameters in \textbf{boldface} are required; the others are optional. + +\begin{longtable}{p{0.22\textwidth}p{0.12\textwidth}p{0.46\textwidth}p{0.14\textwidth}} +\toprule +\textbf{Name} & \textbf{Unit} & \textbf{Description} & \textbf{Default} \\ +\midrule +\endhead +radius & Ang & ([0, inf]) Sphere core radius. & 60.0 \\ +thickness & Ang & ([0, inf]) Sphere shell thickness. & 10.0 \\ +sld\_core & 1e-6/Ang\textasciicircum{}2 & ([-inf, inf]) core scattering length density. & 1.0 \\ +sld\_shell & 1e-6/Ang\textasciicircum{}2 & ([-inf, inf]) shell scattering length density. & 2.0 \\ +sld\_solvent & 1e-6/Ang\textasciicircum{}2 & ([-inf, inf]) Solvent scattering length density. & 3.0 \\ +model\_scale & & Global scale factor for scattering kernel. For systems without inter-particle interference, the form factors can be related to the scattering intensity by the particle volume fraction. & 1.0 \\ +model\_abs & & Absorption cross section density at 2200 m/s. & 0.0 \\ +xwidth & m & ([-inf, inf]) Horiz. dimension of sample, as a width. & 0.01 \\ +yheight & m & ([-inf, inf]) vert . dimension of sample, as a height for cylinder/box & 0.01 \\ +zdepth & m & ([-inf, inf]) depth of sample & 0.005 \\ +R & m & Outer radius of sample in (x,z) plane for cylinder/sphere. & 0 \\ +target\_x & m & relative focus target position. & 0 \\ +target\_y & m & relative focus target position. & 0 \\ +target\_z & m & relative focus target position. & 1 \\ +target\_index & & Relative index of component to focus at, e.g. next is +1. & 1 \\ +focus\_xw & m & horiz. dimension of a rectangular area. & 0.5 \\ +focus\_yh & m & , vert. dimension of a rectangular area. & 0.5 \\ +focus\_aw & deg & , horiz. angular dimension of a rectangular area. & 0 \\ +focus\_ah & deg & , vert. angular dimension of a rectangular area. & 0 \\ +focus\_r & m & case of circular focusing, focusing radius. & 0 \\ +pd\_radius & & (0,inf) defined as (dx/x), where x is de mean value and dx the standard devition of the variable. & 0.0 \\ +pd\_thickness & & (0,inf) defined as (dx/x), where x is de mean value and dx the standard devition of the variable & 0.0 \\ +\bottomrule +\end{longtable} + +\subsection*{Links} +\begin{itemize} + \item \href{run:/home/willend/willend-McCode/mcstas-comps/sasmodels/SasView_core_shell_sphere.comp}{Source code} for \texttt{SasView\_core\_shell\_sphere.comp}. +\end{itemize} +\IfFileExists{SasView_core_shell_sphere_static.tex}{\input{SasView_core_shell_sphere_static.tex}}{} \ No newline at end of file diff --git a/docs/manuals/mcstas/sasmodels/SasView_correlation_length.tex b/docs/manuals/mcstas/sasmodels/SasView_correlation_length.tex new file mode 100644 index 000000000..f53cdf3ae --- /dev/null +++ b/docs/manuals/mcstas/sasmodels/SasView_correlation_length.tex @@ -0,0 +1,60 @@ +\section{The \texttt{SasView\_correlation\_length} McStas Component} +SasView correlation\_length model component as sample description. + +\subsection*{Identification} +\begin{itemize} + \item \textbf{Site:} + \item \textbf{Author:} Jose Robledo + \item \textbf{Origin:} FZJ / DTU / ESS DMSC + \item \textbf{Date:} +\end{itemize} + +\subsection*{Description} +\begin{lstlisting} +SasView_correlation_length component, generated from correlation_length.c in sasmodels. + +Example: +SasView_correlation_length(lorentz_scale, porod_scale, cor_length, porod_exp, lorentz_exp, +model_scale=1.0, model_abs=0.0, xwidth=0.01, yheight=0.01, zdepth=0.005, R=0, +int target_index=1, target_x=0, target_y=0, target_z=1, +focus_xw=0.5, focus_yh=0.5, focus_aw=0, focus_ah=0, focus_r=0, +pd_cor_length=0.0) +\end{lstlisting} + +\subsection*{Input parameters} +Parameters in \textbf{boldface} are required; the others are optional. + +\begin{longtable}{p{0.22\textwidth}p{0.12\textwidth}p{0.46\textwidth}p{0.14\textwidth}} +\toprule +\textbf{Name} & \textbf{Unit} & \textbf{Description} & \textbf{Default} \\ +\midrule +\endhead +lorentz\_scale & & ([0, inf]) Lorentzian Scaling Factor. & 10.0 \\ +porod\_scale & & ([0, inf]) Porod Scaling Factor. & 1e-06 \\ +cor\_length & Ang & ([0, inf]) Correlation length, xi, in Lorentzian. & 50.0 \\ +porod\_exp & & ([0, inf]) Porod Exponent, n, in q\textasciicircum{}-n. & 3.0 \\ +lorentz\_exp & & ([0, inf]) Lorentzian Exponent, m, in 1/( 1 + (q.xi)\textasciicircum{}m). & 2.0 \\ +model\_scale & & Global scale factor for scattering kernel. For systems without inter-particle interference, the form factors can be related to the scattering intensity by the particle volume fraction. & 1.0 \\ +model\_abs & & Absorption cross section density at 2200 m/s. & 0.0 \\ +xwidth & m & ([-inf, inf]) Horiz. dimension of sample, as a width. & 0.01 \\ +yheight & m & ([-inf, inf]) vert . dimension of sample, as a height for cylinder/box & 0.01 \\ +zdepth & m & ([-inf, inf]) depth of sample & 0.005 \\ +R & m & Outer radius of sample in (x,z) plane for cylinder/sphere. & 0 \\ +target\_x & m & relative focus target position. & 0 \\ +target\_y & m & relative focus target position. & 0 \\ +target\_z & m & relative focus target position. & 1 \\ +target\_index & & Relative index of component to focus at, e.g. next is +1. & 1 \\ +focus\_xw & m & horiz. dimension of a rectangular area. & 0.5 \\ +focus\_yh & m & , vert. dimension of a rectangular area. & 0.5 \\ +focus\_aw & deg & , horiz. angular dimension of a rectangular area. & 0 \\ +focus\_ah & deg & , vert. angular dimension of a rectangular area. & 0 \\ +focus\_r & m & case of circular focusing, focusing radius. & 0 \\ +pd\_cor\_length & & (0,inf) defined as (dx/x), where x is de mean value and dx the standard devition of the variable & 0.0 \\ +\bottomrule +\end{longtable} + +\subsection*{Links} +\begin{itemize} + \item \href{run:/home/willend/willend-McCode/mcstas-comps/sasmodels/SasView_correlation_length.comp}{Source code} for \texttt{SasView\_correlation\_length.comp}. +\end{itemize} +\IfFileExists{SasView_correlation_length_static.tex}{\input{SasView_correlation_length_static.tex}}{} \ No newline at end of file diff --git a/docs/manuals/mcstas/sasmodels/SasView_cylinder.tex b/docs/manuals/mcstas/sasmodels/SasView_cylinder.tex new file mode 100644 index 000000000..3664a116a --- /dev/null +++ b/docs/manuals/mcstas/sasmodels/SasView_cylinder.tex @@ -0,0 +1,60 @@ +\section{The \texttt{SasView\_cylinder} McStas Component} +SasView cylinder model component as sample description. + +\subsection*{Identification} +\begin{itemize} + \item \textbf{Site:} + \item \textbf{Author:} Jose Robledo + \item \textbf{Origin:} FZJ / DTU / ESS DMSC + \item \textbf{Date:} +\end{itemize} + +\subsection*{Description} +\begin{lstlisting} +SasView_cylinder component, generated from cylinder.c in sasmodels. + +Example: +SasView_cylinder(sld, sld_solvent, radius, length, +model_scale=1.0, model_abs=0.0, xwidth=0.01, yheight=0.01, zdepth=0.005, R=0, +int target_index=1, target_x=0, target_y=0, target_z=1, +focus_xw=0.5, focus_yh=0.5, focus_aw=0, focus_ah=0, focus_r=0, +pd_radius=0.0, pd_length=0.0) +\end{lstlisting} + +\subsection*{Input parameters} +Parameters in \textbf{boldface} are required; the others are optional. + +\begin{longtable}{p{0.22\textwidth}p{0.12\textwidth}p{0.46\textwidth}p{0.14\textwidth}} +\toprule +\textbf{Name} & \textbf{Unit} & \textbf{Description} & \textbf{Default} \\ +\midrule +\endhead +sld & 1e-6/Ang\textasciicircum{}2 & ([-inf, inf]) Cylinder scattering length density. & 4 \\ +sld\_solvent & 1e-6/Ang\textasciicircum{}2 & ([-inf, inf]) Solvent scattering length density. & 1 \\ +radius & Ang & ([0, inf]) Cylinder radius. & 20 \\ +length & Ang & ([0, inf]) Cylinder length. & 400 \\ +model\_scale & & Global scale factor for scattering kernel. For systems without inter-particle interference, the form factors can be related to the scattering intensity by the particle volume fraction. & 1.0 \\ +model\_abs & & Absorption cross section density at 2200 m/s. & 0.0 \\ +xwidth & m & ([-inf, inf]) Horiz. dimension of sample, as a width. & 0.01 \\ +yheight & m & ([-inf, inf]) vert . dimension of sample, as a height for cylinder/box & 0.01 \\ +zdepth & m & ([-inf, inf]) depth of sample & 0.005 \\ +R & m & Outer radius of sample in (x,z) plane for cylinder/sphere. & 0 \\ +target\_x & m & relative focus target position. & 0 \\ +target\_y & m & relative focus target position. & 0 \\ +target\_z & m & relative focus target position. & 1 \\ +target\_index & & Relative index of component to focus at, e.g. next is +1. & 1 \\ +focus\_xw & m & horiz. dimension of a rectangular area. & 0.5 \\ +focus\_yh & m & , vert. dimension of a rectangular area. & 0.5 \\ +focus\_aw & deg & , horiz. angular dimension of a rectangular area. & 0 \\ +focus\_ah & deg & , vert. angular dimension of a rectangular area. & 0 \\ +focus\_r & m & case of circular focusing, focusing radius. & 0 \\ +pd\_radius & & (0,inf) defined as (dx/x), where x is de mean value and dx the standard devition of the variable. & 0.0 \\ +pd\_length & & (0,inf) defined as (dx/x), where x is de mean value and dx the standard devition of the variable & 0.0 \\ +\bottomrule +\end{longtable} + +\subsection*{Links} +\begin{itemize} + \item \href{run:/home/willend/willend-McCode/mcstas-comps/sasmodels/SasView_cylinder.comp}{Source code} for \texttt{SasView\_cylinder.comp}. +\end{itemize} +\IfFileExists{SasView_cylinder_static.tex}{\input{SasView_cylinder_static.tex}}{} \ No newline at end of file diff --git a/docs/manuals/mcstas/sasmodels/SasView_cylinder_aniso.tex b/docs/manuals/mcstas/sasmodels/SasView_cylinder_aniso.tex new file mode 100644 index 000000000..5bb3fffc8 --- /dev/null +++ b/docs/manuals/mcstas/sasmodels/SasView_cylinder_aniso.tex @@ -0,0 +1,64 @@ +\section{The \texttt{SasView\_cylinder\_aniso} McStas Component} +SasView cylinder model component as sample description. + +\subsection*{Identification} +\begin{itemize} + \item \textbf{Site:} + \item \textbf{Author:} Jose Robledo + \item \textbf{Origin:} FZJ / DTU / ESS DMSC + \item \textbf{Date:} +\end{itemize} + +\subsection*{Description} +\begin{lstlisting} +SasView_cylinder component, generated from cylinder.c in sasmodels. + +Example: +SasView_cylinder_aniso(sld, sld_solvent, radius, length, theta, phi, +model_scale=1.0, model_abs=0.0, xwidth=0.01, yheight=0.01, zdepth=0.005, R=0, +int target_index=1, target_x=0, target_y=0, target_z=1, +focus_xw=0.5, focus_yh=0.5, focus_aw=0, focus_ah=0, focus_r=0, +pd_radius=0.0, pd_length=0.0, pd_theta=0.0, pd_phi=0.0) +\end{lstlisting} + +\subsection*{Input parameters} +Parameters in \textbf{boldface} are required; the others are optional. + +\begin{longtable}{p{0.22\textwidth}p{0.12\textwidth}p{0.46\textwidth}p{0.14\textwidth}} +\toprule +\textbf{Name} & \textbf{Unit} & \textbf{Description} & \textbf{Default} \\ +\midrule +\endhead +sld & 1e-6/Ang\textasciicircum{}2 & ([-inf, inf]) Cylinder scattering length density. & 4 \\ +sld\_solvent & 1e-6/Ang\textasciicircum{}2 & ([-inf, inf]) Solvent scattering length density. & 1 \\ +radius & Ang & ([0, inf]) Cylinder radius. & 20 \\ +length & Ang & ([0, inf]) Cylinder length. & 400 \\ +theta & & & 60 \\ +phi & & & 60 \\ +model\_scale & & Global scale factor for scattering kernel. For systems without inter-particle interference, the form factors can be related to the scattering intensity by the particle volume fraction. & 1.0 \\ +model\_abs & & Absorption cross section density at 2200 m/s. & 0.0 \\ +xwidth & m & ([-inf, inf]) Horiz. dimension of sample, as a width. & 0.01 \\ +yheight & m & ([-inf, inf]) vert . dimension of sample, as a height for cylinder/box & 0.01 \\ +zdepth & m & ([-inf, inf]) depth of sample & 0.005 \\ +R & m & Outer radius of sample in (x,z) plane for cylinder/sphere. & 0 \\ +target\_x & m & relative focus target position. & 0 \\ +target\_y & m & relative focus target position. & 0 \\ +target\_z & m & relative focus target position. & 1 \\ +target\_index & & Relative index of component to focus at, e.g. next is +1. & 1 \\ +focus\_xw & m & horiz. dimension of a rectangular area. & 0.5 \\ +focus\_yh & m & , vert. dimension of a rectangular area. & 0.5 \\ +focus\_aw & deg & , horiz. angular dimension of a rectangular area. & 0 \\ +focus\_ah & deg & , vert. angular dimension of a rectangular area. & 0 \\ +focus\_r & m & case of circular focusing, focusing radius. & 0 \\ +pd\_radius & & (0,inf) defined as (dx/x), where x is de mean value and dx the standard devition of the variable. & 0.0 \\ +pd\_length & & (0,inf) defined as (dx/x), where x is de mean value and dx the standard devition of the variable. & 0.0 \\ +pd\_theta & & (0,360) defined as (dx/x), where x is de mean value and dx the standard devition of the variable. & 0.0 \\ +pd\_phi & & (0,360) defined as (dx/x), where x is de mean value and dx the standard devition of the variable & 0.0 \\ +\bottomrule +\end{longtable} + +\subsection*{Links} +\begin{itemize} + \item \href{run:/home/willend/willend-McCode/mcstas-comps/sasmodels/SasView_cylinder_aniso.comp}{Source code} for \texttt{SasView\_cylinder\_aniso.comp}. +\end{itemize} +\IfFileExists{SasView_cylinder_aniso_static.tex}{\input{SasView_cylinder_aniso_static.tex}}{} \ No newline at end of file diff --git a/docs/manuals/mcstas/sasmodels/SasView_dab.tex b/docs/manuals/mcstas/sasmodels/SasView_dab.tex new file mode 100644 index 000000000..3c5a7cbdb --- /dev/null +++ b/docs/manuals/mcstas/sasmodels/SasView_dab.tex @@ -0,0 +1,56 @@ +\section{The \texttt{SasView\_dab} McStas Component} +SasView dab model component as sample description. + +\subsection*{Identification} +\begin{itemize} + \item \textbf{Site:} + \item \textbf{Author:} Jose Robledo + \item \textbf{Origin:} FZJ / DTU / ESS DMSC + \item \textbf{Date:} +\end{itemize} + +\subsection*{Description} +\begin{lstlisting} +SasView_dab component, generated from dab.c in sasmodels. + +Example: +SasView_dab(cor_length, +model_scale=1.0, model_abs=0.0, xwidth=0.01, yheight=0.01, zdepth=0.005, R=0, +int target_index=1, target_x=0, target_y=0, target_z=1, +focus_xw=0.5, focus_yh=0.5, focus_aw=0, focus_ah=0, focus_r=0, +pd_cor_length=0.0) +\end{lstlisting} + +\subsection*{Input parameters} +Parameters in \textbf{boldface} are required; the others are optional. + +\begin{longtable}{p{0.22\textwidth}p{0.12\textwidth}p{0.46\textwidth}p{0.14\textwidth}} +\toprule +\textbf{Name} & \textbf{Unit} & \textbf{Description} & \textbf{Default} \\ +\midrule +\endhead +cor\_length & Ang & ([0, inf]) correlation length. & 50.0 \\ +model\_scale & & Global scale factor for scattering kernel. For systems without inter-particle interference, the form factors can be related to the scattering intensity by the particle volume fraction. & 1.0 \\ +model\_abs & & Absorption cross section density at 2200 m/s. & 0.0 \\ +xwidth & m & ([-inf, inf]) Horiz. dimension of sample, as a width. & 0.01 \\ +yheight & m & ([-inf, inf]) vert . dimension of sample, as a height for cylinder/box & 0.01 \\ +zdepth & m & ([-inf, inf]) depth of sample & 0.005 \\ +R & m & Outer radius of sample in (x,z) plane for cylinder/sphere. & 0 \\ +target\_x & m & relative focus target position. & 0 \\ +target\_y & m & relative focus target position. & 0 \\ +target\_z & m & relative focus target position. & 1 \\ +target\_index & & Relative index of component to focus at, e.g. next is +1. & 1 \\ +focus\_xw & m & horiz. dimension of a rectangular area. & 0.5 \\ +focus\_yh & m & , vert. dimension of a rectangular area. & 0.5 \\ +focus\_aw & deg & , horiz. angular dimension of a rectangular area. & 0 \\ +focus\_ah & deg & , vert. angular dimension of a rectangular area. & 0 \\ +focus\_r & m & case of circular focusing, focusing radius. & 0 \\ +pd\_cor\_length & & (0,inf) defined as (dx/x), where x is de mean value and dx the standard devition of the variable & 0.0 \\ +\bottomrule +\end{longtable} + +\subsection*{Links} +\begin{itemize} + \item \href{run:/home/willend/willend-McCode/mcstas-comps/sasmodels/SasView_dab.comp}{Source code} for \texttt{SasView\_dab.comp}. +\end{itemize} +\IfFileExists{SasView_dab_static.tex}{\input{SasView_dab_static.tex}}{} \ No newline at end of file diff --git a/docs/manuals/mcstas/sasmodels/SasView_ellipsoid.tex b/docs/manuals/mcstas/sasmodels/SasView_ellipsoid.tex new file mode 100644 index 000000000..b7c5ed0a0 --- /dev/null +++ b/docs/manuals/mcstas/sasmodels/SasView_ellipsoid.tex @@ -0,0 +1,60 @@ +\section{The \texttt{SasView\_ellipsoid} McStas Component} +SasView ellipsoid model component as sample description. + +\subsection*{Identification} +\begin{itemize} + \item \textbf{Site:} + \item \textbf{Author:} Jose Robledo + \item \textbf{Origin:} FZJ / DTU / ESS DMSC + \item \textbf{Date:} +\end{itemize} + +\subsection*{Description} +\begin{lstlisting} +SasView_ellipsoid component, generated from ellipsoid.c in sasmodels. + +Example: +SasView_ellipsoid(sld, sld_solvent, radius_polar, radius_equatorial, +model_scale=1.0, model_abs=0.0, xwidth=0.01, yheight=0.01, zdepth=0.005, R=0, +int target_index=1, target_x=0, target_y=0, target_z=1, +focus_xw=0.5, focus_yh=0.5, focus_aw=0, focus_ah=0, focus_r=0, +pd_radius_polar=0.0, pd_radius_equatorial=0.0) +\end{lstlisting} + +\subsection*{Input parameters} +Parameters in \textbf{boldface} are required; the others are optional. + +\begin{longtable}{p{0.22\textwidth}p{0.12\textwidth}p{0.46\textwidth}p{0.14\textwidth}} +\toprule +\textbf{Name} & \textbf{Unit} & \textbf{Description} & \textbf{Default} \\ +\midrule +\endhead +sld & 1e-6/Ang\textasciicircum{}2 & ([-inf, inf]) Ellipsoid scattering length density. & 4 \\ +sld\_solvent & 1e-6/Ang\textasciicircum{}2 & ([-inf, inf]) Solvent scattering length density. & 1 \\ +radius\_polar & Ang & ([0, inf]) Polar radius. & 20 \\ +radius\_equatorial & Ang & ([0, inf]) Equatorial radius. & 400 \\ +model\_scale & & Global scale factor for scattering kernel. For systems without inter-particle interference, the form factors can be related to the scattering intensity by the particle volume fraction. & 1.0 \\ +model\_abs & & Absorption cross section density at 2200 m/s. & 0.0 \\ +xwidth & m & ([-inf, inf]) Horiz. dimension of sample, as a width. & 0.01 \\ +yheight & m & ([-inf, inf]) vert . dimension of sample, as a height for cylinder/box & 0.01 \\ +zdepth & m & ([-inf, inf]) depth of sample & 0.005 \\ +R & m & Outer radius of sample in (x,z) plane for cylinder/sphere. & 0 \\ +target\_x & m & relative focus target position. & 0 \\ +target\_y & m & relative focus target position. & 0 \\ +target\_z & m & relative focus target position. & 1 \\ +target\_index & & Relative index of component to focus at, e.g. next is +1. & 1 \\ +focus\_xw & m & horiz. dimension of a rectangular area. & 0.5 \\ +focus\_yh & m & , vert. dimension of a rectangular area. & 0.5 \\ +focus\_aw & deg & , horiz. angular dimension of a rectangular area. & 0 \\ +focus\_ah & deg & , vert. angular dimension of a rectangular area. & 0 \\ +focus\_r & m & case of circular focusing, focusing radius. & 0 \\ +pd\_radius\_polar & & (0,inf) defined as (dx/x), where x is de mean value and dx the standard devition of the variable. & 0.0 \\ +pd\_radius\_equatorial & & (0,inf) defined as (dx/x), where x is de mean value and dx the standard devition of the variable & 0.0 \\ +\bottomrule +\end{longtable} + +\subsection*{Links} +\begin{itemize} + \item \href{run:/home/willend/willend-McCode/mcstas-comps/sasmodels/SasView_ellipsoid.comp}{Source code} for \texttt{SasView\_ellipsoid.comp}. +\end{itemize} +\IfFileExists{SasView_ellipsoid_static.tex}{\input{SasView_ellipsoid_static.tex}}{} \ No newline at end of file diff --git a/docs/manuals/mcstas/sasmodels/SasView_ellipsoid_aniso.tex b/docs/manuals/mcstas/sasmodels/SasView_ellipsoid_aniso.tex new file mode 100644 index 000000000..309995c0a --- /dev/null +++ b/docs/manuals/mcstas/sasmodels/SasView_ellipsoid_aniso.tex @@ -0,0 +1,64 @@ +\section{The \texttt{SasView\_ellipsoid\_aniso} McStas Component} +SasView ellipsoid model component as sample description. + +\subsection*{Identification} +\begin{itemize} + \item \textbf{Site:} + \item \textbf{Author:} Jose Robledo + \item \textbf{Origin:} FZJ / DTU / ESS DMSC + \item \textbf{Date:} +\end{itemize} + +\subsection*{Description} +\begin{lstlisting} +SasView_ellipsoid component, generated from ellipsoid.c in sasmodels. + +Example: +SasView_ellipsoid_aniso(sld, sld_solvent, radius_polar, radius_equatorial, theta, phi, +model_scale=1.0, model_abs=0.0, xwidth=0.01, yheight=0.01, zdepth=0.005, R=0, +int target_index=1, target_x=0, target_y=0, target_z=1, +focus_xw=0.5, focus_yh=0.5, focus_aw=0, focus_ah=0, focus_r=0, +pd_radius_polar=0.0, pd_radius_equatorial=0.0, pd_theta=0.0, pd_phi=0.0) +\end{lstlisting} + +\subsection*{Input parameters} +Parameters in \textbf{boldface} are required; the others are optional. + +\begin{longtable}{p{0.22\textwidth}p{0.12\textwidth}p{0.46\textwidth}p{0.14\textwidth}} +\toprule +\textbf{Name} & \textbf{Unit} & \textbf{Description} & \textbf{Default} \\ +\midrule +\endhead +sld & 1e-6/Ang\textasciicircum{}2 & ([-inf, inf]) Ellipsoid scattering length density. & 4 \\ +sld\_solvent & 1e-6/Ang\textasciicircum{}2 & ([-inf, inf]) Solvent scattering length density. & 1 \\ +radius\_polar & Ang & ([0, inf]) Polar radius. & 20 \\ +radius\_equatorial & Ang & ([0, inf]) Equatorial radius. & 400 \\ +theta & & & 60 \\ +phi & & & 60 \\ +model\_scale & & Global scale factor for scattering kernel. For systems without inter-particle interference, the form factors can be related to the scattering intensity by the particle volume fraction. & 1.0 \\ +model\_abs & & Absorption cross section density at 2200 m/s. & 0.0 \\ +xwidth & m & ([-inf, inf]) Horiz. dimension of sample, as a width. & 0.01 \\ +yheight & m & ([-inf, inf]) vert . dimension of sample, as a height for cylinder/box & 0.01 \\ +zdepth & m & ([-inf, inf]) depth of sample & 0.005 \\ +R & m & Outer radius of sample in (x,z) plane for cylinder/sphere. & 0 \\ +target\_x & m & relative focus target position. & 0 \\ +target\_y & m & relative focus target position. & 0 \\ +target\_z & m & relative focus target position. & 1 \\ +target\_index & & Relative index of component to focus at, e.g. next is +1. & 1 \\ +focus\_xw & m & horiz. dimension of a rectangular area. & 0.5 \\ +focus\_yh & m & , vert. dimension of a rectangular area. & 0.5 \\ +focus\_aw & deg & , horiz. angular dimension of a rectangular area. & 0 \\ +focus\_ah & deg & , vert. angular dimension of a rectangular area. & 0 \\ +focus\_r & m & case of circular focusing, focusing radius. & 0 \\ +pd\_radius\_polar & & (0,inf) defined as (dx/x), where x is de mean value and dx the standard devition of the variable. & 0.0 \\ +pd\_radius\_equatorial & & (0,inf) defined as (dx/x), where x is de mean value and dx the standard devition of the variable. & 0.0 \\ +pd\_theta & & (0,360) defined as (dx/x), where x is de mean value and dx the standard devition of the variable. & 0.0 \\ +pd\_phi & & (0,360) defined as (dx/x), where x is de mean value and dx the standard devition of the variable & 0.0 \\ +\bottomrule +\end{longtable} + +\subsection*{Links} +\begin{itemize} + \item \href{run:/home/willend/willend-McCode/mcstas-comps/sasmodels/SasView_ellipsoid_aniso.comp}{Source code} for \texttt{SasView\_ellipsoid\_aniso.comp}. +\end{itemize} +\IfFileExists{SasView_ellipsoid_aniso_static.tex}{\input{SasView_ellipsoid_aniso_static.tex}}{} \ No newline at end of file diff --git a/docs/manuals/mcstas/sasmodels/SasView_elliptical_cylinder.tex b/docs/manuals/mcstas/sasmodels/SasView_elliptical_cylinder.tex new file mode 100644 index 000000000..9d083d095 --- /dev/null +++ b/docs/manuals/mcstas/sasmodels/SasView_elliptical_cylinder.tex @@ -0,0 +1,61 @@ +\section{The \texttt{SasView\_elliptical\_cylinder} McStas Component} +SasView elliptical\_cylinder model component as sample description. + +\subsection*{Identification} +\begin{itemize} + \item \textbf{Site:} + \item \textbf{Author:} Jose Robledo + \item \textbf{Origin:} FZJ / DTU / ESS DMSC + \item \textbf{Date:} +\end{itemize} + +\subsection*{Description} +\begin{lstlisting} +SasView_elliptical_cylinder component, generated from elliptical_cylinder.c in sasmodels. + +Example: +SasView_elliptical_cylinder(radius_minor, r_ratio, length, sld, sld_solvent, +model_scale=1.0, model_abs=0.0, xwidth=0.01, yheight=0.01, zdepth=0.005, R=0, +int target_index=1, target_x=0, target_y=0, target_z=1, +focus_xw=0.5, focus_yh=0.5, focus_aw=0, focus_ah=0, focus_r=0, +pd_radius_minor=0.0, pd_length=0.0) +\end{lstlisting} + +\subsection*{Input parameters} +Parameters in \textbf{boldface} are required; the others are optional. + +\begin{longtable}{p{0.22\textwidth}p{0.12\textwidth}p{0.46\textwidth}p{0.14\textwidth}} +\toprule +\textbf{Name} & \textbf{Unit} & \textbf{Description} & \textbf{Default} \\ +\midrule +\endhead +radius\_minor & Ang & ([0, inf]) Ellipse minor radius. & 20.0 \\ +r\_ratio & & ([1, inf]) Ratio of major radius over minor radius. & 1.5 \\ +length & Ang & ([1, inf]) Length of the cylinder. & 400.0 \\ +sld & 1e-6/Ang\textasciicircum{}2 & ([-inf, inf]) Cylinder scattering length density. & 4.0 \\ +sld\_solvent & 1e-6/Ang\textasciicircum{}2 & ([-inf, inf]) Solvent scattering length density. & 1.0 \\ +model\_scale & & Global scale factor for scattering kernel. For systems without inter-particle interference, the form factors can be related to the scattering intensity by the particle volume fraction. & 1.0 \\ +model\_abs & & Absorption cross section density at 2200 m/s. & 0.0 \\ +xwidth & m & ([-inf, inf]) Horiz. dimension of sample, as a width. & 0.01 \\ +yheight & m & ([-inf, inf]) vert . dimension of sample, as a height for cylinder/box & 0.01 \\ +zdepth & m & ([-inf, inf]) depth of sample & 0.005 \\ +R & m & Outer radius of sample in (x,z) plane for cylinder/sphere. & 0 \\ +target\_x & m & relative focus target position. & 0 \\ +target\_y & m & relative focus target position. & 0 \\ +target\_z & m & relative focus target position. & 1 \\ +target\_index & & Relative index of component to focus at, e.g. next is +1. & 1 \\ +focus\_xw & m & horiz. dimension of a rectangular area. & 0.5 \\ +focus\_yh & m & , vert. dimension of a rectangular area. & 0.5 \\ +focus\_aw & deg & , horiz. angular dimension of a rectangular area. & 0 \\ +focus\_ah & deg & , vert. angular dimension of a rectangular area. & 0 \\ +focus\_r & m & case of circular focusing, focusing radius. & 0 \\ +pd\_radius\_minor & & (0,inf) defined as (dx/x), where x is de mean value and dx the standard devition of the variable. & 0.0 \\ +pd\_length & & (0,inf) defined as (dx/x), where x is de mean value and dx the standard devition of the variable & 0.0 \\ +\bottomrule +\end{longtable} + +\subsection*{Links} +\begin{itemize} + \item \href{run:/home/willend/willend-McCode/mcstas-comps/sasmodels/SasView_elliptical_cylinder.comp}{Source code} for \texttt{SasView\_elliptical\_cylinder.comp}. +\end{itemize} +\IfFileExists{SasView_elliptical_cylinder_static.tex}{\input{SasView_elliptical_cylinder_static.tex}}{} \ No newline at end of file diff --git a/docs/manuals/mcstas/sasmodels/SasView_elliptical_cylinder_aniso.tex b/docs/manuals/mcstas/sasmodels/SasView_elliptical_cylinder_aniso.tex new file mode 100644 index 000000000..9726ceb7d --- /dev/null +++ b/docs/manuals/mcstas/sasmodels/SasView_elliptical_cylinder_aniso.tex @@ -0,0 +1,67 @@ +\section{The \texttt{SasView\_elliptical\_cylinder\_aniso} McStas Component} +SasView elliptical\_cylinder model component as sample description. + +\subsection*{Identification} +\begin{itemize} + \item \textbf{Site:} + \item \textbf{Author:} Jose Robledo + \item \textbf{Origin:} FZJ / DTU / ESS DMSC + \item \textbf{Date:} +\end{itemize} + +\subsection*{Description} +\begin{lstlisting} +SasView_elliptical_cylinder component, generated from elliptical_cylinder.c in sasmodels. + +Example: +SasView_elliptical_cylinder_aniso(radius_minor, r_ratio, length, sld, sld_solvent, theta, phi, Psi, +model_scale=1.0, model_abs=0.0, xwidth=0.01, yheight=0.01, zdepth=0.005, R=0, +int target_index=1, target_x=0, target_y=0, target_z=1, +focus_xw=0.5, focus_yh=0.5, focus_aw=0, focus_ah=0, focus_r=0, +pd_radius_minor=0.0, pd_length=0.0, pd_theta=0.0, pd_phi=0.0, pd_Psi=0.0) +\end{lstlisting} + +\subsection*{Input parameters} +Parameters in \textbf{boldface} are required; the others are optional. + +\begin{longtable}{p{0.22\textwidth}p{0.12\textwidth}p{0.46\textwidth}p{0.14\textwidth}} +\toprule +\textbf{Name} & \textbf{Unit} & \textbf{Description} & \textbf{Default} \\ +\midrule +\endhead +radius\_minor & Ang & ([0, inf]) Ellipse minor radius. & 20.0 \\ +r\_ratio & & ([1, inf]) Ratio of major radius over minor radius. & 1.5 \\ +length & Ang & ([1, inf]) Length of the cylinder. & 400.0 \\ +sld & 1e-6/Ang\textasciicircum{}2 & ([-inf, inf]) Cylinder scattering length density. & 4.0 \\ +sld\_solvent & 1e-6/Ang\textasciicircum{}2 & ([-inf, inf]) Solvent scattering length density. & 1.0 \\ +theta & & & 90.0 \\ +phi & & & 0 \\ +Psi & & & 0 \\ +model\_scale & & Global scale factor for scattering kernel. For systems without inter-particle interference, the form factors can be related to the scattering intensity by the particle volume fraction. & 1.0 \\ +model\_abs & & Absorption cross section density at 2200 m/s. & 0.0 \\ +xwidth & m & ([-inf, inf]) Horiz. dimension of sample, as a width. & 0.01 \\ +yheight & m & ([-inf, inf]) vert . dimension of sample, as a height for cylinder/box & 0.01 \\ +zdepth & m & ([-inf, inf]) depth of sample & 0.005 \\ +R & m & Outer radius of sample in (x,z) plane for cylinder/sphere. & 0 \\ +target\_x & m & relative focus target position. & 0 \\ +target\_y & m & relative focus target position. & 0 \\ +target\_z & m & relative focus target position. & 1 \\ +target\_index & & Relative index of component to focus at, e.g. next is +1. & 1 \\ +focus\_xw & m & horiz. dimension of a rectangular area. & 0.5 \\ +focus\_yh & m & , vert. dimension of a rectangular area. & 0.5 \\ +focus\_aw & deg & , horiz. angular dimension of a rectangular area. & 0 \\ +focus\_ah & deg & , vert. angular dimension of a rectangular area. & 0 \\ +focus\_r & m & case of circular focusing, focusing radius. & 0 \\ +pd\_radius\_minor & & (0,inf) defined as (dx/x), where x is de mean value and dx the standard devition of the variable. & 0.0 \\ +pd\_length & & (0,inf) defined as (dx/x), where x is de mean value and dx the standard devition of the variable. & 0.0 \\ +pd\_theta & & (0,360) defined as (dx/x), where x is de mean value and dx the standard devition of the variable. & 0.0 \\ +pd\_phi & & (0,360) defined as (dx/x), where x is de mean value and dx the standard devition of the variable. & 0.0 \\ +pd\_Psi & & (0,360) defined as (dx/x), where x is de mean value and dx the standard devition of the variable & 0.0 \\ +\bottomrule +\end{longtable} + +\subsection*{Links} +\begin{itemize} + \item \href{run:/home/willend/willend-McCode/mcstas-comps/sasmodels/SasView_elliptical_cylinder_aniso.comp}{Source code} for \texttt{SasView\_elliptical\_cylinder\_aniso.comp}. +\end{itemize} +\IfFileExists{SasView_elliptical_cylinder_aniso_static.tex}{\input{SasView_elliptical_cylinder_aniso_static.tex}}{} \ No newline at end of file diff --git a/docs/manuals/mcstas/sasmodels/SasView_fcc_paracrystal.tex b/docs/manuals/mcstas/sasmodels/SasView_fcc_paracrystal.tex new file mode 100644 index 000000000..85e9aa40f --- /dev/null +++ b/docs/manuals/mcstas/sasmodels/SasView_fcc_paracrystal.tex @@ -0,0 +1,60 @@ +\section{The \texttt{SasView\_fcc\_paracrystal} McStas Component} +SasView fcc\_paracrystal model component as sample description. + +\subsection*{Identification} +\begin{itemize} + \item \textbf{Site:} + \item \textbf{Author:} Jose Robledo + \item \textbf{Origin:} FZJ / DTU / ESS DMSC + \item \textbf{Date:} +\end{itemize} + +\subsection*{Description} +\begin{lstlisting} +SasView_fcc_paracrystal component, generated from fcc_paracrystal.c in sasmodels. + +Example: +SasView_fcc_paracrystal(dnn, d_factor, radius, sld, sld_solvent, +model_scale=1.0, model_abs=0.0, xwidth=0.01, yheight=0.01, zdepth=0.005, R=0, +int target_index=1, target_x=0, target_y=0, target_z=1, +focus_xw=0.5, focus_yh=0.5, focus_aw=0, focus_ah=0, focus_r=0, +pd_radius=0.0) +\end{lstlisting} + +\subsection*{Input parameters} +Parameters in \textbf{boldface} are required; the others are optional. + +\begin{longtable}{p{0.22\textwidth}p{0.12\textwidth}p{0.46\textwidth}p{0.14\textwidth}} +\toprule +\textbf{Name} & \textbf{Unit} & \textbf{Description} & \textbf{Default} \\ +\midrule +\endhead +dnn & Ang & ([-inf, inf]) Nearest neighbour distance. & 220 \\ +d\_factor & & ([-inf, inf]) Paracrystal distortion factor. & 0.06 \\ +radius & Ang & ([0, inf]) Particle radius. & 40 \\ +sld & 1e-6/Ang\textasciicircum{}2 & ([-inf, inf]) Particle scattering length density. & 4 \\ +sld\_solvent & 1e-6/Ang\textasciicircum{}2 & ([-inf, inf]) Solvent scattering length density. & 1 \\ +model\_scale & & Global scale factor for scattering kernel. For systems without inter-particle interference, the form factors can be related to the scattering intensity by the particle volume fraction. & 1.0 \\ +model\_abs & & Absorption cross section density at 2200 m/s. & 0.0 \\ +xwidth & m & ([-inf, inf]) Horiz. dimension of sample, as a width. & 0.01 \\ +yheight & m & ([-inf, inf]) vert . dimension of sample, as a height for cylinder/box & 0.01 \\ +zdepth & m & ([-inf, inf]) depth of sample & 0.005 \\ +R & m & Outer radius of sample in (x,z) plane for cylinder/sphere. & 0 \\ +target\_x & m & relative focus target position. & 0 \\ +target\_y & m & relative focus target position. & 0 \\ +target\_z & m & relative focus target position. & 1 \\ +target\_index & & Relative index of component to focus at, e.g. next is +1. & 1 \\ +focus\_xw & m & horiz. dimension of a rectangular area. & 0.5 \\ +focus\_yh & m & , vert. dimension of a rectangular area. & 0.5 \\ +focus\_aw & deg & , horiz. angular dimension of a rectangular area. & 0 \\ +focus\_ah & deg & , vert. angular dimension of a rectangular area. & 0 \\ +focus\_r & m & case of circular focusing, focusing radius. & 0 \\ +pd\_radius & & (0,inf) defined as (dx/x), where x is de mean value and dx the standard devition of the variable & 0.0 \\ +\bottomrule +\end{longtable} + +\subsection*{Links} +\begin{itemize} + \item \href{run:/home/willend/willend-McCode/mcstas-comps/sasmodels/SasView_fcc_paracrystal.comp}{Source code} for \texttt{SasView\_fcc\_paracrystal.comp}. +\end{itemize} +\IfFileExists{SasView_fcc_paracrystal_static.tex}{\input{SasView_fcc_paracrystal_static.tex}}{} \ No newline at end of file diff --git a/docs/manuals/mcstas/sasmodels/SasView_fcc_paracrystal_aniso.tex b/docs/manuals/mcstas/sasmodels/SasView_fcc_paracrystal_aniso.tex new file mode 100644 index 000000000..8cc901025 --- /dev/null +++ b/docs/manuals/mcstas/sasmodels/SasView_fcc_paracrystal_aniso.tex @@ -0,0 +1,66 @@ +\section{The \texttt{SasView\_fcc\_paracrystal\_aniso} McStas Component} +SasView fcc\_paracrystal model component as sample description. + +\subsection*{Identification} +\begin{itemize} + \item \textbf{Site:} + \item \textbf{Author:} Jose Robledo + \item \textbf{Origin:} FZJ / DTU / ESS DMSC + \item \textbf{Date:} +\end{itemize} + +\subsection*{Description} +\begin{lstlisting} +SasView_fcc_paracrystal component, generated from fcc_paracrystal.c in sasmodels. + +Example: +SasView_fcc_paracrystal_aniso(dnn, d_factor, radius, sld, sld_solvent, theta, phi, Psi, +model_scale=1.0, model_abs=0.0, xwidth=0.01, yheight=0.01, zdepth=0.005, R=0, +int target_index=1, target_x=0, target_y=0, target_z=1, +focus_xw=0.5, focus_yh=0.5, focus_aw=0, focus_ah=0, focus_r=0, +pd_radius=0.0, pd_theta=0.0, pd_phi=0.0, pd_Psi=0.0) +\end{lstlisting} + +\subsection*{Input parameters} +Parameters in \textbf{boldface} are required; the others are optional. + +\begin{longtable}{p{0.22\textwidth}p{0.12\textwidth}p{0.46\textwidth}p{0.14\textwidth}} +\toprule +\textbf{Name} & \textbf{Unit} & \textbf{Description} & \textbf{Default} \\ +\midrule +\endhead +dnn & Ang & ([-inf, inf]) Nearest neighbour distance. & 220 \\ +d\_factor & & ([-inf, inf]) Paracrystal distortion factor. & 0.06 \\ +radius & Ang & ([0, inf]) Particle radius. & 40 \\ +sld & 1e-6/Ang\textasciicircum{}2 & ([-inf, inf]) Particle scattering length density. & 4 \\ +sld\_solvent & 1e-6/Ang\textasciicircum{}2 & ([-inf, inf]) Solvent scattering length density. & 1 \\ +theta & & & 60 \\ +phi & & & 60 \\ +Psi & & & 60 \\ +model\_scale & & Global scale factor for scattering kernel. For systems without inter-particle interference, the form factors can be related to the scattering intensity by the particle volume fraction. & 1.0 \\ +model\_abs & & Absorption cross section density at 2200 m/s. & 0.0 \\ +xwidth & m & ([-inf, inf]) Horiz. dimension of sample, as a width. & 0.01 \\ +yheight & m & ([-inf, inf]) vert . dimension of sample, as a height for cylinder/box & 0.01 \\ +zdepth & m & ([-inf, inf]) depth of sample & 0.005 \\ +R & m & Outer radius of sample in (x,z) plane for cylinder/sphere. & 0 \\ +target\_x & m & relative focus target position. & 0 \\ +target\_y & m & relative focus target position. & 0 \\ +target\_z & m & relative focus target position. & 1 \\ +target\_index & & Relative index of component to focus at, e.g. next is +1. & 1 \\ +focus\_xw & m & horiz. dimension of a rectangular area. & 0.5 \\ +focus\_yh & m & , vert. dimension of a rectangular area. & 0.5 \\ +focus\_aw & deg & , horiz. angular dimension of a rectangular area. & 0 \\ +focus\_ah & deg & , vert. angular dimension of a rectangular area. & 0 \\ +focus\_r & m & case of circular focusing, focusing radius. & 0 \\ +pd\_radius & & (0,inf) defined as (dx/x), where x is de mean value and dx the standard devition of the variable. & 0.0 \\ +pd\_theta & & (0,360) defined as (dx/x), where x is de mean value and dx the standard devition of the variable. & 0.0 \\ +pd\_phi & & (0,360) defined as (dx/x), where x is de mean value and dx the standard devition of the variable. & 0.0 \\ +pd\_Psi & & (0,360) defined as (dx/x), where x is de mean value and dx the standard devition of the variable & 0.0 \\ +\bottomrule +\end{longtable} + +\subsection*{Links} +\begin{itemize} + \item \href{run:/home/willend/willend-McCode/mcstas-comps/sasmodels/SasView_fcc_paracrystal_aniso.comp}{Source code} for \texttt{SasView\_fcc\_paracrystal\_aniso.comp}. +\end{itemize} +\IfFileExists{SasView_fcc_paracrystal_aniso_static.tex}{\input{SasView_fcc_paracrystal_aniso_static.tex}}{} \ No newline at end of file diff --git a/docs/manuals/mcstas/sasmodels/SasView_flexible_cylinder.tex b/docs/manuals/mcstas/sasmodels/SasView_flexible_cylinder.tex new file mode 100644 index 000000000..eb2fbbb46 --- /dev/null +++ b/docs/manuals/mcstas/sasmodels/SasView_flexible_cylinder.tex @@ -0,0 +1,62 @@ +\section{The \texttt{SasView\_flexible\_cylinder} McStas Component} +SasView flexible\_cylinder model component as sample description. + +\subsection*{Identification} +\begin{itemize} + \item \textbf{Site:} + \item \textbf{Author:} Jose Robledo + \item \textbf{Origin:} FZJ / DTU / ESS DMSC + \item \textbf{Date:} +\end{itemize} + +\subsection*{Description} +\begin{lstlisting} +SasView_flexible_cylinder component, generated from flexible_cylinder.c in sasmodels. + +Example: +SasView_flexible_cylinder(length, kuhn_length, radius, sld, sld_solvent, +model_scale=1.0, model_abs=0.0, xwidth=0.01, yheight=0.01, zdepth=0.005, R=0, +int target_index=1, target_x=0, target_y=0, target_z=1, +focus_xw=0.5, focus_yh=0.5, focus_aw=0, focus_ah=0, focus_r=0, +pd_length=0.0, pd_kuhn_length=0.0, pd_radius=0.0) +\end{lstlisting} + +\subsection*{Input parameters} +Parameters in \textbf{boldface} are required; the others are optional. + +\begin{longtable}{p{0.22\textwidth}p{0.12\textwidth}p{0.46\textwidth}p{0.14\textwidth}} +\toprule +\textbf{Name} & \textbf{Unit} & \textbf{Description} & \textbf{Default} \\ +\midrule +\endhead +length & Ang & ([0, inf]) Length of the flexible cylinder. & 1000.0 \\ +kuhn\_length & Ang & ([0, inf]) Kuhn length of the flexible cylinder. & 100.0 \\ +radius & Ang & ([0, inf]) Radius of the flexible cylinder. & 20.0 \\ +sld & 1e-6/Ang\textasciicircum{}2 & ([-inf, inf]) Cylinder scattering length density. & 1.0 \\ +sld\_solvent & 1e-6/Ang\textasciicircum{}2 & ([-inf, inf]) Solvent scattering length density. & 6.3 \\ +model\_scale & & Global scale factor for scattering kernel. For systems without inter-particle interference, the form factors can be related to the scattering intensity by the particle volume fraction. & 1.0 \\ +model\_abs & & Absorption cross section density at 2200 m/s. & 0.0 \\ +xwidth & m & ([-inf, inf]) Horiz. dimension of sample, as a width. & 0.01 \\ +yheight & m & ([-inf, inf]) vert . dimension of sample, as a height for cylinder/box & 0.01 \\ +zdepth & m & ([-inf, inf]) depth of sample & 0.005 \\ +R & m & Outer radius of sample in (x,z) plane for cylinder/sphere. & 0 \\ +target\_x & m & relative focus target position. & 0 \\ +target\_y & m & relative focus target position. & 0 \\ +target\_z & m & relative focus target position. & 1 \\ +target\_index & & Relative index of component to focus at, e.g. next is +1. & 1 \\ +focus\_xw & m & horiz. dimension of a rectangular area. & 0.5 \\ +focus\_yh & m & , vert. dimension of a rectangular area. & 0.5 \\ +focus\_aw & deg & , horiz. angular dimension of a rectangular area. & 0 \\ +focus\_ah & deg & , vert. angular dimension of a rectangular area. & 0 \\ +focus\_r & m & case of circular focusing, focusing radius. & 0 \\ +pd\_length & & (0,inf) defined as (dx/x), where x is de mean value and dx the standard devition of the variable. & 0.0 \\ +pd\_kuhn\_length & & (0,inf) defined as (dx/x), where x is de mean value and dx the standard devition of the variable. & 0.0 \\ +pd\_radius & & (0,inf) defined as (dx/x), where x is de mean value and dx the standard devition of the variable & 0.0 \\ +\bottomrule +\end{longtable} + +\subsection*{Links} +\begin{itemize} + \item \href{run:/home/willend/willend-McCode/mcstas-comps/sasmodels/SasView_flexible_cylinder.comp}{Source code} for \texttt{SasView\_flexible\_cylinder.comp}. +\end{itemize} +\IfFileExists{SasView_flexible_cylinder_static.tex}{\input{SasView_flexible_cylinder_static.tex}}{} \ No newline at end of file diff --git a/docs/manuals/mcstas/sasmodels/SasView_flexible_cylinder_elliptical.tex b/docs/manuals/mcstas/sasmodels/SasView_flexible_cylinder_elliptical.tex new file mode 100644 index 000000000..44596fbb6 --- /dev/null +++ b/docs/manuals/mcstas/sasmodels/SasView_flexible_cylinder_elliptical.tex @@ -0,0 +1,63 @@ +\section{The \texttt{SasView\_flexible\_cylinder\_elliptical} McStas Component} +SasView flexible\_cylinder\_elliptical model component as sample description. + +\subsection*{Identification} +\begin{itemize} + \item \textbf{Site:} + \item \textbf{Author:} Jose Robledo + \item \textbf{Origin:} FZJ / DTU / ESS DMSC + \item \textbf{Date:} +\end{itemize} + +\subsection*{Description} +\begin{lstlisting} +SasView_flexible_cylinder_elliptical component, generated from flexible_cylinder_elliptical.c in sasmodels. + +Example: +SasView_flexible_cylinder_elliptical(length, kuhn_length, radius, axis_ratio, sld, sld_solvent, +model_scale=1.0, model_abs=0.0, xwidth=0.01, yheight=0.01, zdepth=0.005, R=0, +int target_index=1, target_x=0, target_y=0, target_z=1, +focus_xw=0.5, focus_yh=0.5, focus_aw=0, focus_ah=0, focus_r=0, +pd_length=0.0, pd_kuhn_length=0.0, pd_radius=0.0) +\end{lstlisting} + +\subsection*{Input parameters} +Parameters in \textbf{boldface} are required; the others are optional. + +\begin{longtable}{p{0.22\textwidth}p{0.12\textwidth}p{0.46\textwidth}p{0.14\textwidth}} +\toprule +\textbf{Name} & \textbf{Unit} & \textbf{Description} & \textbf{Default} \\ +\midrule +\endhead +length & Ang & ([0, inf]) Length of the flexible cylinder. & 1000.0 \\ +kuhn\_length & Ang & ([0, inf]) Kuhn length of the flexible cylinder. & 100.0 \\ +radius & Ang & ([1, inf]) Radius of the flexible cylinder. & 20.0 \\ +axis\_ratio & & ([0, inf]) Axis\_ratio (major\_radius/minor\_radius. & 1.5 \\ +sld & 1e-6/Ang\textasciicircum{}2 & ([-inf, inf]) Cylinder scattering length density. & 1.0 \\ +sld\_solvent & 1e-6/Ang\textasciicircum{}2 & ([-inf, inf]) Solvent scattering length density. & 6.3 \\ +model\_scale & & Global scale factor for scattering kernel. For systems without inter-particle interference, the form factors can be related to the scattering intensity by the particle volume fraction. & 1.0 \\ +model\_abs & & Absorption cross section density at 2200 m/s. & 0.0 \\ +xwidth & m & ([-inf, inf]) Horiz. dimension of sample, as a width. & 0.01 \\ +yheight & m & ([-inf, inf]) vert . dimension of sample, as a height for cylinder/box & 0.01 \\ +zdepth & m & ([-inf, inf]) depth of sample & 0.005 \\ +R & m & Outer radius of sample in (x,z) plane for cylinder/sphere. & 0 \\ +target\_x & m & relative focus target position. & 0 \\ +target\_y & m & relative focus target position. & 0 \\ +target\_z & m & relative focus target position. & 1 \\ +target\_index & & Relative index of component to focus at, e.g. next is +1. & 1 \\ +focus\_xw & m & horiz. dimension of a rectangular area. & 0.5 \\ +focus\_yh & m & , vert. dimension of a rectangular area. & 0.5 \\ +focus\_aw & deg & , horiz. angular dimension of a rectangular area. & 0 \\ +focus\_ah & deg & , vert. angular dimension of a rectangular area. & 0 \\ +focus\_r & m & case of circular focusing, focusing radius. & 0 \\ +pd\_length & & (0,inf) defined as (dx/x), where x is de mean value and dx the standard devition of the variable. & 0.0 \\ +pd\_kuhn\_length & & (0,inf) defined as (dx/x), where x is de mean value and dx the standard devition of the variable. & 0.0 \\ +pd\_radius & & (0,inf) defined as (dx/x), where x is de mean value and dx the standard devition of the variable & 0.0 \\ +\bottomrule +\end{longtable} + +\subsection*{Links} +\begin{itemize} + \item \href{run:/home/willend/willend-McCode/mcstas-comps/sasmodels/SasView_flexible_cylinder_elliptical.comp}{Source code} for \texttt{SasView\_flexible\_cylinder\_elliptical.comp}. +\end{itemize} +\IfFileExists{SasView_flexible_cylinder_elliptical_static.tex}{\input{SasView_flexible_cylinder_elliptical_static.tex}}{} \ No newline at end of file diff --git a/docs/manuals/mcstas/sasmodels/SasView_fractal.tex b/docs/manuals/mcstas/sasmodels/SasView_fractal.tex new file mode 100644 index 000000000..1ad221628 --- /dev/null +++ b/docs/manuals/mcstas/sasmodels/SasView_fractal.tex @@ -0,0 +1,62 @@ +\section{The \texttt{SasView\_fractal} McStas Component} +SasView fractal model component as sample description. + +\subsection*{Identification} +\begin{itemize} + \item \textbf{Site:} + \item \textbf{Author:} Jose Robledo + \item \textbf{Origin:} FZJ / DTU / ESS DMSC + \item \textbf{Date:} +\end{itemize} + +\subsection*{Description} +\begin{lstlisting} +SasView_fractal component, generated from fractal.c in sasmodels. + +Example: +SasView_fractal(volfraction, radius, fractal_dim, cor_length, sld_block, sld_solvent, +model_scale=1.0, model_abs=0.0, xwidth=0.01, yheight=0.01, zdepth=0.005, R=0, +int target_index=1, target_x=0, target_y=0, target_z=1, +focus_xw=0.5, focus_yh=0.5, focus_aw=0, focus_ah=0, focus_r=0, +pd_radius=0.0, pd_cor_length=0.0) +\end{lstlisting} + +\subsection*{Input parameters} +Parameters in \textbf{boldface} are required; the others are optional. + +\begin{longtable}{p{0.22\textwidth}p{0.12\textwidth}p{0.46\textwidth}p{0.14\textwidth}} +\toprule +\textbf{Name} & \textbf{Unit} & \textbf{Description} & \textbf{Default} \\ +\midrule +\endhead +volfraction & & ([0.0, 1]) volume fraction of blocks. & 0.05 \\ +radius & Ang & ([0.0, inf]) radius of particles. & 5.0 \\ +fractal\_dim & & ([0.0, 6.0]) fractal dimension. & 2.0 \\ +cor\_length & Ang & ([0.0, inf]) cluster correlation length. & 100.0 \\ +sld\_block & 1e-6/Ang\textasciicircum{}2 & ([-inf, inf]) scattering length density of particles. & 2.0 \\ +sld\_solvent & 1e-6/Ang\textasciicircum{}2 & ([-inf, inf]) scattering length density of solvent. & 6.4 \\ +model\_scale & & Global scale factor for scattering kernel. For systems without inter-particle interference, the form factors can be related to the scattering intensity by the particle volume fraction. & 1.0 \\ +model\_abs & & Absorption cross section density at 2200 m/s. & 0.0 \\ +xwidth & m & ([-inf, inf]) Horiz. dimension of sample, as a width. & 0.01 \\ +yheight & m & ([-inf, inf]) vert . dimension of sample, as a height for cylinder/box & 0.01 \\ +zdepth & m & ([-inf, inf]) depth of sample & 0.005 \\ +R & m & Outer radius of sample in (x,z) plane for cylinder/sphere. & 0 \\ +target\_x & m & relative focus target position. & 0 \\ +target\_y & m & relative focus target position. & 0 \\ +target\_z & m & relative focus target position. & 1 \\ +target\_index & & Relative index of component to focus at, e.g. next is +1. & 1 \\ +focus\_xw & m & horiz. dimension of a rectangular area. & 0.5 \\ +focus\_yh & m & , vert. dimension of a rectangular area. & 0.5 \\ +focus\_aw & deg & , horiz. angular dimension of a rectangular area. & 0 \\ +focus\_ah & deg & , vert. angular dimension of a rectangular area. & 0 \\ +focus\_r & m & case of circular focusing, focusing radius. & 0 \\ +pd\_radius & & (0,inf) defined as (dx/x), where x is de mean value and dx the standard devition of the variable. & 0.0 \\ +pd\_cor\_length & & (0,inf) defined as (dx/x), where x is de mean value and dx the standard devition of the variable & 0.0 \\ +\bottomrule +\end{longtable} + +\subsection*{Links} +\begin{itemize} + \item \href{run:/home/willend/willend-McCode/mcstas-comps/sasmodels/SasView_fractal.comp}{Source code} for \texttt{SasView\_fractal.comp}. +\end{itemize} +\IfFileExists{SasView_fractal_static.tex}{\input{SasView_fractal_static.tex}}{} \ No newline at end of file diff --git a/docs/manuals/mcstas/sasmodels/SasView_fractal_core_shell.tex b/docs/manuals/mcstas/sasmodels/SasView_fractal_core_shell.tex new file mode 100644 index 000000000..5e21a096c --- /dev/null +++ b/docs/manuals/mcstas/sasmodels/SasView_fractal_core_shell.tex @@ -0,0 +1,65 @@ +\section{The \texttt{SasView\_fractal\_core\_shell} McStas Component} +SasView fractal\_core\_shell model component as sample description. + +\subsection*{Identification} +\begin{itemize} + \item \textbf{Site:} + \item \textbf{Author:} Jose Robledo + \item \textbf{Origin:} FZJ / DTU / ESS DMSC + \item \textbf{Date:} +\end{itemize} + +\subsection*{Description} +\begin{lstlisting} +SasView_fractal_core_shell component, generated from fractal_core_shell.c in sasmodels. + +Example: +SasView_fractal_core_shell(radius, thickness, sld_core, sld_shell, sld_solvent, volfraction, fractal_dim, cor_length, +model_scale=1.0, model_abs=0.0, xwidth=0.01, yheight=0.01, zdepth=0.005, R=0, +int target_index=1, target_x=0, target_y=0, target_z=1, +focus_xw=0.5, focus_yh=0.5, focus_aw=0, focus_ah=0, focus_r=0, +pd_radius=0.0, pd_thickness=0.0, pd_cor_length=0.0) +\end{lstlisting} + +\subsection*{Input parameters} +Parameters in \textbf{boldface} are required; the others are optional. + +\begin{longtable}{p{0.22\textwidth}p{0.12\textwidth}p{0.46\textwidth}p{0.14\textwidth}} +\toprule +\textbf{Name} & \textbf{Unit} & \textbf{Description} & \textbf{Default} \\ +\midrule +\endhead +radius & Ang & ([0.0, inf]) Sphere core radius. & 60.0 \\ +thickness & Ang & ([0.0, inf]) Sphere shell thickness. & 10.0 \\ +sld\_core & 1e-6/Ang\textasciicircum{}2 & ([-inf, inf]) Sphere core scattering length density. & 1.0 \\ +sld\_shell & 1e-6/Ang\textasciicircum{}2 & ([-inf, inf]) Sphere shell scattering length density. & 2.0 \\ +sld\_solvent & 1e-6/Ang\textasciicircum{}2 & ([-inf, inf]) Solvent scattering length density. & 3.0 \\ +volfraction & & ([0.0, inf]) Volume fraction of building block spheres. & 0.05 \\ +fractal\_dim & & ([0.0, 6.0]) Fractal dimension. & 2.0 \\ +cor\_length & Ang & ([0.0, inf]) Correlation length of fractal-like aggregates. & 100.0 \\ +model\_scale & & Global scale factor for scattering kernel. For systems without inter-particle interference, the form factors can be related to the scattering intensity by the particle volume fraction. & 1.0 \\ +model\_abs & & Absorption cross section density at 2200 m/s. & 0.0 \\ +xwidth & m & ([-inf, inf]) Horiz. dimension of sample, as a width. & 0.01 \\ +yheight & m & ([-inf, inf]) vert . dimension of sample, as a height for cylinder/box & 0.01 \\ +zdepth & m & ([-inf, inf]) depth of sample & 0.005 \\ +R & m & Outer radius of sample in (x,z) plane for cylinder/sphere. & 0 \\ +target\_x & m & relative focus target position. & 0 \\ +target\_y & m & relative focus target position. & 0 \\ +target\_z & m & relative focus target position. & 1 \\ +target\_index & & Relative index of component to focus at, e.g. next is +1. & 1 \\ +focus\_xw & m & horiz. dimension of a rectangular area. & 0.5 \\ +focus\_yh & m & , vert. dimension of a rectangular area. & 0.5 \\ +focus\_aw & deg & , horiz. angular dimension of a rectangular area. & 0 \\ +focus\_ah & deg & , vert. angular dimension of a rectangular area. & 0 \\ +focus\_r & m & case of circular focusing, focusing radius. & 0 \\ +pd\_radius & & (0,inf) defined as (dx/x), where x is de mean value and dx the standard devition of the variable. & 0.0 \\ +pd\_thickness & & (0,inf) defined as (dx/x), where x is de mean value and dx the standard devition of the variable. & 0.0 \\ +pd\_cor\_length & & (0,inf) defined as (dx/x), where x is de mean value and dx the standard devition of the variable & 0.0 \\ +\bottomrule +\end{longtable} + +\subsection*{Links} +\begin{itemize} + \item \href{run:/home/willend/willend-McCode/mcstas-comps/sasmodels/SasView_fractal_core_shell.comp}{Source code} for \texttt{SasView\_fractal\_core\_shell.comp}. +\end{itemize} +\IfFileExists{SasView_fractal_core_shell_static.tex}{\input{SasView_fractal_core_shell_static.tex}}{} \ No newline at end of file diff --git a/docs/manuals/mcstas/sasmodels/SasView_fuzzy_sphere.tex b/docs/manuals/mcstas/sasmodels/SasView_fuzzy_sphere.tex new file mode 100644 index 000000000..0c7deabe8 --- /dev/null +++ b/docs/manuals/mcstas/sasmodels/SasView_fuzzy_sphere.tex @@ -0,0 +1,59 @@ +\section{The \texttt{SasView\_fuzzy\_sphere} McStas Component} +SasView fuzzy\_sphere model component as sample description. + +\subsection*{Identification} +\begin{itemize} + \item \textbf{Site:} + \item \textbf{Author:} Jose Robledo + \item \textbf{Origin:} FZJ / DTU / ESS DMSC + \item \textbf{Date:} +\end{itemize} + +\subsection*{Description} +\begin{lstlisting} +SasView_fuzzy_sphere component, generated from fuzzy_sphere.c in sasmodels. + +Example: +SasView_fuzzy_sphere(sld, sld_solvent, radius, fuzziness, +model_scale=1.0, model_abs=0.0, xwidth=0.01, yheight=0.01, zdepth=0.005, R=0, +int target_index=1, target_x=0, target_y=0, target_z=1, +focus_xw=0.5, focus_yh=0.5, focus_aw=0, focus_ah=0, focus_r=0, +pd_radius=0.0) +\end{lstlisting} + +\subsection*{Input parameters} +Parameters in \textbf{boldface} are required; the others are optional. + +\begin{longtable}{p{0.22\textwidth}p{0.12\textwidth}p{0.46\textwidth}p{0.14\textwidth}} +\toprule +\textbf{Name} & \textbf{Unit} & \textbf{Description} & \textbf{Default} \\ +\midrule +\endhead +sld & 1e-6/Ang\textasciicircum{}2 & ([-inf, inf]) Particle scattering length density. & 1 \\ +sld\_solvent & 1e-6/Ang\textasciicircum{}2 & ([-inf, inf]) Solvent scattering length density. & 3 \\ +radius & Ang & ([0, inf]) Sphere radius. & 60 \\ +fuzziness & Ang & ([0, inf]) std deviation of Gaussian convolution for interface (must be \textless{}\textless{} radius). & 10 \\ +model\_scale & & Global scale factor for scattering kernel. For systems without inter-particle interference, the form factors can be related to the scattering intensity by the particle volume fraction. & 1.0 \\ +model\_abs & & Absorption cross section density at 2200 m/s. & 0.0 \\ +xwidth & m & ([-inf, inf]) Horiz. dimension of sample, as a width. & 0.01 \\ +yheight & m & ([-inf, inf]) vert . dimension of sample, as a height for cylinder/box & 0.01 \\ +zdepth & m & ([-inf, inf]) depth of sample & 0.005 \\ +R & m & Outer radius of sample in (x,z) plane for cylinder/sphere. & 0 \\ +target\_x & m & relative focus target position. & 0 \\ +target\_y & m & relative focus target position. & 0 \\ +target\_z & m & relative focus target position. & 1 \\ +target\_index & & Relative index of component to focus at, e.g. next is +1. & 1 \\ +focus\_xw & m & horiz. dimension of a rectangular area. & 0.5 \\ +focus\_yh & m & , vert. dimension of a rectangular area. & 0.5 \\ +focus\_aw & deg & , horiz. angular dimension of a rectangular area. & 0 \\ +focus\_ah & deg & , vert. angular dimension of a rectangular area. & 0 \\ +focus\_r & m & case of circular focusing, focusing radius. & 0 \\ +pd\_radius & & (0,inf) defined as (dx/x), where x is de mean value and dx the standard devition of the variable & 0.0 \\ +\bottomrule +\end{longtable} + +\subsection*{Links} +\begin{itemize} + \item \href{run:/home/willend/willend-McCode/mcstas-comps/sasmodels/SasView_fuzzy_sphere.comp}{Source code} for \texttt{SasView\_fuzzy\_sphere.comp}. +\end{itemize} +\IfFileExists{SasView_fuzzy_sphere_static.tex}{\input{SasView_fuzzy_sphere_static.tex}}{} \ No newline at end of file diff --git a/docs/manuals/mcstas/sasmodels/SasView_gauss_lorentz_gel.tex b/docs/manuals/mcstas/sasmodels/SasView_gauss_lorentz_gel.tex new file mode 100644 index 000000000..3cf7bea1a --- /dev/null +++ b/docs/manuals/mcstas/sasmodels/SasView_gauss_lorentz_gel.tex @@ -0,0 +1,60 @@ +\section{The \texttt{SasView\_gauss\_lorentz\_gel} McStas Component} +SasView gauss\_lorentz\_gel model component as sample description. + +\subsection*{Identification} +\begin{itemize} + \item \textbf{Site:} + \item \textbf{Author:} Jose Robledo + \item \textbf{Origin:} FZJ / DTU / ESS DMSC + \item \textbf{Date:} +\end{itemize} + +\subsection*{Description} +\begin{lstlisting} +SasView_gauss_lorentz_gel component, generated from gauss_lorentz_gel.c in sasmodels. + +Example: +SasView_gauss_lorentz_gel(gauss_scale, cor_length_static, lorentz_scale, cor_length_dynamic, +model_scale=1.0, model_abs=0.0, xwidth=0.01, yheight=0.01, zdepth=0.005, R=0, +int target_index=1, target_x=0, target_y=0, target_z=1, +focus_xw=0.5, focus_yh=0.5, focus_aw=0, focus_ah=0, focus_r=0, +pd_cor_length_static=0.0, pd_cor_length_dynamic=0.0) +\end{lstlisting} + +\subsection*{Input parameters} +Parameters in \textbf{boldface} are required; the others are optional. + +\begin{longtable}{p{0.22\textwidth}p{0.12\textwidth}p{0.46\textwidth}p{0.14\textwidth}} +\toprule +\textbf{Name} & \textbf{Unit} & \textbf{Description} & \textbf{Default} \\ +\midrule +\endhead +gauss\_scale & & ([-inf, inf]) Gauss scale factor. & 100.0 \\ +cor\_length\_static & Ang & ([0, inf]) Static correlation length. & 100.0 \\ +lorentz\_scale & & ([-inf, inf]) Lorentzian scale factor. & 50.0 \\ +cor\_length\_dynamic & Ang & ([0, inf]) Dynamic correlation length. & 20.0 \\ +model\_scale & & Global scale factor for scattering kernel. For systems without inter-particle interference, the form factors can be related to the scattering intensity by the particle volume fraction. & 1.0 \\ +model\_abs & & Absorption cross section density at 2200 m/s. & 0.0 \\ +xwidth & m & ([-inf, inf]) Horiz. dimension of sample, as a width. & 0.01 \\ +yheight & m & ([-inf, inf]) vert . dimension of sample, as a height for cylinder/box & 0.01 \\ +zdepth & m & ([-inf, inf]) depth of sample & 0.005 \\ +R & m & Outer radius of sample in (x,z) plane for cylinder/sphere. & 0 \\ +target\_x & m & relative focus target position. & 0 \\ +target\_y & m & relative focus target position. & 0 \\ +target\_z & m & relative focus target position. & 1 \\ +target\_index & & Relative index of component to focus at, e.g. next is +1. & 1 \\ +focus\_xw & m & horiz. dimension of a rectangular area. & 0.5 \\ +focus\_yh & m & , vert. dimension of a rectangular area. & 0.5 \\ +focus\_aw & deg & , horiz. angular dimension of a rectangular area. & 0 \\ +focus\_ah & deg & , vert. angular dimension of a rectangular area. & 0 \\ +focus\_r & m & case of circular focusing, focusing radius. & 0 \\ +pd\_cor\_length\_static & & (0,inf) defined as (dx/x), where x is de mean value and dx the standard devition of the variable. & 0.0 \\ +pd\_cor\_length\_dynamic & & (0,inf) defined as (dx/x), where x is de mean value and dx the standard devition of the variable & 0.0 \\ +\bottomrule +\end{longtable} + +\subsection*{Links} +\begin{itemize} + \item \href{run:/home/willend/willend-McCode/mcstas-comps/sasmodels/SasView_gauss_lorentz_gel.comp}{Source code} for \texttt{SasView\_gauss\_lorentz\_gel.comp}. +\end{itemize} +\IfFileExists{SasView_gauss_lorentz_gel_static.tex}{\input{SasView_gauss_lorentz_gel_static.tex}}{} \ No newline at end of file diff --git a/docs/manuals/mcstas/sasmodels/SasView_gaussian_peak.tex b/docs/manuals/mcstas/sasmodels/SasView_gaussian_peak.tex new file mode 100644 index 000000000..9f4b50b23 --- /dev/null +++ b/docs/manuals/mcstas/sasmodels/SasView_gaussian_peak.tex @@ -0,0 +1,56 @@ +\section{The \texttt{SasView\_gaussian\_peak} McStas Component} +SasView gaussian\_peak model component as sample description. + +\subsection*{Identification} +\begin{itemize} + \item \textbf{Site:} + \item \textbf{Author:} Jose Robledo + \item \textbf{Origin:} FZJ / DTU / ESS DMSC + \item \textbf{Date:} +\end{itemize} + +\subsection*{Description} +\begin{lstlisting} +SasView_gaussian_peak component, generated from gaussian_peak.c in sasmodels. + +Example: +SasView_gaussian_peak(peak_pos, sigma, +model_scale=1.0, model_abs=0.0, xwidth=0.01, yheight=0.01, zdepth=0.005, R=0, +int target_index=1, target_x=0, target_y=0, target_z=1, +focus_xw=0.5, focus_yh=0.5, focus_aw=0, focus_ah=0, focus_r=0, +) +\end{lstlisting} + +\subsection*{Input parameters} +Parameters in \textbf{boldface} are required; the others are optional. + +\begin{longtable}{p{0.22\textwidth}p{0.12\textwidth}p{0.46\textwidth}p{0.14\textwidth}} +\toprule +\textbf{Name} & \textbf{Unit} & \textbf{Description} & \textbf{Default} \\ +\midrule +\endhead +peak\_pos & 1/Ang & ([-inf, inf]) Peak position. & 0.05 \\ +sigma & 1/Ang & ([0, inf]) Peak width (standard deviation). & 0.005 \\ +model\_scale & & Global scale factor for scattering kernel. For systems without inter-particle interference, the form factors can be related to the scattering intensity by the particle volume fraction. & 1.0 \\ +model\_abs & & Absorption cross section density at 2200 m/s. & 0.0 \\ +xwidth & m & ([-inf, inf]) Horiz. dimension of sample, as a width. & 0.01 \\ +yheight & m & ([-inf, inf]) vert . dimension of sample, as a height for cylinder/box & 0.01 \\ +zdepth & m & ([-inf, inf]) depth of sample & 0.005 \\ +R & m & Outer radius of sample in (x,z) plane for cylinder/sphere. & 0 \\ +target\_x & m & relative focus target position. & 0 \\ +target\_y & m & relative focus target position. & 0 \\ +target\_z & m & relative focus target position. & 1 \\ +target\_index & & Relative index of component to focus at, e.g. next is +1. & 1 \\ +focus\_xw & m & horiz. dimension of a rectangular area. & 0.5 \\ +focus\_yh & m & , vert. dimension of a rectangular area. & 0.5 \\ +focus\_aw & deg & , horiz. angular dimension of a rectangular area. & 0 \\ +focus\_ah & deg & , vert. angular dimension of a rectangular area. & 0 \\ +focus\_r & m & case of circular focusing, focusing radius. & 0 \\ +\bottomrule +\end{longtable} + +\subsection*{Links} +\begin{itemize} + \item \href{run:/home/willend/willend-McCode/mcstas-comps/sasmodels/SasView_gaussian_peak.comp}{Source code} for \texttt{SasView\_gaussian\_peak.comp}. +\end{itemize} +\IfFileExists{SasView_gaussian_peak_static.tex}{\input{SasView_gaussian_peak_static.tex}}{} \ No newline at end of file diff --git a/docs/manuals/mcstas/sasmodels/SasView_gel_fit.tex b/docs/manuals/mcstas/sasmodels/SasView_gel_fit.tex new file mode 100644 index 000000000..b059da3d3 --- /dev/null +++ b/docs/manuals/mcstas/sasmodels/SasView_gel_fit.tex @@ -0,0 +1,61 @@ +\section{The \texttt{SasView\_gel\_fit} McStas Component} +SasView gel\_fit model component as sample description. + +\subsection*{Identification} +\begin{itemize} + \item \textbf{Site:} + \item \textbf{Author:} Jose Robledo + \item \textbf{Origin:} FZJ / DTU / ESS DMSC + \item \textbf{Date:} +\end{itemize} + +\subsection*{Description} +\begin{lstlisting} +SasView_gel_fit component, generated from gel_fit.c in sasmodels. + +Example: +SasView_gel_fit(guinier_scale, lorentz_scale, rg, fractal_dim, cor_length, +model_scale=1.0, model_abs=0.0, xwidth=0.01, yheight=0.01, zdepth=0.005, R=0, +int target_index=1, target_x=0, target_y=0, target_z=1, +focus_xw=0.5, focus_yh=0.5, focus_aw=0, focus_ah=0, focus_r=0, +pd_rg=0.0, pd_cor_length=0.0) +\end{lstlisting} + +\subsection*{Input parameters} +Parameters in \textbf{boldface} are required; the others are optional. + +\begin{longtable}{p{0.22\textwidth}p{0.12\textwidth}p{0.46\textwidth}p{0.14\textwidth}} +\toprule +\textbf{Name} & \textbf{Unit} & \textbf{Description} & \textbf{Default} \\ +\midrule +\endhead +guinier\_scale & cm\textasciicircum{}-1 & ([-inf, inf]) Guinier term scale. & 1.7 \\ +lorentz\_scale & cm\textasciicircum{}-1 & ([-inf, inf]) Lorentz term scale. & 3.5 \\ +rg & Ang & ([2, inf]) Radius of gyration. & 104.0 \\ +fractal\_dim & & ([0, inf]) Fractal exponent. & 2.0 \\ +cor\_length & Ang & ([0, inf]) Correlation length. & 16.0 \\ +model\_scale & & Global scale factor for scattering kernel. For systems without inter-particle interference, the form factors can be related to the scattering intensity by the particle volume fraction. & 1.0 \\ +model\_abs & & Absorption cross section density at 2200 m/s. & 0.0 \\ +xwidth & m & ([-inf, inf]) Horiz. dimension of sample, as a width. & 0.01 \\ +yheight & m & ([-inf, inf]) vert . dimension of sample, as a height for cylinder/box & 0.01 \\ +zdepth & m & ([-inf, inf]) depth of sample & 0.005 \\ +R & m & Outer radius of sample in (x,z) plane for cylinder/sphere. & 0 \\ +target\_x & m & relative focus target position. & 0 \\ +target\_y & m & relative focus target position. & 0 \\ +target\_z & m & relative focus target position. & 1 \\ +target\_index & & Relative index of component to focus at, e.g. next is +1. & 1 \\ +focus\_xw & m & horiz. dimension of a rectangular area. & 0.5 \\ +focus\_yh & m & , vert. dimension of a rectangular area. & 0.5 \\ +focus\_aw & deg & , horiz. angular dimension of a rectangular area. & 0 \\ +focus\_ah & deg & , vert. angular dimension of a rectangular area. & 0 \\ +focus\_r & m & case of circular focusing, focusing radius. & 0 \\ +pd\_rg & & (0,inf) defined as (dx/x), where x is de mean value and dx the standard devition of the variable. & 0.0 \\ +pd\_cor\_length & & (0,inf) defined as (dx/x), where x is de mean value and dx the standard devition of the variable & 0.0 \\ +\bottomrule +\end{longtable} + +\subsection*{Links} +\begin{itemize} + \item \href{run:/home/willend/willend-McCode/mcstas-comps/sasmodels/SasView_gel_fit.comp}{Source code} for \texttt{SasView\_gel\_fit.comp}. +\end{itemize} +\IfFileExists{SasView_gel_fit_static.tex}{\input{SasView_gel_fit_static.tex}}{} \ No newline at end of file diff --git a/docs/manuals/mcstas/sasmodels/SasView_guinier.tex b/docs/manuals/mcstas/sasmodels/SasView_guinier.tex new file mode 100644 index 000000000..d79b945c1 --- /dev/null +++ b/docs/manuals/mcstas/sasmodels/SasView_guinier.tex @@ -0,0 +1,56 @@ +\section{The \texttt{SasView\_guinier} McStas Component} +SasView guinier model component as sample description. + +\subsection*{Identification} +\begin{itemize} + \item \textbf{Site:} + \item \textbf{Author:} Jose Robledo + \item \textbf{Origin:} FZJ / DTU / ESS DMSC + \item \textbf{Date:} +\end{itemize} + +\subsection*{Description} +\begin{lstlisting} +SasView_guinier component, generated from guinier.c in sasmodels. + +Example: +SasView_guinier(rg, +model_scale=1.0, model_abs=0.0, xwidth=0.01, yheight=0.01, zdepth=0.005, R=0, +int target_index=1, target_x=0, target_y=0, target_z=1, +focus_xw=0.5, focus_yh=0.5, focus_aw=0, focus_ah=0, focus_r=0, +pd_rg=0.0) +\end{lstlisting} + +\subsection*{Input parameters} +Parameters in \textbf{boldface} are required; the others are optional. + +\begin{longtable}{p{0.22\textwidth}p{0.12\textwidth}p{0.46\textwidth}p{0.14\textwidth}} +\toprule +\textbf{Name} & \textbf{Unit} & \textbf{Description} & \textbf{Default} \\ +\midrule +\endhead +rg & Ang & ([-inf, inf]) Radius of Gyration. & 60.0 \\ +model\_scale & & Global scale factor for scattering kernel. For systems without inter-particle interference, the form factors can be related to the scattering intensity by the particle volume fraction. & 1.0 \\ +model\_abs & & Absorption cross section density at 2200 m/s. & 0.0 \\ +xwidth & m & ([-inf, inf]) Horiz. dimension of sample, as a width. & 0.01 \\ +yheight & m & ([-inf, inf]) vert . dimension of sample, as a height for cylinder/box & 0.01 \\ +zdepth & m & ([-inf, inf]) depth of sample & 0.005 \\ +R & m & Outer radius of sample in (x,z) plane for cylinder/sphere. & 0 \\ +target\_x & m & relative focus target position. & 0 \\ +target\_y & m & relative focus target position. & 0 \\ +target\_z & m & relative focus target position. & 1 \\ +target\_index & & Relative index of component to focus at, e.g. next is +1. & 1 \\ +focus\_xw & m & horiz. dimension of a rectangular area. & 0.5 \\ +focus\_yh & m & , vert. dimension of a rectangular area. & 0.5 \\ +focus\_aw & deg & , horiz. angular dimension of a rectangular area. & 0 \\ +focus\_ah & deg & , vert. angular dimension of a rectangular area. & 0 \\ +focus\_r & m & case of circular focusing, focusing radius. & 0 \\ +pd\_rg & & (0,inf) defined as (dx/x), where x is de mean value and dx the standard devition of the variable & 0.0 \\ +\bottomrule +\end{longtable} + +\subsection*{Links} +\begin{itemize} + \item \href{run:/home/willend/willend-McCode/mcstas-comps/sasmodels/SasView_guinier.comp}{Source code} for \texttt{SasView\_guinier.comp}. +\end{itemize} +\IfFileExists{SasView_guinier_static.tex}{\input{SasView_guinier_static.tex}}{} \ No newline at end of file diff --git a/docs/manuals/mcstas/sasmodels/SasView_guinier_porod.tex b/docs/manuals/mcstas/sasmodels/SasView_guinier_porod.tex new file mode 100644 index 000000000..42bca66b8 --- /dev/null +++ b/docs/manuals/mcstas/sasmodels/SasView_guinier_porod.tex @@ -0,0 +1,58 @@ +\section{The \texttt{SasView\_guinier\_porod} McStas Component} +SasView guinier\_porod model component as sample description. + +\subsection*{Identification} +\begin{itemize} + \item \textbf{Site:} + \item \textbf{Author:} Jose Robledo + \item \textbf{Origin:} FZJ / DTU / ESS DMSC + \item \textbf{Date:} +\end{itemize} + +\subsection*{Description} +\begin{lstlisting} +SasView_guinier_porod component, generated from guinier_porod.c in sasmodels. + +Example: +SasView_guinier_porod(rg, s, porod_exp, +model_scale=1.0, model_abs=0.0, xwidth=0.01, yheight=0.01, zdepth=0.005, R=0, +int target_index=1, target_x=0, target_y=0, target_z=1, +focus_xw=0.5, focus_yh=0.5, focus_aw=0, focus_ah=0, focus_r=0, +pd_rg=0.0) +\end{lstlisting} + +\subsection*{Input parameters} +Parameters in \textbf{boldface} are required; the others are optional. + +\begin{longtable}{p{0.22\textwidth}p{0.12\textwidth}p{0.46\textwidth}p{0.14\textwidth}} +\toprule +\textbf{Name} & \textbf{Unit} & \textbf{Description} & \textbf{Default} \\ +\midrule +\endhead +rg & Ang & ([0, inf]) Radius of gyration. & 60.0 \\ +s & & ([0, inf]) Dimension variable. & 1.0 \\ +porod\_exp & & ([0, inf]) Porod exponent. & 3.0 \\ +model\_scale & & Global scale factor for scattering kernel. For systems without inter-particle interference, the form factors can be related to the scattering intensity by the particle volume fraction. & 1.0 \\ +model\_abs & & Absorption cross section density at 2200 m/s. & 0.0 \\ +xwidth & m & ([-inf, inf]) Horiz. dimension of sample, as a width. & 0.01 \\ +yheight & m & ([-inf, inf]) vert . dimension of sample, as a height for cylinder/box & 0.01 \\ +zdepth & m & ([-inf, inf]) depth of sample & 0.005 \\ +R & m & Outer radius of sample in (x,z) plane for cylinder/sphere. & 0 \\ +target\_x & m & relative focus target position. & 0 \\ +target\_y & m & relative focus target position. & 0 \\ +target\_z & m & relative focus target position. & 1 \\ +target\_index & & Relative index of component to focus at, e.g. next is +1. & 1 \\ +focus\_xw & m & horiz. dimension of a rectangular area. & 0.5 \\ +focus\_yh & m & , vert. dimension of a rectangular area. & 0.5 \\ +focus\_aw & deg & , horiz. angular dimension of a rectangular area. & 0 \\ +focus\_ah & deg & , vert. angular dimension of a rectangular area. & 0 \\ +focus\_r & m & case of circular focusing, focusing radius. & 0 \\ +pd\_rg & & (0,inf) defined as (dx/x), where x is de mean value and dx the standard devition of the variable & 0.0 \\ +\bottomrule +\end{longtable} + +\subsection*{Links} +\begin{itemize} + \item \href{run:/home/willend/willend-McCode/mcstas-comps/sasmodels/SasView_guinier_porod.comp}{Source code} for \texttt{SasView\_guinier\_porod.comp}. +\end{itemize} +\IfFileExists{SasView_guinier_porod_static.tex}{\input{SasView_guinier_porod_static.tex}}{} \ No newline at end of file diff --git a/docs/manuals/mcstas/sasmodels/SasView_hardsphere.tex b/docs/manuals/mcstas/sasmodels/SasView_hardsphere.tex new file mode 100644 index 000000000..29d8fe35b --- /dev/null +++ b/docs/manuals/mcstas/sasmodels/SasView_hardsphere.tex @@ -0,0 +1,57 @@ +\section{The \texttt{SasView\_hardsphere} McStas Component} +SasView hardsphere model component as sample description. + +\subsection*{Identification} +\begin{itemize} + \item \textbf{Site:} + \item \textbf{Author:} Jose Robledo + \item \textbf{Origin:} FZJ / DTU / ESS DMSC + \item \textbf{Date:} +\end{itemize} + +\subsection*{Description} +\begin{lstlisting} +SasView_hardsphere component, generated from hardsphere.c in sasmodels. + +Example: +SasView_hardsphere(radius_effective, volfraction, +model_scale=1.0, model_abs=0.0, xwidth=0.01, yheight=0.01, zdepth=0.005, R=0, +int target_index=1, target_x=0, target_y=0, target_z=1, +focus_xw=0.5, focus_yh=0.5, focus_aw=0, focus_ah=0, focus_r=0, +pd_radius_effective=0.0) +\end{lstlisting} + +\subsection*{Input parameters} +Parameters in \textbf{boldface} are required; the others are optional. + +\begin{longtable}{p{0.22\textwidth}p{0.12\textwidth}p{0.46\textwidth}p{0.14\textwidth}} +\toprule +\textbf{Name} & \textbf{Unit} & \textbf{Description} & \textbf{Default} \\ +\midrule +\endhead +radius\_effective & Ang & ([0, inf]) effective radius of hard sphere. & 50.0 \\ +volfraction & & ([0, 0.74]) volume fraction of hard spheres. & 0.2 \\ +model\_scale & & Global scale factor for scattering kernel. For systems without inter-particle interference, the form factors can be related to the scattering intensity by the particle volume fraction. & 1.0 \\ +model\_abs & & Absorption cross section density at 2200 m/s. & 0.0 \\ +xwidth & m & ([-inf, inf]) Horiz. dimension of sample, as a width. & 0.01 \\ +yheight & m & ([-inf, inf]) vert . dimension of sample, as a height for cylinder/box & 0.01 \\ +zdepth & m & ([-inf, inf]) depth of sample & 0.005 \\ +R & m & Outer radius of sample in (x,z) plane for cylinder/sphere. & 0 \\ +target\_x & m & relative focus target position. & 0 \\ +target\_y & m & relative focus target position. & 0 \\ +target\_z & m & relative focus target position. & 1 \\ +target\_index & & Relative index of component to focus at, e.g. next is +1. & 1 \\ +focus\_xw & m & horiz. dimension of a rectangular area. & 0.5 \\ +focus\_yh & m & , vert. dimension of a rectangular area. & 0.5 \\ +focus\_aw & deg & , horiz. angular dimension of a rectangular area. & 0 \\ +focus\_ah & deg & , vert. angular dimension of a rectangular area. & 0 \\ +focus\_r & m & case of circular focusing, focusing radius. & 0 \\ +pd\_radius\_effective & & (0,inf) defined as (dx/x), where x is de mean value and dx the standard devition of the variable & 0.0 \\ +\bottomrule +\end{longtable} + +\subsection*{Links} +\begin{itemize} + \item \href{run:/home/willend/willend-McCode/mcstas-comps/sasmodels/SasView_hardsphere.comp}{Source code} for \texttt{SasView\_hardsphere.comp}. +\end{itemize} +\IfFileExists{SasView_hardsphere_static.tex}{\input{SasView_hardsphere_static.tex}}{} \ No newline at end of file diff --git a/docs/manuals/mcstas/sasmodels/SasView_hayter_msa.tex b/docs/manuals/mcstas/sasmodels/SasView_hayter_msa.tex new file mode 100644 index 000000000..114687bd4 --- /dev/null +++ b/docs/manuals/mcstas/sasmodels/SasView_hayter_msa.tex @@ -0,0 +1,62 @@ +\section{The \texttt{SasView\_hayter\_msa} McStas Component} +SasView hayter\_msa model component as sample description. + +\subsection*{Identification} +\begin{itemize} + \item \textbf{Site:} + \item \textbf{Author:} Jose Robledo + \item \textbf{Origin:} FZJ / DTU / ESS DMSC + \item \textbf{Date:} +\end{itemize} + +\subsection*{Description} +\begin{lstlisting} +SasView_hayter_msa component, generated from hayter_msa.c in sasmodels. + +Example: +SasView_hayter_msa(radius_effective, volfraction, charge, temperature, concentration_salt, dielectconst, +model_scale=1.0, model_abs=0.0, xwidth=0.01, yheight=0.01, zdepth=0.005, R=0, +int target_index=1, target_x=0, target_y=0, target_z=1, +focus_xw=0.5, focus_yh=0.5, focus_aw=0, focus_ah=0, focus_r=0, +pd_radius_effective=0.0, pd_charge=0.0) +\end{lstlisting} + +\subsection*{Input parameters} +Parameters in \textbf{boldface} are required; the others are optional. + +\begin{longtable}{p{0.22\textwidth}p{0.12\textwidth}p{0.46\textwidth}p{0.14\textwidth}} +\toprule +\textbf{Name} & \textbf{Unit} & \textbf{Description} & \textbf{Default} \\ +\midrule +\endhead +radius\_effective & Ang & ([0, inf]) effective radius of charged sphere. & 20.75 \\ +volfraction & None & ([0, 0.74]) volume fraction of spheres. & 0.0192 \\ +charge & e & ([1e-06, 200]) charge on sphere (in electrons). & 19.0 \\ +temperature & K & ([0, 450]) temperature, in Kelvin, for Debye length calculation. & 318.16 \\ +concentration\_salt & M & ([0, inf]) conc of salt, moles/litre, 1:1 electolyte, for Debye length. & 0.0 \\ +dielectconst & None & ([-inf, inf]) dielectric constant (relative permittivity) of solvent, kappa, default water, for Debye length. & 71.08 \\ +model\_scale & & Global scale factor for scattering kernel. For systems without inter-particle interference, the form factors can be related to the scattering intensity by the particle volume fraction. & 1.0 \\ +model\_abs & & Absorption cross section density at 2200 m/s. & 0.0 \\ +xwidth & m & ([-inf, inf]) Horiz. dimension of sample, as a width. & 0.01 \\ +yheight & m & ([-inf, inf]) vert . dimension of sample, as a height for cylinder/box & 0.01 \\ +zdepth & m & ([-inf, inf]) depth of sample & 0.005 \\ +R & m & Outer radius of sample in (x,z) plane for cylinder/sphere. & 0 \\ +target\_x & m & relative focus target position. & 0 \\ +target\_y & m & relative focus target position. & 0 \\ +target\_z & m & relative focus target position. & 1 \\ +target\_index & & Relative index of component to focus at, e.g. next is +1. & 1 \\ +focus\_xw & m & horiz. dimension of a rectangular area. & 0.5 \\ +focus\_yh & m & , vert. dimension of a rectangular area. & 0.5 \\ +focus\_aw & deg & , horiz. angular dimension of a rectangular area. & 0 \\ +focus\_ah & deg & , vert. angular dimension of a rectangular area. & 0 \\ +focus\_r & m & case of circular focusing, focusing radius. & 0 \\ +pd\_radius\_effective & & (0,inf) defined as (dx/x), where x is de mean value and dx the standard devition of the variable. & 0.0 \\ +pd\_charge & & (0,inf) defined as (dx/x), where x is de mean value and dx the standard devition of the variable & 0.0 \\ +\bottomrule +\end{longtable} + +\subsection*{Links} +\begin{itemize} + \item \href{run:/home/willend/willend-McCode/mcstas-comps/sasmodels/SasView_hayter_msa.comp}{Source code} for \texttt{SasView\_hayter\_msa.comp}. +\end{itemize} +\IfFileExists{SasView_hayter_msa_static.tex}{\input{SasView_hayter_msa_static.tex}}{} \ No newline at end of file diff --git a/docs/manuals/mcstas/sasmodels/SasView_hollow_cylinder.tex b/docs/manuals/mcstas/sasmodels/SasView_hollow_cylinder.tex new file mode 100644 index 000000000..a059353fb --- /dev/null +++ b/docs/manuals/mcstas/sasmodels/SasView_hollow_cylinder.tex @@ -0,0 +1,62 @@ +\section{The \texttt{SasView\_hollow\_cylinder} McStas Component} +SasView hollow\_cylinder model component as sample description. + +\subsection*{Identification} +\begin{itemize} + \item \textbf{Site:} + \item \textbf{Author:} Jose Robledo + \item \textbf{Origin:} FZJ / DTU / ESS DMSC + \item \textbf{Date:} +\end{itemize} + +\subsection*{Description} +\begin{lstlisting} +SasView_hollow_cylinder component, generated from hollow_cylinder.c in sasmodels. + +Example: +SasView_hollow_cylinder(radius, thickness, length, sld, sld_solvent, +model_scale=1.0, model_abs=0.0, xwidth=0.01, yheight=0.01, zdepth=0.005, R=0, +int target_index=1, target_x=0, target_y=0, target_z=1, +focus_xw=0.5, focus_yh=0.5, focus_aw=0, focus_ah=0, focus_r=0, +pd_radius=0.0, pd_thickness=0.0, pd_length=0.0) +\end{lstlisting} + +\subsection*{Input parameters} +Parameters in \textbf{boldface} are required; the others are optional. + +\begin{longtable}{p{0.22\textwidth}p{0.12\textwidth}p{0.46\textwidth}p{0.14\textwidth}} +\toprule +\textbf{Name} & \textbf{Unit} & \textbf{Description} & \textbf{Default} \\ +\midrule +\endhead +radius & Ang & ([0, inf]) Cylinder core radius. & 20.0 \\ +thickness & Ang & ([0, inf]) Cylinder wall thickness. & 10.0 \\ +length & Ang & ([0, inf]) Cylinder total length. & 400.0 \\ +sld & 1e-6/Ang\textasciicircum{}2 & ([-inf, inf]) Cylinder sld. & 6.3 \\ +sld\_solvent & 1e-6/Ang\textasciicircum{}2 & ([-inf, inf]) Solvent sld. & 1 \\ +model\_scale & & Global scale factor for scattering kernel. For systems without inter-particle interference, the form factors can be related to the scattering intensity by the particle volume fraction. & 1.0 \\ +model\_abs & & Absorption cross section density at 2200 m/s. & 0.0 \\ +xwidth & m & ([-inf, inf]) Horiz. dimension of sample, as a width. & 0.01 \\ +yheight & m & ([-inf, inf]) vert . dimension of sample, as a height for cylinder/box & 0.01 \\ +zdepth & m & ([-inf, inf]) depth of sample & 0.005 \\ +R & m & Outer radius of sample in (x,z) plane for cylinder/sphere. & 0 \\ +target\_x & m & relative focus target position. & 0 \\ +target\_y & m & relative focus target position. & 0 \\ +target\_z & m & relative focus target position. & 1 \\ +target\_index & & Relative index of component to focus at, e.g. next is +1. & 1 \\ +focus\_xw & m & horiz. dimension of a rectangular area. & 0.5 \\ +focus\_yh & m & , vert. dimension of a rectangular area. & 0.5 \\ +focus\_aw & deg & , horiz. angular dimension of a rectangular area. & 0 \\ +focus\_ah & deg & , vert. angular dimension of a rectangular area. & 0 \\ +focus\_r & m & case of circular focusing, focusing radius. & 0 \\ +pd\_radius & & (0,inf) defined as (dx/x), where x is de mean value and dx the standard devition of the variable. & 0.0 \\ +pd\_thickness & & (0,inf) defined as (dx/x), where x is de mean value and dx the standard devition of the variable. & 0.0 \\ +pd\_length & & (0,inf) defined as (dx/x), where x is de mean value and dx the standard devition of the variable & 0.0 \\ +\bottomrule +\end{longtable} + +\subsection*{Links} +\begin{itemize} + \item \href{run:/home/willend/willend-McCode/mcstas-comps/sasmodels/SasView_hollow_cylinder.comp}{Source code} for \texttt{SasView\_hollow\_cylinder.comp}. +\end{itemize} +\IfFileExists{SasView_hollow_cylinder_static.tex}{\input{SasView_hollow_cylinder_static.tex}}{} \ No newline at end of file diff --git a/docs/manuals/mcstas/sasmodels/SasView_hollow_cylinder_aniso.tex b/docs/manuals/mcstas/sasmodels/SasView_hollow_cylinder_aniso.tex new file mode 100644 index 000000000..1d840da2f --- /dev/null +++ b/docs/manuals/mcstas/sasmodels/SasView_hollow_cylinder_aniso.tex @@ -0,0 +1,66 @@ +\section{The \texttt{SasView\_hollow\_cylinder\_aniso} McStas Component} +SasView hollow\_cylinder model component as sample description. + +\subsection*{Identification} +\begin{itemize} + \item \textbf{Site:} + \item \textbf{Author:} Jose Robledo + \item \textbf{Origin:} FZJ / DTU / ESS DMSC + \item \textbf{Date:} +\end{itemize} + +\subsection*{Description} +\begin{lstlisting} +SasView_hollow_cylinder component, generated from hollow_cylinder.c in sasmodels. + +Example: +SasView_hollow_cylinder_aniso(radius, thickness, length, sld, sld_solvent, theta, phi, +model_scale=1.0, model_abs=0.0, xwidth=0.01, yheight=0.01, zdepth=0.005, R=0, +int target_index=1, target_x=0, target_y=0, target_z=1, +focus_xw=0.5, focus_yh=0.5, focus_aw=0, focus_ah=0, focus_r=0, +pd_radius=0.0, pd_thickness=0.0, pd_length=0.0, pd_theta=0.0, pd_phi=0.0) +\end{lstlisting} + +\subsection*{Input parameters} +Parameters in \textbf{boldface} are required; the others are optional. + +\begin{longtable}{p{0.22\textwidth}p{0.12\textwidth}p{0.46\textwidth}p{0.14\textwidth}} +\toprule +\textbf{Name} & \textbf{Unit} & \textbf{Description} & \textbf{Default} \\ +\midrule +\endhead +radius & Ang & ([0, inf]) Cylinder core radius. & 20.0 \\ +thickness & Ang & ([0, inf]) Cylinder wall thickness. & 10.0 \\ +length & Ang & ([0, inf]) Cylinder total length. & 400.0 \\ +sld & 1e-6/Ang\textasciicircum{}2 & ([-inf, inf]) Cylinder sld. & 6.3 \\ +sld\_solvent & 1e-6/Ang\textasciicircum{}2 & ([-inf, inf]) Solvent sld. & 1 \\ +theta & & & 90 \\ +phi & & & 0 \\ +model\_scale & & Global scale factor for scattering kernel. For systems without inter-particle interference, the form factors can be related to the scattering intensity by the particle volume fraction. & 1.0 \\ +model\_abs & & Absorption cross section density at 2200 m/s. & 0.0 \\ +xwidth & m & ([-inf, inf]) Horiz. dimension of sample, as a width. & 0.01 \\ +yheight & m & ([-inf, inf]) vert . dimension of sample, as a height for cylinder/box & 0.01 \\ +zdepth & m & ([-inf, inf]) depth of sample & 0.005 \\ +R & m & Outer radius of sample in (x,z) plane for cylinder/sphere. & 0 \\ +target\_x & m & relative focus target position. & 0 \\ +target\_y & m & relative focus target position. & 0 \\ +target\_z & m & relative focus target position. & 1 \\ +target\_index & & Relative index of component to focus at, e.g. next is +1. & 1 \\ +focus\_xw & m & horiz. dimension of a rectangular area. & 0.5 \\ +focus\_yh & m & , vert. dimension of a rectangular area. & 0.5 \\ +focus\_aw & deg & , horiz. angular dimension of a rectangular area. & 0 \\ +focus\_ah & deg & , vert. angular dimension of a rectangular area. & 0 \\ +focus\_r & m & case of circular focusing, focusing radius. & 0 \\ +pd\_radius & & (0,inf) defined as (dx/x), where x is de mean value and dx the standard devition of the variable. & 0.0 \\ +pd\_thickness & & (0,inf) defined as (dx/x), where x is de mean value and dx the standard devition of the variable. & 0.0 \\ +pd\_length & & (0,inf) defined as (dx/x), where x is de mean value and dx the standard devition of the variable. & 0.0 \\ +pd\_theta & & (0,360) defined as (dx/x), where x is de mean value and dx the standard devition of the variable. & 0.0 \\ +pd\_phi & & (0,360) defined as (dx/x), where x is de mean value and dx the standard devition of the variable & 0.0 \\ +\bottomrule +\end{longtable} + +\subsection*{Links} +\begin{itemize} + \item \href{run:/home/willend/willend-McCode/mcstas-comps/sasmodels/SasView_hollow_cylinder_aniso.comp}{Source code} for \texttt{SasView\_hollow\_cylinder\_aniso.comp}. +\end{itemize} +\IfFileExists{SasView_hollow_cylinder_aniso_static.tex}{\input{SasView_hollow_cylinder_aniso_static.tex}}{} \ No newline at end of file diff --git a/docs/manuals/mcstas/sasmodels/SasView_hollow_rectangular_prism.tex b/docs/manuals/mcstas/sasmodels/SasView_hollow_rectangular_prism.tex new file mode 100644 index 000000000..6779f7d1a --- /dev/null +++ b/docs/manuals/mcstas/sasmodels/SasView_hollow_rectangular_prism.tex @@ -0,0 +1,62 @@ +\section{The \texttt{SasView\_hollow\_rectangular\_prism} McStas Component} +SasView hollow\_rectangular\_prism model component as sample description. + +\subsection*{Identification} +\begin{itemize} + \item \textbf{Site:} + \item \textbf{Author:} Jose Robledo + \item \textbf{Origin:} FZJ / DTU / ESS DMSC + \item \textbf{Date:} +\end{itemize} + +\subsection*{Description} +\begin{lstlisting} +SasView_hollow_rectangular_prism component, generated from hollow_rectangular_prism.c in sasmodels. + +Example: +SasView_hollow_rectangular_prism(sld, sld_solvent, length_a, b2a_ratio, c2a_ratio, thickness, +model_scale=1.0, model_abs=0.0, xwidth=0.01, yheight=0.01, zdepth=0.005, R=0, +int target_index=1, target_x=0, target_y=0, target_z=1, +focus_xw=0.5, focus_yh=0.5, focus_aw=0, focus_ah=0, focus_r=0, +pd_length_a=0.0, pd_thickness=0.0) +\end{lstlisting} + +\subsection*{Input parameters} +Parameters in \textbf{boldface} are required; the others are optional. + +\begin{longtable}{p{0.22\textwidth}p{0.12\textwidth}p{0.46\textwidth}p{0.14\textwidth}} +\toprule +\textbf{Name} & \textbf{Unit} & \textbf{Description} & \textbf{Default} \\ +\midrule +\endhead +sld & 1e-6/Ang\textasciicircum{}2 & ([-inf, inf]) Parallelepiped scattering length density. & 6.3 \\ +sld\_solvent & 1e-6/Ang\textasciicircum{}2 & ([-inf, inf]) Solvent scattering length density. & 1 \\ +length\_a & Ang & ([0, inf]) Shortest, external, size of the parallelepiped. & 35 \\ +b2a\_ratio & Ang & ([0, inf]) Ratio sides b/a. & 1 \\ +c2a\_ratio & Ang & ([0, inf]) Ratio sides c/a. & 1 \\ +thickness & Ang & ([0, inf]) Thickness of parallelepiped. & 1 \\ +model\_scale & & Global scale factor for scattering kernel. For systems without inter-particle interference, the form factors can be related to the scattering intensity by the particle volume fraction. & 1.0 \\ +model\_abs & & Absorption cross section density at 2200 m/s. & 0.0 \\ +xwidth & m & ([-inf, inf]) Horiz. dimension of sample, as a width. & 0.01 \\ +yheight & m & ([-inf, inf]) vert . dimension of sample, as a height for cylinder/box & 0.01 \\ +zdepth & m & ([-inf, inf]) depth of sample & 0.005 \\ +R & m & Outer radius of sample in (x,z) plane for cylinder/sphere. & 0 \\ +target\_x & m & relative focus target position. & 0 \\ +target\_y & m & relative focus target position. & 0 \\ +target\_z & m & relative focus target position. & 1 \\ +target\_index & & Relative index of component to focus at, e.g. next is +1. & 1 \\ +focus\_xw & m & horiz. dimension of a rectangular area. & 0.5 \\ +focus\_yh & m & , vert. dimension of a rectangular area. & 0.5 \\ +focus\_aw & deg & , horiz. angular dimension of a rectangular area. & 0 \\ +focus\_ah & deg & , vert. angular dimension of a rectangular area. & 0 \\ +focus\_r & m & case of circular focusing, focusing radius. & 0 \\ +pd\_length\_a & & (0,inf) defined as (dx/x), where x is de mean value and dx the standard devition of the variable. & 0.0 \\ +pd\_thickness & & (0,inf) defined as (dx/x), where x is de mean value and dx the standard devition of the variable & 0.0 \\ +\bottomrule +\end{longtable} + +\subsection*{Links} +\begin{itemize} + \item \href{run:/home/willend/willend-McCode/mcstas-comps/sasmodels/SasView_hollow_rectangular_prism.comp}{Source code} for \texttt{SasView\_hollow\_rectangular\_prism.comp}. +\end{itemize} +\IfFileExists{SasView_hollow_rectangular_prism_static.tex}{\input{SasView_hollow_rectangular_prism_static.tex}}{} \ No newline at end of file diff --git a/docs/manuals/mcstas/sasmodels/SasView_hollow_rectangular_prism_aniso.tex b/docs/manuals/mcstas/sasmodels/SasView_hollow_rectangular_prism_aniso.tex new file mode 100644 index 000000000..61347aad4 --- /dev/null +++ b/docs/manuals/mcstas/sasmodels/SasView_hollow_rectangular_prism_aniso.tex @@ -0,0 +1,68 @@ +\section{The \texttt{SasView\_hollow\_rectangular\_prism\_aniso} McStas Component} +SasView hollow\_rectangular\_prism model component as sample description. + +\subsection*{Identification} +\begin{itemize} + \item \textbf{Site:} + \item \textbf{Author:} Jose Robledo + \item \textbf{Origin:} FZJ / DTU / ESS DMSC + \item \textbf{Date:} +\end{itemize} + +\subsection*{Description} +\begin{lstlisting} +SasView_hollow_rectangular_prism component, generated from hollow_rectangular_prism.c in sasmodels. + +Example: +SasView_hollow_rectangular_prism_aniso(sld, sld_solvent, length_a, b2a_ratio, c2a_ratio, thickness, theta, phi, Psi, +model_scale=1.0, model_abs=0.0, xwidth=0.01, yheight=0.01, zdepth=0.005, R=0, +int target_index=1, target_x=0, target_y=0, target_z=1, +focus_xw=0.5, focus_yh=0.5, focus_aw=0, focus_ah=0, focus_r=0, +pd_length_a=0.0, pd_thickness=0.0, pd_theta=0.0, pd_phi=0.0, pd_Psi=0.0) +\end{lstlisting} + +\subsection*{Input parameters} +Parameters in \textbf{boldface} are required; the others are optional. + +\begin{longtable}{p{0.22\textwidth}p{0.12\textwidth}p{0.46\textwidth}p{0.14\textwidth}} +\toprule +\textbf{Name} & \textbf{Unit} & \textbf{Description} & \textbf{Default} \\ +\midrule +\endhead +sld & 1e-6/Ang\textasciicircum{}2 & ([-inf, inf]) Parallelepiped scattering length density. & 6.3 \\ +sld\_solvent & 1e-6/Ang\textasciicircum{}2 & ([-inf, inf]) Solvent scattering length density. & 1 \\ +length\_a & Ang & ([0, inf]) Shortest, external, size of the parallelepiped. & 35 \\ +b2a\_ratio & Ang & ([0, inf]) Ratio sides b/a. & 1 \\ +c2a\_ratio & Ang & ([0, inf]) Ratio sides c/a. & 1 \\ +thickness & Ang & ([0, inf]) Thickness of parallelepiped. & 1 \\ +theta & & & 0 \\ +phi & & & 0 \\ +Psi & & & 0 \\ +model\_scale & & Global scale factor for scattering kernel. For systems without inter-particle interference, the form factors can be related to the scattering intensity by the particle volume fraction. & 1.0 \\ +model\_abs & & Absorption cross section density at 2200 m/s. & 0.0 \\ +xwidth & m & ([-inf, inf]) Horiz. dimension of sample, as a width. & 0.01 \\ +yheight & m & ([-inf, inf]) vert . dimension of sample, as a height for cylinder/box & 0.01 \\ +zdepth & m & ([-inf, inf]) depth of sample & 0.005 \\ +R & m & Outer radius of sample in (x,z) plane for cylinder/sphere. & 0 \\ +target\_x & m & relative focus target position. & 0 \\ +target\_y & m & relative focus target position. & 0 \\ +target\_z & m & relative focus target position. & 1 \\ +target\_index & & Relative index of component to focus at, e.g. next is +1. & 1 \\ +focus\_xw & m & horiz. dimension of a rectangular area. & 0.5 \\ +focus\_yh & m & , vert. dimension of a rectangular area. & 0.5 \\ +focus\_aw & deg & , horiz. angular dimension of a rectangular area. & 0 \\ +focus\_ah & deg & , vert. angular dimension of a rectangular area. & 0 \\ +focus\_r & m & case of circular focusing, focusing radius. & 0 \\ +pd\_length\_a & & (0,inf) defined as (dx/x), where x is de mean value and dx the standard devition of the variable. & 0.0 \\ +pd\_thickness & & (0,inf) defined as (dx/x), where x is de mean value and dx the standard devition of the variable. & 0.0 \\ +pd\_theta & & (0,360) defined as (dx/x), where x is de mean value and dx the standard devition of the variable. & 0.0 \\ +pd\_phi & & (0,360) defined as (dx/x), where x is de mean value and dx the standard devition of the variable. & 0.0 \\ +pd\_Psi & & (0,360) defined as (dx/x), where x is de mean value and dx the standard devition of the variable & 0.0 \\ +\bottomrule +\end{longtable} + +\subsection*{Links} +\begin{itemize} + \item \href{run:/home/willend/willend-McCode/mcstas-comps/sasmodels/SasView_hollow_rectangular_prism_aniso.comp}{Source code} for \texttt{SasView\_hollow\_rectangular\_prism\_aniso.comp}. +\end{itemize} +\IfFileExists{SasView_hollow_rectangular_prism_aniso_static.tex}{\input{SasView_hollow_rectangular_prism_aniso_static.tex}}{} \ No newline at end of file diff --git a/docs/manuals/mcstas/sasmodels/SasView_hollow_rectangular_prism_thin_walls.tex b/docs/manuals/mcstas/sasmodels/SasView_hollow_rectangular_prism_thin_walls.tex new file mode 100644 index 000000000..cc887b86f --- /dev/null +++ b/docs/manuals/mcstas/sasmodels/SasView_hollow_rectangular_prism_thin_walls.tex @@ -0,0 +1,60 @@ +\section{The \texttt{SasView\_hollow\_rectangular\_prism\_thin\_walls} McStas Component} +SasView hollow\_rectangular\_prism\_thin\_walls model component as sample description. + +\subsection*{Identification} +\begin{itemize} + \item \textbf{Site:} + \item \textbf{Author:} Jose Robledo + \item \textbf{Origin:} FZJ / DTU / ESS DMSC + \item \textbf{Date:} +\end{itemize} + +\subsection*{Description} +\begin{lstlisting} +SasView_hollow_rectangular_prism_thin_walls component, generated from hollow_rectangular_prism_thin_walls.c in sasmodels. + +Example: +SasView_hollow_rectangular_prism_thin_walls(sld, sld_solvent, length_a, b2a_ratio, c2a_ratio, +model_scale=1.0, model_abs=0.0, xwidth=0.01, yheight=0.01, zdepth=0.005, R=0, +int target_index=1, target_x=0, target_y=0, target_z=1, +focus_xw=0.5, focus_yh=0.5, focus_aw=0, focus_ah=0, focus_r=0, +pd_length_a=0.0) +\end{lstlisting} + +\subsection*{Input parameters} +Parameters in \textbf{boldface} are required; the others are optional. + +\begin{longtable}{p{0.22\textwidth}p{0.12\textwidth}p{0.46\textwidth}p{0.14\textwidth}} +\toprule +\textbf{Name} & \textbf{Unit} & \textbf{Description} & \textbf{Default} \\ +\midrule +\endhead +sld & 1e-6/Ang\textasciicircum{}2 & ([-inf, inf]) Parallelepiped scattering length density. & 6.3 \\ +sld\_solvent & 1e-6/Ang\textasciicircum{}2 & ([-inf, inf]) Solvent scattering length density. & 1 \\ +length\_a & Ang & ([0, inf]) Shorter side of the parallelepiped. & 35 \\ +b2a\_ratio & Ang & ([0, inf]) Ratio sides b/a. & 1 \\ +c2a\_ratio & Ang & ([0, inf]) Ratio sides c/a. & 1 \\ +model\_scale & & Global scale factor for scattering kernel. For systems without inter-particle interference, the form factors can be related to the scattering intensity by the particle volume fraction. & 1.0 \\ +model\_abs & & Absorption cross section density at 2200 m/s. & 0.0 \\ +xwidth & m & ([-inf, inf]) Horiz. dimension of sample, as a width. & 0.01 \\ +yheight & m & ([-inf, inf]) vert . dimension of sample, as a height for cylinder/box & 0.01 \\ +zdepth & m & ([-inf, inf]) depth of sample & 0.005 \\ +R & m & Outer radius of sample in (x,z) plane for cylinder/sphere. & 0 \\ +target\_x & m & relative focus target position. & 0 \\ +target\_y & m & relative focus target position. & 0 \\ +target\_z & m & relative focus target position. & 1 \\ +target\_index & & Relative index of component to focus at, e.g. next is +1. & 1 \\ +focus\_xw & m & horiz. dimension of a rectangular area. & 0.5 \\ +focus\_yh & m & , vert. dimension of a rectangular area. & 0.5 \\ +focus\_aw & deg & , horiz. angular dimension of a rectangular area. & 0 \\ +focus\_ah & deg & , vert. angular dimension of a rectangular area. & 0 \\ +focus\_r & m & case of circular focusing, focusing radius. & 0 \\ +pd\_length\_a & & (0,inf) defined as (dx/x), where x is de mean value and dx the standard devition of the variable & 0.0 \\ +\bottomrule +\end{longtable} + +\subsection*{Links} +\begin{itemize} + \item \href{run:/home/willend/willend-McCode/mcstas-comps/sasmodels/SasView_hollow_rectangular_prism_thin_walls.comp}{Source code} for \texttt{SasView\_hollow\_rectangular\_prism\_thin\_walls.comp}. +\end{itemize} +\IfFileExists{SasView_hollow_rectangular_prism_thin_walls_static.tex}{\input{SasView_hollow_rectangular_prism_thin_walls_static.tex}}{} \ No newline at end of file diff --git a/docs/manuals/mcstas/sasmodels/SasView_lamellar_hg.tex b/docs/manuals/mcstas/sasmodels/SasView_lamellar_hg.tex new file mode 100644 index 000000000..6bc7d9edd --- /dev/null +++ b/docs/manuals/mcstas/sasmodels/SasView_lamellar_hg.tex @@ -0,0 +1,61 @@ +\section{The \texttt{SasView\_lamellar\_hg} McStas Component} +SasView lamellar\_hg model component as sample description. + +\subsection*{Identification} +\begin{itemize} + \item \textbf{Site:} + \item \textbf{Author:} Jose Robledo + \item \textbf{Origin:} FZJ / DTU / ESS DMSC + \item \textbf{Date:} +\end{itemize} + +\subsection*{Description} +\begin{lstlisting} +SasView_lamellar_hg component, generated from lamellar_hg.c in sasmodels. + +Example: +SasView_lamellar_hg(length_tail, length_head, sld, sld_head, sld_solvent, +model_scale=1.0, model_abs=0.0, xwidth=0.01, yheight=0.01, zdepth=0.005, R=0, +int target_index=1, target_x=0, target_y=0, target_z=1, +focus_xw=0.5, focus_yh=0.5, focus_aw=0, focus_ah=0, focus_r=0, +pd_length_tail=0.0, pd_length_head=0.0) +\end{lstlisting} + +\subsection*{Input parameters} +Parameters in \textbf{boldface} are required; the others are optional. + +\begin{longtable}{p{0.22\textwidth}p{0.12\textwidth}p{0.46\textwidth}p{0.14\textwidth}} +\toprule +\textbf{Name} & \textbf{Unit} & \textbf{Description} & \textbf{Default} \\ +\midrule +\endhead +length\_tail & Ang & ([0, inf]) Tail thickness ( total = H+T+T+H). & 15 \\ +length\_head & Ang & ([0, inf]) Head thickness. & 10 \\ +sld & 1e-6/Ang\textasciicircum{}2 & ([-inf, inf]) Tail scattering length density. & 0.4 \\ +sld\_head & 1e-6/Ang\textasciicircum{}2 & ([-inf, inf]) Head scattering length density. & 3.0 \\ +sld\_solvent & 1e-6/Ang\textasciicircum{}2 & ([-inf, inf]) Solvent scattering length density. & 6 \\ +model\_scale & & Global scale factor for scattering kernel. For systems without inter-particle interference, the form factors can be related to the scattering intensity by the particle volume fraction. & 1.0 \\ +model\_abs & & Absorption cross section density at 2200 m/s. & 0.0 \\ +xwidth & m & ([-inf, inf]) Horiz. dimension of sample, as a width. & 0.01 \\ +yheight & m & ([-inf, inf]) vert . dimension of sample, as a height for cylinder/box & 0.01 \\ +zdepth & m & ([-inf, inf]) depth of sample & 0.005 \\ +R & m & Outer radius of sample in (x,z) plane for cylinder/sphere. & 0 \\ +target\_x & m & relative focus target position. & 0 \\ +target\_y & m & relative focus target position. & 0 \\ +target\_z & m & relative focus target position. & 1 \\ +target\_index & & Relative index of component to focus at, e.g. next is +1. & 1 \\ +focus\_xw & m & horiz. dimension of a rectangular area. & 0.5 \\ +focus\_yh & m & , vert. dimension of a rectangular area. & 0.5 \\ +focus\_aw & deg & , horiz. angular dimension of a rectangular area. & 0 \\ +focus\_ah & deg & , vert. angular dimension of a rectangular area. & 0 \\ +focus\_r & m & case of circular focusing, focusing radius. & 0 \\ +pd\_length\_tail & & (0,inf) defined as (dx/x), where x is de mean value and dx the standard devition of the variable. & 0.0 \\ +pd\_length\_head & & (0,inf) defined as (dx/x), where x is de mean value and dx the standard devition of the variable & 0.0 \\ +\bottomrule +\end{longtable} + +\subsection*{Links} +\begin{itemize} + \item \href{run:/home/willend/willend-McCode/mcstas-comps/sasmodels/SasView_lamellar_hg.comp}{Source code} for \texttt{SasView\_lamellar\_hg.comp}. +\end{itemize} +\IfFileExists{SasView_lamellar_hg_static.tex}{\input{SasView_lamellar_hg_static.tex}}{} \ No newline at end of file diff --git a/docs/manuals/mcstas/sasmodels/SasView_lamellar_hg_stack_caille.tex b/docs/manuals/mcstas/sasmodels/SasView_lamellar_hg_stack_caille.tex new file mode 100644 index 000000000..9a365d9fe --- /dev/null +++ b/docs/manuals/mcstas/sasmodels/SasView_lamellar_hg_stack_caille.tex @@ -0,0 +1,64 @@ +\section{The \texttt{SasView\_lamellar\_hg\_stack\_caille} McStas Component} +SasView lamellar\_hg\_stack\_caille model component as sample description. + +\subsection*{Identification} +\begin{itemize} + \item \textbf{Site:} + \item \textbf{Author:} Jose Robledo + \item \textbf{Origin:} FZJ / DTU / ESS DMSC + \item \textbf{Date:} +\end{itemize} + +\subsection*{Description} +\begin{lstlisting} +SasView_lamellar_hg_stack_caille component, generated from lamellar_hg_stack_caille.c in sasmodels. + +Example: +SasView_lamellar_hg_stack_caille(length_tail, length_head, Nlayers, d_spacing, Caille_parameter, sld, sld_head, sld_solvent, +model_scale=1.0, model_abs=0.0, xwidth=0.01, yheight=0.01, zdepth=0.005, R=0, +int target_index=1, target_x=0, target_y=0, target_z=1, +focus_xw=0.5, focus_yh=0.5, focus_aw=0, focus_ah=0, focus_r=0, +pd_length_tail=0.0, pd_length_head=0.0) +\end{lstlisting} + +\subsection*{Input parameters} +Parameters in \textbf{boldface} are required; the others are optional. + +\begin{longtable}{p{0.22\textwidth}p{0.12\textwidth}p{0.46\textwidth}p{0.14\textwidth}} +\toprule +\textbf{Name} & \textbf{Unit} & \textbf{Description} & \textbf{Default} \\ +\midrule +\endhead +length\_tail & Ang & ([0, inf]) Tail thickness. & 10 \\ +length\_head & Ang & ([0, inf]) head thickness. & 2 \\ +Nlayers & & ([1, inf]) Number of layers. & 30 \\ +d\_spacing & Ang & ([0.0, inf]) lamellar d-spacing of Caille S(Q). & 40.0 \\ +Caille\_parameter & & ([0.0, 0.8]) Caille parameter. & 0.001 \\ +sld & 1e-6/Ang\textasciicircum{}2 & ([-inf, inf]) Tail scattering length density. & 0.4 \\ +sld\_head & 1e-6/Ang\textasciicircum{}2 & ([-inf, inf]) Head scattering length density. & 2.0 \\ +sld\_solvent & 1e-6/Ang\textasciicircum{}2 & ([-inf, inf]) Solvent scattering length density. & 6 \\ +model\_scale & & Global scale factor for scattering kernel. For systems without inter-particle interference, the form factors can be related to the scattering intensity by the particle volume fraction. & 1.0 \\ +model\_abs & & Absorption cross section density at 2200 m/s. & 0.0 \\ +xwidth & m & ([-inf, inf]) Horiz. dimension of sample, as a width. & 0.01 \\ +yheight & m & ([-inf, inf]) vert . dimension of sample, as a height for cylinder/box & 0.01 \\ +zdepth & m & ([-inf, inf]) depth of sample & 0.005 \\ +R & m & Outer radius of sample in (x,z) plane for cylinder/sphere. & 0 \\ +target\_x & m & relative focus target position. & 0 \\ +target\_y & m & relative focus target position. & 0 \\ +target\_z & m & relative focus target position. & 1 \\ +target\_index & & Relative index of component to focus at, e.g. next is +1. & 1 \\ +focus\_xw & m & horiz. dimension of a rectangular area. & 0.5 \\ +focus\_yh & m & , vert. dimension of a rectangular area. & 0.5 \\ +focus\_aw & deg & , horiz. angular dimension of a rectangular area. & 0 \\ +focus\_ah & deg & , vert. angular dimension of a rectangular area. & 0 \\ +focus\_r & m & case of circular focusing, focusing radius. & 0 \\ +pd\_length\_tail & & (0,inf) defined as (dx/x), where x is de mean value and dx the standard devition of the variable. & 0.0 \\ +pd\_length\_head & & (0,inf) defined as (dx/x), where x is de mean value and dx the standard devition of the variable & 0.0 \\ +\bottomrule +\end{longtable} + +\subsection*{Links} +\begin{itemize} + \item \href{run:/home/willend/willend-McCode/mcstas-comps/sasmodels/SasView_lamellar_hg_stack_caille.comp}{Source code} for \texttt{SasView\_lamellar\_hg\_stack\_caille.comp}. +\end{itemize} +\IfFileExists{SasView_lamellar_hg_stack_caille_static.tex}{\input{SasView_lamellar_hg_stack_caille_static.tex}}{} \ No newline at end of file diff --git a/docs/manuals/mcstas/sasmodels/SasView_lamellar_stack_caille.tex b/docs/manuals/mcstas/sasmodels/SasView_lamellar_stack_caille.tex new file mode 100644 index 000000000..73ab758cd --- /dev/null +++ b/docs/manuals/mcstas/sasmodels/SasView_lamellar_stack_caille.tex @@ -0,0 +1,61 @@ +\section{The \texttt{SasView\_lamellar\_stack\_caille} McStas Component} +SasView lamellar\_stack\_caille model component as sample description. + +\subsection*{Identification} +\begin{itemize} + \item \textbf{Site:} + \item \textbf{Author:} Jose Robledo + \item \textbf{Origin:} FZJ / DTU / ESS DMSC + \item \textbf{Date:} +\end{itemize} + +\subsection*{Description} +\begin{lstlisting} +SasView_lamellar_stack_caille component, generated from lamellar_stack_caille.c in sasmodels. + +Example: +SasView_lamellar_stack_caille(thickness, Nlayers, d_spacing, Caille_parameter, sld, sld_solvent, +model_scale=1.0, model_abs=0.0, xwidth=0.01, yheight=0.01, zdepth=0.005, R=0, +int target_index=1, target_x=0, target_y=0, target_z=1, +focus_xw=0.5, focus_yh=0.5, focus_aw=0, focus_ah=0, focus_r=0, +pd_thickness=0.0) +\end{lstlisting} + +\subsection*{Input parameters} +Parameters in \textbf{boldface} are required; the others are optional. + +\begin{longtable}{p{0.22\textwidth}p{0.12\textwidth}p{0.46\textwidth}p{0.14\textwidth}} +\toprule +\textbf{Name} & \textbf{Unit} & \textbf{Description} & \textbf{Default} \\ +\midrule +\endhead +thickness & Ang & ([0, inf]) sheet thickness. & 30.0 \\ +Nlayers & & ([1, inf]) Number of layers. & 20 \\ +d\_spacing & Ang & ([0.0, inf]) lamellar d-spacing of Caille S(Q). & 400.0 \\ +Caille\_parameter & 1/Ang\textasciicircum{}2 & ([0.0, 0.8]) Caille parameter. & 0.1 \\ +sld & 1e-6/Ang\textasciicircum{}2 & ([-inf, inf]) layer scattering length density. & 6.3 \\ +sld\_solvent & 1e-6/Ang\textasciicircum{}2 & ([-inf, inf]) Solvent scattering length density. & 1.0 \\ +model\_scale & & Global scale factor for scattering kernel. For systems without inter-particle interference, the form factors can be related to the scattering intensity by the particle volume fraction. & 1.0 \\ +model\_abs & & Absorption cross section density at 2200 m/s. & 0.0 \\ +xwidth & m & ([-inf, inf]) Horiz. dimension of sample, as a width. & 0.01 \\ +yheight & m & ([-inf, inf]) vert . dimension of sample, as a height for cylinder/box & 0.01 \\ +zdepth & m & ([-inf, inf]) depth of sample & 0.005 \\ +R & m & Outer radius of sample in (x,z) plane for cylinder/sphere. & 0 \\ +target\_x & m & relative focus target position. & 0 \\ +target\_y & m & relative focus target position. & 0 \\ +target\_z & m & relative focus target position. & 1 \\ +target\_index & & Relative index of component to focus at, e.g. next is +1. & 1 \\ +focus\_xw & m & horiz. dimension of a rectangular area. & 0.5 \\ +focus\_yh & m & , vert. dimension of a rectangular area. & 0.5 \\ +focus\_aw & deg & , horiz. angular dimension of a rectangular area. & 0 \\ +focus\_ah & deg & , vert. angular dimension of a rectangular area. & 0 \\ +focus\_r & m & case of circular focusing, focusing radius. & 0 \\ +pd\_thickness & & (0,inf) defined as (dx/x), where x is de mean value and dx the standard devition of the variable & 0.0 \\ +\bottomrule +\end{longtable} + +\subsection*{Links} +\begin{itemize} + \item \href{run:/home/willend/willend-McCode/mcstas-comps/sasmodels/SasView_lamellar_stack_caille.comp}{Source code} for \texttt{SasView\_lamellar\_stack\_caille.comp}. +\end{itemize} +\IfFileExists{SasView_lamellar_stack_caille_static.tex}{\input{SasView_lamellar_stack_caille_static.tex}}{} \ No newline at end of file diff --git a/docs/manuals/mcstas/sasmodels/SasView_lamellar_stack_paracrystal.tex b/docs/manuals/mcstas/sasmodels/SasView_lamellar_stack_paracrystal.tex new file mode 100644 index 000000000..86eebb2b1 --- /dev/null +++ b/docs/manuals/mcstas/sasmodels/SasView_lamellar_stack_paracrystal.tex @@ -0,0 +1,61 @@ +\section{The \texttt{SasView\_lamellar\_stack\_paracrystal} McStas Component} +SasView lamellar\_stack\_paracrystal model component as sample description. + +\subsection*{Identification} +\begin{itemize} + \item \textbf{Site:} + \item \textbf{Author:} Jose Robledo + \item \textbf{Origin:} FZJ / DTU / ESS DMSC + \item \textbf{Date:} +\end{itemize} + +\subsection*{Description} +\begin{lstlisting} +SasView_lamellar_stack_paracrystal component, generated from lamellar_stack_paracrystal.c in sasmodels. + +Example: +SasView_lamellar_stack_paracrystal(thickness, Nlayers, d_spacing, sigma_d, sld, sld_solvent, +model_scale=1.0, model_abs=0.0, xwidth=0.01, yheight=0.01, zdepth=0.005, R=0, +int target_index=1, target_x=0, target_y=0, target_z=1, +focus_xw=0.5, focus_yh=0.5, focus_aw=0, focus_ah=0, focus_r=0, +pd_thickness=0.0) +\end{lstlisting} + +\subsection*{Input parameters} +Parameters in \textbf{boldface} are required; the others are optional. + +\begin{longtable}{p{0.22\textwidth}p{0.12\textwidth}p{0.46\textwidth}p{0.14\textwidth}} +\toprule +\textbf{Name} & \textbf{Unit} & \textbf{Description} & \textbf{Default} \\ +\midrule +\endhead +thickness & Ang & ([0, inf]) sheet thickness. & 33.0 \\ +Nlayers & & ([1, inf]) Number of layers. & 20 \\ +d\_spacing & Ang & ([0.0, inf]) lamellar spacing of paracrystal stack. & 250.0 \\ +sigma\_d & Ang & ([0.0, inf]) Sigma (polydispersity) of the lamellar spacing. & 0.0 \\ +sld & 1e-6/Ang\textasciicircum{}2 & ([-inf, inf]) layer scattering length density. & 1.0 \\ +sld\_solvent & 1e-6/Ang\textasciicircum{}2 & ([-inf, inf]) Solvent scattering length density. & 6.34 \\ +model\_scale & & Global scale factor for scattering kernel. For systems without inter-particle interference, the form factors can be related to the scattering intensity by the particle volume fraction. & 1.0 \\ +model\_abs & & Absorption cross section density at 2200 m/s. & 0.0 \\ +xwidth & m & ([-inf, inf]) Horiz. dimension of sample, as a width. & 0.01 \\ +yheight & m & ([-inf, inf]) vert . dimension of sample, as a height for cylinder/box & 0.01 \\ +zdepth & m & ([-inf, inf]) depth of sample & 0.005 \\ +R & m & Outer radius of sample in (x,z) plane for cylinder/sphere. & 0 \\ +target\_x & m & relative focus target position. & 0 \\ +target\_y & m & relative focus target position. & 0 \\ +target\_z & m & relative focus target position. & 1 \\ +target\_index & & Relative index of component to focus at, e.g. next is +1. & 1 \\ +focus\_xw & m & horiz. dimension of a rectangular area. & 0.5 \\ +focus\_yh & m & , vert. dimension of a rectangular area. & 0.5 \\ +focus\_aw & deg & , horiz. angular dimension of a rectangular area. & 0 \\ +focus\_ah & deg & , vert. angular dimension of a rectangular area. & 0 \\ +focus\_r & m & case of circular focusing, focusing radius. & 0 \\ +pd\_thickness & & (0,inf) defined as (dx/x), where x is de mean value and dx the standard devition of the variable & 0.0 \\ +\bottomrule +\end{longtable} + +\subsection*{Links} +\begin{itemize} + \item \href{run:/home/willend/willend-McCode/mcstas-comps/sasmodels/SasView_lamellar_stack_paracrystal.comp}{Source code} for \texttt{SasView\_lamellar\_stack\_paracrystal.comp}. +\end{itemize} +\IfFileExists{SasView_lamellar_stack_paracrystal_static.tex}{\input{SasView_lamellar_stack_paracrystal_static.tex}}{} \ No newline at end of file diff --git a/docs/manuals/mcstas/sasmodels/SasView_line.tex b/docs/manuals/mcstas/sasmodels/SasView_line.tex new file mode 100644 index 000000000..dd9fd1e54 --- /dev/null +++ b/docs/manuals/mcstas/sasmodels/SasView_line.tex @@ -0,0 +1,56 @@ +\section{The \texttt{SasView\_line} McStas Component} +SasView line model component as sample description. + +\subsection*{Identification} +\begin{itemize} + \item \textbf{Site:} + \item \textbf{Author:} Jose Robledo + \item \textbf{Origin:} FZJ / DTU / ESS DMSC + \item \textbf{Date:} +\end{itemize} + +\subsection*{Description} +\begin{lstlisting} +SasView_line component, generated from line.c in sasmodels. + +Example: +SasView_line(intercept, slope, +model_scale=1.0, model_abs=0.0, xwidth=0.01, yheight=0.01, zdepth=0.005, R=0, +int target_index=1, target_x=0, target_y=0, target_z=1, +focus_xw=0.5, focus_yh=0.5, focus_aw=0, focus_ah=0, focus_r=0, +) +\end{lstlisting} + +\subsection*{Input parameters} +Parameters in \textbf{boldface} are required; the others are optional. + +\begin{longtable}{p{0.22\textwidth}p{0.12\textwidth}p{0.46\textwidth}p{0.14\textwidth}} +\toprule +\textbf{Name} & \textbf{Unit} & \textbf{Description} & \textbf{Default} \\ +\midrule +\endhead +intercept & 1/cm & ([-inf, inf]) intercept in linear model. & 1.0 \\ +slope & Ang/cm & ([-inf, inf]) slope in linear model. & 1.0 \\ +model\_scale & & Global scale factor for scattering kernel. For systems without inter-particle interference, the form factors can be related to the scattering intensity by the particle volume fraction. & 1.0 \\ +model\_abs & & Absorption cross section density at 2200 m/s. & 0.0 \\ +xwidth & m & ([-inf, inf]) Horiz. dimension of sample, as a width. & 0.01 \\ +yheight & m & ([-inf, inf]) vert . dimension of sample, as a height for cylinder/box & 0.01 \\ +zdepth & m & ([-inf, inf]) depth of sample & 0.005 \\ +R & m & Outer radius of sample in (x,z) plane for cylinder/sphere. & 0 \\ +target\_x & m & relative focus target position. & 0 \\ +target\_y & m & relative focus target position. & 0 \\ +target\_z & m & relative focus target position. & 1 \\ +target\_index & & Relative index of component to focus at, e.g. next is +1. & 1 \\ +focus\_xw & m & horiz. dimension of a rectangular area. & 0.5 \\ +focus\_yh & m & , vert. dimension of a rectangular area. & 0.5 \\ +focus\_aw & deg & , horiz. angular dimension of a rectangular area. & 0 \\ +focus\_ah & deg & , vert. angular dimension of a rectangular area. & 0 \\ +focus\_r & m & case of circular focusing, focusing radius. & 0 \\ +\bottomrule +\end{longtable} + +\subsection*{Links} +\begin{itemize} + \item \href{run:/home/willend/willend-McCode/mcstas-comps/sasmodels/SasView_line.comp}{Source code} for \texttt{SasView\_line.comp}. +\end{itemize} +\IfFileExists{SasView_line_static.tex}{\input{SasView_line_static.tex}}{} \ No newline at end of file diff --git a/docs/manuals/mcstas/sasmodels/SasView_linear_pearls.tex b/docs/manuals/mcstas/sasmodels/SasView_linear_pearls.tex new file mode 100644 index 000000000..71066a562 --- /dev/null +++ b/docs/manuals/mcstas/sasmodels/SasView_linear_pearls.tex @@ -0,0 +1,60 @@ +\section{The \texttt{SasView\_linear\_pearls} McStas Component} +SasView linear\_pearls model component as sample description. + +\subsection*{Identification} +\begin{itemize} + \item \textbf{Site:} + \item \textbf{Author:} Jose Robledo + \item \textbf{Origin:} FZJ / DTU / ESS DMSC + \item \textbf{Date:} +\end{itemize} + +\subsection*{Description} +\begin{lstlisting} +SasView_linear_pearls component, generated from linear_pearls.c in sasmodels. + +Example: +SasView_linear_pearls(radius, edge_sep, num_pearls, sld, sld_solvent, +model_scale=1.0, model_abs=0.0, xwidth=0.01, yheight=0.01, zdepth=0.005, R=0, +int target_index=1, target_x=0, target_y=0, target_z=1, +focus_xw=0.5, focus_yh=0.5, focus_aw=0, focus_ah=0, focus_r=0, +pd_radius=0.0) +\end{lstlisting} + +\subsection*{Input parameters} +Parameters in \textbf{boldface} are required; the others are optional. + +\begin{longtable}{p{0.22\textwidth}p{0.12\textwidth}p{0.46\textwidth}p{0.14\textwidth}} +\toprule +\textbf{Name} & \textbf{Unit} & \textbf{Description} & \textbf{Default} \\ +\midrule +\endhead +radius & Ang & ([0, inf]) Radius of the pearls. & 80.0 \\ +edge\_sep & Ang & ([0, inf]) Length of the string segment - surface to surface. & 350.0 \\ +num\_pearls & & ([1, inf]) Number of the pearls. & 3.0 \\ +sld & 1e-6/Ang\textasciicircum{}2 & ([-inf, inf]) SLD of the pearl spheres. & 1.0 \\ +sld\_solvent & 1e-6/Ang\textasciicircum{}2 & ([-inf, inf]) SLD of the solvent. & 6.3 \\ +model\_scale & & Global scale factor for scattering kernel. For systems without inter-particle interference, the form factors can be related to the scattering intensity by the particle volume fraction. & 1.0 \\ +model\_abs & & Absorption cross section density at 2200 m/s. & 0.0 \\ +xwidth & m & ([-inf, inf]) Horiz. dimension of sample, as a width. & 0.01 \\ +yheight & m & ([-inf, inf]) vert . dimension of sample, as a height for cylinder/box & 0.01 \\ +zdepth & m & ([-inf, inf]) depth of sample & 0.005 \\ +R & m & Outer radius of sample in (x,z) plane for cylinder/sphere. & 0 \\ +target\_x & m & relative focus target position. & 0 \\ +target\_y & m & relative focus target position. & 0 \\ +target\_z & m & relative focus target position. & 1 \\ +target\_index & & Relative index of component to focus at, e.g. next is +1. & 1 \\ +focus\_xw & m & horiz. dimension of a rectangular area. & 0.5 \\ +focus\_yh & m & , vert. dimension of a rectangular area. & 0.5 \\ +focus\_aw & deg & , horiz. angular dimension of a rectangular area. & 0 \\ +focus\_ah & deg & , vert. angular dimension of a rectangular area. & 0 \\ +focus\_r & m & case of circular focusing, focusing radius. & 0 \\ +pd\_radius & & (0,inf) defined as (dx/x), where x is de mean value and dx the standard devition of the variable & 0.0 \\ +\bottomrule +\end{longtable} + +\subsection*{Links} +\begin{itemize} + \item \href{run:/home/willend/willend-McCode/mcstas-comps/sasmodels/SasView_linear_pearls.comp}{Source code} for \texttt{SasView\_linear\_pearls.comp}. +\end{itemize} +\IfFileExists{SasView_linear_pearls_static.tex}{\input{SasView_linear_pearls_static.tex}}{} \ No newline at end of file diff --git a/docs/manuals/mcstas/sasmodels/SasView_lorentz.tex b/docs/manuals/mcstas/sasmodels/SasView_lorentz.tex new file mode 100644 index 000000000..0fc9101c5 --- /dev/null +++ b/docs/manuals/mcstas/sasmodels/SasView_lorentz.tex @@ -0,0 +1,56 @@ +\section{The \texttt{SasView\_lorentz} McStas Component} +SasView lorentz model component as sample description. + +\subsection*{Identification} +\begin{itemize} + \item \textbf{Site:} + \item \textbf{Author:} Jose Robledo + \item \textbf{Origin:} FZJ / DTU / ESS DMSC + \item \textbf{Date:} +\end{itemize} + +\subsection*{Description} +\begin{lstlisting} +SasView_lorentz component, generated from lorentz.c in sasmodels. + +Example: +SasView_lorentz(cor_length, +model_scale=1.0, model_abs=0.0, xwidth=0.01, yheight=0.01, zdepth=0.005, R=0, +int target_index=1, target_x=0, target_y=0, target_z=1, +focus_xw=0.5, focus_yh=0.5, focus_aw=0, focus_ah=0, focus_r=0, +pd_cor_length=0.0) +\end{lstlisting} + +\subsection*{Input parameters} +Parameters in \textbf{boldface} are required; the others are optional. + +\begin{longtable}{p{0.22\textwidth}p{0.12\textwidth}p{0.46\textwidth}p{0.14\textwidth}} +\toprule +\textbf{Name} & \textbf{Unit} & \textbf{Description} & \textbf{Default} \\ +\midrule +\endhead +cor\_length & Ang & ([0, inf]) Screening length. & 50.0 \\ +model\_scale & & Global scale factor for scattering kernel. For systems without inter-particle interference, the form factors can be related to the scattering intensity by the particle volume fraction. & 1.0 \\ +model\_abs & & Absorption cross section density at 2200 m/s. & 0.0 \\ +xwidth & m & ([-inf, inf]) Horiz. dimension of sample, as a width. & 0.01 \\ +yheight & m & ([-inf, inf]) vert . dimension of sample, as a height for cylinder/box & 0.01 \\ +zdepth & m & ([-inf, inf]) depth of sample & 0.005 \\ +R & m & Outer radius of sample in (x,z) plane for cylinder/sphere. & 0 \\ +target\_x & m & relative focus target position. & 0 \\ +target\_y & m & relative focus target position. & 0 \\ +target\_z & m & relative focus target position. & 1 \\ +target\_index & & Relative index of component to focus at, e.g. next is +1. & 1 \\ +focus\_xw & m & horiz. dimension of a rectangular area. & 0.5 \\ +focus\_yh & m & , vert. dimension of a rectangular area. & 0.5 \\ +focus\_aw & deg & , horiz. angular dimension of a rectangular area. & 0 \\ +focus\_ah & deg & , vert. angular dimension of a rectangular area. & 0 \\ +focus\_r & m & case of circular focusing, focusing radius. & 0 \\ +pd\_cor\_length & & (0,inf) defined as (dx/x), where x is de mean value and dx the standard devition of the variable & 0.0 \\ +\bottomrule +\end{longtable} + +\subsection*{Links} +\begin{itemize} + \item \href{run:/home/willend/willend-McCode/mcstas-comps/sasmodels/SasView_lorentz.comp}{Source code} for \texttt{SasView\_lorentz.comp}. +\end{itemize} +\IfFileExists{SasView_lorentz_static.tex}{\input{SasView_lorentz_static.tex}}{} \ No newline at end of file diff --git a/docs/manuals/mcstas/sasmodels/SasView_mass_fractal.tex b/docs/manuals/mcstas/sasmodels/SasView_mass_fractal.tex new file mode 100644 index 000000000..4df68384f --- /dev/null +++ b/docs/manuals/mcstas/sasmodels/SasView_mass_fractal.tex @@ -0,0 +1,59 @@ +\section{The \texttt{SasView\_mass\_fractal} McStas Component} +SasView mass\_fractal model component as sample description. + +\subsection*{Identification} +\begin{itemize} + \item \textbf{Site:} + \item \textbf{Author:} Jose Robledo + \item \textbf{Origin:} FZJ / DTU / ESS DMSC + \item \textbf{Date:} +\end{itemize} + +\subsection*{Description} +\begin{lstlisting} +SasView_mass_fractal component, generated from mass_fractal.c in sasmodels. + +Example: +SasView_mass_fractal(radius, fractal_dim_mass, cutoff_length, +model_scale=1.0, model_abs=0.0, xwidth=0.01, yheight=0.01, zdepth=0.005, R=0, +int target_index=1, target_x=0, target_y=0, target_z=1, +focus_xw=0.5, focus_yh=0.5, focus_aw=0, focus_ah=0, focus_r=0, +pd_radius=0.0, pd_cutoff_length=0.0) +\end{lstlisting} + +\subsection*{Input parameters} +Parameters in \textbf{boldface} are required; the others are optional. + +\begin{longtable}{p{0.22\textwidth}p{0.12\textwidth}p{0.46\textwidth}p{0.14\textwidth}} +\toprule +\textbf{Name} & \textbf{Unit} & \textbf{Description} & \textbf{Default} \\ +\midrule +\endhead +radius & Ang & ([0.0, inf]) Particle radius. & 10.0 \\ +fractal\_dim\_mass & & ([1.0, 6.0]) Mass fractal dimension. & 1.9 \\ +cutoff\_length & Ang & ([0.0, inf]) Cut-off length. & 100.0 \\ +model\_scale & & Global scale factor for scattering kernel. For systems without inter-particle interference, the form factors can be related to the scattering intensity by the particle volume fraction. & 1.0 \\ +model\_abs & & Absorption cross section density at 2200 m/s. & 0.0 \\ +xwidth & m & ([-inf, inf]) Horiz. dimension of sample, as a width. & 0.01 \\ +yheight & m & ([-inf, inf]) vert . dimension of sample, as a height for cylinder/box & 0.01 \\ +zdepth & m & ([-inf, inf]) depth of sample & 0.005 \\ +R & m & Outer radius of sample in (x,z) plane for cylinder/sphere. & 0 \\ +target\_x & m & relative focus target position. & 0 \\ +target\_y & m & relative focus target position. & 0 \\ +target\_z & m & relative focus target position. & 1 \\ +target\_index & & Relative index of component to focus at, e.g. next is +1. & 1 \\ +focus\_xw & m & horiz. dimension of a rectangular area. & 0.5 \\ +focus\_yh & m & , vert. dimension of a rectangular area. & 0.5 \\ +focus\_aw & deg & , horiz. angular dimension of a rectangular area. & 0 \\ +focus\_ah & deg & , vert. angular dimension of a rectangular area. & 0 \\ +focus\_r & m & case of circular focusing, focusing radius. & 0 \\ +pd\_radius & & (0,inf) defined as (dx/x), where x is de mean value and dx the standard devition of the variable. & 0.0 \\ +pd\_cutoff\_length & & (0,inf) defined as (dx/x), where x is de mean value and dx the standard devition of the variable & 0.0 \\ +\bottomrule +\end{longtable} + +\subsection*{Links} +\begin{itemize} + \item \href{run:/home/willend/willend-McCode/mcstas-comps/sasmodels/SasView_mass_fractal.comp}{Source code} for \texttt{SasView\_mass\_fractal.comp}. +\end{itemize} +\IfFileExists{SasView_mass_fractal_static.tex}{\input{SasView_mass_fractal_static.tex}}{} \ No newline at end of file diff --git a/docs/manuals/mcstas/sasmodels/SasView_mass_surface_fractal.tex b/docs/manuals/mcstas/sasmodels/SasView_mass_surface_fractal.tex new file mode 100644 index 000000000..ea750e74d --- /dev/null +++ b/docs/manuals/mcstas/sasmodels/SasView_mass_surface_fractal.tex @@ -0,0 +1,60 @@ +\section{The \texttt{SasView\_mass\_surface\_fractal} McStas Component} +SasView mass\_surface\_fractal model component as sample description. + +\subsection*{Identification} +\begin{itemize} + \item \textbf{Site:} + \item \textbf{Author:} Jose Robledo + \item \textbf{Origin:} FZJ / DTU / ESS DMSC + \item \textbf{Date:} +\end{itemize} + +\subsection*{Description} +\begin{lstlisting} +SasView_mass_surface_fractal component, generated from mass_surface_fractal.c in sasmodels. + +Example: +SasView_mass_surface_fractal(fractal_dim_mass, fractal_dim_surf, rg_cluster, rg_primary, +model_scale=1.0, model_abs=0.0, xwidth=0.01, yheight=0.01, zdepth=0.005, R=0, +int target_index=1, target_x=0, target_y=0, target_z=1, +focus_xw=0.5, focus_yh=0.5, focus_aw=0, focus_ah=0, focus_r=0, +pd_rg_cluster=0.0, pd_rg_primary=0.0) +\end{lstlisting} + +\subsection*{Input parameters} +Parameters in \textbf{boldface} are required; the others are optional. + +\begin{longtable}{p{0.22\textwidth}p{0.12\textwidth}p{0.46\textwidth}p{0.14\textwidth}} +\toprule +\textbf{Name} & \textbf{Unit} & \textbf{Description} & \textbf{Default} \\ +\midrule +\endhead +fractal\_dim\_mass & & ([0.0, 6.0]) Mass fractal dimension. & 1.8 \\ +fractal\_dim\_surf & & ([0.0, 6.0]) Surface fractal dimension. & 2.3 \\ +rg\_cluster & Ang & ([0.0, inf]) Cluster radius of gyration. & 4000.0 \\ +rg\_primary & Ang & ([0.0, inf]) Primary particle radius of gyration. & 86.7 \\ +model\_scale & & Global scale factor for scattering kernel. For systems without inter-particle interference, the form factors can be related to the scattering intensity by the particle volume fraction. & 1.0 \\ +model\_abs & & Absorption cross section density at 2200 m/s. & 0.0 \\ +xwidth & m & ([-inf, inf]) Horiz. dimension of sample, as a width. & 0.01 \\ +yheight & m & ([-inf, inf]) vert . dimension of sample, as a height for cylinder/box & 0.01 \\ +zdepth & m & ([-inf, inf]) depth of sample & 0.005 \\ +R & m & Outer radius of sample in (x,z) plane for cylinder/sphere. & 0 \\ +target\_x & m & relative focus target position. & 0 \\ +target\_y & m & relative focus target position. & 0 \\ +target\_z & m & relative focus target position. & 1 \\ +target\_index & & Relative index of component to focus at, e.g. next is +1. & 1 \\ +focus\_xw & m & horiz. dimension of a rectangular area. & 0.5 \\ +focus\_yh & m & , vert. dimension of a rectangular area. & 0.5 \\ +focus\_aw & deg & , horiz. angular dimension of a rectangular area. & 0 \\ +focus\_ah & deg & , vert. angular dimension of a rectangular area. & 0 \\ +focus\_r & m & case of circular focusing, focusing radius. & 0 \\ +pd\_rg\_cluster & & (0,inf) defined as (dx/x), where x is de mean value and dx the standard devition of the variable. & 0.0 \\ +pd\_rg\_primary & & (0,inf) defined as (dx/x), where x is de mean value and dx the standard devition of the variable & 0.0 \\ +\bottomrule +\end{longtable} + +\subsection*{Links} +\begin{itemize} + \item \href{run:/home/willend/willend-McCode/mcstas-comps/sasmodels/SasView_mass_surface_fractal.comp}{Source code} for \texttt{SasView\_mass\_surface\_fractal.comp}. +\end{itemize} +\IfFileExists{SasView_mass_surface_fractal_static.tex}{\input{SasView_mass_surface_fractal_static.tex}}{} \ No newline at end of file diff --git a/docs/manuals/mcstas/sasmodels/SasView_mono_gauss_coil.tex b/docs/manuals/mcstas/sasmodels/SasView_mono_gauss_coil.tex new file mode 100644 index 000000000..f227f627f --- /dev/null +++ b/docs/manuals/mcstas/sasmodels/SasView_mono_gauss_coil.tex @@ -0,0 +1,57 @@ +\section{The \texttt{SasView\_mono\_gauss\_coil} McStas Component} +SasView mono\_gauss\_coil model component as sample description. + +\subsection*{Identification} +\begin{itemize} + \item \textbf{Site:} + \item \textbf{Author:} Jose Robledo + \item \textbf{Origin:} FZJ / DTU / ESS DMSC + \item \textbf{Date:} +\end{itemize} + +\subsection*{Description} +\begin{lstlisting} +SasView_mono_gauss_coil component, generated from mono_gauss_coil.c in sasmodels. + +Example: +SasView_mono_gauss_coil(i_zero, rg, +model_scale=1.0, model_abs=0.0, xwidth=0.01, yheight=0.01, zdepth=0.005, R=0, +int target_index=1, target_x=0, target_y=0, target_z=1, +focus_xw=0.5, focus_yh=0.5, focus_aw=0, focus_ah=0, focus_r=0, +pd_rg=0.0) +\end{lstlisting} + +\subsection*{Input parameters} +Parameters in \textbf{boldface} are required; the others are optional. + +\begin{longtable}{p{0.22\textwidth}p{0.12\textwidth}p{0.46\textwidth}p{0.14\textwidth}} +\toprule +\textbf{Name} & \textbf{Unit} & \textbf{Description} & \textbf{Default} \\ +\midrule +\endhead +i\_zero & 1/cm & ([0.0, inf]) Intensity at q=0. & 70.0 \\ +rg & Ang & ([0.0, inf]) Radius of gyration. & 75.0 \\ +model\_scale & & Global scale factor for scattering kernel. For systems without inter-particle interference, the form factors can be related to the scattering intensity by the particle volume fraction. & 1.0 \\ +model\_abs & & Absorption cross section density at 2200 m/s. & 0.0 \\ +xwidth & m & ([-inf, inf]) Horiz. dimension of sample, as a width. & 0.01 \\ +yheight & m & ([-inf, inf]) vert . dimension of sample, as a height for cylinder/box & 0.01 \\ +zdepth & m & ([-inf, inf]) depth of sample & 0.005 \\ +R & m & Outer radius of sample in (x,z) plane for cylinder/sphere. & 0 \\ +target\_x & m & relative focus target position. & 0 \\ +target\_y & m & relative focus target position. & 0 \\ +target\_z & m & relative focus target position. & 1 \\ +target\_index & & Relative index of component to focus at, e.g. next is +1. & 1 \\ +focus\_xw & m & horiz. dimension of a rectangular area. & 0.5 \\ +focus\_yh & m & , vert. dimension of a rectangular area. & 0.5 \\ +focus\_aw & deg & , horiz. angular dimension of a rectangular area. & 0 \\ +focus\_ah & deg & , vert. angular dimension of a rectangular area. & 0 \\ +focus\_r & m & case of circular focusing, focusing radius. & 0 \\ +pd\_rg & & (0,inf) defined as (dx/x), where x is de mean value and dx the standard devition of the variable & 0.0 \\ +\bottomrule +\end{longtable} + +\subsection*{Links} +\begin{itemize} + \item \href{run:/home/willend/willend-McCode/mcstas-comps/sasmodels/SasView_mono_gauss_coil.comp}{Source code} for \texttt{SasView\_mono\_gauss\_coil.comp}. +\end{itemize} +\IfFileExists{SasView_mono_gauss_coil_static.tex}{\input{SasView_mono_gauss_coil_static.tex}}{} \ No newline at end of file diff --git a/docs/manuals/mcstas/sasmodels/SasView_multilayer_vesicle.tex b/docs/manuals/mcstas/sasmodels/SasView_multilayer_vesicle.tex new file mode 100644 index 000000000..49cc92f54 --- /dev/null +++ b/docs/manuals/mcstas/sasmodels/SasView_multilayer_vesicle.tex @@ -0,0 +1,64 @@ +\section{The \texttt{SasView\_multilayer\_vesicle} McStas Component} +SasView multilayer\_vesicle model component as sample description. + +\subsection*{Identification} +\begin{itemize} + \item \textbf{Site:} + \item \textbf{Author:} Jose Robledo + \item \textbf{Origin:} FZJ / DTU / ESS DMSC + \item \textbf{Date:} +\end{itemize} + +\subsection*{Description} +\begin{lstlisting} +SasView_multilayer_vesicle component, generated from multilayer_vesicle.c in sasmodels. + +Example: +SasView_multilayer_vesicle(volfraction, radius, thick_shell, thick_solvent, sld_solvent, sld, n_shells, +model_scale=1.0, model_abs=0.0, xwidth=0.01, yheight=0.01, zdepth=0.005, R=0, +int target_index=1, target_x=0, target_y=0, target_z=1, +focus_xw=0.5, focus_yh=0.5, focus_aw=0, focus_ah=0, focus_r=0, +pd_radius=0.0, pd_thick_shell=0.0, pd_thick_solvent=0.0) +\end{lstlisting} + +\subsection*{Input parameters} +Parameters in \textbf{boldface} are required; the others are optional. + +\begin{longtable}{p{0.22\textwidth}p{0.12\textwidth}p{0.46\textwidth}p{0.14\textwidth}} +\toprule +\textbf{Name} & \textbf{Unit} & \textbf{Description} & \textbf{Default} \\ +\midrule +\endhead +volfraction & & ([0.0, 1]) volume fraction of vesicles. & 0.05 \\ +radius & Ang & ([0.0, inf]) radius of solvent filled core. & 60.0 \\ +thick\_shell & Ang & ([0.0, inf]) thickness of one shell. & 10.0 \\ +thick\_solvent & Ang & ([0.0, inf]) solvent thickness between shells. & 10.0 \\ +sld\_solvent & 1e-6/Ang\textasciicircum{}2 & ([-inf, inf]) solvent scattering length density. & 6.4 \\ +sld & 1e-6/Ang\textasciicircum{}2 & ([-inf, inf]) Shell scattering length density. & 0.4 \\ +n\_shells & & ([1.0, inf]) Number of shell plus solvent layer pairs (must be integer). & 2.0 \\ +model\_scale & & Global scale factor for scattering kernel. For systems without inter-particle interference, the form factors can be related to the scattering intensity by the particle volume fraction. & 1.0 \\ +model\_abs & & Absorption cross section density at 2200 m/s. & 0.0 \\ +xwidth & m & ([-inf, inf]) Horiz. dimension of sample, as a width. & 0.01 \\ +yheight & m & ([-inf, inf]) vert . dimension of sample, as a height for cylinder/box & 0.01 \\ +zdepth & m & ([-inf, inf]) depth of sample & 0.005 \\ +R & m & Outer radius of sample in (x,z) plane for cylinder/sphere. & 0 \\ +target\_x & m & relative focus target position. & 0 \\ +target\_y & m & relative focus target position. & 0 \\ +target\_z & m & relative focus target position. & 1 \\ +target\_index & & Relative index of component to focus at, e.g. next is +1. & 1 \\ +focus\_xw & m & horiz. dimension of a rectangular area. & 0.5 \\ +focus\_yh & m & , vert. dimension of a rectangular area. & 0.5 \\ +focus\_aw & deg & , horiz. angular dimension of a rectangular area. & 0 \\ +focus\_ah & deg & , vert. angular dimension of a rectangular area. & 0 \\ +focus\_r & m & case of circular focusing, focusing radius. & 0 \\ +pd\_radius & & (0,inf) defined as (dx/x), where x is de mean value and dx the standard devition of the variable. & 0.0 \\ +pd\_thick\_shell & & (0,inf) defined as (dx/x), where x is de mean value and dx the standard devition of the variable. & 0.0 \\ +pd\_thick\_solvent & & (0,inf) defined as (dx/x), where x is de mean value and dx the standard devition of the variable & 0.0 \\ +\bottomrule +\end{longtable} + +\subsection*{Links} +\begin{itemize} + \item \href{run:/home/willend/willend-McCode/mcstas-comps/sasmodels/SasView_multilayer_vesicle.comp}{Source code} for \texttt{SasView\_multilayer\_vesicle.comp}. +\end{itemize} +\IfFileExists{SasView_multilayer_vesicle_static.tex}{\input{SasView_multilayer_vesicle_static.tex}}{} \ No newline at end of file diff --git a/docs/manuals/mcstas/sasmodels/SasView_onion.tex b/docs/manuals/mcstas/sasmodels/SasView_onion.tex new file mode 100644 index 000000000..757182637 --- /dev/null +++ b/docs/manuals/mcstas/sasmodels/SasView_onion.tex @@ -0,0 +1,39 @@ +\section{The \texttt{SasView\_onion} McStas Component} +SasView onion model component as sample description. + +\subsection*{Identification} +\begin{itemize} + \item \textbf{Site:} + \item \textbf{Author:} Jose Robledo + \item \textbf{Origin:} FZJ / DTU / ESS DMSC + \item \textbf{Date:} +\end{itemize} + +\subsection*{Description} +\begin{lstlisting} +SasView_onion component, generated from onion.c in sasmodels. + +Example: +SasView_onion(sld_core, radius_core, sld_solvent, n_shells, sld_in[n_shells], sld_out[n_shells], thickness[n_shells], A[n_shells], +model_scale=1.0, model_abs=0.0, xwidth=0.01, yheight=0.01, zdepth=0.005, R=0, +int target_index=1, target_x=0, target_y=0, target_z=1, +focus_xw=0.5, focus_yh=0.5, focus_aw=0, focus_ah=0, focus_r=0, +pd_radius_core=0.0, pd_thickness[n_shells]=0.0) +\end{lstlisting} + +\subsection*{Input parameters} +Parameters in \textbf{boldface} are required; the others are optional. + +\begin{longtable}{p{0.22\textwidth}p{0.12\textwidth}p{0.46\textwidth}p{0.14\textwidth}} +\toprule +\textbf{Name} & \textbf{Unit} & \textbf{Description} & \textbf{Default} \\ +\midrule +\endhead +\bottomrule +\end{longtable} + +\subsection*{Links} +\begin{itemize} + \item \href{run:/home/willend/willend-McCode/mcstas-comps/sasmodels/SasView_onion.comp}{Source code} for \texttt{SasView\_onion.comp}. +\end{itemize} +\IfFileExists{SasView_onion_static.tex}{\input{SasView_onion_static.tex}}{} \ No newline at end of file diff --git a/docs/manuals/mcstas/sasmodels/SasView_parallelepiped.tex b/docs/manuals/mcstas/sasmodels/SasView_parallelepiped.tex new file mode 100644 index 000000000..a72cc9df5 --- /dev/null +++ b/docs/manuals/mcstas/sasmodels/SasView_parallelepiped.tex @@ -0,0 +1,62 @@ +\section{The \texttt{SasView\_parallelepiped} McStas Component} +SasView parallelepiped model component as sample description. + +\subsection*{Identification} +\begin{itemize} + \item \textbf{Site:} + \item \textbf{Author:} Jose Robledo + \item \textbf{Origin:} FZJ / DTU / ESS DMSC + \item \textbf{Date:} +\end{itemize} + +\subsection*{Description} +\begin{lstlisting} +SasView_parallelepiped component, generated from parallelepiped.c in sasmodels. + +Example: +SasView_parallelepiped(sld, sld_solvent, length_a, length_b, length_c, +model_scale=1.0, model_abs=0.0, xwidth=0.01, yheight=0.01, zdepth=0.005, R=0, +int target_index=1, target_x=0, target_y=0, target_z=1, +focus_xw=0.5, focus_yh=0.5, focus_aw=0, focus_ah=0, focus_r=0, +pd_length_a=0.0, pd_length_b=0.0, pd_length_c=0.0) +\end{lstlisting} + +\subsection*{Input parameters} +Parameters in \textbf{boldface} are required; the others are optional. + +\begin{longtable}{p{0.22\textwidth}p{0.12\textwidth}p{0.46\textwidth}p{0.14\textwidth}} +\toprule +\textbf{Name} & \textbf{Unit} & \textbf{Description} & \textbf{Default} \\ +\midrule +\endhead +sld & 1e-6/Ang\textasciicircum{}2 & ([-inf, inf]) Parallelepiped scattering length density. & 4 \\ +sld\_solvent & 1e-6/Ang\textasciicircum{}2 & ([-inf, inf]) Solvent scattering length density. & 1 \\ +length\_a & Ang & ([0, inf]) Shorter side of the parallelepiped. & 35 \\ +length\_b & Ang & ([0, inf]) Second side of the parallelepiped. & 75 \\ +length\_c & Ang & ([0, inf]) Larger side of the parallelepiped. & 400 \\ +model\_scale & & Global scale factor for scattering kernel. For systems without inter-particle interference, the form factors can be related to the scattering intensity by the particle volume fraction. & 1.0 \\ +model\_abs & & Absorption cross section density at 2200 m/s. & 0.0 \\ +xwidth & m & ([-inf, inf]) Horiz. dimension of sample, as a width. & 0.01 \\ +yheight & m & ([-inf, inf]) vert . dimension of sample, as a height for cylinder/box & 0.01 \\ +zdepth & m & ([-inf, inf]) depth of sample & 0.005 \\ +R & m & Outer radius of sample in (x,z) plane for cylinder/sphere. & 0 \\ +target\_x & m & relative focus target position. & 0 \\ +target\_y & m & relative focus target position. & 0 \\ +target\_z & m & relative focus target position. & 1 \\ +target\_index & & Relative index of component to focus at, e.g. next is +1. & 1 \\ +focus\_xw & m & horiz. dimension of a rectangular area. & 0.5 \\ +focus\_yh & m & , vert. dimension of a rectangular area. & 0.5 \\ +focus\_aw & deg & , horiz. angular dimension of a rectangular area. & 0 \\ +focus\_ah & deg & , vert. angular dimension of a rectangular area. & 0 \\ +focus\_r & m & case of circular focusing, focusing radius. & 0 \\ +pd\_length\_a & & (0,inf) defined as (dx/x), where x is de mean value and dx the standard devition of the variable. & 0.0 \\ +pd\_length\_b & & (0,inf) defined as (dx/x), where x is de mean value and dx the standard devition of the variable. & 0.0 \\ +pd\_length\_c & & (0,inf) defined as (dx/x), where x is de mean value and dx the standard devition of the variable & 0.0 \\ +\bottomrule +\end{longtable} + +\subsection*{Links} +\begin{itemize} + \item \href{run:/home/willend/willend-McCode/mcstas-comps/sasmodels/SasView_parallelepiped.comp}{Source code} for \texttt{SasView\_parallelepiped.comp}. +\end{itemize} +\IfFileExists{SasView_parallelepiped_static.tex}{\input{SasView_parallelepiped_static.tex}}{} \ No newline at end of file diff --git a/docs/manuals/mcstas/sasmodels/SasView_parallelepiped_aniso.tex b/docs/manuals/mcstas/sasmodels/SasView_parallelepiped_aniso.tex new file mode 100644 index 000000000..c37e0ca42 --- /dev/null +++ b/docs/manuals/mcstas/sasmodels/SasView_parallelepiped_aniso.tex @@ -0,0 +1,68 @@ +\section{The \texttt{SasView\_parallelepiped\_aniso} McStas Component} +SasView parallelepiped model component as sample description. + +\subsection*{Identification} +\begin{itemize} + \item \textbf{Site:} + \item \textbf{Author:} Jose Robledo + \item \textbf{Origin:} FZJ / DTU / ESS DMSC + \item \textbf{Date:} +\end{itemize} + +\subsection*{Description} +\begin{lstlisting} +SasView_parallelepiped component, generated from parallelepiped.c in sasmodels. + +Example: +SasView_parallelepiped_aniso(sld, sld_solvent, length_a, length_b, length_c, theta, phi, Psi, +model_scale=1.0, model_abs=0.0, xwidth=0.01, yheight=0.01, zdepth=0.005, R=0, +int target_index=1, target_x=0, target_y=0, target_z=1, +focus_xw=0.5, focus_yh=0.5, focus_aw=0, focus_ah=0, focus_r=0, +pd_length_a=0.0, pd_length_b=0.0, pd_length_c=0.0, pd_theta=0.0, pd_phi=0.0, pd_Psi=0.0) +\end{lstlisting} + +\subsection*{Input parameters} +Parameters in \textbf{boldface} are required; the others are optional. + +\begin{longtable}{p{0.22\textwidth}p{0.12\textwidth}p{0.46\textwidth}p{0.14\textwidth}} +\toprule +\textbf{Name} & \textbf{Unit} & \textbf{Description} & \textbf{Default} \\ +\midrule +\endhead +sld & 1e-6/Ang\textasciicircum{}2 & ([-inf, inf]) Parallelepiped scattering length density. & 4 \\ +sld\_solvent & 1e-6/Ang\textasciicircum{}2 & ([-inf, inf]) Solvent scattering length density. & 1 \\ +length\_a & Ang & ([0, inf]) Shorter side of the parallelepiped. & 35 \\ +length\_b & Ang & ([0, inf]) Second side of the parallelepiped. & 75 \\ +length\_c & Ang & ([0, inf]) Larger side of the parallelepiped. & 400 \\ +theta & & & 60 \\ +phi & & & 60 \\ +Psi & & & 60 \\ +model\_scale & & Global scale factor for scattering kernel. For systems without inter-particle interference, the form factors can be related to the scattering intensity by the particle volume fraction. & 1.0 \\ +model\_abs & & Absorption cross section density at 2200 m/s. & 0.0 \\ +xwidth & m & ([-inf, inf]) Horiz. dimension of sample, as a width. & 0.01 \\ +yheight & m & ([-inf, inf]) vert . dimension of sample, as a height for cylinder/box & 0.01 \\ +zdepth & m & ([-inf, inf]) depth of sample & 0.005 \\ +R & m & Outer radius of sample in (x,z) plane for cylinder/sphere. & 0 \\ +target\_x & m & relative focus target position. & 0 \\ +target\_y & m & relative focus target position. & 0 \\ +target\_z & m & relative focus target position. & 1 \\ +target\_index & & Relative index of component to focus at, e.g. next is +1. & 1 \\ +focus\_xw & m & horiz. dimension of a rectangular area. & 0.5 \\ +focus\_yh & m & , vert. dimension of a rectangular area. & 0.5 \\ +focus\_aw & deg & , horiz. angular dimension of a rectangular area. & 0 \\ +focus\_ah & deg & , vert. angular dimension of a rectangular area. & 0 \\ +focus\_r & m & case of circular focusing, focusing radius. & 0 \\ +pd\_length\_a & & (0,inf) defined as (dx/x), where x is de mean value and dx the standard devition of the variable. & 0.0 \\ +pd\_length\_b & & (0,inf) defined as (dx/x), where x is de mean value and dx the standard devition of the variable. & 0.0 \\ +pd\_length\_c & & (0,inf) defined as (dx/x), where x is de mean value and dx the standard devition of the variable. & 0.0 \\ +pd\_theta & & (0,360) defined as (dx/x), where x is de mean value and dx the standard devition of the variable. & 0.0 \\ +pd\_phi & & (0,360) defined as (dx/x), where x is de mean value and dx the standard devition of the variable. & 0.0 \\ +pd\_Psi & & (0,360) defined as (dx/x), where x is de mean value and dx the standard devition of the variable & 0.0 \\ +\bottomrule +\end{longtable} + +\subsection*{Links} +\begin{itemize} + \item \href{run:/home/willend/willend-McCode/mcstas-comps/sasmodels/SasView_parallelepiped_aniso.comp}{Source code} for \texttt{SasView\_parallelepiped\_aniso.comp}. +\end{itemize} +\IfFileExists{SasView_parallelepiped_aniso_static.tex}{\input{SasView_parallelepiped_aniso_static.tex}}{} \ No newline at end of file diff --git a/docs/manuals/mcstas/sasmodels/SasView_peak_lorentz.tex b/docs/manuals/mcstas/sasmodels/SasView_peak_lorentz.tex new file mode 100644 index 000000000..653317872 --- /dev/null +++ b/docs/manuals/mcstas/sasmodels/SasView_peak_lorentz.tex @@ -0,0 +1,56 @@ +\section{The \texttt{SasView\_peak\_lorentz} McStas Component} +SasView peak\_lorentz model component as sample description. + +\subsection*{Identification} +\begin{itemize} + \item \textbf{Site:} + \item \textbf{Author:} Jose Robledo + \item \textbf{Origin:} FZJ / DTU / ESS DMSC + \item \textbf{Date:} +\end{itemize} + +\subsection*{Description} +\begin{lstlisting} +SasView_peak_lorentz component, generated from peak_lorentz.c in sasmodels. + +Example: +SasView_peak_lorentz(peak_pos, peak_hwhm, +model_scale=1.0, model_abs=0.0, xwidth=0.01, yheight=0.01, zdepth=0.005, R=0, +int target_index=1, target_x=0, target_y=0, target_z=1, +focus_xw=0.5, focus_yh=0.5, focus_aw=0, focus_ah=0, focus_r=0, +) +\end{lstlisting} + +\subsection*{Input parameters} +Parameters in \textbf{boldface} are required; the others are optional. + +\begin{longtable}{p{0.22\textwidth}p{0.12\textwidth}p{0.46\textwidth}p{0.14\textwidth}} +\toprule +\textbf{Name} & \textbf{Unit} & \textbf{Description} & \textbf{Default} \\ +\midrule +\endhead +peak\_pos & 1/Ang & ([-inf, inf]) Peak postion in q. & 0.05 \\ +peak\_hwhm & 1/Ang & ([-inf, inf]) HWHM of peak. & 0.005 \\ +model\_scale & & Global scale factor for scattering kernel. For systems without inter-particle interference, the form factors can be related to the scattering intensity by the particle volume fraction. & 1.0 \\ +model\_abs & & Absorption cross section density at 2200 m/s. & 0.0 \\ +xwidth & m & ([-inf, inf]) Horiz. dimension of sample, as a width. & 0.01 \\ +yheight & m & ([-inf, inf]) vert . dimension of sample, as a height for cylinder/box & 0.01 \\ +zdepth & m & ([-inf, inf]) depth of sample & 0.005 \\ +R & m & Outer radius of sample in (x,z) plane for cylinder/sphere. & 0 \\ +target\_x & m & relative focus target position. & 0 \\ +target\_y & m & relative focus target position. & 0 \\ +target\_z & m & relative focus target position. & 1 \\ +target\_index & & Relative index of component to focus at, e.g. next is +1. & 1 \\ +focus\_xw & m & horiz. dimension of a rectangular area. & 0.5 \\ +focus\_yh & m & , vert. dimension of a rectangular area. & 0.5 \\ +focus\_aw & deg & , horiz. angular dimension of a rectangular area. & 0 \\ +focus\_ah & deg & , vert. angular dimension of a rectangular area. & 0 \\ +focus\_r & m & case of circular focusing, focusing radius. & 0 \\ +\bottomrule +\end{longtable} + +\subsection*{Links} +\begin{itemize} + \item \href{run:/home/willend/willend-McCode/mcstas-comps/sasmodels/SasView_peak_lorentz.comp}{Source code} for \texttt{SasView\_peak\_lorentz.comp}. +\end{itemize} +\IfFileExists{SasView_peak_lorentz_static.tex}{\input{SasView_peak_lorentz_static.tex}}{} \ No newline at end of file diff --git a/docs/manuals/mcstas/sasmodels/SasView_pearl_necklace.tex b/docs/manuals/mcstas/sasmodels/SasView_pearl_necklace.tex new file mode 100644 index 000000000..e2ca6b5c6 --- /dev/null +++ b/docs/manuals/mcstas/sasmodels/SasView_pearl_necklace.tex @@ -0,0 +1,63 @@ +\section{The \texttt{SasView\_pearl\_necklace} McStas Component} +SasView pearl\_necklace model component as sample description. + +\subsection*{Identification} +\begin{itemize} + \item \textbf{Site:} + \item \textbf{Author:} Jose Robledo + \item \textbf{Origin:} FZJ / DTU / ESS DMSC + \item \textbf{Date:} +\end{itemize} + +\subsection*{Description} +\begin{lstlisting} +SasView_pearl_necklace component, generated from pearl_necklace.c in sasmodels. + +Example: +SasView_pearl_necklace(radius, edge_sep, thick_string, num_pearls, sld, sld_string, sld_solvent, +model_scale=1.0, model_abs=0.0, xwidth=0.01, yheight=0.01, zdepth=0.005, R=0, +int target_index=1, target_x=0, target_y=0, target_z=1, +focus_xw=0.5, focus_yh=0.5, focus_aw=0, focus_ah=0, focus_r=0, +pd_radius=0.0, pd_thick_string=0.0) +\end{lstlisting} + +\subsection*{Input parameters} +Parameters in \textbf{boldface} are required; the others are optional. + +\begin{longtable}{p{0.22\textwidth}p{0.12\textwidth}p{0.46\textwidth}p{0.14\textwidth}} +\toprule +\textbf{Name} & \textbf{Unit} & \textbf{Description} & \textbf{Default} \\ +\midrule +\endhead +radius & Ang & ([0, inf]) Mean radius of the chained spheres. & 80.0 \\ +edge\_sep & Ang & ([0, inf]) Mean separation of chained particles. & 350.0 \\ +thick\_string & Ang & ([0, inf]) Thickness of the chain linkage. & 2.5 \\ +num\_pearls & none & ([1, inf]) Number of pearls in the necklace (must be integer). & 3 \\ +sld & 1e-6/Ang\textasciicircum{}2 & ([-inf, inf]) Scattering length density of the chained spheres. & 1.0 \\ +sld\_string & 1e-6/Ang\textasciicircum{}2 & ([-inf, inf]) Scattering length density of the chain linkage. & 1.0 \\ +sld\_solvent & 1e-6/Ang\textasciicircum{}2 & ([-inf, inf]) Scattering length density of the solvent. & 6.3 \\ +model\_scale & & Global scale factor for scattering kernel. For systems without inter-particle interference, the form factors can be related to the scattering intensity by the particle volume fraction. & 1.0 \\ +model\_abs & & Absorption cross section density at 2200 m/s. & 0.0 \\ +xwidth & m & ([-inf, inf]) Horiz. dimension of sample, as a width. & 0.01 \\ +yheight & m & ([-inf, inf]) vert . dimension of sample, as a height for cylinder/box & 0.01 \\ +zdepth & m & ([-inf, inf]) depth of sample & 0.005 \\ +R & m & Outer radius of sample in (x,z) plane for cylinder/sphere. & 0 \\ +target\_x & m & relative focus target position. & 0 \\ +target\_y & m & relative focus target position. & 0 \\ +target\_z & m & relative focus target position. & 1 \\ +target\_index & & Relative index of component to focus at, e.g. next is +1. & 1 \\ +focus\_xw & m & horiz. dimension of a rectangular area. & 0.5 \\ +focus\_yh & m & , vert. dimension of a rectangular area. & 0.5 \\ +focus\_aw & deg & , horiz. angular dimension of a rectangular area. & 0 \\ +focus\_ah & deg & , vert. angular dimension of a rectangular area. & 0 \\ +focus\_r & m & case of circular focusing, focusing radius. & 0 \\ +pd\_radius & & (0,inf) defined as (dx/x), where x is de mean value and dx the standard devition of the variable. & 0.0 \\ +pd\_thick\_string & & (0,inf) defined as (dx/x), where x is de mean value and dx the standard devition of the variable & 0.0 \\ +\bottomrule +\end{longtable} + +\subsection*{Links} +\begin{itemize} + \item \href{run:/home/willend/willend-McCode/mcstas-comps/sasmodels/SasView_pearl_necklace.comp}{Source code} for \texttt{SasView\_pearl\_necklace.comp}. +\end{itemize} +\IfFileExists{SasView_pearl_necklace_static.tex}{\input{SasView_pearl_necklace_static.tex}}{} \ No newline at end of file diff --git a/docs/manuals/mcstas/sasmodels/SasView_poly_gauss_coil.tex b/docs/manuals/mcstas/sasmodels/SasView_poly_gauss_coil.tex new file mode 100644 index 000000000..5946f4679 --- /dev/null +++ b/docs/manuals/mcstas/sasmodels/SasView_poly_gauss_coil.tex @@ -0,0 +1,58 @@ +\section{The \texttt{SasView\_poly\_gauss\_coil} McStas Component} +SasView poly\_gauss\_coil model component as sample description. + +\subsection*{Identification} +\begin{itemize} + \item \textbf{Site:} + \item \textbf{Author:} Jose Robledo + \item \textbf{Origin:} FZJ / DTU / ESS DMSC + \item \textbf{Date:} +\end{itemize} + +\subsection*{Description} +\begin{lstlisting} +SasView_poly_gauss_coil component, generated from poly_gauss_coil.c in sasmodels. + +Example: +SasView_poly_gauss_coil(i_zero, rg, polydispersity, +model_scale=1.0, model_abs=0.0, xwidth=0.01, yheight=0.01, zdepth=0.005, R=0, +int target_index=1, target_x=0, target_y=0, target_z=1, +focus_xw=0.5, focus_yh=0.5, focus_aw=0, focus_ah=0, focus_r=0, +pd_rg=0.0) +\end{lstlisting} + +\subsection*{Input parameters} +Parameters in \textbf{boldface} are required; the others are optional. + +\begin{longtable}{p{0.22\textwidth}p{0.12\textwidth}p{0.46\textwidth}p{0.14\textwidth}} +\toprule +\textbf{Name} & \textbf{Unit} & \textbf{Description} & \textbf{Default} \\ +\midrule +\endhead +i\_zero & 1/cm & ([0.0, inf]) Intensity at q=0. & 70.0 \\ +rg & Ang & ([0.0, inf]) Radius of gyration. & 75.0 \\ +polydispersity & None & ([1.0, inf]) Polymer Mw/Mn. & 2.0 \\ +model\_scale & & Global scale factor for scattering kernel. For systems without inter-particle interference, the form factors can be related to the scattering intensity by the particle volume fraction. & 1.0 \\ +model\_abs & & Absorption cross section density at 2200 m/s. & 0.0 \\ +xwidth & m & ([-inf, inf]) Horiz. dimension of sample, as a width. & 0.01 \\ +yheight & m & ([-inf, inf]) vert . dimension of sample, as a height for cylinder/box & 0.01 \\ +zdepth & m & ([-inf, inf]) depth of sample & 0.005 \\ +R & m & Outer radius of sample in (x,z) plane for cylinder/sphere. & 0 \\ +target\_x & m & relative focus target position. & 0 \\ +target\_y & m & relative focus target position. & 0 \\ +target\_z & m & relative focus target position. & 1 \\ +target\_index & & Relative index of component to focus at, e.g. next is +1. & 1 \\ +focus\_xw & m & horiz. dimension of a rectangular area. & 0.5 \\ +focus\_yh & m & , vert. dimension of a rectangular area. & 0.5 \\ +focus\_aw & deg & , horiz. angular dimension of a rectangular area. & 0 \\ +focus\_ah & deg & , vert. angular dimension of a rectangular area. & 0 \\ +focus\_r & m & case of circular focusing, focusing radius. & 0 \\ +pd\_rg & & (0,inf) defined as (dx/x), where x is de mean value and dx the standard devition of the variable & 0.0 \\ +\bottomrule +\end{longtable} + +\subsection*{Links} +\begin{itemize} + \item \href{run:/home/willend/willend-McCode/mcstas-comps/sasmodels/SasView_poly_gauss_coil.comp}{Source code} for \texttt{SasView\_poly\_gauss\_coil.comp}. +\end{itemize} +\IfFileExists{SasView_poly_gauss_coil_static.tex}{\input{SasView_poly_gauss_coil_static.tex}}{} \ No newline at end of file diff --git a/docs/manuals/mcstas/sasmodels/SasView_polymer_excl_volume.tex b/docs/manuals/mcstas/sasmodels/SasView_polymer_excl_volume.tex new file mode 100644 index 000000000..4fb22b44c --- /dev/null +++ b/docs/manuals/mcstas/sasmodels/SasView_polymer_excl_volume.tex @@ -0,0 +1,57 @@ +\section{The \texttt{SasView\_polymer\_excl\_volume} McStas Component} +SasView polymer\_excl\_volume model component as sample description. + +\subsection*{Identification} +\begin{itemize} + \item \textbf{Site:} + \item \textbf{Author:} Jose Robledo + \item \textbf{Origin:} FZJ / DTU / ESS DMSC + \item \textbf{Date:} +\end{itemize} + +\subsection*{Description} +\begin{lstlisting} +SasView_polymer_excl_volume component, generated from polymer_excl_volume.c in sasmodels. + +Example: +SasView_polymer_excl_volume(rg, porod_exp, +model_scale=1.0, model_abs=0.0, xwidth=0.01, yheight=0.01, zdepth=0.005, R=0, +int target_index=1, target_x=0, target_y=0, target_z=1, +focus_xw=0.5, focus_yh=0.5, focus_aw=0, focus_ah=0, focus_r=0, +pd_rg=0.0) +\end{lstlisting} + +\subsection*{Input parameters} +Parameters in \textbf{boldface} are required; the others are optional. + +\begin{longtable}{p{0.22\textwidth}p{0.12\textwidth}p{0.46\textwidth}p{0.14\textwidth}} +\toprule +\textbf{Name} & \textbf{Unit} & \textbf{Description} & \textbf{Default} \\ +\midrule +\endhead +rg & Ang & ([0, inf]) Radius of Gyration. & 60.0 \\ +porod\_exp & & ([0, inf]) Porod exponent. & 3.0 \\ +model\_scale & & Global scale factor for scattering kernel. For systems without inter-particle interference, the form factors can be related to the scattering intensity by the particle volume fraction. & 1.0 \\ +model\_abs & & Absorption cross section density at 2200 m/s. & 0.0 \\ +xwidth & m & ([-inf, inf]) Horiz. dimension of sample, as a width. & 0.01 \\ +yheight & m & ([-inf, inf]) vert . dimension of sample, as a height for cylinder/box & 0.01 \\ +zdepth & m & ([-inf, inf]) depth of sample & 0.005 \\ +R & m & Outer radius of sample in (x,z) plane for cylinder/sphere. & 0 \\ +target\_x & m & relative focus target position. & 0 \\ +target\_y & m & relative focus target position. & 0 \\ +target\_z & m & relative focus target position. & 1 \\ +target\_index & & Relative index of component to focus at, e.g. next is +1. & 1 \\ +focus\_xw & m & horiz. dimension of a rectangular area. & 0.5 \\ +focus\_yh & m & , vert. dimension of a rectangular area. & 0.5 \\ +focus\_aw & deg & , horiz. angular dimension of a rectangular area. & 0 \\ +focus\_ah & deg & , vert. angular dimension of a rectangular area. & 0 \\ +focus\_r & m & case of circular focusing, focusing radius. & 0 \\ +pd\_rg & & (0,inf) defined as (dx/x), where x is de mean value and dx the standard devition of the variable & 0.0 \\ +\bottomrule +\end{longtable} + +\subsection*{Links} +\begin{itemize} + \item \href{run:/home/willend/willend-McCode/mcstas-comps/sasmodels/SasView_polymer_excl_volume.comp}{Source code} for \texttt{SasView\_polymer\_excl\_volume.comp}. +\end{itemize} +\IfFileExists{SasView_polymer_excl_volume_static.tex}{\input{SasView_polymer_excl_volume_static.tex}}{} \ No newline at end of file diff --git a/docs/manuals/mcstas/sasmodels/SasView_polymer_micelle.tex b/docs/manuals/mcstas/sasmodels/SasView_polymer_micelle.tex new file mode 100644 index 000000000..f98d10d8b --- /dev/null +++ b/docs/manuals/mcstas/sasmodels/SasView_polymer_micelle.tex @@ -0,0 +1,66 @@ +\section{The \texttt{SasView\_polymer\_micelle} McStas Component} +SasView polymer\_micelle model component as sample description. + +\subsection*{Identification} +\begin{itemize} + \item \textbf{Site:} + \item \textbf{Author:} Jose Robledo + \item \textbf{Origin:} FZJ / DTU / ESS DMSC + \item \textbf{Date:} +\end{itemize} + +\subsection*{Description} +\begin{lstlisting} +SasView_polymer_micelle component, generated from polymer_micelle.c in sasmodels. + +Example: +SasView_polymer_micelle(ndensity, v_core, v_corona, sld_solvent, sld_core, sld_corona, radius_core, rg, d_penetration, n_aggreg, +model_scale=1.0, model_abs=0.0, xwidth=0.01, yheight=0.01, zdepth=0.005, R=0, +int target_index=1, target_x=0, target_y=0, target_z=1, +focus_xw=0.5, focus_yh=0.5, focus_aw=0, focus_ah=0, focus_r=0, +pd_radius_core=0.0, pd_rg=0.0) +\end{lstlisting} + +\subsection*{Input parameters} +Parameters in \textbf{boldface} are required; the others are optional. + +\begin{longtable}{p{0.22\textwidth}p{0.12\textwidth}p{0.46\textwidth}p{0.14\textwidth}} +\toprule +\textbf{Name} & \textbf{Unit} & \textbf{Description} & \textbf{Default} \\ +\midrule +\endhead +ndensity & 1e15/cm\textasciicircum{}3 & ([0.0, inf]) Number density of micelles. & 8.94 \\ +v\_core & Ang\textasciicircum{}3 & ([0.0, inf]) Core volume . & 62624.0 \\ +v\_corona & Ang\textasciicircum{}3 & ([0.0, inf]) Corona volume. & 61940.0 \\ +sld\_solvent & 1e-6/Ang\textasciicircum{}2 & ([0.0, inf]) Solvent scattering length density. & 6.4 \\ +sld\_core & 1e-6/Ang\textasciicircum{}2 & ([0.0, inf]) Core scattering length density. & 0.34 \\ +sld\_corona & 1e-6/Ang\textasciicircum{}2 & ([0.0, inf]) Corona scattering length density. & 0.8 \\ +radius\_core & Ang & ([0.0, inf]) Radius of core ( must be \textgreater{}\textgreater{} rg ). & 45.0 \\ +rg & Ang & ([0.0, inf]) Radius of gyration of chains in corona. & 20.0 \\ +d\_penetration & & ([-inf, inf]) Factor to mimic non-penetration of Gaussian chains. & 1.0 \\ +n\_aggreg & & ([-inf, inf]) Aggregation number of the micelle. & 6.0 \\ +model\_scale & & Global scale factor for scattering kernel. For systems without inter-particle interference, the form factors can be related to the scattering intensity by the particle volume fraction. & 1.0 \\ +model\_abs & & Absorption cross section density at 2200 m/s. & 0.0 \\ +xwidth & m & ([-inf, inf]) Horiz. dimension of sample, as a width. & 0.01 \\ +yheight & m & ([-inf, inf]) vert . dimension of sample, as a height for cylinder/box & 0.01 \\ +zdepth & m & ([-inf, inf]) depth of sample & 0.005 \\ +R & m & Outer radius of sample in (x,z) plane for cylinder/sphere. & 0 \\ +target\_x & m & relative focus target position. & 0 \\ +target\_y & m & relative focus target position. & 0 \\ +target\_z & m & relative focus target position. & 1 \\ +target\_index & & Relative index of component to focus at, e.g. next is +1. & 1 \\ +focus\_xw & m & horiz. dimension of a rectangular area. & 0.5 \\ +focus\_yh & m & , vert. dimension of a rectangular area. & 0.5 \\ +focus\_aw & deg & , horiz. angular dimension of a rectangular area. & 0 \\ +focus\_ah & deg & , vert. angular dimension of a rectangular area. & 0 \\ +focus\_r & m & case of circular focusing, focusing radius. & 0 \\ +pd\_radius\_core & & (0,inf) defined as (dx/x), where x is de mean value and dx the standard devition of the variable. & 0.0 \\ +pd\_rg & & (0,inf) defined as (dx/x), where x is de mean value and dx the standard devition of the variable & 0.0 \\ +\bottomrule +\end{longtable} + +\subsection*{Links} +\begin{itemize} + \item \href{run:/home/willend/willend-McCode/mcstas-comps/sasmodels/SasView_polymer_micelle.comp}{Source code} for \texttt{SasView\_polymer\_micelle.comp}. +\end{itemize} +\IfFileExists{SasView_polymer_micelle_static.tex}{\input{SasView_polymer_micelle_static.tex}}{} \ No newline at end of file diff --git a/docs/manuals/mcstas/sasmodels/SasView_porod.tex b/docs/manuals/mcstas/sasmodels/SasView_porod.tex new file mode 100644 index 000000000..9484e33bb --- /dev/null +++ b/docs/manuals/mcstas/sasmodels/SasView_porod.tex @@ -0,0 +1,54 @@ +\section{The \texttt{SasView\_porod} McStas Component} +SasView porod model component as sample description. + +\subsection*{Identification} +\begin{itemize} + \item \textbf{Site:} + \item \textbf{Author:} Jose Robledo + \item \textbf{Origin:} FZJ / DTU / ESS DMSC + \item \textbf{Date:} +\end{itemize} + +\subsection*{Description} +\begin{lstlisting} +SasView_porod component, generated from porod.c in sasmodels. + +Example: +SasView_porod(, +model_scale=1.0, model_abs=0.0, xwidth=0.01, yheight=0.01, zdepth=0.005, R=0, +int target_index=1, target_x=0, target_y=0, target_z=1, +focus_xw=0.5, focus_yh=0.5, focus_aw=0, focus_ah=0, focus_r=0, +) +\end{lstlisting} + +\subsection*{Input parameters} +Parameters in \textbf{boldface} are required; the others are optional. + +\begin{longtable}{p{0.22\textwidth}p{0.12\textwidth}p{0.46\textwidth}p{0.14\textwidth}} +\toprule +\textbf{Name} & \textbf{Unit} & \textbf{Description} & \textbf{Default} \\ +\midrule +\endhead +model\_scale & & Global scale factor for scattering kernel. For systems without inter-particle interference, the form factors can be related to the scattering intensity by the particle volume fraction. & 1.0 \\ +model\_abs & & Absorption cross section density at 2200 m/s. & 0.0 \\ +xwidth & m & ([-inf, inf]) Horiz. dimension of sample, as a width. & 0.01 \\ +yheight & m & ([-inf, inf]) vert . dimension of sample, as a height for cylinder/box & 0.01 \\ +zdepth & m & ([-inf, inf]) depth of sample & 0.005 \\ +R & m & Outer radius of sample in (x,z) plane for cylinder/sphere. & 0 \\ +target\_x & m & relative focus target position. & 0 \\ +target\_y & m & relative focus target position. & 0 \\ +target\_z & m & relative focus target position. & 1 \\ +target\_index & & Relative index of component to focus at, e.g. next is +1. & 1 \\ +focus\_xw & m & horiz. dimension of a rectangular area. & 0.5 \\ +focus\_yh & m & , vert. dimension of a rectangular area. & 0.5 \\ +focus\_aw & deg & , horiz. angular dimension of a rectangular area. & 0 \\ +focus\_ah & deg & , vert. angular dimension of a rectangular area. & 0 \\ +focus\_r & m & case of circular focusing, focusing radius. & 0 \\ +\bottomrule +\end{longtable} + +\subsection*{Links} +\begin{itemize} + \item \href{run:/home/willend/willend-McCode/mcstas-comps/sasmodels/SasView_porod.comp}{Source code} for \texttt{SasView\_porod.comp}. +\end{itemize} +\IfFileExists{SasView_porod_static.tex}{\input{SasView_porod_static.tex}}{} \ No newline at end of file diff --git a/docs/manuals/mcstas/sasmodels/SasView_power_law.tex b/docs/manuals/mcstas/sasmodels/SasView_power_law.tex new file mode 100644 index 000000000..03dc976ec --- /dev/null +++ b/docs/manuals/mcstas/sasmodels/SasView_power_law.tex @@ -0,0 +1,55 @@ +\section{The \texttt{SasView\_power\_law} McStas Component} +SasView power\_law model component as sample description. + +\subsection*{Identification} +\begin{itemize} + \item \textbf{Site:} + \item \textbf{Author:} Jose Robledo + \item \textbf{Origin:} FZJ / DTU / ESS DMSC + \item \textbf{Date:} +\end{itemize} + +\subsection*{Description} +\begin{lstlisting} +SasView_power_law component, generated from power_law.c in sasmodels. + +Example: +SasView_power_law(power, +model_scale=1.0, model_abs=0.0, xwidth=0.01, yheight=0.01, zdepth=0.005, R=0, +int target_index=1, target_x=0, target_y=0, target_z=1, +focus_xw=0.5, focus_yh=0.5, focus_aw=0, focus_ah=0, focus_r=0, +) +\end{lstlisting} + +\subsection*{Input parameters} +Parameters in \textbf{boldface} are required; the others are optional. + +\begin{longtable}{p{0.22\textwidth}p{0.12\textwidth}p{0.46\textwidth}p{0.14\textwidth}} +\toprule +\textbf{Name} & \textbf{Unit} & \textbf{Description} & \textbf{Default} \\ +\midrule +\endhead +power & & ([-inf, inf]) Power law exponent. & 4.0 \\ +model\_scale & & Global scale factor for scattering kernel. For systems without inter-particle interference, the form factors can be related to the scattering intensity by the particle volume fraction. & 1.0 \\ +model\_abs & & Absorption cross section density at 2200 m/s. & 0.0 \\ +xwidth & m & ([-inf, inf]) Horiz. dimension of sample, as a width. & 0.01 \\ +yheight & m & ([-inf, inf]) vert . dimension of sample, as a height for cylinder/box & 0.01 \\ +zdepth & m & ([-inf, inf]) depth of sample & 0.005 \\ +R & m & Outer radius of sample in (x,z) plane for cylinder/sphere. & 0 \\ +target\_x & m & relative focus target position. & 0 \\ +target\_y & m & relative focus target position. & 0 \\ +target\_z & m & relative focus target position. & 1 \\ +target\_index & & Relative index of component to focus at, e.g. next is +1. & 1 \\ +focus\_xw & m & horiz. dimension of a rectangular area. & 0.5 \\ +focus\_yh & m & , vert. dimension of a rectangular area. & 0.5 \\ +focus\_aw & deg & , horiz. angular dimension of a rectangular area. & 0 \\ +focus\_ah & deg & , vert. angular dimension of a rectangular area. & 0 \\ +focus\_r & m & case of circular focusing, focusing radius. & 0 \\ +\bottomrule +\end{longtable} + +\subsection*{Links} +\begin{itemize} + \item \href{run:/home/willend/willend-McCode/mcstas-comps/sasmodels/SasView_power_law.comp}{Source code} for \texttt{SasView\_power\_law.comp}. +\end{itemize} +\IfFileExists{SasView_power_law_static.tex}{\input{SasView_power_law_static.tex}}{} \ No newline at end of file diff --git a/docs/manuals/mcstas/sasmodels/SasView_pringle.tex b/docs/manuals/mcstas/sasmodels/SasView_pringle.tex new file mode 100644 index 000000000..c439a2f4e --- /dev/null +++ b/docs/manuals/mcstas/sasmodels/SasView_pringle.tex @@ -0,0 +1,62 @@ +\section{The \texttt{SasView\_pringle} McStas Component} +SasView pringle model component as sample description. + +\subsection*{Identification} +\begin{itemize} + \item \textbf{Site:} + \item \textbf{Author:} Jose Robledo + \item \textbf{Origin:} FZJ / DTU / ESS DMSC + \item \textbf{Date:} +\end{itemize} + +\subsection*{Description} +\begin{lstlisting} +SasView_pringle component, generated from pringle.c in sasmodels. + +Example: +SasView_pringle(radius, thickness, alpha, beta, sld, sld_solvent, +model_scale=1.0, model_abs=0.0, xwidth=0.01, yheight=0.01, zdepth=0.005, R=0, +int target_index=1, target_x=0, target_y=0, target_z=1, +focus_xw=0.5, focus_yh=0.5, focus_aw=0, focus_ah=0, focus_r=0, +pd_radius=0.0, pd_thickness=0.0) +\end{lstlisting} + +\subsection*{Input parameters} +Parameters in \textbf{boldface} are required; the others are optional. + +\begin{longtable}{p{0.22\textwidth}p{0.12\textwidth}p{0.46\textwidth}p{0.14\textwidth}} +\toprule +\textbf{Name} & \textbf{Unit} & \textbf{Description} & \textbf{Default} \\ +\midrule +\endhead +radius & Ang & ([0, inf]) Pringle radius. & 60.0 \\ +thickness & Ang & ([0, inf]) Thickness of pringle. & 10.0 \\ +alpha & & ([-inf, inf]) Curvature parameter alpha. & 0.001 \\ +beta & & ([-inf, inf]) Curvature paramter beta. & 0.02 \\ +sld & 1e-6/Ang\textasciicircum{}2 & ([-inf, inf]) Pringle sld. & 1.0 \\ +sld\_solvent & 1e-6/Ang\textasciicircum{}2 & ([-inf, inf]) Solvent sld. & 6.3 \\ +model\_scale & & Global scale factor for scattering kernel. For systems without inter-particle interference, the form factors can be related to the scattering intensity by the particle volume fraction. & 1.0 \\ +model\_abs & & Absorption cross section density at 2200 m/s. & 0.0 \\ +xwidth & m & ([-inf, inf]) Horiz. dimension of sample, as a width. & 0.01 \\ +yheight & m & ([-inf, inf]) vert . dimension of sample, as a height for cylinder/box & 0.01 \\ +zdepth & m & ([-inf, inf]) depth of sample & 0.005 \\ +R & m & Outer radius of sample in (x,z) plane for cylinder/sphere. & 0 \\ +target\_x & m & relative focus target position. & 0 \\ +target\_y & m & relative focus target position. & 0 \\ +target\_z & m & relative focus target position. & 1 \\ +target\_index & & Relative index of component to focus at, e.g. next is +1. & 1 \\ +focus\_xw & m & horiz. dimension of a rectangular area. & 0.5 \\ +focus\_yh & m & , vert. dimension of a rectangular area. & 0.5 \\ +focus\_aw & deg & , horiz. angular dimension of a rectangular area. & 0 \\ +focus\_ah & deg & , vert. angular dimension of a rectangular area. & 0 \\ +focus\_r & m & case of circular focusing, focusing radius. & 0 \\ +pd\_radius & & (0,inf) defined as (dx/x), where x is de mean value and dx the standard devition of the variable. & 0.0 \\ +pd\_thickness & & (0,inf) defined as (dx/x), where x is de mean value and dx the standard devition of the variable & 0.0 \\ +\bottomrule +\end{longtable} + +\subsection*{Links} +\begin{itemize} + \item \href{run:/home/willend/willend-McCode/mcstas-comps/sasmodels/SasView_pringle.comp}{Source code} for \texttt{SasView\_pringle.comp}. +\end{itemize} +\IfFileExists{SasView_pringle_static.tex}{\input{SasView_pringle_static.tex}}{} \ No newline at end of file diff --git a/docs/manuals/mcstas/sasmodels/SasView_raspberry.tex b/docs/manuals/mcstas/sasmodels/SasView_raspberry.tex new file mode 100644 index 000000000..09ee5dbab --- /dev/null +++ b/docs/manuals/mcstas/sasmodels/SasView_raspberry.tex @@ -0,0 +1,65 @@ +\section{The \texttt{SasView\_raspberry} McStas Component} +SasView raspberry model component as sample description. + +\subsection*{Identification} +\begin{itemize} + \item \textbf{Site:} + \item \textbf{Author:} Jose Robledo + \item \textbf{Origin:} FZJ / DTU / ESS DMSC + \item \textbf{Date:} +\end{itemize} + +\subsection*{Description} +\begin{lstlisting} +SasView_raspberry component, generated from raspberry.c in sasmodels. + +Example: +SasView_raspberry(sld_lg, sld_sm, sld_solvent, volfraction_lg, volfraction_sm, surface_fraction, radius_lg, radius_sm, penetration, +model_scale=1.0, model_abs=0.0, xwidth=0.01, yheight=0.01, zdepth=0.005, R=0, +int target_index=1, target_x=0, target_y=0, target_z=1, +focus_xw=0.5, focus_yh=0.5, focus_aw=0, focus_ah=0, focus_r=0, +pd_radius_lg=0.0, pd_radius_sm=0.0) +\end{lstlisting} + +\subsection*{Input parameters} +Parameters in \textbf{boldface} are required; the others are optional. + +\begin{longtable}{p{0.22\textwidth}p{0.12\textwidth}p{0.46\textwidth}p{0.14\textwidth}} +\toprule +\textbf{Name} & \textbf{Unit} & \textbf{Description} & \textbf{Default} \\ +\midrule +\endhead +sld\_lg & 1e-6/Ang\textasciicircum{}2 & ([-inf, inf]) large particle scattering length density. & -0.4 \\ +sld\_sm & 1e-6/Ang\textasciicircum{}2 & ([-inf, inf]) small particle scattering length density. & 3.5 \\ +sld\_solvent & 1e-6/Ang\textasciicircum{}2 & ([-inf, inf]) solvent scattering length density. & 6.36 \\ +volfraction\_lg & & ([-inf, inf]) volume fraction of large spheres. & 0.05 \\ +volfraction\_sm & & ([-inf, inf]) volume fraction of small spheres. & 0.005 \\ +surface\_fraction & & ([-inf, inf]) fraction of small spheres at surface. & 0.4 \\ +radius\_lg & Ang & ([0, inf]) radius of large spheres. & 5000 \\ +radius\_sm & Ang & ([0, inf]) radius of small spheres. & 100 \\ +penetration & Ang & ([-1, 1]) fractional penetration depth of small spheres into large sphere. & 0 \\ +model\_scale & & Global scale factor for scattering kernel. For systems without inter-particle interference, the form factors can be related to the scattering intensity by the particle volume fraction. & 1.0 \\ +model\_abs & & Absorption cross section density at 2200 m/s. & 0.0 \\ +xwidth & m & ([-inf, inf]) Horiz. dimension of sample, as a width. & 0.01 \\ +yheight & m & ([-inf, inf]) vert . dimension of sample, as a height for cylinder/box & 0.01 \\ +zdepth & m & ([-inf, inf]) depth of sample & 0.005 \\ +R & m & Outer radius of sample in (x,z) plane for cylinder/sphere. & 0 \\ +target\_x & m & relative focus target position. & 0 \\ +target\_y & m & relative focus target position. & 0 \\ +target\_z & m & relative focus target position. & 1 \\ +target\_index & & Relative index of component to focus at, e.g. next is +1. & 1 \\ +focus\_xw & m & horiz. dimension of a rectangular area. & 0.5 \\ +focus\_yh & m & , vert. dimension of a rectangular area. & 0.5 \\ +focus\_aw & deg & , horiz. angular dimension of a rectangular area. & 0 \\ +focus\_ah & deg & , vert. angular dimension of a rectangular area. & 0 \\ +focus\_r & m & case of circular focusing, focusing radius. & 0 \\ +pd\_radius\_lg & & (0,inf) defined as (dx/x), where x is de mean value and dx the standard devition of the variable. & 0.0 \\ +pd\_radius\_sm & & (0,inf) defined as (dx/x), where x is de mean value and dx the standard devition of the variable & 0.0 \\ +\bottomrule +\end{longtable} + +\subsection*{Links} +\begin{itemize} + \item \href{run:/home/willend/willend-McCode/mcstas-comps/sasmodels/SasView_raspberry.comp}{Source code} for \texttt{SasView\_raspberry.comp}. +\end{itemize} +\IfFileExists{SasView_raspberry_static.tex}{\input{SasView_raspberry_static.tex}}{} \ No newline at end of file diff --git a/docs/manuals/mcstas/sasmodels/SasView_rectangular_prism.tex b/docs/manuals/mcstas/sasmodels/SasView_rectangular_prism.tex new file mode 100644 index 000000000..85b0d6d2f --- /dev/null +++ b/docs/manuals/mcstas/sasmodels/SasView_rectangular_prism.tex @@ -0,0 +1,53 @@ +\section{The \texttt{SasView\_rectangular\_prism} McStas Component} +SasView rectangular\_prism model component as sample description. + +\subsection*{Identification} +\begin{itemize} + \item \textbf{Site:} + \item \textbf{Author:} Jose Robledo + \item \textbf{Origin:} FZJ / DTU / ESS DMSC + \item \textbf{Date:} +\end{itemize} + +\subsection*{Description} +\begin{lstlisting} + +\end{lstlisting} + +\subsection*{Input parameters} +Parameters in \textbf{boldface} are required; the others are optional. + +\begin{longtable}{p{0.22\textwidth}p{0.12\textwidth}p{0.46\textwidth}p{0.14\textwidth}} +\toprule +\textbf{Name} & \textbf{Unit} & \textbf{Description} & \textbf{Default} \\ +\midrule +\endhead +sld & & & 6.3 \\ +sld\_solvent & & & 1 \\ +length\_a & & & 35 \\ +b2a\_ratio & & & 1 \\ +c2a\_ratio & & & 1 \\ +model\_scale & & & 1.0 \\ +model\_abs & & & 0.0 \\ +xwidth & & & 0.01 \\ +yheight & & & 0.01 \\ +zdepth & & & 0.005 \\ +R & & & 0 \\ +target\_x & & & 0 \\ +target\_y & & & 0 \\ +target\_z & & & 1 \\ +target\_index & & & 1 \\ +focus\_xw & & & 0.5 \\ +focus\_yh & & & 0.5 \\ +focus\_aw & & & 0 \\ +focus\_ah & & & 0 \\ +focus\_r & & & 0 \\ +pd\_length\_a & & & 0.0 \\ +\bottomrule +\end{longtable} + +\subsection*{Links} +\begin{itemize} + \item \href{run:/home/willend/willend-McCode/mcstas-comps/sasmodels/SasView_rectangular_prism.comp}{Source code} for \texttt{SasView\_rectangular\_prism.comp}. +\end{itemize} +\IfFileExists{SasView_rectangular_prism_static.tex}{\input{SasView_rectangular_prism_static.tex}}{} \ No newline at end of file diff --git a/docs/manuals/mcstas/sasmodels/SasView_rectangular_prism_aniso.tex b/docs/manuals/mcstas/sasmodels/SasView_rectangular_prism_aniso.tex new file mode 100644 index 000000000..0b2dc9213 --- /dev/null +++ b/docs/manuals/mcstas/sasmodels/SasView_rectangular_prism_aniso.tex @@ -0,0 +1,66 @@ +\section{The \texttt{SasView\_rectangular\_prism\_aniso} McStas Component} +SasView rectangular\_prism model component as sample description. + +\subsection*{Identification} +\begin{itemize} + \item \textbf{Site:} + \item \textbf{Author:} Jose Robledo + \item \textbf{Origin:} FZJ / DTU / ESS DMSC + \item \textbf{Date:} +\end{itemize} + +\subsection*{Description} +\begin{lstlisting} +SasView_rectangular_prism component, generated from rectangular_prism.c in sasmodels. + +Example: +SasView_rectangular_prism_aniso(sld, sld_solvent, length_a, b2a_ratio, c2a_ratio, theta, phi, Psi, +model_scale=1.0, model_abs=0.0, xwidth=0.01, yheight=0.01, zdepth=0.005, R=0, +int target_index=1, target_x=0, target_y=0, target_z=1, +focus_xw=0.5, focus_yh=0.5, focus_aw=0, focus_ah=0, focus_r=0, +pd_length_a=0.0, pd_theta=0.0, pd_phi=0.0, pd_Psi=0.0) +\end{lstlisting} + +\subsection*{Input parameters} +Parameters in \textbf{boldface} are required; the others are optional. + +\begin{longtable}{p{0.22\textwidth}p{0.12\textwidth}p{0.46\textwidth}p{0.14\textwidth}} +\toprule +\textbf{Name} & \textbf{Unit} & \textbf{Description} & \textbf{Default} \\ +\midrule +\endhead +sld & 1e-6/Ang\textasciicircum{}2 & ([-inf, inf]) Parallelepiped scattering length density. & 6.3 \\ +sld\_solvent & 1e-6/Ang\textasciicircum{}2 & ([-inf, inf]) Solvent scattering length density. & 1 \\ +length\_a & Ang & ([0, inf]) Shorter side of the parallelepiped. & 35 \\ +b2a\_ratio & & ([0, inf]) Ratio sides b/a. & 1 \\ +c2a\_ratio & & ([0, inf]) Ratio sides c/a. & 1 \\ +theta & & & 0 \\ +phi & & & 0 \\ +Psi & & & 0 \\ +model\_scale & & Global scale factor for scattering kernel. For systems without inter-particle interference, the form factors can be related to the scattering intensity by the particle volume fraction. & 1.0 \\ +model\_abs & & Absorption cross section density at 2200 m/s. & 0.0 \\ +xwidth & m & ([-inf, inf]) Horiz. dimension of sample, as a width. & 0.01 \\ +yheight & m & ([-inf, inf]) vert . dimension of sample, as a height for cylinder/box & 0.01 \\ +zdepth & m & ([-inf, inf]) depth of sample & 0.005 \\ +R & m & Outer radius of sample in (x,z) plane for cylinder/sphere. & 0 \\ +target\_x & m & relative focus target position. & 0 \\ +target\_y & m & relative focus target position. & 0 \\ +target\_z & m & relative focus target position. & 1 \\ +target\_index & & Relative index of component to focus at, e.g. next is +1. & 1 \\ +focus\_xw & m & horiz. dimension of a rectangular area. & 0.5 \\ +focus\_yh & m & , vert. dimension of a rectangular area. & 0.5 \\ +focus\_aw & deg & , horiz. angular dimension of a rectangular area. & 0 \\ +focus\_ah & deg & , vert. angular dimension of a rectangular area. & 0 \\ +focus\_r & m & case of circular focusing, focusing radius. & 0 \\ +pd\_length\_a & & (0,inf) defined as (dx/x), where x is de mean value and dx the standard devition of the variable. & 0.0 \\ +pd\_theta & & (0,360) defined as (dx/x), where x is de mean value and dx the standard devition of the variable. & 0.0 \\ +pd\_phi & & (0,360) defined as (dx/x), where x is de mean value and dx the standard devition of the variable. & 0.0 \\ +pd\_Psi & & (0,360) defined as (dx/x), where x is de mean value and dx the standard devition of the variable & 0.0 \\ +\bottomrule +\end{longtable} + +\subsection*{Links} +\begin{itemize} + \item \href{run:/home/willend/willend-McCode/mcstas-comps/sasmodels/SasView_rectangular_prism_aniso.comp}{Source code} for \texttt{SasView\_rectangular\_prism\_aniso.comp}. +\end{itemize} +\IfFileExists{SasView_rectangular_prism_aniso_static.tex}{\input{SasView_rectangular_prism_aniso_static.tex}}{} \ No newline at end of file diff --git a/docs/manuals/mcstas/sasmodels/SasView_rpa.tex b/docs/manuals/mcstas/sasmodels/SasView_rpa.tex new file mode 100644 index 000000000..a3a8bd935 --- /dev/null +++ b/docs/manuals/mcstas/sasmodels/SasView_rpa.tex @@ -0,0 +1,39 @@ +\section{The \texttt{SasView\_rpa} McStas Component} +SasView rpa model component as sample description. + +\subsection*{Identification} +\begin{itemize} + \item \textbf{Site:} + \item \textbf{Author:} Jose Robledo + \item \textbf{Origin:} FZJ / DTU / ESS DMSC + \item \textbf{Date:} +\end{itemize} + +\subsection*{Description} +\begin{lstlisting} +SasView_rpa component, generated from rpa.c in sasmodels. + +Example: +SasView_rpa(case_num, N[4], Phi[4], v[4], L[4], b[4], K12, K13, K14, K23, K24, K34, +model_scale=1.0, model_abs=0.0, xwidth=0.01, yheight=0.01, zdepth=0.005, R=0, +int target_index=1, target_x=0, target_y=0, target_z=1, +focus_xw=0.5, focus_yh=0.5, focus_aw=0, focus_ah=0, focus_r=0, +) +\end{lstlisting} + +\subsection*{Input parameters} +Parameters in \textbf{boldface} are required; the others are optional. + +\begin{longtable}{p{0.22\textwidth}p{0.12\textwidth}p{0.46\textwidth}p{0.14\textwidth}} +\toprule +\textbf{Name} & \textbf{Unit} & \textbf{Description} & \textbf{Default} \\ +\midrule +\endhead +\bottomrule +\end{longtable} + +\subsection*{Links} +\begin{itemize} + \item \href{run:/home/willend/willend-McCode/mcstas-comps/sasmodels/SasView_rpa.comp}{Source code} for \texttt{SasView\_rpa.comp}. +\end{itemize} +\IfFileExists{SasView_rpa_static.tex}{\input{SasView_rpa_static.tex}}{} \ No newline at end of file diff --git a/docs/manuals/mcstas/sasmodels/SasView_sc_paracrystal.tex b/docs/manuals/mcstas/sasmodels/SasView_sc_paracrystal.tex new file mode 100644 index 000000000..c0b52dc85 --- /dev/null +++ b/docs/manuals/mcstas/sasmodels/SasView_sc_paracrystal.tex @@ -0,0 +1,60 @@ +\section{The \texttt{SasView\_sc\_paracrystal} McStas Component} +SasView sc\_paracrystal model component as sample description. + +\subsection*{Identification} +\begin{itemize} + \item \textbf{Site:} + \item \textbf{Author:} Jose Robledo + \item \textbf{Origin:} FZJ / DTU / ESS DMSC + \item \textbf{Date:} +\end{itemize} + +\subsection*{Description} +\begin{lstlisting} +SasView_sc_paracrystal component, generated from sc_paracrystal.c in sasmodels. + +Example: +SasView_sc_paracrystal(dnn, d_factor, radius, sld, sld_solvent, +model_scale=1.0, model_abs=0.0, xwidth=0.01, yheight=0.01, zdepth=0.005, R=0, +int target_index=1, target_x=0, target_y=0, target_z=1, +focus_xw=0.5, focus_yh=0.5, focus_aw=0, focus_ah=0, focus_r=0, +pd_radius=0.0) +\end{lstlisting} + +\subsection*{Input parameters} +Parameters in \textbf{boldface} are required; the others are optional. + +\begin{longtable}{p{0.22\textwidth}p{0.12\textwidth}p{0.46\textwidth}p{0.14\textwidth}} +\toprule +\textbf{Name} & \textbf{Unit} & \textbf{Description} & \textbf{Default} \\ +\midrule +\endhead +dnn & Ang & ([0.0, inf]) Nearest neighbor distance. & 220.0 \\ +d\_factor & & ([-inf, inf]) Paracrystal distortion factor. & 0.06 \\ +radius & Ang & ([0.0, inf]) Radius of sphere. & 40.0 \\ +sld & 1e-6/Ang\textasciicircum{}2 & ([0.0, inf]) Sphere scattering length density. & 3.0 \\ +sld\_solvent & 1e-6/Ang\textasciicircum{}2 & ([0.0, inf]) Solvent scattering length density. & 6.3 \\ +model\_scale & & Global scale factor for scattering kernel. For systems without inter-particle interference, the form factors can be related to the scattering intensity by the particle volume fraction. & 1.0 \\ +model\_abs & & Absorption cross section density at 2200 m/s. & 0.0 \\ +xwidth & m & ([-inf, inf]) Horiz. dimension of sample, as a width. & 0.01 \\ +yheight & m & ([-inf, inf]) vert . dimension of sample, as a height for cylinder/box & 0.01 \\ +zdepth & m & ([-inf, inf]) depth of sample & 0.005 \\ +R & m & Outer radius of sample in (x,z) plane for cylinder/sphere. & 0 \\ +target\_x & m & relative focus target position. & 0 \\ +target\_y & m & relative focus target position. & 0 \\ +target\_z & m & relative focus target position. & 1 \\ +target\_index & & Relative index of component to focus at, e.g. next is +1. & 1 \\ +focus\_xw & m & horiz. dimension of a rectangular area. & 0.5 \\ +focus\_yh & m & , vert. dimension of a rectangular area. & 0.5 \\ +focus\_aw & deg & , horiz. angular dimension of a rectangular area. & 0 \\ +focus\_ah & deg & , vert. angular dimension of a rectangular area. & 0 \\ +focus\_r & m & case of circular focusing, focusing radius. & 0 \\ +pd\_radius & & (0,inf) defined as (dx/x), where x is de mean value and dx the standard devition of the variable & 0.0 \\ +\bottomrule +\end{longtable} + +\subsection*{Links} +\begin{itemize} + \item \href{run:/home/willend/willend-McCode/mcstas-comps/sasmodels/SasView_sc_paracrystal.comp}{Source code} for \texttt{SasView\_sc\_paracrystal.comp}. +\end{itemize} +\IfFileExists{SasView_sc_paracrystal_static.tex}{\input{SasView_sc_paracrystal_static.tex}}{} \ No newline at end of file diff --git a/docs/manuals/mcstas/sasmodels/SasView_sc_paracrystal_aniso.tex b/docs/manuals/mcstas/sasmodels/SasView_sc_paracrystal_aniso.tex new file mode 100644 index 000000000..727f21027 --- /dev/null +++ b/docs/manuals/mcstas/sasmodels/SasView_sc_paracrystal_aniso.tex @@ -0,0 +1,66 @@ +\section{The \texttt{SasView\_sc\_paracrystal\_aniso} McStas Component} +SasView sc\_paracrystal model component as sample description. + +\subsection*{Identification} +\begin{itemize} + \item \textbf{Site:} + \item \textbf{Author:} Jose Robledo + \item \textbf{Origin:} FZJ / DTU / ESS DMSC + \item \textbf{Date:} +\end{itemize} + +\subsection*{Description} +\begin{lstlisting} +SasView_sc_paracrystal component, generated from sc_paracrystal.c in sasmodels. + +Example: +SasView_sc_paracrystal_aniso(dnn, d_factor, radius, sld, sld_solvent, theta, phi, Psi, +model_scale=1.0, model_abs=0.0, xwidth=0.01, yheight=0.01, zdepth=0.005, R=0, +int target_index=1, target_x=0, target_y=0, target_z=1, +focus_xw=0.5, focus_yh=0.5, focus_aw=0, focus_ah=0, focus_r=0, +pd_radius=0.0, pd_theta=0.0, pd_phi=0.0, pd_Psi=0.0) +\end{lstlisting} + +\subsection*{Input parameters} +Parameters in \textbf{boldface} are required; the others are optional. + +\begin{longtable}{p{0.22\textwidth}p{0.12\textwidth}p{0.46\textwidth}p{0.14\textwidth}} +\toprule +\textbf{Name} & \textbf{Unit} & \textbf{Description} & \textbf{Default} \\ +\midrule +\endhead +dnn & Ang & ([0.0, inf]) Nearest neighbor distance. & 220.0 \\ +d\_factor & & ([-inf, inf]) Paracrystal distortion factor. & 0.06 \\ +radius & Ang & ([0.0, inf]) Radius of sphere. & 40.0 \\ +sld & 1e-6/Ang\textasciicircum{}2 & ([0.0, inf]) Sphere scattering length density. & 3.0 \\ +sld\_solvent & 1e-6/Ang\textasciicircum{}2 & ([0.0, inf]) Solvent scattering length density. & 6.3 \\ +theta & & & 0 \\ +phi & & & 0 \\ +Psi & & & 0 \\ +model\_scale & & Global scale factor for scattering kernel. For systems without inter-particle interference, the form factors can be related to the scattering intensity by the particle volume fraction. & 1.0 \\ +model\_abs & & Absorption cross section density at 2200 m/s. & 0.0 \\ +xwidth & m & ([-inf, inf]) Horiz. dimension of sample, as a width. & 0.01 \\ +yheight & m & ([-inf, inf]) vert . dimension of sample, as a height for cylinder/box & 0.01 \\ +zdepth & m & ([-inf, inf]) depth of sample & 0.005 \\ +R & m & Outer radius of sample in (x,z) plane for cylinder/sphere. & 0 \\ +target\_x & m & relative focus target position. & 0 \\ +target\_y & m & relative focus target position. & 0 \\ +target\_z & m & relative focus target position. & 1 \\ +target\_index & & Relative index of component to focus at, e.g. next is +1. & 1 \\ +focus\_xw & m & horiz. dimension of a rectangular area. & 0.5 \\ +focus\_yh & m & , vert. dimension of a rectangular area. & 0.5 \\ +focus\_aw & deg & , horiz. angular dimension of a rectangular area. & 0 \\ +focus\_ah & deg & , vert. angular dimension of a rectangular area. & 0 \\ +focus\_r & m & case of circular focusing, focusing radius. & 0 \\ +pd\_radius & & (0,inf) defined as (dx/x), where x is de mean value and dx the standard devition of the variable. & 0.0 \\ +pd\_theta & & (0,360) defined as (dx/x), where x is de mean value and dx the standard devition of the variable. & 0.0 \\ +pd\_phi & & (0,360) defined as (dx/x), where x is de mean value and dx the standard devition of the variable. & 0.0 \\ +pd\_Psi & & (0,360) defined as (dx/x), where x is de mean value and dx the standard devition of the variable & 0.0 \\ +\bottomrule +\end{longtable} + +\subsection*{Links} +\begin{itemize} + \item \href{run:/home/willend/willend-McCode/mcstas-comps/sasmodels/SasView_sc_paracrystal_aniso.comp}{Source code} for \texttt{SasView\_sc\_paracrystal\_aniso.comp}. +\end{itemize} +\IfFileExists{SasView_sc_paracrystal_aniso_static.tex}{\input{SasView_sc_paracrystal_aniso_static.tex}}{} \ No newline at end of file diff --git a/docs/manuals/mcstas/sasmodels/SasView_sphere.tex b/docs/manuals/mcstas/sasmodels/SasView_sphere.tex new file mode 100644 index 000000000..f33e53474 --- /dev/null +++ b/docs/manuals/mcstas/sasmodels/SasView_sphere.tex @@ -0,0 +1,58 @@ +\section{The \texttt{SasView\_sphere} McStas Component} +SasView sphere model component as sample description. + +\subsection*{Identification} +\begin{itemize} + \item \textbf{Site:} + \item \textbf{Author:} Jose Robledo + \item \textbf{Origin:} FZJ / DTU / ESS DMSC + \item \textbf{Date:} +\end{itemize} + +\subsection*{Description} +\begin{lstlisting} +SasView_sphere component, generated from sphere.c in sasmodels. + +Example: +SasView_sphere(sld, sld_solvent, radius, +model_scale=1.0, model_abs=0.0, xwidth=0.01, yheight=0.01, zdepth=0.005, R=0, +int target_index=1, target_x=0, target_y=0, target_z=1, +focus_xw=0.5, focus_yh=0.5, focus_aw=0, focus_ah=0, focus_r=0, +pd_radius=0.0) +\end{lstlisting} + +\subsection*{Input parameters} +Parameters in \textbf{boldface} are required; the others are optional. + +\begin{longtable}{p{0.22\textwidth}p{0.12\textwidth}p{0.46\textwidth}p{0.14\textwidth}} +\toprule +\textbf{Name} & \textbf{Unit} & \textbf{Description} & \textbf{Default} \\ +\midrule +\endhead +sld & 1e-6/Ang\textasciicircum{}2 & ([-inf, inf]) Layer scattering length density. & 1 \\ +sld\_solvent & 1e-6/Ang\textasciicircum{}2 & ([-inf, inf]) Solvent scattering length density. & 6 \\ +radius & Ang & ([0, inf]) Sphere radius. & 50 \\ +model\_scale & & Global scale factor for scattering kernel. For systems without inter-particle interference, the form factors can be related to the scattering intensity by the particle volume fraction. & 1.0 \\ +model\_abs & & Absorption cross section density at 2200 m/s. & 0.0 \\ +xwidth & m & ([-inf, inf]) Horiz. dimension of sample, as a width. & 0.01 \\ +yheight & m & ([-inf, inf]) vert . dimension of sample, as a height for cylinder/box & 0.01 \\ +zdepth & m & ([-inf, inf]) depth of sample & 0.005 \\ +R & m & Outer radius of sample in (x,z) plane for cylinder/sphere. & 0 \\ +target\_x & m & relative focus target position. & 0 \\ +target\_y & m & relative focus target position. & 0 \\ +target\_z & m & relative focus target position. & 1 \\ +target\_index & & Relative index of component to focus at, e.g. next is +1. & 1 \\ +focus\_xw & m & horiz. dimension of a rectangular area. & 0.5 \\ +focus\_yh & m & , vert. dimension of a rectangular area. & 0.5 \\ +focus\_aw & deg & , horiz. angular dimension of a rectangular area. & 0 \\ +focus\_ah & deg & , vert. angular dimension of a rectangular area. & 0 \\ +focus\_r & m & case of circular focusing, focusing radius. & 0 \\ +pd\_radius & & (0,inf) defined as (dx/x), where x is de mean value and dx the standard devition of the variable & 0.0 \\ +\bottomrule +\end{longtable} + +\subsection*{Links} +\begin{itemize} + \item \href{run:/home/willend/willend-McCode/mcstas-comps/sasmodels/SasView_sphere.comp}{Source code} for \texttt{SasView\_sphere.comp}. +\end{itemize} +\IfFileExists{SasView_sphere_static.tex}{\input{SasView_sphere_static.tex}}{} \ No newline at end of file diff --git a/docs/manuals/mcstas/sasmodels/SasView_spinodal.tex b/docs/manuals/mcstas/sasmodels/SasView_spinodal.tex new file mode 100644 index 000000000..eb41be14e --- /dev/null +++ b/docs/manuals/mcstas/sasmodels/SasView_spinodal.tex @@ -0,0 +1,56 @@ +\section{The \texttt{SasView\_spinodal} McStas Component} +SasView spinodal model component as sample description. + +\subsection*{Identification} +\begin{itemize} + \item \textbf{Site:} + \item \textbf{Author:} Jose Robledo + \item \textbf{Origin:} FZJ / DTU / ESS DMSC + \item \textbf{Date:} +\end{itemize} + +\subsection*{Description} +\begin{lstlisting} +SasView_spinodal component, generated from spinodal.c in sasmodels. + +Example: +SasView_spinodal(gamma, q_0, +model_scale=1.0, model_abs=0.0, xwidth=0.01, yheight=0.01, zdepth=0.005, R=0, +int target_index=1, target_x=0, target_y=0, target_z=1, +focus_xw=0.5, focus_yh=0.5, focus_aw=0, focus_ah=0, focus_r=0, +) +\end{lstlisting} + +\subsection*{Input parameters} +Parameters in \textbf{boldface} are required; the others are optional. + +\begin{longtable}{p{0.22\textwidth}p{0.12\textwidth}p{0.46\textwidth}p{0.14\textwidth}} +\toprule +\textbf{Name} & \textbf{Unit} & \textbf{Description} & \textbf{Default} \\ +\midrule +\endhead +gamma & & ([-inf, inf]) Exponent. & 3.0 \\ +q\_0 & 1/Ang & ([-inf, inf]) Correlation peak position. & 0.1 \\ +model\_scale & & Global scale factor for scattering kernel. For systems without inter-particle interference, the form factors can be related to the scattering intensity by the particle volume fraction. & 1.0 \\ +model\_abs & & Absorption cross section density at 2200 m/s. & 0.0 \\ +xwidth & m & ([-inf, inf]) Horiz. dimension of sample, as a width. & 0.01 \\ +yheight & m & ([-inf, inf]) vert . dimension of sample, as a height for cylinder/box & 0.01 \\ +zdepth & m & ([-inf, inf]) depth of sample & 0.005 \\ +R & m & Outer radius of sample in (x,z) plane for cylinder/sphere. & 0 \\ +target\_x & m & relative focus target position. & 0 \\ +target\_y & m & relative focus target position. & 0 \\ +target\_z & m & relative focus target position. & 1 \\ +target\_index & & Relative index of component to focus at, e.g. next is +1. & 1 \\ +focus\_xw & m & horiz. dimension of a rectangular area. & 0.5 \\ +focus\_yh & m & , vert. dimension of a rectangular area. & 0.5 \\ +focus\_aw & deg & , horiz. angular dimension of a rectangular area. & 0 \\ +focus\_ah & deg & , vert. angular dimension of a rectangular area. & 0 \\ +focus\_r & m & case of circular focusing, focusing radius. & 0 \\ +\bottomrule +\end{longtable} + +\subsection*{Links} +\begin{itemize} + \item \href{run:/home/willend/willend-McCode/mcstas-comps/sasmodels/SasView_spinodal.comp}{Source code} for \texttt{SasView\_spinodal.comp}. +\end{itemize} +\IfFileExists{SasView_spinodal_static.tex}{\input{SasView_spinodal_static.tex}}{} \ No newline at end of file diff --git a/docs/manuals/mcstas/sasmodels/SasView_squarewell.tex b/docs/manuals/mcstas/sasmodels/SasView_squarewell.tex new file mode 100644 index 000000000..99cea12b8 --- /dev/null +++ b/docs/manuals/mcstas/sasmodels/SasView_squarewell.tex @@ -0,0 +1,59 @@ +\section{The \texttt{SasView\_squarewell} McStas Component} +SasView squarewell model component as sample description. + +\subsection*{Identification} +\begin{itemize} + \item \textbf{Site:} + \item \textbf{Author:} Jose Robledo + \item \textbf{Origin:} FZJ / DTU / ESS DMSC + \item \textbf{Date:} +\end{itemize} + +\subsection*{Description} +\begin{lstlisting} +SasView_squarewell component, generated from squarewell.c in sasmodels. + +Example: +SasView_squarewell(radius_effective, volfraction, welldepth, wellwidth, +model_scale=1.0, model_abs=0.0, xwidth=0.01, yheight=0.01, zdepth=0.005, R=0, +int target_index=1, target_x=0, target_y=0, target_z=1, +focus_xw=0.5, focus_yh=0.5, focus_aw=0, focus_ah=0, focus_r=0, +pd_radius_effective=0.0) +\end{lstlisting} + +\subsection*{Input parameters} +Parameters in \textbf{boldface} are required; the others are optional. + +\begin{longtable}{p{0.22\textwidth}p{0.12\textwidth}p{0.46\textwidth}p{0.14\textwidth}} +\toprule +\textbf{Name} & \textbf{Unit} & \textbf{Description} & \textbf{Default} \\ +\midrule +\endhead +radius\_effective & Ang & ([0, inf]) effective radius of hard sphere. & 50.0 \\ +volfraction & & ([0, 0.08]) volume fraction of spheres. & 0.04 \\ +welldepth & kT & ([0.0, 1.5]) depth of well, epsilon. & 1.5 \\ +wellwidth & diameters & ([1.0, inf]) width of well in diameters (=2R) units, must be \textgreater{} 1. & 1.2 \\ +model\_scale & & Global scale factor for scattering kernel. For systems without inter-particle interference, the form factors can be related to the scattering intensity by the particle volume fraction. & 1.0 \\ +model\_abs & & Absorption cross section density at 2200 m/s. & 0.0 \\ +xwidth & m & ([-inf, inf]) Horiz. dimension of sample, as a width. & 0.01 \\ +yheight & m & ([-inf, inf]) vert . dimension of sample, as a height for cylinder/box & 0.01 \\ +zdepth & m & ([-inf, inf]) depth of sample & 0.005 \\ +R & m & Outer radius of sample in (x,z) plane for cylinder/sphere. & 0 \\ +target\_x & m & relative focus target position. & 0 \\ +target\_y & m & relative focus target position. & 0 \\ +target\_z & m & relative focus target position. & 1 \\ +target\_index & & Relative index of component to focus at, e.g. next is +1. & 1 \\ +focus\_xw & m & horiz. dimension of a rectangular area. & 0.5 \\ +focus\_yh & m & , vert. dimension of a rectangular area. & 0.5 \\ +focus\_aw & deg & , horiz. angular dimension of a rectangular area. & 0 \\ +focus\_ah & deg & , vert. angular dimension of a rectangular area. & 0 \\ +focus\_r & m & case of circular focusing, focusing radius. & 0 \\ +pd\_radius\_effective & & (0,inf) defined as (dx/x), where x is de mean value and dx the standard devition of the variable & 0.0 \\ +\bottomrule +\end{longtable} + +\subsection*{Links} +\begin{itemize} + \item \href{run:/home/willend/willend-McCode/mcstas-comps/sasmodels/SasView_squarewell.comp}{Source code} for \texttt{SasView\_squarewell.comp}. +\end{itemize} +\IfFileExists{SasView_squarewell_static.tex}{\input{SasView_squarewell_static.tex}}{} \ No newline at end of file diff --git a/docs/manuals/mcstas/sasmodels/SasView_stacked_disks.tex b/docs/manuals/mcstas/sasmodels/SasView_stacked_disks.tex new file mode 100644 index 000000000..b88998bd0 --- /dev/null +++ b/docs/manuals/mcstas/sasmodels/SasView_stacked_disks.tex @@ -0,0 +1,65 @@ +\section{The \texttt{SasView\_stacked\_disks} McStas Component} +SasView stacked\_disks model component as sample description. + +\subsection*{Identification} +\begin{itemize} + \item \textbf{Site:} + \item \textbf{Author:} Jose Robledo + \item \textbf{Origin:} FZJ / DTU / ESS DMSC + \item \textbf{Date:} +\end{itemize} + +\subsection*{Description} +\begin{lstlisting} +SasView_stacked_disks component, generated from stacked_disks.c in sasmodels. + +Example: +SasView_stacked_disks(thick_core, thick_layer, radius, n_stacking, sigma_d, sld_core, sld_layer, sld_solvent, +model_scale=1.0, model_abs=0.0, xwidth=0.01, yheight=0.01, zdepth=0.005, R=0, +int target_index=1, target_x=0, target_y=0, target_z=1, +focus_xw=0.5, focus_yh=0.5, focus_aw=0, focus_ah=0, focus_r=0, +pd_thick_core=0.0, pd_thick_layer=0.0, pd_radius=0.0) +\end{lstlisting} + +\subsection*{Input parameters} +Parameters in \textbf{boldface} are required; the others are optional. + +\begin{longtable}{p{0.22\textwidth}p{0.12\textwidth}p{0.46\textwidth}p{0.14\textwidth}} +\toprule +\textbf{Name} & \textbf{Unit} & \textbf{Description} & \textbf{Default} \\ +\midrule +\endhead +thick\_core & Ang & ([0, inf]) Thickness of the core disk. & 10.0 \\ +thick\_layer & Ang & ([0, inf]) Thickness of layer each side of core. & 10.0 \\ +radius & Ang & ([0, inf]) Radius of the stacked disk. & 15.0 \\ +n\_stacking & & ([1, inf]) Number of stacked layer/core/layer disks. & 1.0 \\ +sigma\_d & Ang & ([0, inf]) Sigma of nearest neighbor spacing. & 0 \\ +sld\_core & 1e-6/Ang\textasciicircum{}2 & ([-inf, inf]) Core scattering length density. & 4 \\ +sld\_layer & 1e-6/Ang\textasciicircum{}2 & ([-inf, inf]) Layer scattering length density. & 0.0 \\ +sld\_solvent & 1e-6/Ang\textasciicircum{}2 & ([-inf, inf]) Solvent scattering length density. & 5.0 \\ +model\_scale & & Global scale factor for scattering kernel. For systems without inter-particle interference, the form factors can be related to the scattering intensity by the particle volume fraction. & 1.0 \\ +model\_abs & & Absorption cross section density at 2200 m/s. & 0.0 \\ +xwidth & m & ([-inf, inf]) Horiz. dimension of sample, as a width. & 0.01 \\ +yheight & m & ([-inf, inf]) vert . dimension of sample, as a height for cylinder/box & 0.01 \\ +zdepth & m & ([-inf, inf]) depth of sample & 0.005 \\ +R & m & Outer radius of sample in (x,z) plane for cylinder/sphere. & 0 \\ +target\_x & m & relative focus target position. & 0 \\ +target\_y & m & relative focus target position. & 0 \\ +target\_z & m & relative focus target position. & 1 \\ +target\_index & & Relative index of component to focus at, e.g. next is +1. & 1 \\ +focus\_xw & m & horiz. dimension of a rectangular area. & 0.5 \\ +focus\_yh & m & , vert. dimension of a rectangular area. & 0.5 \\ +focus\_aw & deg & , horiz. angular dimension of a rectangular area. & 0 \\ +focus\_ah & deg & , vert. angular dimension of a rectangular area. & 0 \\ +focus\_r & m & case of circular focusing, focusing radius. & 0 \\ +pd\_thick\_core & & (0,inf) defined as (dx/x), where x is de mean value and dx the standard devition of the variable. & 0.0 \\ +pd\_thick\_layer & & (0,inf) defined as (dx/x), where x is de mean value and dx the standard devition of the variable. & 0.0 \\ +pd\_radius & & (0,inf) defined as (dx/x), where x is de mean value and dx the standard devition of the variable & 0.0 \\ +\bottomrule +\end{longtable} + +\subsection*{Links} +\begin{itemize} + \item \href{run:/home/willend/willend-McCode/mcstas-comps/sasmodels/SasView_stacked_disks.comp}{Source code} for \texttt{SasView\_stacked\_disks.comp}. +\end{itemize} +\IfFileExists{SasView_stacked_disks_static.tex}{\input{SasView_stacked_disks_static.tex}}{} \ No newline at end of file diff --git a/docs/manuals/mcstas/sasmodels/SasView_stacked_disks_aniso.tex b/docs/manuals/mcstas/sasmodels/SasView_stacked_disks_aniso.tex new file mode 100644 index 000000000..dabf5440c --- /dev/null +++ b/docs/manuals/mcstas/sasmodels/SasView_stacked_disks_aniso.tex @@ -0,0 +1,69 @@ +\section{The \texttt{SasView\_stacked\_disks\_aniso} McStas Component} +SasView stacked\_disks model component as sample description. + +\subsection*{Identification} +\begin{itemize} + \item \textbf{Site:} + \item \textbf{Author:} Jose Robledo + \item \textbf{Origin:} FZJ / DTU / ESS DMSC + \item \textbf{Date:} +\end{itemize} + +\subsection*{Description} +\begin{lstlisting} +SasView_stacked_disks component, generated from stacked_disks.c in sasmodels. + +Example: +SasView_stacked_disks_aniso(thick_core, thick_layer, radius, n_stacking, sigma_d, sld_core, sld_layer, sld_solvent, theta, phi, +model_scale=1.0, model_abs=0.0, xwidth=0.01, yheight=0.01, zdepth=0.005, R=0, +int target_index=1, target_x=0, target_y=0, target_z=1, +focus_xw=0.5, focus_yh=0.5, focus_aw=0, focus_ah=0, focus_r=0, +pd_thick_core=0.0, pd_thick_layer=0.0, pd_radius=0.0, pd_theta=0.0, pd_phi=0.0) +\end{lstlisting} + +\subsection*{Input parameters} +Parameters in \textbf{boldface} are required; the others are optional. + +\begin{longtable}{p{0.22\textwidth}p{0.12\textwidth}p{0.46\textwidth}p{0.14\textwidth}} +\toprule +\textbf{Name} & \textbf{Unit} & \textbf{Description} & \textbf{Default} \\ +\midrule +\endhead +thick\_core & Ang & ([0, inf]) Thickness of the core disk. & 10.0 \\ +thick\_layer & Ang & ([0, inf]) Thickness of layer each side of core. & 10.0 \\ +radius & Ang & ([0, inf]) Radius of the stacked disk. & 15.0 \\ +n\_stacking & & ([1, inf]) Number of stacked layer/core/layer disks. & 1.0 \\ +sigma\_d & Ang & ([0, inf]) Sigma of nearest neighbor spacing. & 0 \\ +sld\_core & 1e-6/Ang\textasciicircum{}2 & ([-inf, inf]) Core scattering length density. & 4 \\ +sld\_layer & 1e-6/Ang\textasciicircum{}2 & ([-inf, inf]) Layer scattering length density. & 0.0 \\ +sld\_solvent & 1e-6/Ang\textasciicircum{}2 & ([-inf, inf]) Solvent scattering length density. & 5.0 \\ +theta & & & 0 \\ +phi & & & 0 \\ +model\_scale & & Global scale factor for scattering kernel. For systems without inter-particle interference, the form factors can be related to the scattering intensity by the particle volume fraction. & 1.0 \\ +model\_abs & & Absorption cross section density at 2200 m/s. & 0.0 \\ +xwidth & m & ([-inf, inf]) Horiz. dimension of sample, as a width. & 0.01 \\ +yheight & m & ([-inf, inf]) vert . dimension of sample, as a height for cylinder/box & 0.01 \\ +zdepth & m & ([-inf, inf]) depth of sample & 0.005 \\ +R & m & Outer radius of sample in (x,z) plane for cylinder/sphere. & 0 \\ +target\_x & m & relative focus target position. & 0 \\ +target\_y & m & relative focus target position. & 0 \\ +target\_z & m & relative focus target position. & 1 \\ +target\_index & & Relative index of component to focus at, e.g. next is +1. & 1 \\ +focus\_xw & m & horiz. dimension of a rectangular area. & 0.5 \\ +focus\_yh & m & , vert. dimension of a rectangular area. & 0.5 \\ +focus\_aw & deg & , horiz. angular dimension of a rectangular area. & 0 \\ +focus\_ah & deg & , vert. angular dimension of a rectangular area. & 0 \\ +focus\_r & m & case of circular focusing, focusing radius. & 0 \\ +pd\_thick\_core & & (0,inf) defined as (dx/x), where x is de mean value and dx the standard devition of the variable. & 0.0 \\ +pd\_thick\_layer & & (0,inf) defined as (dx/x), where x is de mean value and dx the standard devition of the variable. & 0.0 \\ +pd\_radius & & (0,inf) defined as (dx/x), where x is de mean value and dx the standard devition of the variable. & 0.0 \\ +pd\_theta & & (0,360) defined as (dx/x), where x is de mean value and dx the standard devition of the variable. & 0.0 \\ +pd\_phi & & (0,360) defined as (dx/x), where x is de mean value and dx the standard devition of the variable & 0.0 \\ +\bottomrule +\end{longtable} + +\subsection*{Links} +\begin{itemize} + \item \href{run:/home/willend/willend-McCode/mcstas-comps/sasmodels/SasView_stacked_disks_aniso.comp}{Source code} for \texttt{SasView\_stacked\_disks\_aniso.comp}. +\end{itemize} +\IfFileExists{SasView_stacked_disks_aniso_static.tex}{\input{SasView_stacked_disks_aniso_static.tex}}{} \ No newline at end of file diff --git a/docs/manuals/mcstas/sasmodels/SasView_star_polymer.tex b/docs/manuals/mcstas/sasmodels/SasView_star_polymer.tex new file mode 100644 index 000000000..99be9c0a4 --- /dev/null +++ b/docs/manuals/mcstas/sasmodels/SasView_star_polymer.tex @@ -0,0 +1,57 @@ +\section{The \texttt{SasView\_star\_polymer} McStas Component} +SasView star\_polymer model component as sample description. + +\subsection*{Identification} +\begin{itemize} + \item \textbf{Site:} + \item \textbf{Author:} Jose Robledo + \item \textbf{Origin:} FZJ / DTU / ESS DMSC + \item \textbf{Date:} +\end{itemize} + +\subsection*{Description} +\begin{lstlisting} +SasView_star_polymer component, generated from star_polymer.c in sasmodels. + +Example: +SasView_star_polymer(rg_squared, arms, +model_scale=1.0, model_abs=0.0, xwidth=0.01, yheight=0.01, zdepth=0.005, R=0, +int target_index=1, target_x=0, target_y=0, target_z=1, +focus_xw=0.5, focus_yh=0.5, focus_aw=0, focus_ah=0, focus_r=0, +pd_rg_squared=0.0) +\end{lstlisting} + +\subsection*{Input parameters} +Parameters in \textbf{boldface} are required; the others are optional. + +\begin{longtable}{p{0.22\textwidth}p{0.12\textwidth}p{0.46\textwidth}p{0.14\textwidth}} +\toprule +\textbf{Name} & \textbf{Unit} & \textbf{Description} & \textbf{Default} \\ +\midrule +\endhead +rg\_squared & Ang\textasciicircum{}2 & ([0.0, inf]) Ensemble radius of gyration SQUARED of the full polymer. & 100.0 \\ +arms & & ([1.0, 6.0]) Number of arms in the model. & 3 \\ +model\_scale & & Global scale factor for scattering kernel. For systems without inter-particle interference, the form factors can be related to the scattering intensity by the particle volume fraction. & 1.0 \\ +model\_abs & & Absorption cross section density at 2200 m/s. & 0.0 \\ +xwidth & m & ([-inf, inf]) Horiz. dimension of sample, as a width. & 0.01 \\ +yheight & m & ([-inf, inf]) vert . dimension of sample, as a height for cylinder/box & 0.01 \\ +zdepth & m & ([-inf, inf]) depth of sample & 0.005 \\ +R & m & Outer radius of sample in (x,z) plane for cylinder/sphere. & 0 \\ +target\_x & m & relative focus target position. & 0 \\ +target\_y & m & relative focus target position. & 0 \\ +target\_z & m & relative focus target position. & 1 \\ +target\_index & & Relative index of component to focus at, e.g. next is +1. & 1 \\ +focus\_xw & m & horiz. dimension of a rectangular area. & 0.5 \\ +focus\_yh & m & , vert. dimension of a rectangular area. & 0.5 \\ +focus\_aw & deg & , horiz. angular dimension of a rectangular area. & 0 \\ +focus\_ah & deg & , vert. angular dimension of a rectangular area. & 0 \\ +focus\_r & m & case of circular focusing, focusing radius. & 0 \\ +pd\_rg\_squared & & (0,inf) defined as (dx/x), where x is de mean value and dx the standard devition of the variable & 0.0 \\ +\bottomrule +\end{longtable} + +\subsection*{Links} +\begin{itemize} + \item \href{run:/home/willend/willend-McCode/mcstas-comps/sasmodels/SasView_star_polymer.comp}{Source code} for \texttt{SasView\_star\_polymer.comp}. +\end{itemize} +\IfFileExists{SasView_star_polymer_static.tex}{\input{SasView_star_polymer_static.tex}}{} \ No newline at end of file diff --git a/docs/manuals/mcstas/sasmodels/SasView_stickyhardsphere.tex b/docs/manuals/mcstas/sasmodels/SasView_stickyhardsphere.tex new file mode 100644 index 000000000..daf050aa2 --- /dev/null +++ b/docs/manuals/mcstas/sasmodels/SasView_stickyhardsphere.tex @@ -0,0 +1,59 @@ +\section{The \texttt{SasView\_stickyhardsphere} McStas Component} +SasView stickyhardsphere model component as sample description. + +\subsection*{Identification} +\begin{itemize} + \item \textbf{Site:} + \item \textbf{Author:} Jose Robledo + \item \textbf{Origin:} FZJ / DTU / ESS DMSC + \item \textbf{Date:} +\end{itemize} + +\subsection*{Description} +\begin{lstlisting} +SasView_stickyhardsphere component, generated from stickyhardsphere.c in sasmodels. + +Example: +SasView_stickyhardsphere(radius_effective, volfraction, perturb, stickiness, +model_scale=1.0, model_abs=0.0, xwidth=0.01, yheight=0.01, zdepth=0.005, R=0, +int target_index=1, target_x=0, target_y=0, target_z=1, +focus_xw=0.5, focus_yh=0.5, focus_aw=0, focus_ah=0, focus_r=0, +pd_radius_effective=0.0) +\end{lstlisting} + +\subsection*{Input parameters} +Parameters in \textbf{boldface} are required; the others are optional. + +\begin{longtable}{p{0.22\textwidth}p{0.12\textwidth}p{0.46\textwidth}p{0.14\textwidth}} +\toprule +\textbf{Name} & \textbf{Unit} & \textbf{Description} & \textbf{Default} \\ +\midrule +\endhead +radius\_effective & Ang & ([0, inf]) effective radius of hard sphere. & 50.0 \\ +volfraction & & ([0, 0.74]) volume fraction of hard spheres. & 0.2 \\ +perturb & & ([0.01, 0.1]) perturbation parameter, tau. & 0.05 \\ +stickiness & & ([-inf, inf]) stickiness, epsilon. & 0.2 \\ +model\_scale & & Global scale factor for scattering kernel. For systems without inter-particle interference, the form factors can be related to the scattering intensity by the particle volume fraction. & 1.0 \\ +model\_abs & & Absorption cross section density at 2200 m/s. & 0.0 \\ +xwidth & m & ([-inf, inf]) Horiz. dimension of sample, as a width. & 0.01 \\ +yheight & m & ([-inf, inf]) vert . dimension of sample, as a height for cylinder/box & 0.01 \\ +zdepth & m & ([-inf, inf]) depth of sample & 0.005 \\ +R & m & Outer radius of sample in (x,z) plane for cylinder/sphere. & 0 \\ +target\_x & m & relative focus target position. & 0 \\ +target\_y & m & relative focus target position. & 0 \\ +target\_z & m & relative focus target position. & 1 \\ +target\_index & & Relative index of component to focus at, e.g. next is +1. & 1 \\ +focus\_xw & m & horiz. dimension of a rectangular area. & 0.5 \\ +focus\_yh & m & , vert. dimension of a rectangular area. & 0.5 \\ +focus\_aw & deg & , horiz. angular dimension of a rectangular area. & 0 \\ +focus\_ah & deg & , vert. angular dimension of a rectangular area. & 0 \\ +focus\_r & m & case of circular focusing, focusing radius. & 0 \\ +pd\_radius\_effective & & (0,inf) defined as (dx/x), where x is de mean value and dx the standard devition of the variable & 0.0 \\ +\bottomrule +\end{longtable} + +\subsection*{Links} +\begin{itemize} + \item \href{run:/home/willend/willend-McCode/mcstas-comps/sasmodels/SasView_stickyhardsphere.comp}{Source code} for \texttt{SasView\_stickyhardsphere.comp}. +\end{itemize} +\IfFileExists{SasView_stickyhardsphere_static.tex}{\input{SasView_stickyhardsphere_static.tex}}{} \ No newline at end of file diff --git a/docs/manuals/mcstas/sasmodels/SasView_superball.tex b/docs/manuals/mcstas/sasmodels/SasView_superball.tex new file mode 100644 index 000000000..22930ed0e --- /dev/null +++ b/docs/manuals/mcstas/sasmodels/SasView_superball.tex @@ -0,0 +1,59 @@ +\section{The \texttt{SasView\_superball} McStas Component} +SasView superball model component as sample description. + +\subsection*{Identification} +\begin{itemize} + \item \textbf{Site:} + \item \textbf{Author:} Jose Robledo + \item \textbf{Origin:} FZJ / DTU / ESS DMSC + \item \textbf{Date:} +\end{itemize} + +\subsection*{Description} +\begin{lstlisting} +SasView_superball component, generated from superball.c in sasmodels. + +Example: +SasView_superball(sld, sld_solvent, length_a, exponent_p, +model_scale=1.0, model_abs=0.0, xwidth=0.01, yheight=0.01, zdepth=0.005, R=0, +int target_index=1, target_x=0, target_y=0, target_z=1, +focus_xw=0.5, focus_yh=0.5, focus_aw=0, focus_ah=0, focus_r=0, +pd_length_a=0.0) +\end{lstlisting} + +\subsection*{Input parameters} +Parameters in \textbf{boldface} are required; the others are optional. + +\begin{longtable}{p{0.22\textwidth}p{0.12\textwidth}p{0.46\textwidth}p{0.14\textwidth}} +\toprule +\textbf{Name} & \textbf{Unit} & \textbf{Description} & \textbf{Default} \\ +\midrule +\endhead +sld & 1e-6/Ang\textasciicircum{}2 & ([-inf, inf]) Superball scattering length density. & 4 \\ +sld\_solvent & 1e-6/Ang\textasciicircum{}2 & ([-inf, inf]) Solvent scattering length density. & 1 \\ +length\_a & Ang & ([0, inf]) Cube edge length of the superball. & 50 \\ +exponent\_p & & ([0, inf]) Exponent describing the roundness of the superball. & 2.5 \\ +model\_scale & & Global scale factor for scattering kernel. For systems without inter-particle interference, the form factors can be related to the scattering intensity by the particle volume fraction. & 1.0 \\ +model\_abs & & Absorption cross section density at 2200 m/s. & 0.0 \\ +xwidth & m & ([-inf, inf]) Horiz. dimension of sample, as a width. & 0.01 \\ +yheight & m & ([-inf, inf]) vert . dimension of sample, as a height for cylinder/box & 0.01 \\ +zdepth & m & ([-inf, inf]) depth of sample & 0.005 \\ +R & m & Outer radius of sample in (x,z) plane for cylinder/sphere. & 0 \\ +target\_x & m & relative focus target position. & 0 \\ +target\_y & m & relative focus target position. & 0 \\ +target\_z & m & relative focus target position. & 1 \\ +target\_index & & Relative index of component to focus at, e.g. next is +1. & 1 \\ +focus\_xw & m & horiz. dimension of a rectangular area. & 0.5 \\ +focus\_yh & m & , vert. dimension of a rectangular area. & 0.5 \\ +focus\_aw & deg & , horiz. angular dimension of a rectangular area. & 0 \\ +focus\_ah & deg & , vert. angular dimension of a rectangular area. & 0 \\ +focus\_r & m & case of circular focusing, focusing radius. & 0 \\ +pd\_length\_a & & (0,inf) defined as (dx/x), where x is de mean value and dx the standard devition of the variable & 0.0 \\ +\bottomrule +\end{longtable} + +\subsection*{Links} +\begin{itemize} + \item \href{run:/home/willend/willend-McCode/mcstas-comps/sasmodels/SasView_superball.comp}{Source code} for \texttt{SasView\_superball.comp}. +\end{itemize} +\IfFileExists{SasView_superball_static.tex}{\input{SasView_superball_static.tex}}{} \ No newline at end of file diff --git a/docs/manuals/mcstas/sasmodels/SasView_superball_aniso.tex b/docs/manuals/mcstas/sasmodels/SasView_superball_aniso.tex new file mode 100644 index 000000000..207120035 --- /dev/null +++ b/docs/manuals/mcstas/sasmodels/SasView_superball_aniso.tex @@ -0,0 +1,65 @@ +\section{The \texttt{SasView\_superball\_aniso} McStas Component} +SasView superball model component as sample description. + +\subsection*{Identification} +\begin{itemize} + \item \textbf{Site:} + \item \textbf{Author:} Jose Robledo + \item \textbf{Origin:} FZJ / DTU / ESS DMSC + \item \textbf{Date:} +\end{itemize} + +\subsection*{Description} +\begin{lstlisting} +SasView_superball component, generated from superball.c in sasmodels. + +Example: +SasView_superball_aniso(sld, sld_solvent, length_a, exponent_p, theta, phi, Psi, +model_scale=1.0, model_abs=0.0, xwidth=0.01, yheight=0.01, zdepth=0.005, R=0, +int target_index=1, target_x=0, target_y=0, target_z=1, +focus_xw=0.5, focus_yh=0.5, focus_aw=0, focus_ah=0, focus_r=0, +pd_length_a=0.0, pd_theta=0.0, pd_phi=0.0, pd_Psi=0.0) +\end{lstlisting} + +\subsection*{Input parameters} +Parameters in \textbf{boldface} are required; the others are optional. + +\begin{longtable}{p{0.22\textwidth}p{0.12\textwidth}p{0.46\textwidth}p{0.14\textwidth}} +\toprule +\textbf{Name} & \textbf{Unit} & \textbf{Description} & \textbf{Default} \\ +\midrule +\endhead +sld & 1e-6/Ang\textasciicircum{}2 & ([-inf, inf]) Superball scattering length density. & 4 \\ +sld\_solvent & 1e-6/Ang\textasciicircum{}2 & ([-inf, inf]) Solvent scattering length density. & 1 \\ +length\_a & Ang & ([0, inf]) Cube edge length of the superball. & 50 \\ +exponent\_p & & ([0, inf]) Exponent describing the roundness of the superball. & 2.5 \\ +theta & & & 0 \\ +phi & & & 0 \\ +Psi & & & 0 \\ +model\_scale & & Global scale factor for scattering kernel. For systems without inter-particle interference, the form factors can be related to the scattering intensity by the particle volume fraction. & 1.0 \\ +model\_abs & & Absorption cross section density at 2200 m/s. & 0.0 \\ +xwidth & m & ([-inf, inf]) Horiz. dimension of sample, as a width. & 0.01 \\ +yheight & m & ([-inf, inf]) vert . dimension of sample, as a height for cylinder/box & 0.01 \\ +zdepth & m & ([-inf, inf]) depth of sample & 0.005 \\ +R & m & Outer radius of sample in (x,z) plane for cylinder/sphere. & 0 \\ +target\_x & m & relative focus target position. & 0 \\ +target\_y & m & relative focus target position. & 0 \\ +target\_z & m & relative focus target position. & 1 \\ +target\_index & & Relative index of component to focus at, e.g. next is +1. & 1 \\ +focus\_xw & m & horiz. dimension of a rectangular area. & 0.5 \\ +focus\_yh & m & , vert. dimension of a rectangular area. & 0.5 \\ +focus\_aw & deg & , horiz. angular dimension of a rectangular area. & 0 \\ +focus\_ah & deg & , vert. angular dimension of a rectangular area. & 0 \\ +focus\_r & m & case of circular focusing, focusing radius. & 0 \\ +pd\_length\_a & & (0,inf) defined as (dx/x), where x is de mean value and dx the standard devition of the variable. & 0.0 \\ +pd\_theta & & (0,360) defined as (dx/x), where x is de mean value and dx the standard devition of the variable. & 0.0 \\ +pd\_phi & & (0,360) defined as (dx/x), where x is de mean value and dx the standard devition of the variable. & 0.0 \\ +pd\_Psi & & (0,360) defined as (dx/x), where x is de mean value and dx the standard devition of the variable & 0.0 \\ +\bottomrule +\end{longtable} + +\subsection*{Links} +\begin{itemize} + \item \href{run:/home/willend/willend-McCode/mcstas-comps/sasmodels/SasView_superball_aniso.comp}{Source code} for \texttt{SasView\_superball\_aniso.comp}. +\end{itemize} +\IfFileExists{SasView_superball_aniso_static.tex}{\input{SasView_superball_aniso_static.tex}}{} \ No newline at end of file diff --git a/docs/manuals/mcstas/sasmodels/SasView_surface_fractal.tex b/docs/manuals/mcstas/sasmodels/SasView_surface_fractal.tex new file mode 100644 index 000000000..5134bfbaf --- /dev/null +++ b/docs/manuals/mcstas/sasmodels/SasView_surface_fractal.tex @@ -0,0 +1,59 @@ +\section{The \texttt{SasView\_surface\_fractal} McStas Component} +SasView surface\_fractal model component as sample description. + +\subsection*{Identification} +\begin{itemize} + \item \textbf{Site:} + \item \textbf{Author:} Jose Robledo + \item \textbf{Origin:} FZJ / DTU / ESS DMSC + \item \textbf{Date:} +\end{itemize} + +\subsection*{Description} +\begin{lstlisting} +SasView_surface_fractal component, generated from surface_fractal.c in sasmodels. + +Example: +SasView_surface_fractal(radius, fractal_dim_surf, cutoff_length, +model_scale=1.0, model_abs=0.0, xwidth=0.01, yheight=0.01, zdepth=0.005, R=0, +int target_index=1, target_x=0, target_y=0, target_z=1, +focus_xw=0.5, focus_yh=0.5, focus_aw=0, focus_ah=0, focus_r=0, +pd_radius=0.0, pd_cutoff_length=0.0) +\end{lstlisting} + +\subsection*{Input parameters} +Parameters in \textbf{boldface} are required; the others are optional. + +\begin{longtable}{p{0.22\textwidth}p{0.12\textwidth}p{0.46\textwidth}p{0.14\textwidth}} +\toprule +\textbf{Name} & \textbf{Unit} & \textbf{Description} & \textbf{Default} \\ +\midrule +\endhead +radius & Ang & ([0, inf]) Particle radius. & 10.0 \\ +fractal\_dim\_surf & & ([1, 3]) Surface fractal dimension. & 2.0 \\ +cutoff\_length & Ang & ([0.0, inf]) Cut-off Length. & 500.0 \\ +model\_scale & & Global scale factor for scattering kernel. For systems without inter-particle interference, the form factors can be related to the scattering intensity by the particle volume fraction. & 1.0 \\ +model\_abs & & Absorption cross section density at 2200 m/s. & 0.0 \\ +xwidth & m & ([-inf, inf]) Horiz. dimension of sample, as a width. & 0.01 \\ +yheight & m & ([-inf, inf]) vert . dimension of sample, as a height for cylinder/box & 0.01 \\ +zdepth & m & ([-inf, inf]) depth of sample & 0.005 \\ +R & m & Outer radius of sample in (x,z) plane for cylinder/sphere. & 0 \\ +target\_x & m & relative focus target position. & 0 \\ +target\_y & m & relative focus target position. & 0 \\ +target\_z & m & relative focus target position. & 1 \\ +target\_index & & Relative index of component to focus at, e.g. next is +1. & 1 \\ +focus\_xw & m & horiz. dimension of a rectangular area. & 0.5 \\ +focus\_yh & m & , vert. dimension of a rectangular area. & 0.5 \\ +focus\_aw & deg & , horiz. angular dimension of a rectangular area. & 0 \\ +focus\_ah & deg & , vert. angular dimension of a rectangular area. & 0 \\ +focus\_r & m & case of circular focusing, focusing radius. & 0 \\ +pd\_radius & & (0,inf) defined as (dx/x), where x is de mean value and dx the standard devition of the variable. & 0.0 \\ +pd\_cutoff\_length & & (0,inf) defined as (dx/x), where x is de mean value and dx the standard devition of the variable & 0.0 \\ +\bottomrule +\end{longtable} + +\subsection*{Links} +\begin{itemize} + \item \href{run:/home/willend/willend-McCode/mcstas-comps/sasmodels/SasView_surface_fractal.comp}{Source code} for \texttt{SasView\_surface\_fractal.comp}. +\end{itemize} +\IfFileExists{SasView_surface_fractal_static.tex}{\input{SasView_surface_fractal_static.tex}}{} \ No newline at end of file diff --git a/docs/manuals/mcstas/sasmodels/SasView_teubner_strey.tex b/docs/manuals/mcstas/sasmodels/SasView_teubner_strey.tex new file mode 100644 index 000000000..1e7ba570b --- /dev/null +++ b/docs/manuals/mcstas/sasmodels/SasView_teubner_strey.tex @@ -0,0 +1,59 @@ +\section{The \texttt{SasView\_teubner\_strey} McStas Component} +SasView teubner\_strey model component as sample description. + +\subsection*{Identification} +\begin{itemize} + \item \textbf{Site:} + \item \textbf{Author:} Jose Robledo + \item \textbf{Origin:} FZJ / DTU / ESS DMSC + \item \textbf{Date:} +\end{itemize} + +\subsection*{Description} +\begin{lstlisting} +SasView_teubner_strey component, generated from teubner_strey.c in sasmodels. + +Example: +SasView_teubner_strey(volfraction_a, sld_a, sld_b, d, xi, +model_scale=1.0, model_abs=0.0, xwidth=0.01, yheight=0.01, zdepth=0.005, R=0, +int target_index=1, target_x=0, target_y=0, target_z=1, +focus_xw=0.5, focus_yh=0.5, focus_aw=0, focus_ah=0, focus_r=0, +) +\end{lstlisting} + +\subsection*{Input parameters} +Parameters in \textbf{boldface} are required; the others are optional. + +\begin{longtable}{p{0.22\textwidth}p{0.12\textwidth}p{0.46\textwidth}p{0.14\textwidth}} +\toprule +\textbf{Name} & \textbf{Unit} & \textbf{Description} & \textbf{Default} \\ +\midrule +\endhead +volfraction\_a & & ([0, 1.0]) Volume fraction of phase a. & 0.5 \\ +sld\_a & 1e-6/Ang\textasciicircum{}2 & ([-inf, inf]) SLD of phase a. & 0.3 \\ +sld\_b & 1e-6/Ang\textasciicircum{}2 & ([-inf, inf]) SLD of phase b. & 6.3 \\ +d & Ang & ([0, inf]) Domain size (periodicity). & 100.0 \\ +xi & Ang & ([0, inf]) Correlation length. & 30.0 \\ +model\_scale & & Global scale factor for scattering kernel. For systems without inter-particle interference, the form factors can be related to the scattering intensity by the particle volume fraction. & 1.0 \\ +model\_abs & & Absorption cross section density at 2200 m/s. & 0.0 \\ +xwidth & m & ([-inf, inf]) Horiz. dimension of sample, as a width. & 0.01 \\ +yheight & m & ([-inf, inf]) vert . dimension of sample, as a height for cylinder/box & 0.01 \\ +zdepth & m & ([-inf, inf]) depth of sample & 0.005 \\ +R & m & Outer radius of sample in (x,z) plane for cylinder/sphere. & 0 \\ +target\_x & m & relative focus target position. & 0 \\ +target\_y & m & relative focus target position. & 0 \\ +target\_z & m & relative focus target position. & 1 \\ +target\_index & & Relative index of component to focus at, e.g. next is +1. & 1 \\ +focus\_xw & m & horiz. dimension of a rectangular area. & 0.5 \\ +focus\_yh & m & , vert. dimension of a rectangular area. & 0.5 \\ +focus\_aw & deg & , horiz. angular dimension of a rectangular area. & 0 \\ +focus\_ah & deg & , vert. angular dimension of a rectangular area. & 0 \\ +focus\_r & m & case of circular focusing, focusing radius. & 0 \\ +\bottomrule +\end{longtable} + +\subsection*{Links} +\begin{itemize} + \item \href{run:/home/willend/willend-McCode/mcstas-comps/sasmodels/SasView_teubner_strey.comp}{Source code} for \texttt{SasView\_teubner\_strey.comp}. +\end{itemize} +\IfFileExists{SasView_teubner_strey_static.tex}{\input{SasView_teubner_strey_static.tex}}{} \ No newline at end of file diff --git a/docs/manuals/mcstas/sasmodels/SasView_triaxial_ellipsoid.tex b/docs/manuals/mcstas/sasmodels/SasView_triaxial_ellipsoid.tex new file mode 100644 index 000000000..ccf4bf58d --- /dev/null +++ b/docs/manuals/mcstas/sasmodels/SasView_triaxial_ellipsoid.tex @@ -0,0 +1,62 @@ +\section{The \texttt{SasView\_triaxial\_ellipsoid} McStas Component} +SasView triaxial\_ellipsoid model component as sample description. + +\subsection*{Identification} +\begin{itemize} + \item \textbf{Site:} + \item \textbf{Author:} Jose Robledo + \item \textbf{Origin:} FZJ / DTU / ESS DMSC + \item \textbf{Date:} +\end{itemize} + +\subsection*{Description} +\begin{lstlisting} +SasView_triaxial_ellipsoid component, generated from triaxial_ellipsoid.c in sasmodels. + +Example: +SasView_triaxial_ellipsoid(sld, sld_solvent, radius_equat_minor, radius_equat_major, radius_polar, +model_scale=1.0, model_abs=0.0, xwidth=0.01, yheight=0.01, zdepth=0.005, R=0, +int target_index=1, target_x=0, target_y=0, target_z=1, +focus_xw=0.5, focus_yh=0.5, focus_aw=0, focus_ah=0, focus_r=0, +pd_radius_equat_minor=0.0, pd_radius_equat_major=0.0, pd_radius_polar=0.0) +\end{lstlisting} + +\subsection*{Input parameters} +Parameters in \textbf{boldface} are required; the others are optional. + +\begin{longtable}{p{0.22\textwidth}p{0.12\textwidth}p{0.46\textwidth}p{0.14\textwidth}} +\toprule +\textbf{Name} & \textbf{Unit} & \textbf{Description} & \textbf{Default} \\ +\midrule +\endhead +sld & 1e-6/Ang\textasciicircum{}2 & ([-inf, inf]) Ellipsoid scattering length density. & 4 \\ +sld\_solvent & 1e-6/Ang\textasciicircum{}2 & ([-inf, inf]) Solvent scattering length density. & 1 \\ +radius\_equat\_minor & Ang & ([0, inf]) Minor equatorial radius, Ra. & 20 \\ +radius\_equat\_major & Ang & ([0, inf]) Major equatorial radius, Rb. & 400 \\ +radius\_polar & Ang & ([0, inf]) Polar radius, Rc. & 10 \\ +model\_scale & & Global scale factor for scattering kernel. For systems without inter-particle interference, the form factors can be related to the scattering intensity by the particle volume fraction. & 1.0 \\ +model\_abs & & Absorption cross section density at 2200 m/s. & 0.0 \\ +xwidth & m & ([-inf, inf]) Horiz. dimension of sample, as a width. & 0.01 \\ +yheight & m & ([-inf, inf]) vert . dimension of sample, as a height for cylinder/box & 0.01 \\ +zdepth & m & ([-inf, inf]) depth of sample & 0.005 \\ +R & m & Outer radius of sample in (x,z) plane for cylinder/sphere. & 0 \\ +target\_x & m & relative focus target position. & 0 \\ +target\_y & m & relative focus target position. & 0 \\ +target\_z & m & relative focus target position. & 1 \\ +target\_index & & Relative index of component to focus at, e.g. next is +1. & 1 \\ +focus\_xw & m & horiz. dimension of a rectangular area. & 0.5 \\ +focus\_yh & m & , vert. dimension of a rectangular area. & 0.5 \\ +focus\_aw & deg & , horiz. angular dimension of a rectangular area. & 0 \\ +focus\_ah & deg & , vert. angular dimension of a rectangular area. & 0 \\ +focus\_r & m & case of circular focusing, focusing radius. & 0 \\ +pd\_radius\_equat\_minor & & (0,inf) defined as (dx/x), where x is de mean value and dx the standard devition of the variable. & 0.0 \\ +pd\_radius\_equat\_major & & (0,inf) defined as (dx/x), where x is de mean value and dx the standard devition of the variable. & 0.0 \\ +pd\_radius\_polar & & (0,inf) defined as (dx/x), where x is de mean value and dx the standard devition of the variable & 0.0 \\ +\bottomrule +\end{longtable} + +\subsection*{Links} +\begin{itemize} + \item \href{run:/home/willend/willend-McCode/mcstas-comps/sasmodels/SasView_triaxial_ellipsoid.comp}{Source code} for \texttt{SasView\_triaxial\_ellipsoid.comp}. +\end{itemize} +\IfFileExists{SasView_triaxial_ellipsoid_static.tex}{\input{SasView_triaxial_ellipsoid_static.tex}}{} \ No newline at end of file diff --git a/docs/manuals/mcstas/sasmodels/SasView_triaxial_ellipsoid_aniso.tex b/docs/manuals/mcstas/sasmodels/SasView_triaxial_ellipsoid_aniso.tex new file mode 100644 index 000000000..3d7728555 --- /dev/null +++ b/docs/manuals/mcstas/sasmodels/SasView_triaxial_ellipsoid_aniso.tex @@ -0,0 +1,68 @@ +\section{The \texttt{SasView\_triaxial\_ellipsoid\_aniso} McStas Component} +SasView triaxial\_ellipsoid model component as sample description. + +\subsection*{Identification} +\begin{itemize} + \item \textbf{Site:} + \item \textbf{Author:} Jose Robledo + \item \textbf{Origin:} FZJ / DTU / ESS DMSC + \item \textbf{Date:} +\end{itemize} + +\subsection*{Description} +\begin{lstlisting} +SasView_triaxial_ellipsoid component, generated from triaxial_ellipsoid.c in sasmodels. + +Example: +SasView_triaxial_ellipsoid_aniso(sld, sld_solvent, radius_equat_minor, radius_equat_major, radius_polar, theta, phi, Psi, +model_scale=1.0, model_abs=0.0, xwidth=0.01, yheight=0.01, zdepth=0.005, R=0, +int target_index=1, target_x=0, target_y=0, target_z=1, +focus_xw=0.5, focus_yh=0.5, focus_aw=0, focus_ah=0, focus_r=0, +pd_radius_equat_minor=0.0, pd_radius_equat_major=0.0, pd_radius_polar=0.0, pd_theta=0.0, pd_phi=0.0, pd_Psi=0.0) +\end{lstlisting} + +\subsection*{Input parameters} +Parameters in \textbf{boldface} are required; the others are optional. + +\begin{longtable}{p{0.22\textwidth}p{0.12\textwidth}p{0.46\textwidth}p{0.14\textwidth}} +\toprule +\textbf{Name} & \textbf{Unit} & \textbf{Description} & \textbf{Default} \\ +\midrule +\endhead +sld & 1e-6/Ang\textasciicircum{}2 & ([-inf, inf]) Ellipsoid scattering length density. & 4 \\ +sld\_solvent & 1e-6/Ang\textasciicircum{}2 & ([-inf, inf]) Solvent scattering length density. & 1 \\ +radius\_equat\_minor & Ang & ([0, inf]) Minor equatorial radius, Ra. & 20 \\ +radius\_equat\_major & Ang & ([0, inf]) Major equatorial radius, Rb. & 400 \\ +radius\_polar & Ang & ([0, inf]) Polar radius, Rc. & 10 \\ +theta & & & 60 \\ +phi & & & 60 \\ +Psi & & & 60 \\ +model\_scale & & Global scale factor for scattering kernel. For systems without inter-particle interference, the form factors can be related to the scattering intensity by the particle volume fraction. & 1.0 \\ +model\_abs & & Absorption cross section density at 2200 m/s. & 0.0 \\ +xwidth & m & ([-inf, inf]) Horiz. dimension of sample, as a width. & 0.01 \\ +yheight & m & ([-inf, inf]) vert . dimension of sample, as a height for cylinder/box & 0.01 \\ +zdepth & m & ([-inf, inf]) depth of sample & 0.005 \\ +R & m & Outer radius of sample in (x,z) plane for cylinder/sphere. & 0 \\ +target\_x & m & relative focus target position. & 0 \\ +target\_y & m & relative focus target position. & 0 \\ +target\_z & m & relative focus target position. & 1 \\ +target\_index & & Relative index of component to focus at, e.g. next is +1. & 1 \\ +focus\_xw & m & horiz. dimension of a rectangular area. & 0.5 \\ +focus\_yh & m & , vert. dimension of a rectangular area. & 0.5 \\ +focus\_aw & deg & , horiz. angular dimension of a rectangular area. & 0 \\ +focus\_ah & deg & , vert. angular dimension of a rectangular area. & 0 \\ +focus\_r & m & case of circular focusing, focusing radius. & 0 \\ +pd\_radius\_equat\_minor & & (0,inf) defined as (dx/x), where x is de mean value and dx the standard devition of the variable. & 0.0 \\ +pd\_radius\_equat\_major & & (0,inf) defined as (dx/x), where x is de mean value and dx the standard devition of the variable. & 0.0 \\ +pd\_radius\_polar & & (0,inf) defined as (dx/x), where x is de mean value and dx the standard devition of the variable. & 0.0 \\ +pd\_theta & & (0,360) defined as (dx/x), where x is de mean value and dx the standard devition of the variable. & 0.0 \\ +pd\_phi & & (0,360) defined as (dx/x), where x is de mean value and dx the standard devition of the variable. & 0.0 \\ +pd\_Psi & & (0,360) defined as (dx/x), where x is de mean value and dx the standard devition of the variable & 0.0 \\ +\bottomrule +\end{longtable} + +\subsection*{Links} +\begin{itemize} + \item \href{run:/home/willend/willend-McCode/mcstas-comps/sasmodels/SasView_triaxial_ellipsoid_aniso.comp}{Source code} for \texttt{SasView\_triaxial\_ellipsoid\_aniso.comp}. +\end{itemize} +\IfFileExists{SasView_triaxial_ellipsoid_aniso_static.tex}{\input{SasView_triaxial_ellipsoid_aniso_static.tex}}{} \ No newline at end of file diff --git a/docs/manuals/mcstas/sasmodels/SasView_two_lorentzian.tex b/docs/manuals/mcstas/sasmodels/SasView_two_lorentzian.tex new file mode 100644 index 000000000..f75cfe8de --- /dev/null +++ b/docs/manuals/mcstas/sasmodels/SasView_two_lorentzian.tex @@ -0,0 +1,62 @@ +\section{The \texttt{SasView\_two\_lorentzian} McStas Component} +SasView two\_lorentzian model component as sample description. + +\subsection*{Identification} +\begin{itemize} + \item \textbf{Site:} + \item \textbf{Author:} Jose Robledo + \item \textbf{Origin:} FZJ / DTU / ESS DMSC + \item \textbf{Date:} +\end{itemize} + +\subsection*{Description} +\begin{lstlisting} +SasView_two_lorentzian component, generated from two_lorentzian.c in sasmodels. + +Example: +SasView_two_lorentzian(lorentz_scale_1, lorentz_length_1, lorentz_exp_1, lorentz_scale_2, lorentz_length_2, lorentz_exp_2, +model_scale=1.0, model_abs=0.0, xwidth=0.01, yheight=0.01, zdepth=0.005, R=0, +int target_index=1, target_x=0, target_y=0, target_z=1, +focus_xw=0.5, focus_yh=0.5, focus_aw=0, focus_ah=0, focus_r=0, +pd_lorentz_length_1=0.0, pd_lorentz_length_2=0.0) +\end{lstlisting} + +\subsection*{Input parameters} +Parameters in \textbf{boldface} are required; the others are optional. + +\begin{longtable}{p{0.22\textwidth}p{0.12\textwidth}p{0.46\textwidth}p{0.14\textwidth}} +\toprule +\textbf{Name} & \textbf{Unit} & \textbf{Description} & \textbf{Default} \\ +\midrule +\endhead +lorentz\_scale\_1 & & ([-inf, inf]) First power law scale factor. & 10.0 \\ +lorentz\_length\_1 & Ang & ([-inf, inf]) First Lorentzian screening length. & 100.0 \\ +lorentz\_exp\_1 & & ([-inf, inf]) First exponent of power law. & 3.0 \\ +lorentz\_scale\_2 & & ([-inf, inf]) Second scale factor for broad Lorentzian peak. & 1.0 \\ +lorentz\_length\_2 & Ang & ([-inf, inf]) Second Lorentzian screening length. & 10.0 \\ +lorentz\_exp\_2 & & ([-inf, inf]) Second exponent of power law. & 2.0 \\ +model\_scale & & Global scale factor for scattering kernel. For systems without inter-particle interference, the form factors can be related to the scattering intensity by the particle volume fraction. & 1.0 \\ +model\_abs & & Absorption cross section density at 2200 m/s. & 0.0 \\ +xwidth & m & ([-inf, inf]) Horiz. dimension of sample, as a width. & 0.01 \\ +yheight & m & ([-inf, inf]) vert . dimension of sample, as a height for cylinder/box & 0.01 \\ +zdepth & m & ([-inf, inf]) depth of sample & 0.005 \\ +R & m & Outer radius of sample in (x,z) plane for cylinder/sphere. & 0 \\ +target\_x & m & relative focus target position. & 0 \\ +target\_y & m & relative focus target position. & 0 \\ +target\_z & m & relative focus target position. & 1 \\ +target\_index & & Relative index of component to focus at, e.g. next is +1. & 1 \\ +focus\_xw & m & horiz. dimension of a rectangular area. & 0.5 \\ +focus\_yh & m & , vert. dimension of a rectangular area. & 0.5 \\ +focus\_aw & deg & , horiz. angular dimension of a rectangular area. & 0 \\ +focus\_ah & deg & , vert. angular dimension of a rectangular area. & 0 \\ +focus\_r & m & case of circular focusing, focusing radius. & 0 \\ +pd\_lorentz\_length\_1 & & (0,inf) defined as (dx/x), where x is de mean value and dx the standard devition of the variable. & 0.0 \\ +pd\_lorentz\_length\_2 & & (0,inf) defined as (dx/x), where x is de mean value and dx the standard devition of the variable & 0.0 \\ +\bottomrule +\end{longtable} + +\subsection*{Links} +\begin{itemize} + \item \href{run:/home/willend/willend-McCode/mcstas-comps/sasmodels/SasView_two_lorentzian.comp}{Source code} for \texttt{SasView\_two\_lorentzian.comp}. +\end{itemize} +\IfFileExists{SasView_two_lorentzian_static.tex}{\input{SasView_two_lorentzian_static.tex}}{} \ No newline at end of file diff --git a/docs/manuals/mcstas/sasmodels/SasView_two_power_law.tex b/docs/manuals/mcstas/sasmodels/SasView_two_power_law.tex new file mode 100644 index 000000000..2906aae8e --- /dev/null +++ b/docs/manuals/mcstas/sasmodels/SasView_two_power_law.tex @@ -0,0 +1,58 @@ +\section{The \texttt{SasView\_two\_power\_law} McStas Component} +SasView two\_power\_law model component as sample description. + +\subsection*{Identification} +\begin{itemize} + \item \textbf{Site:} + \item \textbf{Author:} Jose Robledo + \item \textbf{Origin:} FZJ / DTU / ESS DMSC + \item \textbf{Date:} +\end{itemize} + +\subsection*{Description} +\begin{lstlisting} +SasView_two_power_law component, generated from two_power_law.c in sasmodels. + +Example: +SasView_two_power_law(coefficent_1, crossover, power_1, power_2, +model_scale=1.0, model_abs=0.0, xwidth=0.01, yheight=0.01, zdepth=0.005, R=0, +int target_index=1, target_x=0, target_y=0, target_z=1, +focus_xw=0.5, focus_yh=0.5, focus_aw=0, focus_ah=0, focus_r=0, +) +\end{lstlisting} + +\subsection*{Input parameters} +Parameters in \textbf{boldface} are required; the others are optional. + +\begin{longtable}{p{0.22\textwidth}p{0.12\textwidth}p{0.46\textwidth}p{0.14\textwidth}} +\toprule +\textbf{Name} & \textbf{Unit} & \textbf{Description} & \textbf{Default} \\ +\midrule +\endhead +coefficent\_1 & & ([-inf, inf]) coefficent A in low Q region. & 1.0 \\ +crossover & 1/Ang & ([0, inf]) crossover location. & 0.04 \\ +power\_1 & & ([0, inf]) power law exponent at low Q. & 1.0 \\ +power\_2 & & ([0, inf]) power law exponent at high Q. & 4.0 \\ +model\_scale & & Global scale factor for scattering kernel. For systems without inter-particle interference, the form factors can be related to the scattering intensity by the particle volume fraction. & 1.0 \\ +model\_abs & & Absorption cross section density at 2200 m/s. & 0.0 \\ +xwidth & m & ([-inf, inf]) Horiz. dimension of sample, as a width. & 0.01 \\ +yheight & m & ([-inf, inf]) vert . dimension of sample, as a height for cylinder/box & 0.01 \\ +zdepth & m & ([-inf, inf]) depth of sample & 0.005 \\ +R & m & Outer radius of sample in (x,z) plane for cylinder/sphere. & 0 \\ +target\_x & m & relative focus target position. & 0 \\ +target\_y & m & relative focus target position. & 0 \\ +target\_z & m & relative focus target position. & 1 \\ +target\_index & & Relative index of component to focus at, e.g. next is +1. & 1 \\ +focus\_xw & m & horiz. dimension of a rectangular area. & 0.5 \\ +focus\_yh & m & , vert. dimension of a rectangular area. & 0.5 \\ +focus\_aw & deg & , horiz. angular dimension of a rectangular area. & 0 \\ +focus\_ah & deg & , vert. angular dimension of a rectangular area. & 0 \\ +focus\_r & m & case of circular focusing, focusing radius. & 0 \\ +\bottomrule +\end{longtable} + +\subsection*{Links} +\begin{itemize} + \item \href{run:/home/willend/willend-McCode/mcstas-comps/sasmodels/SasView_two_power_law.comp}{Source code} for \texttt{SasView\_two\_power\_law.comp}. +\end{itemize} +\IfFileExists{SasView_two_power_law_static.tex}{\input{SasView_two_power_law_static.tex}}{} \ No newline at end of file diff --git a/docs/manuals/mcstas/sasmodels/SasView_vesicle.tex b/docs/manuals/mcstas/sasmodels/SasView_vesicle.tex new file mode 100644 index 000000000..23cefe933 --- /dev/null +++ b/docs/manuals/mcstas/sasmodels/SasView_vesicle.tex @@ -0,0 +1,61 @@ +\section{The \texttt{SasView\_vesicle} McStas Component} +SasView vesicle model component as sample description. + +\subsection*{Identification} +\begin{itemize} + \item \textbf{Site:} + \item \textbf{Author:} Jose Robledo + \item \textbf{Origin:} FZJ / DTU / ESS DMSC + \item \textbf{Date:} +\end{itemize} + +\subsection*{Description} +\begin{lstlisting} +SasView_vesicle component, generated from vesicle.c in sasmodels. + +Example: +SasView_vesicle(sld, sld_solvent, volfraction, radius, thickness, +model_scale=1.0, model_abs=0.0, xwidth=0.01, yheight=0.01, zdepth=0.005, R=0, +int target_index=1, target_x=0, target_y=0, target_z=1, +focus_xw=0.5, focus_yh=0.5, focus_aw=0, focus_ah=0, focus_r=0, +pd_radius=0.0, pd_thickness=0.0) +\end{lstlisting} + +\subsection*{Input parameters} +Parameters in \textbf{boldface} are required; the others are optional. + +\begin{longtable}{p{0.22\textwidth}p{0.12\textwidth}p{0.46\textwidth}p{0.14\textwidth}} +\toprule +\textbf{Name} & \textbf{Unit} & \textbf{Description} & \textbf{Default} \\ +\midrule +\endhead +sld & 1e-6/Ang\textasciicircum{}2 & ([-inf, inf]) vesicle shell scattering length density. & 0.5 \\ +sld\_solvent & 1e-6/Ang\textasciicircum{}2 & ([-inf, inf]) solvent scattering length density. & 6.36 \\ +volfraction & & ([0, 1.0]) volume fraction of shell. & 0.05 \\ +radius & Ang & ([0, inf]) vesicle core radius. & 100 \\ +thickness & Ang & ([0, inf]) vesicle shell thickness. & 30 \\ +model\_scale & & Global scale factor for scattering kernel. For systems without inter-particle interference, the form factors can be related to the scattering intensity by the particle volume fraction. & 1.0 \\ +model\_abs & & Absorption cross section density at 2200 m/s. & 0.0 \\ +xwidth & m & ([-inf, inf]) Horiz. dimension of sample, as a width. & 0.01 \\ +yheight & m & ([-inf, inf]) vert . dimension of sample, as a height for cylinder/box & 0.01 \\ +zdepth & m & ([-inf, inf]) depth of sample & 0.005 \\ +R & m & Outer radius of sample in (x,z) plane for cylinder/sphere. & 0 \\ +target\_x & m & relative focus target position. & 0 \\ +target\_y & m & relative focus target position. & 0 \\ +target\_z & m & relative focus target position. & 1 \\ +target\_index & & Relative index of component to focus at, e.g. next is +1. & 1 \\ +focus\_xw & m & horiz. dimension of a rectangular area. & 0.5 \\ +focus\_yh & m & , vert. dimension of a rectangular area. & 0.5 \\ +focus\_aw & deg & , horiz. angular dimension of a rectangular area. & 0 \\ +focus\_ah & deg & , vert. angular dimension of a rectangular area. & 0 \\ +focus\_r & m & case of circular focusing, focusing radius. & 0 \\ +pd\_radius & & (0,inf) defined as (dx/x), where x is de mean value and dx the standard devition of the variable. & 0.0 \\ +pd\_thickness & & (0,inf) defined as (dx/x), where x is de mean value and dx the standard devition of the variable & 0.0 \\ +\bottomrule +\end{longtable} + +\subsection*{Links} +\begin{itemize} + \item \href{run:/home/willend/willend-McCode/mcstas-comps/sasmodels/SasView_vesicle.comp}{Source code} for \texttt{SasView\_vesicle.comp}. +\end{itemize} +\IfFileExists{SasView_vesicle_static.tex}{\input{SasView_vesicle_static.tex}}{} \ No newline at end of file diff --git a/docs/manuals/mcstas/sources/Adapt_check.tex b/docs/manuals/mcstas/sources/Adapt_check.tex new file mode 100644 index 000000000..3f36e8809 --- /dev/null +++ b/docs/manuals/mcstas/sources/Adapt_check.tex @@ -0,0 +1,41 @@ +\section{The \texttt{Adapt\_check} McStas Component} +Optimization specifier for the Source\_adapt component. + +\subsection*{Identification} +\begin{itemize} + \item \textbf{Site:} + \item \textbf{Author:} Kristian Nielsen + \item \textbf{Origin:} Risoe + \item \textbf{Date:} 1999 +\end{itemize} + +\subsection*{Description} +\begin{lstlisting} +This components works together with the Source_adapt component, and +is used to define the criteria for selecting which neutrons are +considered "good" in the adaptive algorithm. The name of the +associated Source_adapt component in the instrument definition is +given as parameter. The component is special in that its position +does not matter; all neutrons that have not been absorbed prior to +the component are considered "good". + +Example: Adapt_check(source_comp="MySource") +\end{lstlisting} + +\subsection*{Input parameters} +Parameters in \textbf{boldface} are required; the others are optional. + +\begin{longtable}{p{0.22\textwidth}p{0.12\textwidth}p{0.46\textwidth}p{0.14\textwidth}} +\toprule +\textbf{Name} & \textbf{Unit} & \textbf{Description} & \textbf{Default} \\ +\midrule +\endhead +\textbf{source\_comp} & string & The name of the Source\_adapt component in the instrument definition. & \\ +\bottomrule +\end{longtable} + +\subsection*{Links} +\begin{itemize} + \item \href{run:/home/willend/willend-McCode/mcstas-comps/sources/Adapt_check.comp}{Source code} for \texttt{Adapt\_check.comp}. +\end{itemize} +\IfFileExists{Adapt_check_static.tex}{\input{Adapt_check_static.tex}}{} \ No newline at end of file diff --git a/docs/manuals/mcstas/sources/ESS_butterfly.tex b/docs/manuals/mcstas/sources/ESS_butterfly.tex new file mode 100644 index 000000000..a5dd3dae5 --- /dev/null +++ b/docs/manuals/mcstas/sources/ESS_butterfly.tex @@ -0,0 +1,110 @@ +\section{The \texttt{ESS\_butterfly} McStas Component} +ESS butterfly moderator, 2016 revision + +\subsection*{Identification} +\begin{itemize} + \item \textbf{Site:} + \item \textbf{Author:} Peter Willendrup and Esben Klinkby + \item \textbf{Origin:} DTU + \item \textbf{Date:} August-September 2016 +\end{itemize} + +\subsection*{Description} +\begin{lstlisting} +ESS butterfly moderator with automatic choice of coordinate system, with origin +placed at relevant "Moderator Focus Coordinate System" depending on sector location. + +To select beamport N 5 simply use + +COMPONENT Source = ESS_butterfly(sector="N",beamline=5,Lmin=0.1,Lmax=20,dist=2, +cold_frac=0.5, yheight=0.03,focus_xw=0.1, focus_yh=0.1) + +Geometry +The geometry corresponds correctly to the latest release of the butterfly moderator, +including changes warranted by the ESS CCB in July 2016, the so called BF1 type moderator. +A set of official release documents are available with this component, see the benchmarking +website mentioned below. + +Brilliances, geometry adapted from earlier BF2 design +The geometry and brightness data implemented in the McStas ESS source component ESS_butterfly.comp, +are released as an updated component library for McStas 2.3, as well as a stand alone archive for +use with earlier versions of McStas. + +The following features are worth highlighting: +
      +
    • The brightness data are still based on last years MCNP calculations, based on the Butterfly 2 geometry. +As a result, the spatial variation of the brightness across the moderator face should be considered to +have an uncertainty of the order of 10%. Detailed information on the reasoning behind the change to +the Butterfly 1 geometry can be found in [1] and detailed information on horizontal spatial brightness +variation can be found in [2]. The spectral shape has been checked and has not changed significantly. +
    • A scaling factor has been introduced to in order to account for the decrease in brightness since 2015. +To accommodate the influence of the changed geometry, this scaling factor has been applied independently +for the cold and thermal contributions and is beamline dependent. It is adjusted to agree with the +spectrally-integrated 6cm width data shown in [1],Figure 3. +
    • To allow future user adjustments of brilliance, the scalar parameters c_performance and t_performance +have been implemented. For now, we recommend to keep these at their default value of 1.0. +
    • The geometry has been updated to correspond within about 2 mm to the geometry described in [1]. This +has been done by ensuring that the position and apparent width of the moderators correspond to [1],Figure 2, +which has been derived from current MCNP butterfly 1 model. +
    • The beamport is now defined directly by its sector and number (e.g. 'W' and '5'), rather than giving the angle, +as before. [1],Figure 5 shows the geometry of the moderator2, beamport insert and beamline axis for beamline W5. +Since the underlying data is still from last years MCNP run, when the brightness was calculated at 10-degree +intervals, this means that the spectral curve for the nearest beamport on the grid 5,15,25,35,45,55 degrees +is used. The use of this grid has no effect on the accuracy of the geometry or brilliance because of the above- +mentioned beamline-dependent adjustments to the brilliance and geometry. See the website [3] for details. +
    +As before, the beamports all originate at the focal point of the sector. The beamline will in almost all cases be +horizontally tilted in order to view the cold or thermal moderator, which should be done using an Arm component. + +
      +
    1. Release document "Update to ESS Moderators, latest version" +
    2. Release document "Description and performance of the new baseline ESS moderators, latest version" +
    3. http://essbutterfly.mcstas.org/ benchmarking website with comparative McStas-MCNP figures +
    4. html-based, interactive 3D model of moderators and monolith, as seen from beamline N4. +
    5. Source code for ESS_butterfly.comp at GitHub. +
    +\end{lstlisting} + +\subsection*{Input parameters} +Parameters in \textbf{boldface} are required; the others are optional. + +\begin{longtable}{p{0.22\textwidth}p{0.12\textwidth}p{0.46\textwidth}p{0.14\textwidth}} +\toprule +\textbf{Name} & \textbf{Unit} & \textbf{Description} & \textbf{Default} \\ +\midrule +\endhead +sector & str & Defines the 'sector' of your instrument position. Valid values are "N","S","E" and "W" & "N" \\ +beamline & 1 & Defines the 'beamline number' of your instrument position. Valid values are 1..10 or 1..11 depending on sector & 1 \\ +yheight & m & Defines the moderator height. Valid values are 0.03 m and 0.06 m & 0.03 \\ +cold\_frac & 1 & Defines the statistical fraction of events emitted from the cold part of the moderator & 0.5 \\ +target\_index & 1 & Relative index of component to focus at, e.g. next is +1 this is used to compute 'dist' automatically. & 0 \\ +dist & m & Distance from origin to focusing rectangle; at (0,0,dist) - alternatively use target\_index & 0 \\ +focus\_xw & m & Width of focusing rectangle & 0 \\ +focus\_yh & m & Height of focusing rectangle & 0 \\ +c\_performance & 1 & Cold brilliance scalar performance multiplicator c\_performance \textgreater{} 0 & 1 \\ +t\_performance & 1 & Thermal brilliance scalar performance multiplicator t\_performance \textgreater{} 0 & 1 \\ +\textbf{Lmin} & AA & Minimum wavelength simulated & \\ +\textbf{Lmax} & AA & Maximum wavelength simulated & \\ +tmax\_multiplier & 1 & Defined maximum emission time at moderator, tmax= tmax\_multiplier * ESS\_PULSE\_DURATION. & 3 \\ +n\_pulses & 1 & Number of pulses simulated. 0 and 1 creates one pulse. & 1 \\ +acc\_power & MW & Accelerator power in MW & 5 \\ +tfocus\_dist & m & Position of time focusing window along z axis & 0 \\ +tfocus\_time & s & Time position of time focusing window & 0 \\ +tfocus\_width & s & Time width of time focusing window & 0 \\ +\bottomrule +\end{longtable} + +\subsection*{Links} +\begin{itemize} + \item \href{run:/home/willend/willend-McCode/mcstas-comps/sources/ESS_butterfly.comp}{Source code} for \texttt{ESS\_butterfly.comp}. +\end{itemize} +\IfFileExists{ESS_butterfly_static.tex}{\input{ESS_butterfly_static.tex}}{} \ No newline at end of file diff --git a/docs/manuals/mcstas/sources/ESS_moderator.tex b/docs/manuals/mcstas/sources/ESS_moderator.tex new file mode 100644 index 000000000..1462624c8 --- /dev/null +++ b/docs/manuals/mcstas/sources/ESS_moderator.tex @@ -0,0 +1,84 @@ +\section{The \texttt{ESS\_moderator} McStas Component} +A parametrised pulsed source for modelling ESS long pulses. + +\subsection*{Identification} +\begin{itemize} + \item \textbf{Site:} + \item \textbf{Author:} P Willendrup and E Klinkby, February 2014, derived from K Lefmann ESS\_moderator\_long + \item \textbf{Origin:} DTU + \item \textbf{Date:} +\end{itemize} + +\subsection*{Description} +\begin{lstlisting} +Produces a time-of-flight spectrum, from the ESS parameters +Chooses evenly in lambda, evenly/exponentially decaying in time +Adapted from ESS_moderator_long by: K Lefmann, 2001 + +Updates and simplified interface: +
      +
    1. The spectrum from the source(s) is defined via the sourcedef string input parameter which allows these values: +
        +
      • sourcedef="2001", legacy "Mezei moderators" from the original F. Mezei documents +"ESS reference moderator characteristics for generic instrument performance evaluation", but rescaled to ESS TDR frequency, pulselength and power. +
      • sourcedef="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) and +implemented here by E Klinkby. NOTE: uses the 2001 brilliance for the thermal moderator! +
      • sourcedef="2014", updated brilliance using formulation by Troels Schoenfeldt, including support for the "pancacke", i.e. flat geometry. +
      • sourcedef="2015", updated brilliance using formulation by Troels Schoenfeldt, new butterfly baseline. +
      +
    2. The component can use target_index for focusing to a given beam port. Use an Arm() and ROTATED to position +relatively to the moderator. +
    3. The component relies on the new ess_source-lib which is expected to become further enriched during design-finaliziation and construciton of the ESS. +
    + +

    Note that this component does not implement "engineering reality" and currently uses a coordinate system centered on the moderator assembly. An +updated moderator component which references the "Moderator focus coordinate system" will be released later during the spring of 2016. + +

    Derived from ESS_moderator_long which was debugged intensively against Mezei note (4/12 2000) and VitESS @ Rencurel 2006. + +----------------------------------------------- +Correction by J. Saroun, NPI Rez: +1) version 2015: accepts negative port angles +2) version 2015: weight by cosine of the port angle +Warning: The negative beamport angle is not taken into acccount by mcplot + +%VALIDATION +Mezei-modererators validated against VitESS and Mezei note (4/12 2000) @ Rencurel 2006 +Benchmarked against multiple versions of ESS moderator group simulation data 2013-2015 +\end{lstlisting} + +\subsection*{Input parameters} +Parameters in \textbf{boldface} are required; the others are optional. + +\begin{longtable}{p{0.22\textwidth}p{0.12\textwidth}p{0.46\textwidth}p{0.14\textwidth}} +\toprule +\textbf{Name} & \textbf{Unit} & \textbf{Description} & \textbf{Default} \\ +\midrule +\endhead +isleft & 1 & Fraction of thermal neutrons generated at the "left" moderator slab in case of "2013" or "2014" & 0.9 \\ +\textbf{Lmin} & AA & Lower edge of wavelength distribution & \\ +\textbf{Lmax} & AA & Upper edge of wavelength distribution & \\ +cold\_frac & 1 & Fraction of neutron statistics from cold source. It is implicitely assumed that supermirror allows each beamline to choose the desired fraction of cold and thermal neutrons (i.e. extreme idealization). & 1.0 \\ +dist & m & Distance from source to focusing rectangle; at (0,0,dist) & 0 \\ +\textbf{focus\_xw} & m & Width of focusing rectangle & \\ +\textbf{focus\_yh} & m & Height of focusing rectangle & \\ +target\_index & 1 & relative index of component to focus at, e.g. next is +1 this is used to compute 'dist' automatically. & 0 \\ +tmax\_multiplier & 1 & Defined maximum emission time at moderator, tmax= tmax\_multiplier * ESS\_PULSE\_DURATION. Only in combination with sourcedef="2013", "2014" or "2015" & 3 \\ +yheight\_c & m & Height of the cold source & 0.12 \\ +yheight\_t & m & Height of the thermal source & 0.12 \\ +n\_pulses & 1 & Number of pulses simulated. 0 and 1 creates one pulse. The integrated intensity is constant & 1 \\ +acc\_power & MW & Accelerator power in MW & 5 \\ +beamport\_angle & deg & Direction within the beamport sector (0 \textless{} angle \textless{} extraction\_opening for 2014, -extraction\_opening/2 \textless{} angle \textless{} extraction\_opening/2 for 2015) to direct neutrons. For sourcedef="2015", the only allowed values are 5,15,...,55 degrees measured from the central point. & -1 \\ +sourcedef & string & ESS source "database", values: "TDR", "2001", "2013", "2014", "2015" & "2015" \\ +xwidth\_c & m & Width / arc-length opening of the cold source. & 0.1 \\ +xwidth\_t & m & Edge of thermal source & 0.18 \\ +extraction\_opening & deg & Width of extraction-area in degrees (60 or 120 degrees). 120 deg only in combination with sourcedef="2014" and "2015". & 120 \\ +\bottomrule +\end{longtable} + +\subsection*{Links} +\begin{itemize} + \item \href{run:/home/willend/willend-McCode/mcstas-comps/sources/ESS_moderator.comp}{Source code} for \texttt{ESS\_moderator.comp}. +\end{itemize} +\IfFileExists{ESS_moderator_static.tex}{\input{ESS_moderator_static.tex}}{} \ No newline at end of file diff --git a/docs/manuals/mcstas/sources/Moderator.tex b/docs/manuals/mcstas/sources/Moderator.tex new file mode 100644 index 000000000..c470db080 --- /dev/null +++ b/docs/manuals/mcstas/sources/Moderator.tex @@ -0,0 +1,45 @@ +\section{The \texttt{Moderator} McStas Component} +A simple pulsed source for time-of-flight. + +\subsection*{Identification} +\begin{itemize} + \item \textbf{Site:} + \item \textbf{Author:} KN, M.Hagen + \item \textbf{Origin:} Risoe + \item \textbf{Date:} August 1998 +\end{itemize} + +\subsection*{Description} +\begin{lstlisting} +Produces a simple time-of-flight spectrum, with a flat energy distribution + +Example: Moderator(radius = 0.0707, dist = 9.035, focus_xw = 0.021, focus_yh = 0.021, Emin = 10, Emax = 15, Ec = 9.0, t0 = 37.15, gamma = 39.1) +\end{lstlisting} + +\subsection*{Input parameters} +Parameters in \textbf{boldface} are required; the others are optional. + +\begin{longtable}{p{0.22\textwidth}p{0.12\textwidth}p{0.46\textwidth}p{0.14\textwidth}} +\toprule +\textbf{Name} & \textbf{Unit} & \textbf{Description} & \textbf{Default} \\ +\midrule +\endhead +radius & m & Radius of source & 0.07 \\ +\textbf{Emin} & meV & Lower edge of energy distribution & \\ +\textbf{Emax} & meV & Upper edge of energy distribution & \\ +dist & m & Distance from source to the focusing rectangle & 0 \\ +focus\_xw & m & Width of focusing rectangle & 0.02 \\ +focus\_yh & m & Height of focusing rectangle & 0.02 \\ +t0 & mus & decay constant for low-energy neutrons & 37.15 \\ +Ec & meV & Critical energy, below which the flux decay is constant & 9.0 \\ +gamma & meV & energy dependence of decay time & 39.1 \\ +target\_index & 1 & relative index of component to focus at, e.g. next is +1 this is used to compute 'dist' automatically. & 1 \\ +flux & 1/(s cm 2 st meV) & flux & 1 \\ +\bottomrule +\end{longtable} + +\subsection*{Links} +\begin{itemize} + \item \href{run:/home/willend/willend-McCode/mcstas-comps/sources/Moderator.comp}{Source code} for \texttt{Moderator.comp}. +\end{itemize} +\IfFileExists{Moderator_static.tex}{\input{Moderator_static.tex}}{} \ No newline at end of file diff --git a/docs/manuals/mcstas/sources/Monitor_Optimizer.tex b/docs/manuals/mcstas/sources/Monitor_Optimizer.tex new file mode 100644 index 000000000..74e42f20e --- /dev/null +++ b/docs/manuals/mcstas/sources/Monitor_Optimizer.tex @@ -0,0 +1,48 @@ +\section{The \texttt{Monitor\_Optimizer} McStas Component} +To be used after the \textless{}b\textgreater{}Source\_Optimizer\textless{}/b\textgreater{} component + +\subsection*{Identification} +\begin{itemize} + \item \textbf{Site:} + \item \textbf{Author:} \textless{}a href="mailto:farhi@ill.fr"\textgreater{}Emmanuel Farhi\textless{}/a\textgreater{} + \item \textbf{Origin:} \textless{}a href="http://www.ill.fr"\textgreater{}ILL (France)\textless{}/a\textgreater{} + \item \textbf{Date:} 17 Sept 1999 +\end{itemize} + +\subsection*{Description} +\begin{lstlisting} +A component that optimizes the neutron flux passing through the +Source_Optimizer in order to have the maximum flux at the +Monitor_Optimizer position(s). +Source_optimizer should be placed just after the source. +Monitor_Optimizer should be placed at the position to optimize. +I prefer to put one just before the sample. + +See Source_Optimizer for +usage example and additional informations. +\end{lstlisting} + +\subsection*{Input parameters} +Parameters in \textbf{boldface} are required; the others are optional. + +\begin{longtable}{p{0.22\textwidth}p{0.12\textwidth}p{0.46\textwidth}p{0.14\textwidth}} +\toprule +\textbf{Name} & \textbf{Unit} & \textbf{Description} & \textbf{Default} \\ +\midrule +\endhead +\textbf{optim\_comp} & str & name of the Source\_Optimizer component in the instrument definition. Do not use quotes (no quotes) & \\ +xmin & m & Lower x bound of monitor opening & -0.1 \\ +xmax & m & Upper x bound of monitor opening & 0.1 \\ +ymin & m & Lower y bound of monitor opening & -0.1 \\ +ymax & m & Upper y bound of monitor opening & 0.1 \\ +xwidth & m & Width of monitor. Overrides xmin,xmax. & 0 \\ +yheight & m & Height of monitor. Overrides ymin,ymax. & 0 \\ +\bottomrule +\end{longtable} + +\subsection*{Links} +\begin{itemize} + \item \href{run:/home/willend/willend-McCode/mcstas-comps/sources/Monitor_Optimizer.comp}{Source code} for \texttt{Monitor\_Optimizer.comp}. + \item \textless{}a href="Source\_Optimizer.html"\textgreater{}Source\_Optimizer\textless{}/a\textgreater{} +\end{itemize} +\IfFileExists{Monitor_Optimizer_static.tex}{\input{Monitor_Optimizer_static.tex}}{} \ No newline at end of file diff --git a/docs/manuals/mcstas/sources/Source_4PI.tex b/docs/manuals/mcstas/sources/Source_4PI.tex new file mode 100644 index 000000000..0bd1854a2 --- /dev/null +++ b/docs/manuals/mcstas/sources/Source_4PI.tex @@ -0,0 +1,39 @@ +\section{The \texttt{Source\_4PI} McStas Component} +Spherical, 4PI-emitting, monochromatic source for benchmarking purposes + +\subsection*{Identification} +\begin{itemize} + \item \textbf{Site:} + \item \textbf{Author:} Peter Willendrup + \item \textbf{Origin:} DTU + \item \textbf{Date:} May 2024 +\end{itemize} + +\subsection*{Description} +\begin{lstlisting} +Spherical, 4PI-emitting, monochromatic source for benchmarking purposes +\end{lstlisting} + +\subsection*{Input parameters} +Parameters in \textbf{boldface} are required; the others are optional. + +\begin{longtable}{p{0.22\textwidth}p{0.12\textwidth}p{0.46\textwidth}p{0.14\textwidth}} +\toprule +\textbf{Name} & \textbf{Unit} & \textbf{Description} & \textbf{Default} \\ +\midrule +\endhead +radius & m & Radius of spherical source & 0 \\ +flux & n/s/4PI & Neutron flux & 1e14 \\ +gauss & & Flag to indicate if Energy/Wavelength distribution is gaussian & 0 \\ +E0 & meV & Mean energy of neutrons. & 0 \\ +dE & meV & Energy half spread of neutrons (flat or gaussian sigma). & 0 \\ +lambda0 & AA & Mean wavelength of neutrons. & 0 \\ +dlambda & AA & Wavelength half spread of neutrons. & 0 \\ +\bottomrule +\end{longtable} + +\subsection*{Links} +\begin{itemize} + \item \href{run:/home/willend/willend-McCode/mcstas-comps/sources/Source_4PI.comp}{Source code} for \texttt{Source\_4PI.comp}. +\end{itemize} +\IfFileExists{Source_4PI_static.tex}{\input{Source_4PI_static.tex}}{} \ No newline at end of file diff --git a/docs/manuals/mcstas/sources/Source_Maxwell_3.tex b/docs/manuals/mcstas/sources/Source_Maxwell_3.tex new file mode 100644 index 000000000..45491d4e6 --- /dev/null +++ b/docs/manuals/mcstas/sources/Source_Maxwell_3.tex @@ -0,0 +1,59 @@ +\section{The \texttt{Source\_Maxwell\_3} McStas Component} +Source with up to three Maxwellian distributions + +\subsection*{Identification} +\begin{itemize} + \item \textbf{Site:} + \item \textbf{Author:} Kim Lefmann + \item \textbf{Origin:} Risoe + \item \textbf{Date:} March 2001 +\end{itemize} + +\subsection*{Description} +\begin{lstlisting} +A parametrised continuous source for modelling a (cubic) source +with (up to) 3 Maxwellian distributions. +The source produces a continuous spectrum. +The sampling of the neutrons is uniform in wavelength. + +Units of flux: neutrons/cm^2/second/ster +(McStas units are in general neutrons/second) + +Example: PSI cold source T1=150.42 K / 2.51 AA I1 = 3.67 E11 +T2=38.74 K / 4.95 AA I2 = 3.64 E11 +T3=14.84 K / 9.5 AA I3 = 0.95 E11 +\end{lstlisting} + +\subsection*{Input parameters} +Parameters in \textbf{boldface} are required; the others are optional. + +\begin{longtable}{p{0.22\textwidth}p{0.12\textwidth}p{0.46\textwidth}p{0.14\textwidth}} +\toprule +\textbf{Name} & \textbf{Unit} & \textbf{Description} & \textbf{Default} \\ +\midrule +\endhead +size & m & Edge of cube shaped source (for backward compatibility) & 0 \\ +yheight & m & Height of rectangular source & 0 \\ +xwidth & m & Width of rectangular source & 0 \\ +\textbf{Lmin} & AA & Lower edge of lambda distribution & \\ +\textbf{Lmax} & AA & Upper edge of lambda distribution & \\ +\textbf{dist} & m & Distance from source to focusing rectangle; at (0,0,dist) & \\ +\textbf{focus\_xw} & m & Width of focusing rectangle & \\ +\textbf{focus\_yh} & m & Height of focusing rectangle & \\ +\textbf{T1} & K & 1st temperature of thermal distribution & \\ +T2 & K & 2nd temperature of thermal distribution & 300 \\ +T3 & K & 3nd temperature of - - - & 300 \\ +\textbf{I1} & 1/(cm**2*st) & flux, 1 (in flux units, see above) & \\ +I2 & 1/(cm**2*st) & flux, 2 (in flux units, see above) & 0 \\ +I3 & 1/(cm**2*st) & flux, 3 - - - & 0 \\ +target\_index & 1 & relative index of component to focus at, e.g. next is +1 this is used to compute 'dist' automatically. & 1 \\ +lambda0 & AA & Mean wavelength of neutrons. & 0 \\ +dlambda & AA & Wavelength spread of neutrons. & 0 \\ +\bottomrule +\end{longtable} + +\subsection*{Links} +\begin{itemize} + \item \href{run:/home/willend/willend-McCode/mcstas-comps/sources/Source_Maxwell_3.comp}{Source code} for \texttt{Source\_Maxwell\_3.comp}. +\end{itemize} +\IfFileExists{Source_Maxwell_3_static.tex}{\input{Source_Maxwell_3_static.tex}}{} \ No newline at end of file diff --git a/docs/manuals/mcstas/sources/Source_Optimizer.tex b/docs/manuals/mcstas/sources/Source_Optimizer.tex new file mode 100644 index 000000000..51e30fda0 --- /dev/null +++ b/docs/manuals/mcstas/sources/Source_Optimizer.tex @@ -0,0 +1,104 @@ +\section{The \texttt{Source\_Optimizer} McStas Component} +A component that optimizes the neutron flux passing through the +Source\_Optimizer in order to have the maximum flux at the +\textless{}b\textgreater{}Monitor\_Optimizer\textless{}/b\textgreater{} position. + +\subsection*{Identification} +\begin{itemize} + \item \textbf{Site:} + \item \textbf{Author:} \textless{}a href="mailto:farhi@ill.fr"\textgreater{}Emmanuel Farhi\textless{}/a\textgreater{} + \item \textbf{Origin:} \textless{}a href="http://www.ill.fr"\textgreater{}ILL (France)\textless{}/a\textgreater{} + \item \textbf{Date:} 17 Sept 1999 +\end{itemize} + +\subsection*{Description} +\begin{lstlisting} +Principle: The optimizer first (step 1) computes neutron state parameter +limits passing in the Source_Optimizer, and then (step 2) records a Reference +source as well as the state (at Source_Optimizer position) of neutrons +reaching Monitor. The optimized source is defined as a fraction of the +Reference source plus the distribution of 'good' neutrons reaching the +Monitor. The optimization then starts (step 3), and focuses new neutrons on +the Monitor_Optimizer. In fact it changes 'bad' neutrons into 'good' ones +(that reach the Monitor), acting on their position, spin and divergence or +velocity. The overall Monitor flux is kept during process. The energy and +polarisation distributions are kept during optimization as far as possible +during optimisation. The optimization method considers that all neutron +parameters - (x,y), (vx,vy,vz) or (vx/v2,vy/v2,v2), (sx,sy,sz) or +(sx/s2,sy/s2,s2) - are independent. + +Options: The optimized source can be computed regularly ('continuous' +option) or only once ('not continuous'). The time spent in steps 1 and 2 can +be reduced for a shorter optimization ('auto'). The neutrons passing during +steps 1 and 2 can be smoothed for a better neutron weight distribution +('smooth' option). + +Source_optimizer can be placed at any position where you want to act on the +flux, for instance just after the source. +Monitor_Optimizer should be placed at position(s) to optimize. +I prefer to put one just before the sample. + +Default parameters bins, step, and keep are 10, 10% and 10% respectively. +The option string can be empty (""), which stands for default configuration +that works fine in usual cases: + +options="continuous optimization, auto mode, smooth, SetXY+SetDivV+SetDivS" + +Possible options are +continuous for continuous source optimization (default). +verbose displays optimization process (debug purpose). +auto uses the shortest possible 'step 1' and 'step 2' and sets 'step' value as required (default). +smooth remove possible spikes generated in steps 1 and 2 (default is smooth). +inactivate to inactivate the Optimizer. +no or not revert next option +bins=[value=10] set the Number of cells for sampling neutron states +step=[value=10] Optimizer step in % of simulation. +keep=[value=10] Percentage of initial source distribution that is kept +file=[name] Filename where to save optimized source distributions (no file is generated if not given. Default ext. is .src) +SetXY Keywords to indicate what may be changed during +SetV optimisation. Default is position, divergence and spin +SetS direction ("SetXY+SetDivV+SetdivS"). Choosing the speed +SetDivV or spin optimization (SetV or SetS) may modify the energy +SetDivS or polarisation distribution (norm of V and S) as the three components are then independent. + +Parameters bins, step and keep can also be entered as optional parameters. + +EXAMPLE: I use the following settings + +optim_s = Source_Optimizer(options="please be clever") (same as empty) +(...) +Monitor_Optimizer(xmin=-0.05, xmax=0.05, ymin=-0.05, ymax=0.05, +optim_comp = "optim_s") + +A good optimization needs to record enough non optimized neutrons on Monitor +during step 2. Typical enhancement in computation speed is by a factor 20. +This component usually works well. + +NOTE: You must be aware that in some cases (SetV and SetS), +the optimization might sligtly afect the energy or spin distribution of the +source. The optimizer tries to do its best anyway. +Also, some 'spikes' may sometime appear in monitor signals in the course of +the optimization, coming from non-optimized neutrons with original weight. +The 'smooth' option minimises this effect (on by default). +\end{lstlisting} + +\subsection*{Input parameters} +Parameters in \textbf{boldface} are required; the others are optional. + +\begin{longtable}{p{0.22\textwidth}p{0.12\textwidth}p{0.46\textwidth}p{0.14\textwidth}} +\toprule +\textbf{Name} & \textbf{Unit} & \textbf{Description} & \textbf{Default} \\ +\midrule +\endhead +bins & 1 & Number of cells for sampling neutron states. & 10 \\ +step & 0-100 & Optimizer step in percent of simulation. & 0.1 \\ +keep & 0-100 & Percentage of initial source distribution that is kept. & 0.1 \\ +options & str & string of options. See \textless{}b\textgreater{}Description\textless{}b\textgreater{} & 0 \\ +\bottomrule +\end{longtable} + +\subsection*{Links} +\begin{itemize} + \item \href{run:/home/willend/willend-McCode/mcstas-comps/sources/Source_Optimizer.comp}{Source code} for \texttt{Source\_Optimizer.comp}. +\end{itemize} +\IfFileExists{Source_Optimizer_static.tex}{\input{Source_Optimizer_static.tex}}{} \ No newline at end of file diff --git a/docs/manuals/mcstas/sources/Source_adapt.tex b/docs/manuals/mcstas/sources/Source_adapt.tex new file mode 100644 index 000000000..849b057e3 --- /dev/null +++ b/docs/manuals/mcstas/sources/Source_adapt.tex @@ -0,0 +1,81 @@ +\section{The \texttt{Source\_adapt} McStas Component} +Neutron source with adaptive importance sampling + +\subsection*{Identification} +\begin{itemize} + \item \textbf{Site:} + \item \textbf{Author:} Kristian Nielsen + \item \textbf{Origin:} Risoe + \item \textbf{Date:} 1999 +\end{itemize} + +\subsection*{Description} +\begin{lstlisting} +Rectangular source with flat energy or wavelength distribution that +uses adaptive importance sampling to improve simulation efficiency. +Works together with the Adapt_check component. + +The source divides the three-dimensional phase space of (energy, +horizontal position, horizontal divergence) into a number of +rectangular bins. The probability for selecting neutrons from each +bin is adjusted so that neutrons that reach the Adapt_check +component with high weights are emitted more frequently than those +with low weights. The adjustment is made so as to attemt to make +the weights at the Adapt_check components equal. + +Focusing is achieved by only emitting neutrons towards a rectangle +perpendicular to and placed at a certain distance along the Z axis. +Focusing is only approximate (for simplicity); neutrons are also +emitted to pass slightly above and below the focusing rectangle, +more so for wider focusing. + +In order to prevent false learning, a parameter beta sets a +fraction of the neutrons that are emitted uniformly, without regard +to the adaptive distribution. The parameter alpha sets an initial +fraction of neutrons that are emitted with low weights; this is +done to prevent early neutrons with rare initial parameters but +high weight to ruin the statistics before the component adapts its +distribution to the problem at hand. Good general-purpose values +for these parameters are alpha = beta = 0.25. + +%VALIDATION +This component is not validated. It does not work properly with MPI. +\end{lstlisting} + +\subsection*{Input parameters} +Parameters in \textbf{boldface} are required; the others are optional. + +\begin{longtable}{p{0.22\textwidth}p{0.12\textwidth}p{0.46\textwidth}p{0.14\textwidth}} +\toprule +\textbf{Name} & \textbf{Unit} & \textbf{Description} & \textbf{Default} \\ +\midrule +\endhead +N\_E & 1 & Number of bins in energy (or wavelength) dimension & 20 \\ +N\_xpos & 1 & Number of bins in horizontal position & 20 \\ +N\_xdiv & 1 & Number of bins in horizontal divergence & 20 \\ +xmin & m & Left edge of rectangular source & 0 \\ +xmax & m & Right edge & 0 \\ +ymin & m & Lower edge & 0 \\ +ymax & m & Upper edge & 0 \\ +xwidth & m & Width of source & 0 \\ +yheight & m & Height of source & 0 \\ +filename & string & Optional filename for adaptive distribution output & 0 \\ +dist & m & Distance to target rectangle along z axis & 0 \\ +focus\_xw & m & Width of target & 0.05 \\ +focus\_yh & m & Height of target & 0.1 \\ +E0 & meV & Mean energy of neutrons & 0 \\ +dE & meV & Energy spread (energy range is from E0-dE to E0+dE) & 0 \\ +lambda0 & AA & Mean wavelength of neutrons (if energy not specified) & 0 \\ +dlambda & AA & Wavelength spread half width & 0 \\ +flux & & (1/(cm 2 AA st)) Absolute source flux & 1e13 \\ +target\_index & 1 & relative index of component to focus at, e.g. next is +1 this is used to compute 'dist' automatically. & 1 \\ +alpha & 1 & Learning cut-off factor (0 \textless{} alpha \textless{}= 1) & 0.25 \\ +beta & 1 & Aggressiveness of adaptive algorithm (0 \textless{} beta \textless{}= 1) & 0.25 \\ +\bottomrule +\end{longtable} + +\subsection*{Links} +\begin{itemize} + \item \href{run:/home/willend/willend-McCode/mcstas-comps/sources/Source_adapt.comp}{Source code} for \texttt{Source\_adapt.comp}. +\end{itemize} +\IfFileExists{Source_adapt_static.tex}{\input{Source_adapt_static.tex}}{} \ No newline at end of file diff --git a/docs/manuals/mcstas/sources/Source_div.tex b/docs/manuals/mcstas/sources/Source_div.tex new file mode 100644 index 000000000..ef9faee72 --- /dev/null +++ b/docs/manuals/mcstas/sources/Source_div.tex @@ -0,0 +1,63 @@ +\section{The \texttt{Source\_div} McStas Component} +Neutron source with Gaussian or uniform divergence + +\subsection*{Identification} +\begin{itemize} + \item \textbf{Site:} + \item \textbf{Author:} KL + \item \textbf{Origin:} Risoe + \item \textbf{Date:} November 20, 1998 +\end{itemize} + +\subsection*{Description} +\begin{lstlisting} +The routine is a rectangular neutron source, which has a gaussian or uniform +divergent output in the forward direction. +The neutron energy is distributed between lambda0-dlambda and +lambda0+dlambda or between E0-dE and E0+dE. The flux unit is specified +in n/cm2/s/st/energy unit (meV or Angs). +In the case of uniform distribution (gauss=0), angles are uniformly distributed +between -focus_aw and +focus_aw as well as -focus_ah and +focus_ah. +For Gaussian distribution (gauss=1), 'focus_aw' and 'focus_ah' define the +FWHM of a Gaussian distribution. Energy/wavelength distribution is also +Gaussian. + +Example: Source_div(xwidth=0.1, yheight=0.1, focus_aw=2, focus_ah=2, E0=14, dE=2, gauss=0) + +%VALIDATION +Feb 2005: tested by Kim Lefmann (o.k.) +Apr 2005: energy distribution used in external tests of Fermi choppers (o.k.) +Jun 2005: wavelength distribution used in external tests of velocity selectors (o.k.) +Validated by: K. Lieutenant + +%BUGS +distribution is uniform in (hor. and vert.) angle (relative to moderator normal), +therefore not suited for large angles +\end{lstlisting} + +\subsection*{Input parameters} +Parameters in \textbf{boldface} are required; the others are optional. + +\begin{longtable}{p{0.22\textwidth}p{0.12\textwidth}p{0.46\textwidth}p{0.14\textwidth}} +\toprule +\textbf{Name} & \textbf{Unit} & \textbf{Description} & \textbf{Default} \\ +\midrule +\endhead +\textbf{xwidth} & m & Width of source & \\ +\textbf{yheight} & m & Height of source & \\ +\textbf{focus\_aw} & deg & FWHM (Gaussian) or maximal (uniform) horz. width divergence & \\ +\textbf{focus\_ah} & deg & FWHM (Gaussian) or maximal (uniform) vert. height divergence & \\ +E0 & meV & Mean energy of neutrons. & 0.0 \\ +dE & meV & Energy half spread of neutrons. & 0.0 \\ +lambda0 & Ang & Mean wavelength of neutrons (only relevant for E0=0) & 0.0 \\ +dlambda & Ang & Wavelength half spread of neutrons. & 0.0 \\ +gauss & 0|1 & Criterion: 0: uniform, 1: Gaussian distributions & 0 \\ +flux & 1/(s cm 2 st energy\_unit) & flux per energy unit, Angs or meV & 1 \\ +\bottomrule +\end{longtable} + +\subsection*{Links} +\begin{itemize} + \item \href{run:/home/willend/willend-McCode/mcstas-comps/sources/Source_div.comp}{Source code} for \texttt{Source\_div.comp}. +\end{itemize} +\IfFileExists{Source_div_static.tex}{\input{Source_div_static.tex}}{} \ No newline at end of file diff --git a/docs/manuals/mcstas/sources/Source_div_quasi.tex b/docs/manuals/mcstas/sources/Source_div_quasi.tex new file mode 100644 index 000000000..12ee40e16 --- /dev/null +++ b/docs/manuals/mcstas/sources/Source_div_quasi.tex @@ -0,0 +1,65 @@ +\section{The \texttt{Source\_div\_quasi} McStas Component} +Quasi-stochastic neutron source with Gaussian or uniform divergence + +\subsection*{Identification} +\begin{itemize} + \item \textbf{Site:} + \item \textbf{Author:} Mads Carlsen and Erik Bergbäck Knudsen (erkn@fysik.dtu.dk) + \item \textbf{Origin:} DTU Physics + \item \textbf{Date:} Jan 22 +\end{itemize} + +\subsection*{Description} +\begin{lstlisting} +A flat rectangular surface source with uniform or Gaussian divergence profile and focussing. +If the parametere gauss is not set (the default) the divergence profile is flat +in the range [-focus_ax,focus_ay]. If gauss is set, the focux_ax,focus_ay is considered +the standard deviation of the gaussian profile. +Currently focussing is only active for flat profile. The "focus window" is defined by focus_xw,focus_yh and dist. +The spectral intensity profile is uniformly distributed in the energy interval defined by e0+-dE/2 or +by wavelength lambda0+-dlambda/2 + +The phase space spanned by the generated neutrons is sampled by means of Halton-sequences, instead of regular +pseudo random numbers. This ensures that samples are evenly distributed within the phase space region of interest. + +Example: Source_div_quasi(xwidth=0.1, yheight=0.1, focus_aw=2, focus_ah=2, E0=14, dE=2, gauss=0) + +%VALIDATION + +%BUGS +\end{lstlisting} + +\subsection*{Input parameters} +Parameters in \textbf{boldface} are required; the others are optional. + +\begin{longtable}{p{0.22\textwidth}p{0.12\textwidth}p{0.46\textwidth}p{0.14\textwidth}} +\toprule +\textbf{Name} & \textbf{Unit} & \textbf{Description} & \textbf{Default} \\ +\midrule +\endhead +spectrum\_file & & File from which to read the spectral intensity profile & "" \\ +xwidth & m & Width of source & 0 \\ +yheight & m & Height of source & 0 \\ +focus\_xw & m & Width of sampling window & 0 \\ +focus\_yh & m & Height of sampling window & 0 \\ +dist & m & Downstream distance to place sampling target window & 0 \\ +focus\_aw & rad & Std. dev. (Gaussian) or maximal (uniform) horz. width divergence. focus\_xw overrrides if it is more restrictive. & 0 \\ +focus\_ah & rad & Std. dev. (Gaussian) or maximal (uniform) vert. height divergence. focus\_yh overrrides if it is more restrictive. & 0 \\ +E0 & meV & Mean energy of neutrons. & 0 \\ +dE & meV & Energy spread of neutrons. & 0 \\ +lambda0 & AA & Mean wavelength of neutrons (only relevant for E0=0) & 0 \\ +dlambda & AA & Wavelength half spread of neutrons. & 0 \\ +flux & 1/(s*cm**2*st*energy unit) & Flux per energy unit, Angs or meV & 0 \\ +gauss & 1 & Criterion: 0: uniform, 1: Gaussian distribution of energy/wavelength & 0 \\ +gauss\_a & 1 & Criterion: 0: uniform, 1: Gaussian divergence distribution & 0 \\ +randomphase & & When=1, the X-ray phase is randomised & 1 \\ +phase & & Set to finite value to define X-ray phase (0:2 pi) & 0 \\ +verbose & & Generate more output on the console. & 1 \\ +\bottomrule +\end{longtable} + +\subsection*{Links} +\begin{itemize} + \item \href{run:/home/willend/willend-McCode/mcstas-comps/sources/Source_div_quasi.comp}{Source code} for \texttt{Source\_div\_quasi.comp}. +\end{itemize} +\IfFileExists{Source_div_quasi_static.tex}{\input{Source_div_quasi_static.tex}}{} \ No newline at end of file diff --git a/docs/manuals/mcstas/sources/Source_gen.tex b/docs/manuals/mcstas/sources/Source_gen.tex new file mode 100644 index 000000000..e96644e21 --- /dev/null +++ b/docs/manuals/mcstas/sources/Source_gen.tex @@ -0,0 +1,124 @@ +\section{The \texttt{Source\_gen} McStas Component} +Circular/squared neutron source with flat or Maxwellian energy/wavelength +spectrum + +\subsection*{Identification} +\begin{itemize} + \item \textbf{Site:} + \item \textbf{Author:} Emmanuel Farhi, Kim Lefmann + \item \textbf{Origin:} ILL/Risoe + \item \textbf{Date:} Aug 27, 2001 +\end{itemize} + +\subsection*{Description} +\begin{lstlisting} +This routine is a neutron source (rectangular or circular), which aims at +a square target centered at the beam (in order to improve MC-acceptance +rate). The angular divergence is then given by the dimensions of the +target. However, it may be directly set using the 'focus-aw' and 'focus_ah' +parameters. + +The neutron energy/wavelength is distributed uniformly in wavelength between +Emin=E0-dE and Emax=E0+dE or Lmin=lambda0-dlambda and Lmax=lambda0+dlambda. +The I1 may be either arbitrary (I1=0), or specified in neutrons per steradian +per square cm per Angstrom per s. A Maxwellian spectra may be selected if you +give the source temperatures (up to 3). + +Finally, a file with the flux as a +function of the wavelength [lambda(AA) flux(n/s/cm^2/st/AA)] may be used +with the 'flux_file' parameter. Format is 2 columns free text. + +Additional distributions for the horizontal and vertical phase spaces +distributions (position-divergence) may be specified with the +'xdiv_file' and 'ydiv_file' parameters. Format is free text, requiring +a comment line '# xylimits: pos_min pos_max div_min div_max' to set +the axis of the distribution matrix. All these files may be generated using +standard monitors (better in McStas/PGPLOT format), e.g.: +Monitor_nD(options="auto lambda per cm2") +Monitor_nD(options="x hdiv, all auto") +Monitor_nD(options="y vdiv, all auto") + +The source shape is defined by its radius, or can alternatively be squared +if you specify non-zero yheight and xwidth parameters. +The beam is divergence uniform,. +The source may have a thickness, which will broaden the default zero time +distribution. + +Usage example: +Source_gen(radius=0.1,lambda0=2.36,dlambda=0.16,T1=20,I1=1e13,focus_xw=0.01,focus_yh=0.01) +Source_gen(yheight=0.1,xwidth=0.1,Emin=1,Emax=3,I1=1e13,verbose=1,focus_xw=0.01,focus_yh=0.01) +EXTEND +%{ +t = rand0max(1e-3); // set time from 0 to 1 ms for TOF instruments. +%} + +Some neutron facility parameters: +PSI cold source T1=296.2,I1=8.5E11, T2=40.68,I2=5.2E11 +ILL VCS cold source T1=216.8,I1=1.24e+13,T2=33.9,I2=1.02e+13 +(H1, 58 MW) T3=16.7 ,I3=3.0423e+12 +ILL HCS cold source T1=413.5,I1=10.22e12,T2=145.8,I2=3.44e13 +(H5, 58 MW) T3=40.1 ,I3=2.78e13 +ILL Thermal tube T1=683.7,I1=0.5874e+13,T2=257.7,I2=2.5099e+13 +(H12, 58 MW) T3=16.7 ,I3=1.0343e+12 +ILL Hot source T1=1695, I1=1.74e13,T2=708, I2=3.9e12 (58MW) +HZB cold source T1=43.7 ,I1=1.4e12, T2=137.2,I2=2.08e12,radius=.155 (10MW) +HZB bi-spectral T1=43.7, I1=1.4e12, T2=137.2,I2=2.08e12,T3=293.0,I3=1.77e12 +HZB thermal tube T1=293.0,I1=2.64e12 (10MW) +FRM2 cold,20MW T1=35.0, I1=9.38e12,T2=547.5,I2=2.23e12,T3=195.4,I3=1.26e13 +FRM2 thermal,20MW T1=285.6,I1=3.06e13,T2=300.0,I2=1.68e12,T3=429.9,I3=6.77e12 +LLB cold,14MW T1=220, I1=2.09e12,T2=60, I2=3.83e12,T3=20, I3=1.04e12 +TRIGA thermal 1MW T1=300, I1=3.5e11 (scale by thermal power in MW) + +%VALIDATION +Feb 2005: output cross-checked for 3 Maxwellians against VITESS source +I(lambda), I(hor_div), I(vert_div) identical in shape and absolute values +Validated by: K. Lieutenant +\end{lstlisting} + +\subsection*{Input parameters} +Parameters in \textbf{boldface} are required; the others are optional. + +\begin{longtable}{p{0.22\textwidth}p{0.12\textwidth}p{0.46\textwidth}p{0.14\textwidth}} +\toprule +\textbf{Name} & \textbf{Unit} & \textbf{Description} & \textbf{Default} \\ +\midrule +\endhead +flux\_file & str & Name of a two columns [lambda flux] text file that contains the wavelength distribution of the flux in \textless{}b\textgreater{}either\textless{}/b\textgreater{} [1/(s*cm**2*st)] \textless{}b\textgreater{}or\textless{}/b\textgreater{} [1/(s*cm**2*st*AA)] (see flux\_file\_perAA flag) Comments (\#) and further columns are ignored. Format is compatible with McStas/PGPLOT wavelength monitor files. When specified, temperature and intensity values are ignored. & "NULL" \\ +xdiv\_file & str & Name of the x-horiz. divergence distribution file, given as a free format text matrix, preceeded with a line '\# xylimits: xmin xmax xdiv\_min xdiv\_max' & "NULL" \\ +ydiv\_file & str & Name of the y-vert. divergence distribution file, given as a free format text matrix, preceeded with a line '\# xylimits: ymin ymax ydiv\_min ydiv\_max' & "NULL" \\ +radius & m & Radius of circle in (x,y,0) plane where neutrons are generated. You may also use 'yheight' and 'xwidth' for a square source & 0.0 \\ +dist & m & Distance to target along z axis. & 0 \\ +focus\_xw & m & Width of target. & 0.045 \\ +focus\_yh & m & Height of target. & 0.12 \\ +focus\_aw & deg & maximal (uniform) horz. width divergence & 0 \\ +focus\_ah & deg & maximal (uniform) vert. height divergence & 0 \\ +E0 & meV & Mean energy of neutrons. & 0 \\ +dE & meV & Energy spread of neutrons, half width. & 0 \\ +lambda0 & AA & Mean wavelength of neutrons. & 0 \\ +dlambda & AA & Wavelength spread of neutrons,half width & 0 \\ +I1 & 1/(cm**2*sr) & Source flux per solid angle, area and Angstrom if I1=0, the source emits 1 in 4*PI whole space. & 1 \\ +yheight & m & Source y-height, then does not use radius parameter & 0.1 \\ +xwidth & m & Source x-width, then does not use radius parameter & 0.1 \\ +verbose & 0/1 & display info about the source. -1 inactivate source. & 0 \\ +T1 & K & Temperature of the Maxwellian source, 0=none & 0 \\ +flux\_file\_perAA & 1 & When true (1), indicates that flux file data is already per Aangstroem. If false, file data is per wavelength bin. & 0 \\ +flux\_file\_log & 1 & When true, will transform the flux table in log scale to improve the sampling. & 0 \\ +Lmin & AA & Minimum wavelength of neutrons & 0 \\ +Lmax & AA & Maximum wavelength of neutrons & 0 \\ +Emin & meV & Minimum energy of neutrons & 0 \\ +Emax & meV & Maximum energy of neutrons & 0 \\ +T2 & K & Second Maxwellian source Temperature, 0=none & 0 \\ +I2 & 1/(cm**2*sr) & Second Maxwellian Source flux & 0 \\ +T3 & K & Third Maxwellian source Temperature, 0=none & 0 \\ +I3 & 1/(cm**2*sr) & Third Maxwellian Source flux & 0 \\ +zdepth & m & Source z-zdepth, not anymore flat & 0 \\ +target\_index & 1 & relative index of component to focus at, e.g. next is +1 this is used to compute 'dist' automatically. & 1 \\ +\bottomrule +\end{longtable} + +\subsection*{Links} +\begin{itemize} + \item \href{run:/home/willend/willend-McCode/mcstas-comps/sources/Source_gen.comp}{Source code} for \texttt{Source\_gen.comp}. + \item P. Ageron, Nucl. Inst. Meth. A 284 (1989) 197 +\end{itemize} +\IfFileExists{Source_gen_static.tex}{\input{Source_gen_static.tex}}{} \ No newline at end of file diff --git a/docs/manuals/mcstas/sources/Source_simple.tex b/docs/manuals/mcstas/sources/Source_simple.tex new file mode 100644 index 000000000..216ae6838 --- /dev/null +++ b/docs/manuals/mcstas/sources/Source_simple.tex @@ -0,0 +1,55 @@ +\section{The \texttt{Source\_simple} McStas Component} +A circular neutron source with flat energy spectrum and arbitrary flux + +\subsection*{Identification} +\begin{itemize} + \item \textbf{Site:} + \item \textbf{Author:} Kim Lefmann + \item \textbf{Origin:} Risoe + \item \textbf{Date:} October 30, 1997 +\end{itemize} + +\subsection*{Description} +\begin{lstlisting} +The routine is a circular neutron source, which aims at a square target +centered at the beam (in order to improve MC-acceptance rate). The angular +divergence is then given by the dimensions of the target. +The neutron energy is uniformly distributed between lambda0-dlambda and +lambda0+dlambda or between E0-dE and E0+dE. +The flux unit is specified in n/cm2/s/st/energy unit (meV or Angs). + +This component replaces Source_flat, Source_flat_lambda, +Source_flux and Source_flux_lambda. + +Example: Source_simple(radius=0.1, dist=2, focus_xw=.1, focus_yh=.1, E0=14, dE=2) +\end{lstlisting} + +\subsection*{Input parameters} +Parameters in \textbf{boldface} are required; the others are optional. + +\begin{longtable}{p{0.22\textwidth}p{0.12\textwidth}p{0.46\textwidth}p{0.14\textwidth}} +\toprule +\textbf{Name} & \textbf{Unit} & \textbf{Description} & \textbf{Default} \\ +\midrule +\endhead +radius & m & Radius of circle in (x,y,0) plane where neutrons are generated. & 0.1 \\ +yheight & m & Height of rectangle in (x,y,0) plane where neutrons are generated. & 0 \\ +xwidth & m & Width of rectangle in (x,y,0) plane where neutrons are generated. & 0 \\ +dist & m & Distance to target along z axis. & 0 \\ +focus\_xw & m & Width of target & .045 \\ +focus\_yh & m & Height of target & .12 \\ +E0 & meV & Mean energy of neutrons. & 0 \\ +dE & meV & Energy half spread of neutrons (flat or gaussian sigma). & 0 \\ +lambda0 & AA & Mean wavelength of neutrons. & 0 \\ +dlambda & AA & Wavelength half spread of neutrons. & 0 \\ +flux & 1/(s*cm**2*st*energy unit) & flux per energy unit, Angs or meV if flux=0, the source emits 1 in 4*PI whole space. & 1 \\ +gauss & 1 & Gaussian (1) or Flat (0) energy/wavelength distribution & 0 \\ +target\_index & 1 & relative index of component to focus at, e.g. next is +1 this is used to compute 'dist' automatically. & 1 \\ +\bottomrule +\end{longtable} + +\subsection*{Links} +\begin{itemize} + \item \href{run:/home/willend/willend-McCode/mcstas-comps/sources/Source_simple.comp}{Source code} for \texttt{Source\_simple.comp}. +\end{itemize} +\IfFileExists{Source_simple_static.tex}{\input{Source_simple_static.tex}}{} \ No newline at end of file diff --git a/docs/manuals/mcstas/union/AF_HB_1D_process.tex b/docs/manuals/mcstas/union/AF_HB_1D_process.tex new file mode 100644 index 000000000..cd4253157 --- /dev/null +++ b/docs/manuals/mcstas/union/AF_HB_1D_process.tex @@ -0,0 +1,58 @@ +\section{The \texttt{AF\_HB\_1D\_process} McStas Component} +1D Antiferromagnetic Heisenberg chain + +\subsection*{Identification} +\begin{itemize} + \item \textbf{Site:} + \item \textbf{Author:} Mads Bertelsen + \item \textbf{Origin:} University of Copenhagen + \item \textbf{Date:} 20.08.15 +\end{itemize} + +\subsection*{Description} +\begin{lstlisting} +1D Antiferromagnetic Heisenberg chain + +Part of the Union components, a set of components that work together and thus +sperates 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 like this one +2) These are gathered into material definitions using Union_make_material +3) Geometries are placed using Union_box / Union_cylinder, assigned a material +4) A Union_master component placed after all of the above + +Only in step 4 will any simulation happen, and per default all geometries +defined before the master, but after the previous will be simulated here. + +There is a dedicated manual available for the Union_components + + +Algorithm: +Described elsewhere +\end{lstlisting} + +\subsection*{Input parameters} +Parameters in \textbf{boldface} are required; the others are optional. + +\begin{longtable}{p{0.22\textwidth}p{0.12\textwidth}p{0.46\textwidth}p{0.14\textwidth}} +\toprule +\textbf{Name} & \textbf{Unit} & \textbf{Description} & \textbf{Default} \\ +\midrule +\endhead +atom\_distance & AA & Distance between atom's in chain & 1 \\ +number\_density & 1/AA\textasciicircum{}3 & Number of scatteres per volume & 0 \\ +unit\_cell\_volume & AA\textasciicircum{}3 & Unit cell volume (set either unit\_cell\_volume or number density) & 0 \\ +A\_constant & unitless & Constant from M\üller paper 1981, probably somewhere between 1 and 1.5 & 1 \\ +J\_interaction & meV & Exchange constant & 1 \\ +packing\_factor & 1 & How dense is the material compared to optimal 0-1 & 1 \\ +interact\_fraction & 1 & How large a part of the scattering events should use this process 0-1 (sum of all processes in material = 1) & -1 \\ +init & string & name of Union\_init component (typically "init", default) & "init" \\ +\bottomrule +\end{longtable} + +\subsection*{Links} +\begin{itemize} + \item \href{run:/home/willend/willend-McCode/mcstas-comps/union/AF_HB_1D_process.comp}{Source code} for \texttt{AF\_HB\_1D\_process.comp}. +\end{itemize} +\IfFileExists{AF_HB_1D_process_static.tex}{\input{AF_HB_1D_process_static.tex}}{} \ No newline at end of file diff --git a/docs/manuals/mcstas/union/IncoherentPhonon_process.tex b/docs/manuals/mcstas/union/IncoherentPhonon_process.tex new file mode 100644 index 000000000..255f08164 --- /dev/null +++ b/docs/manuals/mcstas/union/IncoherentPhonon_process.tex @@ -0,0 +1,61 @@ +\section{The \texttt{IncoherentPhonon\_process} McStas Component} +A component to simulate inelastic scattering in the incoherent approximation +Takes into account one, two, and three phonon scattering explicitly, +and multi-phonon scattering (with n\textgreater{}4) via the saddle point method + +\subsection*{Identification} +\begin{itemize} + \item \textbf{Site:} + \item \textbf{Author:} Victor Laliena + \item \textbf{Origin:} University of Zaragoza + \item \textbf{Date:} 06.11.2018 +\end{itemize} + +\subsection*{Description} +\begin{lstlisting} +Part of the Union components, a set of components that work together and thus +expects 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 like this one +2) These are gathered into material definitions using Union_make_material +3) Geometries are placed using Union_box / Union_cylinder, assigned a material +4) A Union_master component placed after all of the above + + +Algorithm: +Described elsewhere, see e.g. https://doi.org/10.3233/JNR-190117 +\end{lstlisting} + +\subsection*{Input parameters} +Parameters in \textbf{boldface} are required; the others are optional. + +\begin{longtable}{p{0.22\textwidth}p{0.12\textwidth}p{0.46\textwidth}p{0.14\textwidth}} +\toprule +\textbf{Name} & \textbf{Unit} & \textbf{Description} & \textbf{Default} \\ +\midrule +\endhead +T & K & Temperature & 394 \\ +density & g/cm3 & Material density & 6.0 \\ +M & amu & ion mass & 50.94 \\ +sigmaCoh & barns & Coherent scattering cross section & 0.0184 \\ +sigmaInc & barns & Incoherent scattering cross section & 5.08 \\ +DOSfn & string & Path to the file that contains the DoS & NULL \\ +nphe\_exact & 1 & Number of terms in the phonon expansion taken exact. Has to be between 1 and 3. & 1 \\ +nphe\_approx & 1 & Number of terms in the phonon expansion taken approximate. & 0 \\ +approx & 1 & Approximation type: 0 gaussian, 1 saddle point & 0 \\ +mph\_resum & 0/1 & Resumate the remaining terms of the phonon expansion via a saddle point: 0 No, 1 Yes & 0 \\ +nxs & 1 & Number of energy points at which the total cross sections are precomputed & 1000 \\ +kabsmin & A\textasciicircum{}-1 & Lower cut-off for the neutron wave-vector k & 0.1 \\ +kabsmax & A\textasciicircum{}-1 & Higher cut-off for the neutron wave-vector k & 25 \\ +interact\_fraction & 1 & How large a part of the scattering events should use this process 0-1 (sum of all processes in material = 1) & -1 \\ +init & string & Name of Union\_init component (typically "init", default) & "init" \\ +\bottomrule +\end{longtable} + +\subsection*{Links} +\begin{itemize} + \item \href{run:/home/willend/willend-McCode/mcstas-comps/union/IncoherentPhonon_process.comp}{Source code} for \texttt{IncoherentPhonon\_process.comp}. + \item See \textless{}a href="https://doi.org/10.3233/JNR-190117"\textgreater{}https://doi.org/10.3233/JNR-190117\textless{}/a\textgreater{} +\end{itemize} +\IfFileExists{IncoherentPhonon_process_static.tex}{\input{IncoherentPhonon_process_static.tex}}{} \ No newline at end of file diff --git a/docs/manuals/mcstas/union/Incoherent_process.tex b/docs/manuals/mcstas/union/Incoherent_process.tex new file mode 100644 index 000000000..51f2c2bd7 --- /dev/null +++ b/docs/manuals/mcstas/union/Incoherent_process.tex @@ -0,0 +1,58 @@ +\section{The \texttt{Incoherent\_process} McStas Component} +A sample component to separate geometry and phsysics + +\subsection*{Identification} +\begin{itemize} + \item \textbf{Site:} + \item \textbf{Author:} Mads Bertelsen + \item \textbf{Origin:} University of Copenhagen + \item \textbf{Date:} 20.08.15 +\end{itemize} + +\subsection*{Description} +\begin{lstlisting} +This Union_process is based on the Incoherent.comp component originally written +by Kim Lefmann and Kristian Nielsen + +Part of the Union components, a set of components that work together and thus +sperates 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 like this one +2) These are gathered into material definitions using Union_make_material +3) Geometries are placed using Union_box / Union_cylinder, assigned a material +4) A Union_master component placed after all of the above + +Only in step 4 will any simulation happen, and per default all geometries +defined before the master, but after the previous will be simulated here. + +There is a dedicated manual available for the Union_components + +Algorithm: +Described elsewhere +\end{lstlisting} + +\subsection*{Input parameters} +Parameters in \textbf{boldface} are required; the others are optional. + +\begin{longtable}{p{0.22\textwidth}p{0.12\textwidth}p{0.46\textwidth}p{0.14\textwidth}} +\toprule +\textbf{Name} & \textbf{Unit} & \textbf{Description} & \textbf{Default} \\ +\midrule +\endhead +sigma & barns & Incoherent scattering cross section & 5.08 \\ +f\_QE & 1 & Fraction of quasielastic scattering (rest is elastic) [1] & 0 \\ +gamma & meV & Lorentzian width of quasielastic broadening (HWHM) [1] & 0 \\ +packing\_factor & 1 & How dense is the material compared to optimal 0-1 & 1 \\ +unit\_cell\_volume & AA\textasciicircum{}3 & Unit cell volume & 13.8 \\ +interact\_fraction & 1 & How large a part of the scattering events should use this process 0-1 (sum of all processes in material = 1) & -1 \\ +init & string & name of Union\_init component (typically "init", default) & "init" \\ +\bottomrule +\end{longtable} + +\subsection*{Links} +\begin{itemize} + \item \href{run:/home/willend/willend-McCode/mcstas-comps/union/Incoherent_process.comp}{Source code} for \texttt{Incoherent\_process.comp}. + \item The test/example instrument \textless{}a href="../examples/Test\_Phonon.instr"\textgreater{}Test\_Phonon.instr\textless{}/a\textgreater{}. +\end{itemize} +\IfFileExists{Incoherent_process_static.tex}{\input{Incoherent_process_static.tex}}{} \ No newline at end of file diff --git a/docs/manuals/mcstas/union/Mirror_surface.tex b/docs/manuals/mcstas/union/Mirror_surface.tex new file mode 100644 index 000000000..c6d564c91 --- /dev/null +++ b/docs/manuals/mcstas/union/Mirror_surface.tex @@ -0,0 +1,62 @@ +\section{The \texttt{Mirror\_surface} McStas Component} +A Mirror surface process + +\subsection*{Identification} +\begin{itemize} + \item \textbf{Site:} + \item \textbf{Author:} Mads Bertelsen + \item \textbf{Origin:} University of Copenhagen + \item \textbf{Date:} 20.08.15 +\end{itemize} + +\subsection*{Description} +\begin{lstlisting} +This is a Union surface process that describes a supermirror or other surface +that only have specular reflection. The reflectivity can be given as a file +or using the standard reflectivity inputs. To use this in a simulation an +instance of this component should be defined in the instrument file, then +attatched to one or more geometries in their surface stacks pertaining to +each face of the geometry. + +Part of the Union components, a set of components that work together and thus +sperates 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 like this one +2) These are gathered into material definitions using Union_make_material +3) Geometries are placed using Union_box / Union_cylinder, assigned a material +4) A Union_master component placed after all of the above + +Only in step 4 will any simulation happen, and per default all geometries +defined before the master, but after the previous will be simulated here. + +There is a dedicated manual available for the Union_components + + +Algorithm: +Described elsewhere +\end{lstlisting} + +\subsection*{Input parameters} +Parameters in \textbf{boldface} are required; the others are optional. + +\begin{longtable}{p{0.22\textwidth}p{0.12\textwidth}p{0.46\textwidth}p{0.14\textwidth}} +\toprule +\textbf{Name} & \textbf{Unit} & \textbf{Description} & \textbf{Default} \\ +\midrule +\endhead +reflect & str & Name of reflectivity file. Format q(Angs-1) R(0-1) & 0 \\ +R0 & 1 & Low-angle reflectivity & 0.99 \\ +Qc & AA-1 & Critical scattering vector & 0.0219 \\ +alpha & AA & Slope of reflectivity & 6.07 \\ +m & 1 & m-value of material. Zero means completely absorbing. & 2 \\ +W & AA-1 & Width of supermirror cut-off & 0.003 \\ +init & string & Name of Union\_init component (typically "init", default) & "init" \\ +\bottomrule +\end{longtable} + +\subsection*{Links} +\begin{itemize} + \item \href{run:/home/willend/willend-McCode/mcstas-comps/union/Mirror_surface.comp}{Source code} for \texttt{Mirror\_surface.comp}. +\end{itemize} +\IfFileExists{Mirror_surface_static.tex}{\input{Mirror_surface_static.tex}}{} \ No newline at end of file diff --git a/docs/manuals/mcstas/union/NCrystal_process.tex b/docs/manuals/mcstas/union/NCrystal_process.tex new file mode 100644 index 000000000..cfe16c3f3 --- /dev/null +++ b/docs/manuals/mcstas/union/NCrystal_process.tex @@ -0,0 +1,72 @@ +\section{The \texttt{NCrystal\_process} McStas Component} +NCrystal\_process component for the Union framework. + +\subsection*{Identification} +\begin{itemize} + \item \textbf{Site:} + \item \textbf{Author:} NCrystal developers, converted to a Union component by Mads Bertelsen + \item \textbf{Origin:} NCrystal Developers (European Spallation Source ERIC and DTU Nutech) + \item \textbf{Date:} 20.08.15 +\end{itemize} + +\subsection*{Description} +\begin{lstlisting} +This process uses the NCrystal library as a Union process, see user documentation +for the NCrystal_sample.comp component for more information. The process only +uses the physics, as the Union components has a separate geometry system. +Absorption is also handled by Union, so any absorption output from NCrystal +is ignored. + +Part of the Union components, a set of components that work together and thus +sperates 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 like this one +2) These are gathered into material definitions using Union_make_material +3) Geometries are placed using Union_box / Union_cylinder, assigned a material +4) A Union_master component placed after all of the above + +Only in step 4 will any simulation happen, and per default all geometries +defined before the master, but after the previous will be simulated here. + +There is a dedicated manual available for the Union_components + + +Original header text for NCrystal_sample.comp: +McStas sample component for the NCrystal scattering library. Find more +information at the NCrystal +wiki. In particular, browse the available datafiles at Data-library +and read about format of the configuration string expected in the "cfg" +parameter at Using-NCrystal. + +

    NCrystal is available under the Apache 2.0 license. Depending +on the configuration choices, optional NCrystal modules under different +licenses might be enabled - see About for more +details. + +Algorithm: +Described elsewhere +\end{lstlisting} + +\subsection*{Input parameters} +Parameters in \textbf{boldface} are required; the others are optional. + +\begin{longtable}{p{0.22\textwidth}p{0.12\textwidth}p{0.46\textwidth}p{0.14\textwidth}} +\toprule +\textbf{Name} & \textbf{Unit} & \textbf{Description} & \textbf{Default} \\ +\midrule +\endhead +cfg & str & NCrystal material configuration string (details \textless{}a href="https://github.com/mctools/ncrystal/wiki/Using-NCrystal"\textgreater{}on this page\textless{}/a\textgreater{}). & "" \\ +packing\_factor & 1 & Material packing factor & 1 \\ +interact\_fraction & 1 & How large a part of the scattering events should use this process 0-1 (sum of all processes in material = 1) & -1 \\ +init & string & Name of Union\_init component (typically "init", default) & "init" \\ +\bottomrule +\end{longtable} + +\subsection*{Links} +\begin{itemize} + \item \href{run:/home/willend/willend-McCode/mcstas-comps/union/NCrystal_process.comp}{Source code} for \texttt{NCrystal\_process.comp}. +\end{itemize} +\IfFileExists{NCrystal_process_static.tex}{\input{NCrystal_process_static.tex}}{} \ No newline at end of file diff --git a/docs/manuals/mcstas/union/Non_process.tex b/docs/manuals/mcstas/union/Non_process.tex new file mode 100644 index 000000000..44a4f90bb --- /dev/null +++ b/docs/manuals/mcstas/union/Non_process.tex @@ -0,0 +1,55 @@ +\section{The \texttt{Non\_process} McStas Component} +This process dos nothing and is used for testing + +\subsection*{Identification} +\begin{itemize} + \item \textbf{Site:} + \item \textbf{Author:} Mads Bertelsen + \item \textbf{Origin:} ESS DMSC + \item \textbf{Date:} 20.08.15 +\end{itemize} + +\subsection*{Description} +\begin{lstlisting} +This process dos nothing and is used for testing + +Part of the Union components, a set of components that work together and thus +sperates 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 like this one +2) These are gathered into material definitions using Union_make_material +3) Geometries are placed using Union_box / Union_cylinder, assigned a material +4) A Union_master component placed after all of the above + +Only in step 4 will any simulation happen, and per default all geometries +defined before the master, but after the previous will be simulated here. + +There is a dedicated manual available for the Union_components + + +Algorithm: +Described elsewhere +\end{lstlisting} + +\subsection*{Input parameters} +Parameters in \textbf{boldface} are required; the others are optional. + +\begin{longtable}{p{0.22\textwidth}p{0.12\textwidth}p{0.46\textwidth}p{0.14\textwidth}} +\toprule +\textbf{Name} & \textbf{Unit} & \textbf{Description} & \textbf{Default} \\ +\midrule +\endhead +sigma & barns & Scattering cross section & 5.08 \\ +packing\_factor & 1 & How dense is the material compared to optimal 0-1 & 1 \\ +unit\_cell\_volume & AA\textasciicircum{}3 & Unit cell volume & 13.8 \\ +interact\_fraction & 1 & How large a part of the scattering events should use this process 0-1 (sum of all processes in material = 1) & -1 \\ +init & string & name of Union\_init component (typically "init", default) & "init" \\ +\bottomrule +\end{longtable} + +\subsection*{Links} +\begin{itemize} + \item \href{run:/home/willend/willend-McCode/mcstas-comps/union/Non_process.comp}{Source code} for \texttt{Non\_process.comp}. +\end{itemize} +\IfFileExists{Non_process_static.tex}{\input{Non_process_static.tex}}{} \ No newline at end of file diff --git a/docs/manuals/mcstas/union/PhononSimple_process.tex b/docs/manuals/mcstas/union/PhononSimple_process.tex new file mode 100644 index 000000000..d1cecf658 --- /dev/null +++ b/docs/manuals/mcstas/union/PhononSimple_process.tex @@ -0,0 +1,63 @@ +\section{The \texttt{PhononSimple\_process} McStas Component} +Port of PhononSimple to Union components + +\subsection*{Identification} +\begin{itemize} + \item \textbf{Site:} + \item \textbf{Author:} Anders Komar Ravn, based on template by Mads Bertelsen and Phonon\_Simple + \item \textbf{Origin:} University of Copenhagen + \item \textbf{Date:} 20.08.15 +\end{itemize} + +\subsection*{Description} +\begin{lstlisting} +Port of the PhononSimple component from the McStas library to the Union +components. + +Part of the Union components, a set of components that work together and thus +sperates 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 like this one +2) These are gathered into material definitions using Union_make_material +3) Geometries are placed using Union_box / Union_cylinder, assigned a material +4) A Union_master component placed after all of the above + +Only in step 4 will any simulation happen, and per default all geometries +defined before the master, but after the previous will be simulated here. + +There is a dedicated manual available for the Union_components + + +Algorithm: +Described elsewhere +\end{lstlisting} + +\subsection*{Input parameters} +Parameters in \textbf{boldface} are required; the others are optional. + +\begin{longtable}{p{0.22\textwidth}p{0.12\textwidth}p{0.46\textwidth}p{0.14\textwidth}} +\toprule +\textbf{Name} & \textbf{Unit} & \textbf{Description} & \textbf{Default} \\ +\midrule +\endhead +packing\_factor & 1 & How dense is the material compared to optimal 0-1 & 1 \\ +unit\_cell\_volume & AA\textasciicircum{}3 & Unit cell volume & 13.8 \\ +interact\_fraction & 1 & How large a part of the scattering events should use this process 0-1 (sum of all processes in material = 1) & -1 \\ +a & AA & fcc lattice constant & 4.95 \\ +c & meV*AA & Velocity of sound & 10 \\ +M & units & Nucleus atomic mass in units & 207.2 \\ +b & fm & Scattring length & 9.4 \\ +T & K & Temperature & 290 \\ +DW & 1 & Debye-Waller factor & 1 \\ +longitudinal & 0/1 & Simulate longitudinal branches & 1 \\ +transverse & 0/1 & Simulate transverse branches & 1 \\ +init & string & Name of Union\_init component (typically "init", default) & "init" \\ +\bottomrule +\end{longtable} + +\subsection*{Links} +\begin{itemize} + \item \href{run:/home/willend/willend-McCode/mcstas-comps/union/PhononSimple_process.comp}{Source code} for \texttt{PhononSimple\_process.comp}. +\end{itemize} +\IfFileExists{PhononSimple_process_static.tex}{\input{PhononSimple_process_static.tex}}{} \ No newline at end of file diff --git a/docs/manuals/mcstas/union/Powder_process.tex b/docs/manuals/mcstas/union/Powder_process.tex new file mode 100644 index 000000000..6bfc076de --- /dev/null +++ b/docs/manuals/mcstas/union/Powder_process.tex @@ -0,0 +1,63 @@ +\section{The \texttt{Powder\_process} McStas Component} +Port of the PowderN process to the Union components + +\subsection*{Identification} +\begin{itemize} + \item \textbf{Site:} + \item \textbf{Author:} Mads Bertelsen + \item \textbf{Origin:} University of Copenhagen + \item \textbf{Date:} 20.08.15 +\end{itemize} + +\subsection*{Description} +\begin{lstlisting} +This Union_process is based on the PowderN.comp component originally written +by P. Willendrup, L. Chapon, K. Lefmann, A.B.Abrahamsen, N.B.Christensen, +E.M.Lauridsen. + +Part of the Union components, a set of components that work together and thus +sperates 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 like this one +2) These are gathered into material definitions using Union_make_material +3) Geometries are placed using Union_box / Union_cylinder, assigned a material +4) A Union_master component placed after all of the above + +Only in step 4 will any simulation happen, and per default all geometries +defined before the master, but after the previous will be simulated here. + +There is a dedicated manual available for the Union_components +Algorithm: +Described elsewhere +\end{lstlisting} + +\subsection*{Input parameters} +Parameters in \textbf{boldface} are required; the others are optional. + +\begin{longtable}{p{0.22\textwidth}p{0.12\textwidth}p{0.46\textwidth}p{0.14\textwidth}} +\toprule +\textbf{Name} & \textbf{Unit} & \textbf{Description} & \textbf{Default} \\ +\midrule +\endhead +reflections & string & Input file for reflections. No scattering if NULL or "" [string] & "NULL" \\ +packing\_factor & 1 & How dense is the material compared to optimal 0-1 & 1 \\ +Vc & AA\textasciicircum{}3 & Volume of unit cell=nb atoms per cell/density of atoms. & 0 \\ +delta\_d\_d & 0/1 & Global relative delta\_d\_d/d broadening when the 'w' column is not available. Use 0 if ideal. & 0 \\ +DW & 1 & Global Debye-Waller factor when the 'DW' column is not available. Use 1 if included in F2 & 0 \\ +nb\_atoms & 1 & Number of sub-unit per unit cell, that is ratio of sigma for chemical formula to sigma per unit cell & 1 \\ +d\_phi & deg & Angle corresponding to the vertical angular range to focus to, e.g. detector height. 0 for no focusing. & 0 \\ +density & g/cm\textasciicircum{}3 & Density of material. rho=density/weight/1e24*N\_A. & 0 \\ +weight & g/mol & Atomic/molecular weight of material. & 0 \\ +barns & 1 & Flag to indicate if |F|\textasciicircum{}2 from 'reflections' is in barns or fm\textasciicircum{}2 (barns=1 for laz, barns=0 for lau type files). & 1 \\ +Strain & ppm & Global relative delta\_d\_d/d shift when the 'Strain' column is not available. Use 0 if ideal. & 0 \\ +interact\_fraction & 1 & How large a part of the scattering events should use this process 0-1 (sum of all processes in material = 1) & -1 \\ +format & no quotes & Name of the format, or list of column indexes (see Description). & \{0, 0, 0, 0, 0, 0, 0, 0, 0\} \\ +\bottomrule +\end{longtable} + +\subsection*{Links} +\begin{itemize} + \item \href{run:/home/willend/willend-McCode/mcstas-comps/union/Powder_process.comp}{Source code} for \texttt{Powder\_process.comp}. +\end{itemize} +\IfFileExists{Powder_process_static.tex}{\input{Powder_process_static.tex}}{} \ No newline at end of file diff --git a/docs/manuals/mcstas/union/Single_crystal_process.tex b/docs/manuals/mcstas/union/Single_crystal_process.tex new file mode 100644 index 000000000..c5481c701 --- /dev/null +++ b/docs/manuals/mcstas/union/Single_crystal_process.tex @@ -0,0 +1,79 @@ +\section{The \texttt{Single\_crystal\_process} McStas Component} +Port of the Single\_crystal component to the Union components + +\subsection*{Identification} +\begin{itemize} + \item \textbf{Site:} + \item \textbf{Author:} Mads Bertelsen + \item \textbf{Origin:} University of Copenhagen + \item \textbf{Date:} 20.08.15 +\end{itemize} + +\subsection*{Description} +\begin{lstlisting} +This Union_process is based on the Single_crystal.comp component originally +written by Kristian Nielsen + +Part of the Union components, a set of components that work together and thus +sperates 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 like this one +2) These are gathered into material definitions using Union_make_material +3) Geometries are placed using Union_box / Union_cylinder, assigned a material +4) A Union_master component placed after all of the above + +Only in step 4 will any simulation happen, and per default all geometries +defined before the master, but after the previous will be simulated here. + +There is a dedicated manual available for the Union_components + +Algorithm: +Described elsewhere +\end{lstlisting} + +\subsection*{Input parameters} +Parameters in \textbf{boldface} are required; the others are optional. + +\begin{longtable}{p{0.22\textwidth}p{0.12\textwidth}p{0.46\textwidth}p{0.14\textwidth}} +\toprule +\textbf{Name} & \textbf{Unit} & \textbf{Description} & \textbf{Default} \\ +\midrule +\endhead +reflections & string & File name containing structure factors of reflections. Use empty ("") or NULL for incoherent scattering only & 0 \\ +delta\_d\_d & 1 & Lattice spacing variance, gaussian RMS & 1e-4 \\ +mosaic & arc minutes & Crystal mosaic (isotropic), gaussian RMS. Puts the crystal in the isotropic mosaic model state, thus disregarding other mosaicity parameters. & -1 \\ +mosaic\_a & arc minutes & Horizontal (rotation around lattice vector a) mosaic (anisotropic), gaussian RMS. Put the crystal in the anisotropic crystal vector state. I.e. model mosaicity through rotation around the crystal lattice vectors. Has precedence over in-plane mosaic model. & -1 \\ +mosaic\_b & arc minutes & Vertical (rotation around lattice vector b) mosaic (anisotropic), gaussian RMS. & -1 \\ +mosaic\_c & arc minutes & Out-of-plane (Rotation around lattice vector c) mosaic (anisotropic), gaussian RMS & -1 \\ +mosaic\_AB & arc\_minutes, arc\_minutes,1, 1, 1, 1, 1, 1 & In Plane mosaic rotation and plane vectors (anisotropic), mosaic\_A, mosaic\_B, A\_h,A\_k,A\_l, B\_h,B\_k,B\_l. Puts the crystal in the in-plane mosaic state. Vectors A and B define plane in which the crystal roation is defined, and mosaic\_A, mosaic\_B, denotes the resp. mosaicities (gaussian RMS) with respect to the two reflections chosen by A and B (Miller indices). & \{0,0, 0,0,0, 0,0,0\} \\ +recip\_cell & 1 & Choice of direct/reciprocal (0/1) unit cell definition & 0 \\ +barns & 1 & Flag to indicate if |F|\textasciicircum{}2 from 'reflections' is in barns or fm\textasciicircum{}2. barns=1 for laz and isotropic constant elastic scattering (reflections=NULL), barns=0 for lau type files & 0 \\ +ax & AA or AA\textasciicircum{}-1 & Coordinates of first (direct/recip) unit cell vector & 0 \\ +ay & AA or AA\textasciicircum{}-1 & a on y axis & 0 \\ +az & AA or AA\textasciicircum{}-1 & a on z axis & 0 \\ +bx & AA or AA\textasciicircum{}-1 & Coordinates of second (direct/recip) unit cell vector & 0 \\ +by & AA or AA\textasciicircum{}-1 & b on y axis & 0 \\ +bz & AA or AA\textasciicircum{}-1 & b on z axis & 0 \\ +cx & AA or AA\textasciicircum{}-1 & Coordinates of third (direct/recip) unit cell vector & 0 \\ +cy & AA or AA\textasciicircum{}-1 & c on y axis & 0 \\ +cz & AA or AA\textasciicircum{}-1 & c on z axis & 0 \\ +aa & deg & Unit cell angles alpha, beta and gamma. Then uses norms of vectors a,b and c as lattice parameters & 0 \\ +bb & deg & Beta angle & 0 \\ +cc & deg & Gamma angle & 0 \\ +order & 1 & Limit multiple scattering up to given order (0: all, 1: first, 2: second, ...) (Not supported in Union) & 0 \\ +RX & m & Radius of lattice curvature along X. flat when 0. & 0 \\ +RY & m & Radius of lattice curvature along Y. flat when 0. & 0 \\ +RZ & m & Radius of lattice curvature along Z. flat when 0. & 0 \\ +powder & 1 & Flag to indicate powder mode, for simulation of Debye-Scherrer cones via random crystallite orientation. A powder texture can be approximated with 0 & 0 \\ +PG & 1 & Flag to indicate "Pyrolytic Graphite" mode, only meaningful with choice of Graphite.lau, models PG crystal. A powder texture can be approximated with 0 & 0 \\ +interact\_fraction & 1 & How large a part of the scattering events should use this process 0-1 (sum of all processes in material = 1) & -1 \\ +packing\_factor & 1 & How dense is the material compared to optimal 0-1 & 1 \\ +\bottomrule +\end{longtable} + +\subsection*{Links} +\begin{itemize} + \item \href{run:/home/willend/willend-McCode/mcstas-comps/union/Single_crystal_process.comp}{Source code} for \texttt{Single\_crystal\_process.comp}. +\end{itemize} +\IfFileExists{Single_crystal_process_static.tex}{\input{Single_crystal_process_static.tex}}{} \ No newline at end of file diff --git a/docs/manuals/mcstas/union/Template_process.tex b/docs/manuals/mcstas/union/Template_process.tex new file mode 100644 index 000000000..57a4a00e4 --- /dev/null +++ b/docs/manuals/mcstas/union/Template_process.tex @@ -0,0 +1,58 @@ +\section{The \texttt{Template\_process} McStas Component} +A template process for building Union processes + +\subsection*{Identification} +\begin{itemize} + \item \textbf{Site:} + \item \textbf{Author:} Mads Bertelsen + \item \textbf{Origin:} University of Copenhagen + \item \textbf{Date:} 20.08.15 +\end{itemize} + +\subsection*{Description} +\begin{lstlisting} +This is a template for a new contributor to create their own physical process. +The comments in this file are meant to teach the user about creating their own +process file, rather than explaining this one. For comments on how this code works, +look in the Incoherent_process.comp. + +Part of the Union components, a set of components that work together and thus +sperates 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 like this one +2) These are gathered into material definitions using Union_make_material +3) Geometries are placed using Union_box / Union_cylinder, assigned a material +4) A Union_master component placed after all of the above + +Only in step 4 will any simulation happen, and per default all geometries +defined before the master, but after the previous will be simulated here. + +There is a dedicated manual available for the Union_components + + +Algorithm: +Described elsewhere +\end{lstlisting} + +\subsection*{Input parameters} +Parameters in \textbf{boldface} are required; the others are optional. + +\begin{longtable}{p{0.22\textwidth}p{0.12\textwidth}p{0.46\textwidth}p{0.14\textwidth}} +\toprule +\textbf{Name} & \textbf{Unit} & \textbf{Description} & \textbf{Default} \\ +\midrule +\endhead +sigma & barns & Incoherent scattering cross section & 5.08 \\ +packing\_factor & 1 & How dense is the material compared to optimal 0-1 & 1 \\ +unit\_cell\_volume & AA\textasciicircum{}3 & Unit\_cell\_volume & 13.8 \\ +interact\_fraction & 1 & How large a part of the scattering events should use this process 0-1 (sum of all processes in material = 1) & -1 \\ +init & string & Name of Union\_init component (typically "init", default) & "init" \\ +\bottomrule +\end{longtable} + +\subsection*{Links} +\begin{itemize} + \item \href{run:/home/willend/willend-McCode/mcstas-comps/union/Template_process.comp}{Source code} for \texttt{Template\_process.comp}. +\end{itemize} +\IfFileExists{Template_process_static.tex}{\input{Template_process_static.tex}}{} \ No newline at end of file diff --git a/docs/manuals/mcstas/union/Template_surface.tex b/docs/manuals/mcstas/union/Template_surface.tex new file mode 100644 index 000000000..797a0747f --- /dev/null +++ b/docs/manuals/mcstas/union/Template_surface.tex @@ -0,0 +1,64 @@ +\section{The \texttt{Template\_surface} McStas Component} +A template process for building Union surface processes + +\subsection*{Identification} +\begin{itemize} + \item \textbf{Site:} + \item \textbf{Author:} Mads Bertelsen + \item \textbf{Origin:} University of Copenhagen + \item \textbf{Date:} 20.08.15 +\end{itemize} + +\subsection*{Description} +\begin{lstlisting} +This is a template for a new contributor to create their own surface process. +The comments in this file are meant to teach the user about creating their own +surface component, rather than explaining this one. For comments on how this +code works, look in the Mirror_surface.comp. +To add a new surface process, three changes are needed in other files: +Add entry in surface enum (match your process) +Add storage struct in the union-lib.c file +Add the surface function in inion-suffix.c switch + +Part of the Union components, a set of components that work together and thus +sperates 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 like this one +2) These are gathered into material definitions using Union_make_material +3) Geometries are placed using Union_box / Union_cylinder, assigned a material +4) A Union_master component placed after all of the above + +Only in step 4 will any simulation happen, and per default all geometries +defined before the master, but after the previous will be simulated here. + +There is a dedicated manual available for the Union_components + + +Algorithm: +Described elsewhere +\end{lstlisting} + +\subsection*{Input parameters} +Parameters in \textbf{boldface} are required; the others are optional. + +\begin{longtable}{p{0.22\textwidth}p{0.12\textwidth}p{0.46\textwidth}p{0.14\textwidth}} +\toprule +\textbf{Name} & \textbf{Unit} & \textbf{Description} & \textbf{Default} \\ +\midrule +\endhead +reflect & str & Name of reflectivity file. Format q(Angs-1) R(0-1) & 0 \\ +R0 & 1 & Low-angle reflectivity & 0.99 \\ +Qc & AA-1 & Critical scattering vector & 0.0219 \\ +alpha & AA & Slope of reflectivity & 6.07 \\ +m & 1 & m-value of material. Zero means completely absorbing. & 2 \\ +W & AA-1 & Width of supermirror cut-off & 0.003 \\ +init & string & Name of Union\_init component (typically "init", default) & "init" \\ +\bottomrule +\end{longtable} + +\subsection*{Links} +\begin{itemize} + \item \href{run:/home/willend/willend-McCode/mcstas-comps/union/Template_surface.comp}{Source code} for \texttt{Template\_surface.comp}. +\end{itemize} +\IfFileExists{Template_surface_static.tex}{\input{Template_surface_static.tex}}{} \ No newline at end of file diff --git a/docs/manuals/mcstas/union/Texture_process.tex b/docs/manuals/mcstas/union/Texture_process.tex new file mode 100644 index 000000000..a5bc3e3ad --- /dev/null +++ b/docs/manuals/mcstas/union/Texture_process.tex @@ -0,0 +1,54 @@ +\section{The \texttt{Texture\_process} McStas Component} +Component for simulating textured powder in Union components + +\subsection*{Identification} +\begin{itemize} + \item \textbf{Site:} + \item \textbf{Author:} Victor Laliena + \item \textbf{Origin:} University of Zaragoza + \item \textbf{Date:} 2018-2019 +\end{itemize} + +\subsection*{Description} +\begin{lstlisting} +Part of the Union components, a set of components that work together and thus +seperates geometry and physics within McStas. +The use of this component requires other components to be used. + +This component deals with the coherent elastic scattering on a textured material. +The texture is described through the coefficients of the generalized Fourier transform +of the Orientation Distribution Function (ODF). +The component expects as input two files, one containing the Fourier coefficients of the +ODF and another one with crystallographic and physical information. + + +Algorithm: +Described elsewhere, see e.g. https://doi.org/10.3233/JNR-190117 +\end{lstlisting} + +\subsection*{Input parameters} +Parameters in \textbf{boldface} are required; the others are optional. + +\begin{longtable}{p{0.22\textwidth}p{0.12\textwidth}p{0.46\textwidth}p{0.14\textwidth}} +\toprule +\textbf{Name} & \textbf{Unit} & \textbf{Description} & \textbf{Default} \\ +\midrule +\endhead +crystal\_fn & s & Path to a file (.laz) containing crystallographic and physical information & 0 \\ +fcoef\_fn & s & Path to a text file containing the Fourier coefficients of the ODF. It must have five columns: l m n Real(Clmn) Imag(Clmn) & 0 \\ +lmax\_user & 1 & Cut-off for the Fourier series. If negative, the program uses all the coefficients provided in the file fcoef\_fn & -1 \\ +barns & 1 & Flag to indicate if |F|\textasciicircum{}2 from 'crystal\_fn' is in barns or fm\textasciicircum{}2. barns=1 for laz and isotropic constant elastic scattering (reflections=NULL), barns=0 for lau type files & 0 \\ +order & 1 & Limit scattering to this order & 0 \\ +interact\_fraction & 1 & How large a part of the scattering events should use this process 0-1 (sum of all processes in material = 1) & -1 \\ +packing\_factor & 1 & How dense is the material compared to optimal 0-1 & 1 \\ +maxNeutronSaved & 1 & Maximum number of neutron cross sections saved for reusing & 1 \\ +init & string & Name of Union\_init component (typically "init", default) & "init" \\ +\bottomrule +\end{longtable} + +\subsection*{Links} +\begin{itemize} + \item \href{run:/home/willend/willend-McCode/mcstas-comps/union/Texture_process.comp}{Source code} for \texttt{Texture\_process.comp}. + \item See \textless{}a href="https://doi.org/10.3233/JNR-190117"\textgreater{}https://doi.org/10.3233/JNR-190117\textless{}/a\textgreater{} +\end{itemize} +\IfFileExists{Texture_process_static.tex}{\input{Texture_process_static.tex}}{} \ No newline at end of file diff --git a/docs/manuals/mcstas/union/Union_abs_logger_1D_space.tex b/docs/manuals/mcstas/union/Union_abs_logger_1D_space.tex new file mode 100644 index 000000000..428a215c4 --- /dev/null +++ b/docs/manuals/mcstas/union/Union_abs_logger_1D_space.tex @@ -0,0 +1,83 @@ +\section{The \texttt{Union\_abs\_logger\_1D\_space} McStas Component} +Logger of absorption along 1D space + +\subsection*{Identification} +\begin{itemize} + \item \textbf{Site:} + \item \textbf{Author:} Mads Bertelsen + \item \textbf{Origin:} ESS DMSC + \item \textbf{Date:} 19.06.20 +\end{itemize} + +\subsection*{Description} +\begin{lstlisting} +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, assigned a material +4) Logger and conditional components can be placed which will record what happens +5) A Union_master component placed after all of the above + +Only in step 5 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 + +This component is an absorption logger, and thus placed in point 4) above. + +A absorption logger will log something for each absorption event happening +in the geometry or geometries on which it is attached. These are specified +in the target_geometry string. By leaving it blank, all geometries are +logged, even the ones not defined at this point in the instrument file. +Multiple geometries are specified as a comma separated list. + +This absorption logger stores the absorbed weight as a function of height +in a histogram. It is expected this abs logger will often be attached to a +cylindrical geometry, and so if the abs logger has the same position and +orientation it will measure absorption along the axis of symmetry. This +makes it easy to create simple tubes, and it is even possible to include +the detector casing and similar to improve the realism of the simulation. + +This absorption logger needs to be placed in space, the position is recorded in +the coordinate system of the logger component. + +It is possible to attach one or more conditional components to this absorption +logger. Such a conditional component would impose a condition on the state of +the neutron after the Union_master component that executes the simulation, +and the absorption logger will only record the event if this condition is true. + +To use the logger_conditional_extend function, set it to some integer value n +and make and extend section to the master component that runs the geometry. +In this extend function, logger_conditional_extend[n] is 1 if the conditional +stack evaluated to true, 0 if not. This way one can check what rays is logged +using regular McStas monitors. Only works if a conditional is applied to this +logger. +\end{lstlisting} + +\subsection*{Input parameters} +Parameters in \textbf{boldface} are required; the others are optional. + +\begin{longtable}{p{0.22\textwidth}p{0.12\textwidth}p{0.46\textwidth}p{0.14\textwidth}} +\toprule +\textbf{Name} & \textbf{Unit} & \textbf{Description} & \textbf{Default} \\ +\midrule +\endhead +target\_geometry & string & Comma separated list of geometry names that will be logged, leave empty for all volumes (even not defined yet) & "NULL" \\ +\textbf{yheight} & m & height of absorption logger & \\ +n & 1 & number of bins along y & 100 \\ +filename & string & Filename of produced data file & "NULL" \\ +order\_total & 1 & Only log rays that have scattered n times, -1 for all orders & -1 \\ +order\_volume & 1 & Only log rays that have scattered n times in the same geometry, -1 for all orders & -1 \\ +logger\_conditional\_extend\_index & 1 & If a conditional is used with this logger, the result of each conditional calculation can be made available in extend as a array called "logger\_conditional\_extend", and one would then access logger\_conditional\_extend[n] if logger\_conditional\_extend\_index is set to n & -1 \\ +init & string & name of Union\_init component (typically "init", default) & "init" \\ +\bottomrule +\end{longtable} + +\subsection*{Links} +\begin{itemize} + \item \href{run:/home/willend/willend-McCode/mcstas-comps/union/Union_abs_logger_1D_space.comp}{Source code} for \texttt{Union\_abs\_logger\_1D\_space.comp}. +\end{itemize} +\IfFileExists{Union_abs_logger_1D_space_static.tex}{\input{Union_abs_logger_1D_space_static.tex}}{} \ No newline at end of file diff --git a/docs/manuals/mcstas/union/Union_abs_logger_1D_space_event.tex b/docs/manuals/mcstas/union/Union_abs_logger_1D_space_event.tex new file mode 100644 index 000000000..221140977 --- /dev/null +++ b/docs/manuals/mcstas/union/Union_abs_logger_1D_space_event.tex @@ -0,0 +1,93 @@ +\section{The \texttt{Union\_abs\_logger\_1D\_space\_event} McStas Component} +Logger of absorption in 1D space stored as events + +\subsection*{Identification} +\begin{itemize} + \item \textbf{Site:} + \item \textbf{Author:} Mads Bertelsen + \item \textbf{Origin:} ESS DMSC + \item \textbf{Date:} 19.06.20 +\end{itemize} + +\subsection*{Description} +\begin{lstlisting} +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, assigned a material +4) Logger and conditional components can be placed which will record what happens +5) A Union_master component placed after all of the above + +Only in step 5 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 + +This component is an absorption logger, and thus placed in point 4) above. + +A absorption logger will log something for each absorption event happening +in the geometry or geometries on which it is attached. These are specified +in the target_geometry string. By leaving it blank, all geometries are +logged, even the ones not defined at this point in the instrument file. +Multiple geometries are specified as a comma separated list. + +This absorption logger stores the absorbed weight as an event including a +pixel_id. The pixel_id is found from the y coordinate of the event position +in the coordinate system of the absorption logger and is binned to a +pixel_id which is necessary when importing the data in Mantid. The y +coordinate corresponds to the height and is natural when attaching this +absorption logger to a cylindrical geometry, as it will record position +along the axis of symmetry, and thus behave like a detector tube. When using +several of these absorption loggers, they will internally avoid reusing the +same pixel_id, but if any other mantid detectors are used, these need to have +pixel_ids larger than the maximum used by these loggers. Each of these components +uses three times the number of bins, as it internally is a 3xn histogram where +only the center line have data, as this is much easier to import in Mantid. +The ocmponent uses Monitor_nD functions for trace and mcdisplay, and for this +reason it can write the xml file required to transfer the detector geometry +to Mantid. + +This absorption logger needs to be placed in space, the position is recorded in +the coordinate system of the logger component. + +It is possible to attach one or more conditional components to this absorption +logger. Such a conditional component would impose a condition on the state of +the neutron after the Union_master component that executes the simulation, +and the absorption logger will only record the event if this condition is true. + +To use the logger_conditional_extend function, set it to some integer value n +and make and extend section to the master component that runs the geometry. +In this extend function, logger_conditional_extend[n] is 1 if the conditional +stack evaluated to true, 0 if not. This way one can check what rays is logged +using regular McStas monitors. Only works if a conditional is applied to this +logger. +\end{lstlisting} + +\subsection*{Input parameters} +Parameters in \textbf{boldface} are required; the others are optional. + +\begin{longtable}{p{0.22\textwidth}p{0.12\textwidth}p{0.46\textwidth}p{0.14\textwidth}} +\toprule +\textbf{Name} & \textbf{Unit} & \textbf{Description} & \textbf{Default} \\ +\midrule +\endhead +target\_geometry & string & Comma separated list of geometry names that will be logged, leave empty for all volumes (even not defined yet) & "NULL" \\ +\textbf{yheight} & m & Height of absorption logger & \\ +\textbf{n} & 1 & Number of bins along y & \\ +fake\_event & 1 & Number of fake events to add, circumvents issue with empty event lists with MPI & 0 \\ +filename & string & Filename of produced data file & "NULL" \\ +order\_total & 1 & Only log rays that have scattered n times, -1 for all orders & -1 \\ +order\_volume & 1 & Only log rays that have scattered n times in the same geometry, -1 for all orders & -1 \\ +logger\_conditional\_extend\_index & 1 & If a conditional is used with this logger, the result of each conditional calculation can be made available in extend as a array called "logger\_conditional\_extend", and one would then access logger\_conditional\_extend[n] if logger\_conditional\_extend\_index is set to n & -1 \\ +init & string & name of Union\_init component (typically "init", default) & "init" \\ +\bottomrule +\end{longtable} + +\subsection*{Links} +\begin{itemize} + \item \href{run:/home/willend/willend-McCode/mcstas-comps/union/Union_abs_logger_1D_space_event.comp}{Source code} for \texttt{Union\_abs\_logger\_1D\_space\_event.comp}. +\end{itemize} +\IfFileExists{Union_abs_logger_1D_space_event_static.tex}{\input{Union_abs_logger_1D_space_event_static.tex}}{} \ No newline at end of file diff --git a/docs/manuals/mcstas/union/Union_abs_logger_1D_space_tof.tex b/docs/manuals/mcstas/union/Union_abs_logger_1D_space_tof.tex new file mode 100644 index 000000000..17e5ce05d --- /dev/null +++ b/docs/manuals/mcstas/union/Union_abs_logger_1D_space_tof.tex @@ -0,0 +1,86 @@ +\section{The \texttt{Union\_abs\_logger\_1D\_space\_tof} McStas Component} +Logger of absorption along 1D space and 1D time of flight + +\subsection*{Identification} +\begin{itemize} + \item \textbf{Site:} + \item \textbf{Author:} Mads Bertelsen + \item \textbf{Origin:} ESS DMSC + \item \textbf{Date:} 19.06.20 +\end{itemize} + +\subsection*{Description} +\begin{lstlisting} +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, assigned a material +4) Logger and conditional components can be placed which will record what happens +5) A Union_master component placed after all of the above + +Only in step 5 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 + +This component is an absorption logger, and thus placed in point 4) above. + +A absorption logger will log something for each absorption event happening +in the geometry or geometries on which it is attached. These are specified +in the target_geometry string. By leaving it blank, all geometries are +logged, even the ones not defined at this point in the instrument file. +Multiple geometries are specified as a comma separated list. + +This absorption logger records the absorbed intensity as a function of the +y position and time of flight. One common use could be to attach this +absorption logger to a cylindrical helium-3 volume, creating a model of +the detector volume. In such a detector, only the y position of the event +is known, and as such creates a similar dataset. + +This absorption logger needs to be placed in space, the position is recorded in +the coordinate system of the logger component. Note the detection is along the +y axis of the component, so it is natural to place it relative to a cylinder. + +It is possible to attach one or more conditional components to this absorption +logger. Such a conditional component would impose a condition on the state of +the neutron after the Union_master component that executes the simulation, +and the absorption logger will only record the event if this condition is true. + +To use the logger_conditional_extend function, set it to some integer value n +and make and extend section to the master component that runs the geometry. +In this extend function, logger_conditional_extend[n] is 1 if the conditional +stack evaluated to true, 0 if not. This way one can check what rays is logged +using regular McStas monitors. Only works if a conditional is applied to this +logger. +\end{lstlisting} + +\subsection*{Input parameters} +Parameters in \textbf{boldface} are required; the others are optional. + +\begin{longtable}{p{0.22\textwidth}p{0.12\textwidth}p{0.46\textwidth}p{0.14\textwidth}} +\toprule +\textbf{Name} & \textbf{Unit} & \textbf{Description} & \textbf{Default} \\ +\midrule +\endhead +target\_geometry & string & Comma separated list of geometry names that will be logged, leave empty for all volumes (even not defined yet) & "NULL" \\ +\textbf{yheight} & m & height of absorption logger & \\ +n & 1 & number of bins for spatial axis & 0.2 \\ +time\_min & s & Minimum time recorded & 0 \\ +time\_max & s & Maximum time recorded & 1 \\ +time\_bins & 1 & number of time bins & 100 \\ +filename & string & Filename of produced data file & "NULL" \\ +order\_total & 1 & Only log rays that have scattered n times, -1 for all orders & -1 \\ +order\_volume & 1 & Only log rays that have scattered n times in the same geometry, -1 for all orders & -1 \\ +logger\_conditional\_extend\_index & 1 & If a conditional is used with this logger, the result of each conditional calculation can be made available in extend as a array called "logger\_conditional\_extend", and one would then access logger\_conditional\_extend[n] if logger\_conditional\_extend\_index is set to n & -1 \\ +init & string & name of Union\_init component (typically "init", default) & "init" \\ +\bottomrule +\end{longtable} + +\subsection*{Links} +\begin{itemize} + \item \href{run:/home/willend/willend-McCode/mcstas-comps/union/Union_abs_logger_1D_space_tof.comp}{Source code} for \texttt{Union\_abs\_logger\_1D\_space\_tof.comp}. +\end{itemize} +\IfFileExists{Union_abs_logger_1D_space_tof_static.tex}{\input{Union_abs_logger_1D_space_tof_static.tex}}{} \ No newline at end of file diff --git a/docs/manuals/mcstas/union/Union_abs_logger_1D_space_tof_to_lambda.tex b/docs/manuals/mcstas/union/Union_abs_logger_1D_space_tof_to_lambda.tex new file mode 100644 index 000000000..13c7b7063 --- /dev/null +++ b/docs/manuals/mcstas/union/Union_abs_logger_1D_space_tof_to_lambda.tex @@ -0,0 +1,117 @@ +\section{The \texttt{Union\_abs\_logger\_1D\_space\_tof\_to\_lambda} McStas Component} +A logger of absorption along 1D of space and 1D of tof, but converted to lambda + +\subsection*{Identification} +\begin{itemize} + \item \textbf{Site:} + \item \textbf{Author:} Mads Bertelsen + \item \textbf{Origin:} ESS DMSC + \item \textbf{Date:} 19.06.20 +\end{itemize} + +\subsection*{Description} +\begin{lstlisting} +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, assigned a material +4) Logger and conditional components can be placed which will record what happens +5) A Union_master component placed after all of the above + +Only in step 5 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 + +This component is an absorption logger, and thus placed in point 4) above. + +A absorption logger will log something for each absorption event happening +in the geometry or geometries on which it is attached. These are specified +in the target_geometry string. By leaving it blank, all geometries are +logged, even the ones not defined at this point in the instrument file. +Multiple geometries are specified as a comma separated list. + +This absorption logger records the absorbed intensity as a function of the +measured and true wavelength. The measured wavelength is calculated from +the time of flight and distance travelled. This distance is a constant from +source to sample added to the distance from the sample position to the +detector pixel in which the event is detected. The true wavelength is +calculated directly from the velocity. This information shows any error in +conversion from tof to wavelength, especially from any added travelled +distance from multiple scattering. + +The lambda_min, max and bin parameters are used to set both the range for +measured and true wavelength. If either of these, denoted lambda_m and +lambda_t respectively, is set they will overwrite the lambda setting for +that part. Sine most data will be along the line lambda_m = lambda_t, it +is possible to record lambda_m / lambda_t as a function of lambda_t, which +will be close to 1.0. This mode is selected by setting relative_measured +to 1, and then the range can be selected with relative_min, max and bins. + +This absorption logger needs to be placed in space, the position is recorded in +the coordinate system of the logger component. Note the detection is along the +y axis of the component, so it is natural to place it relative to a cylinder. + +This component works as other absorption loggers, but converts the tof and +position data to wavelength, which is then compared to the actual wavelength +calculated from the neutron state. The neutron position used to calculate +the wavelength is pixelated while the time of flight is continous. The +distance from source to sample is an input parameter, and the distance from +sample to a detector pixel is calculated using the reference component position +which should be specified with a relative component index. + +It is possible to attach one or more conditional components to this absorption +logger. Such a conditional component would impose a condition on the state of +the neutron after the Union_master component that executes the simulation, +and the absorption logger will only record the event if this condition is true. + +To use the logger_conditional_extend function, set it to some integer value n +and make and extend section to the master component that runs the geometry. +In this extend function, logger_conditional_extend[n] is 1 if the conditional +stack evaluated to true, 0 if not. This way one can check what rays is logged +using regular McStas monitors. Only works if a conditional is applied to this +logger. +\end{lstlisting} + +\subsection*{Input parameters} +Parameters in \textbf{boldface} are required; the others are optional. + +\begin{longtable}{p{0.22\textwidth}p{0.12\textwidth}p{0.46\textwidth}p{0.14\textwidth}} +\toprule +\textbf{Name} & \textbf{Unit} & \textbf{Description} & \textbf{Default} \\ +\midrule +\endhead +target\_geometry & string & Comma separated list of geometry names that will be logged, leave empty for all volumes (even not defined yet) & "NULL" \\ +\textbf{ref\_component} & 1 & Reference component instance index, sample position for distance calculation & \\ +\textbf{yheight} & m & Height of absorption logger & \\ +\textbf{yn} & 1 & Number of bins along y axis & \\ +source\_sample\_dist & m & Travel distance between source and sample position, used to calculate total travelled distance & 0.0 \\ +lambda\_min & AA & Minimum wavelength recorded (sets both lambda\_m\_min and lambda\_t\_min) & -1 \\ +lambda\_max & AA & Maximum wavelength recorded (sets both lambda\_m\_max and lambda\_t\_max) & -1 \\ +lambda\_bins & 1 & Number of wavelength bins & -1 \\ +lambda\_m\_min & AA & Minimum measured wavelength recorded from tof and travelled distance (overwrites lambda\_min) & -1 \\ +lambda\_m\_max & AA & Maximum measured wavelength recorded from tof and travelled distance (overwrites lambda\_max) & -1 \\ +lambda\_m\_bins & 1 & Number of measured wavelength bins & -1 \\ +lambda\_t\_min & AA & Minimum true wavelength recorded from tof and travelled distance (overwrites lambda\_min) & -1 \\ +lambda\_t\_max & AA & Maximum true wavelength recorded from tof and travelled distance (overwrites lambda\_max) & -1 \\ +lambda\_t\_bins & 1 & Number of true wavelength bins & -1 \\ +relative\_measured & 1 & Default 0, records measured as function of true wavelength, if this is enabled, records measured relative to true wavelength & 0 \\ +relative\_min & 1 & Smallest value of measured / true wavelength in histogram & 0.5 \\ +relative\_max & 1 & Largest value of measured / true wavelength in histogram & 1.5 \\ +relative\_bins & 1 & Number of bins on histogram axis with measured divided by true wavelength & 100 \\ +filename & string & Filename of produced data file & "NULL" \\ +order\_total & 1 & Only log rays that have scattered n times, -1 for all orders & -1 \\ +order\_volume & 1 & Only log rays that have scattered n times in the same geometry, -1 for all orders & -1 \\ +logger\_conditional\_extend\_index & 1 & If a conditional is used with this logger, the result of each conditional calculation can be made available in extend as a array called "logger\_conditional\_extend", and one would then access logger\_conditional\_extend[n] if logger\_conditional\_extend\_index is set to n & -1 \\ +init & string & Name of Union\_init component (typically "init", default) & "init" \\ +\bottomrule +\end{longtable} + +\subsection*{Links} +\begin{itemize} + \item \href{run:/home/willend/willend-McCode/mcstas-comps/union/Union_abs_logger_1D_space_tof_to_lambda.comp}{Source code} for \texttt{Union\_abs\_logger\_1D\_space\_tof\_to\_lambda.comp}. +\end{itemize} +\IfFileExists{Union_abs_logger_1D_space_tof_to_lambda_static.tex}{\input{Union_abs_logger_1D_space_tof_to_lambda_static.tex}}{} \ No newline at end of file diff --git a/docs/manuals/mcstas/union/Union_abs_logger_1D_time.tex b/docs/manuals/mcstas/union/Union_abs_logger_1D_time.tex new file mode 100644 index 000000000..62e43a775 --- /dev/null +++ b/docs/manuals/mcstas/union/Union_abs_logger_1D_time.tex @@ -0,0 +1,84 @@ +\section{The \texttt{Union\_abs\_logger\_1D\_time} McStas Component} +Logger of absorption along 1D time + +\subsection*{Identification} +\begin{itemize} + \item \textbf{Site:} + \item \textbf{Author:} Mads Bertelsen + \item \textbf{Origin:} ESS DMSC + \item \textbf{Date:} 19.06.20 +\end{itemize} + +\subsection*{Description} +\begin{lstlisting} +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, assigned a material +4) Logger and conditional components can be placed which will record what happens +5) A Union_master component placed after all of the above + +Only in step 5 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 + +This component is an absorption logger, and thus placed in point 4) above. + +A absorption logger will log something for each absorption event happening +in the geometry or geometries on which it is attached. These are specified +in the target_geometry string. By leaving it blank, all geometries are +logged, even the ones not defined at this point in the instrument file. +Multiple geometries are specified as a comma separated list. + +This absorption logger stores the absorbed weight as a function of height +in a histogram. It is expected this abs logger will often be attached to a +cylindrical geometry, and so if the abs logger has the same position and +orientation it will measure absorption along the axis of symmetry. This +makes it easy to create simple tubes, and it is even possible to include +the detector casing and similar to improve the realism of the simulation. + +This absorption logger needs to be placed in space, the position is recorded in +the coordinate system of the logger component. + +It is possible to attach one or more conditional components to this absorption +logger. Such a conditional component would impose a condition on the state of +the neutron after the Union_master component that executes the simulation, +and the absorption logger will only record the event if this condition is true. + +To use the logger_conditional_extend function, set it to some integer value n +and make and extend section to the master component that runs the geometry. +In this extend function, logger_conditional_extend[n] is 1 if the conditional +stack evaluated to true, 0 if not. This way one can check what rays is logged +using regular McStas monitors. Only works if a conditional is applied to this +logger. +\end{lstlisting} + +\subsection*{Input parameters} +Parameters in \textbf{boldface} are required; the others are optional. + +\begin{longtable}{p{0.22\textwidth}p{0.12\textwidth}p{0.46\textwidth}p{0.14\textwidth}} +\toprule +\textbf{Name} & \textbf{Unit} & \textbf{Description} & \textbf{Default} \\ +\midrule +\endhead +target\_geometry & string & Comma separated list of geometry names that will be logged, leave empty for all volumes (even not defined yet) & "NULL" \\ +time\_min & s & time at start of recording & 0 \\ +\textbf{time\_max} & s & Maximum time to log & \\ +n & 1 & number of bins along y & 100 \\ +filename & string & Filename of produced data file & "NULL" \\ +order\_total & 1 & Only log rays that have scattered n times, -1 for all orders & -1 \\ +order\_volume & 1 & Only log rays that have scattered n times in the same geometry, -1 for all orders & -1 \\ +logger\_conditional\_extend\_index & 1 & If a conditional is used with this logger, the result of each conditional calculation can be made available in extend as a array called "logger\_conditional\_extend", and one would then access logger\_conditional\_extend[n] if logger\_conditional\_extend\_index is set to n & -1 \\ +init & string & name of Union\_init component (typically "init", default) & "init" \\ +\bottomrule +\end{longtable} + +\subsection*{Links} +\begin{itemize} + \item \href{run:/home/willend/willend-McCode/mcstas-comps/union/Union_abs_logger_1D_time.comp}{Source code} for \texttt{Union\_abs\_logger\_1D\_time.comp}. +\end{itemize} +\IfFileExists{Union_abs_logger_1D_time_static.tex}{\input{Union_abs_logger_1D_time_static.tex}}{} \ No newline at end of file diff --git a/docs/manuals/mcstas/union/Union_abs_logger_2D_space.tex b/docs/manuals/mcstas/union/Union_abs_logger_2D_space.tex new file mode 100644 index 000000000..a539fb454 --- /dev/null +++ b/docs/manuals/mcstas/union/Union_abs_logger_2D_space.tex @@ -0,0 +1,93 @@ +\section{The \texttt{Union\_abs\_logger\_2D\_space} McStas Component} +Logger of absorption along two dimensions of space + +\subsection*{Identification} +\begin{itemize} + \item \textbf{Site:} + \item \textbf{Author:} Mads Bertelsen + \item \textbf{Origin:} ESS DMSC + \item \textbf{Date:} 19.06.20 +\end{itemize} + +\subsection*{Description} +\begin{lstlisting} +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, assigned a material +4) Logger and conditional components can be placed which will record what happens +5) A Union_master component placed after all of the above + +Only in step 5 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 + +This component is an absorption logger, and thus placed in point 4) above. + +A absorption logger will log something for each absorption event happening +in the geometry or geometries on which it is attached. These are specified +in the target_geometry string. By leaving it blank, all geometries are +logged, even the ones not defined at this point in the instrument file. +Multiple geometries are specified as a comma separated list. + +This absorption logger stores the absorbed weight in a histogram spanning two +spatial directions. The position of the event is projected onto this plane. +The plotted data is very useful when ensuring the simulated geometry matches +the intentions. It is not recommended to use this tool for safety concerns, +as for example to estimate activity of a sample after irradiation. + +The spatial plane in which the histogram is performed are chosen with the +D_direction_1 and D_direction_2 parameters which can be "x", "y" or "z". +The D1_min and D1_max parameters sets the limits for the first axis, and +D2_min / D2_max likewise for the second axis. + +This absorption logger needs to be placed in space, the position is recorded in +the coordinate system of the logger component. + +It is possible to attach one or more conditional components to this absorption +logger. Such a conditional component would impose a condition on the state of +the neutron after the Union_master component that executes the simulation, +and the absorption logger will only record the event if this condition is true. + +To use the logger_conditional_extend function, set it to some integer value n +and make and extend section to the master component that runs the geometry. +In this extend function, logger_conditional_extend[n] is 1 if the conditional +stack evaluated to true, 0 if not. This way one can check what rays is logged +using regular McStas monitors. Only works if a conditional is applied to this +logger. +\end{lstlisting} + +\subsection*{Input parameters} +Parameters in \textbf{boldface} are required; the others are optional. + +\begin{longtable}{p{0.22\textwidth}p{0.12\textwidth}p{0.46\textwidth}p{0.14\textwidth}} +\toprule +\textbf{Name} & \textbf{Unit} & \textbf{Description} & \textbf{Default} \\ +\midrule +\endhead +target\_geometry & string & Comma separated list of geometry names that will be logged, leave empty for all volumes (even not defined yet) & "NULL" \\ +D\_direction\_1 & string & Direction for first axis ("x", "y" or "z") & "x" \\ +D1\_min & m & Histogram boundary, min position value for first axis & -0.2 \\ +D1\_max & m & Histogram boundary, max position value for first axis & 5 \\ +n1 & 1 & Number of bins for first axis & 0.2 \\ +D\_direction\_2 & string & Direction for second axis ("x", "y" or "z") & "z" \\ +D2\_min & m & Histogram boundary, min position value for second axis & -0.2 \\ +D2\_max & m & Histogram boundary, max position value for second axis & 5 \\ +n2 & 1 & Number of bins for second axis & 0.2 \\ +filename & string & Filename of produced data file & "NULL" \\ +order\_total & 1 & Only log rays that have scattered n times, -1 for all orders & -1 \\ +order\_volume & 1 & Only log rays that have scattered n times in the same geometry, -1 for all orders & -1 \\ +logger\_conditional\_extend\_index & 1 & If a conditional is used with this logger, the result of each conditional calculation can be made available in extend as a array called "logger\_conditional\_extend", and one would then access logger\_conditional\_extend[n] if logger\_conditional\_extend\_index is set to n & -1 \\ +init & string & Name of Union\_init component (typically "init", default) & "init" \\ +\bottomrule +\end{longtable} + +\subsection*{Links} +\begin{itemize} + \item \href{run:/home/willend/willend-McCode/mcstas-comps/union/Union_abs_logger_2D_space.comp}{Source code} for \texttt{Union\_abs\_logger\_2D\_space.comp}. +\end{itemize} +\IfFileExists{Union_abs_logger_2D_space_static.tex}{\input{Union_abs_logger_2D_space_static.tex}}{} \ No newline at end of file diff --git a/docs/manuals/mcstas/union/Union_abs_logger_event.tex b/docs/manuals/mcstas/union/Union_abs_logger_event.tex new file mode 100644 index 000000000..191517774 --- /dev/null +++ b/docs/manuals/mcstas/union/Union_abs_logger_event.tex @@ -0,0 +1,83 @@ +\section{The \texttt{Union\_abs\_logger\_event} McStas Component} +A logger of absorption as events + +\subsection*{Identification} +\begin{itemize} + \item \textbf{Site:} + \item \textbf{Author:} Mads Bertelsen + \item \textbf{Origin:} ESS DMSC + \item \textbf{Date:} 19.06.20 +\end{itemize} + +\subsection*{Description} +\begin{lstlisting} +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, assigned a material +4) Logger and conditional components can be placed which will record what happens +5) A Union_master component placed after all of the above + +Only in step 5 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 + +This component is an absorption logger, and thus placed in point 4) above. + +A absorption logger will log something for each absorption event happening +in the geometry or geometries on which it is attached. These are specified +in the target_geometry string. By leaving it blank, all geometries are +logged, even the ones not defined at this point in the instrument file. +Multiple geometries are specified as a comma separated list. + +This absorption logger stores absorption as events, with position, velocity, +time and weight. The Monitor_nD libraries are used to write the event files. + +This absorption logger needs to be placed in space, the position and velocity +is recorded in the coordinate system of the logger component. + +It is possible to attach one or more conditional components to this absorption +logger. Such a conditional component would impose a condition on the state of +the neutron after the Union_master component that executes the simulation, +and the absorption logger will only record the event if this condition is true. + +To use the logger_conditional_extend function, set it to some integer value n +and make and extend section to the master component that runs the geometry. +In this extend function, logger_conditional_extend[n] is 1 if the conditional +stack evaluated to true, 0 if not. This way one can check what rays is logged +using regular McStas monitors. Only works if a conditional is applied to this +logger. +\end{lstlisting} + +\subsection*{Input parameters} +Parameters in \textbf{boldface} are required; the others are optional. + +\begin{longtable}{p{0.22\textwidth}p{0.12\textwidth}p{0.46\textwidth}p{0.14\textwidth}} +\toprule +\textbf{Name} & \textbf{Unit} & \textbf{Description} & \textbf{Default} \\ +\midrule +\endhead +target\_geometry & string & Comma separated list of geometry names that will be logged, leave empty for all volumes (even not defined yet) & "NULL" \\ +filename & string & Filename of produced data file & "NULL" \\ +xwidth & m & Width in x direction & 0 \\ +xbins & 1 & Number of bins in x direction & 0 \\ +yheight & m & Height in y direction & 0 \\ +ybins & 1 & Number of bins in y direction & 0 \\ +zdepth & m & Depth in z direction & 0 \\ +zbins & 1 & Number of bins in z direction & 0 \\ +order\_total & 1 & Only log rays that have scattered n times, -1 for all orders & -1 \\ +order\_volume & 1 & Only log rays that have scattered n times in the same geometry, -1 for all orders & -1 \\ +logger\_conditional\_extend\_index & 1 & If a conditional is used with this logger, the result of each conditional calculation can be made available in extend as a array called "logger\_conditional\_extend", and one would then access logger\_conditional\_extend[n] if logger\_conditional\_extend\_index is set to n & -1 \\ +init & string & Name of Union\_init component (typically "init", default) & "init" \\ +\bottomrule +\end{longtable} + +\subsection*{Links} +\begin{itemize} + \item \href{run:/home/willend/willend-McCode/mcstas-comps/union/Union_abs_logger_event.comp}{Source code} for \texttt{Union\_abs\_logger\_event.comp}. +\end{itemize} +\IfFileExists{Union_abs_logger_event_static.tex}{\input{Union_abs_logger_event_static.tex}}{} \ No newline at end of file diff --git a/docs/manuals/mcstas/union/Union_abs_logger_nD.tex b/docs/manuals/mcstas/union/Union_abs_logger_nD.tex new file mode 100644 index 000000000..6952c5194 --- /dev/null +++ b/docs/manuals/mcstas/union/Union_abs_logger_nD.tex @@ -0,0 +1,107 @@ +\section{The \texttt{Union\_abs\_logger\_nD} McStas Component} +A logger of absorption as events with Monitor\_nD options + +\subsection*{Identification} +\begin{itemize} + \item \textbf{Site:} + \item \textbf{Author:} Mads Bertelsen + \item \textbf{Origin:} ESS DMSC + \item \textbf{Date:} 19.06.20 +\end{itemize} + +\subsection*{Description} +\begin{lstlisting} +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, assigned a material +4) Logger and conditional components can be placed which will record what happens +5) A Union_master component placed after all of the above + +Only in step 5 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 + +This component is an absorption logger, and thus placed in point 4) above. + +An absorption logger will log something for each absorption event happening +in the geometry or geometries on which it is attached. These are specified +in the target_geometry string. By leaving it blank, all geometries are +logged, even the ones not defined at this point in the instrument file. +Multiple geometries are specified as a comma separated list. + +This absorption logger stores absorption as events, with position, velocity, +time and weight. The Monitor_nD libraries are used to write the event files. +This version is a close copy of Monitor_nD, having the same interface, though +the user must be aware that no propagation happens for rays to hit the +detector pixels, instead it uses the position of absorbed. Use the previous +keyword to tell Monitor_nD that this is going on. It still needs values set +for xwidth and yheight, even though these will not be used. + +This absorption logger needs to be placed in space, the position and velocity +is recorded in the coordinate system of the logger component. + +It is possible to attach one or more conditional components to this absorption +logger. Such a conditional component would impose a condition on the state of +the neutron after the Union_master component that executes the simulation, +and the absorption logger will only record the event if this condition is true. + +To use the logger_conditional_extend function, set it to some integer value n +and make and extend section to the master component that runs the geometry. +In this extend function, logger_conditional_extend[n] is 1 if the conditional +stack evaluated to true, 0 if not. This way one can check what rays is logged +using regular McStas monitors. Only works if a conditional is applied to this +logger. +\end{lstlisting} + +\subsection*{Input parameters} +Parameters in \textbf{boldface} are required; the others are optional. + +\begin{longtable}{p{0.22\textwidth}p{0.12\textwidth}p{0.46\textwidth}p{0.14\textwidth}} +\toprule +\textbf{Name} & \textbf{Unit} & \textbf{Description} & \textbf{Default} \\ +\midrule +\endhead +target\_geometry & string & Comma separated list of geometry names that will be logged, leave empty for all volumes (even not defined yet) & "NULL" \\ +order\_total & 1 & Only log rays that have scattered n times, -1 for all orders & -1 \\ +order\_volume & 1 & Only log rays that have scattered n times in the same geometry, -1 for all orders & -1 \\ +logger\_conditional\_extend\_index & 1 & If a conditional is used with this logger, the result of each conditional calculation can be made available in extend as a array called "logger\_conditional\_extend", and one would then access logger\_conditional\_extend[n] if logger\_conditional\_extend\_index is set to n & -1 \\ +init & string & Name of Union\_init component (typically "init", default) & "init" \\ +user1 & str & Variable name of USERVAR to be monitored by user1. & "" \\ +user2 & str & Variable name of USERVAR to be monitored by user2. & "" \\ +user3 & str & Variable name of USERVAR to be monitored by user3. & "" \\ +xwidth & m & Width of detector. & 0 \\ +yheight & m & Height of detector. & 0 \\ +zdepth & m & Thickness of detector (z). & 0 \\ +xmin & m & Lower x bound of opening & 0 \\ +xmax & m & Upper x bound of opening & 0 \\ +ymin & m & Lower y bound of opening & 0 \\ +ymax & m & Upper y bound of opening & 0 \\ +zmin & m & Lower z bound of opening & 0 \\ +zmax & m & Upper z bound of opening & 0 \\ +bins & 1 & Number of bins to force for all variables. Use 'bins' keyword in 'options' for heterogeneous bins & 0 \\ +min & u & Minimum range value to force for all variables. Use 'min' or 'limits' keyword in 'options' for other limits & -1e40 \\ +max & u & Maximum range value to force for all variables. Use 'max' or 'limits' keyword in 'options' for other limits & 1e40 \\ +restore\_neutron & 0|1 & Not functional for Union version & 0 \\ +radius & m & Radius of sphere/banana shape monitor & 0 \\ +options & str & String that specifies the configuration of the monitor. The general syntax is "[x] options..." (see \textless{}b\textgreater{}Descr.\textless{}/b\textgreater{}). & "NULL" \\ +filename & str & Output file name (overrides file=XX option). & "NULL" \\ +geometry & str & Name of an OFF file to specify a complex geometry detector & "NULL" \\ +nowritefile & 1 & Not functional for Union version & 0 \\ +nexus\_bins & 1 & NeXus mode only: store component BIN information \textless{}br\textgreater{}(-1 disable, 0 enable for list mode monitor, 1 enable for any montor) & 0 \\ +username1 & str & Name assigned to User1 & "NULL" \\ +username2 & str & Name assigned to User2 & "NULL" \\ +username3 & str & Name assigned to User3 & "NULL" \\ +\bottomrule +\end{longtable} + +\subsection*{Links} +\begin{itemize} + \item \href{run:/home/willend/willend-McCode/mcstas-comps/union/Union_abs_logger_nD.comp}{Source code} for \texttt{Union\_abs\_logger\_nD.comp}. + \item See also \textless{}a href="../monitors/Monitor\_nD.html"\textgreater{}the Monitor\_nD mcdoc page"\textless{}/a\textgreater{} +\end{itemize} +\IfFileExists{Union_abs_logger_nD_static.tex}{\input{Union_abs_logger_nD_static.tex}}{} \ No newline at end of file diff --git a/docs/manuals/mcstas/union/Union_box.tex b/docs/manuals/mcstas/union/Union_box.tex new file mode 100644 index 000000000..a6a9b5931 --- /dev/null +++ b/docs/manuals/mcstas/union/Union_box.tex @@ -0,0 +1,83 @@ +\section{The \texttt{Union\_box} McStas Component} +A box geometry component for the Union components + +\subsection*{Identification} +\begin{itemize} + \item \textbf{Site:} + \item \textbf{Author:} Mads Bertelsen + \item \textbf{Origin:} University of Copenhagen + \item \textbf{Date:} 20.08.15 +\end{itemize} + +\subsection*{Description} +\begin{lstlisting} +Part of the Union components, a set of components that work together and thus +sperates 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, assigned a material +4) A Union_master component placed after all of 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 position of this component is the center of the box, zdepth/2 in each direction. + +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. + + +Algorithm: +Described elsewhere +\end{lstlisting} + +\subsection*{Input parameters} +Parameters in \textbf{boldface} are required; the others are optional. + +\begin{longtable}{p{0.22\textwidth}p{0.12\textwidth}p{0.46\textwidth}p{0.14\textwidth}} +\toprule +\textbf{Name} & \textbf{Unit} & \textbf{Description} & \textbf{Default} \\ +\midrule +\endhead +material\_string & string & Material name of this volume, defined using Union\_make\_material & 0 \\ +\textbf{priority} & 1 & Priotiry of the volume (can not be the same as another volume) A high priority is on top of low. & \\ +\textbf{xwidth} & m & Width of the box volume & \\ +\textbf{yheight} & m & Height of the box volume & \\ +\textbf{zdepth} & m & Depth of the box volume & \\ +xwidth2 & m & Optional different width at the +z box face & -1 \\ +yheight2 & m & Optional different height at the +z box face & -1 \\ +visualize & 1 & Set to 0 if you wish to hide this geometry in mcdisplay & 1 \\ +target\_index & string & Focuses on component a component this many steps further in the component sequence & 0 \\ +target\_x & m & X position of target to focus at & 0 \\ +target\_y & m & Y position of target to focus at & 0 \\ +target\_z & m & Z 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 \\ +plus\_z\_surface & string & Comma seperated string of Union surface definitions defined prior to this component, applied to +z face of box & 0 \\ +minus\_z\_surface & string & Comma seperated string of Union surface definitions defined prior to this component, applied to -z face of box & 0 \\ +plus\_x\_surface & string & Comma seperated string of Union surface definitions defined prior to this component, applied to +x face of box & 0 \\ +minus\_x\_surface & string & Comma seperated string of Union surface definitions defined prior to this component, applied to -x face of box & 0 \\ +plus\_y\_surface & string & Comma seperated string of Union surface definitions defined prior to this component, applied to +y face of box & 0 \\ +minus\_y\_surface & string & Comma seperated string of Union surface definitions defined prior to this component, applied to -z face of box & 0 \\ +all\_face\_surface & string & Comma seperated string of Union surface definitions defined prior to this component, applied to all faces above & 0 \\ +cut\_surface & string & Comma seperated string of Union surface definitions defined prior to this component, applied to all internal cuts & 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 \\ +init & string & name of Union\_init component (typically "init", default) & "init" \\ +\bottomrule +\end{longtable} + +\subsection*{Links} +\begin{itemize} + \item \href{run:/home/willend/willend-McCode/mcstas-comps/union/Union_box.comp}{Source code} for \texttt{Union\_box.comp}. +\end{itemize} +\IfFileExists{Union_box_static.tex}{\input{Union_box_static.tex}}{} \ No newline at end of file diff --git a/docs/manuals/mcstas/union/Union_conditional_PSD.tex b/docs/manuals/mcstas/union/Union_conditional_PSD.tex new file mode 100644 index 000000000..ab1b508fb --- /dev/null +++ b/docs/manuals/mcstas/union/Union_conditional_PSD.tex @@ -0,0 +1,73 @@ +\section{The \texttt{Union\_conditional\_PSD} McStas Component} +A conditional component in the shape of an area the neutrons must hit + +\subsection*{Identification} +\begin{itemize} + \item \textbf{Site:} + \item \textbf{Author:} Mads Bertelsen + \item \textbf{Origin:} University of Copenhagen + \item \textbf{Date:} 20.08.15 +\end{itemize} + +\subsection*{Description} +\begin{lstlisting} +Part of the Union components, a set of components that work together and thus +sperates 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, assigned a material +4) A Union_master component placed after all of 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 + +This is a conditional component that affects the loggers in the target_loggers +string. When a logger is affected, it will only record events if the +conditional is true at the end of the simulation of a ray in the master. +Conditionals can be used to for example limit the loggers to rays that end +within a certain energy range, time interval or similar. + +One can apply several conditionals to each logger if desired. + +In the extend section of a master, the tagging conditional can be acsessed by +the variable name tagging_conditional_extend. Beware, that it only works as +long as the tagging system is active, so you may want to increase the number +of histories allowed by that master component before stopping. + +This conditional is a little special, because it needs to be placed in space. +It's center location is like a psd. + +overwrite_logger_weight can be used to force the loggers this conditional +controls to write the final weight for each scattering event, instead of the +recorded value. +\end{lstlisting} + +\subsection*{Input parameters} +Parameters in \textbf{boldface} are required; the others are optional. + +\begin{longtable}{p{0.22\textwidth}p{0.12\textwidth}p{0.46\textwidth}p{0.14\textwidth}} +\toprule +\textbf{Name} & \textbf{Unit} & \textbf{Description} & \textbf{Default} \\ +\midrule +\endhead +target\_loggers & string & Comma seperated list of loggers this conditional should affect & "NULL" \\ +master\_tagging & 1 & Apply this conditional to the tagging system in next master & 0 \\ +tagging\_extend\_index & 1 & Not currently used & -1 \\ +\textbf{xwidth} & m & Width of target area & \\ +\textbf{yheight} & m & Height of target area & \\ +time\_min & s & Min time (on psd), if not set ignored & 0 \\ +time\_max & s & Max time (on psd), if not set ignored & 0 \\ +overwrite\_logger\_weight & 1 & Default = 0, overwrite = 1 & 0 \\ +init & string & Name of Union\_init component (typically "init", default) & "init" \\ +\bottomrule +\end{longtable} + +\subsection*{Links} +\begin{itemize} + \item \href{run:/home/willend/willend-McCode/mcstas-comps/union/Union_conditional_PSD.comp}{Source code} for \texttt{Union\_conditional\_PSD.comp}. +\end{itemize} +\IfFileExists{Union_conditional_PSD_static.tex}{\input{Union_conditional_PSD_static.tex}}{} \ No newline at end of file diff --git a/docs/manuals/mcstas/union/Union_conditional_standard.tex b/docs/manuals/mcstas/union/Union_conditional_standard.tex new file mode 100644 index 000000000..a42574fff --- /dev/null +++ b/docs/manuals/mcstas/union/Union_conditional_standard.tex @@ -0,0 +1,73 @@ +\section{The \texttt{Union\_conditional\_standard} McStas Component} +A conditional component that filter on basic variables of exit state + +\subsection*{Identification} +\begin{itemize} + \item \textbf{Site:} + \item \textbf{Author:} Mads Bertelsen + \item \textbf{Origin:} University of Copenhagen + \item \textbf{Date:} 20.08.15 +\end{itemize} + +\subsection*{Description} +\begin{lstlisting} +Part of the Union components, a set of components that work together and thus +sperates 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 / Union_cylinder, assigned a material +4) A Union_master component placed after all of 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 + +This is a conditional component that affects the loggers in the target_loggers +string. When a logger is affected, it will only record events if the +conditional is true at the end of the simulation of a ray in the master. +Conditionals can be used to for example limit the loggers to rays that end +within a certain energy range, time interval or similar. + +One can apply several conditionals to each logger if desired. + +In the extend section of a master, the tagging conditional can be acsessed by +the variable name tagging_conditional_extend. Beware, that it only works as +long as the tagging system is active, so you may want to increase the number +of histories allowed by that master component before stopping. + +overwrite_logger_weight can be used to force the loggers this conditional +controls to write the final weight for each scattering event, instead of the +recorded value. +\end{lstlisting} + +\subsection*{Input parameters} +Parameters in \textbf{boldface} are required; the others are optional. + +\begin{longtable}{p{0.22\textwidth}p{0.12\textwidth}p{0.46\textwidth}p{0.14\textwidth}} +\toprule +\textbf{Name} & \textbf{Unit} & \textbf{Description} & \textbf{Default} \\ +\midrule +\endhead +target\_loggers & string & Comma seperated list of loggers this conditional should affect & "NULL" \\ +master\_tagging & 1 & Apply this conditional to the tagging system in next master & 0 \\ +tagging\_extend\_index & 1 & Not currently used & -1 \\ +time\_min & s & Min time, if not set ignored & 0 \\ +time\_max & s & Max time, if not set ignored & 0 \\ +E\_min & meV & Max energy, if not set ignored & 0 \\ +E\_max & meV & Min energy, if not set ignored & 0 \\ +total\_order\_min & 1 & Min scattering order, if not set ignored & 0 \\ +total\_order\_max & 1 & Max scattering order, if not set ignored & 0 \\ +last\_volume\_index & 1 & Not used yet & -1 \\ +overwrite\_logger\_weight & 1 & Default = 0, overwrite = 1 & 0 \\ +init & string & Name of Union\_init component (typically "init", default) & "init" \\ +\bottomrule +\end{longtable} + +\subsection*{Links} +\begin{itemize} + \item \href{run:/home/willend/willend-McCode/mcstas-comps/union/Union_conditional_standard.comp}{Source code} for \texttt{Union\_conditional\_standard.comp}. +\end{itemize} +\IfFileExists{Union_conditional_standard_static.tex}{\input{Union_conditional_standard_static.tex}}{} \ No newline at end of file diff --git a/docs/manuals/mcstas/union/Union_cone.tex b/docs/manuals/mcstas/union/Union_cone.tex new file mode 100644 index 000000000..84ab62894 --- /dev/null +++ b/docs/manuals/mcstas/union/Union_cone.tex @@ -0,0 +1,76 @@ +\section{The \texttt{Union\_cone} McStas Component} +Cone geometry component for Union components + +\subsection*{Identification} +\begin{itemize} + \item \textbf{Site:} + \item \textbf{Author:} Martin Olsen + \item \textbf{Origin:} University of Copenhagen + \item \textbf{Date:} 17.09.18 +\end{itemize} + +\subsection*{Description} +\begin{lstlisting} +Part of the Union components, a set of components that work together and thus +sperates 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, assigned a material +4) A Union_master component placed after all of 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 position of this component is the center of the cone, and it thus +extends yheight/2 up and down along y axis. + +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. +\end{lstlisting} + +\subsection*{Input parameters} +Parameters in \textbf{boldface} are required; the others are optional. + +\begin{longtable}{p{0.22\textwidth}p{0.12\textwidth}p{0.46\textwidth}p{0.14\textwidth}} +\toprule +\textbf{Name} & \textbf{Unit} & \textbf{Description} & \textbf{Default} \\ +\midrule +\endhead +material\_string & string & Material name of this volume, defined using Union\_make\_material & 0 \\ +\textbf{priority} & 1 & Priotiry of the volume (can not be the same as another volume) A high priority is on top of low. & \\ +radius & m & Radius volume in (x,z) plane & 0 \\ +radius\_top & m & Top radius volume in (x,z) plane & 0 \\ +radius\_bottom & m & Bottom radius volume in (x,z) plane & 0 \\ +\textbf{yheight} & m & Cone height in (y) direction & \\ +visualize & 1 & Set to 0 if you wish to hide this geometry in mcdisplay & 1 \\ +target\_index & 1 & Focuses on component a component this many steps further in the component sequence & 0 \\ +target\_x & m & X position of target to focus at & 0 \\ +target\_y & m & Y position of target to focus at & 0 \\ +target\_z & m & Z 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 \\ +curved\_surface & string & Comma seperated string of Union surface definitions defined prior to this component, applied to curved wall of cone & 0 \\ +top\_surface & string & Comma seperated string of Union surface definitions defined prior to this component, applied to +y top face of cone & 0 \\ +bottom\_surface & string & Comma seperated string of Union surface definitions defined prior to this component, applied to -y bottom face of cone & 0 \\ +all\_face\_surface & string & Comma seperated string of Union surface definitions defined prior to this component, applied to all faces above & 0 \\ +cut\_surface & string & Comma seperated string of Union surface definitions defined prior to this component, applied to all internal cuts & 0 \\ +init & string & Name of Union\_init component (typically "init", default) & "init" \\ +\bottomrule +\end{longtable} + +\subsection*{Links} +\begin{itemize} + \item \href{run:/home/willend/willend-McCode/mcstas-comps/union/Union_cone.comp}{Source code} for \texttt{Union\_cone.comp}. +\end{itemize} +\IfFileExists{Union_cone_static.tex}{\input{Union_cone_static.tex}}{} \ No newline at end of file diff --git a/docs/manuals/mcstas/union/Union_cylinder.tex b/docs/manuals/mcstas/union/Union_cylinder.tex new file mode 100644 index 000000000..c1354a15c --- /dev/null +++ b/docs/manuals/mcstas/union/Union_cylinder.tex @@ -0,0 +1,74 @@ +\section{The \texttt{Union\_cylinder} McStas Component} +Cylinder geometry component for Union components + +\subsection*{Identification} +\begin{itemize} + \item \textbf{Site:} + \item \textbf{Author:} Mads Bertelsen + \item \textbf{Origin:} University of Copenhagen + \item \textbf{Date:} 20.08.15 +\end{itemize} + +\subsection*{Description} +\begin{lstlisting} +Part of the Union components, a set of components that work together and thus +sperates 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, assigned a material +4) A Union_master component placed after all of 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 position of this component is the center of the cylinder, and it thus +extends yheight/2 up and down along y axis. + +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. +\end{lstlisting} + +\subsection*{Input parameters} +Parameters in \textbf{boldface} are required; the others are optional. + +\begin{longtable}{p{0.22\textwidth}p{0.12\textwidth}p{0.46\textwidth}p{0.14\textwidth}} +\toprule +\textbf{Name} & \textbf{Unit} & \textbf{Description} & \textbf{Default} \\ +\midrule +\endhead +material\_string & string & Material name of this volume, defined using Union\_make\_material & 0 \\ +\textbf{priority} & 1 & Priotiry of the volume (can not be the same as another volume) A high priority is on top of low. & \\ +\textbf{radius} & m & Outer radius volume in (x,z) plane & \\ +\textbf{yheight} & m & Cylinder height in (y) direction & \\ +visualize & 1 & Set to 0 if you wish to hide this geometry in mcdisplay & 1 \\ +target\_index & 1 & Focuses on component a component this many steps further in the component sequence & 0 \\ +target\_x & m & X Position of target to focus at & 0 \\ +target\_y & m & Y Position of target to focus at & 0 \\ +target\_z & m & Z 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 \\ +curved\_surface & string & Comma seperated string of Union surface definitions defined prior to this component, applied to curved wall of cylinder & 0 \\ +top\_surface & string & Comma seperated string of Union surface definitions defined prior to this component, applied to +y top face of cylinder & 0 \\ +bottom\_surface & string & Comma seperated string of Union surface definitions defined prior to this component, applied to -y bottom face of cylinder & 0 \\ +all\_face\_surface & string & Comma seperated string of Union surface definitions defined prior to this component, applied to all faces above & 0 \\ +cut\_surface & string & Comma seperated string of Union surface definitions defined prior to this component, applied to all internal cuts & 0 \\ +init & string & Name of Union\_init component (typically "init", default) & "init" \\ +\bottomrule +\end{longtable} + +\subsection*{Links} +\begin{itemize} + \item \href{run:/home/willend/willend-McCode/mcstas-comps/union/Union_cylinder.comp}{Source code} for \texttt{Union\_cylinder.comp}. +\end{itemize} +\IfFileExists{Union_cylinder_static.tex}{\input{Union_cylinder_static.tex}}{} \ No newline at end of file diff --git a/docs/manuals/mcstas/union/Union_init.tex b/docs/manuals/mcstas/union/Union_init.tex new file mode 100644 index 000000000..bf91daa4d --- /dev/null +++ b/docs/manuals/mcstas/union/Union_init.tex @@ -0,0 +1,47 @@ +\section{The \texttt{Union\_init} McStas Component} +Initialize component that needs to be place before any Union component + +\subsection*{Identification} +\begin{itemize} + \item \textbf{Site:} + \item \textbf{Author:} Mads Bertelsen + \item \textbf{Origin:} ESS DMSC + \item \textbf{Date:} 20.08.15 +\end{itemize} + +\subsection*{Description} +\begin{lstlisting} +Part of the Union components, a set of components that work together and thus +sperates 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 this component +3) Geometries are placed using Union_box/cylinder/sphere, assigned a material +4) A Union_master component placed after all of the above + +Only in step 4 will any simulation happen, and per default all geometries +defined before the master, but after the previous will be simulated here. + +There is a dedicated manual available for the Union_components + +Algorithm: +Described elsewhere +\end{lstlisting} + +\subsection*{Input parameters} +Parameters in \textbf{boldface} are required; the others are optional. + +\begin{longtable}{p{0.22\textwidth}p{0.12\textwidth}p{0.46\textwidth}p{0.14\textwidth}} +\toprule +\textbf{Name} & \textbf{Unit} & \textbf{Description} & \textbf{Default} \\ +\midrule +\endhead +\bottomrule +\end{longtable} + +\subsection*{Links} +\begin{itemize} + \item \href{run:/home/willend/willend-McCode/mcstas-comps/union/Union_init.comp}{Source code} for \texttt{Union\_init.comp}. +\end{itemize} +\IfFileExists{Union_init_static.tex}{\input{Union_init_static.tex}}{} \ No newline at end of file diff --git a/docs/manuals/mcstas/union/Union_logger_1D.tex b/docs/manuals/mcstas/union/Union_logger_1D.tex new file mode 100644 index 000000000..ba01c65d6 --- /dev/null +++ b/docs/manuals/mcstas/union/Union_logger_1D.tex @@ -0,0 +1,73 @@ +\section{The \texttt{Union\_logger\_1D} McStas Component} +One dimensional Union logger for several possible variables + +\subsection*{Identification} +\begin{itemize} + \item \textbf{Site:} + \item \textbf{Author:} Mads Bertelsen + \item \textbf{Origin:} University of Copenhagen + \item \textbf{Date:} 20.08.15 +\end{itemize} + +\subsection*{Description} +\begin{lstlisting} +Part of the Union components, a set of components that work together and thus +sperates 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, assigned a material +4) A Union_master component placed after all of 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 + +This logger in particular is not finished. It is supposed to allow several +different variables to be histogrammed, but currently only time is supported + +A logger will log something for scattering events happening to certain volumes, +which are specified in the target_geometry string. By leaving it blank, all +geometries are logged, even the ones not defined at this point in the +instrument file. If a list og target_geometries is selected, one can further +narrow the events logged by providing a list of process names in target_process +which need to correspond with names of defined Union_process components. + +To use the logger_conditional_extend function, set it to some integer value n +and make and extend section to the master component that runs the geometry. +In this extend function, logger_conditional_extend[n] is 1 if the conditional +stack evaluated to true, 0 if not. This way one can check what rays is logged +using regular McStas monitors. Only works if a conditional is applied to this +logger. +\end{lstlisting} + +\subsection*{Input parameters} +Parameters in \textbf{boldface} are required; the others are optional. + +\begin{longtable}{p{0.22\textwidth}p{0.12\textwidth}p{0.46\textwidth}p{0.14\textwidth}} +\toprule +\textbf{Name} & \textbf{Unit} & \textbf{Description} & \textbf{Default} \\ +\midrule +\endhead +target\_geometry & string & Comma seperated list of geometry names that will be logged, leave empty for all volumes (even not defined yet) & "NULL" \\ +target\_process & string & Comma seperated names of physical processes, if volumes are selected, one can select Union\_process names & "NULL" \\ +\textbf{min\_value} & 1 & Histogram boundery for logged value & \\ +\textbf{max\_value} & 1 & Histogram boundery for logged value & \\ +n1 & 1 & Number of bins in histogram & 90 \\ +variable & string & Time for time in seconds, q for magnitude of scattering vector in 1/AA. & "time" \\ +filename & string & Filename of produced data file & "NULL" \\ +order\_total & 1 & Only log rays that scatter for the n'th time, 0 for all orders & 0 \\ +order\_volume & 1 & Only log rays that scatter for the n'th time in the same geometry & 0 \\ +order\_volume\_process & 1 & Only log rays that scatter for the n'th time in the same geometry, using the same process & 0 \\ +logger\_conditional\_extend\_index & 1 & If a conditional is used with this logger, the result of each conditional calculation can be made available in extend as a array called "logger\_conditional\_extend", and one would then acces logger\_conditional\_extend[n] if logger\_conditional\_extend\_index is set to n & -1 \\ +init & string & Name of Union\_init component (typically "init", default) & "init" \\ +\bottomrule +\end{longtable} + +\subsection*{Links} +\begin{itemize} + \item \href{run:/home/willend/willend-McCode/mcstas-comps/union/Union_logger_1D.comp}{Source code} for \texttt{Union\_logger\_1D.comp}. +\end{itemize} +\IfFileExists{Union_logger_1D_static.tex}{\input{Union_logger_1D_static.tex}}{} \ No newline at end of file diff --git a/docs/manuals/mcstas/union/Union_logger_2DQ.tex b/docs/manuals/mcstas/union/Union_logger_2DQ.tex new file mode 100644 index 000000000..3ba7e3e3e --- /dev/null +++ b/docs/manuals/mcstas/union/Union_logger_2DQ.tex @@ -0,0 +1,76 @@ +\section{The \texttt{Union\_logger\_2DQ} McStas Component} +Two dimensional logger of scattering vector for Union components + +\subsection*{Identification} +\begin{itemize} + \item \textbf{Site:} + \item \textbf{Author:} Mads Bertelsen + \item \textbf{Origin:} University of Copenhagen + \item \textbf{Date:} 20.08.15 +\end{itemize} + +\subsection*{Description} +\begin{lstlisting} +Part of the Union components, a set of components that work together and thus +sperates 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, assigned a material +4) A Union_master component placed after all of 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 + +This logger logs a 2D projection of the scattering vector, q in the lab frame. + +A logger will log something for scattering events happening to certain volumes, +which are specified in the target_geometry string. By leaving it blank, all +geometries are logged, even the ones not defined at this point in the +instrument file. If a list og target_geometries is selected, one can further +narrow the events logged by providing a list of process names in target_process +which need to correspond with names of defined Union_process components. + +To use the logger_conditional_extend function, set it to some integer value n +and make and extend section to the master component that runs the geometry. +In this extend function, logger_conditional_extend[n] is 1 if the conditional +stack evaluated to true, 0 if not. This way one can check what rays is logged +using regular McStas monitors. Only works if a conditional is applied to this +logger. +\end{lstlisting} + +\subsection*{Input parameters} +Parameters in \textbf{boldface} are required; the others are optional. + +\begin{longtable}{p{0.22\textwidth}p{0.12\textwidth}p{0.46\textwidth}p{0.14\textwidth}} +\toprule +\textbf{Name} & \textbf{Unit} & \textbf{Description} & \textbf{Default} \\ +\midrule +\endhead +target\_geometry & string & Comma seperated list of geometry names that will be logged, leave empty for all volumes (even not defined yet) & "NULL" \\ +target\_process & string & Comma seperated names of physical processes, if volumes are selected, one can select Union\_process names & "NULL" \\ +Q\_direction\_1 & string & Q direction for first axis ("x", "y" or "z") & "x" \\ +Q1\_min & AA\textasciicircum{}-1 & Histogram boundery, min q value for first axis & -5 \\ +Q1\_max & AA\textasciicircum{}-1 & Histogram boundery, max q value for first axis & 5 \\ +n1 & 1 & Number of bins for first axis & 90 \\ +Q\_direction\_2 & string & Q direction for second axis ("x", "y" or "z") & "z" \\ +Q2\_min & AA\textasciicircum{}-1 & Histogram boundery, min q value for second axis & -5 \\ +Q2\_max & AA\textasciicircum{}-1 & Histogram boundery, max q value for second axis & 5 \\ +n2 & 1 & Number of bins for second axis & 90 \\ +filename & string & Filename of produced data file & "NULL" \\ +order\_total & 1 & Only log rays that scatter for the n'th time, 0 for all orders & 0 \\ +order\_volume & 1 & Only log rays that scatter for the n'th time in the same geometry & 0 \\ +order\_volume\_process & 1 & Only log rays that scatter for the n'th time in the same geometry, uwsing the same process & 0 \\ +logger\_conditional\_extend\_index & 1 & If a conditional is used with this logger, the result of each conditional calculation can be made available in extend as a array called "logger\_conditional\_extend", and one would then acces logger\_conditional\_extend[n] if logger\_conditional\_extend\_index is set to n & -1 \\ +init & string & Name of Union\_init component (typically "init", default) & "init" \\ +\bottomrule +\end{longtable} + +\subsection*{Links} +\begin{itemize} + \item \href{run:/home/willend/willend-McCode/mcstas-comps/union/Union_logger_2DQ.comp}{Source code} for \texttt{Union\_logger\_2DQ.comp}. +\end{itemize} +\IfFileExists{Union_logger_2DQ_static.tex}{\input{Union_logger_2DQ_static.tex}}{} \ No newline at end of file diff --git a/docs/manuals/mcstas/union/Union_logger_2D_kf.tex b/docs/manuals/mcstas/union/Union_logger_2D_kf.tex new file mode 100644 index 000000000..11723b88c --- /dev/null +++ b/docs/manuals/mcstas/union/Union_logger_2D_kf.tex @@ -0,0 +1,77 @@ +\section{The \texttt{Union\_logger\_2D\_kf} McStas Component} +Two dimensional logger of final wavevector for Union components + +\subsection*{Identification} +\begin{itemize} + \item \textbf{Site:} + \item \textbf{Author:} Mads Bertelsen + \item \textbf{Origin:} University of Copenhagen + \item \textbf{Date:} 20.08.15 +\end{itemize} + +\subsection*{Description} +\begin{lstlisting} +Part of the Union components, a set of components that work together and thus +sperates 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, assigned a material +4) A Union_master component placed after all of 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 + +This logger logs a 2D projection of the final wavevector after each scattering +in the lab frame. + +A logger will log something for scattering events happening to certain volumes, +which are specified in the target_geometry string. By leaving it blank, all +geometries are logged, even the ones not defined at this point in the +instrument file. If a list og target_geometries is selected, one can further +narrow the events logged by providing a list of process names in target_process +which need to correspond with names of defined Union_process components. + +To use the logger_conditional_extend function, set it to some integer value n +and make and extend section to the master component that runs the geometry. +In this extend function, logger_conditional_extend[n] is 1 if the conditional +stack evaluated to true, 0 if not. This way one can check what rays is logged +using regular McStas monitors. Only works if a conditional is applied to this +logger. +\end{lstlisting} + +\subsection*{Input parameters} +Parameters in \textbf{boldface} are required; the others are optional. + +\begin{longtable}{p{0.22\textwidth}p{0.12\textwidth}p{0.46\textwidth}p{0.14\textwidth}} +\toprule +\textbf{Name} & \textbf{Unit} & \textbf{Description} & \textbf{Default} \\ +\midrule +\endhead +target\_geometry & string & Comma seperated list of geometry names that will be logged, leave empty for all volumes (even not defined yet) & "NULL" \\ +target\_process & string & Comma seperated names of physical processes, if volumes are selected, one can select Union\_process names & "NULL" \\ +Q1\_min & AA\textasciicircum{}-1 & Histogram boundery, min kf value for first axis & -5 \\ +Q1\_max & AA\textasciicircum{}-1 & Histogram boundery, max kf value for first axis & 5 \\ +Q2\_min & AA\textasciicircum{}-1 & Histogram boundery, min kf value for second axis & -5 \\ +Q2\_max & AA\textasciicircum{}-1 & Histogram boundery, max kf value for second axis & 5 \\ +Q\_direction\_1 & string & kf direction for first axis ("x", "y" or "z") & "x" \\ +Q\_direction\_2 & string & kf direction for second axis ("x", "y" or "z") & "z" \\ +filename & string & Filename of produced data file & "NULL" \\ +n1 & 1 & Number of bins for first axis & 90 \\ +n2 & 1 & Number of bins for second axis & 90 \\ +order\_total & 1 & Only log rays that scatter for the n'th time, 0 for all orders & 0 \\ +order\_volume & 1 & Only log rays that scatter for the n'th time in the same geometry & 0 \\ +order\_volume\_process & 1 & Only log rays that scatter for the n'th time in the same geometry, using the same process & 0 \\ +logger\_conditional\_extend\_index & 1 & If a conditional is used with this logger, the result of each conditional calculation can be made available in extend as a array called "logger\_conditional\_extend", and one would then acces logger\_conditional\_extend[n] if logger\_conditional\_extend\_index is set to n & -1 \\ +init & string & Name of Union\_init component (typically "init", default) & "init" \\ +\bottomrule +\end{longtable} + +\subsection*{Links} +\begin{itemize} + \item \href{run:/home/willend/willend-McCode/mcstas-comps/union/Union_logger_2D_kf.comp}{Source code} for \texttt{Union\_logger\_2D\_kf.comp}. +\end{itemize} +\IfFileExists{Union_logger_2D_kf_static.tex}{\input{Union_logger_2D_kf_static.tex}}{} \ No newline at end of file diff --git a/docs/manuals/mcstas/union/Union_logger_2D_kf_time.tex b/docs/manuals/mcstas/union/Union_logger_2D_kf_time.tex new file mode 100644 index 000000000..f8c7a7df4 --- /dev/null +++ b/docs/manuals/mcstas/union/Union_logger_2D_kf_time.tex @@ -0,0 +1,81 @@ +\section{The \texttt{Union\_logger\_2D\_kf\_time} McStas Component} +Two dimensional logger of wavevector for a range of time bins + +\subsection*{Identification} +\begin{itemize} + \item \textbf{Site:} + \item \textbf{Author:} Mads Bertelsen + \item \textbf{Origin:} University of Copenhagen + \item \textbf{Date:} 20.08.15 +\end{itemize} + +\subsection*{Description} +\begin{lstlisting} +Part of the Union components, a set of components that work together and thus +sperates 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, assigned a material +4) A Union_master component placed after all of 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 + +This logger logs a 2D projection of the final wavevector after each scattering +in the lab frame. It will do so for a number of time_bins, making it possible +to make a animation, but beware of memory / diskspace requirements. + +A logger will log something for scattering events happening to certain volumes, +which are specified in the target_geometry string. By leaving it blank, all +geometries are logged, even the ones not defined at this point in the +instrument file. If a list og target_geometries is selected, one can further +narrow the events logged by providing a list of process names in target_process +which need to correspond with names of defined Union_process components. + +To use the logger_conditional_extend function, set it to some integer value n +and make and extend section to the master component that runs the geometry. +In this extend function, logger_conditional_extend[n] is 1 if the conditional +stack evaluated to true, 0 if not. This way one can check what rays is logged +using regular McStas monitors. Only works if a conditional is applied to this +logger. +\end{lstlisting} + +\subsection*{Input parameters} +Parameters in \textbf{boldface} are required; the others are optional. + +\begin{longtable}{p{0.22\textwidth}p{0.12\textwidth}p{0.46\textwidth}p{0.14\textwidth}} +\toprule +\textbf{Name} & \textbf{Unit} & \textbf{Description} & \textbf{Default} \\ +\midrule +\endhead +target\_geometry & string & Comma seperated list of geometry names that will be logged, leave empty for all volumes (even not defined yet) & "NULL" \\ +target\_process & string & Comma seperated names of physical processes, if volumes are selected, one can select Union\_process names & "NULL" \\ +Q1\_min & A\textasciicircum{}-1 & Histogram boundery, min kf value for first axis & -5 \\ +Q1\_max & A\textasciicircum{}-1 & Histogram boundery, max kf value for first axis & 5 \\ +Q2\_min & A\textasciicircum{}-1 & Histogram boundery, min kf value for second axis & -5 \\ +Q2\_max & A\textasciicircum{}-1 & Histogram boundery, max kf value for second axis & 5 \\ +time\_min & s & Minimum time & 0 \\ +time\_max & s & Maximum time & 1 \\ +Q\_direction\_1 & string & kf direction for first axis ("x", "y" or "z") & "x" \\ +Q\_direction\_2 & string & kf direction for second axis ("x", "y" or "z") & "z" \\ +filename & string & Filename of produced data file & "NULL" \\ +n1 & 1 & Number of bins for first axis & 90 \\ +n2 & 1 & Number of bins for second axis & 90 \\ +time\_bins & 1 & Number of time bins & 10 \\ +order\_total & 1 & Only log rays that scatter for the n'th time, 0 for all orders & 0 \\ +order\_volume & 1 & Only log rays that scatter for the n'th time in the same geometry & 0 \\ +order\_volume\_process & 1 & Only log rays that scatter for the n'th time in the same geometry, using the same process & 0 \\ +logger\_conditional\_extend\_index & 1 & If a conditional is used with this logger, the result of each conditional calculation can be made available in extend as a array called "logger\_conditional\_extend", and one would then acces logger\_conditional\_extend[n] if logger\_conditional\_extend\_index is set to n & -1 \\ +init & string & Name of Union\_init component (typically "init", default) & "init" \\ +\bottomrule +\end{longtable} + +\subsection*{Links} +\begin{itemize} + \item \href{run:/home/willend/willend-McCode/mcstas-comps/union/Union_logger_2D_kf_time.comp}{Source code} for \texttt{Union\_logger\_2D\_kf\_time.comp}. +\end{itemize} +\IfFileExists{Union_logger_2D_kf_time_static.tex}{\input{Union_logger_2D_kf_time_static.tex}}{} \ No newline at end of file diff --git a/docs/manuals/mcstas/union/Union_logger_2D_space.tex b/docs/manuals/mcstas/union/Union_logger_2D_space.tex new file mode 100644 index 000000000..b9ea78cc0 --- /dev/null +++ b/docs/manuals/mcstas/union/Union_logger_2D_space.tex @@ -0,0 +1,78 @@ +\section{The \texttt{Union\_logger\_2D\_space} McStas Component} +Two dimensional spatial logger for the Union components + +\subsection*{Identification} +\begin{itemize} + \item \textbf{Site:} + \item \textbf{Author:} Mads Bertelsen + \item \textbf{Origin:} University of Copenhagen + \item \textbf{Date:} 20.08.15 +\end{itemize} + +\subsection*{Description} +\begin{lstlisting} +Part of the Union components, a set of components that work together and thus +sperates 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, assigned a material +4) A Union_master component placed after all of 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 + +This logger logs a 2D projection of the position of each scattering in the lab frame. + +This logger needs to be placed in space, the position is the center of the histogram. + +A logger will log something for scattering events happening to certain volumes, +which are specified in the target_geometry string. By leaving it blank, all +geometries are logged, even the ones not defined at this point in the +instrument file. If a list og target_geometries is selected, one can further +narrow the events logged by providing a list of process names in target_process +which need to correspond with names of defined Union_process components. + +To use the logger_conditional_extend function, set it to some integer value n +and make and extend section to the master component that runs the geometry. +In this extend function, logger_conditional_extend[n] is 1 if the conditional +stack evaluated to true, 0 if not. This way one can check what rays is logged +using regular McStas monitors. Only works if a conditional is applied to this +logger. +\end{lstlisting} + +\subsection*{Input parameters} +Parameters in \textbf{boldface} are required; the others are optional. + +\begin{longtable}{p{0.22\textwidth}p{0.12\textwidth}p{0.46\textwidth}p{0.14\textwidth}} +\toprule +\textbf{Name} & \textbf{Unit} & \textbf{Description} & \textbf{Default} \\ +\midrule +\endhead +target\_geometry & string & Comma seperated list of geometry names that will be logged, leave empty for all volumes (even not defined yet) & "NULL" \\ +target\_process & string & Comma seperated names of physical processes, if volumes are selected, one can select Union\_process names & "NULL" \\ +D\_direction\_1 & string & Direction for first axis ("x", "y" or "z") & "x" \\ +D1\_min & m & Histogram boundery, min position value for first axis & -5 \\ +D1\_max & m & Histogram boundery, max position value for first axis & 5 \\ +n1 & 1 & Number of bins for first axis & 90 \\ +D\_direction\_2 & string & Direction for second axis ("x", "y" or "z") & "z" \\ +D2\_min & m & Histogram boundery, min position value for second axis & -5 \\ +D2\_max & m & Histogram boundery, max position value for second axis & 5 \\ +n2 & 1 & Number of bins for second axis & 90 \\ +filename & string & Filename of produced data file & "NULL" \\ +order\_total & 1 & Only log rays that scatter for the n'th time, 0 for all orders & 0 \\ +order\_volume & 1 & Only log rays that scatter for the n'th time in the same geometry & 0 \\ +order\_volume\_process & 1 & Only log rays that scatter for the n'th time in the same geometry, using the same process & 0 \\ +logger\_conditional\_extend\_index & 1 & If a conditional is used with this logger, the result of each conditional calculation can be made available in extend as a array called "logger\_conditional\_extend", and one would then acces logger\_conditional\_extend[n] if logger\_conditional\_extend\_index is set to n & -1 \\ +init & string & Name of Union\_init component (typically "init", default) & "init" \\ +\bottomrule +\end{longtable} + +\subsection*{Links} +\begin{itemize} + \item \href{run:/home/willend/willend-McCode/mcstas-comps/union/Union_logger_2D_space.comp}{Source code} for \texttt{Union\_logger\_2D\_space.comp}. +\end{itemize} +\IfFileExists{Union_logger_2D_space_static.tex}{\input{Union_logger_2D_space_static.tex}}{} \ No newline at end of file diff --git a/docs/manuals/mcstas/union/Union_logger_2D_space_time.tex b/docs/manuals/mcstas/union/Union_logger_2D_space_time.tex new file mode 100644 index 000000000..88d45e88f --- /dev/null +++ b/docs/manuals/mcstas/union/Union_logger_2D_space_time.tex @@ -0,0 +1,81 @@ +\section{The \texttt{Union\_logger\_2D\_space\_time} McStas Component} +Two dimensional spatail logger for a number of time bins + +\subsection*{Identification} +\begin{itemize} + \item \textbf{Site:} + \item \textbf{Author:} Mads Bertelsen + \item \textbf{Origin:} University of Copenhagen + \item \textbf{Date:} 20.08.15 +\end{itemize} + +\subsection*{Description} +\begin{lstlisting} +Part of the Union components, a set of components that work together and thus +sperates 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, assigned a material +4) A Union_master component placed after all of 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 + +This logger logs a 2D projection of the position of each scattering in the lab +frame. Using the time_bins one can select to get this project for different +time slots, effectively making a small animation of what happens. + +A logger will log something for scattering events happening to certain volumes, +which are specified in the target_geometry string. By leaving it blank, all +geometries are logged, even the ones not defined at this point in the +instrument file. If a list og target_geometries is selected, one can further +narrow the events logged by providing a list of process names in target_process +which need to correspond with names of defined Union_process components. + +To use the logger_conditional_extend function, set it to some integer value n +and make and extend section to the master component that runs the geometry. +In this extend function, logger_conditional_extend[n] is 1 if the conditional +stack evaluated to true, 0 if not. This way one can check what rays is logged +using regular McStas monitors. Only works if a conditional is applied to this +logger. +\end{lstlisting} + +\subsection*{Input parameters} +Parameters in \textbf{boldface} are required; the others are optional. + +\begin{longtable}{p{0.22\textwidth}p{0.12\textwidth}p{0.46\textwidth}p{0.14\textwidth}} +\toprule +\textbf{Name} & \textbf{Unit} & \textbf{Description} & \textbf{Default} \\ +\midrule +\endhead +target\_geometry & string & Comma seperated list of geometry names that will be logged, leave empty for all volumes (even not defined yet) & "NULL" \\ +target\_process & string & Comma seperated names of physical processes, if volumes are selected, one can select Union\_process names & "NULL" \\ +D1\_min & m & Histogram boundery, min position value for first axis & -5 \\ +D1\_max & m & Histogram boundery, max position value for first axis & 5 \\ +D2\_min & m & Histogram boundery, min position value for second axis & -5 \\ +D2\_max & m & Histogram boundery, max position value for second axis & 5 \\ +time\_min & s & Minimum time & 0 \\ +time\_max & s & Maximum time & 1 \\ +D\_direction\_1 & string & Direction for first axis ("x", "y" or "z") & "x" \\ +D\_direction\_2 & string & Direction for second axis ("x", "y" or "z") & "z" \\ +filename & string & Filename of produced data file & "NULL" \\ +n1 & 1 & Number of bins for first axis & 90 \\ +n2 & 1 & Number of bins for second axis & 90 \\ +time\_bins & 1 & Number of time bins & 10 \\ +order\_total & 1 & Only log rays that scatter for the n'th time, 0 for all orders & 0 \\ +order\_volume & 1 & Only log rays that scatter for the n'th time in the same geometry & 0 \\ +order\_volume\_process & 1 & Only log rays that scatter for the n'th time in the same geometry, using the same process & 0 \\ +logger\_conditional\_extend\_index & 1 & If a conditional is used with this logger, the result of each conditional calculation can be made available in extend as a array called "logger\_conditional\_extend", and one would then acces logger\_conditional\_extend[n] if logger\_conditional\_extend\_index is set to n & -1 \\ +init & string & Name of Union\_init component (typically "init", default) & "init" \\ +\bottomrule +\end{longtable} + +\subsection*{Links} +\begin{itemize} + \item \href{run:/home/willend/willend-McCode/mcstas-comps/union/Union_logger_2D_space_time.comp}{Source code} for \texttt{Union\_logger\_2D\_space\_time.comp}. +\end{itemize} +\IfFileExists{Union_logger_2D_space_time_static.tex}{\input{Union_logger_2D_space_time_static.tex}}{} \ No newline at end of file diff --git a/docs/manuals/mcstas/union/Union_logger_3D_space.tex b/docs/manuals/mcstas/union/Union_logger_3D_space.tex new file mode 100644 index 000000000..7ac9d4d43 --- /dev/null +++ b/docs/manuals/mcstas/union/Union_logger_3D_space.tex @@ -0,0 +1,82 @@ +\section{The \texttt{Union\_logger\_3D\_space} McStas Component} +Three dimensional logger for spatial dimensions + +\subsection*{Identification} +\begin{itemize} + \item \textbf{Site:} + \item \textbf{Author:} Mads Bertelsen + \item \textbf{Origin:} University of Copenhagen + \item \textbf{Date:} 20.08.15 +\end{itemize} + +\subsection*{Description} +\begin{lstlisting} +Part of the Union components, a set of components that work together and thus +sperates 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, assigned a material +4) A Union_master component placed after all of 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 + +This logger logs a 2D projection of the position of each scattering in the lab +frame. It does this in n3 space slices, so one can get a full 3D histogram of +scattering positions. + +A logger will log something for scattering events happening to certain volumes, +which are specified in the target_geometry string. By leaving it blank, all +geometries are logged, even the ones not defined at this point in the +instrument file. If a list og target_geometries is selected, one can further +narrow the events logged by providing a list of process names in target_process +which need to correspond with names of defined Union_process components. + +To use the logger_conditional_extend function, set it to some integer value n +and make and extend section to the master component that runs the geometry. +In this extend function, logger_conditional_extend[n] is 1 if the conditional +stack evaluated to true, 0 if not. This way one can check what rays is logged +using regular McStas monitors. Only works if a conditional is applied to this +logger. +\end{lstlisting} + +\subsection*{Input parameters} +Parameters in \textbf{boldface} are required; the others are optional. + +\begin{longtable}{p{0.22\textwidth}p{0.12\textwidth}p{0.46\textwidth}p{0.14\textwidth}} +\toprule +\textbf{Name} & \textbf{Unit} & \textbf{Description} & \textbf{Default} \\ +\midrule +\endhead +target\_geometry & string & Comma seperated list of geometry names that will be logged, leave empty for all volumes (even not defined yet) & "NULL" \\ +target\_process & string & Comma seperated names of physical processes, if volumes are selected, one can select Union\_process names & "NULL" \\ +D1\_min & m & histogram boundery, min position value for first axis & -1 \\ +D1\_max & m & histogram boundery, max position value for first axis & 1 \\ +D2\_min & m & histogram boundery, min position value for second axis & -1 \\ +D2\_max & m & histogram boundery, max position value for second axis & 1 \\ +D3\_min & m & histogram boundery, min position value for third axis & -1 \\ +D3\_max & m & histogram boundery, max position value for third axis & 1 \\ +D\_direction\_1 & string & Direction for first axis ("x", "y" or "z") & "x" \\ +D\_direction\_2 & string & Direction for second axis ("x", "y" or "z") & "z" \\ +D\_direction\_3 & string & Direction for second axis ("x", "y" or "z") & "z" \\ +filename & string & Filename of produced data file & "NULL" \\ +n1 & 1 & number of bins for first axis & 90 \\ +n2 & 1 & number of bins for second axis & 90 \\ +n3 & 1 & number of bins for third axis & 10 \\ +order\_total & 1 & Only log rays that scatter for the n'th time, 0 for all orders & 0 \\ +order\_volume & 1 & Only log rays that scatter for the n'th time in the same geometry & 0 \\ +order\_volume\_process & 1 & Only log rays that scatter for the n'th time in the same geometry, using the same process & 0 \\ +logger\_conditional\_extend\_index & 1 & If a conditional is used with this logger, the result of each conditional calculation can be made available in extend as a array called "logger\_conditional\_extend", and one would then acces logger\_conditional\_extend[n] if logger\_conditional\_extend\_index is set to n & -1 \\ +init & string & name of Union\_init component (typically "init", default) & "init" \\ +\bottomrule +\end{longtable} + +\subsection*{Links} +\begin{itemize} + \item \href{run:/home/willend/willend-McCode/mcstas-comps/union/Union_logger_3D_space.comp}{Source code} for \texttt{Union\_logger\_3D\_space.comp}. +\end{itemize} +\IfFileExists{Union_logger_3D_space_static.tex}{\input{Union_logger_3D_space_static.tex}}{} \ No newline at end of file diff --git a/docs/manuals/mcstas/union/Union_make_material.tex b/docs/manuals/mcstas/union/Union_make_material.tex new file mode 100644 index 000000000..33f62fcf5 --- /dev/null +++ b/docs/manuals/mcstas/union/Union_make_material.tex @@ -0,0 +1,55 @@ +\section{The \texttt{Union\_make\_material} McStas Component} +Component that takes a number of Union processes and constructs a Union material + +\subsection*{Identification} +\begin{itemize} + \item \textbf{Site:} + \item \textbf{Author:} Mads Bertelsen + \item \textbf{Origin:} University of Copenhagen + \item \textbf{Date:} 20.08.15 +\end{itemize} + +\subsection*{Description} +\begin{lstlisting} +Part of the Union components, a set of components that work together and thus +sperates 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 this component +3) Geometries are placed using Union_box/cylinder/sphere, assigned a material +4) A Union_master component placed after all of the above + +Only in step 4 will any simulation happen, and per default all geometries +defined before the master, but after the previous will be simulated here. + +There is a dedicated manual available for the Union_components + +Algorithm: +Described elsewhere +\end{lstlisting} + +\subsection*{Input parameters} +Parameters in \textbf{boldface} are required; the others are optional. + +\begin{longtable}{p{0.22\textwidth}p{0.12\textwidth}p{0.46\textwidth}p{0.14\textwidth}} +\toprule +\textbf{Name} & \textbf{Unit} & \textbf{Description} & \textbf{Default} \\ +\midrule +\endhead +process\_string & string & Comma seperated names of physical processes & "NULL" \\ +\textbf{my\_absorption} & 1/m & Inverse penetration depth from absorption at standard energy & \\ +absorber & 0/1 & Control parameter, if set to 1 the material will have no scattering processes & 0 \\ +refraction\_density & g/cm3 & Density of the refracting material. density \textless{} 0 means the material is outside/before the shape. & 0 \\ +refraction\_sigma\_coh & barn & Coherent cross section of refracting material. Use negative value to indicate a negative coherent scattering length & 0 \\ +refraction\_weight & g/mol & Molar mass of the refracting material & 0 \\ +refraction\_SLD & AA\textasciicircum{}-2 & Scattering length density of material (overwrites sigma\_coh, density and weight) & -1500 \\ +init & string & Name of Union\_init component (typically "init", default) & "init" \\ +\bottomrule +\end{longtable} + +\subsection*{Links} +\begin{itemize} + \item \href{run:/home/willend/willend-McCode/mcstas-comps/union/Union_make_material.comp}{Source code} for \texttt{Union\_make\_material.comp}. +\end{itemize} +\IfFileExists{Union_make_material_static.tex}{\input{Union_make_material_static.tex}}{} \ No newline at end of file diff --git a/docs/manuals/mcstas/union/Union_master.tex b/docs/manuals/mcstas/union/Union_master.tex new file mode 100644 index 000000000..02c63793e --- /dev/null +++ b/docs/manuals/mcstas/union/Union_master.tex @@ -0,0 +1,59 @@ +\section{The \texttt{Union\_master} McStas Component} +Master component for Union components that performs the overall simulation + +\subsection*{Identification} +\begin{itemize} + \item \textbf{Site:} + \item \textbf{Author:} Mads Bertelsen + \item \textbf{Origin:} University of Copenhagen + \item \textbf{Date:} 20.08.15 +\end{itemize} + +\subsection*{Description} +\begin{lstlisting} +Part of the Union components, a set of components that work together and thus +sperates 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, assigned a material +4) This master component placed after all of 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 + +Algorithm: +Described elsewhere +\end{lstlisting} + +\subsection*{Input parameters} +Parameters in \textbf{boldface} are required; the others are optional. + +\begin{longtable}{p{0.22\textwidth}p{0.12\textwidth}p{0.46\textwidth}p{0.14\textwidth}} +\toprule +\textbf{Name} & \textbf{Unit} & \textbf{Description} & \textbf{Default} \\ +\midrule +\endhead +enable\_refraction & 0/1 & Toggles refraction effects, simulated for all materials that have refraction parameters set & 1 \\ +enable\_reflection & 0/1 & Toggles reflection effects, simulated for all materials that have refraction parameters set & 1 \\ +verbal & 0/1 & Toogles printing information loaded during initialize & 0 \\ +list\_verbal & 0/1 & Toogles information of all internal lists in intersection network & 0 \\ +finally\_verbal & 0/1 & Toogles information about cleanup performed in finally section & 0 \\ +allow\_inside\_start & 0/1 & Set to 1 if rays are expected to start inside a volume in this master & 0 \\ +enable\_tagging & 0/1 & Enable tagging of ray history (geometry, scattering process) & 0 \\ +history\_limit & 1 & Limit the number of unique histories that are saved & 300000 \\ +enable\_conditionals & 0/1 & Use conditionals with this master & 1 \\ +inherit\_number\_of\_scattering\_events & 0/1 & Inherit the number of scattering events from last master & 0 \\ +weight\_ratio\_limit & 1 & Limit on the ratio between initial weight and current, ray absorbed if ratio becomes lower than limit & 1e-90 \\ +init & string & Name of Union\_init component (typically "init", default) & "init" \\ +\bottomrule +\end{longtable} + +\subsection*{Links} +\begin{itemize} + \item \href{run:/home/willend/willend-McCode/mcstas-comps/union/Union_master.comp}{Source code} for \texttt{Union\_master.comp}. +\end{itemize} +\IfFileExists{Union_master_static.tex}{\input{Union_master_static.tex}}{} \ No newline at end of file diff --git a/docs/manuals/mcstas/union/Union_master_GPU.tex b/docs/manuals/mcstas/union/Union_master_GPU.tex new file mode 100644 index 000000000..259d0d292 --- /dev/null +++ b/docs/manuals/mcstas/union/Union_master_GPU.tex @@ -0,0 +1,56 @@ +\section{The \texttt{Union\_master\_GPU} McStas Component} +Master component for Union components that performs the overall simulation + +\subsection*{Identification} +\begin{itemize} + \item \textbf{Site:} + \item \textbf{Author:} Mads Bertelsen + \item \textbf{Origin:} University of Copenhagen + \item \textbf{Date:} 20.08.15 +\end{itemize} + +\subsection*{Description} +\begin{lstlisting} +Part of the Union components, a set of components that work together and thus +sperates 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, assigned a material +4) This master component placed after all of 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 + +Algorithm: +Described elsewhere +\end{lstlisting} + +\subsection*{Input parameters} +Parameters in \textbf{boldface} are required; the others are optional. + +\begin{longtable}{p{0.22\textwidth}p{0.12\textwidth}p{0.46\textwidth}p{0.14\textwidth}} +\toprule +\textbf{Name} & \textbf{Unit} & \textbf{Description} & \textbf{Default} \\ +\midrule +\endhead +verbal & 0/1 & Toogles terminal output describing the defined simulation & 1 \\ +list\_verbal & 0/1 & Toogles information of all internal lists in intersection network & 0 \\ +finally\_verbal & 0/1 & Toogles information about cleanup performed in finally section & 0 \\ +allow\_inside\_start & 0/1 & Set to 1 if rays are expected to start inside a volume in this master & 0 \\ +enable\_tagging & 0/1 & Enable tagging of ray history (geometry, scattering process) & 0 \\ +history\_limit & 1 & Limit the number of unique histories that are saved & 300000 \\ +enable\_conditionals & 0/1 & Use conditionals with this master & 1 \\ +inherit\_number\_of\_scattering\_events & 0/1 & Inherit the number of scattering events from last master & 0 \\ +init & & & "init" \\ +\bottomrule +\end{longtable} + +\subsection*{Links} +\begin{itemize} + \item \href{run:/home/willend/willend-McCode/mcstas-comps/union/Union_master_GPU.comp}{Source code} for \texttt{Union\_master\_GPU.comp}. +\end{itemize} +\IfFileExists{Union_master_GPU_static.tex}{\input{Union_master_GPU_static.tex}}{} \ No newline at end of file diff --git a/docs/manuals/mcstas/union/Union_mesh.tex b/docs/manuals/mcstas/union/Union_mesh.tex new file mode 100644 index 000000000..9f5652a43 --- /dev/null +++ b/docs/manuals/mcstas/union/Union_mesh.tex @@ -0,0 +1,80 @@ +\section{The \texttt{Union\_mesh} McStas Component} +Component for including 3D mesh in Union geometry + +\subsection*{Identification} +\begin{itemize} + \item \textbf{Site:} + \item \textbf{Author:} Martin Olsen, and expanded upon by Daniel Lomholt Christensen + \item \textbf{Origin:} University of Copenhagen / ACTNXT project + \item \textbf{Date:} 17.09.18 +\end{itemize} + +\subsection*{Description} +\begin{lstlisting} +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 or stl files as the geometry. +The mesh geometry that is loaded must be a watertight mesh. +In order to check this, the component implements a simple Euler Pointcare value, +To check if the given geometry is watertight. This check is sometimes too rigid, +so a user can set the skip_convex_check parameter in order to not have this +check performed. + + +If you load an off file, we currently only support rank 3 polygons, i.e +triangular meshes. + +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. +\end{lstlisting} + +\subsection*{Input parameters} +Parameters in \textbf{boldface} are required; the others are optional. + +\begin{longtable}{p{0.22\textwidth}p{0.12\textwidth}p{0.46\textwidth}p{0.14\textwidth}} +\toprule +\textbf{Name} & \textbf{Unit} & \textbf{Description} & \textbf{Default} \\ +\midrule +\endhead +filename & str & Name of file that contains the 3D geometry. Can be either .OFF, .off, .STL, or .stl & 0 \\ +material\_string & string & material name of this volume, defined using Union\_make\_material & 0 \\ +\textbf{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 & & & 0 \\ +cut\_surface & & & 0 \\ +target\_index & 1 & Focuses on component a component this many steps further in the component sequence & 0 \\ +target\_x & m & & 0 \\ +target\_y & m & Position of target to focus at & 0 \\ +target\_z & m & & 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 \\ +skip\_convex\_check & 1 & when set to 1, skips the check for whether input .off file is convex. & 0 \\ +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 & name of Union\_init component (typically "init", default) & "init" \\ +\bottomrule +\end{longtable} + +\subsection*{Links} +\begin{itemize} + \item \href{run:/home/willend/willend-McCode/mcstas-comps/union/Union_mesh.comp}{Source code} for \texttt{Union\_mesh.comp}. +\end{itemize} +\IfFileExists{Union_mesh_static.tex}{\input{Union_mesh_static.tex}}{} \ No newline at end of file diff --git a/docs/manuals/mcstas/union/Union_sphere.tex b/docs/manuals/mcstas/union/Union_sphere.tex new file mode 100644 index 000000000..f0f2eb61c --- /dev/null +++ b/docs/manuals/mcstas/union/Union_sphere.tex @@ -0,0 +1,69 @@ +\section{The \texttt{Union\_sphere} McStas Component} +Sphere geometry component for the Union components + +\subsection*{Identification} +\begin{itemize} + \item \textbf{Site:} + \item \textbf{Author:} Mads Bertelsen + \item \textbf{Origin:} University of Copenhagen + \item \textbf{Date:} 20.08.15 +\end{itemize} + +\subsection*{Description} +\begin{lstlisting} +Part of the Union components, a set of components that work together and thus +sperates 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, assigned a material +4) A Union_master component placed after all of 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 position of this component is the center of the sphere + +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. +\end{lstlisting} + +\subsection*{Input parameters} +Parameters in \textbf{boldface} are required; the others are optional. + +\begin{longtable}{p{0.22\textwidth}p{0.12\textwidth}p{0.46\textwidth}p{0.14\textwidth}} +\toprule +\textbf{Name} & \textbf{Unit} & \textbf{Description} & \textbf{Default} \\ +\midrule +\endhead +material\_string & string & material name of this volume, defined using Union\_make\_material & 0 \\ +\textbf{priority} & 1 & priotiry of the volume (can not be the same as another volume) A high priority is on top of low. & \\ +\textbf{radius} & m & Radius of sphere & \\ +visualize & 1 & set to 0 if you wish to hide this geometry in mcdisplay & 1 \\ +target\_index & 1 & Focuses on component a component this many steps further in the component sequence & 0 \\ +target\_x & m & X position of target to focus at & 0 \\ +target\_y & m & Y position of target to focus at & 0 \\ +target\_z & m & Z 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 \\ +surface & 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 \\ +init & string & name of Union\_init component (typically "init", default) & "init" \\ +\bottomrule +\end{longtable} + +\subsection*{Links} +\begin{itemize} + \item \href{run:/home/willend/willend-McCode/mcstas-comps/union/Union_sphere.comp}{Source code} for \texttt{Union\_sphere.comp}. +\end{itemize} +\IfFileExists{Union_sphere_static.tex}{\input{Union_sphere_static.tex}}{} \ No newline at end of file diff --git a/docs/manuals/mcstas/union/Union_stop.tex b/docs/manuals/mcstas/union/Union_stop.tex new file mode 100644 index 000000000..e0f37eb6a --- /dev/null +++ b/docs/manuals/mcstas/union/Union_stop.tex @@ -0,0 +1,47 @@ +\section{The \texttt{Union\_stop} McStas Component} +Stop component that must be placed after all Union components for instrument to compile correctly + +\subsection*{Identification} +\begin{itemize} + \item \textbf{Site:} + \item \textbf{Author:} Mads Bertelsen + \item \textbf{Origin:} University of Copenhagen + \item \textbf{Date:} 20.08.15 +\end{itemize} + +\subsection*{Description} +\begin{lstlisting} +Part of the Union components, a set of components that work together and thus +sperates 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 this component +3) Geometries are placed using Union_box/cylinder/sphere, assigned a material +4) A Union_master component placed after all of the above + +Only in step 4 will any simulation happen, and per default all geometries +defined before the master, but after the previous will be simulated here. + +There is a dedicated manual available for the Union_components + +Algorithm: +Described elsewhere +\end{lstlisting} + +\subsection*{Input parameters} +Parameters in \textbf{boldface} are required; the others are optional. + +\begin{longtable}{p{0.22\textwidth}p{0.12\textwidth}p{0.46\textwidth}p{0.14\textwidth}} +\toprule +\textbf{Name} & \textbf{Unit} & \textbf{Description} & \textbf{Default} \\ +\midrule +\endhead +\bottomrule +\end{longtable} + +\subsection*{Links} +\begin{itemize} + \item \href{run:/home/willend/willend-McCode/mcstas-comps/union/Union_stop.comp}{Source code} for \texttt{Union\_stop.comp}. +\end{itemize} +\IfFileExists{Union_stop_static.tex}{\input{Union_stop_static.tex}}{} \ No newline at end of file From 4039f264f45d5cdf76dfe195afc7ec1c2b509ca1 Mon Sep 17 00:00:00 2001 From: Peter Willendrup Date: Tue, 21 Apr 2026 16:23:56 +0200 Subject: [PATCH 21/43] Remove touch cmd - mcdoc call only --- docs/manuals/mcstas/CMakeLists.txt | 1 - 1 file changed, 1 deletion(-) diff --git a/docs/manuals/mcstas/CMakeLists.txt b/docs/manuals/mcstas/CMakeLists.txt index a0db0191b..873191853 100644 --- a/docs/manuals/mcstas/CMakeLists.txt +++ b/docs/manuals/mcstas/CMakeLists.txt @@ -60,7 +60,6 @@ foreach(NAME sources samples optics monitors misc) add_custom_command( OUTPUT "${NAME}.done" COMMAND "mcdoc" "--tex" "--in-repo" "--dir=mcstas-comps/${NAME}" "--outdir=doc/manuals/mcstas/" - COMMAND "touch" "${NAME}.done" WORKING_DIRECTORY "${PROJECT_BINARY_DIR}" ) endforeach() From a28f3a27a92673ff023ec006973a01450a339828 Mon Sep 17 00:00:00 2001 From: Peter Willendrup Date: Tue, 21 Apr 2026 16:41:52 +0200 Subject: [PATCH 22/43] Use mcdoc to generate .tex and .md snippets, update preamble --- docs/manuals/mcstas/CMakeLists.txt | 14 +++++++++++++- docs/manuals/mcstas/preamble_common.tex | 4 ++-- 2 files changed, 15 insertions(+), 3 deletions(-) diff --git a/docs/manuals/mcstas/CMakeLists.txt b/docs/manuals/mcstas/CMakeLists.txt index 873191853..e988a6684 100644 --- a/docs/manuals/mcstas/CMakeLists.txt +++ b/docs/manuals/mcstas/CMakeLists.txt @@ -56,10 +56,22 @@ message( "LaTeX configuration" ) # set(LATEX_OUTPUT_PATH ".") file(GLOB LIST RELATIVE "${CMAKE_CURRENT_LIST_DIR}" "*.tex" "*.sty" "*.bib" "*.bst" "[m-s]*/*.tex" "[m-s]*/*.parms" "figures/*") +# TeX snippets foreach(NAME sources samples optics monitors misc) + # PWFIXME: ONLY SEMI-FUNCTIONAL add_custom_command( OUTPUT "${NAME}.done" - COMMAND "mcdoc" "--tex" "--in-repo" "--dir=mcstas-comps/${NAME}" "--outdir=doc/manuals/mcstas/" + COMMAND "mcdoc" "--tex" "--in-repo" "--dir=${CMAKE_SOURCE_DIR}/../../../mcstas-comps/${NAME}" "--outdir=${PROJECT_BINARY_DIR}" + WORKING_DIRECTORY "${PROJECT_BINARY_DIR}" + ) +endforeach() + +# MD files +foreach(NAME sources samples optics monitors misc) + # PWFIXME: ONLY SENMI-FUNCTIONAL + add_custom_command( + OUTPUT "${NAME}.mddone" + COMMAND "mcdoc" "--md" "--in-repo" "--dir=${CMAKE_SOURCE_DIR}/../../../mcstas-comps/${NAME}" WORKING_DIRECTORY "${PROJECT_BINARY_DIR}" ) endforeach() diff --git a/docs/manuals/mcstas/preamble_common.tex b/docs/manuals/mcstas/preamble_common.tex index 7f94a031f..85963bcf8 100644 --- a/docs/manuals/mcstas/preamble_common.tex +++ b/docs/manuals/mcstas/preamble_common.tex @@ -15,8 +15,8 @@ % A few macros: \newcommand{\MCS}{McStas\xspace} \newcommand{\mcs}{\texttt{mcstas}\xspace} -\newcommand{\version}{3.6\xspace} -\newcommand{\reldate}{January, 2026} +\newcommand{\version}{3.6.16\xspace} +\newcommand{\reldate}{April, 2026} % Unused: % The next rawfonts package one is used in the ``datablad''. From e370053c82e997e6f59169ad1e690caace4db573 Mon Sep 17 00:00:00 2001 From: Peter Willendrup Date: Tue, 21 Apr 2026 16:47:42 +0200 Subject: [PATCH 23/43] Dont link to comp code --- tools/Python/mcdoc/mcdoc.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/tools/Python/mcdoc/mcdoc.py b/tools/Python/mcdoc/mcdoc.py index 13ff25b75..b5befcb3d 100644 --- a/tools/Python/mcdoc/mcdoc.py +++ b/tools/Python/mcdoc/mcdoc.py @@ -1399,7 +1399,7 @@ def create(self): out.append('') out.append(r'\subsection*{Links}') out.append(r'\begin{itemize}') - out.append(r' \item \href{run:%s}{Source code} for \texttt{%s}.' % (i.filepath, _tex(os.path.basename(i.filepath)))) + out.append(r' \item Component source code found in file \texttt{%s}.' % (_tex(os.path.basename(i.filepath)))) for l in i.links: out.append(r' \item %s' % _tex(l)) out.append(r'\end{itemize}') From efc814d9e1beb9fa78e0d618740a063f451fa9d7 Mon Sep 17 00:00:00 2001 From: Peter Willendrup Date: Tue, 21 Apr 2026 16:50:58 +0200 Subject: [PATCH 24/43] Update comp manual authors --- docs/manuals/mcstas/preamble_comp.tex | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docs/manuals/mcstas/preamble_comp.tex b/docs/manuals/mcstas/preamble_comp.tex index 8140ba07d..78c69a763 100644 --- a/docs/manuals/mcstas/preamble_comp.tex +++ b/docs/manuals/mcstas/preamble_comp.tex @@ -81,7 +81,7 @@ colorlinks=false, % pdfpagemode=UseNone, % PDF-Viewer TOC settings pdfstartview=FitH, % PDF-Viewer - pdfauthor={P. Willendrup, E. Farhi, E. Knudsen, U. Filges, K. Lefmann},% + pdfauthor={P. Willendrup, E. Farhi, E. Knudsen, K. Lefmann},% pdftitle=Component Manual for the neutron ray-tracing package McStas% } From f665420df6775cb49e310c723c4b40e027383d83 Mon Sep 17 00:00:00 2001 From: Peter Willendrup Date: Tue, 21 Apr 2026 16:52:12 +0200 Subject: [PATCH 25/43] Remove, called from CMake/TeX --- tex_snippets | 9 --------- 1 file changed, 9 deletions(-) delete mode 100644 tex_snippets diff --git a/tex_snippets b/tex_snippets deleted file mode 100644 index d9105c813..000000000 --- a/tex_snippets +++ /dev/null @@ -1,9 +0,0 @@ -mcdoc --tex --in-repo -i --dir=mcstas-comps/contrib --outdir=doc/manuals/mcstas/ -mcdoc --tex --in-repo -i --dir=mcstas-comps/misc --outdir=doc/manuals/mcstas/ -mcdoc --tex --in-repo -i --dir=mcstas-comps/monitors --outdir=doc/manuals/mcstas/ -mcdoc --tex --in-repo -i --dir=mcstas-comps/obsolete --outdir=doc/manuals/mcstas/ -mcdoc --tex --in-repo -i --dir=mcstas-comps/optics --outdir=doc/manuals/mcstas/ -mcdoc --tex --in-repo -i --dir=mcstas-comps/samples --outdir=doc/manuals/mcstas/ -mcdoc --tex --in-repo -i --dir=mcstas-comps/sasmodels --outdir=doc/manuals/mcstas/ -mcdoc --tex --in-repo -i --dir=mcstas-comps/sources --outdir=doc/manuals/mcstas/ -mcdoc --tex --in-repo -i --dir=mcstas-comps/union --outdir=doc/manuals/mcstas/ From 47afe1c4e687460180ed1dfc2b128fb5fb489415 Mon Sep 17 00:00:00 2001 From: Peter Willendrup Date: Tue, 21 Apr 2026 16:52:33 +0200 Subject: [PATCH 26/43] Updated manuals... --- docpkg/manuals/mcstas/Component_manual.pdf | Bin 1672998 -> 1117373 bytes docpkg/manuals/mcstas/manual.pdf | Bin 2443234 -> 2443008 bytes 2 files changed, 0 insertions(+), 0 deletions(-) diff --git a/docpkg/manuals/mcstas/Component_manual.pdf b/docpkg/manuals/mcstas/Component_manual.pdf index 3642399884e07296bbca020647ee1905cd65a51f..3c8a7bf2970483c5719ba31a094ae06a57840f54 100644 GIT binary patch delta 887521 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

    l;P=Q+52fB7-=s7Uy>Q6 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ξYOUi8}VayrPTr- zKXezds}bNht;JNTmdCzVq8|>*Ka|~DX#PD^h;+gPP2eHlTBTsYcMXL<{|wPB>p-~u z7iFzUQcs412J4ET*_Hh1$Wb{k3c0Tf2HoyvkIr0&WviSFV@+<{ll6!nHp{BZ>`=se zGthbFWThXN<>Hx4gF}d<&~rX3sI6uCx#x)e7-`58%;5-GLESf@m|$^c6`8HMk-5`> zK0S8|I-;vFXF$e7qEaN_Eqq+ZlrchwD@ous4}N2qHtEF>!+!J2(fKc_mt{tHRKYRs z&&!tFU$bV_#u%okjwSnE9fnAI2CI0krjr4euamOnl&gVO)3J*e&Op1V6MyYzVfwPL zcuVKE z$(_Fo#JB#dLQ%b<->|CF52C6{{fEo#SZ#Q@Tk)nZk`iMd;{v~sgyXTe@a3xZ?8r~m zBwigB;$XtlX)|$Em!p5}bAr=WU9_WGzvU>UEIAse7(RW`j;j=c|_R89@F8*ilC#5k}W&E`}Poa2pA$PudCQm zC@J;Wl_o=nM7%&l{mYH3xqIOarSg*qEJw$xX>#^~PWu@ex$Ayz1f`bQ?>@I|YX{Ew zv%IeEol)0JtXG|Mv$?1nG@LmHceZd^dP65yYb7%*S&O}NXy!D&i?+P#4{%pe(@63rZK2{eg_ z^0J{X(WBgM`6pkhd1@{7XwG&?+g#c(UvLrn$raxKywk*~>Yn0&` zZ(OizwMlQ#m&zM|c(AnrwFxen)y~<&tgbJ=n0(og?7ZNPS)?ki5`2C0_=Y+N*HZFQ z_D>n{nkiJSUv#QfSkUyteQlxpO+I>m?foW4^6&s^6jmZb&^l$Q6C$(S(Wlcd6su&R z?~7*DsJ&Kaaq;I^>OF0*vf=ZY;p}&>hp!#_6Lz$AeA>PL{(c^MlNA-(q*SN+R3PES zqh2Vm!a{Bzth2CaUm4Mgf5I-eHb?)j90G6~SP?KGfHNs+HWWRmTmLL+y*1&pw%3F? z&!V;qYZH}5E@dkAg7RU=LtS=*s-o(~hEma-tLkrTH81G>9@5unr~oeLM+t_g(hS#EH++e19aDhTx&bK@iY_GaPcj_&Ktojh?E55WQy_8K9mWoyHVsjcn@kBiUO zF5ib}VvXc217=5Izn8oB*T;#Q%UUn5kD)ry>jY1)_pi_Uy{XZj_uJuQPv!<)3~} z^J302prW=N?X8X9d?X7o@VG!;ZDkwUug-nx@&1=}r2GLc4F3eHSz@1!NQf(8TC=&{ z;}s-~S3(Gx=3caOe>8A-kaXp9$b&Pry^JWP#KtRJ{FK%kIf3|e^W!=`*7!Ep!4L8? z<74A6PQ?ElR1`ogrIcUSa`0u@I#9@vs~ZH@#n3>vd9t~ zY>2*{9VgSCI;J>fMU!)sBgNY(y#D8JiF9G-pvR%+ubbI)BL4f7A4&4>$J zExW6er`TBG->QyR$8TUGB5CB`3paC*-yo!S+N4!BX7;%72Og-F!f-oRLml~?E@Gqe z5>gAdM9zwcRRT!@AV^TJ{T#P(!nbfQ9s*;1ez_Fi>bC!ZVJvP~o43WhO?rdN-KFP)ZG?3I0rI%t^5!=}_4%Ya;I}UEXrw>DP*#&eU`4|+Kj;y4v`^UJGW!q1$bFEu`HgSgr`lT9 zf;L=llzTjhI0svhJIs1FTrW6F6^c`1R5vWIeyH`uIC-+ois1>_P_6l}tk?N4f5e9F zENYoBV%6nyiOx!@RMIfZTp>JFs@0hL?se&k+TMqpwrH@`tmrT}UdriIwW12tq+rs| z>l^^lEgc}bRoLQYS13^g{%Zus7sGpmuR{#9Dn-ocWnRQXDBcXi=9E${H!#JT%dBDhcUW7@ zX7gGlQwH6ZZOcuS0lV1?O1|

    3uQL|ehJ?Y2wPXtic@;UMlU-D`7$BECwD)r>tVgm~4plZEEXo?N~F#XRe(@<>gB+}qS4A!ppqKt)@p zaDlNx0wcFNDn#w=2V2Z~@@?z4Lzqh>y!9?aT~e)PMp?o(JwxfwsaC{A5o>wN*1|yQ zc)SI1>9V75M~uLoQXUz1X4mFnnM>F7qA}WTi0d)<(0@91tB=EV^+ph4%}~(~i_s_N zH_J7DsKal9+iPM_j<=AyoJ}ji*y^uDoXYcFC3tf;1a}qZE#<2GlIpHqd-^xAtv=7r zJT3It7Wkk}6%+gYKW{b(#AubND=s>&p%1FAO9`u|U+sn-&|&skh|f`MJ*p#V)9p9`rg72x#4r7n_YaUd(YpFQf-oUN+0qe+yt4ZfbAK z>v>(Br-rCpe=+M3wR;A(G8NMzN^2+u-`g&~pE6T5~fR+UCNSuRr&w)TW6HWnOX^2S*aQZ4Y8C6^VNMUAOu z%Q=fE-9*=e9#pE;A(VHQ7*cXoy4C1PxpXV`C-h}2<{ym9)Lq0vPqqtCuycZ1AWoZy9@Q!2xJ~FvItfg#d@mrR)Qz}<68OLX30#XV5#xUL1 z$%^D>)0*GD{M_raF|rs4@0YwFq&Ro8Q*EELeFNd@XlI=G-xge=@;iLeSA&J3Zn>B> z1wP<()xyvyVXMNOA9%ISRlp4CYY_d?!TM#7hxaR^2|<$YenkQ2A3@fCx^@0Wxt<#-vx5 z2FOH18d#o#NX)?HQcM)x(Jp2#c>f)fa)lluwOP%M^|trT1^hy^Bk=KV7J!$V8UQc8 z0A6-=0leJ&msz#732apY_5YYsGIt@mT6R`orq0Yy7BA;3Ea&rriNeH1)$7{Xc`R;pkEQegAU7RMphi>$ws>AsNWH(Acm^JSjheccA* zphr2L!73J8E3s=oyn@~$xD{X?oo=dVN>&cxDB9m_jH9PePHTj<^MqM;dWhLUn&hxb%$;}_SNi}dKP zsRwm-n5LEj&YWTs)2XmmUxuSz88=@YX7vhlm=yF@^KZ?Yi2E+TTk6M6;Q)G%eWjevCCT{Or02g!2`*#hx z4@`jyisMpL!`C{)j!+|0l-l{ZOjBg4j}9Je{Gg@z{INK4I_7Mno&`2jB7P3r!fXoM z*Hf;zuhzkW4abTDVKb1GcW#~Wic3b z-~-aQeB;fduIy^;Fc#SXi;ht(@%bP$k#3CBNsgkd&f`L&-nLpnsZ*;J$gmZXTZHNCnqHuBpaq*~W_AdQ(=vb87Wb zu4#w9rHTtLZ2w;74a23tpLE(qm$}CG4#ZR1lb(J9#t zy0zVe?G}IV&${Y0tI=WmB}Po)27-l(p7<_31{7EYA@=VGyJU0?KUir`CpBo-Nd_9IB(&zId?N zeKvQpZEJ#r2h^3DzEc>BU=qMWWL2N`#x3j1)7hVdIZDa!wu>sOI>n$6hr&K!#Oh@` zIV_Y&rPiT^cX6}1y>hhyg& znneA_1EFBRjrty&pbAJ)qx>u4luK{BsKiE$)VwoY6!B!Oc5Jt{1s+yiyG$n}PT4%c zP(!#k_5x<5rs`0$MO8Vlri${_ujlIOfUT8G;V{yXWU@F;!5%J_qH3uyH10BD>q-zz zF<@x~q?YiXc{cmcJU0U7Ir2aAZ1$gd{x835{2i2H6(m7xbrF3R=T#tH%U{!C!`Es?TYU*u(h?*rH~@yz|Fs45Aq6OO;?Y2 zWjCme=FevAuN(x@v+B&&_*R~R4bEyf&AG8;hbR-NC+HmH)Z^KIL1yCGw`AoFLj9gQ zX}chO0r$>B28o9EHj@|%E0ZpR9XGerdquj6l~ZclGr85$#!r6pq#3$-t|33+8k^Kc z7qPhrICDY}e2G{k#ncx~`I7*Zmh{xQOop+eQMvM0xF7jJ$Xp`^FHd&6qn;$J|MTVJ91rXiiT;hbdk zxvt#5l+vizIYwDeEb@4{YR>Win|qR#ty0iK2N=;F?Z49v?s5d@j1S2p+oTnQIQzma zK}6v}fAftM(X9^5_74b)6Ce~}L7}6%%@}y%GDfqeXpa3%RzGrNAScS_ekTeM$GN?y zPO_;oR6^Mb!Ca>1C)$72P!pe$*|@7iZQob_ms^7Z)3mh*_O4y!HmgX2+k0Je5=zpB z^7GwI6TMJq(xWcko|9BP?ie^qq2~ZTg2d8;arkkz3RxkbfHB8INI7^QQO~8p^nb+3 zv^W|gO&j;WS1~Jb7l98#xd6KStphj}^#IUATL3Tg_bD^i1Id zE2)ttzJTg`P3715H}D$$V`*#pIX5<~zsWL}{@335gAgvSGZrr$^FNrfgt<=&ssSlc z^i-J&=Y&G=jb}oBknnVZbc3(K8;y7K!O5!kPk^r3G!$&PhXKPL(g1*rH5HS7P>T<; zl&uvQ98)MH`r{lE z!C&M$kJzehWcJ))+7e8ABB; zb?-FO(eTsxm5=!=C>-`L=1{LpJP4;ZJikG zXV}6~^Wtr8tmmIulw#h=XgylD|7v2$;ZimAA#1{ZWT16XC~mKkgRaItZcRgnDKG4$Y1X4T>0&*pwJeQ2Fa3WC4vjY6u{% zz<5Ahq`;XCHUtnC8Xzv@5I|gDL8vhv_U9Z1l0gn}MKWlRlp+1wGD~FrHxhb67=ZsS z1EMYEB7_GBL`)1Yk}{+4*yIHO)MT`P0}3VYTNA|}YOCz^7@OA-2VqfDb6O89GmHpOdACm0D777ivbjPz?-H_<}f0F z2h3C;lqn&m8mmebI^|zk=y+fi;3V`3`CcYfB=CTRqXZoBm=M4yk`(}c0p)%OLV^n5 z7f><+egQ_ab+ugNlujI}C^Ak@G`@^VFkP`qIMfiP?!C-0`~rxg06+*OaO8!D2M|I= z1|TE^KnR5~fROlnH&cCtW$UKZV_J=8_*Q3>cDP0~6XCiDkP961nG~#WT1-R2>etdi zEQDjX-}D7-Ar()BWK=BF-90!6xi;6>FlrR;nSL>UQ`j%!FTC16D{ikM z0Vz&7Z-F9CM8Gl8C@5EB-)STHh&!JI_^;C*q-c2J&_`C8&pySk5uusi>C)U*zY$DyoPhs(gsrBA&qATUsPHI~%T?eNNebc_aEj(0nmyc}xZbG-I zPY5X33)KGw+4+(J-!Rj1yCE1sEt>Ygg+sKDT*I9|H2ScwcQ${BjlxpZ!V<4>j+^^f zfk->OKcAf;>D$Yt+(Y*eE<%Ps-)nJ7uBGNw?II^Hs@3%?IB{+s3Z9^KA4G~oRF((> z@r@R&w)^#i5VA|U561N9AobHZW0eR3t2xBx`1V47bg-ck%3)kH99|3vBeQ;cpE2Tl zaXCVBGP?5aHYMt2;$Abog>iK=b)D_nlo(kBIchYs?L}dmq7Wj!a(h5QlbiNK(<6;C zioZZcKCOZT@>WSXWp73y>o=^9sP@!c6Wy*NF>L(!=$QH9vo&p6?4&b%A3oDTi0`vg z?PQuwDpXN@#f*r)ak3Ynx51gizrwG(@}Ldoi#I%JX~;0&p9o^qeMy72e==RP7mR42 zXdHz%`*EcVdVVnQVyiOl8oBoG+?1Xuad*g($W++=!zw~i?<>mK=r2{ zXU#i8Z6Dvg^~ns3z@Rvf6K%~qNcRX2#RqsAgvYX&VQx-)w8J<=Dwz*vUZ6D@g=*nlYV4Qbrj1x~Sjv$*bcE|E(1gwrk4Q zsnZIH?Squ%^E!-4#f#;4|E?)IM3iwwN5AkJzAF$RCJi1Ry1TA&T4qa~{)eAdinJzG zW`Rxq7iWuTeo$~{AEg`ycZfx&QdfXBulm1j(NQOJg+En{7q5ja_s^xgO+Dc6?7Xt; zV^(Bkch4@vcvR_V3e^k-S%)4g_LU&be=^V2&dy`0Dko>RaB~r+@R}#_Z$mW9>M$BKwdEjuG?4!{)Y^_g`z(6*{t$t@ed9J6 z4&1ZBl=xbf+4WEGMj!M0U6N00<0G(EO(~uTD}_9*p&K3!bw#T35rWcRg;%ZrFgCi{ zDk0%RGith$*RW07-#J55Ed*OgZVz7G+nMv`RJ%FWiOly7#z(id_5L2*8QX6p!Z0^; zy&?F_9fG9c-VXRjg=~mt`?dlV!)s{c$aGu}2TeVY&zHBzWVD}FFwl#CmXT$0k5oy! zl4(j7-Evioo@cDdCw>(6;flH-X5uoX@)#-L#>k{Om{h~%QVkIzWL+J zHWuxE5*P!PY+t*?Ms(Z$26vYp!~Pb}q$`szAJNqrxV}s51b-D2GhReox^`*YgbyE& z)T%~KEHZB zgGwr!?s-&3y;wU9Cxl~Z$k9bZ?@dYelUpumo9J4hiwlkX4RNxnnTO+BLa$HL1hBl%bwgx3b1ny=ME(}bu1N3% zcc1|8?~%7BPTI?BM=1G|L4?iz*R0wtGsq2tjkbQ`Xz0*bFfuWJ`EZSGkjpKpte<+| zFYcHxE0fFEd8Myt#jpH!;KAlKmv70f_z-osQ;KYr=&XkkHs7^1rhbys2qrV8q9MX) zaBk?>ADwMLq(CXl{>6FpT6sVle~9vhfv$kFVWnFHtsj1uv}b2M^AOzWhqyIDs0Q&I z_K9)I&a=U@N=ebTYaeNwGmQIYq=jhUw)%ao(;Rw8rV~pnWLs|A%4G*TQn20B3Lw78 zAHRsS7erSnO$=L`b$LD9bel&zBgEnYh(EpT-x2Kz2de&dOMj;e5 z`E`TB*ynFL9^KQ=V zcZ-lr`g^;GZ4!5GuTYP)(;Q2WW#*8Mbl{WTBUyXDH&o2Q)tj~G_gdD;yqJ)gdFvnB zB7<`6LQ<{RZdNKv)$eJYG2btn25{oFm|UWx`MJLj(ZS2;uRKiFYwHF;*~=|57#r2^ zF~)-pcle4kIcG!MGg+hY`_6+_#VFbx>;t_~L{~3@bW*&&w@uaB(Em*(<-+gQ%a8wl ztL0w#IBwF-T`Cb9EKt*mrOVZqb+jRWKJfT$Y_)%%aL?TrY5+oB`e376w&!)nhQIS= z2|E^-EcIVH9Uk1SRwJuw(eoh!LjbyhSVKUAe%zREbJxq!$HpHM1<`g8D9!^Nvji0# z^e#lil#fwtO0FmsS9${T0S6NL1^x6bXO?lc5j6L*hbEO3UXkd<(VgL5kxvwb{RH zze8kWmZM}Hw)}ksRj--7xWd}{u!5IN>4Iz(x(ga3L(s3hvnf^L`w+ptaUg9PUt_`u zo3OSh*5l;P^iODoP3yTZs>ojJ;)Sae6(~rmRH5ZSkZcQ3d4gYnc1hXEIKLx^qc}q2 z8GJjY>Z&0>{>B5L<^LgLO{}#2#@i7va1r=MJc)m17k(DyLl%C!V0`AJPbwYm$|KS{ zfXrg?|LM5(4yDB)5fv5vVRF|pv&uNJ=G7~(S-F&m}3ylqfzifyl#m?xJR*)k$1xHfH!y< z5|}(|fjej^wp7sx%dt0XcxL5laj8+ix1krF)#8H!-nTL%z1m%iw1;O;2m^?MFh1nJ z&R9yRPBSiRrOvMK@|TLg1g*p`I4~Ds52$|c)ZS4lHPBK!tF7CF*ApmXtn&pK4D)sd z$&i5%4qKC}Xdfe8yvj;y#%bG1j}eWAEu@9ne4^zFZStYifm7@dBMPFF8g|hpG$hq)lDQelidzr;BT*39-S zcm5MO!g{g8n^mA*ZiGO?JHKs*NF!U2VZ?RPA-k33=B3iZW^5s6lf&Z8*M5bwoSrWIB{P@bG`o}S_TSiyO0 z?ZewlFv7-8XXoPUj9t&5PL=4rE74jNO92(>Ma1X0vJaidlWkt_xTee397_OOzTxtz zVIF&Nh?a?A&4q_kvqJI0ia8CFht`04qc3QNGkxn6iB)&!5fRpeC2S6_Mk|{r8`MMD znvsW6Ds(DyNZiF5D|UKx2omr{TQ^}HSbem=NDPu7x;Wk8j|Ua4MT9J#c5NJjjjq|R zH%z)`Q8=^gac}b5tslaTPT0fX2QbZ-AfAe2^X9Bl_uN`VC(Kb zY;6MHfg~IOaNPmmnq33Hb@v~*ylp4N>>p7&h9|^hMlPt)J_t2`9*aOoC}yl+LNT2; zsEE2#yCc7|B1=qSs5w0VA17H?)j_`FrwiAC%j)SMe7V=pk1W21XyZ%4_Q7@~uRv5xlz=x_ zTtH1>(*UX^(DQX)Mq$<`9qAte78X1Xz#NI0-Yk2qMmiU1&8HYMnH)!f1a$70?NfcL z;!L+k{#A+`3N~A)O)R2AIu0e_h3oU~&tw@J)*S!W&}oePl%q2!()cpsU*B)0F`M8D zLLT_od|(FoyouN2y36=&_VyP@Ml`9k@C&jU5+}IuCcytyYF+*Pjzry-f4kFBvyQ_> zbqGx?Go{gL%$;|1*7f&##uDU)^g1xf?U0|AA+(e0c+mo*wM^u*g_U9-mu6V~Z;ZsF ztY{yuDO|u=Cfh-gws+YFNyGCyOwm<+UE2jRf?G@fs-Du!dP%(fuwZ?greM>O)B4&g zn#Nk?Wb5r=EZSx_1*LJM6%DR1&f4z##KpOvYmB7k1%mLD)fHUDWwhSLssYe?y~?+{ z_^!W&l%6))8zdVnv@9H{_NP$&N39X@i0Lk~#()Jy>H$0zJwWo=2CY6(0RID6WR5F&QkG%X}OC`Q}f zalIWKi0m}HmqK@O%0?EtNjkSPWO5Ht2?53Vt#n8_iQQt&vr@CGe|oQwEX#3qdmfTT zch;N?ax)6{FP&+Afc$9;eL+2bKi)UZ1ehcAPZk*Ns0yb_ zNAIFQ1IH>4)UAZ0+z0woBg*KpO5;_}YODM04pNh4Yl7;YocCXqb;|9QI5B;`i51W^ zJ3es(TNUry-m3vWAV_{04`%Jgs52@g&cz_;xw|QTYl(C36fQqTN0G4yxp}-t)ckb~ z#gg7={q@st3B#UtofqQA1qJfr1?xjvAH&RW>|ri7ejhPAMNzLC?-{=2ccF`St~wDe zHEC4+DLp;!L=hf!`3LQk+!o%ru$PcCmKefF?0hDzhFt9Y1pi8s2jPy^^4jZUEG+{4 zn9P1YV`Ucp-VSl-Tvfo^U=|rCU%EBAGBQxUkk`#iU-NgP460%(2yQ<)9jsP(`prI^ z<>}hjDvaoHl1Bp9i zFEk+|=V2qbB?t^{JU9Q#jXer3&1$jFf-9wYmmR15hU#e^Q2lsBY?~iU3;D}oL{ErR z_z;(cOwKZr<_GdcpwiFDU?u;J;HO_g5h$py%@uL1C}Yb|k@Fyy(PN=wMJ`cR|_5_B<+F+kkM$${P>&BYQS z{z?AiE(l{o1{%qB$AQIGzZ}OV<|V0OlCAt3!8p+>37@HwH5;N%#$!BD8VC+cgKNUz zHcFO0F|Lwgg-N#(QZ~^^Bty%u6e_#-eLoX*I`XmdP|d_?hStm@t2UI-Hc1jI9kH3_ zH$uc$E1mryZw)56__So+x=YbA&Yj#)&q8L2C=cF+0gy@&N<8#cGp~Ak>IxnVTppv% zJ2`{S5gN=}XJ{N$Fuv;Ywzux=q6zoL&M{t4EuM}c%)*naqja zjA={kT5E!W1)>*~_;1CgeSeY3;NFdDPJEqQDrAap&Ud%9A{6_)K> z++lND0R>HxYi_>;aWit%nZfo;uItU@xq{`BC2Id{>O#BkDc$i zrBEV$e?@3phQ`UlCW`&hd;Q;>U-gXbd9kqz*gbN;{M~~ zUT&>M9F6gswzOcMhndD>7D|u)@pXE21aSp6CWqhAK0PK?*~gUp@3q`~QlfGA)8~Y` z2?NOPEB<&)?}ykt zl|Nr-&}$>Fr7<+;gdQ$^s}b9VT;N{8mf6*dR_(%7@*%yw%w&#s!!_GmN%+fYr@rdX zh512Kf|f zNixaI`3L-E71xxA$1OKfaOUja_JA*iJ@~k?(@C)DNGsU=*WBQSMr-Gd7;##e-Y|Kc zFC*&_;Jw8O-k9&4dSrPHPLMnAmxn(yUh3Tqvk({-AUxbtrKj?3<2>Ca2{z7?JK5fh zHUb?PY`2h9c|*Q7vj2qBpJVm#X>8L0Az{=W*%l7)Z?Ow;mPY4fBtWd1lgbrI3@ z?Tmk#R(kGTJbQt99n7Leoz{^y7lInx4}ps?KxZv`(EvA^x4Odn8IP5#Q!f;DiY!oP zdQ6RCv(1&ku|P4H^$^R@i)?OQG40eMtDRhDMP*jHxNB&IR&rm+@2OwWJv*BXatEt8 zX4aGFA6;?%V~uYX=Qg>CQ*BHu814iJDUPRw2c*S!3CEdkC!mDc=`5;-o64BZ3`r2}Jpl&3?Q z_oUWF)l)?4|4mIRSE)U~Y?MI+gbx-Ye2!YdKEraqgoyWu9e7HS+Jb$rPAidhRaS}0 zVW936s22m>mg|RAXc?bY54Tdwia59op~Ya5GVx@yzbK^=Po1RRYmy%Ak2)eY`_Ne< zl!EO&Z2IL}n;59DS;k=Bh2jjVh+V*rjgMNbj7KG^87tz5RB(t9QtIstG^0#H+T&~y zP-p-3qDtjbCX1e9k^)Eh%TnE@$D!U%JvM6vcQi+fw_1bEjfU~STI5i0#$+_FVm}?A z@f==%l6ynehnU}TAdtTH5FuSZqZ7?!O}w2GSf+Q`3Ey?U7dp%A7YYue;AYMjBqHlV z&xd!FOGonD3Q+N-Z&^iwc;|oI!9T?Zu(;4^KI(URqAN2Ul5XWH(XE#8J%4-VJF zlD1!?9OsR|lRwu5&}eQ&of5%NTg^vfIK1D2?FyS6bOc6)fk;GRneCshNJCAaeG%f0 z8@O!M!~EA`n6dbJ?=2z7MKC@TeEYiD1x)FhdFc7E+SQ*9mE7$>VHkTbCAHJ(lc=59 zVp#}|+3YuYEBAZBTO{u$n{MI{xq=M6+*q}^(JEo>D9c>=>r3& zDPkpjSTf(%iQYJd#Af5ig}y&o?4Yhkv0&^nn|Z88C>(%q!GR~ahh>aGE7-JjWMN1t zDk~a#$|2xonbN~(aHtvkiqg!cE0%8ZPr%s+vQ7mJYWDOCbAB#GruU1YnF@F>BVor| zrvpu+QM0(*=|d+pcE~a5!QQHR-D%?oMeNhG5=68fqSZS29+lg!J`iyRzn}gugUFG3 zicW{jjliN{?qKO=Mass-nKt7I-1BV#9+A-HLHe(^#@>Spu`H!Kco2krlo6y(zSV0z z6CBLc&7x7Hvax{fJ7ZYeHlth?LS1gtAJg-CrTHY(@rdx1`z`_6V5N!*1Y zxnEXF!fdKe6>vCgymAQC9_v`*e-4(Zwahe4XLEKdX^AUqLwn}*OgDD6bwG2(Ffr2^ zY$W0rKBTzcwoI$#w$2m~M}MfgZhhl}{4npLJkgC$*ExbGujWkJj#YD4ChKUz?qWhi zWT>Z2ai{WL1H*y9X`%gs-CN=hv7Pz~PfH;olu!^8|2>qCzg&Vlv4plVLqW@3n_b+` zy9!FS;QNBwBntZjCUn)RvN{Ns>+UrW_AwgwI=$dFoP=?~!m~VYWi8{c2iG zj}WxW_zvZHu&B&AqR$^R+fmLUN)cPdj~|GoNsGyFZ6%w-W}}|$FP07Eu4jc(wXTds z!*+*>&EPH?H6e?j5Blc0)~yGrP<|X^gkg*<*&Y#LfKiH0Cx@)c$hY`sX2#5OM+u!8 z-S~YNS@``8@psuX*p$?umwUj_{lUS?{>dEdbcGk*3|#C2PlSy`_%314V3^d~6WAR7 z4A(1IFGpeY6PWa-Xx`8076E>jfk+tN)olJ51!wUc32~Ivc90iZOkx(SBG~D277a4& z@+D08akcL&On5w)BWnNs>P3vkN_uI-HT);V zG*SrPa>BQ!A&?2w%$%aXX2Ye^RluKXU%lL^v>YozLVrAeqS%{l#E(h!MEpyYA&Kyk17BzV*Z2K}b5FrM zRL!OZ?_b{Rgmqu5!)^v%Oj-#HVxpZN{P_$Nm-hZGZGl+IZ0oLizigtglr2TC_{j8L z;0@*xiB~R7)1%cN_D8Ojn+yN{28_v|W|#Zx8ZXA@naO?fQ4r_Gx&&kt-3CT+c*F_%WkKRg@i+ z>ara6ft{AEg{py&S&kKaoZl&Q;vVt><0a*$)HiDdX`hxYd% z3uM`R?U`eaK?MSPDekH)j@Rs(uR~(xUp4YfqRK(E8tz5*QnC$|S&;n0b_?*|IRiCV z3KIQnHK5g`P-Qfr6Z2siHLj@bwF|#*=x7ycEhy6B@G}w2uz3?##T=t`#rkk_hH*P; zH2#*5q05xgSG|vQ!;{GKu7BOa$emB;ahCtpc1R0q4#%(RtTU-=zm z33_ktoPmL?rtUp=$6$nci z?YK}lvTYn2mZM95YK+ZC4z%&UErN(?ab;=PlnKr5vMA2mVPia95Q*0=mQD5<`o)C}6*U*pTzmMUP7us+rCM4 z#q1B_NBfwmQya zV%xTD+qNdQo!tKZd+%GXe(F=TtM=}7s%py)`;#K}EM`WKN+67)1Uk?IcN}fb4&gpp z8P?sv7@xaf7zB6>U-44CljN}wo*ZX$}N0#u4Vf_EhoieK=%9O}qgK&gV#{)>)-X(Tp#5cCOpw>C~0)hB{ogUH_G#gSRR)lf+vJLjj7` z($bQt`xjWj#T;hyh1Db=)CEMEfg=-y8+U0wyg`0;$Op!cJ->qc%V)MIUmxGJoX9;@J)$&T40Dq;k*5S0cjX=V}iWvxXoLH3bf#DVY4rcO!H)(MS4t zBHjopNgq*(vcxTs=7ZP?Ax}?ba*VF=037 zoml(~`jNaRn^1EzM884W6~EDdKZ?hnL6rxxJt0X#$UQU?)P*Rb_&D&F1yMa-Fm=a$ zw|ez@%q2cY6sr6*-5WRbXJpi4&G}X}11G8hucj*muXC!P0VNv%j@KMZz~C4G8{Ca( zg^FTkD4IkhNO+c#Hp}xO5wJ8>{nBbju)(k+pKFc?@5RGeZxA>YVWVEm(wWP5q0@2`%#FqBPJ6eU4v0oH{O8&@X+a4W&;=pTEJRc7_QDw>Ruv- zaJEVMFDJ{v{qAx&15wTya4SUK58{#0$TBp}uxU_#<048D2SiyYh|pv?;Tw~ppD@|P z1%d^l*qNs)(Ql>9|nhhpnxmc=2q?MRj?#!V*j$OZB1g=Lw&0;r=lWFpQwdU<2A;V3e{rx zr}n0Y-Yy+=-pq$TPdy?LsN}ilztpx{s)xJ$s5+{&wX`eGtr9q6<_^hezuV<5Z%e;l z_VlJIe4ag2f<9|Dg<6^d-iNe_dIG}O6>*4#vVA*B|C*Jp?gNf~>M2{z_2ENmUb07S zw2ZuiS7w`c0y=E6$}{eeT;%uU+xjykpW9LP&S{Hb!FQ`Zi0hK>>^W8Hl}srpa4SDD za)>1rg+G3%_!VRh{bMqFO~`p1_9m0hMO|8)_8&x&sK$~GxgMEF<$=_NK)5jfl%S5X zYD{6AFAa%#wgy~Vxynmv~=H=99+#JfoIF-GzD{&#HUmf5qhA2%cIUN zgn||I)iB-#hdZSzIdybv$}e3d{JwjkkR|t4*plE&(p1B^l0Q6*e83h86j3laOPf*} z8%HMfLHeNHr-7koK(Xw32u+T;(CT{wA)vLmq{;#LaRHF;&$BvJA#%?C-LFNy2%}-_ z4(hr%E+Ns*Nr%Hv%{&>Y^JGd#%LMWRb4>sPJ%m1hkYn6fzcb`7ycKIvYm>SO3LKOM zLgMH{6H~O@L*@m#$TxvEG`x4js=FyXLDn8?9%^__p7`$A^r8*ZC zCKCWs(-PntQ})`Md&@&bMj@km6u!$Cn^I+x&0u#wZp!X`?4cBqh9TSE>@Z;3#K8G! zZo%thYAp%sIwWtgWxwrex9)2f5u1TCIuc_e9`w}ynv|1>1UYiH9D$*(wXrTT;##zE zgm3lyLew6dl%>&^umKFNP+2;x5zEFiEGbU-xIVBG)YeATKzIx&~PRBv@tz2?AW z_zT!6MILI$#npat$veFRg<*o8L}4_c^}m zC?4gVFf_2ngBgNRW?Q#{xnZpf_INd!qn-O&4F#Cu)hk|GW11^lT!VIUM0{LL$0xka%tL$A zJv-3(4^$I#8&9?){s!oK7l*a@+}a|J<*l`))}gN7E%Vr#qc?7Qb&S1u5cUjYQ~Qrv zEM$9SV;}Pt?=3YCGWDM`d;+h%ZUcam${O6-n}h);bNk}RgONO$Q*e`Q+<*i5ib zKhQ1Di8Qaa8~awAB6Zvi^RFg2TuQa#KU~y>;O#zo(CwBU@2%fE*m`nlAt*B45k)dw zwkNI0`kz<1GU)s(l`<7(a6LFLwgY^k?e4uhV$LqRwRY5uPtP#A@w)%kANfo9)RYPJ zTM0%mDu%`z4v#w5tStzqS(#6>?;v}jvVa@@r4@lYG(u0OSYJj%CiJ%!dSKhKb7o*@ zk?aQC;|7$w->Ji43d3n!5i8m8d}jN@Q(=)Pw8DbJ>7OsQ`wk>EwISb?)*`^{kgi<@ zU3itQ>wW**jCNlxk)4qKE{Du2v|#^PEbzC>NQEE|Vdo z4e6*0P!k<7zD7@`83EXDRn?d=`7cGb7Csy-Q)FO_am;eST&deVNjU{ulh)NdAA-1v z{2B186lAzBg29?*_k(UGqsCd06B(I#(U^8EyjOp+_w0W_q8RRl@utN~L!Gw~lFG9QYOKmf!^WEl<54c%ahH8e`n zIg#)e4}xH*_citi0`ghY1i_T%K8U5E?BLk*8{P+!qyfI@_Nl6^O;@!N4|jp0*dOQe zhrioX38s_iJ@PDDr`!*F0+%nCim>0ag1cc_Ph|r#u6~q2x3W5}2kCGA>lSrkF7N%V zC4mEt7(7~^1_gLsOX8<*qj8U=-vs?3&~nMAz)peM*+RKn-88Tf;JKejfuuJ$jSC%? zjcCuuULOn{!ueR$;iM0RC*NfM{InK2+0q=v+ZzrYcJvhF3Ml?5Kk;&SPlhpfe%B>q4V7F{e0H+{1+1@jjM`&6l#{Cz+7MB=H~?~E??u=S#uyqk%;~Lm z*7z(RDIyG(^G@T&KzaXz$ctkR0feOuCtzS9TtofOw;T00CvZ1VZ$|K%N?L({ysI?y zm78d5#% ze29SBDm=d&0FNd;>$~w5K&yme9ljZ_+WhsN&1xVcT$k5;0X`)>o zz&{@&7u?<2diq3_U?~tE+Hq~D8221IwDwLh@BDY;f9amW*Eca?Y zcWi>Hgi^|BHkGy3b@bv(ws}gvmA6h}{?SM?!NTwd5LqG$s|xa#;jSeot;V#7!r|2j za5RLGU87bTE}X+88vs@6SBLnAjVV4I$qMea1Pa9Dvay`5`*y!q^{ z*^7%bQZd%CfxovsNh;3!Fqz2J^J=5`$}WIdr%1djN{KSdus_nCJM{P{98%cX2qYG2 z5`_*N5YL|+`4bY?9~`wZpxPF;hUd5IDItgs=U-Tp9z_Jir&c7YE(Nl707x9udC>4j zkwwf8X|JHa4*sw{9KY9og58jaq{b#=Q|n1-NN6ZoTAC%vQE0R{LXIw~%2wZuuK5VH z|Ik7Ryj{FpKN8E$t`vu$*VBkrX+%#}w~kAu1$>Zt8+tcuS<~-<$|y{tC}Qoy3En6p z)0p?mH2Qd`A`f^s(*1Drw6okb1sztehGqt-t@uTidtWCM@&H%t`u5K@iRsr6kph2; z)&gYYmymr4c-Pjz#yVWy_6O*PM&l4{Qc1zfaS<{#?*DLi|0bw;M1vIBaKjN+{~s=qTQ88`gF>H^JEqPL3p z6#`g^`nD168|;^5L{-8X-U6ZYm}^?>DwunOfn_(@D)s8y@ZRK5R#HaA_`vxq78>t{2j=dNh5tMv2c9s<`DBxtEwV2Nry@$2~ApNTZcnIn-*usiUN0>LM$L+kw@EndRBFg89}-vMwiOF?5%dcU|De?`C*YpOMnYS zwwJB+VH=+Y(&o7kpF@{?X#!rvr_o2ggklsKdRB2FeaWFoZ(6V(0opjy;5NM{}A)i+b~p=BvKsi=VQG( zsPLf(e(@H7v?PG&eEx=U~mcQ;d_5+NF$&!BJPZQ06 zLaOa*7y59ljTMYVXF;PJ4zdONMO7{c988%pzn615>z_?sm=dS^${xgBE_OASr!el2nY^co9~wMC6-dXmiD2!max*fiy}rTy&0O#4`V?{X(1R zb9`wZ4*S&oA-twv@DqTYr%&Y0pXB|s1cgI>=nIUdM{zFMg#rBs?5D$_+9};8h~D|5 zZ9_)SmVA5K`0f-(+%IO(_BQUVO~CFL21ehIh{i-bWsH|hp-GyMGatow=WEhiYD6&s z-jP9AWBg%|`5T;cNC+6jZz*1J-tMU8fL_|^1Q6a#nC^MQN+!Uz<5o(Pmrhtx$=|>x$?Ad8 zmKev`S$D~yfg`}?&`i;8wK=_#$!w(%LY*$saG5_4~!HCdG?{i*Em@I>1^S8QFJoz5p=I$Nrm*`N`fTuBU zDp{y|i-D#1j6~D!Y6PrRph{Z*!ORH3B}0(b5%h!pAMqt6NiJjF-nV7q6w#19c=A-c zUZ?k`&f8Z`u+g;xVMtJhUokwsd>@Is(81wFzbi?>G;JPx2KiCK3VKp3?Rq0brRGyz zf@2d8l}!GueS_x_-G}~f;0=t0JHZg_R|=XSEE6~@8+VGNAguELe9PvpVbFmem{V@y zAW&OI1Yy&`z<@W2^Tr@}TCzl7Pr!hVi?@vMXy9z@z;C<2r~yMdwlSMrPG490b35}v z9wyz=g&1uh)3#5w?qm4%9Pvmk(4q@fX+Jj^8$OM^pH@oB3C?UcleMc5!3K0m#FL~j z&dZGI*sPwIR2l@klo?NYx&V(yCA;QYl%DD7YwzCelc-6>tk?B}yyaTcUjj(sGB!@m z8D?f*3sFn=2Y|g+T6?=Hh2x1km9}+(s);F3^bPM>-#S07A&H2~xA5u*pN>4Y_Y6Si zxAQ_cr{EgX0?pX(>NaRAH*3{+Q|#@}uewBaP1c$xxkn#BsT!^7Wiw~X@Jx#}+I0&r zo92$lkmc~ zPA4y#w~le{d$8mXIPCO{U6Z_Wx+XSoGeaBG<{|*z>`T#ZT(?f-v7-gx8&=^p+zK0$ zbRL~y+BQ)1z}xuwbPqm8_V4uL_=gtSgy|4IKt7+vOV59)`s4RnqYhs4`CTpW7Tvbn zds=?R6yRK!UsRz zvBht``+*H(8>Kv`z@Q z(c>XMfQ|}g;ZrT7Ekz1^%*JD~rd>>9qaFSuaXHw|M`W4ytzvTAfz^&7>d~#ZBUV_e z5sj9cKE1!!VrRRqRR@l;ErBBCoh*LSsS832lL!V)c()vZ$8Q=1>ysNSTnEk^IKS63 zY{2gvyZJ=3gSNdM8pJRwrF^0Obwap@m!=2xNAGr8;IJzj+{JzAmjJTJ#rWsfk2n#w z9lFY}wS)D04kv6#MNz)^7oh@Jk zDqngX5d6tpD;RWitj3!Hfj$b?Hi-ScKjau42|snWd#?Yx{3)ty567>`(eG=AZq`VJ zuHqnF%W{!}#<-r122Su{qi$9Gu$%}U=!9Go07L)%1b=m3|L<%hcQH6sh3gEd0ekp4q*%gDfi+w%Z5@4nBzys_k$vbg?%;P|^M zYXjuwq)q!(%>?1Zr;$3pZxh*=Vd`9mSx1?><63=8sp#*;f3Vktq5)1pp?|KSK z^(fqFk2CV4*f99m&;WcY6V#O~;qU&8qZHvwg^&M``4|6hJt9Rx^k}3ZQh)fL|2Vh| zxlG3|>V)ihxqA2^4C>JnJ}>cqq%iKQwY)=y!6JT~Q%wllVGt z7sA2l^#e3BH6XO~1*f$v=__ls^MqGP2Bv3t9JTZ2Y$$5O@CE=ZH3p0mkjhvU<8y<+ zwzfy?>uY=Gk%=@v%`Uq0JW8h#tKN3$9_UxoEyVh!#l|iD05l?RZ_ ztg!?>dmj!b8}w7mPdWu6)K|%@(Q*6ATrh9Bmnne+PL(n+YGJjKbUZJ5SbnD^f6$IK zRfUaB`ccF}h&6yeo{%4Onb6;2Sm(ZJTB-rYo9wl@Vn6y7g{<@_os_$dxbz^M3A5?x zggGgZ4Cu>h5V9XRr(7(_OKVK?xaUcVCi@@kMDqu%D54TGpG?6zG~=KU(&(3AV2gA0 z2YD7VWkGaSKqD^^(XvJ`?%aBj(=zuOlL$M5Idr=AKyiRN(;<#nUns4H3z1y07-Kje z6HAd&ifimH^Xa^jpJt5{NK*g#Z#WVH(3EB>U*R$^&4PNNQ-9?pZ-aqraliu8Hw20- z`e?bj=Smrx!a%GxN)Y?@6e`h$wnNWA#}k#UH-Gf!w^_}oEUL%&9*?2b55F+}c#7G#rucU&}YnaqQhJ|PgV8ood;;nD57hd`4y`ZxkSO0Q>qy&v~ z-~MfF1obr78J+?dkS{!pYxj3^4%T_zYcw%i8UZ5P0@oWOiz}uq^vo;d0j=uF8D-9^ zrSds*Qcc*5{)SC$8oA(B#v<`n7V`MT9#V-OmnD5GsoKXsrl>c-Fc5gV@V~ zstE`bgC^x6eDJus{K&EJSdVBvxU?b0q{0_|A|k{AmvtVRfh3IU1&19JH+O=dc3@OX zCc-5iKuPuKs6x?(k9@ur18 zb$-#b4y>2uvqf&3WviUI(Iy@}kOAvQqX5KJ!6b4^f`v(zW;bqJp}`KPHTpxNB@rtH zVdwQAv+yKHLN6%P=f+fW1rBpx(v|f4m=j;eoKh2{BV?8Wlns>#D!)knpsXNJR{&Hu z^-~{WatIA46~8~8Qrj8ZUhhZvO$Kq=9P)XrR^z}krICH3kjesH`Y;yGHE&nNfK9|N zv8nJVTiH6;jRCd;Z%vFCdW@;P5Dm-rFQOj(!lV1sT;eL2oGffMGIps95K?c1eE|qh zR$anFb+IY?;&byhKfDM7iV@~169B|HQ+lMqfoE2P0b{5)K12pz7<*us0UKf;19C4> zpf1C#J!$IL0$BsI{AkW1N*2{hDF^*)BWOTM`lao*Qmh=9hbBWg^_MNhi&zg~VR7tv zLiwqMW2-~AS$VbD8(-)Erju{tPS=ND?2gEl0EzG=dyX;)KC3$6?WK~J2%t>Na*i8e zP#{|-hi68b$)7gIQ!ubANcd!OXqGVWo90SKM|VBoLIIBGgv^@xzQY`s|89dYiy9r{I$w)d6^0wn|H4Va|%JreUsJaFaG~37EUt@)-*vy~=rolYNya5KbNGdn|FEn4A9joW!*23_*iHTqyG8$DSN1>brjAaM2}GT8y^@7( zPuKwp&Sglv>`jlWs%nA`GPe1f^-VSeWG@P)K%L^x3KsM>wFuz;dDQ0#pTQk3S1Qs7 zA(mDuzAZLRqF?Q?30sH#f!*J7-5p$#7syo&uu*Iiqt2H03AjDWge&w2lHuJdLMPS6 zA(MMT0#|AXw@kQXFM)^HVINN`r*wp`2jK<;UPu;1CKRNe5-r@MMKc>~X8mC9s?&ot zq?pzRXW|ziy)}KibV%I6DVNESPTsdL%CPc1J%FX?wd+5@{JGrr1*w`s)7u2-(q zZu2N2e#Y15nZu_V3XB2Du%UWemn@}sqKbYRkj1cJlW00@qxTp&0s`+&g#EauKw z6cR*Y_STZ<0MQ{&w8FHS%AEgbaIursLAoSGF6+pW#S?sQ*hrGXRs}3MYi#~6Y)~iW zcnm1jekD*?qgyPZY=2%2t*{1@8taV7;}ab7!?yB!J8mb5Bzt=cF1B6-?h;1cv?rd^ z?yExf%7vEfw>LpflRW}^I(vXHeZAVPWp4B_b|YXbfG@XR>=Z;f&uM`TcDs>^4TA$= z+M#$r0@%rH{_A8m|8=s}RA48w0d}(BC}1ZGjf#Ne0l}qE5U~~H))tsKqZ_Z6uZmp5 zw>`Wv{bf3Pmzg3Jl`bJpJe(lRr$Q`+X_4;ch7wyqMcRLG+F${|8817Ggl+ioyaCS5zyIxN!3LmWFHyd<`*L zV$bIiv}yd^T!IBo%}Da`uW190|Hvw+#UK`poiS&xw4L1=wXP_|j5%vmjKE7A zEFOS?B9xCDf_*l7oorIdti8?X-n3`}T~aW(tG<@0>!(r<3X!S{kWOWNNADV?EhknN zCOSVLOXZ>|`RD6`oSHm6uY6CIVgwoI$U^hnUn0aVj_eS+-svw2QS0IMB;#P;1}^dt6}eFlEziki6&71^{0;cEy`1WDQ6(yhln{ zJptv8^%GF;%-ZBo&xsR%<|Q_ava#-`WOnyGcFD|=xI=Fl{dbGn*SVm~+IL4#AzFI1U6%cKZ;3i3 zAvyZDzP|=v;{V;0p8Jn+H&|!HbaWvUt^NkgIJK%mL6i`4# z{}uQENod<{^Yuu`oZeR;DEu3L-~_Y$B{(VV(&)iA?A+m(KE5Sg6&$0aRUxhJqU7)! zd-iaLGBvl3&+v$HxcYsrEaB!)iO&@I??a&FR4c1+l0Z9X!>gdX{q{B#FPy2%bmY~Q zg zpe)DzHN%`rP?OS^e_<1_6Sx!j6X;#22luhPk4lM)N`r)GD4Z#f zy39Ln0asrSPik;0*o`RdXlemc7M%%oXtVNCW;z{|#6`0BKDzEQEhMSDginH{1Dlt@j%byfghl0PJ5Em^xW!>b`#uW{<_y7e-ZA$ z)Mkm(Dl%ojT!WGtOj%XA8@RJ7GC$+=q`AZX)+kL26v!P;0!KOyJ3TmJXiHd36)C7o zCfD=ibB7RdI?SSc|LF|1$tTEKRXUVhmDlk%QxmT06x|j*b7xq$UIC804vbpSvfIYR#Diq<=3$Gh*F}`JY{gtTm&H{>kZY0W(Tfyf-&E@hTtrWg>!9%C zrZKKZ^w3+3Yls7yjR1~Fd`ZHW%Ht%+#APh#qeB`z*kLq^VN*hos=m#D|A-3gek(cd1}%Lt)A17IA)mJW~ylvf&N>q znaeMbcFwAOQ<8FAbnoHf+Dxkz4z*Y ze6_|k#8Q$(79b<&O7=L}rR`pMHoW*X*(OPW4utj(^?(4H>j)N1JwA;&5yat?*G546h~Dnk0SuW8m~7ByvaH?0pFaK`AP;Qn zI5IvdcjqWV%|C7+^G?@jyG8Sku{cC>QM~mIjDv#7b_h9259Oi4O7JI=s9oVf`6mt~ z_w%L}f9xabfo5Y1RPoIah%TU@w(%-HPybzGwqI`m=4IMQ z)h$f_G#IkPWHF4qnreCP+H@MAMM-ZcOoWe+ZA%uz&bLOfO|8lkii2e8t*pUErD9KV zxkoH^2Dz%>OhK5I`-EeJnOpSZJuv}bjg2o8ie+TiXVM>Hp`|JOXVCuLWl%36tIh&A ziI5HbgA=EgY@@dJ;veB(WcrLen7FA^o#2z02N@VI&L6iDx5uZ0>rLE;-jH58xpTcH>r%KH=>hg{kC-C)6n zN>>SvYJay+a99}RP54fMYBta%G3)Em(Zq=fZ}^4f42slY6iRac1aW#UU?lJT1f(^1 zejN%8kW{ggUc(f6=00Io>SylEqu%pQ+7<7Igsxw(<13N&mc{tF@aB7KL$G3hDZ6@_ z;3v7RSd^MG z5w7ms>pnc2vFPne-IIo0-&fcUVplB2!<8Mvak_#=7*2~r{tG>gj}TG7u?0w6-#<3u zfZ}lo#Zzi=P%89VN88m~kjw2AG8Jp|oeYGfbzn(XO#zNvs+XUDHC=^I(=B2B9?8>ckX9NucAXf zRi7!RE7ozH>DPI|u1v=4se=h@jEZ?`JyBy2b*Wp8cGQZH;Hx+}-vBn#cqeZP?P`%P zde1!o6giTu;@1sSQkilfBYJ4LDlmjHroa#uy#Yfg^8*+{Wnc(tl7JzkaRr7@o!U_5 zPz54PP0|g9`rlgL9})JI;hfQ*eAiqd0M9)ljKaFOU($1pm;&1s(U!%$#c3o9a_(}h z|GZ`gj3+ok>l^C2PU;~Bnon;P_!R&zB|PrCew)c^Co0bec{U-THdUsWNUt5Fc-(+~ zEQo%pAp%db=O1%=v30QKtLile(4lOj|Xcb%Ps*A+@2cNFfr!#lZPCtzllTs1}93gvYx z*=V>fMh}CYg(e8l(T4AC zNwqV&?1zxz`-cUMlkzU-?}7lH@Lq0w%9zmv|D#&Qc zF|XUTmCBZdH(`u};U z_dj0p|BsgpfV>3yA1{IakC&MAlAFw@j;fU=wjc7W8-b{eG6SME3W)h4b{o?dcBCxUCM0v`m7B^oac}mX5P`Mcb4lz+kG&kHvEj zOaku!C(l{5ekRpdlT~>qQ%NG^<~-hvcW(G4&%#AEImG){Hts?C5RyRki_jnsHP>btoEWK0kmaMj!xB0GHduMRR9o zmoixb?R&_vlG?}Z@h#$n!Usb;;uBYIW&5VTjGKh@aLpmv=bhGruOGi3f2Q?dx-ZKE z#9ilaYu5brN-L>%t1*^4mOk@_I_CCmim3)805Z#A(t`c6 ziq`1+Cj6>D$C2m9_F^U;2?}Pr=$8|iL%$TV%kj^Mspfycjd`yGfM2=JFmJ=jId4aFSnsxUeGIsF8o;JyO;cUDf|gIh`|!% zLpt+gGJf{QK zcvNei@P`0=8hLnd8cRY&?hqy1zGEW8zuNoUwjAP#+Xd76soR!haJ$0SvD5qze@^%` za_@{-_8--+Le}6a=~%_I+!7}>>^xnl3$ub$X?cyjm7YV}*n;}50oi4K#{Y4QZYTP{ z4Y4J9F!M|}%KfOqzUA0==@VzA;&TU_m6TR+!1VBUWUTyt_T)zukGzi@%!it-`_V{ z+Us(lT{DHoy@~NKw0qR`p;!VQD7Y?s`LGM#%;rd@ANZ%LDYBA=2 zF>L@AY`y(OD zaU{zyK<)E&1g}7hQHhyA{)r1`stm0c`Thz>d9``|(>;Kkk^F7nlm?)_)dPL{dR1xK zjECx-7OBE*OrcOP{>sno{k2PKlWA_;RKlH_w-{ZWi&XWIy+CzS^v))e>Y$4RS3)rI zATJUbtcN;%2h(nJ&2g`MF`hzFO#S+yF-2%0;_jh@ryK82^(7Dr`a45cS|4Ym8f_Oa zE2muhi^JL9^zjB9@%v`>GA~Y>>Eq~GZlP58`MscdmK=|LIgQD(BRV-BxMu78>h@z+ z3qSqr@*sG{rpqE8>sfmqCGj6=*>t=!iL_^0c5{Rx`?X!gS0LpnL7a~|cK2jCJ3a6D z2IMy{gGw@FWFrRCmmj?WRWdAyT4^9)M#nK*@7Mf4cWcXhUA!$r(^dZI5~}%_39E?t z=4tkjkfU_<3y{qK(t7AT69)DMY7mdPwjBZ*G_ey**6EW z@3XqY9fZ969}uZPn}x~NGUtrKgoq42vNC82;&4L2(qs7z;)5O%sKg{`#fd4NE^3nYV}#`k4O}yYWPtSH zDWf{nf+B-`cc(67n&ZIfVX7w@Sbc_t z+<*BwL!CrRW?bqOnwdr1q)mF$`-$j~uWUi=w)i2A>By$Z8ETqBfPNKa&Mc0gFk%mh zH}RM9S}WJX;!A&8BTtD2k|-kzp=%bt>Pj`gB+9@e5s8h6aQ$#`J>_XlG-v6AdKl|p zYejCyQDu+j9ts$lOp4ik&qa1g)`9!AgIH;9b!1eqJLT8Q1n%~YX^zr5sqVfn+ZyDN zNxTA)A`3+=NR$!);OQ3#${z%1kspJ0A@)@?5I2Sx69~w1tJw!+4AOUb%o8_*BEPF! zuw=`2{16KsXdW!zRUO4r&f*WnOD|r~3D=?UHd(d_knLpI4oWx(|(`5;4i? zm-aV9^p*^CA5G6^$^gchVNI6}6n^AEC5z}vYf!P_4%5{B2VjWW)L)!Xb3yNA%KCJ?Q5K%VKz>Zss~n#h^#V$%Alno%e91jDV^K3r3r8~b zy-Ogfrvtuh1QCSsTwGaunuScTgAXVcX*bKYADC1j4-rFgkEKy&UGDc3V})<2yMLO4 z$`~{CPVj97D#wqgF#Y~x780M00^OPRC#!Mz_RlP%JdC4143d|H*bjlbQY7ww$gy*j zHO!SD;>3XQ$jrVL6nSvaz=h(h+?nf~9D}UH^{Y7k=QUK^vedMPUyU>5kkk0*WmQW0W8z*aGU?MJ zm=gf0FtyOodd(J|Nt+VrXwLJSAD_P@l8pyU`fFRl@UQicW)~=4#sVaKJ$tc345Prb z$`Ix0jrb(ar54dJTM!X)6)T=`BB4cHSL;g^r9{RTKaap>UQA_9qd{9>$+zZEyu6!Thc!`t?alna^ui;v(s`g;c-+n*n%_mQquL$HuFvlbEtyb(@~SjydBsqrsK zFNW+O#!o5d8%VnXrkn0!&Yn95k^Orz+hMw8Ne({x;A2T87~VVp4_){Dn?_W2y;9bN zHSknUP}Y4_n>IYP+x0PwJT_bopA50Rhu+iU)`@uYpwIo?8qWQX_SpB-Il{*?>z_YT zzA^6>mPTgWi$}%Wu5Lb%dB_-p0b=6cf6wYB`@vjB+_8`b{Galxx~M`+lo3jk-d~U2 zCJ#_N6L=4vGL9Dj#eW)^I0=G=Qd+I2hWy=?GHctu6|T*i&@x~|$%PhLUX;T!c2^eOo328)9k@l7l zi$?s6jx!IcnO{>FxU)zRzCu9-XJ%vmPkW#O2YG?lFaJA1RHdu!OxjZCxAT8^`pT%d znrK%B{Vo4~!6b+78Z@4n}5_<^V;-7{UHv0;AB++XH;w2!~Ld%SMfczd=fH)jdRjC>t>i0Q5X z2~?qIE%F`hUy_jK7%4N7dStGnU!D`ZUGNj*sBx%D{F10Lhl~DY;anL|XRf=cr(bTB zx+x^|>FdUr`j~loUp4=zzYAKo=w8;R?G`9TTrA&3 zkD2y!c((TG*u~6zo!@TJ?+(>O=zQDva$71E_x+$Y9(;^ttOYr0@$-;xnrP(_E~;@a zNI0C?z(!9^Et~RNXeUeTIE9}Z>W}Pyz(2;prza~z>w6*xHnLj>obl{^jxkks}!2KGM8V~VTQ_B)qIz9V34MnQU z_1Plm(8breu}8E|Se0y3(NLdrGk$x0;rxj$ug}CX#BEUa&?oFj>Uq_@>Fe9$ys^!4 zSxjgpzN>b-R&nrt>F?9N9?h-HDe5M7-F&_s4}G7Ea|{|nG~_hftimu=`d+AL+Th3> zjM>N4r#!mSm>8Yf+T+*GTk*JB!fd9!!;2a z%2^CA%Cvy$com}B#_FWaO+eDU$spAA+-(p-80k}UKFC{wmqn`f_9{HE1EUn=9~2ip zNZob^{sBt=c;Au!BD_#K1&3QA!vfAK78L)0gaM;5893@EJ79yzqCbyPE{@qqPa5sK zfy{rDrzoO*`ZZ{VYN+gMm<+kaF4m^h(>$hkYv?Z)?*GY7H@I}zvD{cs@z^EykG2}# zTw#@9@;O(A2mb-}2$7GD4ur~int~lR%wQu?fyStopc}?``#oV&0*0GjNZgIu8dUQn zw?cIM5kqw#3i;Z7i{EptKXV=ulOg)2F`>-{1C@>*-P%l^w9}MB9GC-+4Ru@Jun|Me zYMb^=hG89BnzkVrB8_^d0>~MRn@~xLeb$7g-Njc4JANw3l&90-7&d7lqzP4II#e}g zgVMtoXH#^GkvU0hV)fRpdy#=uWxJ=X7+WJM$>Z8<3>b7rj~HF}!FW`X)~0QfN!WG* zB`8ZpFnDPr|41c6Fliw9ibqZ1)Q)JR-G_{*jJO{~8i=jp`Ip{Gls-NMPo!FR1GE#!+jj7^rWkuj%6 z`@2NDb$cs5668|5Z!$O-Q`RtsUhBJB1s`q&gx2TBF)jsoF>Wa>twn7mi1mYh*GpY* z>#AS&@@yg_jN=V#{b@CRZ~ZPcI;UD@#RKIm3-M9i(sa1=uab)IW%0MA$vbLIVfW_pGtoUdck*1(Fe9jSH zm!gnpMV||KaR`9N0vpD^WPq0U4Xe%a2phx+c#0B-cr}@F1~_+-=W^;?2(#XFdcp7( z^(tDv7$xe#g^Bbgb{jQd7S^cb)r<4msenNq5o#zz8X?H^wVlEhLVf?DB7Yd;>%`wO zKsFwC#yGC55?@ImS{b&&j?3-qG&?_KJ&RQk5Esqz073IFkS@?f7i3u=vaybsFLI9O zP7{YoClUBB(yqr22ssU4iC!2vw=f!npbvih(t~cvE!lTwtR@ua{6l&b+dg;dcV1D* zam8z_fGUZO^F>RKyhP!kOgoa-5e|h}|5d^O^Z?PXrmlvTC1<0-Ex8CX=~?m~dR={; z871ud|?ju+Z*Y701uf43>rHg3q0B_J|6@cA6M@e#hUz1V^9ECyC5Id$6s|$TIa%F z>p^13Ln#9l!Z@$a~4&$5`5bUDOnw#1o ztfeRiqy!`0*8v%lsq-efmSZ*mO-5`0n$!X5uSxR&O~y_DnkWRIm~nZhd<(DFAApZr zpHM9_$C{AVj1{dP&r8=7?G3l<+jB`swVOFS<#Y5(X*d&RZQvRpm?+68u#7K;0S)dU zDd$N|+nFyxn|WHWo)v|zFyc=7Uimxy+RK~5%`w};cXh^V3i5i|{Yi)qHTQ?i2g)mOQXIs1`^tNuibrb+s$l~uaA1kKaYZbh4h=E zRWi%A?>LtD_#Nx>`eMVU!YZV_@RYlx<@9nP(%`KEf**SiPtz1J$m^iZlV^ByHIA3R zFYlqc*DtL9C)Bv=)rx5CDj~~9V1X_nQw-7diWz!!KMiD%onCCZWyo<`+y*kUHx2o4 z4N9ZnBG)o6lE45<|Hcf_OR01@kRzyzJq0T06(mc!z zCF9_CT<9Vc$z+^YW4qc(eDU|*UK8QE&Z4FAJONxH8TGR=m9yU}{$T9d?dF%mJ+%;A zMD9ZO;0OZ@Ba^`deTk2iqEBhqBNiRoCS!w4>~OK^I=^5*XiMLTwxpHEEM1eeC3Nti zAx!_!_UQem4`-|yut|f`G`Fh+1R8ooSOe=hy*!vh_!~`^wv~YFOpkv#mi+bjd>4s7 zmn1e@ur`=uS!Ewy7UgY#z+$yX>ukm{-~*Ipzz1Y)fTUivF(9e84EO-6_>O0D9YOh- zSF9rl!aRkN|B{ojqv)a1(Kj`_{}{2jNqO((i2a%;hT&XBhVV=&%Tj=P*K5M)T7dtD zg+eObq4mWMeZiIskwOpNZBFEB;O0O>sxMwhHE+1m3RiKq7)Gww1;MYLRZ$mF6D!Gn zuThwBZ|PQ>^?3bJ&5K9c)?w5`GwKyl-#ru1_#iuOxJeQ^QAC+^I)L0LaH>9``9I{$ z{~?$DFR}AqcB46f9FjQ)%L169yw3e`GKGQ>;n0qlw;+oBO#mI*vJno18$*IK!Ee&E zIdIM2pU9`q!OT!SDePLnAg3UTwwiKcQkmAkrG>+{G%Xh?6aNiKmWn1`M z7q1I1=NQ`b@rnJPtA`eW7U*||Qy;wnQb`RAgXyE*+6`bpV)X2ux2oDHJ?9HlXzid- z_UHPg01j{g96%-nAcZ0XAnla`IKcHUoRbiM6r2$JHHpoVva16lv7EX|c9K@`C5?E^ zl9Qv6YW;A;6mk`IMF=@2Pq)@G>QQz~(94&TW^|Q_3L4aNlHOyp-lr9p)j{zD&67D} zNoko;-(7xBIrd*Q!?6Cc+%GAy=1Co2yzOwub9}|;yfD#m7Cw9>X3nf^o26EVrECW{ zH)IY1!8bnMT9ZgJQXeE%fu$(sz*J1%|7hU@ES=1IQG83zafiCS=AW2D$%k3fy=hM1 z=fzc7E9*h|G?y2ld8O`1{4}HR*kYMrDj^Ec3>2;zYzMW6~aDJdYflk+#wqzG66FG8?Q z$(qL5hlN;9=IGp6;qH1O*_br9oRD#UFBSyS<@L|bvT#KhZ16lQDRO0^rw*Azkn=Gj z^P_#v&@xE4O*Ows^?rz}D^af_l=6P~_2Z4jM#*oB=L^AW5)xXQgZMRI`I&qOXpuwfa@72(wn2=>nzlmq7(p4hSyQpeuIcV%T5rL}QwdF@{wDGEdFufap|?aUi*r>v(D4 z;njL(n{Si}WMp~i=!t&M>3>C)*9_t=-REC9shw;O=v)N_Uvx`pEO3##BMy>E$#mQ_ zViUL9(Q1c@^KVXTnr1L^EJMw%^AsW!;P@1J2D;{=M^4zu7E;B9jiU|{R4nZqRQCdx zg3MIx)&z67-Wdn87-L-03tS2^6A&Z~Gih-Y0#hEa>2J1tZ>7iM{hWIXqTwYZwz$c) zewA4TZJ%nM=^rcxzcv>$T{i~BIxpXi$5pugZg` z@CScPeMB_Cd;JW4{?r0slN&ogCf9m^OzZ!_W1m<6WO8!>$mFUXCUtbTPJtg0`mN@) z)j-=v?7mMI=yt}SaiHB9R}%LtX}gGp_WjF%H_isyoiTP7de=DCPadzO{mYT=kMyQ9 zTTtFPrv0ULBt5aUQIQLA)?lc8-lQV*&6CIX3 z`gI0z_+bz?CYeMH8S+oyu__wuY#M0)GGrZD2)EetWfy7dgNRBX5_jZJPDRbK?Znw8 zw!;~xrQye*2=?-`95C9@Ew-Vd&{;v82_@vK$%|`u%w-P36t}icHG{GI0-{?5m1M zapLz_e~NF@d1OUe1}@(3pxrG?H0S6?_b3T^1HV`U9Okb#bb79)0*?i!GQH1#VykjR zce0$b*JDs%5Mad>-V>xh@IR``hd36BJ$Fexlqa8f*?k%P-9onm=KEpp-CCDPzk+PU z_k`cBAU{q9A})sbkF~Ix+V8|kmr;><(umCu#oyCG%ex;3yEdKpvhVOvc(WgVtMmT- z4f#o9hEoiB4v(3cpWB$=QtcgJj>eRMZUz5W4=;}7_r-(SHlp?zQm!+!vG27N0w9b~xyMGkR0tso+Sqc9|g1HsB= zL`KBQ@l*r_a&8bw>zEcRyiSJ@2X^-}reQ=p5e_Cb+%51FYq-W4QL5h|VreY&Vq&MU z@m)^krMxkyGo3mH-WCQ9FMMHyyF!lf3}}rA@?3%&wUKd(Bc-rL`iV1yQ6ysi$}`?D z*8urnBT@#r_yvBnN zyvAA6SgXBMgsOW~Ay3hF+j;UHyDoL9ig6%glrb>bi*##gRTKqbCU%0dWOf4d=DELrW!)N{IQ9;?6<@v71TPOttaCy~ z5>LL}w|NJ`(zuAdC_1y*L&bgcT)k(`mYhP&Vsx5Oi~blQDVXm*~(@N1seS6Z`E zGWox0D7U+3BHha<{-xp0pkZvCNs19jy^^LBQZk5u8XdHd^mm-VxgCH^J+(Qjk8Q=+ zqkq3T?cSmfM3hJf@1#gDYEK(ix{&r6r0qe+*X!Htj?vWo@rPa$U+MS}e1pvbq!>ri zBHrX3&^)`Pn5^Iu%kK?#jvNbzzJzuJd#`C`J`n%7)(b0rlvzqBx#I1l(?-)u+j8-% z&N18yB2BSQ_82t zGA=nxuh^dsIlJQ7#lp+X)*Ip^vwF4t-f20LGr8770}~}2a|HYkIQ_i#Pir4(7LnPL zw@t>~_V0chcjD^JXZnd2em1#+;)2bS4GkM|`8n@Roq}BN%7$U7(vTWCAPr&CF7qGv z4_@mfXX^9Smz$k0z#fO;amf>p4G&zm_PeI{1`hP3zn$t_4+*rLFs12_{gJocF>HKg z8*^HyYA>?)lLxLmCGzeYy#S z1*5gB!xlOj$NGNp7u-9yptHYm?ZIj6r3Xw_e}&WLE%$EK5Q57uO7>*q?AoV#8do5pOXJmhS|UCZ$R+mHwb=DNIQOQdfnFxt70l zW_;7n{IgwMrEAChO~A_Hmo8;{RQIRsHVeTo)Dp?mq3ohA#jAj@8Ib4jbgsYnzGnu> zk#nnvmuSe36Kh)H_AD#KD8fb=5OBa<07=j*KPOW99iQQ9PbGpOt?{XmHK)gsf2HPH z%M+MxJ`Hcf>{0Raxm-;k=ZPLt>sLuzxs#z%KHnm^wZfNbH@AX>AL_Qi?@!OO-N#>L zf){Z)f=j7WP@=*;Kyu-nv2?_zFpUr2GZI<7mqk2Jr;C$+Pd~aKsTNsbx8Ap*MVAF< zs{Dbs;AZ0DTefI8Ah=Z|%OK!Z|8G@R$;FtAfHzbsU92JIabR7FgTR0w330m5IiqBB z3c+CC^;n-S7U_#TV`aMy6d+FhEdqzcSjWZzpSAv{ znv1*wxQVG@H~Kl_0hy2C5OL#pK@;)uW5&dX%l#Kc z7OPPaK+uA52dUmz`I7O#k%%)u`9wX24mr&kKlkxF!>ngBbYPaSqO7WMChgwM*CH`& zH?&UP)ba zFW^cqxt@#TsJ3RRo~pxDS1>1;YnuCH9@zD`@fqrP3!)ahxW4qph#&g#vQj|)5_hCJ zz=AsU=y@`awOtjKDX^;H)80PctLe6(UwBe&!6kowd~!LldK`Jd@eOy@zw|ZR+QWHS z%g@i5SKjZQz~#*Aw~Lc^tv<0ai($j;?KP39CU!~bdS|Esrv~0{2cOGm_NdYM7phnX zkluDxIcTTA(eO`ub9a_PgyW`+OS@Bg@(n6>RpV|o>Dj?ktnd;{bIQXp?CV$VxC_GK zoM@}?x1SAKKbto8CnrO#u-+80w@6s%;t`9ip4u>Kv7&Vg?aE{sunV+pFvOvUQgdch zrfaIO6x}FZ)EYz;r;2bSB6h2u;%1z+VsMVuC6LQfkF17BFFp}T;9+n6t%Jb=4mx+f z0ltl59o894bE>U*ntLlt=hK&(I0#AxeXvogk zqK9+7#8?8Gdx;w9jsY?9v|U_&gDdS^5$af?5#@9I3bRv_bLL#Wn6 z|6+O*kte=>QHv>+5s+YKz7a~kHZRL87Tyw2+%*Tq$tdl_C;rk*VZqT-=l|;LUr#eC ztG{Qn4Zr>hvjxg}>V#+?SzA=DSo!(ac4Pl3{`Z)?25i8x#3X50piYAwR6 zXcAQe8++N8qgf+5^xTFY+?v$0fYZ0S;1JfS55l9Cbg{OioYuw(GZ-4 z(Gk>n>zek*CPi6kKoC+|j0}A&)+u`nbhcAALW&PC4eKcr0^?XfokE`8l9+kAM|Dpa z>Ry-+ZKJ^vF>~4)VnT==kjvD=pW5=R`yAH;VnU$zx$~Y^`%%8tbav5Yof@so{jp04 z1@RuC^7cg@KaJyuuwmNm_CaB~HrgO`szifV`9!!91-ep^xwjt*bDhrU zg6qFl#$lCAL}m6|s4-`$J$9S!8>uj`RK+3jp`aohG zJgC`>``2|3R@gN*D6zL3QLkuXlkYFs)4&kUCppA{S??mS)isoV>@*hK zWVQvMETF>PuyX#6+!$n}BHlBs5C_@sUEv4>^Vbkcjr!pkYZ$zc=A+b|s+7%0SfCoG zUc%>u2HVq~f5IfItnYsWccq`2aCva^X@^ZPYY$1oHz`(|4z>TG4f~3bf!>8Wa4u1u zb*N{@pI_5d{YoZ5bW=iWA1>Z>uPW$ULS{2nVah9v>!k40mmBsfu|~+ z&bD>`2K%_!^$G1&Wj`jys}e4*?t>?xx-v#3pNR7FKdtA{rLIKhRoesX29!1=XOpbW z*530R93qA9PT@>{#63~;W>d~!W$T4O42ewAd` zTuEQtu}P)0&?QQrt_;&H!`Zb9bbgwYRV!LG5xc#;9c%HWb}E07qLHKV`%7QxcimbN zhlNf?vzxV2qM{;4B`F5AS{-py=lpOzk%+$GE&E6&sWwmt6+@6?gpUXsC!l(o7;dj- zPLm@O-D~PDUvML7TVI3q!1!26A;1b$oq0DXL@R!{Rb4%d@>8N%ZCNdFCB4A=ioxnB z5T-nhGTL4hs7xe_M-#&4mt;#_@(@FQ{k&R_yD6C7?mkn|g^wcN$>sL#cbiqmFo7Zi zBNO@Hw&67XgGMN7vUiIQdq#TdH0sB#JoyL|3nqMH$|`RucFJ6>zz z*xdV8LbHGcP{&%<#u&z3kp#epC_76QMt<*t1|X+*HhPVFFnf3=f~gMKzICYPxJE* zE}u0UH{V_=26=_{^iC!+^hSkUK^I;6f)`w=ciNBL2J)MiT%_Eq{f&ifc{}U_Dxm7M z%Id}P*ZaF+oprD6OreX@Zx=Mm!it#_R-3{Wd=TboXOD+U?gkegAJvPGxb5TX_5RGb zKSV)RwXZEl%Ae<%S|HEIlS^0mDd9Fc`$Ii#ZSmaNmKLvMCc>g$hJ9j~%uj<3oljRM zhSDrK6%jKEAn6LA1Z)xQm+j(I0XzA&uahS1dN~D-H%AhLw6ZX z8JU7B4vy)xT@Guk<0nK?Yu_JVJ9nS3FMVf7gOr(PuES#Qbm3%SvS$l~UhdpE#*j&6 z-F|v|4bFLB?VG=$WoG6n2jqfORrvk?m=j0m*0oUgDccgGJkdgb+bQV+FTQ4P7p1-` zC>;{mDkyDN2X*txKe0d&b-pE`73p}mn|K9M1`dzRb*nQ`+fwpV5>kGrB!!1(V*(Xt zfn!9Q7$^CNT;PnL;9i!CibwqXb^w)!58W7Cth+FsM;qxwKGm?W4VD2?Q=zgtAv7Z3 zs3&xV;NUn!R)gToc-p+dBM;v7R~Ye&w~Omw{;?=|0X|aV4{`DEQSqoh)uc5jY~yifDKrc~B@wEG(9ZvnPh0%0 z|Ha@vXt=}3o?%JFv(FS~M)IVxcSCV}Y5k#1q3!ZzKBG&T4vmcJSae@hm$QeP%sqyu z7XQg7C?n92`BZyLnD)XtU{fz#@G2MX59CJ_Od8b38;l?R)7Kd=g8J?G1U0+Cn|AgQ zimXMZ@ehn*^~D7|&@d;A6S9QLMO90)(n~d8p=2aU?6CE82FqO0aj7Ed-g7Xe!YW1s zdA_zh4VmP?@^3olfa!!f0j5(#AK?#_8!(;0-oSJQ@X5S@G!a$WPr6Qg55;&y4T+%}ALng! zq#x%2HlCDMy7Ao2tEre9Ryqb8ckuyqeECyy*ePy!Z#`8z#%xW5@T>dSb8?uIlzG;E zK@?fJLLgdQI4k=*3E0sSBJpyL^)k85@{pJ`JmS%5Qktb>X(zXa zLg1f28Iq7OiPF8uqc)6qat-l&1zCfMw{ zCjfa=+Fd2Ng`uAUic9?)1yb;L5FQM3+!}eS7#kk)qsw!snF==bwQ`E))Y(Lwr-U2{ z7p-i6(>A)U+)*8dJDQxoR6?QAm0~Mrf*Ap4j65algk1O{eurrP6@AN@sF$azkq0_U z7Xn@et(QcdiL*gd~(T$V>S~z0m9!x?`ksw(j^{iw;SdC>(cbH<6g6ht>MFha*c~tgRA(bA=X2#_@Gb_Yt=`-Zuy}lq7#q zEe(B`AC_wwMv5i-^S?uot&s99$b3dXv=$LzB_Ie@M#s~8`#1cTQKKz0w)alt3w^A| zn?c4OzsR7Y)*y12w!N91b_7w?Zu6`s2eOzP;@U;(`UX!Wnl1W>gtP}sWZP2=DgS#p ze`7UVoS-6w1H zy&LQ=r#E_&1r3nG41ZSSN)#h0^adk!;83uVe`ou>ffzl|k*$60F%mrxrhu7H8y6$t z6?QM&kM&0{uLOir$~$v15h92PPH*ShB2c)4XA}1^y-8K3a5RJ9StlZyBtYIOeZx)p zJYoy<7;9BTPFoBqNLXfMUagJ)ru?8fFwfUGfUy<>V|7sn#_FsNjCD-|7;Evru@?Uu zt74zK-2T0x8nK3dLTq|4H(Ezg-q;>(sxfF^T1sJGJ;tq3|9e;Rx+SPZDp1WYP zkMT46LoH!P0)aQ#I)`jo?%4XKCnsR3;GCqj@C|LhVQzFd-qmaNa!k= zGnZQO7gl|6gj$4#@g}fxB1)p-ByN?Q@16p}CdXD32E`pZT2fS6)#*R_n$W%w4QG&9 z6#7Vq?g%sCAuzbDcSycz<0*G^DB=pCT$ulk%+Zh)bId~Sg}M; zSainc<>#sk1k}j2ZF~t#d?k2%z3kfZ~}` z1Bz#E1}L7!q#(MoBA|H6%z?^Rk)O)O;l+~9;E;;k$Aw3(#bfo7DB%K`I?)_$EVE(y zISTzv3DP%~T-q{W3zX2-rmR54NHK*^ErD{PS;l(w?2K6E-q7X>F18+>l=2ZvKsw{Wk(k18u@Goi8%zDeIF-B@&DtF1Nf7AnZ}9&okE6-U)qI@D6lwy8LE>3 z8dm+^GZ?`haz6K*B;xaLE1nPx33i1d;HceXd$)u_Y^H@>Bw|9!?NWGx;;_w5#*H4= zswzIX)hTYSxXh70znM04!^Lr#p})Cb1Dw3r0nCm`o@)Z`7RWTOA)L`DyIxvyW@+nT z-6!MQUn0wac<~r5+o@+{(q`=!FDprQN9Zc_3;XZ6^BKfJlw97P^8zY6gGZcxwkN}U%HZsko?b^t4~m17|SNMAK5PG z3a9Y7>8yYY<%t6;-^f*m=)oGV`W04>;M8Xq)RBfxRm7>sd+tdH-3VC)Fz6>e;12&b zE^G(10_O1OpE-2jzQ0{3kI_;`U=E>IGf8QajfjHmPlDy@~o;M0lzfU$>_d+Z$VGjCljH(bfGxM-ch3 zHU`_5SDp+@RdBc298U`41ag1dka84A)`Whvq=;b&Fr8xoYFZKpD2%!cpfIX3fWlw_ zYFZcvpjjLTD2yl>oof@Spo}~wL&aT(yyV``-+yI(X@ghItW2I|SrYo0)kr3DesJa* z_RW9RG;8);|DN{0FFysP4qSvuH>9D%m74z$%=&`nq^!cP4H$Cd6u<&O{F7}XfP+E* z>Zq3ua6moe>QD-?Dcb8g&{50h*=|^K8#?9Y#OpeMHz}=eTG*b_krz$QZUo-Xe+rnB zql!K^u7khGk}g#8QE$qYcKaSbo+quxR+=kdD`6Tzik6M%ZH5vDo!Pp)$sJI+)J4*9 zdoDAJ2KDW1pMi3orEv82>;ex^oc#rWE?s%5txv<5qbRBSgpz(x?&jKZw+1U5B7_I#kI%JOA_!jMZFL?0_|_>~ws@=9<<;Y?@EhHQ5}CT*Lip54}86q%=5^QPPAyZ@p= zEn~6PaH^*B{cTdoX2m|pOnXtMORWK3eC198)bH)T`t|x(zn=f>VwRF_nQ-eT9Ly}8 zyAqp$0D50FUIAwO)Mlqxom8FZO>Ijm19MLI=&a}aCXxSOdAHZe&?>rQu6RRLg0u8P z;4+Rwdi_i%^~hhhPT@W6<;J3-qsY^qhjcX{ z=r#O95aAr}Pop$dTODo%Y5CytAJ%q?uL4~HO5dYqYp4h$H21;zP#3+jnizK*f`apj z3xFG&C{5tTrr_Uw;xsT{EV>AP2CRVpXzB{|IwOrDH!u9(T{bOT+Vn|Uu*6X8Kk)yf zJKcm#JC~=p%crs3<-hz4q&RPl1Q|2+%A7vTdGN>LP!iFfH?ROg6AB2;tQa6P(_%pV zH>dzY6Z%hRLjMU3VnS6JQ9}OB#-9RGgmx&N$Dl;o>eEa63vHT!P~nbpLSn}-dLd@S zzTf%EmKk|sch`O|nPc4j@xe65Z;+(iz8wdr^S!TfJ`>i4_0w`mfz0C{OYkZS~lb);dHgGAy;AbWeB% zym~Q*Zh>Gg4&QHX7O*@9Qy4Q%RuMK1F!J%=y_-5*1->i@+>MPc{xzq#NR)~Aa(jVS ztX&fweXW2p7~~@JvtxgNk+d0BbFh?VrmH_O(gX-=CT&?Nk7pzWZIq`PUb}ht=sxB} zfW$5kM%tdd(mTjb=+1-oPlE-_0^&Qf?WIJ|?Lg{4@iqN>9?@i7*&k>xCz@=h4&1HS z{d@Sa^i`#ro%gS}e2C;5dbh`20KNq|!P^<;ZP;Pe5ypvRcq={ss?>adJh2>WAsu(VO5gzs!xqg_YG+PjWZkz-l;Q$G6S6U-YTbdvU^veuE3+^K*AJ5faaon}jv=R(M8%y={ zI6;n&XMFfAZQafE3c}AL;U?f-D$|5tfRS`N}K)kcOJhYqOGG z*5IE$29lH4)k1+nbU?m_q!Mo8ZN7aE=9G5#J*hLY3b-*H~{{|Yof+}DU6{Z1;sGbB0qD%h`ur1vL zs2i40_G}GaSBX(*aKRQ_i*;|)Xf~7#y91S zr<-~XYYb)3!NHVf+lvfj^VxrRG!N@KG7oHg9lhIY-|u%OlL{+Og^Zj>7!!yS2r20) zQJ>s?KK`c_>nqSvn+v+j#^_guzqTL|kga>aRqobH+fJ?R=A-a0Wad5|Q*X@TFYu;s z7xj!Cd3`eOPhf2pcZgo2^543Jj5?>M#Fbf)Nf6vbUPbfF)UoZ6Q8MhF4&+b!$p$>; z|IJ(L;qC0;YpIb#=;Lu^PTu|rj`2Dw_-~7)i|Y?_V|(CL>c$27u_sVoUvLv>OQ>RyW?r0`Zrm;W z>|F8_iHk$=g5RMmzz@p%D>wl0YE;{<{Xnfn{XXI-bgWLRG$6YfniyW5xP2$=e>?Jc z?M?bQ@T)dkb$h^i-nu|}!cjQ?v<^`y>!&BE`B$t#PRHxsW4g&EK40XprE5}7!t=@L z#~%5|smHY@_S*=m?=IsyQXMxnC{4w_+4yLlHszy$Hd`gPS*|D*+zC(g4#t@nMyn19FwX~RP(^j zgGSo=a#>Bg@bIDiQfIVeUZ$_3yH-hc2$n{{PE3S+6UN!R8(H}MCxfr_9Y8pkvUAwuT*dC~Cg;+}AN6&|zv%};z0#f3SH z^3wS0x0uQ5E4yBiV}8t6a=~ZBHd71Fk6T>Wz3(GRu(J%C6zQ7JRmBaOU1KREvR&Vo zQ}^2`HE1{Q*9=oG$2)nMH%AA)mQilPs6F{%(e2BYmU)UfCnA>bU8GVr#uOTYtVHX$ zXh~G`@>-;v!-ER7$oL-)2*CuyHcy`)iPUx;IeO^LPx6iVLB;@L2h=DqR&6;s8Gr|{(6I?C0_?N z{kXA`)#xP|?Ca-Z%yf&IGG=r^WsKjwDa-854O3PUREp*nTtGTD+>Zwxb8_omWr=eu z;_Rs`+4II}{xUo=EcD?nzVy4kw@xG@4Jd~;a<<_v%QF6FL|OPA4{P&enu#9f}hV9ztZzA8NafTc}qSoy)gg} zPQGtx0XH3K9QISbPG~eBuV^}OFzUqnILxO216%tSLPuNVFzMIB2AoqJ6Ugd>ASL<= zM_H3S2~Ks)d4)Qg;;(-|_^N_;E7zUb0xY$HKIYqe@taTl5YS_N$kFJW0^b;(6fC_t z1suP`2VC*EY8zc#uVqrhhZ0w7*<|L1|g!x^!#I`(kcOJuA;<<%D z9MD=+X@#YXZ8!}kFkN`%6IP>%NRbSeNcyfEKM^MX-Se}|{I(bmlA~vu$IwNTmt>C( zk&CVv%hQ-D8z{6HViuoS@XrE{{F175W!6IAo?5icI?r@C-8IN4&9A z9L?Y@yO7XzGNI5WY25M?!rkmIgpp*^Hw>j|j6|C#eTFJ>xn=$Y+F@N0y|fvz7G<## z7^)q{h)V>?Z2@LSke^;821cDVeGOmmt!KwB#fQ8_ZDBgYn}f!_$EQ1i;qAD!?>@KL zirfMhq-|zc<9Hsi-R6&+7R=b!Z9UoA*C>MN*;VQD{a>+nO*!#eP4r6K+i8 zru6<%X1d^o0L`Fi0hYm8n;Qg%Id8njpGn6c&AM|a@Z+EZNOCGq^z~uc`$(ZhCW}|RYrI|V zedONNfH{{A!9@DafJt5R)5qi0j*RcngOoCzIfOEZ8V6GeQHw-VtD*6H&ec zdKJGUdIhPpAiPgmq{Se?NBLjNc<#Zy?>y(khCHaYmMO9oS)d^ZnRUdy}%!<1}PhH+-Jfh`NNp(y0>;QNhiZ~eqr6AY8&Sohx!GtVA@!gb~1iQ*QXm37DPon^WuQ+ z7fbbjyN9oIJ#DuCmb%=^Q^&J_X8a^o^$|OVY4rQZjhTJ5EL^=cqvN1|)3_Ril!A)x znlE#-b&~JTpNjYn=-=9(;s%`N(G(K+X5Hmf=WC7^(yY8~dHF>QEAadOD&o zPFyBrw%^+~mY_Og-Kf@dwF{Pn7qk^0ZrjuQc8PAdvvgKUZ6Q5aON(LvfylYUCZl9C z`ziYXrR|A3^qmBK`^Fu^eWo5xjuq>%Ix@vDzQp8_8Dxjrdaz3j z^hYVUAv{7uGPV;pUs!*1f0`XWh48(HD$Q~1H}1+K)&y(GSbzl61pug11po;I0TLXk z0wlOw0!VO_uSfk~UgqhFD&01QHE|I|`hu#iqV+iqAg_h0E2CWka`Ixy1r0f`V+F1* zjuWwJ*8J#dPGKM})q5O^$4T@-NF7Ix0+0ZJtRN{xn=KdTi03IYT;l%4<}%I11x1Xi zNhZ^8vfcPj`F2oIIu(+-Vu0xye~w(ozATCZIo-^l%UYfEIl-V{1pnJ*{D#f|?@_Wd zM|F+jYgXlHiY4X?CnTsPyo$i^E3}1BZ_Wq%jaV)1D5zHkoA3#_tai-|g(-5__62^V z8*9_RiKaBaY_vxux=g3nrDUmCVvw_9U%51%c>LycC??MXlWwYAb(+E^+Rub(rXmCh zJXez53@CQ80-)Ic(g4N&*UH>5ED9)gvwy|T_OIB@;AUl$A&eTRK#HYon?vRe^iVw@ zVN5V_h%FtWf~^nB3g^A10d;3t`9HaLzCH{@2=dTlyz>GPB7KfJLg)^rIxz)%2G`Gw zxw$|ZTA~Y-x3JjUvDU74Tlk4w^**+2voUG@LQ=c#hnt^$|9vt9~S9^uU}AiSnsg6BW#dXrfHlr4QrhS5^?h zSjm<+_%5*fJ9|1@3@=Yx2c0Cz1QM-K(0!(stVo5#+ALKcG0;_K5Z7f;Byxb-O^kN~ zdi$x(C&;=+tV7nQ>CwKcQa1`-C^Wuarx>J>BlTe!qY;s#-|PH9^7;7o<96mcs@f^8 zgxcljdZ!Tf4=a(P4&J4m@6ZmEvvkh$NedBrKu;dgqkpZNN)Dkbssboy(%i~@xX+ZJ zIYixxs9ive!@-Wu0bZZ0)DIHuS^H@(SnF=^c3IXE8X{A|NghrS)}rYXau<);moDl# zsoE~ZioNfOXu{edWS8sKq+D(iGt=_}wO17@(lutqjY%w)*!Qe$KOt<`Oq>&^o` zcdrqhDX%lm>HVHSICbjn8Wm8Cp$DoSWb0Z>SS}K1h}87ZXF7#0JW(?w9L>9YDEh4eq-8^LHF%;}`*|rYM>IK7cbFsuTXc)1A|#N$@8z*x*PxfC zPTSZAxq_#3EwkMq{IDQmwPdCVRv~P@VUgM-BW42pno|I#c6B-i_fUSQ=!LFI=Piqb zg%xm;vf`C{^fqEYceoX1`i9_4^z&jAN_<~{l#KRYV_D~6fPT&S zfLmT8IhC7_a)83{Ji!IR6LkfU;h;N^w#X|${e9H~)ZflO^|$j+{r#dR_9E>k!4-=_ z5WnKseQxtjX$Z#ISl8-9D~#ZsP&mV@=fPZPa!2mV5P18h`^@m?Ldq&FE|xBAn_G=GGv$uv6zoS zQ%}SNkr}$#^~c1@&S`XK7(F>dKe(w|v5*(1mS$ITN3@i={LZL;_AK~w!K6W7-d-2Di{i0sMOzj3mSey)! zpyKp@(AOX>t_k#&WZvP7qxus-DpG!s)02ir>lejrNpYWVwV5aG#LAQrs4HvH4+3GL z7zD!P2&n#q9Ux4jS3sDOcQUW_3MS!<8b|&_R533*Fr4gTYwmG5&O8@H zeCBEWYkr{(Ezo+h%RHbIujROlVh2`vusSk|9+Lc6;1pMv9byv}??9r$36df4gL{Z9pBlX(#fy4s$f~3-|L$XW-m9V!y1SPOke;t)6{ETt=iAdP*J^ z*ov=+nrb7D9mWHX*D66sG=^Kj=3-$0;-vt@gCfxXK^`5*C5<9_sc0CG%e+1ym*Q|Z zk}C<}LxJNoQ)!aEtUJ{BBs~#GsQfl@zpa15)+H`bvU=&Pch1ti4x;ur{Rp~l{PRTC z_IP%*AMv<&k{&4G2>C>y~AQE4B>L0Fzsn~{N*=w|RbkNWf z6}a|y2nALq{Y^YvH7?IZN?jx>==V%D=Fh`*{*nL-8z=!RY%mSX##8_cGnW9f@$Y}L zF>uoD4e(&Ak`^l?tu6J)U88r~?#_<=`QGwRG`lwhrY+L^V>sek_qD6c5-ZWrYmQ0e zQGd2j`76=ObGdE=TKXIwlIt3=jo#l;T)-3dBt@A8Z@6dRP|%K;Wt7HXQxTz{gN@%% zXn~ZhL@yI*tYugV2%_I~fFSy92?(MRKoH5y0fMOTpCFP+=>XkO1wAevE0%7W{C}xN ztZ&3hF;R)Eiq%6&?6&7k!m)8AI`a3yO(+jzhP!isr23VrlTT)BrY z+^L-CU3A$8^f;s2@onLElKoVjf0sld7Gx=H1(aV+fjGFI+Pw)X4VkO3fS z0|aN;1Edr=)b^aAgnP;U`a9F?HJ!XZ`uUBhv`@H}V6qU`ZMXkW#PEixUG!;)f{Stn zr7ch04=u<#`1a)AZkc&||4!ey{;rmfwIQ$cOJLJUEg@fML=x37I;d3$o|QZVHqQ#^ zw5rmYn;){jV{jB4=?v2~O}H%42+m-`*9P0BRv&(jyv<@)=q~XLQiR5#}huLxxIrNiZ8*y*~O39|2v3Fn62<)(9{u2Gsx# zA+RRVN0SCn{KA@mL&#YL9D?vtYb6ft>mVLvbLWozb@W($lq0$%sPP3M%NM6ee$*pu zh~LEzm#36_;zfB^?uXSk-I*nAG3_D#-us)WbRtv7&+Tk`z3H}pBF60-sL+=ZQjgf- z!*0dm-QfK@79~q|_ye?Vpz-1O^K`P~I_BvyO;v+%$$}&`4cFBy1X?%V^b1tVKEX)j zsmKqpNx1-Asq|J3Dj1AC2FOzB?UzD^irwaWu8JK%mL+Q4uI-X&JoEEWN)t(U^Fpa5 zbx~7V!d4;XQ)A?jli%m}z_cby2(spW=@VsYzc~0hd(PaELPcnZk6;M8Nrd+Bc$c_7 zut-Z)79i4@(cJfcoZsw_ih0s%GbD}8VpGJ-2u^!4RUd;syF=k>1j+nWD$W5*%@glS z?kYuoX&!#PA#IH)Y3luZ)p$D9ZhUcGi!v$MiyWB^IavJp)P$99pY=8AC}gO1RI)sU zkiVpMP~7>ig0%kHlE@z4s6*B647xK^m{9CK`cfJIhs8TwP!SLREVI%bZ5~(uP$X$wM7+&=fp+3Dn#TDj=;jxv z-TD>b<*6)Pyom|J*i0J;6J}xh}H`^s|W4X#7?JXZE4nb zwjnGZil+wk8H&o~3X8d#PoU7Q%7TVxLo=ek3D#%RF7|3e*#NS}9Ed!;77%$jEkM>} z1EvJ30w_lR1|aYtDA@?PWz3Z=$YF_WNQNZp8u!<*IVDHe@UG#FVY@4wM@C3XHUSI7 zM~zys3IQqE&4<|=?c(Aj2Dm)eGGl;YDa(MU4gX`Ue=dbuYtnHqRp$i7FBD|e+z z#1V&f8Yd-L@~y{O-v`+FmrFHxV7=q2FSz&@}`QSml_n{ zetT@VnrSKmAXf*O(kz=X)4u~caEN@Tpq+{?W?+FS7+?;+9Dq4~<^XF8xWL*%mjb{X z2LIL;x`3(bY4^nqGbZnuyH%8@2zdVIp5&^sr5Ep%>XA0KD!2}0<-{~~VpI+=adQ8GH z0!$W$=d}s>KZg7Vhn-vX=NMUL%n^fjkB@|t@;l_e2%HHVvH5k+j$<-qCo9O3OX{R_ z7<1~u)!A+&uIGnZ7;K?3KvEWErmr>CHfMt#nl}wI98X-U_vO0ZE~u)|vF4=zE)?Xz z-wq9}gpkr)pw|-*Q`7UKmlGx95F|3iI7h?3yK>G#BFqWQugkwDGiAzKk`OYzr#J}K zVh*}az6cjuREQ8e7`v=h`z&2Tlk~!cBJL!VPt4(v287s_HANe1f%e(~`1mma@Cmas z(Z_xQ;4`)Wz~}Hki{LynDf~eaP2*urx4$vB(>t#`CI<158Qix4*+{mziO*kT{FxLt z=^684)-J)bPm%_7S%#J%J&5PlR`vbR5QFz@@ zpN|it_PiyM~eZ$Xt9K6sH2!X2&IwGrM%MEU3YHKKicdU%{nwGQ5HM ztKQM7Xv1nCT5iQSBJl?j4>+*05h|?L9nWhbHGXVHoA<{78ZzmhYoh!oAt?a~sqxP> z#r<r$8el&~BSblp| z3HFmewt9}lBU2c37?^ZqR(iy`*=ON#0r}naPkuB1li$pM{07Sdn zu4)AoTpb(GxS)m`x#*wWC)i?{;9}-E66o&ZJ<`}>UWhwO$&h%tS-K77Q{Tc(q}vMU z*v$#(M$$U1EEPV4b>R|-Rqn%wUra>(X#1?iFyXS4=yL%MM=Jo}B>IoTMgMVl0>I(9 z|2SOnABX4COlcOFkM}63HvKQ4&Rd z6!iIdyj5-L!0htPnycHbv$$!XAEh@V1dm77LZLyEg+lOs_3PV6+kuv=J(gV;k4GBmz`eyFsOQEuSI_E z$ae6x30Lg6Q_OseDx<9+{O1YTqJSGgA@_CurN>*5DR z>*7h!?vD)80rf{O+HT(OASB`{YIXig#cQlot8I#v+yi+tBOLIc{6X4#c4A8BiwNZt zT48>Zhw0zZS9|iG3)~(FNIK+b*!h{_YCaupZGW~EatB)?*WYpTgD{IXdDG_a#I2k$ zlTZ?_vuc|p3`e24*6vWM`OwBg7X3+Gie>@OUu+>jfBFCDj|3zO&|m&P`m^{)e-{7f zZ#s07{0LKdcTO$;>yOfXdX7=rzspsNHrZT!?2i6)^Ljf^52shWx&F~ArW6+k@%cz^ zF+GL?a7yPPGRO-w=L$Nc9!n@<#j_!j#j`id|Iw39Y*;=hSIQ(f>@$xg+?*5@StqVHr{f#a4M*QdLdVg)h;iONSN^|?<&@}l_g^Mi9s&5p*-*lGtlc^AA@2W_8zW*}q}DE|8#unz-w6ToHd zd+G40#6l+o#@q9>`7-p+y~ODhOhfM{t>Ip;fFA!w4$!I4}$+^9Ty2^SZjC6@kxL=PKfAIbTBDyeK@W0QJ5#qulB_kfA5g>Ch|KH3J-HD8HY2r^$ABvmzl1=$9+p{yi2H=N6<{-D@ULOROW5(M_IsyH+b ztTjhWo;1>V|AHU8mt- zr~0AK#mBy-pt`UCZbsYMZrwY>=}lAmbD!Q*n=fC(z_q}xoslEpxL5IN>f*S4eT3VQF#VdVI#q7SlXVyTEmnS zzm8`;1`w7~GBGXwQL-%^1c@L1 z8Unnaid@U~E5qQAf3qf;5ZasV4z3Rih&<=cm*BEL_@)3RSBT6p@C&uj|7$d!5(p|b z?c0AYy?jXx2BvJ!;#*IL`QkFu%=Kthr=fPFPBm7O69;NXb4L@G9-sFklX>2$5K6B0 zIAH?Jl-Bj9WFfX_UWIS|=Eoj^-Sr3l_JfmbT9p!cBwAkg&d9lNV4}!tLd3S5>PMR- zj3G1xI<~=to<3J()u5YgRXbylwcKe+8V(bWE`LY$#Y;5vSg?}sjlU1otHtqtGv~%; z-}Sbm*R!QhV$}5Y_K~5MUX_4Of&6>>`^y`ietMf`RTA~3OMCOOhhi2{c@pqo;{Efr zbNdR;bBR|6KaYS%+gnW3YAEt}pwc2#8S!AXn`4+{TlFZ>hk5PNkLf(n+t+PdA5$N2 zwb7lky`^VIIj!jAtfZ`DYWLybPNRoiOsm6G9=b>jBfT9lmiKn8eGWW>s>+Y1p8V0; zoAIpCynukc%aFaZ`!&y}lh^GZ?c6Vq-j}bp!}r$hZ9Hqb8K*?)wj1pmjIHr*7fkc5 zdv|xHwH;g=ZBIT`!|!*X=+UyhrQy5%TgLRx41~qiEXQsP=)`VROeS-Es=tJnzYQiN z$zLqjR}1-m(-zO(y`T#|jY3X7%fi`vJxMh_$Y#ClpLDlGtY5GwkE-L#n4o$_8u-H!;-X;wB%S;tb$6 z?HHVr!w%4D`FESUV%iC2rQ0}<@zW2Jm10zcXOHA4w| z&SiCBBXAC(J>I=%(aTLQB!$TrlbnnD+h+lqR?%5-IhQ{V!V+kPT)EsV8G|nLG2BN3LZUW2`=yxo}!$&JP)r5lhA`<&13pC0=0qen;%(q_7vgqnp(K}Zglb14^i zb$ep*Pp{r$$ej?9Yx=r;PND`U>lPz8U?IUc1m`rY+ae<@`+D(r(t>k+uza7>Is*55KWW8bstVBU^5Qnb zzBu3HK=Nl7oBX5rr$OZF+okwT8%BFu zO#ykzbMm9~IAQ5U4=6+ke&_x>jLd_u2Hnl2=KA;oHB>EX9CZ&pUJ{=}HZ8>NZqq@Do0JJ4&{vQ2QNyvkro=O51&*R`oclNU+?=OR zO_y>^{WYlb6yEzzp9Y#Y&r4Kuqsmhq>HTY75Xcg#*6}Gga^Bc4^Q#v0x$=Cz4m#D;YM*AFsLB1SE0<#&s$ep?t)~%+55W*;B;S{dFI9<$9)CkU9 zPjt#KCU^%Y6VE8>Fcw-_pGcC08su0Dj*b`C9#B4kh=+rk1m!_~A1ym^+q)21uPM^m zqTfWlzl2Y|BYhLKE9vV{c>YQK$9Z=;Tw42!O>^Bodb61B+-7uO>3TOk+^afQ50V_6 z`F9$K3Ro_k9igqQjpWVjcL=9RScj;LCK7Rm$rq?`IaDoLdbvqBEyp8jYS6av=)$BX zzSnRq%>5~tHsd5H&Lf{ZJv`OBq>j3S4OgEp8;5=Ocg|e()^t=nkeg>1$8nTTL(j|s zPe*WxX<61-G6@D!r~S#j`FTkdnq$#CjPiko zbjfKtUB_*~Kc^!tuyTCktD?I0f(ABNFwG@9)CWmxJStLnkZG#8ACqHG(guJeuzyJM2atsN z4@tq)2)8u?E<&hIi&+EK)!&fulLP9hRgmX_Janf5xUEjQu7^DpIm|sQr3q?W&8ht?+Ik{nzT`4(K~H1-_i^ zqo1rJ0$W@{(xv){DpRsj{YP>cLsD=GBFB8F1wVyr*5M=p&F;Kv8vn)69l2 zV9yD*^@LChn$n1d=nww}3blU~9bDnCE-&VU8@y-=`2|t!=N0XIyGRnk>td89qy>Md z6&|LIx1PAkf1iHJWg%A?AAbnhHAv7@cXU4cm-G)wsB^aBtYGW`3G*{*F;hiik&uIk zoLB&U$rjY3Jacz-6J=+wu4R-Y%u*AXugE12k6e_uV}Ais@+Fu%D1{2$XLlDuJa<8- z=P~3~_Rvcnm97j6a zf@^v?*HVvDtlbnQ!9a>S&zA~rA%QJSd00!~BVGsTYql>XEAfZ1J|rJdUk=mu62IcA zbK-pjrMW`TL zzV4REo+Jr4SxgM?gdK3`cxARyiQPpnrGDZ5t6q5o09JOQkX>tL=J;>^5s+jyKFWlW zBLIT)x4^|uI-^!kj~iICEg4`DOwhwv0fQ|E1{=T*jMab<80$PRR*ipS1_`WNvY{dKRx{67iW`&)!G` z8)#r`sxK}r`&)45`uFB7sI9B__-z;;fP_tN0UtGw9CMrD7T>Spjvnk~Nhe9#fHOA6 z5*JF@T`I-mcNqQ9bM;JoQ@NWyZ=!&Oq;ImRmo4b-EZYJSgv)WF zsRYlcyd^!Ch>*Q~GC2NEDblU+ixF1Z_K)I3A2bU!?#RALX-SzNg=U-KLiXjR{JD(b zmW1nSRwmjUnU{a%1;MJBeE@;V@@f22os9v4$RlStQXwOp8kGwC!Wi+0f9=ktId{63 z@SgqOLUz2r7A|J~P5>!$6$P?vr32sRlE*&$*?U`KD}qF{GeF0wWgBnKt?79H^@LC% ziI9K5^>fQ&7L@x;KXJEgU$e8jDEEmc1G!-v#Dtc^F4Ue~-0$1R z;>7$z8-CU=IK$T(w;NZSsttRg{$=18MH)XF&dTQw1n;E3vqgyA*}n?9Qq=-oVXrjI z#;D?k?F6C!V+NGju|3w1ealMW&ry0w^eXbjIyp5Kk!r;NRnn>e!wr&xGoe!f3J}Y( zMi2&bq;EOUm4Vw!3ZI1l!v6n7M-$y3Jo1XG0rmRQ&#eimiv=hZ@>(e8Vk$Sj$J!x+i)aW<%E6BQhW6ArLScw{HZ)DZ9A3w1fj)!8-|nwh7Sn zNOPJUN}K!Phm+#@sG|vHG~BMDHs6lM;4v~QMuymF!+Z1hsDOj~ZIytbbI=08XQ2g( zPDV4TBEG zm7`*+ORkIuqgvWy5sZg20R(pnWDmltMv&=6%DAz*qADTTON#6WKjVxxtgvV|2zO06 zZdQ5vqlk~PJGRd;=ol`MUIq9S_+a`31tJYJ z0rJkbnkhLYV*h2~81+T&>qT+!BQgiHSWJSA$*aME-mVHWaeqpMAD#YS=Y?fPcY=?r zKHT26@t4hHAC#~8_o;9MRtyV^08j^j8MWfiKcFrGK*dV~fV%h(sHet$dh?5)RF!h( zG;TgXf7(q62JuF*N~u*U6#$N+R{_)wW@$o5hA^N8vFP+a^}@4jW+!8flr6U|(y81# z^B8e2Y9P;NDsXGmT0}xy0iW;E8tFwY2jWn@k6?gX4v3-8<#O{v4H_;>8teppbc4X@ z^aN$VuN(biKn;KaL*@VmRJ(x!G5?wy25ym1yFx zt`2XzfuQF@=5C0TU{8^w={;ZB7t34qN3)!K#f5vk9$(J>H#rAB`Hb_V!CMMrx(=t` zb=RnlTyocCaq!oPzX5pb`{0>NP4J zo~_@J9B-N7LeSO@E@}L3^f6I7-!jVum1H!@VkNvB#nSmwt@zkN;72RO<%?H6jc4#| z_<*PCjrpWJ7B!<26bkQ#00`XuW|+L05eO1b{R16&)_9`E+mKs4<2MXJy<)u5ydzoC zde4o293J4lr*Hw6D8lzoe-{@4O5qs5b9N^BNT4TB$~pW%zzGX_)Y&WY5D)H!R4#EU zSB~Dvxnsl~+0*_O93H==WT3J;+j%!$ybTp#HVtZFn9tPV-FfuHLXf+o{2;!HfQohF z3T<*jeH6XdJSFxZ4q3ECSh9wE8mg6B&>e;a8IntwKS^zZK8B;BYLG_$+c*VV2`zU6mdapKs3)J?K?9YUX;0pwF4UgxU#JWU`HuW!x{JEhNsG zzirclQ)q%%@AA)@@>8%h{TIS`E3Yr4Fu#U3gw@26F>%teF@*c6XaISSahu+o zQ3KT>Tn;Y=8=&v0%v%JRQb`EGoEr##CzIiq`+@iGX`CGdjo!mHKmuyu!D}pO8mvsZmP7`7oXi}^5g~`vJ1>d z9rBZdX6SwDz*3Gf0-tNTU$o|_ zA-PvOxl$8k%aVbm3;Oe(+kD|0Hi@quSe(8?XA*~mGe%q1fw^z9*gtoa0O({JDS!`t zNddVmiv!#dJ)nsi=mA1_r~kxd_}xocB$IK}EAufCMROEw*Kr7RA2>pqCTqoJ3`i-+ zB>+1yvT!EC902XaWH3yQc1#{=xmKb+EZ?2iKyeyQGe|=a@;isHJ%#UUTMVb|E+WM0 zKJnI^h>N+3pWyk*U^{GEda-B}I@?@2R|F6vB*4lvTOBsts`CZPi2#Dl z0_P)tlRvIN)RjB0wd;k0+t)+0I{R2IpYLgBsW)yf5T>ij;NDqSRUPl-IC?(qDqWwx zyzZ}9;TdR4n1RKbf@MG!f1jCe(Sz3YS+(6DxCgmC@;PqKub`Zqp&VjZo~FX(la~#$ zi7F^M)SS4XtnSsb0y^!9?_I+3tJ0{)G@ea+7D5XuvPXPK%t20gbM;tp~UCO4rrT zo=Bi$1DiX}O_Hppb?Y?kFyfcqx6)>RZyz6@H3o4(t&q_%?;H56ceIDRh>Trk`8egt zi`JzL0qX_OLG4-^3?ALru247PRBAna{fwHr&+5&-OK(Ai!>dSK&gJLoG$9k-Thyx@ zQTO8^Jui2*J{p7zjov$JhM+8RxU1>oX8k*5Sn`5BSU{2$tVEG>DvHM{!b{dA*G+7$7SSntP=!&q( zaN^;qZTS1cU;EL9?7BiCla~`y8Q|GFb4-E|=%q$q~eMU%q5f)1iWR$K0v>(^OGU6r2bt z6fs8_kZngc$-Uz3#;u7?C=4&sM*i;8ZKvv{bsUyvR4kiv;IPEQijM)s-#yzvZm4@VKM_*kD>*g)Vk2@^nvz%HCzz;2I2HtM#G+Kf=H|{t zcg?fV#tF^y;}`yr*r98TPSBt50H9Hz)1>(KuX$CbgFX-a^{oN+bvv2*^)cg-%V$*8Z<)2p_DN@9Uemed-;_~Fji7>Mh}_+@ z6I~%#bJ@I@?@U%y^@R_+N^6!=3*B11Z7N|{A2fDn@3g};j&?-YGoA|Ac-#u*kT3P( zt-S}(W2Cx35|7P!vE3sK*jIIYuF6=UlUb2RLi80ok6WSmoJqXDXmdN%;8yBf*0x); zk7tBF`E7nPv>W@@IA=z{Sw#EpQOG`e(%uR+K9<2QdlYk38KeYK@P{${U~QNRdv$MZ z^ifTvoq^VP)$7@cXDPa0GjY&Ym$hgyLWz?cs-0~G^^gyU^Zv>U9B}2%;Yg#_f`xXT zBTGCroBaZlgl4N+TNtnIVYq_46)P;p>?6FUZ&u>(a-(9Bs;m2!!|Rt0`=ZPRg;>2J%AZg@a;nM3j8c5Jk}Hc zi$o^|%vg-|-kQ^Xx1R_{tmzd8a$_h9IP6M4Ap#vWlvM&UdDAvl0^>f{HrXRmk;ycp zL_Bp^lz3h@iOpoGo?C&S{hET?mJ@oWcALLdWM}vc!;+W6&Rm_(Cv9GdT)gsUdslnu zUr=(rw7_o+_hW_hk$NKR^p@+h>D@cGUauY<1r^!@aGeO;R@-^r)xc~9y4~anTnXyM#`Ah z{1k@?JP?;W4AszVk?~`RXf^>!o6O5w1R!Hj;VO7kQb-Mi3?U-=UlPPn)Ckn>8LS1k z-q$(ZJa}RfeTu2>V!y89yL!!Op`pzu7&gu-D`$;5e-_wril}choMzW27~jx`@clkR zc#zBMC2(JVHyc8rBB(-_B@si zLsJysb~>%cTDdLrO$N+DK-ah-0dX$U2N22Ye4x>pDHvP7GkSnLa>vu(u-so>A!EEM zBwRWyNV~9{G^yPuyK~|D_M6E!(mDsLhipmCE&g4b>6qYUWv!exc6i4SeI~6gyT3w9 z>oqlxyJNC;nFDs++!cw%8yi7(zCHG@_{E7mglG84L6W zA0J4DaVM9`lxUQCa)arZDIOp@IFnRUoM?i&J@hjhcF=Ta*)2UJrKcd)i!EZcK7J?M zj(#79$DDG^6h@wpqoQ8gT{Yvx`2eqNnT-C=ya~?5o$MEhjsece{y%+NaCDt!zF+cn z3XdZ=M(n*zYO;v@&H?*o;U}497MpUM@ScB;G9wtJn>GkUmN&fM?NNU~hCFzvm z(m!pST`zCC9}ZyRaZ-MPxTH<32l8&{wuLEWMrfpGM8^uJJU+i+cg{<*;>oKf_1mSk z5J#GfsJxCf<(8@Yta0Rh#bG4{Q$4Cb69=V#xL>|{XT`C|YkaY#FHv&njAPj-qwp3> zii;Cl!7Th7#(Un{f*Xlt<}r4a7V(%*dm{W`5H#ko%H%8{SWjLIGEXKas`_qZFv&4Q z6TycTfn%UoPDscW%cRBgot2zlHEd+Ye2ntqh?-T^Lzn$dnJ?L)4gvquFE1y=D^w_w@#jD?|ACFZJlWzmvw7ogzJ{)^Y^V)E_o3 z;=U`MsV}Qg1gXLLGUxa^T_`1pTC4E=1?PA}x4&+3+>Kv*j=9?u!TYw=g&#v4uZzMv zi1od_sY9!evq9;+*I?h3=#&kz>`~5L8L)Gecn5CP!;w-+;4$D7=g^=7WxH5LzVIUX)cH@ps!=E>2?ouqX>KSo z9w^+DVLgfnhYtuW-YXd~7g?-+E_-=?qmh7;v9PXU8UaN(Dxvo<9+y(v2LyQ+eH3$; z;0cg)qa3Q#xwc!w-nS!n$gW^ye;rw9Vh_uI%%)~RxFi&Q|OR6nvM^G^w7G!4CS zY?tknergaFpP{z;Ls3>=rgfdRTgOAUH|-iwI%5$`jH+GWFjco3q``ou{URgQ?_n zhfy7dpGrSbx*i~oi;#4G`MDu4l<%~*%8DL=o#qLuol7NfMm?1n=Y7luNmPCvCTLF$ zZ~ChKR=Lu#^WZl3W+k55-P6?%T8a!78?7Sdme?Maq1{@D_OpVY7Q1{HZF!pUKw7L& zMN%twHuFlMaxBa~xe>k0e!1|k%^1w8;LWy4>cy&0a$Um;=2bSptZ8D)^2BEb&+&fo z;eY~(BTdM!AjzyOgy~c8UR5#!2lJHpeQPdQtYkN;>}pi56Q|-<);FHmsv`f*x;$S{ z=%TdCmME6FH4v1AoGN?fsdIMex>sTQm2nC;*TJ*7CKz`9uNii(pOpdnKDv&8mkYt- z!z~{l4|jf9V|{%gZR?$-J_fItD)F-+L1!`OY?aG@19DX!TF(u#li;w;BjWA8U z=BkKfsa&>3Ah*+1*0$o~cWTX|sh{E6xh1zMHI6&&vCg!*dpYc|@C_%N z^3*toWjQA}n4^QIXP={QSpxzTKr#m6nepiK!McI^;Qht9zhT%?Ym#FVI~iZl{)hOt z%@R`&c-SYl{&tY4A!cRTb?0(<$D--&!+Ok2De?OOGl}+x9~YWI=TC!9!tT034PErI z13#8Nq%R$DpHo)tps}+xqr_*|!;HE5goUllYrwc6#`FhY#b`pcHBxVO9Y+aFHj8&Y5jjuq#wkMCjT?O0`su z@9aCcj+%rtDUf+PyA_$Q8t5u@$z@pQ$Z3A7AM4z6N~6adFb9$&ynVjqV>mD?1!)o9 z)wFtGKE|iD@k`PZLi;VW^5b?&sat3^eQ$O=D3H(NmMqIa%UBADdXtDHj6_h^T{|co zb5#8UiB&oPvSM^gW2>zGk{tN;hLShkPB*AQY2v*hesllzbKZuhSe2WdL%e1u$Lp7Z zr}b}^HP-jUe!9A*IyqEwI{6ksD$|>8DP=u16zBfOf)=Io_6bog%5y{Qac-vN>?b4k zL0j;>ds(Xp(OJ|6I@v#2C*LkHBO{&3)gL=+i1WH(AVr=o@BSw-|83O5!OWICMFT+x z0=DXqb2|DiRGFWI5$06V5{z?!I}Nu{icpVgo}HaNgi}UUmTRxLnfQ#kPz+q znD6;?YqZLWM$*kjOHEkC*Q0BE9|{pDql6!88!a3chg-5^rAj>&Q`>|EjucA)QksqcMAyCi>U*=BDS zLeX9F#73h9({=z)McF_j&Re1Yf5!R+ioXAx64jrMYb`gX_ZLGaUYlasg2WG}+I6CZ z)}w9q97nOBmm9;I>ZJ^(^h$r*RvgeO!9yQ6*y~qCGUcaboW!FOlhY*70VPXA&A>xd zg}T*e!p>YBn7TAFBHI<$xR3Mn(l&G|Ho`wU$JHL*-9E?P*A&2Pkx@9;CWt#J8bGp7}nU>?%&1@fvrKcA4D20mXA2PF!yptPzNxc zpeHLIC;4b|74*@NH2G`LHq0~1@k&}&=wmbZQz_gTCLC(if@UzqPi z;oZwzWP6HQ<4N-k);nLW&qY!L>BAq+cW%<2*iAiB=U}00o=tB<5bWJA4k$vpaA|Yf zVx7O5+4!`ynWIvk5mCR3Z7=+%BeEn)e}00p67q}<9AHzJ49}g(N#wKceu+o~?YWx!syp>_JE&n@I`P40Bq(^3NrFAlEP3Cd9k$q@A$Vv%BnR z^Qda-2j$ePD(ks9fA|qJmYKzR775cseU5W?3fc_}WUn6h0?O7MkCR0^EFR(bP5)_4 zu$bVm#$p`0rLILCyk(l>)b9&r0-W;`Av2OQj@u#Rq=n^Il#Yc)w@i&!@ojxd#ED_} zVYp%RVPv>~ETstQ-G*U$7--qSD#*|5&TFi4U-R$Wzv0@}Gp(u%k9XkIZ+i{-!Cx-9wh(kZ_eC`fHd}c<)xJUX|P!zEL## z#@)q|ScyS%w5;S}(@e~sOGYMAOG}Hj=et8Cq*x;R9u+vc5&C;`6?xe5cFcL={*6Az zW=gNZ+hCF{VTJ4=aFs8P-FDr~2%GjavO&G8+)shq6l5}!8mVdFQWdCKV6$kX2JHH& zz2-5%tNn65$@<&Giey~OgI0P*T-llJG|T3Fhou#~AK%^|Ou zzA`MaukIW{b3BXv>baANf?a2@a?txuU*O7{wK~(uW1CFsu%^HHzrLt)i82NZ$`zDN z`b47-iG9e2u(cS~fvZkb@F9%slOop^CD#!?xT zlv=cBJVwci#aW>A)FnHw0gZp(O_Cmik7eISX1}3XOfLvsj?3LVuW1=ukpqqWeM+L- zAF_wF4|w`PozKURn!K6R9(*`Bj$beGvZeU;!DPX`A`$+d^RSLL(mb{m`$?n2xXB&Z zy?_0%Gu}OqgdF}RnzmsSi2n>kg4qTMv1M+-_c_cj6SVJpB!4ajb1emzE6nL_AH-%1 zst)LPo4}woU|IQ8$o;Y1Zj3!*bu=;Kcr}B+=j`3}{G3809+y zBzao4eaq^oW6~9ckx=uDe9n%^7zA$I)ojp}pC+sqL2A)F?qrZmI+eU%%Xf|Skn+6} z5>ffGRc6>#@hbdD3xR|#NJa73eY89#9c=t%KkO+?QnE{{Bjs1$i`Sw%;aLh+Tw6sm zE!bO0zYWIj!2i{~V`n}Vy=@I*bOdWtkE^~HD_;@>r|oxn;&|>)N)?}H=QbTIHsV5c zH-DeTLeOGyV>!F2P*7MmyK3666t~OXER04r>X{VkGuI&S-;d<3b=1QyEZlce2=Xq_ zBH=C}Fy+RfhPR0b>e3BR$M2vy^3%L)7-)AZN#bW+TaZlGz~h56mE_^2iK83x{!0@* z@u2~^r2)Cizw|x6Fp>OTJZwKmb75$jN7q6?o<{==zoG$oP65qx3V>n4|JaP-I8Ys3 z)Jyl(Acj4pU7rzZi~s1lt%cp3m~eEg7V;b0T9vXy$7qn;?~trcF_@iyRjs+_FF8t> zZ~FD*eyX@{{NbDHlG5c(fetSvG4ri3YRu*EFUt$Mi$;NgYl^ujYP;bQh$Up}QV}Vao9)Xi3q=}>-`j|y6!;FO-ANuz#WrUvkpXsIPFw$nld{nAC zMsOYFXqIZ6L{hbyE^79E5G{=nI}{KNM{+0cTTt9F+`qOxjaj1PrTns);*ZQTU5j_1 zWz;D-qgsPM^A9M{Ma7XnskF^k%q(}UwLi)1Mm?TUSV35b>5X6TSbM?3pe*B@)u@$2^cQCLA zanRmKc|i7q357>pQc^Vm^eT>gRFS^S49w$k$h&M)->u6@D$MuV7I8lc;(&V z(KDX|6)%UNOyU`T%qvLTQd;~d!R(hyx4Plsavn{$8(~BIjhUQnvVq1n!m^`uG7tIE zzf1@Z`M!t2yoid44c~$G`m*H}>V#Y`bBQ|$TTxJ$ z_=RwdDAHbnB;IMWr|N@{aZiM)#6=zWYx}2L&s4_Ovk4Wiu02C}G$mKwUR3`u{M;kGJ6rHeF;!;1VT4+}f)t0w;$cMSb}dHLbq4cCuBac$Bf6%UyK=FB-H6qzfq| zpLJ{O3#{mL4)(MmuGd;O15|-sGQl)xWlDcNSm*q{e)rVB3%zht#QGJ;xSUo_2S?l* zblo6w>Nfi0dgj-@#aqTM-3s#Uhxs)ujM})L5_O`zr5GohdyOSyfj{OP*g`S)I!kLP z*9SjyU0s$&QC|`&`j6U54wppnP=4J0jc`omFJ7ODlIQkC9};$8=!R~Ya%ak6mRxNw zkW4_$AY*@_a3F?me()kqOOS$BgVLkVL8XQ&d0)HxW1{9z_jP#a(l6LNGylKs`#;c= z;qr#~uRM$MEgHgqPqHks-R2P(=wtn$=DB5Z)TTMIu0Xf{p5$~5%2p|~Y(e3$c?eSe z4<9I7kQr#*ngKa~L^TT+YwCikpiDG*6;4aSC-Dy{)MmQ6@1eo(enn_&L9L((vv4j6 zYkDsci^f4A|0>ioKqVW~LgJ4H@DL)V;cxDIBeL2|rcjW{Y~qIXZeiBpKEZp&U&UD9 zpYJw1Yn#a*ot*pCL5{y3U$_GU%-`*c^4~zFJaD>xrV5Be9$x;HnSXS&(lkDWbn*dLdL#t89SQW-ab# zuT_X>jY2Mrhy5kxl>T*YrXnx;PHZZgn2b)Pzi7b8oS(8N-5bB^C2yi1EGL7PzAC=u z6NQNWKOn7HC%<3ibb*3S!YVQ2z4FjrggQJtuf$T}>vw+(+pY=iu7IZD4H zp~)yJJD?Xb&O-3`k{8fTe_J(vz8PSWqfxai6H)!eoY$aX{>}vR_+5Fvl>_gQ7WHe4 zvuJIq1zPT?JKOK4euCJ6>8{4tyP{Enw{0Zu2%P&+??xcy8{H-F8mM0Ou1{$-*sAQ`UZp#^ zyWNgXt=;+7yKRY>h}&?(Xi7@{vU~SB0=V4}vC(NSFB{=`1e9FdO5aHL#_f~Y>r1ix z#5C(t`|8_wG2;+ZcedAuh_>~&k3uC!Q?!2oVSww;{n375wgK^q_p6Egj*jRKfR56)xB?Q5F6ti3tl3Eq24Ji6w71AiP`DbDZ9j9P9utZc0?dUOklSMB?~nj zlq}S*pk%>;%)^m$L4S#Gv{EUT-b4kHel z)eo4kAN0|Al1B&doank0n$wl2(O!_W?MNR5>v?#EPi>=(?hmtnS;_lCELH+$dP+*D z9f`MH`!AO96Q$fgy!*J95M80o+Th(flp7ln-xr4Xt;xr{sgnYOOG@=m0CCl z;6thrC?8q?J`_s@d>Fk8_)t6*@L|Gt+94BbMzhTdVR8dm))?y`hPPEMPWL?R1A3!< z0Q(=o1>dx&DG0!R6u|!87Qj9^6#L`=`;~I?q}Ds0sI01)VzDmx693ROmWNt&|1`3}5&ndCg& zj)roK0r$NH+$SajxKBg|aGx^ZKL1$2eSxuI{LV140y8o_<0!b8kF}j7f3Zu8e)pG0 zdmJY9+=Ll#@s&2%S)P^23Tn4*h#{M@u5+4_d`GpZpYuvHOFd^93T}xRdFhcrC-6$?T3O{(Y=!qYju*+^a;JMJwbS40;hR_PjHjN)`ME zIK$!&5UJ2V@L5Hd5P(zA3uvC%{*l^Ut-=@8E(}}tVCjyQ3T8NJjJ)Mc`xMux8=``; zRJk|huSlC_TK~k6q`R2#1|q*$JXp`>Ei%WN1iuzz``ERQ30L+q6Rpp8+Om=r7oC}U zPCWEqhZj?{t%RfI1PpULZ`&RA8y>v@`Cj6Wp&Okp^^5Iav_BdG4iE$Vz%g4KK)PRH zE!v|B_>_i(3)DA3TQJRq_!=ECCKFKQ%-q{VR~2dH{+EJ}JPrxNHEl*CB$h@SE7frIB{A9YA9KjlUj;iBn<3D>ZB!}O4WDF{2b@o3s555nFd55oQ)tiwMA8uk=u z*iD_a0~7@=t0{0B>-aTq2OMhb;Ozs;NpOv?F$-|Vp1w;vHtmIJY2g;|$ty=lo0ao* zKnRd-pMCOgr9V=1-+gK$CHbnLfck1(b)y_2*JoM!L?8RE{R^HklaG%=zQdJT`dr8@ z{9pZS`YAw)F2PJ~Us)cscwa|`wJa<1cvIA}Ld|!FM62WN#Vu^s>LDGxM z_30-6#*>@x=%hqwBb$Fue@dtaJ@%?&FWCBPL}Jg8?Mcrs3O~Jjk~bY));7f4=C0>S z{7K@rhVDy$P7}QT4q|hg*fnx3(nmS!-1x5Kx)64*vtpLx4&8ZgFHNnuKkxMS1ij7B z^75|hIy^4%A&pg0%hKT;_L&gR z2V&I1KIdh{U*0p;`X0V025thOiqxi`PWw^qcaoxpA->A@{lkTv9>#?;EtCE4Y`VOS z!Av7%3dZ56VE{KnV}wmUVlm}fk~s=@il%n`D}G`(pN9tGJ^S6gAmgJ*o9ekBahG-k zsrlUG4#cUex-#OMQ{1H%-!xku-;LyG#oMaY^^s41tyduUscXEiVe}2R?a-EdX#2>m z@EIX<{%gE1$sbD|6H)~KyDn&CV^#HFbOO(f=QqrOacuFU=nC>0h7RbqTNrv zZo%-{w%L1G2jnU&_-qS3US70NH~x8@ug>nCI5E&IY9u{c_y3 zfv?!>*v5EB=tG+HXg3rNlk0sW$yH{*7dcy^W^9V-Gy2@cwy=o z13wL`+T0)$dY<=RvSb}7SsqxvlC0{XlD}LJjXe{c-CihtC0HWFWl7h_;Ck46cxG>8 zZCdXN2!<%7-A$#1eam{H{B+DOmbG~u969;v1LWT)$OV`8_0nB2^7AIY_jx86!a`G6 zC9T>L!;`t3m|4D%Z3*7*8j+FO>ppW!GkyjM{>NIBjAOlPzr*x;cK<>0qrZJte;^Mg z&BtGVp|#u(RSG?BMsVY|qRbwKRj%onuQ2RT$t*#5nOR%CJudn(P?J6@HmzLmB%FKS z>a}29NWO1kHJUiHy?+R)eGbG~Xd~SlVh`=9S z6I^eCm`&f%pV9{8zU&ngt?`b1J-uHHl=l*(*u3ZvpTY$<1ByxV0 z0Eryy!Ng1?Yao%+Q3xb*xS$d_X+R$Z~}W| zI(8^tM?C#8x8aK$%?gbTN;?_deUoOhn8WAgX32~2O+5IPxBo?flk156Z&`Y}0rN2K zNDP_^CSxy@cpl5mQYQ#K?6!qcwkiS}rtbdhREB-rF|dNZ5jAcJWXcol4FPv65K_uO zIw~~*6|Bv;gj80jWx*~`YvODJ>N+Dptci96h&9dr17c0PP_d>|p z&$e*2smyG#+sfs2V&$CY6T99^NM&2N7QPvsP*gxo(+e$WIEQ#X#pYSh>6m~rqpIAV zxj7vo(nTre0GuiV76dZ7HW}aD(-fI7DBXG_6GWXN_vaBsWzu<$$(wmdECMltCOVMNKDN|uSJUxO&df!1f!QPw(KR7uMN&U>17eCUo)Dm>c+{YrQBQl&ke}e! z_m3#g9OuPq8ogLB_r`y-vEd%8Zt0)S{?meK-{)1MhSM)o&AqZ>M7raeUCLN5%y`1O zMhuuibFiVrsXf}^^DtZA$d;zEz4eA+GQ+<7r|?qu_Rs;DhV=PQk9-e8Gsi9m-izbi zXkL|1q-K-Y$!m!6Mt#Kic~2V8mt^Ot+_#x1RhJEBRNdDx>DjmIMPaS+jDtP|Sv#C# zeKJ|a29(ZWn+R(?Tm$nfI&ZlaF!`87nYe%=tKlc0GC1!%J$b4B3Fz!t^HHe7VI6E z_@Cj8{ess;EU7q@5aF)G+N&|GqKa3>ykB2qyBD`eo#543P2b$h*y$U^G;8H24-*_UepQ$TjEL#F+X>v@iZ4KdJ!)rAvbTBR?Us|`0v|CrtpTtrl74~d3zKQ-c z;Jdl}G{sLz#WXUwp!0P;s-|g8ua|cll0^4xW&LOFdA|+M-@3>pQ{}ID;6;#)o$=6Q z)k*B|q9`hA@w7HdpLppi@Ef>>T6wepsd?HK;N&s81oC1P>f~Vu&5PB>)}z;P;4h+T z2h%INq)=48P&|Xd3u7gHEd0-WJmB>#krc!{ga= zC@bska(q%Y{rx#Z?PfOwD2>tqrO}=ckQ|*MAUV>3(&(l*NDc=>C%e|(5S|KciEw0{ zGdP?L!r2nocu3S@7aSH`Q=+7kMzz~Y-u%|?Wp{5vmS=GS1Z~K@^dF#)9VmU=L+Rrl z&`076*rtC_`gjK0^pB^+i%uLFN98o(Y?cSoz<{R(%ng3m8`!^U&1(1$ z_J^j9u*-c+AK?ccgyq zICR53_LL4Yoyj_zVRDdY_g)EQ0!#l2UHWI}(m#WxI}`xt2_~@g-ULv>qL@0JRnac+ zeR1H~ond3RF}HERl~YBc@En9#yJKZJrH{LGekuZH5pjq3j6B$(mL=H@`{Q<84_^m# zhar;h#UCt=wvZ0mS;j`y$I2C7Vo`M^Z!o0I^RTf;K5m$Np+wQhc z5z6cpQV7j#?ZnE#4Gu7N^1j?RII9$^HQaAT8F$Ol?KRlUc!y~T(L26;u~R(S=rxBg z1)6J`>OgZ%!$fWjP6KGJ=|eTwO5GtqbZusLRe-ICJ7#3MyfJQc_idHgzP&Y9RF>Y| zB`l-@*Wk^3?izgub%Nxp3ffv#?;+DnDNpS$+|qV3MT%}mgl+UqX^#%B>6{`iviWXs zD`UfJ49T|-{&wm^736}9MV_SOxt2x( zIlBa?Bq=kHv!mq%a(1(EAY-6%c3(b0#WjD5PY&MYGuHW<^mcA9GXl>G4Tf@Hg(N$a zm?Mk;urN$3k% zKwoHbzIBT4zN;>mRLAv}vwX_}+kXVT!b~q?hCz8JQwTErjpu5i`VSkVutjmOs-#07 zHr^NI9WQ~=#g9#80nyBl14kBg@}Z4?HX!!tX3zg9`!;xvt8lu~Pq5OOE2^xn;Co*6 z6g4NryV@zxeSdF&JTC;}>JE1dLl~xg{G&}W!iID{lBMdqn4wfq_cMBk0y#F@KD~e6 zjan2MJ}@vLGms|h)u{}Wnn$D_z#($0CP>Z_=_z7T5$}>*38e!2hXVz)#9$&M6G;Lf zS|uMKnhI>7WDH2=4?laq7^*=P`jOG!%yAtX6Cu=J&^C1|TyvS_=@Z%D?g4#v9;iP1 zD1Z~qD1g%@&}YZl0}_5=mq3t_948^FC0bxciyHDOib&u}*?P}PDl0HWhmp*K#+w2w zof20-*E-@x;3LFsHGTU#w{fE%X=l1CjV`3!`Kr&*shPPs@UYLcOcr60M%+M1s;l|h z{lj`A4!j4)x;xrqqZ09ZlfeMTG4#Hue<|D?Z;Q5{wgFhZGnXlUw0P}gmx;q85gRix zfo1Z#4}73>%ny1tMU2=m2g=Rk?UG^TKXVSdf zEiPp19`?r>iBm_)p*g`+7tJy<9|-F>G_1~0o^l3J6@gMTABZYK22_obujQaj5#7`V z$@yP26U|$$aCV^Pl~Sg3--HPx)x!_W5=X3X#-P<8H+wvMT&Z02WBM=TfYx8g-vcu! zGXjaQ3k34GM&W)O(&d~Oi$Cjy`pYpPX6JXO$qe7bH28$xHl$c$(BCwC2bPpY%u?bo$N`Ta`_)jnK2PXvvy;8kT`ZyXuHB&vumLnmFe7L`bTn9O{e>neXdke~}HvBTS6P)p|K` zP+gWWK`0b?dax_lrV3Dt3@pu*7Nqc)v5?fK%ibCa4Qk+Si6OQ$O*6_VJ;_!X*2F1kgU# z1*+56xj_5a9qMj!-5EMswEr6U_M3y^UtGDTXZmU1qR)tq_Q^hww}S8c-1TAqh{65g zgtNo{l`eCGJU~JEcmJ_AO2$B}BN|cYM54VA-K1)WumdZ!$Xe?=O^$m1XACQ+C})?J z%=uL~F5-NP5=YYq{sHa2Ur|(}@NGgCFnMayA{Fx$SP~kCGQ~{4Q}y)_7XFaYp|f$m zGo$lnE5Nrez~i1VQSe_rFwqo2I8b3PGU?FVJni*(W^H0K8w8=^U2!L;_7 z|AW==1ifc=gTzJa-6>(t@l_MghZp8UJU_X`&H)HYTYF%heraBK?GK}D^*!KR!UsO* zDj!V%t@mhMHS5t=(0cCyS==%wXzRVFw(luzKq#rIh>3CO(~d4opX@8u-)>?UJv`cu z)k!^{fE_tK(!W8H(#(1eOrqMd-8vDr&vHaL`97COVgEkW5F{F?JyZbza#sTYg1Ao) zww6f&1PT5G97ARU5F{9Tktpkn8dy#5LGYi1u$mRdo(aK+j3|qf{5?)x&m8CHIKcv5 z(_G%wP)e~HY!}$Xe!@d@>WYQfX-$-QPi=KefCp88ho5Qy4<%{<53)cDTm2`%17jV) zgSsqKn4Z{xqtFksCELG=NWot-ym6h%(M9rpSRAR*xhNc4O+|`c@BWNs%kX@p;L`>6 z3x3)}!8A``fR3Ma zwPaZa^;f$ik_;Kq76AFOOa)iP1$!}*Kn@MmZaD9ddRQ329?yJhh|^_x~{@T;qe zzR6K8qw->sWF4)$=>~jdLVu;Fsi;q`EFpY{c}E#Ib(l$KHXgFUk6x?z2L_9oI$B+M zT}{x}Mh+%Wf`oq$bN2)1iptMTD{J*Ou?s||mp7K&^sAfwZLddtBg^(N=v;?~#=nh1 zn9q`~0;fjgo#GVg4u7ySB0&%+HAKW*n90YI(cFG&Z}b z5kH`&B~q9;t`*LZ`kgk|!dOQ#`G?}$b~ScyLcQNNTLR5)K%@RX7VWKB#Na<-EyTB% zd0hAUxjo)?BEfTz+lS|-I zA`_~+2HHMx2NHi^x`@Pj$$fp{rblPqkis0*vJ z80mX>V9N8D?zli~Z3yYA)X_46Y$NsR=-OG;pc7Z9!NnaC2KdS};ZlKQ#Dr>8ivx}7 zH{w8}T1*^hR8v7+gs?y|l2Mf%cE7Jetfa;3-;y?+OBy&7Meo_#Znol0kG}V(=F~$g zSL5=jh+i4!s``Z-s(DN2@zp)RL1V%-_>J0FNH`A1!YXQu~o#+SepM8nSuir~bLUsk4>6 z?!>mn@N5D-?J298g;7ghf+5bY+M23JBsd?9>pmL{TaI!5-9}FL`&js23rn@XYBgIa zacl$wS|vn;NeyVr=Rn;%ih;H~Z86ln<0oiR)S&JiKS7fs07?$35pESu9PS*fp27!i zolCRSp&;XJMY9MddfqXj;@&^T^nr58YS-fo&M*m7#tQy4x?_A*BOEi z|1H{#R^~v($Wub%(HYiH3ePx^Afh!eJn*VAPT;eKbz++(XL zKer`Zin-9i!Y7rZGJCf|zTe$&hDApzq&s1)KGRWK6Wm|?I3c2qUxr&pQSoG zB$N4WHQ1Uk+fmem&qH&Pa_O^d*ZF!hLs*z>dBS;Gt>p zD$}8dFi_)B-E@iImb6XIcR|9}=d?Sp%WX{P--P59Z9j{h!1uf%Gq_Bg=MfJ11RKvU zD6IZd4Wmf36xbVRsY4^30F874h_nU-7_}70LTv;Jpo4|%b?c{(684&c?4rTCWuqmN zL&q%7@nby%)}3pl3qc;U^Um)=$VfldO6)!v|K(I1abtDW(m;Dtf2OGICcig(?B|ft zZ}-o}0P%%mTJf$&!OXpG8~=8tzt+y7d*CB^AaE4D)D9KY508D{|LKASA2N6?un=xF z|5@m^bqtR#U5(SYGFm!mun)P=-v+Nwv1(xLy>K92SS;$fHV4&|zdZGanNM0F@>0x# z7#}!m?1T%cMP2%9eILX6Yg@R@Vq_5JEK+h^%Xo3?oJ5Zj&bk{)Piz8-xyW9ppi8-L z@PGSvAK$^7Jn{Lm5+X64s~<2 zsr?~cI2lS==RYedJu%EqDNTL!!3W2g@ggtvV(7f8j(l&TYe{iwo4*Ev*ZMX*gy6N_ zUFddU`u*Di@t%y^D_HIYqJI8=WezAF{sVgg3T{CH3`T`bZMbVKg1lx9F=ARaY}8CM zGI5k)iDb>B6Bn$ceUFrWSzAbn*kw!DSfQNSd68?pt~vI&Q(|co_ijSe9v2Q*L}zBr zu@1JM1qB`K#cQdCz}XW-3wrpJ2;d2m1mNk+fTZ3j2jF>O0^kW7o`)-pyjE4AAuCvXfy@=iTuRP(MYJUv6pO$>Amu1vA1OI>&f$9xm&_6tM3$t_x;a}dh z+?$Hx0x6#SPgw$+v@C2@xCP`~)%jPYN=BXP|g4 zzG6hjwI`9WJ=7?1kzSvnTrmTe`wwF8mLmQyq`Q}QfbIMP6-3ddEFu0pq4w|wa8*5& zt4^R?bppV!!UB%zT>%(eJfNrazp*o17-k1&Xvd;qTrV{kNC#?Vq4uw;TA+_q1)~I_tPGlCq?1UKTI+Cx*-ZNc&3N8=7cOL&O&6r zVKmv6I)g*Yf+m2h0~Ua+16zQsQ-CaI=%HmJ6j{!0N}CR;Nxi^@Xg%f*O!`x$!Za=+ZQ+9OlG9_rYU_+xb2FUVC$arw}V)T)bS z@Gf2}@w6|?8{MNrZ~uhnv0U}|XOSkZc=>n=eEt1AJ3x3`hNbTH;@hH8 z5n)S?u$>@QZ+?}0c`WaJ-D(Ube@=B}1Z7+zNG zU3I##_VBEhFD>;tt{RHm6;!3d%0}_O!|yJlq+zZsS8;07(B9#+sKpr-iTx~yW4$i< zq6t$IpzxedQ-H1c&U&Z3{R5cp5~0&w0d%@60Mnf&bh=Z8n$9dNLxAgyp#nZaQaE)G ze4hZEqD z)RC(^`YbYA&ZQ9CYYI79Z~0b6d3p)`so6Uc+zHlTP-I0BWo&bMvlrLhlS#53^C@0d zY$1$^RKif2dUc3JpVaDugbd5Z!S#P1#+PgA*lBa4 zdfirzZ`~;CgyhpBAtGPFb|BP>P23o0M+XhF%^HU2bR#W3J(3PSNiU}*SRfPpuJELf z4T|qC{n`+SuU$SfEMuxiMe} zr?E6b=fR8n&!)BpMwz?e;|Lr@Osz!W7nr&uYYnl=*z$cSz{9N^oR0R$ixurHc;_d&l*m{Fkv9ke=-th zcUB9lxfq<$oI@pL_Jc46$lBr=N&I%G7iRk4(*&=@?(B?GyKA}d+1lS)(M$S@B1Pc` zw&Vy6;(&}Xwml{m>-ekLfB_o)z+dPgKWNCFvHxm?evutl3Fmmb#Mbk!M^&})J}@{W z6dpG!cZ6pBCx^v&hvs)P_DzPCC-a zHP?%F82Bp|bacF_DSQ7Xsreb!uB%6KNZ_QAZ`HJwe~p2ci>qt1+uiv~hXVESw;xs^ z@Eupa>Qpy>FtmBJ_#WFuC;D%E8G2G%O!LW@B5Ck>Zt<+XO{Qx{MBJKxTrOkn>JUjr zPqWFdjpOV75|n=rx$-aX4t_X&#iYMBPar4H%EC4Dxpc@Lrx0HWqwC83dgFtq?$dSK zna17L_SuY~JB&i<_0H_*T-CXu`ycS>FiT?T$te$!)7a-CJ0&tZ&^N(uz=ilz=gLHu zlZ&klz~gm*Oo{0>VeTQ%WVug<##TDRMB#$%9YJ;D?0Da*YZp( zIvuOF>?a!9t%OxD&{i&l9#?HGhU^lR)9_8?vuz!_=CV8buE5a}rfiAjAxNfM=sJ%~ zSaI?N1^caleyJb^Ux8DrZ$sQHLW3n^UoAH@Nl0zIcqFZ2l1JljHFJWYx}9U#X8!pk z^Rh#k+mt%QF`~sCDPGNJP#5M8lXnZ8V?y$R98!(sZDu~Y?9IZBI+C+aotOIC!Y<1v zinU7P<88ad@WeB<56ISQtb`}-Db{)NqZ;9?a9^EvgQh!Y%}7eucIL0lTUPZa@^mU~ zO;0SyeR{6IEtkedg0S7KgQSDG10*uTp1t{ZUv#w~C@NIi{2`)?`ZRANL+i0N{GUt? z^>m(GLez`Q?B-tNqtMX{yRr(o(=KPOo=+AQEWI8MZaXe_;zkZE`SfgAm40I+rd@tp zvhZ+xKDDmP(6wIeieCe2@d7QWnHgWplkD`bBIxUyaBkA}qtdVfbZ$yJxcwTFrrgeQ zX|u>6=co2#q|KT1I#ZZ@-nTzD2XmZJSve$*FTnFZXfM zZw~9*?Fn5qFesVOJxw=HzfNex&wx)`7?SG18aG85AR(%xKrC^aKzlm1cH$0`{FLB$ zo!jHxf{ILC)0iaEyxn{3icP9%tJ_E@h+FavVk4Q6rNCq`ZRywr_GgDT&{C)N??vi5TW_J%l8j%@eRzLCmj%B$mn&a(4VjYXm zj=4@!7-`KN1Hhlt%`eVDzfi-rTt+%SKZ{s_pK{+8{=r?LZQ}Q8!)U{5m$zL<&A$~^ z5x2qHQ^k`X1L^~92xqpQw#?sZ^l=Ipx8c@Yuh~#&)d;ca?tWXvezDJ;k9%mZ*DV?T zVb`RR0)Ms^^Y3-ebwvCBZXUsK@g(`qA-#d&;{Cs?M>9HBb~_C*PaoSl=k?j{YT#&Vz!rY+l=mLWs3U5h|ZPiMpS6WKgQT@L1Ldyebmv zEf!%~=@`!vc-fB|^J|e_+e!c9_N?wMPuH6&J_RYj`-DHHr~B_gHW(t~84tFjs3YdkP=m#^j$pTwdxG;JMb|&30n&Iml((2#rJyr>wt@ zb7m3}zDf{m7I6(YCL(N6%fbD`(87`L{x9OA$j0TkDA7qmHL>w@I~xgt`z_(l{leuZ zg8Ui%+?7{;w4zT0)AClF2s1M)NPg~1zx0)XIXsr%BH^!aku<_aACYN85i`_KnF4Ht zr&MDd;lFQbvO0pRX=XckRgFt76*MFmS8}g>j`6t32dPU=X#Yc8CI8qO9z_10uVBcm zgGYlN2{T$a<%%Q0f9D%g7x*t*u2Ygfaq{zbd})(6F>~pwNz+qGQ`fLXQi=z!bxEJ4 zAeu2(YF3_2Td6eFUzYT?cBy5#`*kNVP@mKaOW_b;y+S|!qs2=6=P0usk^A|(QNsX? zmxbk`hvJ&Od*7{H>MPNK4%&;u*TEsmLc$zVT4-olg7$+-oGiD6s(328~6Q;&+=S)cX(h_j=>-NAYQCDon}#v zciq^?AL4FDjHgnG#2M<&51T0A#V&^bAS&}Gpg3rnm4_)#Q|>TPHI|Qg4<5s(i-%*6 zvaBn5>~dTn!8S%v?Pcqkahy7nA7|_-evfRhuk3xK)cXF>k8Lc+Z8BEN@M#B|knm2( ze0(*(G53{_1WoStkL|vDrlE{0%MAB!ay-6CLlQf-$U34gttA+1+0J2;u(ATEzwgY$ zqIOf=`}|z4wtJOU?0(QPYO-jamP}pGd3yC6z^?t-IjT=r9lCq(auKnwLpL8NFeO)tRusIo|!Pmv~fO zCcrw&GRT2?^`%U`CfZ%djq+RcWQcNGGS`$Aa}fv)_B04htkxS#oEZ?Bp+ksiAPb@u z<}weahC&yX*WJ4aXMu%Xs;DN%!L8_izglN68mC>)hMvM{j{S#m`=RZQsFJcbfqel} zBT`g$=nxsgK-WNKiogfBc?(#wO>zWH)XZeE5%Z{Ku>;cTq#h1~e3?8xF6Y9I`7)Py zg>vdm^P_x9J+76);|qTawGxO3P2}F5Qly9<4h4-cJ+TFxsqe3)!th1TY8S~uUy>0r zLHQEE#21Ih;l=+_9jGGEILY!)rL%J$6u6)nh)~!;tOWf`pL=pBA{Fybx-%Yo>rOB?vN+h8rVJqX8K_GmGQ_B~0%{Q0* zZ`PSwy?f^3i5%`WC(l{a{|dAjJ(jp!WiWX4eLKB>@Re$PnJsI=>pk>d$w0h5vSlxy zY1IDwjc(<{rYpCJGe;7#Vq?}`eQImE|KoJA8-cav?_&9&)y&s#f=9OcD?2J7ruj_axjcDI(o=G+4c%55u4PTOg-wYrb1sJ!zNCNjzR`(3 zH7?0p)t%1HtjK)xSo*bZt5B@+ZHe$#Srg!y>?T@NRnxi9_1}k(id);l=E#K3Dpj7- zaT2BgqXOxJu!}aXgYD@H)13sEDVT7dPY2C^HE3s+Fa9!yZizUYI#v~@Ha@UU62rI5 zF|mdRpYiI-FYtF{rBtF<4w$3Y74$5{+0~0x>vQ0Wmn4@s4&S;d&hDGA-KE zVYSkdJ>w~WRD5=r8zMtz@aj0&OJ^h!Xj(xS6X^(&x$DxqX!}O5L+K&z>h}_Z_MhZ` zDbnOI6O9TFxxTv_$t>FcmjCK&@6KsOxeyl;PAxwg{Z+9KYMXkE@KYz1|AmzNrp+w_ zW+&Wad5A7LF@;2j{wfB;n;dUxi^4i0 z)x*P600tXPiUQhcM1~Vo&A|8(R2?6j9R$J}VlhN*N{POEbKR<3dR;aJ3ssyRc88v$ z{QoV$p8$z;G)Lwrn8MBVeJnyD8!V(m%{^$+C?D~Y|Hqqq^}& z(e+}{ZK_1nFUc#3&j@=v$Ag|h$1B?t$34w{7}$?!R84Ao-+%l-V7xkJ@bEk4`K|#` ziW*NA;B(&8461SSGqF2Kmq41tD~-kTkbHL&t||ENt)+M5b(u$@L#yN6hn&8;5vh2x z=nG+S+YGq*{v+xY9=3^tzz|baE0x@eqmL95OWxFy)6R<&xh*I7ScdFOW3c`a?&BZ$ ztHl4{QsidX5g;G$6OwpRvN7%!IQ)i%B))t+hgi^%Y?DxQ!U(Ie`$Ut z#8f(5A{6v3*uRQ|O>N=GizbIdOpqh`&lmrT&MSYy7EwY9lK-gwqo}_0tN0Jb6cv`q zcjZ4!vat70h-_GgLBSvy*m6NKfVT>Se+vld{RBvc^m&jB*@z*((Fp0MA-gf+_b*Bd zuC84Nq(xG{^K>q*Q4|-l&C!AWSSm7?L04jof9=dsWKEJ{CHq;+Xi>-$H+#GLfUc}m z>+^##N_R5R0Qdcyo`rw=DdE=sBVU{sE=V3V3<&7EaQq^Edc!*MynA&`-6vj5&YNmc zE*S~RDy0-CtJ}p$oK#W}P*-D&KwXXQ8lu$3&sz;7HhAA^{e?E-{k{rX?>>THm2WD6 z^B964wy0_cJ5oG8#!K`_@cchr zpI&Skt+8gm(X1Z7|4@u@&bD6R(RERgowHL0n+PDL?cpLEi9ETz$2#ou15vri22pVv z2T_4wfUvlYgRlrd!y@qB;XP#&wL}vxMp?C!z_0O-uua*xTcK;rvU4UqQL?Oqi`ncq zaAf`%L{y3_63DJRRMb6R1P~oQe!RmZ`}MXU94V6BI(f_2NI==_Tz}|J*eIij90N3d zZsVZwBbx?|9|mar)o|m6TqW-(5vJ(CW5@Qnj1?G2GbM!my zvaCPJ&&v#?)ReuyzH8`uSsf;;nonRMlENfXihRuB5Uopg5W?|8)_4~#*}x#Lf5&UV z1?$(jsVejy5QlFLAP#*fal8k_@hT7y$9pJo5I~88AfCJoLX3vw&Gg=Ut2D%qV2&V) zp0vnKfoP?=Q&{2Ei-@& z)6im=RM~TVPqzI_(s{zAC0!kVr804@7n2u273X6Zi}P#}h)9`P&(A{jqe2pi5Nn!O zeBMwIQo1>6>9(*H)#D@8mctfE*tD01AGul9@h zdm#UL4Lo&<-1JkI^bit?-OE{p{LJfwbLkBUc0pO_Ou<`SIgVDsdB#wBipWH;DFz#4(8&|@>AZe zpQbB|MP}w?t?Mbf-J-KN!@cF^EA&nEU@2O}8D&Lrf`4o_Nc0;}1RjCbMmav!iD^vmTg2fQJ}_Knl8B1@X7tOTbP;d zan-bO+@PYlsg?s5#R>%STBUoVfL%r-aGpTIsSea)I0ND9EEdwgieIE#SqOSS;MU$_bsKN>*sQ@9HF zzA8}s+n8688U6G0l75t1)Gzj3}39xEZ z64nCg={i=uF{12&NV`GZGV~NSI)7eBZO9f-WPzg=R|Afkq@oQ8fnqTfpR@uv>V)RZ zf->dJ?_M?G*BQAIr3K_^oCW0`gHLKw{a)+LLqJX^bu4Z95_xibPB8?e^w4&y1)3os zrDOk@L=@brqkGn1zpv`l)uF5&eH#G%Gu&^$aAE%pH}KDJI)LE@{u$2XpWz1R-cWl! zhb_*iNs{=2cm*g?TsDanN)Ci}m%A`cV<6Y9J$&drQ8ORH=Rfs|zuXk=sSkR^$L{d< z?y!hGA>;j0h9Q()QscDmOAb+Y#Wo(QuK`yLau$-Wk5q~T+XJ!1ruK>*!LKknZj$=S z-z5+{6M;9`{@_y%eO~MUlIPdjs;*?dhgK8SgDjOIzBYDa-CS<=+ipGtVb~+7udOu$ zmEN0EIWu2?)G_&fEg4FwId4_g02v{x52+5&14) zhfcgbe{Ml}^V~U`tfBL(u0FTY9JKWddb3KidgdrU4N1GiJwjpx`>@sr(3(gswn%;X z*PNo-nIAhE+3L>5IZ&QFJi>?1PH*8`RoyOdZ+Fx;yGUtpDL>T_)=|!GyZsElf8Ff< zg7`!68>joY;pF?MmF*n*HGHEQQSSk}kfCdoqJhvq3L*1=!k>DGCzYa!K4ST&~Pa{9}g0}694&mzA1P-J7Li$U23by+ZrwVcPt85*r8Y%w*_nDIZX=5S;U0 zYD9rluT}u0dOi&dTa7{>)!WSi4Tg*Q9=u{E`IBB<9mZ&w%*~d4@_{qA&q`*N? z*t1e~uiaFoBUo%g6AIVu2#ND@-R{SsO5XLw9Yr~5om$WobA|TlKOw(ZAVV0X%ERML zdB;EDJ~rqLnfyqWG~d)VrKBGPIrz?LJ6__>!*DGG6lcKRkxK#^QAQQeh{cBvgTa`9 zMl80r>SI&0w>8*_GA`z5vb} zi6H;`0?#)A)_#p9xKj4Kt!-!wcCU~I4oVGDHbsKXYy&opKOAEjC}N;wtj`F1mWA{1 z(D>NL0W`o4#6^J}sHgxtpaFIO0S)Yc=HCu5|LuT=#Z`r=PFS9Hd!~I8xeyuOFbV>@ zlGt?VW7Y6Bgk6altLLZBXz~aYSpF=GSzPb@U0Q&p|0QLVTjq3nV|9{H37f{CD{)FibW3TZIu4;MUq03;-|K;b7)>E zoa4&Mqq11THHt~2Ts^aJKE9n?EHAB~lble>9-{*w38ZW{(gaW{=Kz#SfLLTT0hDr(8~~&F4~Fg^jHU#x zJ8t@Ji4@D29rEfuOL{B&Nqa^OSDw$Qi@+#72K zD}0-cx2U9!UssETRJoqss!h#e8uj9av|i_$^FkVR=xVbCBqVl=1;6;TZFE!si|y^F zgi>7{NIj6>i$%-K5zeBPS`}qW<%v@8>Pmp55FWCZgj#26>OmMsdw;u&f#_;u ztq7_Ac_q#Jg{5><#uY;%?F=Z=WBvY-XYDO=5pw9Pz&kQ;d}Zkpcfbo^a8bZfr9181t?e~YvDL;U4eQ<)01b4N}fo@If*~NrxAszwXw_Pz1 zKyc0l0KqXWgyOpt00h@w57aU){h9sPkP%J>P#L`9u3p8`%eM#bmf62&tlllBQ|cXx zkZOk3*YgK)O0$(G-@4nlM@_sW?p^l_qq6I>Yz-IZE!P(22He-`W&u8o{l|wz03R05 z0({8PNwrWu3-ICZLx2xKb+cM1TygTRY#azx;gd~9IzaDcU={F@`hUF}9iVpuYX`W9 z4$!+{sQ%|7Iv6%(qkV{MX|$zxe=bL%+6fb-Zz!tt)s0Drj%?z36XtvyaVn2V6r&;C z6uu@{^77rBie~YK24LPmHb6}Mp1iVgE4K};Q@-mTQmqE%@sPpRVayLDiraw(!EqhE z5qLmwbr#tl(l@%$2+qRJ|5U`k_QUo+72*6(MZ^Ir!ug+y;NfDw6>zrZ(PVUK*m8o^2YKA?q}P;dWG)CUxz(Er3}P$#I9 zzd!^ySWG~T7K#7|t7;4!Y*8S3Nc!%rrYsxSiF$V4HN`@{tLQ|s%8%xwZ_3?y`>{fA z2aKb)J$st3+J64iOWJ;KrXI1W0q1ejD1rK7-tx5pY^h9!C$HvK`M9w zi{;~c&&j|{j8bwuleUZBJ$MC<8+K(aS`T>|p2Qm`j)STXd8oGYpdKVdorRt=M8PUw zStA%?={l%I!YNr8E~&=d0Wk;T&R|&x2PN~cl_bzjegfW^+Z?qsJ;vjBVTj*Eh?oX_L6xhMl5g7O(3K++aPh2WP zRzbMR-TDc05$Zy-ASzC=g$bcqss;{Wk@H1(a<#A`Tuf65{td5FbmC8EEF3g`P} zT{`B*V|;p=QoHh49qkh(r7+_|Ub^p(qQ7km521tcI?M9&`>)B<>eJF&l-6O)cf5(8 z?57o;!&$Mvuuy}tIR1WsB@kd2{O4ykZjS$4zs<&;&T0gVRHy;oN?Vgb516ha*#~a2 zC{=F!HY~K9d1Vg+Tx`$N!b-t06k5EF#iu{x#-L@ipTnqJ1-@p1&-Ki*R?Es zJZYE8hr?&eJgRTxC4a9jGbv(Iyv#p+rexY2w03J+S%1~P^+ed!NGZNT`z_GpbNBpf zrBBj^Fnjx$YQ`qT+Bv3ZsC?TN^A%ez^%mxv;$YP#$s%Y6*9Z%{*T{@)cBh^@Qc>qm z)nLWNbQc=N)GN2q33s!imlD~p*L0o^j@Kq`=cwNvMyJkvNWu>=b248PCPTA>vu8*2 z2NgFbZ4yI)`;)4O@7u>bwfX-jRQ)WzKjhJC;N_Y^-oIVvSzEZJA6{v={OZy=cG$PQQh*W^<6cn~>7sHZeVUxu@KGIkc5B&Wrk6 z9pV6n8om)!@!eMljgf_zitq}L%d}5!rE;a%3X2LL#S9;kj?Y+>Ho04Y;a;oevK!9o zmn6upS~JGz5vd<(@BEb3IXDtSQ23lsVQD*`3J2sxaPwZy^*(w`GmgL}=WNe3XR1-l zq1Ca}bxdb&NySf3^4YF-!cg)|Fg)GmbO8gD5dJ#qptVq+uS-#j3#*f-&5l79cA`*mK-fzEf($Q zJs)Ei4f@?d9||8;F}Lk+UQ>g`My_3#K_8>BJ-=5w1k4sGKY-zST1Y*g$Ok>=?@rDsl`Dp{KfooKWnpm-o=*&=e3-SL2$p$N7Y33 zeb^vADL!;5;XQ+iZOj_qGx%<1w*DLbhAtgT2aUy3+YSdr7)qsl|-wer3Q z8jCWuc(MECU_o`DalLZYMQH8}2V>J|;)`>yn9iNzsJ6?LOB0#K`g|Eul+gpBIoOg@ z>b+<_U5Ksu$;^TAA$SjTRz%^U_oR7+?YYLlSjCqNQmuf|4cXE*Ge$L z>ZiG@ZYsAwC~Eodhe?idKq)*3y@A-TS`THs>?T}Ch($KS|0b51GmnYh@Z){=i8p?o zAtGwUcu95;-7$Td1{L2>2c-#Sr;h|(na!QY`?4!_Mimi-l`KkefFU#=&w2=UFC~aG zQ9+Nob5b5k8`{OCkTfSKa9A&~M;`B_p_p4c{4m$$0Rr68;n4|f0@5BN{pGBHzRKqJ z6eWq2m9eHb&!PopeoZ7Ko}BnMbQGb+K~zhzhETm$olp1!tS z^^NW{#4P+tmSdgB>Q*EJMR#%*zzfG7+4HQQcz1#4^IsQr<7-8CdfV$gggWSTDNpdx zhc8i=g(4ZmSMJ<3U-q{IVxBH1Wst$y|JMbItlx%6LzzBJWXLKv~J@B%BO@88F?|`qCak| z824tS0G%d_XCapgG24&L=hEft$G=c7ee`b?D+`-1Ut*G%;qvxKq4nL(kL>IfR(O*1 zr4D@q9?)M<(YuzXtsKg6_$4x5OEy8oNmF3{UA)` zKU>s=XiMXi4^-&0(|X=6;AMu4)$$hH`UZW$lr=D#y*&iVW<2gBF?TV71Nl4@C{AYd z(*J~7AWsuQr0qGYH%m+ke{Arjg!&oZf1<{tiK|$h(c}zQW@HxSuR>2PyrXLrda$$^bFT?d$p_Q5^mnZ` znT}VzPFE|XAM=!f6FfBBp(t~|)yRHjX_gC!+u6!EgP%-ZMF{HsVcQ2UA+L0v&@e5W z%;CpgF6ez#US9ReRV8H}J(@Wtthx-PUT=-Dz53OCv!|r6hdU~0-K&6cP2?ulm4uNf zx^i)7B{%wN{85-txlrzZODae%9*+NgP8EqAo>{@d(aPPLgq4jYoiz`Y7F3ckYpc(T z7=Cd;`wE3G-^fTH#@tHjiBNJjd>(EXdR~ty*GNIz?6hT+=h&uxDrrHg;LefH2#ovq z2-TydrFJZ#dfoPvHxtq`&5g@zSDuz3JFnoCJ#lna)8eME$t6;xJOP)IEm1((|D0@7 zaeS*&>F?uXYw8%YpkUmb1B%(0=h4k3k`+{rFExZ_Z%ca4$jg$-L`+*R`$Vj}!U#3~ zdmaCq?z)u>#I)m%s@F4%;qk4BWELKHbsyb)g#A|q8Cz1#EJO`TrGCfM=}QmV#{;?_OPcB8b^~dx2p!4Fmq}AG!SWZ-Z`ocQMZYa zB87urx~+)e8}>k4(oSEK|LJ z(I8bN4ZP#Jv3Kt#KBzLU&Lv{+2|w7*gqSo^RlrERqs6C}YBM9R4$gETlbLFU>qhbl zlOP&57#H{?UODLp&HDTchj_IIPXWy=a#Rxfs~0z3lp33_{@wY*Lm%eZ^on*=DeWmI zw?q91p-IJ0`;9oKl4&$@tlXO5*uJV=JMdsrMPkcZF8_=U(AcfXslB&&6Sn=q&hfFc zU!voTVX)`3Cg1!03vmT+0IJSM|cTZQJJYT6NQ(knDb}3D87+x zroRVrh+L)HQFeG5^-HWeF}BfDzhdzX<8gE7pS%fzCukOYoOk84uis<)smyt(%$&^z zX0gresB%_BK{}uA&`y=R**Q3Lk_V&)gE{+IWivxK`@uyzVC)Ke)QI}C%CQC(F+#J^ zrKxMh$oe7v7*py)it4cMn4=5`$jH}IW%1jf{FVq;O*B??HdD3fufeF&aI2@9gI_cb zP)mJXjqR8G`Npb~slPI0Job0V5pgP{8pdv*C^^V0>xYkv31Bfr;38PxmZZSP&Z^Xl;Hg13=J zw}F2*NV0qFlL7?XQ|gD16~m3*)UVH@ii)Ul9IKT^Oh+!IRf+UnBnJ2$=dg2XLrB76sa=EJt!2#(>P={N}0G@wjO%y*3l2-Q>*$^?WEmm4KdnCY1=mQ z_)fMJJ`_61I%#etZT{?~Tw_Z`ubDKYWU@Kq0VNi;tVEAf_GqTc`_R*C-x|^}9p%32 z4d}_X6}M$M$~sAIByCo9V)ba-0t*(?Zk4JScWQL>=JZ-xi`!fsWS#C-lQ!X7fd%%! zf)xO_iSa1c8u*4qU_m3W;OiQ&pbdaa?w%p$k>5)wt^o@b9&Twj_O|)5Bc2ufaRgRQhch8iA>L zZFT%-N*wSUem5=#6bUQme=nzN(UDJH<3j9x(LTiXp_;p{7$uEx$l@5Iu*tUf88eGW zYiTV_`zz;~v@sUXETUq#LQkEm@F0;8Dzd#R4aS9{1&$Js?IQfnj=^#*0wrdS#!V%o zfIh|pcWrzBPL7gR|3tQ}ieJ``Q}zY=i$x+D{9naOkNbnu^yrn9c?oDxur%JZgtH44 ztPNSMMuPR{F$QF&w0__FRjpxx7{#P|&#x=f;w2p>Kd=op)7E zPWD^r-lECVZkhFDWrI&U4gT{}gAy*5{ohFv$w=_x8@{e^`mfnf5T+7M4PsW;p4Oho z=_%{_-yAzYwI$2kkJeHb7~#;srnN2QMnh;%JR55_&g!a%I|(a+=1G}wAf`;pn77w; zWbOst-&MDQ9m^eF_FD0z3O>CR~ zb&o*C@6TI7ZlhRhl{93C_EB+|A((Tru`r%V+**sRK@+BY@GMKgl_ct@qqtV06s6mi z_1+TOX%)k=N=zXG!LolYc}^HdC~n;UKuG<_DuW*Y7a&Yj_g662ak(6jwU@oodo{ks z6D^R>7cmuO5Rx*@8ZK|KYM6KH{w&Vf>i>x@Q$j!<<$Lf=Ofdf&n#MkdTENMJ0Wp_$ z!H?C@QKm?4-|y&-_X0y3;Kg0H1fc)?7>l8sg_4_#^{0VWPJs;xFrU9YrpnwN&=CYOHiu=ZmzL=w z_q~@*^!PsnL2vi6Nq;ogG@2j3OQs`+!ZUqEIqy7oY7SLTWl0eXBO>glOh+*3t`r)J zL{DDxr+DR~-7e}Zz(PRG8V`HnKs*gRg+aa(0hf^ytidE$yBqZQgmy2f_nSV4`nEiJ z%$zgoa`wcN+35URnwK)KlG-(nd4))aX#W%>HqV&LPK;SVeS8jQ=wAm|jZ>@0hu`Go+bX5&YQ;H<;%TO)?2$dq5f-o z{x%xuVDxQ-=fQKYvN7Ew=$8Ts0TQRWB`yD`=4l(WUEBFt7q+}8+t0PqlYuy;QOf>S zC<}S^V=k3zfv|XcQ0GaY)rh}u!0$JWKczC``0`HJC#n>9zR0BQzj;TEf74(&h^_}4 z5hU1-q~ae)ga1jYt3Nv;@tf&;-Eo00hF}Z>1!EJEW4@0x8Nc2THsZF53g5Wa3`;-z`!ON7xc*ZJ4{L8Z{ksT! z+KBXT37g6+reu^_BDBsLrL}6cZgK(RYN0X3s#Y0s9>wU``}4-t-yxS2;9kUg(O(+QOFc(JayzML*P-Zg5b2CJkXzez@y1`vV9C8;#6G6{NtoR1N5S}{V%jOV{9|% z5!_$UKbAEXr~J{Rj~?GjCms0Vnj?#el_0RF20+>xQx@M_vS80bKv9&(qO$3ky=@Mv z(>6U{=9alRrlO<2$@uBbH`+ix*hezSES!yQ%v&F5*YbeC@8#?9F4GSquX!EA19ts};f@K}F6EL4!O4X^R5n@=?=RCrYbyLaXRBms#4Q0ag&WG zu}ib=h5Uktw#5P;AT!HnK8&wT7tzEg5v7lqvsxd^NUhNI`V3c4N9R5y#Npl<+2o_` z?^Gm=6fmtphuSq3OQKZ@$_bW}sOPV$;Lj#W67N~;Dzz9T`SzARAq(UZoc_7TQPxX9Gv8Mr7Th#@u(`hc4j9Wi)QU(znS#57MN&%N<%`wLPr|UU%?KpAo(W z@+q;Wh<<6Ub?v^zzHMOwL6~0oFv$0Q`%PZT@=MkgD#B1sLq9^>I`3&kY^#s zOnrtDX-t{qAh<5}tbryNC0rvA^!?wx~*HI6cUJv`-{r54=wG?gCAI(CJ zldj-~Yd`YkaS&FgH;5UA#2HBKPtYs#<|>SI)x}G4IwEOgrLfc}*Qq@S(iz(!8(99F z#iCVn&@*(X83@}N+=W{1LfsMX>f0}me}WvYPVD|NGo@;Rhn zijMQh7QJThy=OTodP|9+h&Fv|rslP=k1>j8$XGjEm?!HcNA|ak>7vz@MbRBX@BGoG$<_c1I>MZw)8^YA3}%1P z4(Q(hGi3JC5`z6quahb1pxhV6qt)}KtgzQ-gI2R$2V>C;IcEjL8K`72A>^!KDUpcx zp#H>{=-*QTD@N_X3(Q6eWs<-5s%hl8>>g0Iy7~P5SvVuy4-_|=-DE0bYJ157n>|D)N;zdho% z9lv}ksX2Hn%swaXwau<2H<r4>J`eaibxwokmKTl^2$ zyWzG$rZ_<&Yo}W3(xK=IwhwDFH_up>E#{lbhSt}2_l((cWEG#nxvsY)>;SuvL}8fMRDhS2 zV;KX(P}G;rJBrpy>gg;a&Rxd$rA#uOjVppP@*Rm)z3po+RBTxr`c%qz);W=jdNB{` zsykr`b!)PU8u30fJ**9zcG5C<*}Y+^@yT0|<43|o;G?|7Df z8xq|M)~n`72yfwN?&j`lVd4OMN_YAK4xO$%j*5~VaE$vYJ(~-S0aSy(lC(B*WndH} zT~8LbFO+jVNY!W{OQ@HaG9H40C1ILg{l@~eS?l@v7Cdl>NtW?vO-(KyqLt6{d7ikX zXXdW}FH+(KknhKz#fN^2ad@+ysm(1*Cb%*)>}s5Tv1yJM%J_kAv&+!gKk`$Hwl+U* z79Zs9Exnm@IKYxeet_t;)=<_atEdiarFrwQ<&FmnD)v{Cn0#^B3EJtc-I;1nFM+DkFOS@N_3M7W4!ZY3 z2fP28u+@wD1T~yMOPS<0gawyEQD9-J_Rb28{0o#i0^tbO$?b_kzARo!!>rHGl@{{+mD^+_&{B=s1`UfSbE8C?@P@E*{y+ezuNPR%wD)YIOo_qc_&3xWO82Dud@ z!YJ~B$Z`X^83q;VD^_jnQ+mEe2dF&7@0~U3)MRZEXK!ZD>g+8RR$Cp6xu`yd?24$^G0mt7x+QV7}W&MvRw<> z@6lhdkkQ%}9xs1{eZz2&^;FJNfk9q`!7qEy!Ry5Rc^3|inR$vSnrAU=n8Q8Q` zYK-YqV<(`*oO@%XqNPBKS0y<=mf||KRoF&l8~Wzm<^Uv1>Seo?h(D4izF@F9lDE`g zpJ!ut)`jB~7J#|3VH~tCkxbEK-cDnBVi>o-d1-^~x?}KTLlU35W|!Bx1LywA+d7r& zt0|d+wsoMnYh-5o;1Q(Nj$)Dble<3Ukkco+H z4b0+1wg3KTW6o%T4}lc+t%@ikt17C>@|#85P(Ku|4arV$0=EAEDJ#jjikK8SIVom> z4-L2%Y(h=nKw?5vJ46c00$2kWg+zo%WI(K)3W8NX?jA$I3E~diVt7?j)$um>0K2TL z5h^f~Nq@4PuA|b&NKayp(hzWqi3pCDVW1Yb}fp z+@Aws_;LX&T(~o(?VFWhuxd+TCP&&oTbCphPqt^dL33fKo0B{Ll_K;euJ+Jh{8Vbb zMoPav{Zk)N)AuaYZQr(KE2Kl~?31`p<>~{7)}N~7N1A``>H|2E#tZPhb@w>(H}2Jo zsuEQ?SDaF@2|pq(No3zJo-g}^2q89O#)IXYU&mbZ&D~g#&FtM1i*m@p=H^i|dEmG8 zX?SxSXcAmt>0S0cR?Q(tgw}AsMq+9QmG0iqoN5+cPw!AMK~swnt4(3C>6Vu99$e{8 zESLs=ZR=<&F^nswlR;NLSREBO8|J*3FABNFA+idy@w3PUdF-y&Cm~pWYR8^s_QP87XzLczvSPu zOr!ew6`fJq=k4dvr{piIj(ZCe|H9F*%Ix=HERTf0u@ZRr5|s8_&j@T#G5TFDeVGH# zpl7t+Z$5|{e=U->Oz{xJ_}TJ{ z>wyYWxxI(Oma+NwqD=`CGH8Y2#~J8xl!d`Fq*Qh~`Qy4y5LfI{{mrW;-?t~#cWkX7 z#_cvQt?DZYyoVC>s=(BJcbtr*A2#a7O0foVJQHDkP4>QXg#H)XxXlWlnVW6W*Igvt z$4ncD!AZ>&s2})dIFc-KJ_Xek4CNn?E%bE2yeEo9afrwvC|M1iXzpV8`yC=D9E^iS zOdi3#*t|I@5b@Dp0Z!>5V&qlgiXO>eq^7aJ%SOu1!Ax>=U)uE0x_6qrbi9&Z4urk+xNwHRX?E6RcWvJ$B{21)^s4JRd!ZNRETkyl@L0RTfM+P!qmw_#67nUxFVk1s;l& zpF3E?&An94MOy^pmzi(t_q{Oe-&v;nK=2!uF-&q!u#+!gG zrV&$5YEMSDZ?1jLm(bYIyps-qXv^5dPQE^@Dune|-q66&97D;gypG@KrgQPl{z&aQ z)*U;kEg0r0_keJp+s!rY&))2v1{rUHq z3$!lsakBKn%}yH5*ugCJ`7Q!ptT{~`Ej0u(o%U(aqjF*)(;M`di~HK1_Bo+^1gBDs>OdI`z715$yM6GNd5Be!5B5Pth%5tUTtws zi-}hZ)svcD_fw2r(MmVri13vvtT@(qYs7R_)l~ub`Ye$-q~j z3T9pY;y2MDQH(nXSuvkIzkg;jn}rMFA`wl)9Yo<-JWUju9)H?E1o3{^)kBv7_c9p^ zW}-iAb*F<)n;Qi4MT4y7N350$1^4)4C=UVNE%NhZUZE(xkpfZWY#QO0>-A!DwP6r2 zk8bejp=`w`yv(R{FWl=m_}pvtR&bv*Z!at&$2PqpiWV;?-UH?M;PWBfrgrhUXAxOQ zST8oi{f@f9>7e4y8)$+#MR*n^Te5-fiQ9ZgmPs*?eF%$d-{jRgpep*fwpw_7H@5gM z4(~{XbIu>j%Y!%LLhnH_@RP%su$A&Gymjq50+fDcCF-uT&A9ICqth%SXT{!fNhq`P zX+){ob+ex_oj3YU6OyXaAB3}d+S`m?6P77Sv0fTNx*@%cPh$QYLXVc5C8VK(3xcOR zUFAl3X)3hm`056!51h%$kjPWvh^@o*7uHN;W_*0uV)Gy1Mv+Xp z|J52i|Fi}MBo`O!f5k?Mywe&BV&KI)mYDK&f0TqS3Zy|05-^NNJcx9qf)RdD3%{r# zc|~dMY$^V_C_0;D(5Fx$>W{P>R+A3Stz}I!Stu!Lm&}R$P=pwRS8&L`Z8PkABZ;O&`wqfQPs-r2Ot5bJIfm4u zB#$HY1y3BLAxR*`wjX8KNmUi?pl1)fHk%MAvB4}t>GiONsO8-g;x>;Cl{o%Oa?6ZZVoDn^6D$;FT#j({+XM03WE1*3 z&npHAlFQCb`f~ibps|7pqe1M7n_KYGdc?A$9YM-^_0yP9&M?6|-mPga+pNa~`pOa;s|s0gmao(D!)As3+x z?P5-B#f>Y_lcly*ZJo+~l}-K8n@7hHez@px?~mEXJj0Fo$_}SidhM?8f*;@aT0OI1 z6fv9B;tWrbwmGU~bjC!Uv>>t7dg$wh$Da!N-@8h4JJOriYdxD)Os?m3F+igXA5BMSWCN(|8(~T~|cNXL3eN-aLG-)7A znTg0ahOPHajiLkRV965)K`mG*2~KsF6(_KdvVPgBK_~EU(I^_R|4kI}46{(T&sz&8 zc|qn}38B9iF5YyEJ9(A7C1;9)lrTgoP(9Rt4%MW=wb%d?X@XytP{ki2C(L|(yr ze3M0!eZbm6^rFCTWnwZOE3viK_lMnwHCs2gsvNpa1{`{sG1C==Y{t#?mixP<@&1}$ zZp;Z2HG!jPmhSXHO{7|$KZh~1=>+iSEUxPH)pzJP=(TXQ*UsDxxZ^dBdRG;wZ`JiI zx(yw<8t&b@Ybv@KNa{HO2K3SuH!SPzXl%zsW7v~R-lKAjjMVe5Uj*l z%2Hn>`z{vivm|`LrEyhKHjmrymXMF$O(kLB>biNCQUb>kbE%BzJlBWjT*jsRWVTY< zV#X%5R;&+QW|_ZRip1EO^EpnL;MPMPsW>es8=V2w*}K5~GO}A*uN9jNPL86ArOeGT ztP^J>y8gPuXuS4`b0CE(#E-3PaH`AKmz^=X6ceLd2jO^u(cEE{JETlRS|(@vtXV)ZJCTK-C;z@FNzl;cFAXJw3 zo&WIYs|dG_ALAi1?q1M2#8E!<#$J&(y8G(j+@>u=E-zFrBA9CNsvKG(6oYJE5=U%B zaVbT;TyPnDK;FVIbYbu`+xb1t9%kceHXu8Ja5FH&6X%)%ENbKEzMxyg z1AT}X)X{nuRID&)nhZ!^CI;J#kZ@p@M?`7gdN=%8R+tB)c&F?HRTA4u1CKaM|lndX2M-!DeOe(Q7dgzF0{DGRe_e>sAc)$`2NC@ zZHZt{(jq=x@04vx3|oyB@UQCCL`&Z^FVgYOZ;rT;8-sErE_7kx!5~FZgL3r>&GBYPC zwT~#g9Lf@063$->{B;ULH^`&cB35qnsyd`8= zgYAP#%tl(JA$Y<)2eeAKtxa~Gacd`>4I=D5*IH*!w6mjx8w5K&dDq6tN1385UIDJc zmp55a7gq)tFb)OFsB9OA*w53T^mp&iKfE}UPuiQSWAtLgwv&`FzaItb6U4Lz52*iz zPWdpC(cXC`tR--_6L@08tohsg7vfsPJQI_N1{L$+$}0EAu6`#gt2Rnl2f_gN#0bl8_n1kO3mGl?bPS;497|l zv5c(L)ub}HC;>}4j01*QE&blkUqm)m9+|5Ot_gy)6epqD?mVppx8foJTM|q*pEt`r zt&Dr{u#(WTSjmJuFaQIk$CL$^mtr>44y}plr}P)1hUf(c&u5W+$r|9uN^^Iql2T96 zQFqs!f334-UPj+!tRZ6*><=fGYB$h7bKtk(6DvQ0Er|Nm#BThHwpIvp1V{`fIg=I4 zG4pwba3kWwOZ_|+DR8@fNBI#~z#j2O)>$TYMd1rzM_fOdWq_hKDSTVq#$%J;)_M2l zkc^?)XQguj)goYPsB-MYdP*Nlv73pDtSvbswY6K(@YmPh;3uND23mx$gFSL&U6>$Z zNsp(X!91`#I;IR{GVoNSJl|88F9JrbI}p*n%I;I08daeNt0DK0VHJwg*&|n>I^(Ri z=0eI}Z*2!@?tnU1yR>fEd#1_5VrivKs1V6N5i`al?Q-exN{Uiqp~$Q0DDdJFDZfWj zv-+}?nHn7mG{Z1(z)DLWnd7qT*+iIr2VXN|p9$P^JGSXV_VM`)$))301I}-pV%5i# z@U9E#@noIHVZ1%bUbS0*Suhq@As{?7mv_AQ1sF)AniFv@=He;E6wz`FV;+B8;^ zG;U+tb{g9@8oM!1Y}+=z*j8h+vC-I0?#}-{+}Hb%$9*z$X3bh_=Ip(HiTLc9{>v@z zy}qrrFAgM?NJ1~uWQ4QU^qs?yy_Y))O{)8Ej9 zLnaZch!F8uAWps4R@aC~uWN#P)+$#&oXPQHNe;!s7F{hVu?irOJt=nE(j)lHq)E+= zM6~Niz-U{9MzzSV^;2b>iy;LlO+*lxmm6~H7(tavU(KiR3$Qi_J)as!@MWY-tGNE; ztG?-m$W`z&x%WmpUw59$s&wdI5!vP6Z%vCAVsRAI%caF{9rFK-G%q<<{Fx41MzTjAQAFSL*q|`8W+tSLG(V z%L~Mq!>h7;JmcDj=Ud}R(V-=Oyzp_y>g5IoK{u#hX3mo_>zERo&mMXYO^L{$ukOe# z7QYffiF0o7_hv+BKFL!nH@AG*;)}N|@maQEa7NrMbTG4ry@0O|i0Fn#;M(RKG+s5U<_ z^owkRRLL5vS1@60m|x!lyS#F9+U%4J3S07+Z}C1JPp9rlkZLe9)hBLK^VgcDN9GHFE%$off+}aKc|Cr5%TUTE@i_5g87wQz_r+IH&-u~24vq_N_{HMUtmGE zU0NYAmJ;^K7v~&f&hs!9CNEq_GA=p0v4&i@rV=tzBU}p_9nq@lw-bT(xxf?oP?Tlv zGexCMV}n;+xu%@nl?=`-lc!^=_Z7It60|eoU>9EuSGPiVo7^Djz2YI;{q@Ou;UABY z1G-@Dc;?MtqV_2~7ungXtyE*^*Vm2xz_*VxLatJ8x7#h-tA=JuBU2_!wb=?aI`4M7 zh5`r_9HW{BU*4vg3`#9mcx}zz2=2XOLR3%Tc%>(L`PYNCHR=B?uZuSR#eJiP*WgTj z5G;gVelFG4!>vLnKK+2&{SuvWwT6QJ1z1nC0l$d?x3Jf0ecr;ZrVZS=gYNTCjq*%t zj5ZNLsU)aQD7y4zozXgCiN8U&XSjh*CYd+PHsSpl?^+`IbVV|qA1|!=#`{pNKvkqb zpS&UELl#@&M{Q_rrUDfS8OC;6c=*KLoA?hpgBw|qut}#|F5GpIvf;2_;9V6*zpoGX z_Pv-rt3(DUM=U^-`A^J7I;hklg|ms5yb%WxN8YdPf0r%dC5v{tPiAG&;*`F3*XhnA zYpb*0u^RFof+r`Ns<$2wJ!Onc-6#_Vk*nMo$1?BBgTuvFp#Q|wJ2`EfhM_1U{JwOl z!3n|I5V|=@PyhZTNGAJ=u`Hbm2FsOgSkvDp_D6!g-n;|!vVUz zuM&qBQR&QOt8I3>_PD&mPISv9u$Fw!gt~L7hq|V2s&Z&wgci>7SxIv-Szq|NHA$$$ zei@$3x&aMZWz!Aw>koo2zCpFS-Q4&?9Ffvl<%;)ThEGn9W2A=+v90X7cRI8J9`Q=X z3PilO@0PS|JEhg`CGJB{P`KC-r4p*99H&`lJrdRWhCEdgv%>Z7+{95q^zdm`%o)&!l~FDVS!5o&xOta}WsF9N=HVL6`MoguGUxdk5F zmv+2ZNi&bLjm0`u-nqd3YIom-q_YOaMChj*lIHBnXv?*-1nTmr6K|&fRBSn6 zL^1L~aZ_UqLC8sVT8gph`(_KllvoNG4M99rjFsmuR-Xu{RIlZyCoXFHmvf4h! z-|0uAs@hQqj3J>x+S;7T)h_1o!VT!jv_9QCIvCytV5|dDJU=QBghW-o8?BJ1c zn>bM$hL|X##t#m(s(L@xIDEYq@@+pKvVgVoBZY`WmtzSfUDDv4^_B0L%b z#Fg0nU&nv6^hv4GUCroSlrAk^Q8qPAf2yXqm#S>0N|^D`ok>-a?*87BT--eMSe%Vf z%NV9{lcQT=|3YFX%)&#vmL@|bK)W7;{?7Iu*JYo5_rY=b<3GaMIb%bqx6^d*u~Tlu zK11I5+)-q!_>ik2kSZmVa+u&$Xf<%F+_mVN?;Oz`Kb0%O+ zKSoBR;%&g`@99c@vx1-OubB_}hq>=Ko9f>+EL+}(+R8GX%V{`PN8`a!2RX_U0)CK` z{rE4ABrv1_l@dY33VW6lMtYP2I6bIaSVQR6$=1{^QaqH#WWCj;`7ei3_x)O~PBWj& z(;SOXFwQ#dxXtAsjNfEMF+y%l-q69@_es-{a*&Q38RI6Bh@&gh!QC6*DGLh z0zJG>tP)h}*)K?#4D7rO1>Hws+8QQVRQl7zM1W{@jWgOkZ5FQIZl2F`Ebc~lzX?K z**>-L+04G}_WyIzBA7+HbmM&j*{>1k$z{An|08$^aSI49xwG}wuqnGfrzrk=c+n-) z+mBI?h=qUukViEg=}C`Mb!?miY`y5chTyUT$@}%aA{w^6>OGfTA2#uqR%2Wr)M(>u zCo#;hGCB0D_UK;WwsE$-e+`q=INYEmz^7xSPlK8Z3{`XL*H~w12nT+ENYKAMOWM2K zhg6O08Aa9qcQ)smG55@II91W{aunoA^uy*&6}11dG!dCn*;=^T`*T$t^pY{iZmr{QB>po5n zG0vFv!qBS^2G8-Ua-n4+r~xk}M=wTE49fVo();<>kc(@|Am;b9yQ}RQ_f`~vt}TSe zjEMfZe7?78fv%_i7ml25%m9#A-dC_eA)3eR!Tu7C?R?Za#XoeUl%2Y`ixDw)@AU~s zVj(P?F0)yR34E3xj}+RxeP5@gV_lmc!(+VtKSVs+-CznC1pctEfS#zpZ@Jq^1-G~Z z{J}9;^^m3&7FmTZ)29>`IpEt$W54yUC)J8e=Thf^430wA$$lW~fBz-@Qnt}{R1`h_ zcqm$T>s|1sD|4Jd7xk9f+;CRE-Q*Kt`fo|=K4=5uG@k&BF7rDPE8&m*HG+3+iXSJk zqIUUFJGXso8`wddaG(+?a7ji*5lDV)tFJwe53aNHhN(?I#HQOlksuD@!o4Zouq}ko zVs*XpR)Q@JxH+x*Jdr}&up)!(1BWuTZLe^xp(&QHzw2#3s!+P*F^-9s+mtQ;dgy7g z{{!Q%lfF-bp-tV_EE&Zhcvj>pAJTo;I`9V@lb;ElhFY%EKLkV}d?q*;9FB(}Uv*{b zaf%+zfjV9adtbqWpB>Uq!k2Z$Z%}=BR`1uQB!L$WL*1m(q4X^^Z|`ryFjUm$6zgy9 zri?if9pf7=MZX<%d?F;K0G$wU*_pHeSa7t+#L*E;gMY*G;L1!ztv!j&w_-giV_lFk zTzNtU)Q9h^jJlxpjNKkmCu2H`P%v8X3b+Qay*Di0^Gnz|JC&X<0rAK~zC7`H;WRP% z|KXN1&Fhuj$F6%8t@v4fAqv##qxG{ABBjJHu(=W;By-<2C zzQlO)Li=CZfWB%7=6;3hs~DK_U4g);?)3CG&;&0N$^^4gLr{%E!%Nf3q%3B|qPR}p zfTghfn_^E)p%RL=zn1eStisa~m!icI_Ye}DdHj6g`k{9U)fXJyFyxSi_apEShZof2 z$O?t{1aS@uQZ40IWB5R~C+yf)r{A8$-jVoE&5ug_-;M2Jsd^a=oMl$v^lF<7?p(BAdz6PMX6U zQ@I`Id=BlTuOj?V0)DDT=mWXFQUkemf9Bc^X`QuH%(3`@jRqTV>b5lAR znFSREVA_RXI<{qKyEoQp5?)IVsm+{8$fi`zD;IbrgnnmzVXLm8LX88fA}x_&Z=Cx( zKlw|!-3htGg*ap7s=|R3Mx5S;`V!gQyxhMLmLF z->%L`MyUT6EQkO09R7nG8e;r{7HA?I{0B8PQ1$P)WGLG&WVymA#gy%RM2acn!{k^V5(~}gG9IbmqbTy<)#`rEq z?KQ+g6P+58H*g+?tjmJ<53GBY#7Wd7=P1Rd9~IopjT)*l7W8WSbe-SS7U~!bRpm-i zDn?rcqEyu%4mj1gHr&3Gfc}tkDw+SmseasZKq+eQ@4{rM1>-bFwe2YE&h;-dvB$Ks z_mS8%(!CX#NlcJr?ZEaiq-=7s%kom|Yx(Utu>8k&LcL-a02LkssF+oK=q7nXV#w-m ziW4t|O6e|us>Le+RXRh4)3=O_c}J^CL<{IJ6&SP8GF7pd%IP$P?$UOog^j1uLg{GK z=(E4iyQ0@eoZqpGlj-!UtVQ@0T&eTtM%HD(004&J6hLG;iOe=_0K>GXK(d-Wc5?-u_jT%|i|bqf=)I66Jlw zNb4Pd9MU~34AnFE)xLW`e61YH4kZzNBZ*E$VKV7n0;Rvu}C&;e+9)8A$D5oVhw?;p>6Vz{{l)FMMO%SE`W5FAXoXK~HK7VR?kM7zJ=VG>E1HDEuyp2nC|P*^w}CrtwIE^PS7@b?Q8@nnYpOv0g%tghSYHeW9i=lMZxZ z`i4rcP*VXX$Op5Ym8Y|0*g{jM-z4utzlZW}-DZJ<>S%BSEj09IDtS24JWS(A=XS>b z%$hY)T(kSYKB9zj{tQ#bPDep6Kxd9<38&qmt`Duij&6~{RC@YD{2!SD38jw;0viCO zQYwI-EI;|l65yv?atak#HULS%>7V>$2?pclbbpiUADKfn3303jDvu|pcq@}iUj=1S z`tA5BRo|+(VEaR#c7@KF~`iSq0 zb2AMKM}TCNt4O%t*pCps`W%1D#Dfy9&3HjaT!{S?JF7u%160&15#m5Pyq|O%^O;V} zC*4v4bSwTzw*{Z+#Q3f=-h}$1GmFqoFr^kLu6_+X%FHkOO4aqv#wICWPw&}oD$)q` z3qj8JuvE6um9;s(h3GQaIkL()9&zOs1!Wx8G|KdGL^=z4&@P-eE-~VMN^o${z*pcd zVLHWbRrzkRf6d%;7eDJE5v3^1U~oEA`A!{DGq)*!<|t`=)iNP}eRFaRaqVA=dirmS zeom6s${K4Kca)qd7k|VIA|T#`nMA{1JCazWv1K8yY_Q5m%F%(w?l{W6BH0_R`L|F| zi|XW?#ade%2Z+I8EREc${Eva2R8}FP>VH&@iPuWP4*5pH4_yj2N$UtSwxX?eLLTr5 zD)1gLGDW#5%IQ=`W^|oVx$5=R7`H4!CjLH94-`;u&l|XSxkc(xjAxNQlcmZEI3=q9 zskAI=NS)Q8n$Y$jp{g>`kDtv{$V*Ii1ZhcCpHDbYft>5&Xvu@^p_0F0Q(g#XB2oxO zDlH7-8Yj<^;1-Eb?}&)aRh{cqo|SUW460U($vKKCt9i`2M<@@n6N{x`VLBdlC{(Tf zW1GlG2#{7RxAxeZceF1$GVExc2-i3N@+F$zK}+h!36B9)R%#Cci$jG+iSBZ+;#-L> zrihGOJ17-m?6R6m65>0@-)DJY_u<10LBi{_@VI&7W8To>RAx-)T_>&FrwiAI6|08t zRsY&bPzn))R4sp&lPDu74JID=t8C2T_^Hsnpi1lq!v8GKe3>J3cD9QSNW?H)N`X~M z7n))6whph|Bp+7W^BXf&U!GOw#LciG?!PR1V3Eq9b$yuH#9te!8Y=8@b{fZKPnSV zj|R!m&7v!(N3a5v9>@w%xns5tS1%m@{cqgUG;0(WkCt8x$|0T)z4AJUEj{{wMpIhRR!jEKIo_|LFjID1Kv z=h{G)r1=)(-iWmoJPh0DI+ADVKoU94rwhJM&QUne86sk%eS5LfNpKu69{wmcVFCYW zm@dl#7qe!Hmmcaj)l^G4m=(oozsP9r45DK4#iZA>&Ou>@+8RS&p|XGdaR7q0CB2mt1f+Wl>=Z&m@=*ni#Uos| z-M?e3QD`Nu3}Y7PvLIHV%K{scy(J|ag@S~%fG#8IY~vUbSK9uu9;_#=t|fv0+P45F z&Bxp*q$OkVA1L;Kt}`xnv5o=GLatOnVysnwt`PViEwR5>k4TGbm+P%W+ZTGuQz*Z4FxI^~Pmrjo%!{Dsc`eax(G7ZnB(`C|r4Xkq)Cg35E(?5cH6{FD-R)~jOm67n#A z(*f_fkIjIr5~+XHf~Skjd}^GYjVlXE2J*`z1ME2bD+25!W=4e_3s7jU|4vtVL zK^?Y{k)8++0=y-5k?Hlklk8F>GrY<$)j>`S^7Qt&uJ)x7FW+aQtDSBeIC~zy)3pG`12a08ycw|oHxG!kUAMb%+Wu=(-oV=p-ZZXh}rcK^mE6jrYS zp|G!Hen*C!0E=#6z}$vojILC!Tv^~7Xo5|nxfL4IFtiXuiV7=s9HnX%>@?VN72W-- zDE1Ma4gEk^3KQkP$j(+aFF~Txz;1c*wHMLa-$hk3qub$me^p?zGDrd@D+5(vvQh&k ztD4WrN<$YItPJ*5jIGD9P$P*`Q=Zo_f}X84^|iapCc%%sOGz2bxKpi8fSeaoJWUG4 zqZ|IKIXqKoDWj5qO9BNtq#hMmZ3w(P)1=<->6liCKL^SHae4w3$XMlD_62(j( zFzyP1g=iOYXeuSeGy`qedr7E+f%>4Kuoo4A?-7XUYWuaJHBQ>$d>C;q)gA0_n3m|* z$LFXEgU{=fFEN-OZ0u|(9unI`rLe+{s|l-v)z1#%qkm`ZYKwS*~!ek4uVuFmG-Ml~xfqWie~3xcwy;uT>n zkz(EU)Wk|q8p6K|L}@PFgLZSPldgRIaVgu?c>112U(@ohnbeec zOVyNkm>csyDWdX|A!-1IkhB6ALg$kqssV<0#IDfT{WZRYQgo6Xm^&@>{~@**T@K$= zMIZluu}$d~z7QA$lXC-k6=%7-q8C!Ax*S4zdYXmJ|7Ffv4d_pu22m$;?{`!h3NtPy1% zAemgCxI~mdaS2O-;`#%{MNt8Y3kz5k7+Rin-()b!7E(96sxL)B)9Luv{z;*91&=?g zmI0$N*aR4j+E1fV3m6U5RlsO0e;N&Iz-U~>C1|#wCkO-7XS;;6ouP+Z^JV2>OO#4?mBnvZjB zP?G}csq|UT#Ls#re%2FUe2{|FXF-cTDL;{Wj&Z@1dl@Bgsbx=dOC?X;x)_8AKNcLw`U?yWwGeNwrZ0b&4T%iF1%?#`Dl6+v%7NON#NRi)Fk44dKO82 zH01dAYg4X^TysErHSl95&87#}>dhkWOUs$wg$Nf-8esZ~~)RvMU`H4RBtlhAnn$_^YH7`qsX zAPmxy97BiXgBv8lz**sP7H_1`>SHueKFr_>f6j^Obk%FXnZhmAP_F&)nx$jnAkYFE zd{)iwj8k#Gb03kyNNv(D5(WaP=`d z3}ml!ViXw?)g7tkYuCg^KW6s*H^?3?;tbu>u6Zg5r z<3s98q1co=vi*6oJMmT5ZhZIP-!cMwso9TLrhKuqNsG;m5V5C8s)y9rf0@lwDAXX_ zL|qoJA$_qiImrda+>ht$1o`gk1JbUP#^=5LlgHF>hzbyiERLs4b_cJ()2iIv3zk~g z`l08(i~3bPM|;Fu#N+8X9)^c&z|Id2JH>W!hwu#br{X35oJ4;Rg{KemBE5pn?g0j0 zS}AASanK6z3jjC>quOq_N^tKci>2$D#n!bMMCAFiyJV-KR99g}z+(@5@O${9E^PMZ zNC7+R$Tet;^SyOC`kesds(tJ3Tz_Xub&3wn@BuFz0bSkL(fG`F2Xl}roCW>rTahR6 zfhYNy=X14G`g*m|;I)8jw$J|BIfOUK4hIPI6k?XTJ(e=WC^{ksQ~#wnGH`{dD1FgL zhAN}|TXDm^;h)5K1+wCK8T1D|EfVMf^8%7kYoN6mJ;<3e_WX zF3PV&!Y2p*E=N<4_tQdD`TUKNt6gi+iaW>+)jhC&HS=Pe-381Py*FxrpYli{N(<>GvsWI98z@*N!AOFj|6*iy%-Y{@J zVH|uNm$G|-juyS-3Y>$t^q9EQZ2waRoBviavFBekUrUC*sS@tx`dJ|+Y`b+;}m#mROYl0X-ynCz>^pG$9t4e%OR7Wzofz>FFEOT|r zCaBI)W4m;h=vMf%TEIFJb^Mt^ZZLELb^N=F#qf-$+C~4kt)LWEqh|#tRxprT!`|0$v z9a0;*??scSW3wQ6-o26l!X6HU%z5ogqK2g85Ru_ZTFtWp2U(1f>b{eN9xNy1l!Bs; z!G7Ax{w9Z%f2w%}8;49gn^1S{yMvnEITi-3JdN`>9HXElk<@_FAy9L*y?Ls6au~Gd zV&2m;Jajcd+~d_0gLf0*y_WIHT-PD*od2NeQ^v-W? z@poS=+D}P9L+?cK(UEt9dKJTK>8JQV>LOLz?KCt|EX1@39$AhLc7@}UZsIZSva$JS zXh}FF2*t{ah_}eGr-$SrBjdB9)V(klXe|s!EzCxM$fVWgw8rCs$c#pS$Y?cD%YTgk zk(rGEk@d&_ck%pl=%W0v+%GKG`@iVGl|xGqTh*XrqxHF%V`C%ojSd~0>f{1&K~4qG zzo!4Cb0W$Wj{NwxVvZWdnx<75+NXdX-L=p6&tjvuydj_y_x``h+BK*v=9&?T%UP5< z!UroYC5erKMj|O~_KyIq`{`-7=K3Lt(k#Am3p&%7x>lT8aVrATdrCOfI`KEK@p{nE zzb{#a$Y(r6&;+r9O@FeV{3u#g(V~#FwJMwb;1##&x$Gu z#xpz6{3cXttpXI5?*;&J!w7fe{Vhm0>Z0YIyqr7i;85)fgYfTbcymBogjI8Eac0^( zy;MxKhNjCzczsSZRS{`eHW5wRktB#2o^L^7rZ5U3p;2ArD!dFtC>)CyIrBidA>@&T zU67RBo1z7#IBnewF)UGvCkUhg9SfxKMFL0zj0#Q_Tmnb~Vi?Hc3(7vXVLW50=ML>i zrU{GL6+bO~7`UUB`H{NwwLO@&`C?}&|Fl$j6x*$Eb)J4Nee~D75m0+1_Mj-~BU}V< zuvlQYs8ARQ87ou#MDwoe!!3jl4HnkF98Eqie#)?2jDLHc?=o$qRM6{kvs0El=D+C` zc!aO`Z1wVz3;lWKOE2HfS$;p}+vLtJzc2i53jCg%RWB}dmZ>Xi#blN;u^w8l{le(z zB3T+=e*$BWU9XOOga|T|UKLH2&6NF5hhFe|MQ$V%4uYG(zzUnCKs@~bua<6(fiE?q zpnoGeV-Fhi@No7AFRZ~~4J@Qx%qWzYi=vmNb(PYFysS06UH%s5H!CyBuAvEc83Z#M2(*U~6lP`{V_Z5HkK!Z4IJWIR2#^>k5xdDM5tutZKj2 z_@du1`k>&}?05p8O}oN^?qCrplYkA6<1G^(s*RJEJH4-jovi zn3d!wTUn8yLX$HNuK8K_7icMNXG(?5hkC*q56YY&Fti;RtPy!(DwTP4MiHoW*Ha|8kV|+g-uaS{Na*Cfb$P2k*`=s4T2^6+*NbM zhFR=L$w4j$xNwb*WFue1f-10|T&n>8*?uxmmNKVOWoWf4o8nA{= z@+9=Rv@VEHk7gyk(QgZYHNpJ5d)J@cfjL5Ob<&y8UVSeYhm#y3GW?`@?LkYnI!zYh zx%fNIPd6_sLQLpPM+HD7RuTw+WrP+0OGN;d5&r;KMyLU>#QNJc$L$_=WSK%(3Y?)kw1ndV*1b0c(-p5ZXa()_fOuI?(&hU7QQyr16uyQJ?(@|-$K~0uvt>GX4R!f=2x!(Hn?6t z<{*}X_f3+dWx$>B5BolT>(0rGWcO=eb9)->nkM{*?}|1$4EiCZ?GtOBj@f88074Hch6;J-jDb63YmE=)ndqSK_DIvz~0Uj0QUBl60o-(fV~xq0qm{E zr@i&~w70jh|FN*!C`gj+3Sr;!HYW^gbD6uGE3BdCwKWGVQt-J8z%7^{B!blVJl#Av zS^{VLvN&})D+gU-MM7U7=l|&a9Pk_7Q|hA|MKt=G@-;R=sGQ3TX@83A^3bsdhJxrP zQjLaJ%nsNX^Uz08j{wh6{w87GGK6IcrJO?oDV+$m`|CARv0B&*;N}=#@UBSNe>;F!%jDVHH+r7oLj*3}+|*o$;^d zaGpd)^r~VK4Hr1@0959G2Uq$RT^l&vFP3(kUek=fr;Cp>I@#I<&a2kn?n+%&2a*}) zZ6f4i$_#`+peB)UcA<)C~=;$7%X$@gb6(m9n8)idR``MJQGPQeV2T67s!K zN+_vRRR9EbQ`+buXr@rXk+m@5{YL@YevQ%#=Sz@d0Fh`8oP=?@$}Z~Ze?8~4;tEkL zKNLEm7>(B=zZSf1dqM=L%1PL>rC&iG30vQ!+Om1OMvs?QOBQbL{pz3ySBJj{(|;Y> zc=&d?voAn3TVkdbR3=z70AC{hX3-EKYyw^Cwgm>t<3Yk~ODzPsJ0kwtX`0>Be{V~k za7J<1W50~gK(REv@z9d~`>N>JY*d#PdED&!OknlaT|R<2W{!AHX5QDaOz`86 z5LK4L^7*{hJIk=SH4f_6I7WILuschl4iP)JgHYi#Zv8o?Bi_W5$}Zj6%I;ECTPQ>K zeBvPfQ+6p9&<2f*6^G)%_SA)BQn?GmgG2XCcJ?;Nc1LcvdEg=YlGMb^2#$L2g~|t; zcKq?z-xxtD`41fnO7fi#Z$9+K@e@N^3$qQtfZco=u#QgywgDKhac#hWZG0NAjZXvC z!QUiFzVy8yCgLuOO?-#9g1iwFq*?5(6ce~Y;S4ZALK{$?gf_s571G10%KiIvV)LI) zOo`_&SH|oP_BG7Sh^DfvPPd2@Io-U06E}?|vfCaKo0@;v%7WB*rP}$UrRta_G_s)B@-w(?s+z0Ynp8J5`BkG+*q+t64M-efYq2 z!+kpx|5d2ptjUmN6Z(#`EXy&xsPQL0P7xbd+#P6LOR}M{|=< z1FVjSv_VK6JE9?MfHVmv9`o46!^Aoa@%lzzf~<36HAnfTdiu)`dNL*-pZo;$ukTWSYgk2N z%c_J4^~W-Y>V7y$BJR`vB(f4O}MuYSC@<#jbb_|U@3cF3F&NsH8j8#x&>^c&L>pkPBnm$i_DMKW)}B5GkSYV0I?P z4*Wyih@smq(R1ljg^gy<_(5P+W}iTdfoRJt<$b3V5qOu6X9mbEr!pY7lZg}Sux5bT z?#f7(qM89}iw`pUl-o%OkELELN)>svFL+)rzwqE1vR?fjVot9M8=-e>1#3@2b(t zHrbqoc#4)%L~oJ#iP-Y&GU&S&Ja^Kt()z;nLXL$56G5@4Pip4ezGbA7Gg@-=w_OtJb=G8icWpn8j{2BbNGCIwk1A|fsS_3umnsHtb zQk8sl*j`y52}`{AuQP?M*H%irnciD?v!m#^$|X+ROGEHxTG5s*@_&4LAr$Kzt)y-e z%3r?qffdFou~Rvf2iM`&g4#E>CH(?Sp_Kl>v$W9QLgB?zM!9PHMh7?-;W-1qt@#A* z`6qDQ0N|3y1Hkq81g_^NZXY?<2iV- zL58PCHhzw@{z9a7@b_$kish=IMh1o!;)#GNUp2CM&Rp>qmaSUth^U0vl(IVUm|} zO2%X=eVihp`kbob>_?dGi4Lh8+Li~>g1;mZhqTMiMcR^x`u3+WH{Vds0wxIvy7Y4m zM*X?vNCJY+{ak}30YSqgeQr6Z#atXLDO74DM!gWSOq6stWGZ)H*9j6cpANW?cJS{? zCTqmhYtz+;&OGI>ZuSB$MKn)pjBBaSeoxkNgXU+3zaFpB_)W=xd}Dl%&5{xSd-7m2 zSETaWaL}loEDRJu{G)uIf_euj^ZPqqc|!Zw?#s8oHJ*vYk8tC6(oKe+WNrEuX^%(d3yvr%U@=HO7Dlf zj?)-G{fP`ORQjWrky(pH1L7<$T6VWWS7g|v%-3%$BhFbz^VoJTGlK7wu;Hh~&S9s( z6t{uV==tgA?LErxDU?vvI$cNs2_X5D0EtftApMj8Qa}PoKP7iMS7Uh` z&*1xW5?hHdgk*5ExcjYq55G|Gir9fc-%}w8&0v>uW;ze67;QBspXLNvN!ftz~ma5{B4$>Jsdw#t31d-?Yp`X%WW;~mXP z7fc|{(f$XA2~Oo|XOVS=rB?O~36@=5Lj6#b5h) z;#UCu2Qz7#^vFsKGuZE*ebGv;aN>IWEfwDew!K?HsSNhO zR0#Z*=j^o0YatK_{KP6l{xr}A$xutkM>il^%7BvwnMsNNJUU~ulWxx(+2$;A${PzY zr{?pkaAfEIypP>9#sunkM^9^Ym&iPY^FmW&KxincPo`ND~A*Yrg zJB8S6c0sAc;kCq9R}~4f!Y!vn*UGid?WvRkE>1Jc4snN+T@eb!0(6;*T(V#UqD-y2 zMrlIhL~NtEzs`(;1SAo=v3cxEza_dH6nTG#<#V^NjxJP=*o9;RJ$(P!!~CDblLPed zr7~*yK+b0m=K?((AQ)XI1R{OFEGeg`AhWrG?$SULI!kCwU)&kdVs|YVSy>5juS*W3 zruf{Q$S(qyuxM7D%goMjcKS4;SMn)V7ARUX3;GKVihV(QFv~g9ALu39;WHu0J>l?r zJK?9%+-W)~Ee^TfBezpz;%oLOa}4p;lim@!xpJKqq*%h~!1o3lNBxtLu!Wm^?IsS?RQS2HHt7$nkuWQPOQ1e4@dqx^tN||Z z|GdQi^Aac$n+hdnVzUa0ia_dm?>b=3Nn!Qrtv|P%37=ceU%);{Zt>GwS5|-kb6rP0 zBRVgau)z2A1R33p#8p6qDKbXxJcnoMR&@IMFUt?1RNNWCZ$TMB$Kr7@3(;q%%&3-T zDS$!xTLgUO>Fi2Knl3O-ohk`{-JI3|)6}x)eHL1O^l$=!O3V=gpNPIrzKh`UqBs)W zc7IMZh1e{2&i8i@qk?2{5R1z7Uuv$n+2-kzpYwBxFmF(Ox(VA_C0XML)wg@UE?FK6 z_2jSF%OtUV{`;9Q(p4$0$5%S}yw8<&n+kRVzF~3-7qgC&*;?urkpVMrtB7lV1K;Qw zIDkm!hyZctwL--|su7!*e{b;zoZB$ih}e5}rI?WyLKDj_DY{we5M)8d0Om(&_%nS* zEAb?+*;c$2fX%2XpjW>?Vbco0hEg5StJY7wYW;-GZ||eb@0G`X2i)Q&3Twk;;U^;v zOY{jzR@=WK;N*d9f@!4E)<}J?q zzc}N6D;LhffMAT^K7qM)pa0fdf5Tl6T~fegBLE5$48l{{#g>{>+^Yn6yswIkw+Z%^ zC_N0xr#nj+`j3;^tCt*MPdXQd&~~Yp;u+9%jySNY#2R;8^;8z(^y%rBQ z%?6Blni`Mp$@ZklJ>Zk&D7NM8pc7AtUg>IjLU>*@I}9be*vPe;5IWMjO2+C6q$kFN z=7Us2cmC#1BT=Tw@np}(YavpIYI6uB0IXx6G+j0j|F0`2B)(CYD}Z#vS&xhXnZcJd zWCYIE45FM@Z{Tg57zqP<^4zT@rl)1KH1-Lc*JpuU#+J;6~I1HrN9f2jWbL;RMQD&Jtqk*F~^1V6b_o_d$CUJM+Mzc=C_-=iVhI}d*2fT2P@a-DOMCnoXr34 z7%Mi$l)NF}-B0V9t8%#FDBhdZM?-tPeCxUk9B`V~qLgvgBg{Vb{;{ITaXXl>gvDmviYWf8|B5++PZ6@jI1q!)4s)Q3H7 zA^Vn2qZ)J$oO1X}T{?YGE8j|#HAqKY#xDb9(8;f08aP^w&F}6r8cwi@g$EvjgDLFz+WxJAfVZ>y%=n@N}vG+Gc=c+Dz zYd=g6Raxhs*f!tV1`%2x?VrJ{7FDf@_5VQ$sbfT<2N89su&&_imKU}`mNDxXM3sq3 zGE|lnpZJ0N<^%q1<(n<^{=O);iUzOvPdI+I0R>moD2}+WyloG*BIhTugsAf=tY927 z={z#(=;%*p4AcrFevP@1Am!xSMp)0H3P?M;u;x%X*l%~XOu|Z@Ox)2wFVu!4cVfZP z@{5s$Fje8BH4WkPHQHt2Q0pMWrlV((cS0Ny?ETb0Tk$IDgcgEu^p+|#H9AYl+m&S| zd+9h4(OU)13%%kLz@J^Yaf-0eAdb!f;oEd+3vQ7vjw%q+#6G&p5|PPF-XAUtEzUNX zOcAMAEsQW7Qzbkv`>IR7vxuxL%2++>ex+&XvFAUf02cV+ z1iGAQm-?H8J!@@d#@^xdvb=zo@lu7e@o~??$WI~}bQy-Et&^3FKc3C6dU^ia;n>Ax zt%l}KOyappH&C#2`B^BP&?m0KiS8JR7SWDA`KI$~_N;w-VoaB#14lr&t@_WVH$Q>H z?&U5gj$Y49ON-7(sl@f$-%A%Ax@!7^U63W8mCAz$FE^K0*X!QBsNeo`pm!wV%OdjD z#U;3yubJ*zBgt2;A&`*Rn^$ZcBm^GXF%FZRNd5PNev%5bxP2H=c3y4TWX85`{Pwy^ z?F|e@oNNY$=syT-Kahjl2RTpG?S$wPMtN;nn z8#=i;*F8GAHPy46zO&*oO#RuePMDi>aBzBi+Pixlyf(+3Jg6A!Ur2bmKJ{X&M4FnE zA6lq!t$TFi_DR+E`ZJ--zyZR)4^|IRk9cBA_9@UXDG$kQj$kZF77(Xott`FQjP|0Zy+D-*%}ngt!dD zGdXB`OMH7QcR7l4e^~NP55mCFbj_e2wtcPpcL8ojQ(+G~6P4C-I;G`iJSB+OOrEoG z%Xgb+5|1i2C7`P^f8p9(#-T;STO*4g25a}<3-3&2y&d>EhOW{r9?Tj+IMx3l>>8u< zh}vzNCT(L|jnUX{Y&33cyD_IR8{4++G*)9ZwrwYO^4)dU{dezL&D%d`4)?S7e$LFC zS?CeST0R9I)9YZCTlD-<7w7(W3fgvm>v9V&>D{in2QiZm_J_c-e>>;4CXkBP7n=GX zC}=owW1>igrppFDhiMs0e@s{7Q8r)$kHO|ikN&-e!@H{w3EO{d4#~_n_ydjH!JHMt zU-7y((Kx&plbOR1yl+Q7J+I0(>sOu19mbmF$Ff>}0|@@at#yhyC*ayr&*c^>FH3Ma zC2A1(d4aNFCmzl;KON2NvJ~c^Ij`F=Ju;oc#FTbJ>GQ?EgAq& zhFet0#CBK?+g(@>{WaomK!J_DP+t&k%{gtfp$0Ka|hefC=TJD3O7$ zKBW&~SdvuSnS;#{XDVG=>r8_;r;F>OKgNpT=%!FSSluypG$TZjG2y(Oy21%Ig~@R8b?p9Rl%oSS18ILjprO_()VQ__)`0 zW7IQWN0&I?7LItyy_X^Ldlb@`v?F7kseu#X6gZyx7OOBq{M+N>q~~j?*(l11S>+Pp z_ulX2qw|{es}3rE&|vh=w=mn?Jkks63^BWsH@n@k;V+&7V-hrim?^1^HcxqJxe~ReiMhHXe=hr#!3s*SlIF$^ZTX6d>NAPzZbi0(gCgg5gnM2id#%Z`$Dg^* zXWzN+vm+~-agYtom_r0tkS2EQS$|g&)HYe#^-@pX@#LOUvTDi2aB< zv_e#B)D+GN_KNI*i)p$|Uw;0+jWw|_0R-*`D7YshFprwN8dbjF< zZpR#*oaYl1wLytqT|M9suXKc|>HnQ6u3U{sl&K7+Grv}a=pgwd7pd&%D~vp< z<1kEB6RX^9?2v;%QhNc5CY8)LV^7og$tdZP*lMb>xXI>xZV9umk0G(Meu)Z0yD!zT z*486a3e=96smFQ1v@w2?4`bk>G`->u<7YmR*) z4+GGi$IbB?K3a2+;XAe?+nf+igdK_fsQg!MYvV(R7@8dAN)AVMV;O<#Kz>ZlZM3%w zI5ZKjP6;$0w>+h{!Jhvj_ViRr*KTkjMUSB5izSxy0M>M$%vyE#Flmk&lz1?h8HKqS zxeS;bUQ?TyHtnr^hcc4>wo!16-57)4pzabz#5CA7v=oVeP7=LZQ&bNo7&C81bYrQp z;g2x!bJ?r%ehl5KYGakl2^4RY(0zYpn=(Oy8%g2@i4#L6>>{>%>(H9H*|6P_%k3Sj z2(3rH2N0PeQJ^c)p|dxA&rRJwfbM0r=36^Ry#7wJ=AYON%NdAyQsa{K@Rb)1gWk?D zHH^Z&b^H&k>bn0YZ6q)9+{Q1tiEIA5n_#|v35f=f zCI&Gu=`x#2EtD{#&0tv52+^Cusk448TYyu2hQ(&dec~}4uo4Xjw$GHu#jeR@v@lf4 zWHd0edf9-9%iVn=PP4IYdy`n49%fFuNs*{-s6YBcbiaUU~iHBG2%-Q`@4wB z8MuR=}FHQ{a{v{b0Le^`o_em8ah z^}wa5Cif-gK_N#7%U!EtKzoMoYrGS1@9mJT%)sjy*P^WISdGe z->fmd<$Ll6<)6N+MeEBp%B27prutP>Wy+;sm{O^LVX8mlml)CuhN-?47^We4o)lI# zvZ8hJRnjJc~#fdfr9z2*fp* z983)M_U6W<-lRf@BXkUkT6&FGFwqQF;DzNNkw^*fH8l#`37-Q&#E3M$I1rvZrxZ3UaG;5ks2(hG>*NJK;3-?sD$cn2=0Ep{cjR{sc-k5c~qP`mM0 zJRjZUU+nCLG&udX`Ej05Cgy_Dsq6Ltwh3Fqj%8#N(>Sv7v+f7NUh@je}0oL@c6b#D05Rf-+gKtcJTp>F&DZ1+wOn8U#yvVhkno2Mm@y> zzx8<)%wo;ivf>1_RP70qtc{kxOtRvq3twV)P>!c8p6Bu`7IM=*Cha%!zQ`mpHC;6v zA$K!<%BfKi_q|s$(5*3rv7Lq4gcI3urRICPujySvNr2F!B7;3xTMPq=f>x15b4)cT z3Z_yrK}B?+C>##&%<_~m1lQJQ0ji0|L^^hN-}Ze7dR|ae#WZ<0LP}kj!)8`@^jfp4 zYGCY(b9D+QOUCJ6yoI>wsUIBO@L}yKAwLWUAys*c!;8sd#rL7oA^ws7U7StlB%hG% z!KtXoemx*nF3WxQRm0JZbgFpDQqsb)xqM%iYk8385i}!uz}T~q|NK&N0eWAq9DH|=#nU6!?-fPe(p&R1YF=g> zEn+7?_C}ZMDY(Q8XQfR=26wR590#0TnG$ez^XtIbRR?F+44hqy1yFK}%($GiDME-? z1-~JG_5We@*K7%|tO^S)$%b4y#6wXc$WjerR2J#%{Z~v4c1`)MYt(OD zi&MElR|b2g><{)#8SEK_vdH}?7jxl|2g`RHbL?x*xr_`NNk-zw*U585mA1zEf-0{d zn9pc2<0f3^`$=s ze~EXzx`xo9KYRPxJFE-cH%N*kUE8&H{Fz^Xbi_uXc z??{9rF>d{%f!9Dj)YG-I7Y9nc@}{DCkvS;!5yh-EHs9+&sV}YvrM|cxl=`CN;C%Z| z#NzlI)qwX_6^!*L7ug(b;RC@qQ7@2+eXTz)+~mJ0%gduPUMj2;qsh`C{OcuPCL{mj zyIgEb0)TKd0N331ZOt3OHTN$8(HQ=Q#zk<=(dlw=iWn$0PYg0i;s%&S<~kFWsGC8c zOc*Jue{BXYLRkhcnka*26iEOtnpg%e5}BhIqC?0&(YVYl=a`4$EDYI& zDe@+%R~8pzDia(6U7+}3@(F1!=mG`RQT1V{Ko=<347xy=B6O`v^T^3}w-fC1q=N+6 zl)GB0qK*RSV>22qu>|rwBTc1BCYr%ekJ$@Sav$}UjyWEs}DaN%zDygo(PI`2C4?|W+ z53|qQo|V`if%fVmvCGc+nQX0_g-?3Dn`P<6{0EUMKxf~~Ct=2wiWy^g%zHT5(JmC| zBy8smq%<_T@!S1QQ56@9Ov^{$}EpaIHwk(H57)B-5ufcgEBPW%F>>S)>0=g(UI!-b_ib5M2Vr=5lBX#N zyiyQ5Mi0-csP^;MAQ?Io)2xE#5K&V zxx5a@Y%R@agR<%N$=8n#|1{vGDc z&0B(s=VM2dc)agsDfY+=e~NJM$lb)puh_dI!6%IT@pFmKds$KP?z;w~3F%Y_CkQmg z0uX44Q$y`OoUBCTI{=8ZFisF@q&woPBHyH^hf|w{db@%2!$@6G6AOh$BI?VaEk$-C zHx5&=m|m3m^iNj8pX-GArJ9=s?X=2UXG+!XAu(JLi3B@?NGBcAYwX6$c|E;cgtH_& z5@v88pQC9Gju^b`GURT(i^U$9OeBvQq`SlgxN=+ZLoLt%XK-Hd&bw&KA8rX6e-W>d zSVP5vtddztRR$FcvdVi&kX16L{Stq5fvl2gX+1K(L_}wN@+d3L9=^%iHR~W8kP*c2 z(~>glaclhFcOQaviMnuGLUze(Kj|E$ORBQi0~6L|vEr0@cJXUwL7t+OKhGjXD=Wzb z%@X)p0L2kQ4y_Rz+|2rIE$S-Lcgapu^+>%G+IA96Qctu5pU$r=BBcuS2ZN(m(-~{B zXH!;tle<|OzqAfXA3pfk%F}o4haJ^UmcTz^6-cZ!VSD+c8yg^mKwR+fu6;lmQQ%38 zuDslJQ^-O5HjKxt9B7WoHJwCiIO*S=z$uX51C(WKS5(c@1W#Xz!Tc2}wIaRbn@kX4 zLVUPr^rc&G3C{nW?&HrSbZ-#q|tB$Qv$(*=5zhkMfl=EVkDlFCnLGE=~~PNt})u z&nH5lLDu}PtEe6d1G1)%KggPzh0u(Ew>L_Oc2!~DE-4Xps|`i z=3E|}JT#N$X}9HeHCX4PrqZq}UlJp|+b7a>UCFd%Db~tt`m!H=uthlmu)ChjbS{mi zDUr^})jppmpWy931&22{>~?Q;s51OIr&ZsZdC9`IXY1fQ_CfJ&lQGNf*xCcQ;Ua@d@sOO1^?S7LE7FwVi*(zP5sPX&tmnw5@OX zm^Nsa)7tplv^;H)V|LwE*%?w&ynai%maq+|#- z44hAC8C1EoPHdC-Rzfo3WnwZJI5?VhF@MwD(3pG#g(bA@S)I~+h$nxuE#1eJr)83= zIr?Ka8=rYLisaCwDX?HBr}`Gs?Mb?MC}!;+9WBgJ&H^Eo=I_7gIHwz4k!}oV1WlFs zYkzD2|2i<*OW!<19T@GM>R_~&f*zu>4~+KGHxE&nKXs@dj&?uXH`|>Eq9HM2~;eOBLJ} z@XH>TAq#jvR0YxK&M{_c0ulHH-3?24F8>T@|4VqNZNA%*bj(*!0s6_30y&h}-8d!3(|9;~#7Vr!}lH-lhK{xXJ5MAM5@FBjv;LDX>2|(OHBYZzQtr7>(m(x366s zEbG`$7|Po{yVNht?)N@<=qKRWD}9^nnOYi(&sCLZAXhtyBK+9RE#s=m&?f|8ox7*v z8IL6;=Q?3y%euT%Y-xqA$zwEqRw*a)SC~bA)lZt_1~{iG>uCoG`qN|bJiG2HNYF=% zAVD83t|Zr3b5}SL?{nuo?4?AAFF(HbJ$)%2+jVEBLW74aHJj28XM;>`HB}A}%u~i} z^qVafR31rV$%=9mL8j)C=GA5PQiHFr-=u=&_dimgjxpc_S_9W$Asq`Du6{O9uEhNa z&D;RGezACX@gID`)Os}}c=_mUwl&LNOQRGs8tx;>;^`ki#b~MjVz<=OI>x@#!lieI zct1tzS)x*T67?c2bu2*-WRj7N(<<6)+gn_TG8EM|e!wyuE8hkb84Ka!l&WAG^m9$eX!b zN#Y>)0L^YwBKGeFXzYa)`dSb2W7Qi!*1z$i2FQ<t2wN^^>u6XH85Lx2WCs?Yan|-+k)BBJ1|><_zPxB@7}Vdv>bVf@IXIa zrUHCh@yHm=Bm|<~&j1S=mwwDJ$eP3tJqAZK5ESutC99KuaiT z`$85H3ZUfBKW@7kti8Ntkl>@^TH0s=!;v|An1_0{aUrMjOW7{`z&V|>?9U%rufI}x z`m41&wzfJ4Y-tE4raViVJ4m=TG&w`pvqg5T&yg_nI(<)JI4%*^P>@OkLZHlzFI3zZHfG zY850iW*i8qtc+K`{CA)LSrN;UgJ~VW9uuSK*OXA-v$H>Ttqvt%*g2{!8=RnCfNEXe`Z|W zwi@oaX))Tq(zwmhGqsLF@y|2Nf1p>*SSmaF&V67qb>GtD@-<04Ul{F~NrMRU2eGX$ z?e2gke?&_8WP)1SL+AATE2Mqeb1QIBMZL0HnB#H>h1XHBUgDXyYf6G+*7wUIP)|* zJb`zIhRn1kHm+X*Er+ZG9m8ycTE@hM^GB1ML8XY>8LME#D~F*&JMg_01HEGOBViBm%`6S%Q41kXG~&fi2Qb8XMRq}Y=3 z3LP~_rh$%u5!GLW6rPB1&uL#`XT|QBH%GR?-a<5IP+N0Kp7sbFX(^5T=k{HK9vd{;2R0_Qgse6QDqu!SP7z^Z)_E~{3ae${g&5p|`T%(G8wlQUgSaqP`(v!&%H ze4V((;Y8)6Jl5+CK+4Pr1+Xt1vao^fSM){W({7+o`>Q}{`T7pwnjU`l0WYsxU_{N@ z;>@u3lKp^Ndt(*GEFW#Tx4Nx-1lk>EmdfHn%6IKRmB0mySEa~uPg@e7NkXyXc$Po= z35>q>ch}Xk?ZXTK`t#T z&gN~??uqV)KvlryJP*zK%g6y2q=#0t{RcT13;Q<8=a`=~QkHVZ~lQb={(A3z>e8%mL8D zzPy(mm*R|v0VWuO3#m!laC7VNjyc?F+RtoHt!eR}uzV0B^~j)^o~q+tp@rQ`Z4{qB zzh;DNdKMB?+1~Nz>UXoYlGZ9K8;FGSuQgQ2G6t*E1>e9)Pr_20L|dxWB$3jdBqiq7 zB5;#SKp8Pfczuv&9^CkdZ-P=FVJytp`rPcDfp zWBSVc#G`www{UR95gw|y39+p-WH@y0aO>_gZNb^DH|)DtxK~#3J____ovHPtkYvl*uuz?QiLrI?BO`aFNHtUE{#T%XDNDlBdRgx^h!$QAh)Rw zeLf~C&2GbUm6t*sd=w4;T`j5$SegA0O%uj~Y%4fCbmHGCT>QLlG1P?3GkEXp;0Z{~ z^|OY-e;fPA|GAD^=(Hd~vHYbe+t>n7m}RB{^qw7?GX@5go{yR{W}ot8IE(M-hPZH6 zDcdo|zadvW5Y|Fh{{FyqOUU82_Lro9j?;0tNJI9R^P2qL^>T~100if7(O20{5}XIt zjP*4U)z_{B+qh2c@b325>8xsrA%KGF+-^v2DM!gRL}7BASKzj_VWy+T?!fcdpXbAO zcY$s3k$6_zVl%rjznMv{qd&L&)X; zM06^EA3eGw8POBPNQgj%5|x~1Um=;Gq`9I*cqOoh)0#M>M_o(BD85f>B%AlN?>_Qv zQjQQ>koH}o-lhTPAF!o&Z!PJ9EkRa-ExiLBCN+969~-nnu{EMg-(W{4iZw0WYAz! zD2&9sI20#f|D7&CNQ1aKTh6P9+tWUV8V~NNOuMi!>BSo>&`4*rKMtEG6KfFXNk5So z_4^DU#05{8o;CGJ@I^N5es)`vFFtU;f(cUU5BMi6up{Lb=$v}@9-x538`~FqaeiO0 z!3cs!hOOJQzAv6xn!Yequi9wDI1vm9{X}qBSmfxjgADiZ3?mGoxDKg$wH0~C4}WiB zO~O&mOalc{-ZWcKV7JOy`8c|*c#BW!|HS97ALGQi0m3zC3|x!zw^hG;15*YF zCXY8TdA)&2yGgyz=|;1~(kRX{fKGK*`#aE7Z9JS@RtjE_Tbk$ikII6YQc>*^S65vP zlYOtTTJVv2c~sg$=gPG!zUD)qya~>?QH^G=+_UhXPCQN3+cv%7Bu^@oPISK0-=fhT zbUMXOY`P}@F_UM6o^acVw-X5!$OSVqQm%j0;yo8QJv(08{A{z8g-Jah3j5-_r43x+ zp7_~tJ_P5$i*erwk$poypmN^}){eTI_geFD5}U(?aYiGcA_R~GH)M9^J9^<;2Z=Qb z;;QdRMH}!Y+WJoaRtklgt!{G-@)*`c=;pX_K3@3@%~NR1THZ*6x|82fm34=EDhMPU z#jL)YI;sKbY+fu;{eE_a{}VwW6VPY$MW`AAZu;NxWsn#d71Xn~*0VW&$?Fdd949VT zT^t$d9QS-Pt_qlz0d1-DMfor9wt7FF4dKS(=@-5XZO*}qu}i=_k2!97OEQZK^rEnj z!_xQsqD~@!ch#unY#DuSYvW7TH>16d^fI}-9bPE1X6f{(qe$t`a?T)QM+Ek1-Jfu7 zHtUXNEauY^en69aVTDgkJch6#8KFjFmZdL9w5=8y*-oh~-OWmwe6W}&kBbpwyLbFH z$QqjRGuGU4x-LG={*x|wklvyzrN?kEt zI`aAa$xARa0n?v+Y|LGiT`mB#koS6d^lgG(9m+9z3x08#yN;kmpJ3bD&!>t(Dw#|ye-~^f=wf3#S!bJ}I zbQ3~3iO^~TjJg;Oig;t_aYBulN(k#Zl#gv%DNG{iZZ1?@3Q}4@dIOl!*Bg^ zE*a^!@T-|>TQ+0&q7xc2T7@JnPfC4M9!!1 zy~|x!9J$FrxrPgUvcK9?h6WnscZ8=OI*L=aqq~ zf)e$EU$VeLJ7km}lY?2fAI!_YjLbky1dx=jHtH5t*73wC$?}6z4>1(an(}LMBR%++ zByd%gRf=s9|3zAAK zD|&2EDaeFnr63b(s>zhfm@d17^~pt+d5sYI9+EEnbTCAmAg|jkym!;QXw#5oo%j?h z;cIy0!&iAY=y~WZc-U9LQMbKUtpP|Alv1jHo@ZSOt6~5@vn&(rkBhFHs4qbZv=rSd9JhJcCRKB6`A5wCyeOb ze2JxejGbFiDio+pG?BCxY_Pe#yr{6TvwHmy;DTZd*!(iX__36^N%OA498f+qH~2eN zZ9B0?apK(+^qps0K0HYKJ0~$n{-VO_OUy)X{!2L5hY2|fB#@xD3xmG5*O%jpg>z=O z7S-hc_Bn<7cRCn;8Q(=alCR^)Im>$rxu(ZM>dG8P%U#Ypp2!l}RD9l1_fmT=(bW<- ze?y_{USaG`u@+i10bowyoJaUJ8COq6&N0wYZ0-w}5s%QjHRz^NxE5!p5`%+4ivkBB z@-_$&a1dh1;2=WY1`+bs7c}n~TJ=v~VvfstMM*?74Xq>$|28<0C#)>F#-s+Fcmq|9(jr zgN6q=Hqajmo*~#Dw1FW|s4~ZbhvT{sPC7hSd9oY`YuN!3F%5q0@~=G&jdqxVKp-!3 z%b^8K0~()#i}OYYwwBamSc+h+R>84TC8KWX%cv;)mCZDdJR(UWK0RgY#&mj4Lu%9d zw090X7!e}*u#8LIEIsQ8x$+*ZAIuzn+lldYG!=5xHBmk!?M#a5Dq3(_fr4O00t&){ zI4B4Ul%OE6fr3!`ww^$36{rYiB>YiIySTr+zH2LW^vh-L5Fv~$L$550p3Sm)?(m9f zgqL%;jZ8>|uh{v?Mkv%1EatzbqDRafe96MUh|2lo#CDe&mg&>wW;>E4ax|Hpm&toP zFm)ncy1*OMfY&B*vL4_k8GXipG&HhQFXkCgCzc z#xRLj6-s@A>JzmwaH-!fSF_()W!I8Q0HWaP4a&T4DByiV0V0S3w>K2Hy`kW0t?KLe zNs;fsHP7<;-q(Ey{exhmtLwF7&vyhaC!3cT^U4tC{9iCn`Jb=( z0iO5khn>s#S}{UG!^p;ekfQ{j{YY$EPCiv1TMpJ=8td-vFY^?+PaJc<#A{#LUzzl& z21J%}HT|ixjG+5uO<#!D2%_x+JILL?G}Hs}Z50KQ{)~YATB8HWWQ|KL(5czWyBwz; zE#c4{q!Lw-N@iz3Dw%w<(+7E5MG5NS=`_BH$IB=2lYxZU8lwa z1#-~vn>5?!EZza`)O5@l`hUfb+)P{61Me&;J!Ci=9NO~E@V8s@55G3AOtCh%n0jFg z_$oL}F}CsvZ*=^D^2^xh&UdR5?f(TUB^5;L_;aEH{V_f2`IyWxda<`BL`EdKE%Jf2 z_ft3>XY&C-AP_-xbgX{Br*Q!O?k*TTEA*;d{gm8?ic^%VFP)E#2GuB50i4-9kb|hm zz?_WA2=sD_Azi9gT1cgXDk_7Vaw1`94f>tYG=Lw^Ze8 z$(7^Pv0-D~661^%cRsPh3%Q&eYYw2Sx;&}4@H?AxCFqD?IsuNw1lx3!>F$X&P_(kB z0gnsRi#TsjpnfkUn!^yCtVBUzx5qek&K<%OmxUOlAzl&MZ zT*=H?n?{Zut#5~zHTi1sWmCVY-0A0#GOOyerHssw8@UK=X@{&FDrb^;vexaCdUGvR ze;ms{^&ThVg^vy=7c=y8l7$EChndAT40kZT344ht9XKNH_1y7?b|Cbk-k`VjrefP~ z(BlM=_ZN7B-pCvD(%OphPK*^utohMPPG`CJ1BG(5eoTesUtV0QT1WpS5&INgzZ|nNRsZ8y&{{iT*-hLtq@K23zq`Ylhsm0g>!(sWIY31 z#WQ-)gS>!oe)r}%g!^WA=V z-^}&!sMaaBP3(DyRCZreXY=vn8~D?EhRsLAj++l+TVyjFJetDm58LzwfXbRM)^)IT zJ={t-FU#QL#TE`8CU?pJquT7lt+hq*z@mlv9NpOR`3^$Ab(OX4@@$H#Z%~o^xH>_Y z6P{l1laJ?qt=^Oorw&N6_rzfEwZD;U`y0v9gCy(mMzS7n9DCnYtX?$h-Mzht%929& zKSBlkUrHr9J5+bsBU>lL%45E!u@rqhhxLT)yJ~PIl5kr*{D}Hd$E2i5pV^=(`POG> zh6ik%RSs;N6`VKO5s-(>)4|5g+rh?XG`mklxSjV|DqvosH6j1WzoW3u)VQWy0D|_n zR1UIO=U7^OY^Byo{2S+7z7Gyz5OkTvlv?i3R>P^*J4oq;dw9s6zYAd_>d0YSOBeO` zJ^#Y}PwK)?m0)D2c%C~V{=>w|PDnk!Jd04CsWLv!#$bi&+Q)%t#QEIcn8{jy{t<;d zXF*v1DusL|?qayzUgOamY2zFDvhuC6ic*B{Ewsk#g z+X#qPJy0V!QCkUEy2wmC#g;S4Tqo$qy;yt*7Hk()R3eFgdJcvlS=`vG45D;7)phih3II9Bh z_}e;B;qg847B!O3^ZXsgLyC<{L=tUF(`!!=d;vhv*mA?)|5wwge~iW!Pa&#+E=0}v zOJSnXh0%yn(i=?;qs{3JGlAP%Re!dL%iq71j*APN zmQeDKotlhSU*HWbxP0~U+eN>_KPsU}4Ma|XFGQ*%hSQD!Ia#?TDhzdrn7?P!|6E=Q zY96=ol4V25>15lTRYvX(R+enp$!jVDa;wJwHYQ}gT z(GZE(2T8Lg9{}Q0X^U+vfuA@4rwD77EcjNLTUYg=kWF_Xprf+v?#>YOxpCk9iD;$$+tp40cb0%O>h&MK^x1ogLg2GrH0;Zo;zuE^CorO{7XEo zU=N&Qf9zf+ljY`eIbKdbJYU{?X$Bom_s!O$?LKAvV@S{zLUquJfKkaa z{5RXW4$oGLi~5$sk#FCzR&@Q<1Q6TmJ4@H3KKYxopc}132k_rJ9%l+Mwvs;6pYO+X z02Bv{eP5@q)%zNKp`7W!R%jS&1paF`Mws$2no~|(5du)5jltd8NaN@tF+q?n|3}YQxE`ZhwFx)%6#vdBO)Mk=7mVha zm2>}DC=7YgAc(Of;;b#DTg)XB+ZAUGJs3xyhP8(wkYt9RShf3V)&No;>n2mJEN>3j zA&io)_^0#ZA3(Z`(JlC1PhuaRUKjpHHhU#G4WhMUmIDe2TD)i$V`ycBX`*Y-V!(aA z3moac0)NCy5&2TR_Pq6O4@y{lmcP6HenxrRVQ7`cm!4HCFmpKV2vR%|;rT^X#o^^< zc@{d{W)*m(I*xF_NKz5wM&9<=lJZT-TLc7VMO3x7Wjt^exLU* zI$zI^Hj8eKRoUxU`6e)(gOuM5G|oJm9ttqVP>!V^ApT%WD$vYu+9 z(oSmJ!Oc2YPZJ-d8F1isk$B+8`$vQZ`5`h2cL!qmE(c;nR(0(LI?tpmE&?gTQx_<` zMtBFi+ZR(~9WG-rgdwaLw4~=Jn~Mz<*6BR=i0b6DhAFwO<6T9PlUm~P&!o$VPoZQI zbFwS;1Otut*$VCJIci|; zXQFZf8SREKOiU^8u4&qEi~#!{XP$d1=}CRkrhLhP~Vbp^I?on z37^vEH`c;)%;z`GP%fmnCFJts)7=~ncr_&BMLmr}KNyK2eNn@a3j#uDwBj@sxA&|= zb4^009HS3MN!vdDPNqf3CHQR_?a2T?j8Py(fvF*pj5`uXOXfgV7O(Bhs!pPjYAiWi z-D_qM{kn4((%u5xez&$6-j;2XINYpk`6xqtbC25W@88kt^EV|!=RTqwgN?kE#~pax z=|2>5RihhAUx^zIJp>8@FUV#?zr8kY^d7F3vnQM)-#(nI`@(jgY}(L`RS=$hYX|I~ z&nPjvZ@aJOR&@a9*P>R3{z_!b>J5gXHo?}pQ$}bng3Qp=*M5wDtHU9*SYB3UYFIY* zQ|LO~H=i>g_b~XVhG;!dVm0n^DH_fsWKY&|l9#$D7@PbN)q$VG>A72Ai9uSA=m4+; z99RMiEI|jBP;2zREw&9!7hcEUGwT8i_<;pJg9VVR*JB8lI>k5}{pHMUVKaKxF!)S6 zY28tr!2-wiXA-5yYdI>5T@>ea{&GLfVKb(uG57{^@I9uvHSS1t!2;2i>oI-*x+utk z!9$Q?3_h`I<)$7z+vL)>duRW_-0MISdD^@Ks6sm4eVpG!OUMdEMoaiL2aWNb-3CGG3_q)91`Fu_4(c8M?r!A> zOZz?F^b>-x{wLv1-sQ>G!`ANn;JnBdH<0QIE!D`J!ku+R8Y7DanJzA963?Bn)UYop zlb;nveCw%P8&gEcu>Vr*FpG9rUsy628!CMFC%HgtUbg-3N@{EJ@1VVYg3#WqASR@K zk*iHcWdAE+w8)@SYj&L)H_jwUjz2SBA{W_W%-)HqoqHlTU8nXrnPF8uCfy5|VFJu9 zpDGt>3q#BW4xJ3PR%CJ=rm7X)IG_pkZDYyeM`It)Li`My`20f+R+q;kRXAleV#-L{PyYkGwFh_NBd+-0%e zf>CT41Uk#*ncm^{=x zgj~^ix1uICNJMKsY8ATWE$qDCq=zO@lYyN4Ap@ED5NyYns=b_9(DGVXO4cVLzp#wC z7w=djc?<*N?r5hs6WGrx_h}8tNVvNeo3>}-_%ym($RE|SMpoijbP~+{8IdpvY3;<) ztfR5{pJL8+P-x9M%&)Gp*Y{VY3QF4_X#YI^*+fHzb!jXP1HYN=r?OqkU~_=(`83zx zA@=*Du_&g0L^2*CWpOR5IApd{@)O?1iBqt%vyp3kJ>j3Rj}s!SYE%0+fLguPWb58q zH3NcQi(mp|M9V=~hXgX*AqvVn9BfxEk!KV{J!n_cuE(iULqW|S31&tD`qN?aLTXA) z=A&0Q2Ii~Gw~_n&Zpf}QRrD4KA_3-iDpbD(A&TK55|io*bwWKZCI=9gjkMxf%dLV| zzkQxtDHd74a3(iQkM|nD0!(rDiyu{#o2t}IqhK3b=Dv6aUN#@8IJKRqYi*hLK*4|Z z89A0;x=Uuge^#q#_DsWWTx@ zhH8(Sus~9j~fIjtaKbhrx@N3Uya{8J=>Ld3PX(g+nd;58h8qk_aKm`(Jw^ zqu4$^TyBP+3oI>LX@Zw3)FKs4ap0q8Xpzl6{$t@q8FCb(LS~c`4EWXH_JftUf;?V@ zR+hh8ZaqeR^{s2;NDoYZ~PJ{bmGlyPLeuG-G*@muA)yokmoF=hZ>@6z)Jht$f?rnU@q z)dUNNo#We;)kpx|9sjuKoo-JIMw$dvpMg4VJR5J$uF_PgbY1;8MChj(Rxg#ZmK!sA zt{nl4Cd;KwTp?s2xsEmK6@SgJW@pehRNq1Ggewh8D`2h(XWc*$&*5_y598@zZT*x zEQ4Z%(sEp3G zhT^QSb`!D_1&`+FG0il`!f9_Z3qWFvWE#2T8iCWUhAbiFbwVeH(1Gw$$Q6F)${aH$$R9 zaIpNh0_XiuvtMFE@tUj9y$_B-;pF&?vQ(TqByqINfvbu_bs>a+9^jj#m(-saXq0!c z*?)|e$~$2c{vjuo%AvtV}NOmW>js|cUbF>e@IfSKs;&Hz|`7L z+$WrNwmL15qM_=ugnT@eDCtC)jylhYxc)556y+WfI?_rf>z-~q3Y^VL08~u zZ8o+=h*;+9G)x_$NwhJrCXY5FfbH}ZH)I^H`&PX)x3gf$pGo=wnl0brS3L3D`lZaO zlh_|#(kI3I?re)kz5^@9s-H;7`F^@#9M`~q0i!@%zq*ef*W#Dnk_r(g1%{T!Wndi z3O`Y0Ne}ge8u?s}vME4~JWWp2_zvK~fC!5gr~^`SwbFZPrP)KZlFX^~sFk8m)adV6 zrl?Hcf0u=+&`nr|pee2)nEHOKExMpg!r@?vxWMRmcYcG;jT{wj&0uJ5*R}P@as{y@ z69A)fU;xoSu3L#$CE&UE(Q~noJHPiFeMpC<+0xP)qZhJId8}?}^>8pQ7eOwW`vZxp zAQ(12Gazk09P#i28tP^(-d>V!IEB%K-_Zr!e;O3nBGI~~e$F=0{HjSE+wE^j&c57Q z2)#%HsLpAT$y{iMHwSPK$7nZ$DI2>bzJqe%)Xuo8VNt44aL7>b?aJEwS$~c~2{a58ZYx`imFZ}>ytO|@s0haod0O{3v9gO#*?Rz5W0;CMBA&8OD+hOSn ze~6uG+)@aDCu5Gy!ge^&&^Ck{(jK?DPiqdfN!`W5sZ-}ktP@`o2pF={)^^w5BCY~L zkh~josM-zsmQYx{s=-`u*IOLIy~oZPln}5KDL6q#d`6#gN4r2eQvp<*<*5&_Q*V19 z15$55H!ajdIdl$kY{;Is(VG=Gi>WHxf6>$q;=JupASeM&0$?`nKt$Q#1PlLqDgJsq zz)%mw^)rjoeRZx-M9hOphL!gZth`Jo;d>0Nwi;_oISLD}%UK7{7+sR2lF5C^)H>y- zAWkA}=Y>3#kZ1SnqQ={VMW7Hca?>X zLr`(2$9GZ}%_Q?>Fpp5W+-^Lu1D^t@v=n#V_!4c}c7??Zz%i!rvoD=ZF;n4ihZ|j^ zp}cw3WL{)YL|apPe)~l0MD-AJe-?B(Zyj9LrCOICRKmhZUb2vOIXeN_Csh4jOijpt zBpDw}Q~3U-ug%n>K{0Pk)e|2}z|{Mkmeq%S+&nBEq@jexX_EPT+I9d#CgjI}e+?{C zm48}lE>G(za;PLA6>(}^amf}NZ08sQ$ph&uUv3uE{Zauvk}uLg`HBOSf2*T9!}6(p z`7ANt;M}hD#EEAx|;CB)cNW{nuzx1njlxuSc<3AzN z&XtC zYw9DJC-Bq+S`&>Ce}O~Ba>{HH@|hBfM+$s}hR?3bZW!J5_zquaX8#3|pDL6H<9Jgx z)HcFu=+LUNAIgG;jUB<1%|a74f9}(Bwja8&{`f2d9-)K25fqmPLJ<@LF)=xpv04x*f5lf{PvbZcf9F$FeM+URlQ?P9oVZFX*Y2{~h3e?- zJ{%_$61NRhao zWlzq4lXz!N-MBM|Je7%@+5J_}3uq94@)*dF?AZPsaMu~%rIhr-{`(LU`{BzR?On(l zYp`;_PbKFpuS$Sp#m48Be}In|0c&s=ptbI#mxB2~_TON9@14evocZHYTL8{->Yb2N zclJ3`f@udR6NTkY(DUT7fuHfE6tIb7>ix-9j+!VrZ^(rSvnEb|Kizgf(0_6OjiL_^ zo3;J~Y@;dlMsvn>m0blB>O{Y=TFrB0J8=xqu1 z@A{NFpAO#KN8VS8#~C(`#9Jsf`@L;yrK(oH`Tl0JAtD!wprxYJ6`4ysz4O6TS*x6B zUvxPW^J<~}_V83mM1Z=q?L2M=4sz^LboY5`&YhPSXG>=Lf3H6Fv*Cv)lmSn}C-BKG z_*Z~yUgR0iiM_JqkLW?!7JArO^g!ftxfi{iG_n@O;V`4K_Xd1p3dzlqt!S9ukYm0s zA=JOH22cv~dE~^Bw+HS085JpV@b*>crXe34aIGfASj;T}7l#Yl*cV*XbaU-NQ(oy!H$ z>rH#O!#GItO&5D@oOEou3{1M5H+=!pjbpmCff(+{e>5SW*cn{D30FuTKS~V_Y)eol zmCu@(Ag2_%Qgu_)miN3-LPXpR?N70OK*#l&mM~jaWqy6RhB`zg?cvmP3P5iI4wZ1=R@D9L!U$PC6YTh1x+2YuX<~54M1$4n)-@ApLZyDpV z@uTT1e^MA^DQ&s33w>zUw^NR}!DQ_$6pew{}NvGxh%tzqO%Z4wy*?QHQi_ z57!0}a1S=vUUg=!Nu3uqq@^aTsQrJlrbsh?Gkai}8Lo0w!_#G7BXTbe(}`?G7}*yX zo3#}s1JX+(02fda#E~^OP4`NVrbqt)(h>M$m!XRh6ag}q@wx;P12Q!=moc6YDSx$D z-H+q85r5ym!Y>76bXO;SNR(O>L5lR66xcSwEzpNt5NIuWtwxsiB>9~E?>k?VB}aR> zE1DOJ91h9h%x{Lnak6>ZB%8nABv;?RKHR){o8}vx#95}(&BK19R1qg>y2%QlIlXzP zHa|v1yuC~FG`jEFdhE8wME$V6Gk--Am2Jh1%8!1BV;aYPdick*$(y$(->4)ml0xAQ z$>z>vaiJBj{aw4g)0vHWUpCxo{b}qwA^TsSp^-$}Sp3lCJRsoY<-&`d2HQXJjZv0Dn9mo}D%d}m0V%EBS67Htq zeMD(8`F)Zm<>S!xj}s>dcx2YPohb8z*n&^;+;_C~&JP2uqhRk;rP29NHz2-s1)mig z7fn;om&2)F^5nQ1O6=RA9)HCMINt5A)~efGcO+@Chw5^XFORf)#>S;haE;S2u1Sun zvx$m^(+;@~*wbMt9x9t-2a~Bi_GLRfm%;eAXz`1@eYs;bBWu?-FWfrUt!cdkOS7#kh)jygO@uJCIXMXqfPadfPaqrjhMKj} zlw%Fc-ZHfwZm)B zmWyZxL+sWL1Zbg(oLBa|9G*+^T3F<__Edqm@UHvqv}0oQ=Nq?GBy9 zqINt7K#CST#kZ{9jH zkN;X1ab7r(hvb-I2(d1&3Y*6&(SehX0nymSD%H!=d<|+kkY5y8R0lKnqeN_`SEREL z@pqo7ujmd&X5I$9fy}(HArHtMn8_7p3Rvw|Fwyeja)>q-k5P9A2hFWpo?|?ecndjH zsprPA6mP%|Xn(b1SVLF9MNF(k?w~821&xqWG01E6_d?;{1mTQR;zg8sp=jg4(Rii^sboZ#Xp}U2;eAr9}JdNRpZj!qZpUrU4~jVnFL9o?0?~AmG#0@wB{X$kG=_e%`SK7 z;uQcl2q8%_kd@2;?2i`&hH{f}Mq!km>?%isOOAF{CfdW*LnIe9eq?SABQQ8w8atr4 zuCJH_TD`vj6Gp}UAr3l0Hm^3wdSYT!;8^=XL@8GjWGAGo#T8>gQlkQ@zWQnncS^<1sjG-$tc@+0 zYjM_pAMmVJ1Jd|&EtbWYOn4X;e3JuVC)|>3WNWjDi{c1H6ERcI1DxaKlH(!e<2D5# z_jO5kHB#zRzfCL#|{fQ55)%@VA(SJttX!XX$g-eJrgW(+5;>89!B0Jp~mEgqftUNWX;6)W}s*KOH!?UsFz+#p-gb=N0XM#Cfr5 zjDLJ-3}w>!$q*nY1W4*D7LI~FkS1w4A^>vgkW(DOBPi8ZPYtBZVYm)4t@GGiW9++? zW7*gh+2>(QeIdraXuID5V_EF9S%Pd$<|MW*`#)IT#3o;;D8%o!THG5HIXfm|ws5?> zIbn>R2ufX;85;!NJTTE!3EvY(@v3|+)PHCQrzV*ay!#bB0(T0^o*z%I8crJ<*7@@) zM)KHY_6srcszmmGlV|~>6gbk)fRX#XV6@l?VUz<(iZp-yP;kq;I8pW!I0F|l2G&W^ z>=F`98htIfEabJI;bM{al+8eI$^xG*yVEdWD8lXz(RC=F$No>+d^Z#6p>L$+8$;ahx9(YyBSqiz+gRB%B`9hwTFmMR7KgvsN5}jIl zoLmd(_n@_$Gn7Ku}C zZ?j~zT0vY>fr2t-q{tJN5>{MW>NZWt>?>Yz&r7T5e)n!HG1a#P)ecld)f!+q&sJR& zLSB8bR(@Agk^v!~A6W1mPR}Acq!s*1}LsqVlQ|y z6?Mg)IfSNs5wxGD$B5C%O3j08kw*^)N(Z!}8n)qzp;l3#9&6lp^Fg|m$pz56ag`p(4`V9f3;XybK5o$ ze)q57BQ+BuxR3OyZR#A&(I(3DA<1MIiIO;xNR>xz|NAbupd`w)d`-qzq; z+#S`Y=fXye5=R~LAPG~PP-~-vOX3Veun*a+NsDE>PAk9xplQCzl5&xJp+e=$)r8x) z!8e-;gJmWOi#<7@@-8DzE0iE(b_COPd@(e-7vFF^oJU%rp^B z0$oNpQwa2hGkUbJ5ravTSYvxreaxHe*|EGFS_LO0ToB_Pw#u(cM8M)z7A?;H-p4Uf{tkZkF+G42hj5?2 z(r6BEUc(IGY;@7dZQvil*U?A7zD7rZ!eFu!063jq2f#dae+L8!J5M_?f+3A2oU_N! zkj4=SZo01}#yxi3U5W@T?(MH3KTYj15+d9Kr#H6*OBwwLLOUQ%*lB~^!Ed*NKov7; z48rnmyB{cYv*Qp1A#UCZI|Dy(F93jo0{Mu&a67_XZ2Djt`@L{aQ_xfG$uKSUs!|JX z3+>6PV%z$(e`-{`O(&3Ct8|k!nJ?`X6#4pOA3;M!mWcJ2?+{W1sA|mBc@espK?%@~ zSf=~j{vF$v^?Z@eveDuMg^%uvQ(9$MGOO(0Hm|a|C;JNyHLDEQE#VG1uzmszcG*8& zW5Y5`@n{=qz+C!THnaL53eHdULI8+b90D3$Le+3|#N@W|<^f854hk?hXh^ zss=?VVcc;6LyNRsH#bv+-pyEfOcD0;X^KOW_7p+VZ{dz&5js4ptc@8ot<3WHUAviZ z<9!6bS?CPQ1zwwc6MXSKFTmOk^ow~{{(W#T0km9b3!vj$XGLcP<*1G8rpk*Y%x16} zT1N;Kf1qWM$1w<^?s~DxXP)Bz1T%n=NUK=i``d&7LruQ2_;mGe;M|2lLEY9T<#cr+J^Z-$x8%AANI@h z(dB{EaBV?deACibcT)c9Cn|q+yYg2*N%_l*eBMALYH8hW@qfaY)tx2_yzSS3R-eJH zi{Jl;_NnrDR-=fIqbE0pYvoqD`V`d ztjlrVimYuaUn)3skGmB83gEeeJeW29e^5z78T3Q_mjrkaaaSlyOyo7bFUkgQ^1`3; z+pL&nDD1g2JpYaRc*n(SP&aUldyvPA(wpR>g5!Cg@}+ZTpj@{CDhF2F>Ewqm^7R^r z>mT_xi~(5KzdRHP7SHqg2WSMLg>*)1D~A@(GJc=(e|x{hEVOhod}Mi(7eDIzN`Lc^ zH=eDBW&P-zN7+`h5MwiR{5(7^cAuBn;e2Rhl^ppLMP~l%(nxFOC}D2b$&pdbASN`C zphF@JfxtysM%kz|_~m~a?SHP9p^Fg|0W+6z@(B|IGBY)oaaIy3f3;d$bK|xZe)q57 z^a+}=u($)<&OW4#H`#QPZL>~0(`?40*tEn(qO_D8+xhi9=K!Qctt^R_Gads32z=*$ z01y({I1|}7XJV`V+vVA-x87#baBZB*E^jj_b1tmSym8zc=(@>%W;s`UFtpyV%Skc# z8u=bBHt%DE^>(|LkVP^mDx}Mv~6h*mqoQKSLN>mTC&8v1E*zZ^r^{T7}L&?T*g3l-2++6N>$F2BxtCqf{km9Q*X801rUELbf1dqo9SYpy6O`+)=mG}kHvoVB zMPxVd?mL*H^N`)s$Qk@c_-XbL(08x|k~$goK|}zt10truBOnY!u!G3`62xi?IrJnx ztPVWauD3FF8*WoR$Atr22wel-kj$od9&&OyoA0yQ4r{G}p5`zCM;7;3zBkrkag#Z_ z;x?w+e=YDK(AK=C>JW|WwciGUOcLA^Ks!97zX5hL19?v?eS$%0R}pLmd^u-gehY+U zt>E6KoFidJkqh?KVCbx6u=<1f+2>f@VddB;w(8h|l{^=MM!KApv8rM<#wxIBY{AG7 z6oX|b_iRpOMI}ti9b0Ym19s2?yO6{LDhkH2qsb|j-XspdDj56Z=pZPKw!cW zn4nikp}0QxH^BZ(@@#|d$s{`GA?6V^7%blVCa*`qdsxo$B^jiu9 zAF$6;2zk%aDF?K+rkyM9fSI)YdXq+Ma_70S?Es7?A%U+QNT8Rn4=8|-$z}jZCLvKy zV^zj#9IHvJR=uNDS#GUiO6s@P~u#MI(P|s-XZ-D*L`fP*l ziB=VOFfzKc?(M76z|q*efUmBBPWRQ`SV#M6SKJr!)l+rY`f3-br?2)mzLFJT6SXh)a>@}vXC>V3ST z`jtGyt2@l=V}D*1nHV5uRF+f%f3L7nfO(*G8Q1dj-li`U5-ZBBW<$oXA){9s6F2DKipoEzEU2uhoZ|r>XKRD=poGjUkIxF}yQC0Ynb7-N z>84laTxz?G6cKvhG=Xb!e+Q{Sp1{!>$wTHl?R)8A49C55|(sfB$rOV0AZH&u#knN`Ef7f^!IlZ|ZT^Bp= zi2`?`J%?5`D?mdoTS%tc#3Su^_)4~z>KDx1l!6TNjX|_rM@_x z1-Ib{kQ}UBJ3_qW?Or&+Ax~(C6B)R&Nkcz?Zt!EQ_w1*tM5P;HJ6A)HLScb{uG`Vw zbhU>`sQ~^9FM;UXf6ruBu?>?t&v~<~RTuaH)Jyt$EQ4Y{+|ey!dtFEho!@q@aH;Pa zFM}tesw$?Sb{AkxQeYvvm_uKY8u&|}rtu1QT2!PDo5RYtT-9ZT_ro%Tq$jOyqGQtd z*jHAuzMquwLNhkwt+D~6d7VZkU$E>3T=IHIj7SHk?_j#@f8Zs0^jEr09g`boigpkX zK^r5ZG(!z83=1g)03^~peJ88t$j*ITu8M|VlgE89Y4TlC+Ok-kckaw%_kB5?#_r{B z|$(JxhbF@W~d>r;c$Z|16sxBXq)>%Ye9wk6~u~Wo!`Yv z4|T9JXvqJxSaiJSA<{tFzNM{>qpbyO znw}v2c$DOif0pErhb4dflO%t*FK_Ug-R@m5nUsh%OImYbE)Y<$Z zCd#;zlLova(M6J|A19-Sm*?d2>W`wHAHfTl%BtYme{ndGTEt)gokpW08!^X2$}4BZ zVJ1@ILVJG&Y1g8Y;ml+7k^-ff7JU=x!rC-$el~NrY@)Z}YW?FTbin0PKSV+1EnHWGjLU%}}U zG*jX5{gInK^sa8FO)j}>+^43KVPx87BasS4)%JgXyI7JI6-l-%_XPyO#Se?c;)f+x zWY?LT_&t{9W-~SNVC4BoO6Fj((-6qLJW;BRO4fT2U z{_KBe|GGH)$B$lrXHxJeqRcL?GH1CJHuJ`C6yYM4>o;EQILFcDTm-Lqmv z->bT%N?Cmn+OCUgR*-OegVF^~Hj}7Ru-Q~hmg%FSc9^e8X%SUOKL$$)*aHENbfg zK}j*{yuDg~Pz^r7rzHNqUN>k!G|7xCec8QU!72a{3@SJKdk1FfyI;KfQJsJ6){M{U z#YD0t_1Yd)a^q#+k8i2yZ6*!a)g`OIgus=8&cLy`2Fs>Ck!ueA;|;sGDQFBSM*SS9 zCUif>pjS7Gk*Jqks6q5Uv-fQd4yJ=<|E?EHs3}%|S4GtxG$nYKhxK!yFd}!pb6yqA z_5E~JRI9Qr|C*@4I*ayp+5#QBgaEY2mFUoZz632waCI}w)7E}L#~3rsmSdD{@oHP% zjAu_Brb>akyJwB^{kpxWn^(I$#(3_P>IGjn<*F_7Zu7n^i#gaAUnI+`OKN>xE~xUR zxLV|YRdrZ<8@TIqx6ji3T~l6{)o$Gt4=VP8zm_Z9S%J9efJPcfz@KE#AM$S1wl#u{ zWV9d5zHG`l*-D9T$&50_aL_TQPJ(`M?4Fy4&Sqzz3}D5WHP=~R{q?6ULUmjkAWH?B zr6UNN;gsM8cD&{qMsJGjYJ)(*o3RGv&SMvUoPLD2$|Huh_^sRs*g=BG>(TDIP;ij%MSb<@#!w z9$@yX*TIfY(bJJ0ooTm@s`+qzarbQj0d)ko2WW?L9B=*I$^^xK zJw&C?UrmaMY!-NQ&Lr-Hs?h*xxOb9R2IIyk*!LLpS_TKTl$L#=#~L4w<@DCj8yvV% zh$QJEE9p_uEWkvW)6XH>PRPl)e)A^ zx>KEW1Lj00Js#YvY1k{IZjC*xWFJ!rvNjzMP_I&1rm{^XwIiL|$UX=w zuqM-B=`e&6#EtHbhVST~0&M<&pt&^omudTdie6-Ma-KWqdI1>1I>u8e@#K&Uem$JG zIBFVH;WRbAN;tf~OCyU^@^n~XFE~1(mxt5t{uo_F;1Hy|fUftQt{Qb!`*aPYtA$=i z@=XZv%kEF+n+KRv`Q~V(r}E8srZ2=dr|@5A)5lS933a-{>fL2;F6^ zLDvq*9#Wuh%fuBj@rIM=+`uI0(1NysM%fhYLb#Y??GA5olVD^vl}IQM-=es~ohen~ zGv5iREujE0?G*;IX)ogg<8z?2g5D~6%js<~d^4z?5$qe(&a-y_n_^a*LRP3RQ+=K4 zcyp{UPz7ZvdNss>0PrV&?pKv?Ag%^Rlt=7biTlJR$2s;MW9&Ungl!~3I09$bU$DYT zouJSFq_}{+b<%~#6F?mI-tK}JcEK>A{kwob9;39uz|XrPLI86Z;E_9`Cm=kZI;c$DKHw9ggHpQ29*%T=!^-pR_ zSt}g3h8pQ0`wq~Uu0``X-xN$2nnY82vunEPDwp7iv+4c> zWXfye1n`Jsm@CV#AIU*xQw`pWyM3xW7qQEQ-7Qc(ucc3a0dRoO{Y{Nlxt$EQOTj6Q zMh30dlqY#GX;Qb-3A{C>?vm*%vXOy9aw@p6yG(nx$nWqsMVUc^-21oa z1Ne|o$L8BKaz3Z#)#q~AwEt zG%(Bm0jPR4mytvg6az3YG?xMD5hx8X3NK7$ZfA68ATc#Lm(eH#Dt}m8Z(BDEe)q4? zWBX7YiKK2oP@tD(E6`#^lZS0VP-Kp=21|T0+d;d3zmIZ~rm0iVbq6Fql+GuLH;Lql zEj1ThY&kf|`i!oTKJmj<33joH65@zEG&w3An;laJ7st7StCJ`b5X}iV$5w(%At@1E zN>K@NsTC#IWnm@6<$v12$rbM4>`Lw6;wp7;b+trrF3q*5Gc~v_TvK2Oy1qh~kd#5i zix`xH${wXJz>C=W3P?}fSKtNJz5?#{h_XsqEz&T| zp|1d|ocan3bL%UxN9l^{u+)Y<8uqAAl|lf63Kc-9xKI`pt$)n}N`InCnlh-|SAYTs zrK-9_l)?)Zor~m1VxE8sj*^hh0aCbA>O0sH6t=9SYhg`l)Ycnu;64Y}hN5#&pP{-^ z0q!o!1f;*yq5mCS?qRq!v_19M06F&wuG5YJCo;2&S3r?M;T4?g)WW zaG>A0;kV!aK)hG4JC>Hb9_{(n`T6nW>C=bMZH-RFmtaOq_624&qB;43(`iJLcnwk` zI}=-i@j2n8d$2Cw&s5nX~0R+Hp}XR$gbOZ72Yos+rvn9Pz;_OV%= zlVkG4R)6Q@AYPM<4V@Z$j#lTSN}h4hjOY@*RYzn4FJkpglIEpaeUrHQL{{GYB^Mk>w&fd@tW4+w651+tKscpoF2?p?#K;qU+%l%aQ12CZlyT<_i~08Cx6W* z!+#4%G@GxMTC;X7Cd0ega=cnhXUlaR+vncQPR~xBkDuI;ijq*iXf~+uWNpXT?_>cc zif=hli1&*t+HOpjcz=T)qGyLZ53 zcs?#pXN%4>9uL0^uZ9;G_=3MX|h#uY6QxPz-dSKvCl zKAZnNJloqF_8$!&#*5kT@$CG3Hb1?2K6x{JF`mwbi|KN8vV1ZfFD{qE^5o+3e6}23 zEyvYjygZw}KltaP*LRPHgW>hb)qMH^qTlrugfQ2t_tDp3-*6R#x}|IHMK&5xLVurl zJwPY3YXH;@0g!i&>{zyr?7NEnfXJo|kxjctHhn9yuVd2npxhkjDnYmnbJDsLO#@m) zuMI99=)(kUN)&*eb<-TU;pg#ibg=BB>4%fc)okJEvAY+av{if(8GEVE4ni4v6V(sh zuNaWF>emC5mq;Tw12pGrd+Pe4J%9Vn8_i9(oY8*A8*XS~xP~3$U_*dY-aQV|jyD_% zlp6ZS7#O{{D9DNE?j!2N%z4)f?qZyut;WT2IQ(`0{q^A6_Zt~c?APG720ze=Zw3dg zw8;ieHG2KV5cdj}uukvjbqpbvOcYp7HapZPS z0=(gj@a{=~%QjaMZ}EBO0W=zl$X0Z!&6kZa$Pe|)8$OdfgpMd%suhix)en6}v^H>7 zEZVm!R*Ogta4uWXf|Bh1_nQAJ$iL_b?sNg)9rB634*3+e3;8Txr3Gm}CN1O?eb(>y z*J&Z6=gdSuGA+Ew2v z{GPtg*7;M2LQ<7}n{Q`TabFjkax!JyaRF6#*=|)&{fP-Slfn{e zd7nuo`C%r79b^)6Ze(Ec@u8U4OJGx4m#!yMX%$O);PI?wBTR&Oc-Oex;(Cn@){SBFs+EPGMO>~Ou9JJI(sC(nNvZuFv)%^^(|AO9pRiM zQ*H=#Hncr0^J1~Y`9O#oCN1TtID^ajQn$%@9GM@fJ<-!Hkm4BdHMq= zjXRlc^ZFVHQXss{L)Cf%ZnUZJL!@(<4lQsS+R9BG3Pt&e3bo72Ssps#@D~-^@_&Gw zZ|khi4{LeYKQ)(-i!mV5Ad>e}3o|j|l;U0mk*ac%NERl)Da!wDJp;4{X`pS{QJ^Nm zDX==g2PeYlPn^-t;Q!Y;v8Gk}$IY%n>7h(!C}smn4WD-){$OHkf4tEkr)K!O&rwli zwprf~8JV%fan|%FJ=Tm$m?Q!`HGf#I<-`ckn}A9k{m2ms-mHvFZ-aWj`i{}gI1Mb( zmZzJBr^tP$t6_w4(RBTJ_OZ^usstGRKX3t4SofyP%le=Q!K@5X+<@efax|LX(0ww5 zn}C?Dti%3bNw#I*5@uXMYbG=2SCcSl2rDPdfW!0XYC1T~aNQrufVEePC5YgRcw4 z2>2BOD>lGBK_pfa0n=A`a<_-1V9r>Abojid0FTW+#eJw2?is3Sq#uBKh$(Pzt`3n1 z1n2;X0PRPRkl?4VdWu6svHGC1xhf z>-)hD;K_v9Jx7pkeY$H1w5?EYnZNzOA;%M=zRAM5`2oL}Ck@$Om~m{wuT{w6R~fQJ z$m);*F{=bJ&4fzt@XLfYy+0B2f^pWb*QT>}rPeRQ`c@NL7k?h^kAnG#7PxINcLB6` zCUibpjHY!oT6C9tA+$JGhAmoj35`UH@d`MM7AGt809pt*L%~_fqXnN#4Y+jKLIGyG z)=x330$OasSL}(`PRrumWsIpaOSry(rMGm>H}tWjj<)m8S}$bgXUea&@(!JmMm}2h zhi&{+RUR;L&VS%S9`DLxw2e|j1mzbn(q}^FTj^+8N1JJPxfin2b7j~XYM0PROC7I( z!=`$&LJ!y~^j9|C8706mVC}ofRJ!!hrJb`;O(!VeAU2(@&;e}1OR7dmIilkm=^b8?yuUFa{MAZ?i2 zhglXX*KHg4=i7;->EFUl>Vx+xI9-QFJW4(V@3W1Vn~+Gf1)tTs&f#75=RL3bUvP8XQVXx@suMXcU(CiX%9h~@_vWGf7n6qvkBlrm96vI z2Y;@s?ZJ=|?FMQ7h0&tSkH(Syg}#XtFCLoEB9+|2l?wm$7*RrN9Pz9<%Y!{n?7V94zJFoK9TmhYKD7{lY(7a4Nyx z)P;VyU=B<~#0Q7+1`n)Uw*l|>J0DX2Gk-*ZsvuDObphr1;C0@QAI8uu)-1EK%vW2) zasy|p@EZl~2Dvdn2m`%zl%qD?)>Tn1fC{rVN=*nACzY{(s4L2lKP-zdU-%5cewq46 zeym!?g8u9R7q5lf`;M2OFA?UPk2+}^|72lQ4t56x{}0l+!vQgu zp^Fg}lY#sc0x&a|;g19cA4?)`xD+=|8pX6<(bG#U`G1P z8ONk`*?f8O`yV`8;I|($&b;;6T^za0w8BuKaDSbho&0k0xAT*~e}3mwCO8W`i0u3# zvxXUNGN(0@!Di=+?Dza%vt==vTH{>)TUFMRsnXo!AB)X=UEb8?s+vrN3{s)%Vs?97 zPyRUn@#Nd{JrI>=+{;~vM$5wxmEQ+Z8YZ1i5UbTh`uuKP*2QP8^fmD65L_-MQzN|0 zf4Bf@CG$;DzoR>me=k>XWwlP-cjfhU>fU@UZ<;ezl5+2QMKIM#?{Rn0-?}XG_1i#%h^Veye`(&7wciZLVf8ON*s=v14A%AY^hohW- z_&+-T@Urs{Z|uBj!hTmS>MNWQ?ZbBMe>Z*JMn^8vZMy^mkwE19(|=QV*5#tuq#;D3 zcX1U#Z1?8r9<%tf~G42hil* zA6*IxUAu_2f0Yrj>mbIEhr@^;UPipDMEe~$C62|>eNhl(781kLun!;LmcUm0R95AZ zT)JI0$C@5ygg=G-x~MK`lX|B-`nwlYyH3x$Q=;7vP_z4EL5T*G?10)q(J*jbY_LVe zm#Vm}*QCi(Lz24!D1&YVki+g(k-D}@D1*uuM1xg4e;l;6^n10c(@j}HTg`1z&5Jac zAc8c{Z~GQY)ZThl7l%2p_pM=!Wr`1av9&MB`1bHF6M_X}B<)FSRB|SKORBQ^x{2%a zowqFZU-xztP=W>}C3B$({AVe6Z}L+bFz>c3I9uJWDS#A`d5ZL+dAz_bB+`lQd}k4+ zcKYd;e`defe6_sU$2#X(kg^@mcAz`Xqt2E5odB;_<@*=t@c~=ChdZ zydhQk`m#e6q%-e#$Lk$EiW8znzHX5ZxAoO({eB;lv}5j(N&hSxwK^>>mb0ol49s|D z$H4luE-%Y!KP<_-4DG;Q%grjirC$J~n1hOpfb?%r5>+u~JRC zeZS(n-B|AutWuR7_#< zb&*|kv=VtZ-J#uEWPr_Gb6q7?;ZccsV?62bQ#g(ZsP6#-X*z#uAnEoI7Bo(t4Qh`K z4JD0#m?%dtNQ(^hGdCQsN(dNLbVgD|AOuoCx+p3d=u)H$f0Y1& zqf8+kb!Tn>IuYS}A3AVvC!pvUW3<4AuL&+q3udlH5KC@3G%l5Z*yKVk?at?mmk@)f zFFQ*h+6QXC91)QppSs^_Cq(#rk+N;_v-$2fJ~!Q6Cp*#Yk=HFT8hfLyo-WNc@f2WP z(%{TUwH!H*;b0X0cG>=rwMjV!SmkWWmXaOi){ph6EbW~{O+@P*%8mPxcH{Lo;j+rx*lG$qu< zL=#U7F25$&cZ`|kX5iIYASqvCW!MBe?NiqB?X^PH5FK`jvV&p!_lvI|NbY6)fge1f zm`@loih<2kPr#rVYc@E#U?4j*s=hhLnNU`eoJ?5MIo{PCkPb62}AwoI`KEQ5DBL za$bLMY|L#k7UURHy1oIrd381DtSpg90y-=t7?ndr6vF-N<0QnQf|d78b532>G}_n( z=CU3mztPCPxWeObUf`{canL(Yp4C-T?ElL=l>QUdUckJ1)p=1zfdgYUZazjvkB>I1 z+2?^C6Og;~PB(PnI`wI8@q{l&xfQz`{Uz*9@|J4OvHSzN7S{i()Blbva;F3=g6b69 zpw_wv3MeYj(gpR_G5>F3ksW1?>G&>JkJGkwxnQ-q4#}1(U#5OMT&xrwWA*j)5g#T))@VtIgPruz`-)4~eUMKSG1*$dcdj)G5d;^@++!^Oh zt4`&rGGhhh*tHbgY!ntGG8awS!cpvLwigh?^iw*;QG)*#f4PPpD~e~EG(TIiH{MYz zn$8)veH4zn-NSVML1edN7xQ1JE6}SZeDZu}#z(Vrw=FQL-1mdicMUzBvp(akK|*@0 zDAg}oO<`sAt}WyzdXW9U`LV|Gvg-_}fzGbZr_(@i7@OAxxfZWH{Yo*);s23tAEV_6amvFtr#72X9|-(9fy{CK@b@JXOrktVZZSG@-Cw zToOM*V6#`q9BXsOn`re@t>C>Fd6Z+8j{YULo`%yfLID&+_!~eZ zDjg(-USLtDC9Ne4P-`NNzZFT$t>>m@?qB3@PiMr;pIYG#DXXH0%inx)#VNv2XNxfk z*@Gvw&6dB!GTyRnQF?#qVw`*FzYw@U(OW)e$ZBjd$vU&E*quaDRC(LJ1ii*01o`TA zIwmehEx&!W_(k6I zy3Ak)9XtVJpO6vthK-08_88a43aYfvIiy85_PFV~n2I5<+l3>l5m0MbRSE(f$9WhWeN zqi|LcKd}}H!q6O_^Z#9%c3WsS>^{`PDG#hH{kEM^XWQ=}pvG_ulM$wWXeE9IjgOFd z-q-w~#ATLsq*X!KGtsFO2y82#RnB-1O>zQ@QS=-Se}O>Gug}pTH*TjXixsV|{mP($ zFv%xcxCq;_cyA8mTrf#9zS&wMMq1b>|i(9kr(9&1I;z#`aPl;DnVLTywV=6ddH@E z(*H*})>-MB8XIfWyh3Nem;pjcHO!BA%y;jbP6D!Vr-Zkas>oIS-2py6ExbUrbQb2Gh|(s;Uo!V+xAl#G6Js4xD=Ktei|=JW`v3Z>u0ikx zJ|(J!Le75~6bAS_6D%&%oHR6E#e;CaE@x1Fs8p)(zX!4<=$K7?UtHkgHq|68`J3?0 zuy0FUl1-fZ8_Z^$DgU_n@xowhA1aOqY37gzwh86)LFX@y5|;13@!HDQF{Czjbye_S zRc3JnY;Y^u4}Y{sT4GsR!`Gr=yT%CWwQtqXoANG5+@QT$P26^xmdBjxX%rtd5|?PB zV04aQ;wIe>)nV%Iu=MCAdDl)zXb1~arFDDLsFflPH9RZ0uf9zcIk_O^y=`Ce2pNW{vfVk03f9B$p4y52EW!oWFTDBFv0wtmsKFI~<@$ zWQPvJA_7ZH@V^CMA@5y6C4LvM#*JZP$Y$ijv4laZ4Xe}~Y$M8biZdff(x7{{hYud8 z+C(g|)%-ySQ@5eyN71L%`1%n{Gp$x5-T$5A{GU{4^bXizFFT?E&2O(}Mzvi15c@W9 zNq<{%;+!=W;Y!2)D@H_p1F&sm@*Oa9=gASCm{MS=zD9dnH;BR*|2c<{jXEecWSVlg z*fowo!WN&shKB5Vic4pxD7v3Crf7IP_>V}j=$-UEUlL^Zu*Rx6^*20;!<68BPyQBq z_yymhT8B!6*IH&17ZYu+jjy3&y(5VHN|^X!nKC)LzlwQoc<10%dAo(mOyvl0NO993 zIaq)hPbu#{9AuIv1CpUFbBEZGZ4EpP?BG}-E?Ohj*#0|W+1N>>Z_IFN0)m1ZQIk`# zpdaHF3^@@{^~@4g}ky(INX z+2%#k_lfxx_<<_Z%9AX#0tH6Et8j2h;hK&g&F@0^t?`S@SSn%QeQLXb0twIfX|9y`&EH2AwbdDXr*e z0Mp(D23NO7P>t}!NGf#1Bnl9`Jmt|{osB|HZz17(x;~LwKxpW1>*f%r#I{rUJ``bR z0ZE0W-U{2}XL{dE4?c&|({2Cr?r2~vEGfzyprr($ZO8w6XJdobvfVBRy6==GjBi2! zODOLErtk4a-fO|RXfceMuH&y73e9A+HvP>$@rb>eM6N%iUka7>T25Qq+2k={lj+c|ImM%B~!^; z!y5$0CkbT+J^=AVZUNuW!d|nHO#No3Nbs}oo~%N?+_U+~I(Z&$79}QW7IX?rFW5zF zX%3S=F9a;W*V2r-|f?2d{$8ZWRybdLeaIt7~5vOJA{cQiBRh5<~|M$J69g4C> z<%PU-hF zl#ylVX;+}KGR}q6wX2=4*S9CU{$yaSE7X(baZ19A_HiiLkNBc%-k1MzNXXpj)8|rf z{M}sgmJN6e4wNP}X_K(h-LG3|u0QxwY?3_ruJv;LFILm9{VO=ZOi@J98Vm6>_y`hw z4;{ zFy>n>(i7Vnd)v1dxL>qCl=^vlr?GFyOgzxR?>B+J#xQz2>*>xs*I>hB>U$d<#Q}jS zh^{TM^`M(u{Hx!6jlE(8BCgO=1azZ2xiU`Syr#utT5M4Vg?t7GTJlSXS#v$SoB-X5 zCWfcrI_peD2*q?C^?FFHbPlv+JHB0>@kRacaZOaKKi~x;zg6?Z>Cpuhg+BPcu;KZG zRh9$2hF1L!`Hkep?~X5=$v5>sC#!C?QIcc#b7(D}C>f{HdksZRx zXad)8?S-NL*>>->GMv)tquMVt8;Nah{ZV#2`jA7K6*8b{Qv|;}0>4F9R-?crQ2WPy zDA^3jE{~J=p^-GXpHO-iX~b$RQ-xW+mHZ8m(>q)>_0|!GO=0!^nS=<)molXRz~3z&2rcJaNNrU-WOZ&3Z*fo&@tQ?<&0C zQ>PnZd-@&9&WB0x8giqT?!-{QZGwOLU-KFJ zlWhkf#W3TS&{VgbXXR@pD|+3n1V@>>59z_nPs!cKSiG*!?!lq{O0d4PT87s8B#t#Q zzSz#_r}R8ujA~8xQaSTOy_P8Qm3F#CM??c<#@O%}xAL`i(N^4&*?jVi^`u(>b8q^4 zT?f)fnDd_p#16!&%#!9S=HF>|#jD6gMHyJ>)%}IHWpnU1Ef4r=mE8|DgkZ|ZB8TrSBHZsJ zn@MGSgG?v$$#r&6cztVmf6cA|6ZoR$#Q3ps_H9WK9Mg?KIUbtCVit!EIYJXN(LZm} z-_v_FXUj^L8l!n{Ko?^wqdL>Ikr!QaxvTneIMb;BTZ`MnOTRAF*F#cj!35_y{_bP8 zjf)K{LRTyf+!jx)?r3vsp0CXew$z10%B|ep(KHKkK?2zZ)Iym`xCIWtnIm85Oed=Y zE2I4SZT@L%%eTybZ~4vGdeh@oK2xJwf){DY&ANa1VF=!$4i@J0W#%&PwzJO%AysAM z;(|A$;apVJhQ{FnRLqd6gUhxl|=s!*v zq><#d!{t9KV(*VF3}AWI>{z*{(H?~;9XIDT*u#FcedzSdp`srG)kCPeewwV`JKDqD zze-5Hvfbqyj#eub>mpg+$}`hi0d4a)b5A9 z42h>6K)UGd>_P;M_J+DYQj+Gb?1b>oT(sw>U)42-5coq%(FNZ`3%(dRxiG;z6J>^X z{m)JxkpKMtpZ^3c{bc$7issshpq)N`oBFvoXzC4tjzkLQqACJLR1Z9pJf78hjM_UE z+Jz)Ts13Zk`q=`+GWgDHd2A&mBrwPpY%fo(UxgJk(72yZl6=%Y&ezKnyWrjO3Z%Z5 zjI^bPe^=1rg#8z3aKE?ibfbD*r{VN6)@I-8$UJ-pC5g!iL&k@o8yi8{KWE?kIK*kDvXrR>Ew3j z)$Y_wvBZ0}xX6IosyxVEX?=33+I+dMGxb^ecK^(Q7VmWgrYG*aOuwom5-aZ1t5oD1 zi91DPT;}*|IBYX0=1B|ZU=bP<{|<2d4c)<7YWnUNXon`A{Mxk1z=+^1TvZ=|%x8nh zeV3wgD6T>vkH56UXvW&6d5M{v_Bht;o3PmKL!1XVKLt|Ux<8@&m$5C_7H`P+b{Z>s z`U$9po4+&Yx*y5j2aHH_+EJCMyKIulRzX-{EMoo`Z*iPx zU|%Fe4)D3Ib3wh)6Jm?A@2$tmc9*C)>#DWMa=RaL2V80mSWU4^S7fA$s+%I zM-MyYbp2H#7V^8l%aZ7iSYv|BQ$rj2k~-ybpy?kLSPk9&qM=soq!bJu!|NQ3TL~@n zm+@ZmtCI#ag~6cEU?DwY%(Ojv-|vho)Tis4oPYf#vGU>pnZfZ8iQz^1gN`m^LJ|s!7@u^37v4K;E4)_< z$XnwQISKDssNL38>@-~F%n8xUp&B^IKw!NPopIO=v2FtCU9+#Va2mc1xr0);=R}le zA8VCh46C{=ML=eL&Rn^z1hJV>(EOV$$7!!3Vh8mJk785Fx@B0;>ci~_2jkq3w1N>; z&qIIaHDu%P4iO$|_|n}wo?>Oc`_&0xgOXAz^9fgSCwAe70=3XNpzcy$MX((z;CbPX z&~U@Q?qWFLf-`Cy!NSK$G{b+zB;1xue`eQHwe#j z?>i48BDpyU8@ImV?{VJwNuZt>%%tSy(W{9|#0=wbp@-4NvtA8*vZGUQ=B)yM+QqNx zcN^8V9y<1nhQ!Ap6Ou!aQ0bAR+9S6rIu62J_SPl$Dj?+x5^;z&^yGTAygRIkP+C_S zhURz{8;BSlO@F*v;aupwqU1VO`UZe0v_9;^`K~nR&GzCAbe>DBT7~sqp*$uvdJ(&H zRKygyHdZ`<6m0YYDX4pn2H;wjfizsvU;=5V8!ht`2YB9jM4d%29a(H=WjT9o%-+Ui zS$lyITZdt18^*|(PX;9P3sH$(y=Cd(dTq|$YFf1vK89>qdmSpDD+4Rng+5{lQw|6O zXu`vu;LoPCZ2Z@Cd3A*#=PDNt7DE0r=O!Q)2pJN?;nqBWSOKo2qqpN=8q%ztE7#pN z%fSLQFtZ&j{JxnGNH82aV#FwyAdo`OwF8~{Yo zWW9R-qFbolKp<|JAdzVmQk-HL+#B+hjTaQ%>UeC-IZIDPWDy-b)A4^rAt{6Q8YFG~ z;{)Nw5p!k#I;l$%>o?5**xOS>K$RQiEf-D`mE-IHxYD$%YC5>c9k1|0Pt9F{?MxvD zPZG7=^PR`a?Rol~i}@VuA(H1RCVE^j4&jhb#-9%O;QKolu9xz+{{r*vt5_}Dx$)0qA-)Yg{ua8Y;TpgTQLF_pe5 zr19W!V#9}I&hWPV*>Dwli1l&R`|Z-?qeiDOm2Nq;b>wr*cC?$ZG1oT7X&oJmhEltI zVxzVsdH=z3PAuIkI;~@zoMmM_skYzn2&E%o&M&QBXf@QvdD>zNsRfD%c{_@kZRBF zj%lZM`@X&F+>NX{xJe7a?Jokr@hMT}!b9ky>AbxI+5f~F4huKs>v6370P%~8Nl&^1 z=9xj)&Zpehn>sYDUEwg8R@Z@TWZh}<>bJe3WuHBK<7ep$_yC}$>kpp=0ug6LH_^o` zS#*Gl?bWZ1e}iW^9;im5HLJ<8c8miN5|To`wX0qhdgY``@dRqWu)G_AwPs7D>ajJc z@7>zhs)R5#1j$d|dFH z#y2*{@1GqJo#)AgXcb?$n5fuLxc0XInJ}u<-M}AcsQS*Kmd|-5Q9;gZthJf>(oS1|I>q>=mct1+p&MUYFk!Vc%AH+nA` z@ed5Ht}Zw-rogW;X*B-kRV5GAOX%)MFtQ_h;3rDZOGI>>TjjrT>D-_>2V!@ORehe$ z7_jG2@&n8u*{vm@E;EX>MC*R>0{7>RbIIxx8)d5k@}{N)wXHTo1B|xCY@?m*4ySsA>MbGs>Uy>ny_l#LCw!Dqn(7 z(bouENx)q_-Z8*w!1*;=J+|$8(uz;GXvsTdqIHs8%Zk9=A-AiuU6Z|vB9uX-Y4QhT$NnchWgbsj-I{h)t7oDK?CPtE0*1}AM|&AkmSSuXg$v>B?&Qk1wABowKgWNqkop z<$E@rQLEwMckW@_*eF-n?05&po{>r?8E-qC8YqgKJ`^9*?=SpbR}a_~Chbv-OrZ{c zzP0NLWM%!a!2I+99)-NU9J{n_-F$2x{~ijadgPsymf#J@P5y3BFW(*cLph1q{?Xd1 z$3Uc6r7%^#z;AB!mv)NR>RP|pC41q)(YH&w`2C}*49S}DGs}MXF^mI122{CM{V!M3 z@5!>uF|lrb@eHG7p{`$Fd(C`wid}m(XxpYVaV6`32d__j*K?{_+nRo#yV$l2eScA7 zm|SS_i{9CN@v3Y0?T768SLqj&Uda)Ax?U0!sTe+>k@aq~*%t(zw%unOEc1Ee0W__w zmvb&&PBV^8>_5?XDXRk*{DEHo7+9uLOK=Yh?5$6baE0cXoGv+2=3`Iwt&N$Id98NN zR?)BCiVH-+D>rZ!JG_5D7MK$(@$QIL_*Q zT-CR=YIu56L@HF?^yp!AVPrw`bLN}kzDI0h2k}0BK9XomS9_Tva<{tfk$HUtBUE z(pxoGw*{mPtj^U9GJkM*)g=3>V2dzEM$WO?V?EZhNAfNMM=?tS5{+d&0>{KNbO*V4 zMwBxg0egO{z^*(%!mpZu{vW z)_;BCUcBa~$K+G#h3$k1A!m^SZy@0A8XZ;$zoL6d+zNw+{d;oaG#{mMn41uIm4h`J2tnd*E0+!6;kF=tx7`(B@j`Z79>pYerFlip|F)dq4~^Q} zrV7X|;S-5W&~x7HIsi|Co}DsEPr8Et*cfh3JMs)|IWyCfi#kTv5&PIKVOoUpgRkD4%U+lMIaBoQp7 zvhj6S>U)c*WLyD zm#mTuYZP{Pj3Wwf4WflsRQ%ynQ1N3_(65^*5En%WO!yM1Q}P(o1oCEBM~7@{8xkCY z1U&Vi*ytTv=w(c8SPT<<+V;vlQLP#)ek0g9XnBD#}b$j=M^fH<}M}bqy}2!9m!d$f`H6{4-+a zk^B{_R|4Wc1?W#6( z6l1R8rj$9jtqHKsjkU6SR%!v9b#u;AU)N0&>%9>WMpFGw_%w<{70gwaj-H0XukV%$ zyWb(Yb4Fhj>wA#C%KJrax<9e$ghp>Dvc~os)pJod;i^u_dr*<6-XJ%C#n_-auJM-B z56n};>jQ6@(R9oq5ZWe0A$t(ah{1&lY;p)u9uEP07+ja%?=*bNj!XuKt;%hmuRe`X z8V(&D@_;};!I_ZEHTnsiuk>@BEO&a1<4lR#TrEswpMW_=B$3wzA{Z=_h!45v_LZYr zHi;e!6;m(LKaNy!)c@fo*>thHSRv(T9sz-0v>{>y4jL93KKx+umAHZ>NxhNN4BcA; zqm0A*4Y!f>tL@Y~Zf7v?xYMK;5$axNuP;ew1%Iq1%33)&&c)8Qd-OmAZ3q7aWf=>; zMA!u#to%QH+EA`qlix9X6q&eO9_zoTmwd0JalUM3uKo;E4l?tnTZMmMK&O2L`?3Oi zwdaH3;tb&dQYf?-q)?wKNTHrNkV0ED=4vpCAcYVW69JG$Sw4CTwBkO!)O?oBMy?11 zB9ls7!LqBBCN>CaT=OkxB!Z*e9m0Evd$4<$Ca|^O+5useCb|eDmPnixRzeU8O9lK- zxOOP1)=H$fULH{D-;^43E(~0CTf6O#xA<;V{7=#IFX#dH?d{ABRKo#OxbP8*Wrp?HeXe zmM&`+whW$aWH|S}wszY)0e2;mkDkkX6)&V>1CCqR2w`5LXRD`?7nO||f+fBXKZj!M zaPz2t$ufz4aseFDlYWJN0mE0j%eaCPelIaJ=&2}7_*e>BWdxA`J_2X+MOr%ERmryD zEEJb5^dz}_nie-cju_J6uJV+H05Qfb4|e>`2_bC4L8D=)GE7-XRm^$r3~|KVTq zKm3#Zhks)b{)gj1_>cJy|1l#3tw`KqSm!zfv`IS>r3d4`VJd!Ppeg(sg>~Y}zPlTH zXeL$N!mrwA%04~iIFm)q`wA0Y5X7E8yk3H}Xd7{4r9!loy1)3o01(6BZ?Oj&?io09 zf067T>ynVjkhgb384loY?C){4kJX0gIQ`8B9h?_3n1_s479U@nqcopa+W%#DQlzO4 zhDNuWFy1Mubz3cC#`HfJO9 zi0~wU=ks)ph2V2u1**ZbGL%WKe!F*bUCCWcqip3qm~GO8}UAXGTN z@Mze;nE4s0i|!m7(O{2gu#)~eZieBr1rpCCCVis2-!d)efXqpe)gj@Sakne$2ty=W zA|%ak<+R|pV-^M9+)W^Bzb^N1l8s_d7ed9|74pVm3^URdvVv}hwT+hA^Wi(jnHWk0 zVS85^gzfDS5Vo(#L1absA6ZfTM^=hfnwFUd8ng&V`^;nHK8z#EuS~^RsfH)gPW`1{ zs9@9pJjhk?KlBL%y1vE>yiwkqS5Oo&S5JHJrMizp-Rwpu|GX23_I~`9AYF)0eUCTy zx~ap9*F*eShbS5Qc$uKzlyok$Mk6@#(P6_`t2gGhc(CPq_{qT)8ZXNkG=lU{H-cpL zxfi;Xb-0Dz8)k_tlYu}6E>UM#kg=G{d{f>E3**qyGh7zb$B0+uWR7E)7YP{}_pLd185|6xJ_u6rShF z#<4;uZk{2bUgMj%R#U0HGP3UB)&Rxq!=VC`9*wJO0t>i`M9Qr=T56?DRWd9?WOiIc&LD|cia`>kCW0hNWd%tz4wA@7 z0VI*}BuJv3j2utH)L+~&`slCe&d&X5!YW>O|tNB=U7#`6l9Rc|tu5k(R_+F0s~wZz@w3o&S-W zRvd`jq~k#3MkNIzH{t)tP53`@3*1Yh|M^w;h6zH$_U7oGWWunv?NT)DD=X-VW@WC( zx59phhbw^TI<4&pRZjINkpRb19E{~2FH7rad`I7dRzMI#8=XdCIeP-9ECnVnf)>GC zLcjG0tX%HGF-}~UuAu0bo6`hp>*J=7*I4KXdmxTAy+QRcK?Rian@W)cf^Bft8EN|V z?ff#*NMqQG^P)VBl~%aZ1avgWvyA`eSxih^0e)1Y|6B_*$hCO<=UN>8b1l=o3rPz! z+;WiR4J6#j%>E2=`<>)H-{uH^1g!-zM-{M=sW9i+j^OT*g3!phY@fYk^p~pL3?Yy8 zmZHdrG#izyo1Ngj!ww|*1 zFkm=vy)u|6^DgM&X+mi0Nn@qOF9*R`K#R)#XxLz(#>sZA6(^I|0L(~8OHau79g{(u za&Yi{E+ud`_?}Whe>PV)o#ff~5~^_N<=68Ef*Bpeb*96`sBcO{Z{hE0r=%neVqIhn zY8G*}Y#5ZeA7Fc%)sx=-z$ah9J+_1F<*F%;2JsmSQdop>Ui_Yx@d*mAlK^ov&qUHv zUOgfH?_ULsIJ#UU+pXx<=tIykahaS3Y(&-|J)_t`dj4Vu>DdR;ljPrjO#1IXJk^;0tXWf8Ey)9*VZlPST@=}k#RJ)!&9r*LOh3^1 zK1*El6Q2Ph7^qSm!giEJUS7nXUMrgpz@uB7cinh#g>(UI`&R zF)~fJBYkrB-eW;FaIfCYDdRe*#JWta|0V=EYw-cR&R?P1_IX9c6RTPjBa-+RZ2y~0 zjhR1ucR=srI8XD{3=%Ky6>78G8dgOxQ(@Oq8KRl7(IFz4g{8lVdI`D&WrrHX?VT-X zcN&w#d1fw{6DOE;$ail(42+SIuwk2!T-#v3hyBfwv`(l0{XspJ{4MqP2UQzJp;g$% zn1c&Iz@C6AcKR6_I9GQ<2%TZpWcW>C3Ogxa?iV69WbrY<%XhBhLG_J-!q@siqwlhw z(1KgR8N&==^r4m^b4Yicck6y9JFV&AT&XF|5Zma7N3Fs96iXEhRpRbN81rZpi8Xlr zd+1JA=%|;?^|<)`qdXgp=0&OkH49HZ_vuFf)~Baeh!P?1^8i7(R`wT&ttmqs{3Rb1 z*JpOnBiFMT$W}vOCil}?ay_r}P+@p3$`HiigXORY)6&T}KanPGuIu<-hx}mcGX<4k| z@lWZ%2cC#lj7*Vh4?L|Iat52FZSxjuWu~K_TL66?Ma_Oy~kbq=jt!M3>W|d7!UoqxpwviiiN36gw z<}2Qhdj>${_a$!yADdB&2D%b5LF!29HOjF2)#u06lW#Kku6K1OoM8zpV;m?=sQ-Mp(*%(M$SF6Tg9CTnuMlnffLUrYH%Q7 zcRC=45mH643t}nL1a3s~O<^E#p)n=p%qbP?e z-{byG7hb1L{1N38m9KQ0DmzvZM3x?EARO|If^f)}2ErjBh%B%Ff~<3G0m9*yvb@Oo zDj(X5Mp+1b&O%N}_m7Sz&oUy=#oFa}mW+Qk{ zjw(}k7&kbM9z8f5P7?qKOt@ObzupuazB!CW3cq=bI?Ha1e%RN(OUJwkKYU6iXZb7wJ5&`xDV+f@ zmylJCHKLYD1U_PxnVC11*$un$``-7*6xPMgX9C-0;&^ec58`BDmYme6Wc;5!VwN+l z%HuH`n&btOSsBYp+O{kE5vLuRi5{PVdh^m^|ND3pN6L0DDs{?c73w!|7Ix16UF*KC zJ!bcV6MlV4(_)!1k1nEs&>w|3+`3)}48jr979ro^9CX=y7VMkFT-RmpAR^y2R}PV0 zy^vEM=ya-(Bhkn^&7!Lem(&Zb$WfDU1}Le<$xtdOl?LEKGuVK0|DKoMQc{zTQ%Yn| zWmltNg`t?wvMmT1Y;>^At-!pt+ncOp3-e~@ve}F?C_Jg+3TE;_-5Y4{~Lm|(ka}qFyIFz!bYh`jtHmhH-v)42nYDZ?Dwced>3+z@5m}O=cN#~ zn9L#y7OJXc(=(Dr#FzDBsb2{?Rypc}c*t0hmyC`P!$nvCVX&HEY(RKRdt?xX7OW(- zP+ZgymlckjfYpln`*-jWRWZxP2KIEfn^aep3qkBr>L@URK1wJ10DB!5i#J))i7jeyG&3;}I?`XPw**UtNoJYs^^D)Q>GaC8HjKx$vn30Z_Av-=`4S?l>a}mTR<}`zr3MF)G6p`Gj`?fS3vXu z=W~|^fK52^8LE;+y_wgp2TvsJ*;X$gjU~|&(>&sP+}nbpVEaCT-R1js_;%LkU#sseFXYZB;y(RY|~cB^k+C<*K1JHF5=)W5`&kJk1AD1&4|GF0kvW-6^ z06V?|xSOq~vGZ>N(tb*B_ICPD0^*JYzOEUab+Gm#DIv0hMaIVx^_V}PWbgBqNAX)` zxR7jG#q1^We`z$4{LP783n5-lt3_j=&aLn!pr+3CokPM*pJCsgS8ccW(TeKn8`v2R zq+?A;4O}3^n4se|$-<;m9w5Y!$I+NmF{icl|7cI%`i^xD9A#K!eAjO8*%ska@CfQl za{!fVLt9oGdLk#OdpOtLkpS1GvH$DAbNx>bo|A?1e`kp&^sMa(TH@aYx_fV$GXDolIs{_|gwk4@Old2uelK*(EJ*g)8ZP%1Gfmn?^-F~)O+DU(- z7Oy^#$K~lvs^Iq?JY2{ZPn8!*#c8kb5(~WDV*#>{;xCC*|6DbO(Cl5z%elFMN62+e zJ@{*}qGG`IWic{wQUC2wNZBP>pzsu&XGLzr=QD`QGpX~%)=O>3;Ra3cDTWYgxhzpo z{%@nIS8ZWU9W9?tNqnWV@>KmjP1<0a0?qQIz^-v|f4<*zCX!u<((_c&+hN0+;D>SG ziH{3H$8!}^r^knFHC1lp({@0ais@&j4>0|5_Xq310eF#n?JJ%$ z9}VkcQpkp6IL^WdojT5{4+W$j%Xxf&m%hkN%2qp(#bZXT^q-^XU6YD(n`f%JYM=fE zoP=VY2rAQ9DmbOmh03X&Puq8YRClf}<_G$2UB+Je7&Jl<9#$)09QS!XzQt;y#i zssJk)>udE!7b>5ITKjHI>A$G@_iOrtiw7GSLn)0V(mbH`t0;E#h9jYUQ@@zxwIW8T z==l?m>2TkLjqYTl9)E=8QQ|<%qQUfnM)Cj1EW!uI%hAD<(o{eSFVAKQO^+t8AWVoPFppgqD5hwfa=JUVN zc5D(>&Mn|?T-`qmr^}uFQkJ!M(hIzNDw2Vql+YncL*YuW6gOZmY=EKHZAAmqUFIaN zCRYpZ_PSsqb8xnwBvUG~{8NV$fM|78g*30kd_%nwbruDyn8UCFyJC}}u**himj+PT z34HM~1LOBb_p;o2GWf8Zc4nc(LD9|SB$%)W zp<3fy5+l56(G5eaG^w4=aR>0w-KjSMN8>THC4K`@f9JmzOu;9z$+75JYXU}-uan=F z;VVF9Yy8h_njo`HFM!PU6J$1@1(4Yc{xh4QFtfdXb!v#c3V9O*n@+eTiuSQq=A|#; z1qFh{<1nTq+W({LE5oY(f^H?G1SFO2?(XiC4nb+8yAe2aOLzR~l5V6^x?5@K?vA^8 z@B86?xnF>1KXCT^X4b4(Gn}*cZ&(Dq|Mv1Qe;e@UJzZ~oMtHWDWj4mfjgxv5fkRdN z852&A1?yBQNj$a&=`J3X z)(_<79im4_eSHX*sfjr#Vc9xuY<1I#Io?fd$l;02HF&AM@q3l%2|FE z)_ssNm3Q-3p?`qGNerYjR3Cpb#j!aa^}s36L(}_45DPm!Y=ax1N^ zULFszEgrh|U9-#!YTQJ?9=pe8P3p|&v?93C)mlq=t$RKB=aqM=TYJL#XAr$}vuB7` zmSvVjv(+7U(FTU3rvznUhk=U*gw0tsaMp8Ktn#l)<$+Wn{z9xSx)1=i`zx@S0kFGY zf!zv#efkP)uUB9%<@+(!sx8q>B_PR7o)KVNsQzpdJp!M$z#?|Iz_x_7*>gwDoGX=} zWMmyzo)G4F%<4&SYrR9S*Phf(GpvCboedP~h<||@J+8ov9?b_P#tSxU+9b+7F|JFT z6mR4JI&8OB|42J1&Skmx{%1KTe8x~yp*Zj6^)xU~-~Qj(RaE84o#*I0F?H5B^{P(> zWJ&3zU@HGML`Q*EJ5iUFGtQz<9qgGx2lgz~S>!hO2_C%!>}hNX_B59J_38IvGdJ8y zg#5KeD_$#>inO+Qb`L|#RY{YGgQQf(Lb~(ROG&XWJ9l+Wa~<;Ib%OI)$Hi42E$$b{ z=6J`ygUZ`6{e=e=6dc6Aj`Ri)DYkOo5`X{}fBiHXReS+b&8&s+KdHFB$*u1?1G&vV-9JCr~jJ0y-Usy*Oui_op zRZ~9+SyaVhX7T;y9274p#^Ajl(QOis+_u}i{UK*i30LSV+l-w80oXRs1lS${*oLYF z*k%FP?koe?W_iUnOVD1zxR3ikI_Z)h*8DaE`Q(YeS#=c6x6l~Ve~ly9n0^%&k>_*y zSNq>tM30k`@L1F*e3v3qS8x0%4AziUieLMSZ>h-V7^18pCgm+8;v#`}XhY(r@Pr4+ zYcR}Kbr8YU;L#JpSpyB3KJ0LQ0mraEAshU;xwj}5gD?My_pO}myze1=wh=O^?c~%y zxgBHN6LkLwyGs7=x$dpPD!HwKa(k9h8c0TwqMd+?;QV_i|1pH!5-~ zg7nZD-BOa?6K%~0kqlt0LBD-zSzE>IlQ@;^8dkShca;_1;IvHkrs&K|BTHu*{3|g{ z6?=A|rc?VITlwN3XFDl;u_J7sp`=BRPQWl+j$ueKO@|JMG!X#+Dh{Fi5T8O!wpf)6 z6u{49uZRj;Go8n`F*?GjXUS`bf=tFL9N?4}*11L|F)mv~Hq_YR`}0jJACnru+SNf2JwlHACQ$ZP|cTep?h{4-WH-u?i0jmb_fJrB-qEl&_*N zEz5rrWXKBQFa=}~w;%q6KYv$si(zq1$5`Ay&00)Zj>p%XK$Iz?kQIu`c_4U$bsNQL zQ#u5RjLV49z+8KEjGw(Kf;Y(ybzpY~lPM*XMO_<8O{G=RvVCN=9Q+w36@Kv}O0eD6 zY$@|9kE`B@Rs*Lu@* zzOix2lv4Y@IwE67+aSEr=!B}wCi7JVp{RT3w$n-r-&m{#uYO1J{}bRU@Jzq?@J2<< z*sg0$v%P=x3%~S{?Z(%+z<9KU<$^%>I+)|zZM8jX>RwFILA@Xgg^+DU#5scJ2&DU8 zMEGN$%LQ+}#^(9k+jkC7SVdI(PUD6pqmZe=RrIRjxrc5$aXS#wlD}EiiKk@{B7F8Q zCjBi&Kf?)+_AXj<*0T+&ZLm>6ey%GkT9n(<=r+gOo13nZ5XgxocIW)}Fx+hj80j7S z7XQJyAv`i{ho2Gt8SNe&`U8qQTC#e ztk{mFL81T$P+`E3vwn&laFkgrmr1Dl)JWz4bXhNuWwF{omQeseh!_D`76xRQ)CQ1c z(qz@TCOf}4Ww6c=^HL^~FE__eZCBq=n9=CvG%`2p7-6uMXrfkcjU;8MeR{BY)!eRl5lG7mA25%>NT=Otl+@ns+6|GP!swT}vjaH|JZ5wr&6lMEkFfgsaZq`E&BtunEOStd)L9f5(#O z?=>yFC;LzGjlr6*excl9qpBDO&|yE+<9a0tgB24>?9u`Zs7&x!zbIKy1{2pg6C-oi zR`#F5h`HdbbUsNU+ntPlMou^9`{a;Xqr3WY7j6u*k(kO(| zD50twtyz1WRg9gUx&xZS^lD^BW8k&HnOeFzL)#L)_)Z_x1Dg!h%6#hz6;jc7B@BfWQOw)ZJ{Gq>Q z(6Q20%_O$b+T@H zgjv%i!yv$66lMGUUNOIs%D1*+;i5Qe;X*r%A4biC{uq?irczK=-2e-Ae+6ZA2?#3( zEl^gMUWL`t=gGI}#&{W>kfn=ovrIFBkC#!E%y(n-&kFy2s;quglSJbA6$AZA@Do%~ zeVF#*eO~JF?K}VCgbK!g8T;bKJL|f(pXbU?XR9h3yWPO^tiC>vE=ZVLkTAY>;Bnet zALr!taVn#}hVm|T%bNG-MwRC+adht>Sun#APEuT$p+c5>k_-;%5>&c`2u9YG1jwH{ zYt=?nN~Jsep;}xnqfKit>P|wmM(8DmO;OeAqz#3mZr=Sypr|=xCBw&O z@MV9a@>V1`UHVNoTyLI{hz=CJJjDN;+}WxO0cQN;bo{B6(T-7vw`|OPhF5YU*K&?) zFd6kmvGq{A_Ddb%0W{aPW*P8EwVt8{Y2S>g4LRzf8(NiOBVVb4bCtsr-XMQgbLqIoWEo z*gtVQ7_b_y|FtS0G+?s!6Y+#lUWSlC5PlKTx}5)s{0Sk#)mWy;`{{tlrWERj6V8pC zKfh&7NpWNJhV%))*H@y%Y_NC3*$o?Ai`WZP$DjGtI=AOn)%03h@T+=q0N^FCx$5*B=z+nrP4i?bjs03;tZ z1pz$sV+w>ZuZ}{UR}Rp;fE*y2M;e#r__nd!3B3G!LN+H}1Y5l=6}*?|l-YB)lrY*d zoN2}DREeHv$>_d<{*4){z%Ga8vVm$Y8H`|rn}H$oCJ4JM(KqUn#@&|=Y3t>aPrRxt zs;U>4d(!up-|wAWhoUqiV&DfIgduEuJ;X{`1uh3}UV{G)Q1nYk_Yw&|=Ps|0^DM5p zX8ih=SWw0Pb?fb|{e`2W+WE0_P&Vmfi{tufN4~URoYH;Is!DNgp~_>PrWDS?p{{AK zOreI9x|$9>`B2g^1v%&-214VM3nGhmo@*i(07BWi>Av9v!b)Nl;I2!HK!md@Ik92G zrQGZt&(PVvzN4j<#iwyQjA@}aQMNct9DJS=A`I;E|3Hlw=|OUP8f!GHp#D!T-skc= z!|#*Rh?P%1I9x5pxoNC7-&T9sLIP z_aME$cpB1Wy~v7#tLB@qbytu$NtS|y;$$JY)70)ls%97xxt52*6g4p8MO{vvI1 z4_Rw5VF41?;r|=E|6k~4_g*AX^-t^G(N{r{Z4zRk&10OWS$>R9PZ{Hz7EUG3LBY}K z?j`k<@0G@aWbyp^xwU8R>&Y6=NHaI$?~VaF+yM-vjZQDUze_|ij#)~B<7SH+Ko zevqggUnSdUWCIjRJ-}PFCLr9h*TInvAY3Z|x8HwW2S;gWiVPP5II$k3X!JL9%RamsV$7;*2h-z`5DyayZ8(H8kEh2*RuHl zeA3kp%H|;`n^mt9g2UIcc__K-Jg|q|5GXG`M8X+{2Mds2r z!ugW7P^xM{@9mJQB$8Ln`j7-Chq+RR`f9VmfB<&n_!!<<%0=xAs+AP~V%q>G~ zgN-^-X6nSMhK7BCviFCCb#UMwvXC+#@r`_qTKOk$rIB*QwF>CJx4Nc%A_W@iGZ;Gb zwBg^5DQLi?Y9P%2Q$b4cx5t`Ua#MC(z9Yu>H8Ze`nrm-vfcG1Frrc`D?x}pW%G(_4Vd{jpyBqvg-tplEh^iPBpt8u zgy^GUjh-3lO?1W73EhXsFA6Euk~AI}z?d46*uMP(bh0_H6}lWK0}(5rlk0#^o&aqP za^0&=<|yUIudQ6-XE5E(Kou2Qqp2#J6jiOb7);x=RQOOZl1GCp92VyQQIZ^#xjGGk zTAU0yx?dlFc)%#ZPgrvj5Fx!~XfC2m>vgjN6wnFJIf<_suA0#FD#xU$()0#L}m()8j_2`ZV>yyg8^lG0;V z$fOS#7eZ8B-=sqz5_qUA_PmrC!>r^wh`m9zrLn%3rxScZ10ViMJ9RMmH!~~esrd@1 z%1Dtg)ToCsoyUYotYO$iDV_hfPFj@~CqlQ2H_qa%84yfsuQOR5 zFf;P41v8^DpqB!iKsZWu8Toe}cCm!~H8-6I{Brpr&m&a@3j7^poDqWWF%aT-CPiux zqb<$)+>&X=sP8ZwFuJuTHs|{LuZL1@6#l8p&>d6NulEjkT?iuiJ6wD4+=>%Kk}dA6 zXP*&vFsB*wvnZqxI3Ii;?{%`q^`If9Gh{SGwGFxg(V7F%>TU+ns!&Z4lxu!(c&b3=fZ0C@n57tkYCa zU|g0}2l^Zh8|XU~6%bFAYS5HR28DjrF*Z}_>e@@Io}#xiFjYU~4wx$>3}p}!uu^&d zBkBvBcn#@)h`af`vNTN#W}>N5JnKA4e&tNO2(;z*FQQK0`+QnSB^gB^*B@eo4(TPE z{Lh~j1Bt1nv5eF>$Vlr9^(`hmx~w0{3*6$34XvZ?kdowTf;ZB7PlMS9A|JZNogQfZ z6LVDVS@ZPj&k{b}VSn}-%Q_Kx;AD-Nzmuz;6zN(o+XyEsL$?&k)~rzZZ;1x` z^`PmZi6alMZq7T+IEi5O_ZUKZ(|S%2Q?%WyT(QycPQ%DTZE;Ny0n|2n)_S~BPn zh2A_9 z|7XT~z;4!(@>N6BFzCAwqUh+(i$OO{^+JLno+D|V>r?gm$N0dk1xH2&;r>?f!qsH& zLVf1ggOyK?%lu<54rc?y!{ zef&cd(O^98fl5X+jp`kE{W~hdFmUVquF+ycWSM+mIjdRZ&zP)toF-D{{xp{yZS=Df z2F45gM_#S}{a7y>dvf(D4i*dt3tRH~2@);jt5q~%zr$07e)RuIufODHMa9n#W|iZ; zi*`cjzY@&O6_C#kudfzwPlzEGgZk4hvCmVKdvNPZsob6{a~W-37l_Ns;>c$Th5a_3 zkel)I6lC5DHDLzsC+E59@~z$W<8Yc6@bg{H zGYj1v4jYV5x$&Bf>3L-lO_vxe=I*IRKuT&qR*tpv!g@b5NO;^nKc=c)+Xrpn^=;j; zmyE7oT$nKt9Z!W}hJ43rRG0DmZwyTAg&-fw9Yc2Z)Zu&tv2SJ6h>Qm z@P+hF&p3&vOI7aUS8>X=m?tjdI3!32_inrdkoUfpqgGC(CVEXe+7w_vy3-NaL(cFd z?`zBj<{4yuy2xB9=pP|_mm8n&-P*ct1xF{>zMPDAc%QXk8s9{G?AP|y3F@dP=8NYVCtx=97b4;A?Uze*g*j3nmDE&{OnD_@U zE3dlZ_>=jeO^^TYG-YzUzx)QcKhpV~MM>z{VNGj9xG2t%Q8ov5!x-4}iXg0+&yb#e z`gZ@8O2k^a!Jm~fnv=$RDYkDv81210EV{(iA)+hJv>_qO56q+{Tz&9Wd;Bg`g3cXz z*BI$>4|||JC)MQ}CE^hnlNdAPzs0{GO|PIPu1oCdy9dlE1m^VA0drW6YRpbF#U(hVV&)4OwJK|}cj`Z?}unag=Hak7+zH%@SU+!Wk&V?^t>l$ zHaCH0`rS3SFb?}IusKzPzr0>yO~vKL5PI2$hs{qq@J~u-Fsil*^k4o<1WcAa$qh#` z&M12WXkpE?19TTnu}lqi7cL2S!n8hSY%LlLP2KfG`Plq2ENHXcoF)N*?%2B z4?gvD)IJSCb}M%|P@lIO^obsHTh8kqom5aKZy8<)WZ|?8DWVPOYKrr64!>b2b^FKF zspEKIk&|ExTqUr;(IyeAOj?N&P!RXIE5yORK;)%Iona$lQk*BtH1v|m+?{UO5S2B* z6PC8=)o$;fO(OE$eh7&^Wzh>70vBjY748atOH3ky;3|HC=5wGUQeMhyl05s+oyuWI z^JfbFgLBxz+i=}4BWBDhOW-sgK$-9G4B{qEAxsE{%y6+Nja~5!feX{$>OA6j2T~~No?!-l zi8=iEg+D0OhdE(=;g=brC>g6Lxy8pk)Jr|h4&mAtxEp-)P7OWULucodD9NI=4;C%E z0Z+$4Gm3O-dht7!R+D=GJI0utCX$wpNBG2gx6g2jI6Eh1SFfy6 z6tTL#!8yjH5<}vKztax)`@$#mQ{X-6AK-S0gZ*RJNx(;F<%pbOb-?SS&A-Gy_EsW_ zPYKjMqFC^yZl0Konwqjz^#@`LTqGVs#@Dpl`Tnyie0dq^C%$vQ9aB`Q z8dZB<#_H9X!PWx#qNztBu&S=40c*GXPxEYUoWq%U7s^69!i|2HQ{n6>I}70o63`Ap zIx!DIdI>@*qK|0_>kUF0-~&SHtM@>L<0^)136%nu=x$l794JE zx)_%Bq;XgvHcBR>C}>f%zw2Xv^~;2F^zxhf>kvo$LnCXp(WfoK!Gn zPG&uf)L@G8myLeKdCt}?j-~%500K;W1}1jt0}~;q05MPyVB_PfjnA((KF@T?neBwo zU{X~%#+j_>LWgG1x{0#wlIcf$7IfAlcpe~DnEF79vr~%)18A#p{HX;C&z;Mxvy0nKIVfwpWTMdiFUE?8u5N7w*3C0>|<; z3WrLL+CuoE^n|%I|GUaPFH24|6BJLHO|(7i`;z^WXso55l-OXh=QV3twh8~^DV0_ zn-nS2M1Ih`Su#=lRza>0NDW8M08rdn7U0eBN~~XAjV{mNBj5 zq`=Hh8A)*@c_X(5Ut~bR{z6D1|4Lwh-8X&WFj;t_Vt^jh)#Gf!S*glpX1~P#0Rh1OHsuEBV{F8tT&;eQr zmoc3m;w%c6#*-35h?FZx`gS^A;2h<5^Wek;1D!(Dz)TE3n$@)Al$6F4d=`wE)>|`Y zuIM9I-`vV<_ik7T+mOT1v2A@i?NB4z-Otcch=gwERg~W`=LBnRZ0zs8Yn!X_bhUze zpX17D=BvzZ^1J|5pM%U((F2*601{8s<2CcPUb*@lWS;N&Wx1y5d;eX8tq(NO+GNPa z%3JsuZGDRq`Pj&9ZerI z9IwA=(n_R!GP{$#*2O@;bNLr{ri;~RN|+q36`Gc}%Kl;L&B$bD;;P6n_bsH;`P#RZ zKjUlO?ZgNfR@v1PgAv)xI2p*+Z|DH3M(BVQwIvjbVWQ0i330(9YA5d5J15e)b1t=0EHzWYTr)E z9WhGv!-j_r{yC~^Kle<^XK48?4_gubIr1msBK5jaLO7kFztON!oaRAbS^C>)0qh!~ ziTCKUdm+$1p&2hc-9b;OB)5tmqR<}s#0aEl)@4dyAs-`Hl{>|)=||$!y39f&{ZY-5fj2F$updJ9zQ}^ga#`e6tM$e6s-qd~+)TeDnU*H^jg< z@4Q47x>6?_$rAP``ts&Q_ZgJ?mh@?ryfJy&#T~SQ>{gS$TL=-Lb{H`~oh;bBL_uDd zS+|>xjS0Lt7lPjfsf!I}9=2SZIyIf8^E7{ZRJQI|)FC(R*ZGT8g9hqZjI{*M?f!Tx8=Zm$Z2a6 zR}%j#!QRBuY$^ebL*+)tuNcTm4_Rj%)5{g{a*JzbrjhyaL<#F}MpC;R|3-Vjnmc}R zpipF3TuYlhjq!sdh2*Gf1qb^}^`>t2$GRsRjO0jtVvKctlf5r_xW2q{KLVSnls|H+63`uIx z>A9-D*7k!T;j-}X)aB>$SNvVjZ*uwPDU>vE4iy!yL|L9q8nh-~|H_!3? zdVAq#rGOMu<-Ox$bB$wsUa*5U*KWua$oaWf>E8@;zUmlA{{xWoWv|kIE}j39qpS_D zHG;fs@J<-wPN6bLs}U0+O8U^fS>ettNG7XAh@JuG-4-67?7ad-G(S5v7Ggn5d(d#_ zLjU`V6=?W$GnPjjB}4BvwZwPkLhT?%&SR5O9}~ac|MX<*SYe7}OoF;s;YZ(>wqY-y zEiMOA)bjh^s_X`;nb1GisM=CTK#Bg)p$;LDo`A$ftEN3zk{s$IpvY7xx~>iA^{bG$ zskZxQMIH7FcgP=O*U|b?eNR%8;0*PkTZ{S1Ly4NDV5t z>lBFQArQSpHwTVlR39jV4Qh*q7+^ceQn;-4jsJX%mdSQJqeL2eIN~Z9van~ACLA<= z@NkwS#Qjkp1xmQqe4x0V5hqm|4FAydjnTrc2mGUuhdGX+#zW;M8GS!RkCKudO}jJ zdyhf5JEHUgOI|4RNuto04gR0QczY-jE*Xb+ds12reQf+QJP+^Fo1RnCt^TX#=H!(* zKwq+n&-x9*9UJ7(TdRq^kpv6eQWx8&2-Lf^aVw9w-mGz)XaBv?!C3{88902zb6akO$jsdj95-eaS3QJ@W z3UXOELC@_yuk)er6ITF;zn=$ei82p-*i%n6!}A4T+@s0%cw!n_^;T4d8%f6TP^Wu1q72BqIs$7=nyxcQ;8x&=j=M~G|& zt{;W43Zegq&=VtyuTa$N2|+q!;5eBD%d1#bYDXh5eNij`?*_$`p326BqrwD2W8DFF zVfsma6NXt9&ba@GKq$LO$|0x?&({8We}U*db15TP1=MQ2ZLnMvQdMB4$)#>DnH=4U z!UNA%r0FznI%VmRlG+)j8K?Jn_$KztOL+8+*JBRuy`SRr(*U#cz2B;wCFgNz^D*qh z*fo7IXm|bFe;p;WcGS}=(L_S%sN!7FSQYN-Y8&-ehH*T&ojkt`8Kpn%*Ca2~V`yAsVJ=0mw) zS;LcdI>J>zIcP2FW6BGT0)pn zoQ~bu?{tAHe~DWZ4BTx==^uDkT>g8$(X@blzfkV?CNpZm3L%M>{>iA<7`8`+&`Fu2`2`&!Ocu*dW?Z>S#j zcI(J<_T@%cDZO0Q6O{V;Oc2ND-KE*HDfaH(k=*7~1voGx$8+0Fp{1J|7kR}xpA|

    c|zlvr}_*T!KpMN#V8WrcwoxiE8R^a8TGxAYSTg*UcUa+S@-0rR8`DaeWF8+-V_c zc^4CAqPJhwy{(gC7e>%EgijXmURF!)@!-yVGL!=E9acb&je#aL@B$Fl;W zqc>lK9iq)AFCiG8<;)su+2ae_n8#qOS3bu_OIxqd zMXFezC~qqCd;Bfd#qt<#PS(iQ9rI|$*dPrXAqc@-00$0Br)Uj)t;i3EXVS&;y4Qp$ zUwfbN+~GLP>e|4Gz@`>2*nVNSraL#jl_->W7q%J}Vs~9M zU!!ASMA8TA4FjmTYf$juOsDmpqyL;fpWqc41k)E14hbtuOnq{ zpuYc&kV@T4@oUEts=D83L@aADy6T(amc=8jRP^%IKu*@QILT*(qtY$PiTVMv;PnF# z{B}?*b|7eU>pbUKS;{F&)HZ{&k|xyTjMjKJZTF&`iEtG?3jys=zaA;K>ZLL0bU_N-K^zXe*Gd zk0BG&I5PS1M1n@0kvQ&!ywpycm$9<{?1=l2TnC?31VEMT18#}l0Dt^r1Gpux2~^qe z*D8wz`qSw=?cuJw$v*KvY~dCDq|*$WOIH6(G`03xE^t8`f4`pnpOdEULPt*<)$n?_gCeZIwpo` zfF(_L3AKkC*E~5~Dv18vwl%VUq)=>*H&N%5Hs@58pY`@s7%|B?jDUK4Dnm&1{_-0= zehiD{b*&%JZusUvyP>>lHL`+bT+F>^#N{Ia5mhueR)BP%3*;!_7 z;Y@o1-mkqWy2f`g?NC8F8`1r;n(h8$quIKqT+omQ(e03Pv%BA`+ah9hd~x#@MO3)H zCB42y(}G1V-V+j({&?{?&}!wCW*B@1wZid9O;jO_s|*1ujOVH8@88k7V>E(B1B!;k zDCm_6VQJNlo5NM1yJox4BX#KO1)miT^!**hSKtdtx!F`C(j}H-@EtsSPc02!J-koWM#uyCL$9dyB&(L!i0l>d6yQ;+`pqtULdF6| zD5wka<*U}7Jl+{Kxx#5m1G>7${ko3i}6swA#BQb@Um(-hdw*ks=dfg8Y ze0E&vKm2zkliw7`>@s>08;YC6y8K9!X1yDv1m9(k4apne>QtP5LPL1)qS(~fkBpHT z@Q-n`Sh$lNXgv4pAW|W`MImu1&@3GS$eS7H`?1hB|LS}YPTR5k9IGR4m$}v?h8Df7xmIBZ0o+S zMSN?vG%zYXA+2IwK!2_*aJ5|{x_05nQK06nnfgJic* z_|6S0Oy!_F`gyP*;H(8w1xhEp6=Om71P~V6$YyfH}>Ky2xh{`}0cWL0_8v0Kx zA})f;vVq7YCEfh{gUgvJ>B-;vgxF34ajW$hZ&;6dl4O}@!Gz40@O7b6`Rtq}*_4YX@!ezho^j&=bc=|!(p~@DFq>cAv&Eq&I|PB-(AZdc zlJ?PQQMi$q6-;f-oXtsC**KC(Gr+Cr1zMv2_oMx^&d@(7;^Gi+K6CiFz4hmaXps6K z#Yck#>uSI+;`t!txM8#;M>A>teCk9b8J^#JqkEJlXX%pAyX<2%^{sP)c^V7Gm0`ESm%TTlm=R*^@^R1sLyTcK?y7jRZ)I!$@YNPAer1QmeV8A~ zH>;x3m^PQKx9^+MAyu3w{VfNl2K!l%YD+yGz5u!;-HPE&N>Bw%T$63#P@fA@SdNu@ zdD+$*M4`Yh@WlR#BL2}U;DQp?KHG9e)q;@Q}Gin@>$`M%|<0`YPVU0q>H7~y-nY&qL zoVe9Ap}?U2=|MI5SE0`s3arvpJe*zrC2ka6f+%utt4zdkl~BzKT){jp z3mKr}OSKn#v`GJG5f4dy+c@gmcCAsb?|X%u6noSh>Gx}=ixGip&{!31iD&$`sC|Jz z3v5?`Y5Ewc{d^j>n?16C{9K9XDa|j~_{lR}sVb^WvkFe__)p{kq_AD(X5>_?_L9@8 zRa9+NZte&Sa=4fz2>&t0kC3>}5G?(78J8MBi9TnorGl*BY8e2bj187u$YY)V?>k}= ztTneAYEodLQ&v~pY43EnRdq``Rlb21=9lbng>faYR$>PDy zXgJ4RC|su>X}cgJekuW5aMeqlIswa(N|{U2EKavbFg-tlRXE-wa?!Nobp;2Ygja3| zgdC@=zN>KU8eD+C;LYABjR0l!WGAQPS5_1xm`ji z-8{E^%di!U0TBKqDzeMH}AW_ppMO ziRa*!T;8TSPENOi#XqTT+x2v75&BMeGw-H%`MZ|>GdZ2MZ$jM^fdkLDJr8?++H(5W z+J|G6={d_HSH(=%MmyK#_2^Z>`;TAj)|8GiDl=tU3>0lLm)ksV5GoJ&`s&o|8v~@@ zw?O8jpNonXW>BNE1#*lJQ%1&_)0cT4518#sWgTw(Y`sFb*%ybGmB@c?B?v7}sq+&m z=~^aMdb45LJYgx~dzIJInPs7r%#F7Bu(*W!_$xnGjS}k(J%#8~?ekISPozUU&vpm1 z^8WVmdDyuz>zye441fx6N7X#h%Q*3=NPx^e^s5}~Up-elRy6+}(rk2}R5yF*C;h!I z_(i>>*-wspR#%AsbkPQ~omc9!!2k8B&h6(t9FdKf3+hWlnr*{RzNj(htMF3tmy@*d z(`4`B=Sqjs=W1KL*8kL9q$!v1*1kgebi4FVmKh2 z;@>^RLiS(o4m-_GJ8)cFM3w#-4{=?7vkwMuf^(FyifA-H`YB(rc9x=WwYYM-e-r?~!0&ytY&bipNWYym%C-Jzb)wxNX6Hx2MEB^cS@}m4joF7}=4Upj z06TqwZ0X1f8^=CR6B4zb(!B{u`?0N%0{p#L)$1!y3TlcOa>wKGgV@ zcty4{8RZ1beK&M$uG{!TYQp%&=i18 z<@feiG7?lx_jkWi7r4GGeAW_t>y%q<9zt_6NCy?MCC}3Hg+zDAoNWOaU%Rm0#`&g$ zzGCGcOtmK*M*uu03J1&|FleP67RQyF-B&j#Norr${|D$et4Tz{}E+%>U44VISB`k?fv@3 zTP>|NzmU0kc57w~KUK9bipXv=n1yQMNmQ)&T0#YXO4WZNNSPpE`(;dtN!m|M*{QVn?JIX$#f_Gc!c3>bIgl^}#HKyWtRF?J!N_Ao4)ae7BUsrYdNX?yzyZajP#w2BT z=I#T#SJ4>(( z;y&5W!n?0F>_>xnh1ezb=sa6B56=Bd8S zLMw&*Q|`UEp_-Bxnf-6s@hZ49dV$5mydVGiTau9@iCQ>B7VMfbqT7s41v0{zjhdo2 zKjYyd<;!wq*%49fU)8HN0AK;;?@4zYsijQFdX4O8q3~Kn*KR1eY-+c zi;2458dLpTgA(xC*;W3C#y7L)=h94)@by*jIM#+pRB$OUx{rpz6CHt zs3GyO7C;KJhr#B%a*Oi;Ow<&xnPBs5U9frfbh~CrL=hfiqH5oNO{%nn0|{~^DO0Mn zqq@zp2}w1T$x|6I%5qyvS;vwxh=)Qx@gwRDg<{tmHdgfXCVo4fTIg{I2{fc;>tgC_T%GqLUscuEZujUQimD*A< zYjv(eLdIDFm{iqK(!x4*r%gaLP6;)Y^8_HA+cAKfoXP;!M<*9_LYUrIF~CC%pjM(< z7nR9aEUq^Ps6)p@T8ID6O}ouMJR@BEqj!(DBn;`|<$6TM_enz$maFPym(%)j6Za*6 zToO8XixEF*-ph4tmQde|GbKBmLkz)BAlVP5;l?Y1JHYZ#VP$1bFnccSeF@w-BlJt{ zj1gNGCVU*X%11WAb&Oy3?`C@;A_dCwp@@v?7#{46ljsFy2kH`^qzg$mBeOKnN*^5L zgqut(^O}`w91cx+B}?XS{GmMto~fOCvNPmRjBSe?g$#!iT_6( z1pSd$R<}g=G-byhQlAs*F8q;! zir=!&N-v&eHyX!cXo*|27zX+wK|Zk)u*SPkT1E{Rkjqmr1&0UNqMu}n5jU5zwBEiZ z#>Y3N|BQ;>TuU%)|4k)XSv_Ag-27I+j>)h^-t&FsR6C>+w(dXleFgEAqK(Z* zY;K1EnC-nn|GOoWehj7sC#NxwrfJ^h_l!NTkQlGd&!pW8r2mhlJaH*RnD$4&yqgyCX{C$`;JzeD)LV=wv-Z*v<$Luq1 zwwnE~R1_w@b`g4%Imau6G-a-FOWKmUxp&XjFF@K)!@yuwZ}-`acJ}`;_DYN+qN;uB$?RmI1}5N*tTtJ;)!iLdHa6;$G87&^j?ncRIRFY{#ISPa5+9*)m1PW9))dSc>6skc=<3$Bgy?LS;9NR z?skVS^h;Vk;!RUrwX0?wHx@s+z?B4`9{FG1qxoVqVnZW z8q~#T$Z@`x$rrlrBno zSn3Hd8ZTguaTA=A$+0j;_wXW}aN*W*?~?KL;;d=#7ga)-DPnJM?=GdK>06yjocr%n zfdo+)3>a#ZrfjJF=OMKT{`KN(4Km#k?X(Qc%A0lHjTnQ#M1l}S%Q)-^6ipT&;}8M= zSJE(G(i^=263dX|zKug?d>1E-f#xT;U6r8#z6i#uqf zn8t}zaKed$#@%hy{H?aemz(P$p!@@i+kFu9(8)P$6BMKfzsA13W9JNrtlBue03<_C zecd}SoI6*ufS`rH3az2zhgR@O9QUr#BoRn8Y2*JBx(Wz{ipR9PkWDWt^K21cuCFUILn6bfB zoQjXxU<)f4**yj3NUFr|=gA*GtSVKI4DqG)LxGJ2)2R&|6};kASF>u|@&Y{~r54ag_nCGwlBp*P@#8!t=fQ7UkXs9{s?C z-ATcknb+&?;REfLS!f()Fl9wNx#59>P>*CG-;Ulfo|HDk%#wMg*jy|$$tMiDjdreW z7q^3`R$uqDSAOI*a1Qysn8RdoX;@}}>y2w?X$tr!=0A=rmURWBwC;iUU|5n^^O4w} z0hf9@Mw)@&?05R=l@G)oY3I}Bz;Tfs1x{{ZR*id$@6zT4 zx97Ui24@b{2!SD9CI!xin+z~Ct}?(769PkghQj*{ICdKY?xZDB zmEk4nC|2yLk~3<(3V-Rt=`xBOQQW8GJ=8w4Pnolw%r0^d+d2O~#c)40?ixbLefT$g z%My-s>wc5E>PvD(yFQ{U_`Jj=C|#$URec2zk#|t4^2v}9nt)^iO!CIVndliq76qD3 z_RC_L;Mng95G)wqJ#=mXx<-{IUXARN@Xwgl(vBEhP6y;cci@Iz@}tmn4ySO88w8B| z*mMZfxfg1otiY9u0~`jX6mS?AQovz^CID9|0x+(aBfwE;;NaDy3pwU_Zf$=mjJn%7 z1C5>7M*>av1Ja<7kO|g|=@AL^hI>xb2oQeAIgtPn85#i8)d5l9HxV3!gzx|Xg$VjT zMuw(aqIK;DJmm6R&as+nK0XT`@d}mh6Q8_XyMA!$-gH~MxEo~a~{q^OyR8*c)D9eu&^!S^QFCR_05{Kto$Pw(%}h`zX!R10oPn2jcAN22!7 zt%Aw68?6B_44$aK;v~JR7=TY&0*u2CU>K&xfYnLne__Zp`DM}ZyK~UN7&15`6ROnc zr2UVID}J8R9;e|*{d1nL1CvdX?(K;<>t`Jq;Nw{qW?d5=Rc@jSU)$k*_|JH@>e+ygg!&KN4jPdpH&8H_H=2hKx z9^HzUgV@rm?K5&-97L&11mT@e9&-#R0D=F(DhY5?sge8#t1>`X75NWVN&Z8NKpo9r z+rtHheJEABAD{%74T{TvOYy9VtlN^aj~MF@jDFoGzo4fJ!dbg@2W$f3w?t5HK?3G~ zi(NlUEU!Z?n@cv3_eFkvmNnD0^NIQ3+n+W*rCy+~aSF_TePhjnWw)+0ng6>(Z zk>Hv9OJoq8yH6Q3Xd_UcQ@Mt%UjYh?Je~+J5>R8nL=Qz{VGO7R1%@7x1SnEaIzZyW z>+9QB#5QnOr7Mp7%=!OOm}&;iT#EO?3a;nB`Nr`|0oJ7rKf$A}>t1B(`VoCz ziY5yz1*YPJJ7t{8eJ49{=r{J3B{@dfA2nS2KUpqkT1wEaU$|`XH|@!M1#R)OAHaPA z204xpM&_=Bw{)QuzcDQw1?^ap>7`QSnAu9x&&e9f!m# zd{*szRlVtMXCc>IEXjh8tLSe5ph}28Y-vjz1h&<`lI<$4i=7F^jrHh81XI*#Q_=M3 zhIHAv6L-b_K9Xh6qsr9*_di%y3vp?fGNGTH-*Mb?WaGx{nhs7FTl;k;~+UI zt5J}Nj^D?FhfD>usp3;XQTlE?Pm#iJnIiNdlMv^k`5f!^qi&_1&m62ZM7K_}c9jCz z^5c)Pn?`rmt+vskyVuv-#d4s-EMQbBerYM|vlaSZ{lU{sZD$nk2KZUtS)4EMu|{97 z52Ex3QiTr)(?0^{n%Wtr^D0e4#0gBDlmR5cs%H2cew_?x2k4l4Vtn%Q{j`J}Gz?I- zG^aaQbZ}NK*0lU?Fj~N}j-A7X6aw%#oAe;c;*Z+3CbPJ<$?!t8WR_WVBc@f9SUqzK zioP>tdwuZdOTuW9Ep;k?)q5SOh--nTw9ssVKyC*2efslcK>KkTXgKwK+o%^FTXnb2 zX#Q_AhXw-Qm!U3NU*FSumI$=#zZFb^l#41Zu=}CU_BR_lYo36c7cU0EnStcuO?+b? zgOhmK(_y(#vY4*hrS~1q<*M$-b%Ea$_}!d$wg3&l6#%JlMOH^RiosD zXA)kZX&_XTad#zEQy83(3c2oX{6M>FDYmDl(wv+%<-q6#6__hXG9=y13zf)k zM7di+nnM6s@fVlOD@u`2=sap&`*i6v!Gav62>}UJ<~slouOO#{(>JulVF`959xy>R z;%A9%5#CvsljX}LJxd};K4#ELaSxD;L~yi_&FTkPGSfJ3F7R^RoY-2bs+#4)$_czB zz@DMD`Y2&>Q>0&*=+e(9BF?b%xIx|%4v1Vf|JgW|Uow<9O2}R-_wa@lgVXvq3}KEb z_1w%GrW{}}|AghmI;azAkynqP71^$mQ$LxKr9YpT<$i1m%`d+X_n&%tVy6rpRK!Qhmd7Xr!YO*w}n7 zOU}YM6XqA5O{B!-uA}BHqD1JEg|QOA4}~)tX`IH} zrS<_@UaUMfh1)>`^Itu0eIz#w)NnMqSpdo=-ol)il00yk`yI+d}U|EjqL2hWG zfcOn_1mhA)%{V;cV&i1Q@%ugUByYROh^){>pZ$h=F)5RValBv%ac1W)i=0ja7Cs{pYKKMW%+P1Lfd!^*l`g^tT+~BYH>zi1i*2Sk?QfQZjm-DIu+Nn?-9giA zakUL#UnlBr`dgQMLU0(C4zs$wL%uV zU#mE&?e&zcbxfRe1R3`q|I5kGr~@?4Y@lS(Ay&ttn>#_c-$J6;!*8gXM(+6-B`vIl zPnV+K46q1na7s2ieF(IB+c;?LCXH$(EIR(mc%DoS6SniGtF z52Ir<_8Fs9YjOV5629K!#L*ps;QBoJ~p1S&1Rj<~O=IX2f{|bH|x^**cXH2NZ{I^91)f zssD_9Vb%qL12&*CY2JyN`(Ij&%PA8m$}M;pK&+W zp|b$uC6`UT2}PlR4W;FC)T{5)&$o4X;;-@D&lY#KF7Rp#0Leggbh-6eutesMsmi17 z?P+c5^CQ7EadcNY#kzQs4QxjV;rcN0n{t~o>?9BZG@fG3ctUY~=VgF!|zc1SUAN%qM!DONGSk)4xf0$gN5xwrm6J3lP}lf{)Rx|6r4`$5Y)i0+tAt+h6MY*RxAknxKQWGfFGvd= z6S=)!tE2}Y*V^v_?JrkX$Pm#!>)La@3%h@1GZ~n3c8@|^2Ger<^_lM=ez>9Hgui2A zjrY69nq;khW#)8ur}Zs_cDmbj9pRr|BYrTTQ^2*&OPqdibUTrZ6@8MLop!Y}S-dGV z#O>}6gIVj;z-0+knb{V-$j$a0$CJhp-o*ICU={yxfuOmU&fiq+Mvr)k2=D<|$hg0| z0W@Ner9<6%UFaa6yoM=Z-TicPiaMb-ue3?n$_w?6P9zhg+=@6z;hI zqeprTY%bceEHpmOj914W_+czC=~Pk&t@0H#t(I5(Sc1Nvc5osW$WI!850!2+1URw4 z5S27@u6aGAYsDFx+={9i0g+$Xg6Ac#2htgC%!w5*@Antr5G++r-EfzQidqhf0a{nPk!kl zldHh2Z7(=5nyE$&8z60Es*^lYVOjfaOb)kZY)Q{VwJ|W&3)HBkyRr1-Cf#@g)Rg4h zjXXs8PboR4gqSR`|GB4kGQT7#gwj1Wymv-rfKwbFb6C?lJFj&N%E#9!G=j4X`HkZdq9{ddbANSO#!r_{c5N#rD23xZqk=rS5(j zsy?JLu-SI__IzdQ+W0r?L6*sDa+ z`7#9~hkj(iJK~t{XI!A^1JzkJ;0oxS#+M_`!3d6LAOJ>x@%bXV!wOIC|(10zvvFeWz#*>Yi zdX%x(p9W`rh|zJfIJhj6LO~?D;&%j|<`g%SkVHZc1pq$T__(Vd;d(+;7zt=O4*_ge zDQ&4k7FwG_=}RygCuO3KEP*o;&>M9o=OR{2WcXktq0*3*l1vz2N#AirDn#aqVr$(W_A@=8A@+1O@%0s%89WBlAOYvv607qSyVb&hxP;bCD%%5Vd)bkHttB6>LdpYmt&& z##PF#bt*oMF&5sErkXZq{)rw#sy(7!?-@vM`@5zYg;6t#n|Nl>z1=J#8;?Dt($S6Q z1ZUk$aZe7wg#hfThEiFKxztDV^-9{s3Azhd2Lt7w1|aI ziIh7^!-QXg+}{Z`R!Mh^g^k(eaBvEm9GfEKnt*=Q5n33Z0ggq?3uRYGeh*j5Wy)Z< z$E|zJvbF4L7I;weu<$ctUE;U!OPp^=qdWeNL`rqaBl*NrI0WWXIW8e@5g0LIEDcDh zm2xbXuo@~#f1mDkf+?7R{cYDfxDij6ZZbgu$0C^lUfB*w z!a3w7M`l+ls_~8<7hzEc3F*i5o5khR-VkuVWBXlDi2N~t;!JK5_%z79>1@>c)tA8P zNN>vMf4dJo5C+2hByfh~T^6+9Wm**w(u$-B60ZzFiIQz7i{42J8iBrId z?Q}6ncm!KM$Gz#r?IZ-ye{3wczA6PSS%nZ+d;pHc-{UW`UARCDKSYxDd8x`a!dHIf4zzl zf9%`h@xmAFAEi}msS;d1MKo^YOm&jVB;G z)ph@v9jgEkx^oXNxSnj;Up{j_(O+feTsQl<`IP0VX$WrE3OCf@i=N0rRM{dBpS{Fz zMh-ymRC8-CC0{?6kc6tSt=)&IiP8ettkX|h{@_Y-nC!4s-gbAqaSZ%xgL16VG%CO5 zHnl3iYOeefBBX}-?Jl&ZA`HFi3_XeZ6=5>X&Xf|+=r_7Wg69!~=C%MzmX8wY;c%F0 zRf%aMfq(}#uoIp-97qlG%SmAj}C?`T@9^Pa{;SsJ5bwk3HOXt9-=~ud1S~#GE(cV1hDOdDPvD^hk&3UNUziu$oz3tq|b8%_sC~E`E zZVLH!YCO)fbGleQfJ*uW!Bcf4sTbcG%W^I?iDvKyXBcaYSvRj{WXRMn+8QY-@MdK+ zn42Fn|E0&7L+H+{WQ<*&ixAT#{1+Et_(SuE+3FGLek>Zn7N<$cO(algWygCvW_R|w zrgqiKP$~`Lv)_bO0o;^#x*>O2>15-MkAyPA#GPMr?+i0kch7bbm0|3a;S zVM*l|nrrUHcpm#P9C`2?vP$kq?_QH<8fq?7{R_nGN7Mq3Ma}V}i?ePIY?~Hfc0+Pv zVkG`3VP@g=5$b+T!!i&6qa)z1NKbn8n+{2eN|f(b-f=ESRX$oo0%---J@SF^ z%`nnXeWYvv`dB#ukHcTE z_&PZSz2`UdYj+NGX}@SwqnPWXJY#Kza$VrLLkvQjb`?a*&dWR{&V9G*F}A^siBxy3 zaw&&(U!>|;NdqAjaBAB^=&7nT`vl|Pgv0m5A_#C3ZpFom`>T^X>SA?ZJlT zya~L&JZoUsE0YKLKXOq3nAl=JZrL#6V9z~v$a(sM&$#>hx|&xZh+aHy=tbOAA8ndk z{=8P1Q1LfOyXCNj`L4sW!F&ntOlO0l%EhuREhl%F{F{5B9kmY9AkV9ky=&zaxJmmB z1%(@j`y9H>k>BiOBDJR$LATXt0G_pfw|bL-r2Ox83>}9gpAu;wFrfE>`dHt7*GlnY zvpW|i<~6a%7Wr5%kyDr_4E&*~rVE4{G>i3mav<3*x9Rt!hl@%f8Gm4iv6iVs(H`sU zr>f<6@J%AHQu`^YF)rYaN`y+RY(Si%_A6_EpR?Q;we4ZO9;4>dz?g8tt<69Ag|xs^=|K<8`0rm+{Oz8sy$^DcEfayHAtRHh6T%4f= z*AWs#0xSK^DP(Sk;l6IMy9Zr(gR8W)5m-$Vdt9H z_>h1#I+=qN8a0+*VjQm-n6t^iK%H~o8V*$E{GkZeVTKL4u(do$#qW^20? zVGLBtS1jDLfdo5%sEjr>X;+QAx>drKOj6jhP zbSCxL_c@~W0JPmNWoXUz!6UJeUv82gsD-mbqgD<61B@Oum&hz54UhL(+xtr)z1z_hEEUXI{MY#0L|ioUe%V`r$(~HYBI%l+{J3& z&&$S&WnZgj))@5YH9Zizu6CT??yY+wMxz!6Dzfvks7H6$(8O9bALwE`wFS6T5z*sm zm}a!@P=R3QkMp!>VxygP7`kL>DkF@E2j5V1)Ok;dKIK8A0F4 zvQEciS*4&KXTx07@3gXIS>?!3re(Axb9|Ho41m!j5(m zC#6}av|X7DjOIRQRXOmk>=Y2pPovB7aFFy$6pLqZ;$>03p?#&S z0jw4~`9dxQNn5r3Ik#=4D}m|q?qwGZWL(Odm>M@)!7Z@6V;D`x#h1EsU&nj`af`4% z>K~trXF*U4Q6}x!V%E7a{U<8Fo6vuRLV;k-fkx)NAPgYW{>^iuuO+$Jex>QiF5l?WZjKBH4Na!a+M~}F}vjF<>t);69I;J)7P^k;nUw?nbVu;TK7E`_`Zf@HYx`NLzNFw9z*muo;qkDSVuDd&%wf+=0sjR4*8e zXwbpj&806Zryy33ou3^_LUr92{sf_&?z^jZm+ZgD zo%7-=Mu)Hc;F)*)tDN*Uoi)WU8I4VbWp94? zFmgJ?yx*JjCKd43lvivp9f230;jQhu9gy2zXwQJZl7C-hiW@bbh>3gNxzEvuum7*k zNV{c*#{^^JO{>=f9v3#_PbO|~-3b}@7iw6r4n>h9t&4MEmNsa1&WyOot1;;nNExUX zr52g-8~1*K(1;CYBrsf?4pG5y%w5}qBuOBvqJ6riwHi?)?@j@(e-fS42^FYvKov%mfsKM)u6 zfd<5eszqP>Ym1E%NL@yP|Cz+P>fV~E=5Kal3NfDg%v!m2y!5LVUOL=dkW3uWwfqdI z_<3M)r~~2H9|thhU%5mZdmXzzpLJWd^)2PP*aVG`ymzdEUzy4NbDJm7o)MvL2cl9x z|C+ox^mfXYiS&~Nfw)N!}PdKBu)r}uE#$1A{9>UUs>!k#j_etku z)C~~pDVDk=o9FuiQMN>ieA9P)q1WW4!m|pNX2tB;Q+n^w0)MhX!_=9N4|COY@b!81 z#*7>9sdidRB#>P0$viHT<*xaPA{%+7%aeTT?VkY*>n*hS80&qPcHoinbNRoJhs9Zw z1$(&*zNf)tDgO+*kus0w$1^T{sewkF_- zqfoz|jDYSPQ=eo7DJAOaK^Cq>?Eq7E;@*aMi5jj{{-fz*D_;Yt_C8lzt*>60A zf)sMJ1Z?d>H76M(s=z)X6ol_PFbY+Dj_8Ah0HH1WJA*G zP+>nsgJLe+dIT#uH%Up}=IJluzf?VwLj^b^iGOd7_6j^$DtBHbNc{paCPX|yw&n?2 zSd)Qk59dsS7fGb2bXk`L=48~wB;6l%L3mazVRYhP zzDSsdHbL+D1N?vm2|fO}E>HClh98CMh$3NlAXcct&6WbT$S5w~RBHRrV>0&uJT38? zsF)KSGOY!a^}Fu+UbZ;EI6uOX3CTvd&BjD~=9YD^&&&vJkt*7x&C-O( zYf+LHe~!f7I={zk^Q(8(-}Is9hdYc^{{ecfV*ZW>c|JAm-{MI&J?+XswStfFl>vJC zKK?4WkwmbCzZA>I5uoMK>9YuR-QgWI*$?HUr3c&wv3(+4#sxDx#PED)XBmZn!9F_1 zJC+i$(M0v5Q`?k5)>u%6@ckRtFqV?`nJ|m^OjsJEi}7%=uK?QqIl`4jwK?5v%d;xI z%SmUZ#rQr+`jYaIjZ*a(0v_SKI@d*H7r-qX1ia?6uzrOS&yeN zVs*QGP)4G0zC<>CAr|gN|EkxnZOY4$&SKxy!4T~T-cZ&9xM~vUybBco@VVKlpf@UB z)uk)y)sJxOmSqc-y#g}hi0;ngls?u|*L^Hkf&y zSflW){++D?1I@pT-bXHo`QfX%Xwj29150!^R0 zMWgh{R$Iw!3>mu>gr%7P#PX;n%fL4hy9qF{071A_Xgg1n$?FJ(b@00$XqBO?D zOF?R+_uq~iekZTZH9`y-kS|&{t599ksqm`@2e&qv`5m^u4t}aWUyePrY&`U|A89$( zw>jT6Se+t&d>&YnPCl8_xJg<1AlHt0K5fbkPezQUhb$@i8ayikhO$KY#x}%{6R$jb zcZvkr*SPT+UdjM9+enhLptezvU^Oka23kSzVqt%kx(7Fr)HG7!=sJz}TNJluyuH9r zOX0d%8E8`KrxsZFfDN(^5*A5#4f!_4HS3pj4D&bemUYh#M(RD%i0IIPA5xd#%IwX& zXMeBP&AUxK5Ab>b1WxR=)Isw?H&N$d7yZiEgu$}48rcg%Kc`17igt(2> zRa`2y+SPxf$$SR2EObhV4-2bfK7%#)Ws)q5vQZ|8(r}OaXPah!?G_cVM+4zWHK551 zDg^$%W?)N(#<$NNB|@MC?tsrq_gE<5@lpZ}?%!hchS8XeOSJ{H{j<@&t; zxdphM<3h6vUJH#))^b9Mc=QH@PviY6<%rU#V#9X>STuFNKc|a{?M0$|`O@`0 zZxG8i1uE}=jO7E0VtroBFWi7n-Gq(eV?tSGNq2U~%^`eA+(Drj|GZ2tBOoE_LK7)% z)gjpRABjlUS`K&3fkELydSc=rj*Uei7&T;b3?IzOUL+JLS>+n#icg;Vs2ypWdnc$- zkH@P4n47)yj0bq-p0u9weJ$=}kW|h@7g*!0q`Ohe3OH1QmnE zY5IJEkRete(hTsv5s5N%KROJGm%;+m{kIhXJ3;=>4?cg4hZ4*I2}fOo?GvQE5v<)4 zuL-;0_@5>JLT3^ckewGHiaaV$bLKW}ytU0cmLA09dJ|8#CVJ){#3Zyc|2=L3{yp^Q zWGZLna@0?4krowoC@3_gxxLCQW0EONO=t3(wQD-nO1hT+gZkl5+1#DrR`?gnvqobb zP>K89HRE4Skf)`)`4WQQLfG#U zq#uMIME^!uR!oV5W?@<#1y8oTYQhkjojjlxIVRQiXIt=*7sX)Ff%mk%r1o-^y*L+_ zc}2}}ArmZ5vZl(;5`cZ(qKv9dRu` z4Nvx`+yEL`7T$*cu4(!@Z~yLk1=MrowR}U!;htAm__>S)$*COC5;7U$)Xu@MjJht;5*kP`GLlw;hl;Kx= z!Lt|)EHWE~aW7ZuCUp5OVtXuzK%vF?*>MThO*RQ@QF?B!&thDgJ|Wq^ygxetUNTxb z{Es{YZj05SHf1KOH>ARl-401TruLLbf?bSXB1=*K=DqV#T%E}r0pENi0!%Jn-pyRw z*KWMEIlMW{Dr>sc*+Jo@ox=zKpL&dAEZXm>A}Rl~9dox|9ld z{}^DN8^R5>JJ?Y?(tnidS1gSh=MzBRy1Q^{xNafT{xbLI`0;$akk=;zyb^r_`2jiUz|- zc+7#jeUVV27Ul2&i_G<9w%+3ad!zqbdI;ShX;(8fp7jg29D|2c#HlH!+0~m#LTCeD zE$bW9sJX-$&cgnOi>tFmT1E~ULYk@;I0iT?3(NmXqGBz@xP2~!?%7&L2PBsHGyOYL zW=K9r?~{BO?^BG>ES`vsRif29rlW;zqXjjB$wJ$ot<>^lifVBf#MbT;R!{rjhJL-< zg1(+?Z05-rO(tts>8$y`H8K)1amE|BNZ%O&N745F+n*fY&%3e>C)9FP^(2`~#wyqs zXH)S5fH_(4=ykFUHZutp?+3jBCPY}V>Ip2pxUA{}0gq!iER91yH(J9_>p?rAoUyKI zsTGfEY(Or=<7w9}m4{Kjzy~K%O}Sn&Z>`4#@Ph2{2CsGq^_u%_@xzMlbMM-B1x&&q zilM-YnywwhhH6SUl1(Q6ZqjAZ$*-fD2{$gGji>R zYBqVHNV>%q?Hk-vK7C1k=UAb#HG@k#{JUsJV+d=n;?@vN4vAZxp2l2w4uxTNX+)6Z z1zqx?&z3ab5e_rila7YByXsQx(wvSBaItu%1sh2fgDHW{4y6e8u&0>0(ZsFfm2EjZ z_ls^B3ok;?f)5Og-EOA4oT2kT8;Qh<#efwov^5=MZ5{ub+nG;cgm|=RPH!8ATqXt0q-Ag8a__v0JrnM z#GNkj#(W<~J|tzfF?Nxep(sAol9)IiUK_c0S{l6;&G@>>>xd7%C)<7%p1Epk4{U9q0!I3c7Uh) zsG*S?!OENmUBOeaS&Wl}@!&+al#mK^qx_q|QYUqKv7dSQMtTv{ghjmw1}&E*&q0WE zy0#G0+v&Im?&rI`?chn!hP5D9dX;dgTF@AgxQMTy0318?!#xXExl9`=AbR$b)LItR zFN^v*BSE5Z72&}QL^n&5xhDoJ0euF>5JCGRmRK~qS6AYb#)yMxX}EcYv(4(Y)F89Rg`jT z)X?b+RI7>&=G4rxEb;oTtssPigk0Iiy_!`8Z%x$Q_6RJDSW%LHM>}+|`uR}$d+mqj zuRWf*w|yNFMb2pcmcv~U2UEnMr9euRCd`Y_25*be7I5e>pcfA2z1weXn7(|dFqmOJ zZG!=HCvIwNN;+^VYYZ9o8IW4-6Llign&5F$KLle8!8a?1iJyfb^d!|v`qeUN;>_2b zXmTsuV;1jqg*Uf9yvTReA)JLM2@HnVbU3+tKS_hoj{IRHFphO^E_m?cb0y2ib~=%+ z?7w_y25Hc7NXb&lTYrFf5K!{{L=Dj+0AT>Mk5Lw+Qr(n`Vu4x9gcC=N_(#$C-uq== zvdb5fTi@WsIv_9nv-bT{K7*3_@Xd2Xt49KSdeS*3*T@mMe?Vtd%*!+d8@ge=>H4|d ze|}|wV|UM|mPULFL5o4Ujdg2L6dk!YWdKc^B*kay@Ud!Nib^OOwow30j&CRYfw&21 zi7K8D+o-ke42Zk^6%T6k*7-Zh?9+=T{w3sFH+SucP~mL7C-8AtF4qi^>_=)h@;OD6 zYql};xrQX{2j7(cx|ss~nO_@eEa(T@5Hi>orY)1u5-k^r*y*!qp+M7EF0uIX>f*~Jels32;M%%{ydY#IxLpNS@^3gJX4&a4ETp3{!41LPidN8x z{|}x(VZYLLOfSIiV!Il5J7c0;f>s%1mnFiMkS492#vV_hl6Ws1K(^L01wAd!D5nnY z%YP~nJ7R#p)7G7$EJj=M3=8b-8r1A(BI0BFr$qusta)|!NWY`s>(Oag*EDiy8IRUK zai@INNRTd?b3kbyi>b!gCPe6v9MQ?PNB~r;zbsAR!I2^bjsJlGOBleG*H$AjG+tdK zK2ZFlnH5fKigt}EBkb;0slaiL;r}-wa9r zT_obM?;1J_YcY0o%P|x}u{lIW3IS^*UaJy(t!WB|Ggb{>8w}Byr;*K4rC>P~s?;nn zSUC=N<>}764S<87uz+Hu-_dXIK=!$=S}ezir}fOMal*)m-$y=i=5FDjmePv5y?+?) zbJO7go?9B?-Z<^{MuKh2$Vu8adoS)5w<}9juc8oLzbv4%1WV94c$^(acVeh&U%N}G z;z+AGJwDbh3qIL%x0xi7F~+mPO*z4me!%O&YSD*NavdZVevUl|2ZKYLax78MdHfOG za&SUkNvU^W&xcY;=;X*J8-L>HB<7nSZ%1grXdrOUF%Rs)7VSXXYnC@#RbYI&bxINlPv^uP`#4;|M$+UFVy{OEcW)ZunQJ*5eKl9NUlCyr z(FjH&!{?1{X$FD`eK_M+sq<|Za&hdwTUhHCRyFSdTR0;qrxmk}{xA-#$+;@$rT#R> zdlj6;NagB?3PS$MDFFmav7|*HTmX_-gP?&LFi;m8kc%yrM!Sl~yMNTK@PTP(VA4k< zsg6QB1`{wC4kj=?r&t`!DHaFQ;EYx(pVuyfD^^Y5m!I+!EFq&DUKZ~GE6(7tB(C$| zj&l_$qpsbWxcrDGNTCQJ-uGONp^8=Mb$~Ki6szP5orzb_xbzsOV1NXXzOVlmr?5a? z=Ybrj5M7LUfA8S(L!Dv+BBXp@w-4ebL`!`gY!U(Gc7D`6_!!5d+!OA7DZu0hqi zlCdK{D&Z7o_)!n3;tixPR`C>R5Fyj#I(-VrXp!%``;t9B-=>hhTF>3% z3CCP$=TNdW{6!Bh$J7$jZQpo8NtA*YRn4|$=KpkU1$8Ipdy|GAN58^lKffy!I>e0h!<*h zLJJatQhkxJRfBf|Wjeh?0;n$Ba|I;sbXQO0d;6i7~hefadb+xXB zl5Z&?75Kj%NF~p5LvZ{bSA)fJmyw+k6ahGw(J%@V1Trx&GLtdmD1WsW%aYu-@xEWd zBd6kl@FYOHa#*{pL@7I^#9PrpQmU{s+#OmRazk=qr3)E2YRRO|wpuY;2x9nl zW6KUF(+KM6_%AsMX?|Hx}hsld=nR3 z7Ax^yy|!j4&Q=r!SO7?=k~vjQ77%CytMfPQ*mpon=KIqw7=K_*O}R{PR`OCHHJ)u{ z!DLkHO;Et(Hylat| z%g2cPRF4P3jpvPDxDEOH2Y*{{wjyupv91QtQL7@q4n%@oK>?wd(a{b;a&1I@>^AT- z%dQR2ebdm{aDUn%fdlQLbT&$7gLH^L9J*73y!W)f4Kh}=Iko$$AI6U44)^y&&&TU0 zyoy+~-B*uDyaKTTQIzii7sqImDC9s?P?3aw{@9&nbX^1&;CHMb1lxPs_;yc=eRX@f zzn|eV@}WW(;xer~9MthU9Kmc5n;JrErW>6ccuk8>ZGVSyJ+&#ZANuaLsgB@3JcRgj z+5(1VhFik;Gf>17fVh3ykeP8k9D>)B5)gVZNcxcgAxIGa;73{=JYIcV+>bs(t4HiT zXc}pEMCZ=;Y!-SU(z}gQ!QI?IN-GWSrp>+@c71&g2Ocv97txx_Kt?e6em8bK?a7p| zIFQw7Q-4PW!T9inZ1ZCkF)`LwtlH`XsU8^wqj}^)>TiQa+u76$XWX4yDh!bNG8C(! zS^%z@3{@*^f}FSjuI;?S1w`)w*?k`B-9RT8U-%vB<3kgXlDSW0&}+DQqPz&`ZB<2v zb!2z0*w2Fst)vPER(h-}3YtAZRyrZznkm!?OMfKf*qaEYGFRBV@#xwBLRkW>jsTI& zK#1`MSb8^}d_(KG`~gC$jsXf-VVlg0mt~R5SU9;jM;$^}QMV`9T2Z)h%``bL&}k!@ zr%zK8EkTtVAXqkNRky>~pN?xmLf7Q-tRcb%B5_|+OegbwEtkTeGUR|u`9CF_k|l=y zXMb89su%2Ktd6My1qv;mrZm-!6);! z8|T;(`DviAhw?|V79!Z6ydN_Of$x$0yMNh~&cX5{E@Q+1N*xmI)oU%5LxSWM#t#Wj zj>AvDSq~CIGF_+%CHNmK<9nq24P7Yp@&Zg%1&mYwgQgMXk|xzQETfm{8fIXC1L~@v zi~os^VZullcg_dDlj*6g$L(Ce!Dvh7$}TS#mbubQm;aeE=9V)URnPR5N=dQRuz%r& zdzn@p)r_k5vlT)Bp}P|jS<5tx%N&#!E2+vA8dyh)0)?CLE{P@tgrrJ)g(5su7i`c= zQHMGIFORm)G7E9`Y_gScvZeTkGVvDY`ChtPNoO}F?R zr=z*w;s(ngeqk!;1&c2W7RRyG52v0Q5k%kASlW0z z*2gML>mvWr@6a9xI+(;*&^S-P2z;u;#J6ZMkp+DoH>gr`s$z1jY^dOoR)50VXbw(Z zq>{oheNI7<%2ESaqbH0%rf3+-E5eW|H?3%3mU5flo}!lZUDTE|4AzH9fjJ(nAD^~6 zc!QvgEzghs(=^$_4$V=N&|3QY2nj|!9g!gQLVSAQLC8lWur~J)Ph0xN*`~|~f1D^z z5s#Yznobze;ptmP7_?^?@qZ@oPOOUZ((`3J^i@RS_Q8LK$wJ7#k%P4s9ES>Z-jhGb~5On_!mt6gLbM>z)gz-#dFb6WL zG6|ysH!9m5uik&;*&fayU_q54dkUDx49uhz`mV`-x%wOZAGIzNN@-~MnZ%Ed|LY9X z2&an@RMIZOze~2$!he9$a@kL>nVA1Kf?f#5b4BP@+C}To(=|S#QgyIkPA-NF&VP3q z)E6;6aH%m`UH)q_9AH${&qMM#xkX6+O0)viRLodFp2__|B&Q??;S4NRWAbZ!Nra|o zZRmZ#PIn#s58~lPlAzl>A%9CdccI7}tDAI?)pI*U zcJvq6ENbcnnX+{O9A4O3La>#VFH8+%-8}6kYm5&tbW+${^wx5*$iFm11& zY|~#qslUe;l}JOqmr+e2WfC0}|1U#X)>N0FixCq8GB-Jw0qPMa4mLOnFHB`_XLM*F zF*h}rp}hhrf4x~-Ph2+;e&<*Cv3ZD(?YY>NP$ZIwwo)QRArEa4swk`)RM?HUsOi7& zH{M;?g+uUWX{CgnGdss~AAk0yl#>fCrA&_1KH1e|pW-4FBhc0dtgPBr zL6~y0)H0K^y=F zGhWqVDj3U^*a8Vc?S#qJ;T<U;=^rap_-|;0DLHBdBVa?4F@7$E)C1Jke{fgpw z7?U;OIv1AgbLbT&@wrf^aAIH3Ieo&Bd{OBX4$0S`eZpF!ubexDOYpVSPT?GUf9MQ` z;xpvVFe?`yW9k&9?6F663Mch8Li>ax>X15fqJdk{b_q)*Z@XQea7o?nC zU!*h4OcnF7Gt8Wduhbc4j@j4Te;H;D*@xH}W~z#vsI&5^h!3?hCzRPo>dXlMiI2St zOY(r5ox<3&l6K|4P81{j|3{GzYHGsz-Kn=tATS5&xI;ADiZ{;zqKN3Be`gdo@{DK^ ziM{D`hD8tOhaEHPp7tiNGrXQ%o=z^?qVZ_>Y4~|~g9o4S@5n4Ufe&cZfQXE}y zj`a8sgn+#{M~EHV{Bey%hj(YwzlOct-C_TS;q&ZbGW>mZem0V5emk|Rr9bT3dtEN9{E%egGdS?D>-86e09fIJk8x0_q&@pikH z1-9w`S=laD6mj8ZfIc8>mJfa(&7YdRWe~!DL+%e_kGub^N+uOc*= z@~|0|w#Hb>o1Yw3(c|M0d^G55(Oey1ViP}(jyd~zBR%72(-Fj~8zR>H@EoRPgGOBw zehLDO2r~v8Vm}UU*Gu!UbHOv9|1yGla{aDYu5J@KEw+hFOM;h#EQuvD%6UnY=iF0b zt$;{&t0q3!kB!zL1C+xW0PyPj8 z?(9sLk)0A0mqC656az9jIG3?n5GjAu1oX&3dC4xy1I0rbF?_7ds*E2l(#~Jp&KfOMC z_MGV%!KlCmnZ3T6DU6sBGsPuRoX%daW^d*%uFe-s%lX|oRrAV?Z%XsWhjV|b!;`kL z12tc^n@!uehwt}gVdp=)%$kXX)3_i$5QH`T6Qx-Z^h z#;f(pz3M-Q4~ctUl}kg)&H206zswfEkLC(~84|p3Of=Pg*V!G3nBUdwwHsCS?xyP8 z`0{+=8H7K!x3!-A6fhZAf?n_U%N@fzfm?!*)>|zutLS}yo2~GSx`e`7e zs8HC>lCX{j;*e4*xsB0L0$o7BFzYSGIJ>JI2EtC;(caA2&#%wkpBb6JGcu#1Kn0K> z3uaGbxjB3D4$oHb@|PJ#oXOdpow}JZfplT+a6Nl<_AjTHDNX%in!>LV&@y1UUyQ2Uo&{3zez}D>2=ZgZVZ0Sbim_AxtpQ_nUT@7W@#+c>8eD1JbG{&USL6;<0OfzoSxUtmP0!CYb4Ch2 zE!|4j^#^PFn`CP@#Zyd-fg$s*Jtu}>GA}Rdb-gpY-lv2QEDp<%V1DZ6`jCx_{OvL% zF$>p{wJ;h9QeKyJ6^HXG6fyc)5 zs8d%27E}MLGR0PIRR0xWzAums@Tta3X7f4HDe5x^S^zBPF3TmRC9id9$c+U_DpHU+I^6bQE-!|wm9n^z?B zz=BXv*+n!DB6*foB%}v3VBnKbfb44@)>|4~s47SlsycpssOsMV@Aq!pbNA9bEcfd= zgtLG)Ku3~rc2n-UdRcAF-k4cHP75DDn?WXiHjjTDFkZq*`2$Fk1QPTH0;7>A>5(X@ zC`pi61%MBcN5v6BX^G`Hl;-1ToAmqKOi81*mr72&R5HHQF%pO_wGO&Ty|Uh9tsp}K zsE2h`Ze58q?YaFej|eCP$xqD6c*_xP2ExfHl#Ag+9*QH-`GPa-l-o$#rrqw$NY1Y- z2(*7}I0t$P!?k;S)pi><)u?z7U?=qeHo#RSLLZ_mYLa^z!aexMN%Z1s-?$uIhSh?A z7gdM6j-q++&I2n~qnI)YB8|ZwB0lnr#*uM0hEf<&kS*g_HDw2cs5HdaLLSdECCX7o zw->`A05+nak3!xLdYQ|qJ%KWu2i;^0foXrd=R|@9BSllVB64uWWKbVYuOu)cOTN?8 z+=-2BAeRYnoyJI%eD;>#oVI0Wyafl3QeRgMh`&*;C8*Y}Hlx<*8{^EVR!+(c3B9=g znhpGo-;R$gm>QbUFTq4Gh!?$*ewxT7DGoO_Of!y)3!nJ~DxLQOewOX#c3pi8e>i{V z37gAhUD-6#Zkv@)&Jm}*u$1}a833(*#*sVgCtXh5#o*w!;9a*@_c`lna{Yk#M~Uc3 zYdj)7T}vP(4}3@w-Gj5|(E-zGU61eKyR7$3l>I@9FY~BaYWfruD+tjuj|6B~U}e{O>AzZxrd6sL8ZEKhW{m6F3zIVa2=;_}G86^ISwT zFY}->Qo!If`)cX|qu@j(Q>n9+na{?_VPPsfM!!sQUVn}f+-DDyqryUiKfMy%=dEU; z{=0SH#b!bW3PJw_I-oR5bwHh_1B%PX=)k859Z*dEKj^@xybc(!_{S*$eK->#PsT!D zg5Dx&rqiX0MXDayrK_`q0p@=x_=6~od_HBhndK5=+;QU#i8?1eq zczfgOz}r#nwyOrTmZ{X{dPm@WpZfyT=Yx9~rzJzokK9?%ECpLZEy$^XHuKv zf^pO!1g|#j#>Xu!zZK(X11aDZ`E<%O#9Z z8=EAL>LxJdgytRepg(Ww+UEx;EJ$;4M#_l@DCb&RYuJ66ZmgZOPT zvL_HBJdwSR`JSZ^KFJ_1pm!>}WMM0z@sjs>^x(nhV^;h$QTl)Ou3aAQPf@w_dcBsq2h##J630TV8vq#0u`UYxmdYODyN6>xfu^!KSa%XkFD+uIJM|G}$L7 zwoRXHvg>SH_gnjkH{~{LP`Saf?M$bqd+l7*hmc5sCv8{zoq`0K)tbnI^gQ(aq0SQ= zkYw`goDQA_c)ou;XkhXg>_{Jn^m$O##JAj*UAbOY>tnrCLoaMbH<)zI25G7OAj>YI zBFo^}n~B~dQXsAbTsBxsCZ4!dYh#|@vZb)ZD@+*sLQOO&&4B6x0*R@nf`T7373gt? z15Y!TtcVK8p$@1*0Of!fg2!k7=Tv#x0q&I`kCrBMAa)s*^od$o3{s zICLuF-h}V7lEEN^Brsom`PL*POvMl{X?%&=JmR5uJcMk<4W6< zQkZyeP>O%NKn^9-2^rz1$cPxKAg^-7EI2LzU$Ig9bh8>aP)0__dr@m^nqYp`>jb^~ z>wrl=8zcN4{6BJUendQi0mu3~Lyu(>LyLeveB)`k$yTKa;GZb_KjFAXk>D|#fb$gw zUBm?jN49O>kFBRa5?8}9upWeWy}pmF`MMfvjbMMv?6ki|y|Bde24R^T)<4^w?T9x{ zsoc4dYunczN5O;g7B(0h3_R)6-7sFY?zd_E_p54IuPV1jeHB*sv!nl}pqy60uZ@px z-MH=gWdp7>?fzH0Dp2Eoteers%}oB6h`|l^rDW#~Jtn=}@7yWX&30Fn{_KCZ%T~U( zc-KEU#(z&E#{hpfwu{*zixCq7G%%NO@(C0IH8Pi>#}O%i&0AZK+r|}s_pi`fwSadr z_lpaoh|#!ckQ6TLA_d|Epe61u0ZDWy${XjQzrE+o49OX4B<Cttl3cEKod)Um~zn+4+zuKB`9O^oD=H|xcZ%fIigu7wcG{;tLg zxx8tw*m84!bq)WuSKKb|o84_7xxeCOS;y;Uvk6y+eSP)Qn{U5*>16gXA&Af%*5W_& zD$vXqL^xvuN#BME*Y&RL>)EQ_UtPn;+fCIqzg2zH?!xc~Tw%TH+m2jaOKFyG?&6!< zcHf7qW{WS|W!v@D4(WSb%i@|TO+X6QOb{hqSi^^ZE2Wn3jq2T|-s9^G`CH=^hw=JZ zWYuJBXkxj7i71hlg^Au$E=w#+2`t-z<=3mK@9Qo~m}l%1WO^On&X)Y@@@HP*v@_Z9 zZQ&nWvPZ8_s)ZrWP)}%yG8)K;F(y#` zrNoDSP(*`{60$NcLBn+y7GCex&FTO&;bAZ=zTB@WFzq04wC~%%*Ch0(C6+k1L~uJZ z!yRz zk-7FJhKj!3Hmm4X@0;DkP*L@c5-as3-4~ZXw`pM#-BVVwX+xM>aAK^@zn9Au+)#jj z(3DZjn$W3O4ijzzcqB&iZW;5*VVVcr@APst$OA zEqzKltTuHB?`*m6yThtKge=CFH&v2z4pjO-7LNwow&%nXOl0)U zR5mP?&Ei@?I&zqUEzuFRMD)a$hd47EXXZ;Ex+cN%vf#s8%|48+>$gRzvG9~l%ojKAbBo-h+z>5 ztc$^i6A5wwa}`Piy874m6F0dSIb4ouxGC`q-&6LnxPg_zry_ESip8~S;C61#PriBc zUy`p|;6+ zALddHWXqxny(^dy&crgTwl2wkQWC3l3f2BxbVm$VN~Q4WYxw-YE}#VifSU^cfl%7l2&aj(Mql~@FB~$vFh&%R8OyMx(Q#fO>w1R>4pYRnN z!mJ*~?wkJ3XZ4gY1_c&^!c)AI%WAhi)~r;J?I61vld=$dCr1 z&fUaNysGwbGyt{{MeG4;4n$GgF!}-+?;^`s05`GrU3DM#eHG(Bpx2=ggpj`87ef%Z zpPh=O&%_=NPOjo}V))E|bS)Y3} zg$(T^IwNYW4|g$3!&Q?1;VwKYRzRWFMY3^JkNJ zz|(fO`4}53i1tlbcVzl5@h22Ltn585AE(5-wtLt3nYaP-+ueqL;vH|c?KT!ohwW30 zX4;1w|7rs!e?CyANLB0PWNGATbvY8b{YESOsT)rP$MA!m?>$2QDfK zzNZNnq8M{#-eRqPF7zobls)>>%AO2LgxV%VxQK0sVAKcWgpu1Ol&eFD0FzC&=HhqZPP-h z@J+#pn?(PAs0cLAF1YN3>UlvB5LJv5IHlmD*~DZeDHyvmMhCN}&YLQuCi!UYwahxg zwSl@sLV?E4d94HQ7c;L-nH;BrhCc1_qDIEMe03c94SJbgAQ9DNozDFp(^O3__5@uCH_X>gPF^LmZcrXFZ3U zZ&*3BK{f8|7^|O^<`aOZ1_H}$5!X1voV>Vk!ibo*GZ-ywEX2JP+%a%Ryb2OFPvPiXXQ$sry=L~*wNCPVCFIW@NKU{nVIQ*?Z;DUGi z_nW4F@54?e+=fa60K24Y=n)*RRYH-cA5<*fO$|5+-3f02F-^$7?l`C=lv{C z;f-Z_1+1rAL&jc*r*V(Zr*}>fpwBvASTBcOMOyI>Pq9HISuDq;H~dX{qC^f>ibQ{Z zt=|QE#Io-C2Q=~;O6V@WIXFtVot!&Y6kt|Z##kri1%y1=DW8IJu2HO9#{mCB30F`e z2AFIw*mO{)Js(qM+YxB(5_n7Bh5B=9aAbEtRWwz&m=MYSPy69;`;0|!=JyWdAO zYT>hP(wW(Zp2FTMay&is)k{c7e(O_zaa{{p2(OTzl-gia#38<6S z-6NvU!>uynVc#v55udxyFUl>Lq@!>WrH*>A181|{9|u0Hlj!d~Tv8}HoXbOTKWyvX ze(W%g=6l2)LWAi5$8ek@z&1aBoYJ$*6Vtuk6aCLBw(oAxjA9gztbKm-CWoq{6N z2TADzEK`WG3GyxDG2ogoh5OkCN|YFBzsBCQm^H;?R4ShKvYJ>uTGfjaP@K!eNkHVo zaY*=7{cGLDrhFAfAU^$asGk;34pK?Pgn*|){-`@frJJ8YneR7gX=ZJIs(B+zn=v`= z%dG%6rO)T@&=iJD6nZ5PGR6FuPVSRi@RQNaiXnnw!$l+DgjCGg z$tELrATJOz*Web)Ua0MVxko%FH?+pd6mTHTm*_`ZLb=6Qt{$tcSu>R?!T~KmgiioL zXU`H)LzuQXmnXbI`BP-ZL&fY!r#Y87Mst(%^Py5-JV%)|zl#xyNe4h!&boD?bSwcf zjY@Hsq$%#gyK(=m7?G^c;Kh@(^L|W zxUzA}RN{u~9`X|wV8IZ;Qao-=DuUrO=QqEQkh#%z!q9!JK>}95Qvl`jT!s^ihgQ?r zbU7!zDn~CTh3_hV%JTu?c&|9%6=UWWl>7tc3^yAM~& zK&^bJV<@pM`8v~}kMWN+B7sc^pm1<=VCHB-fbM0F_sFwJFx!~f7WqsFn%cZC;04eI zzJ^1V1qLKmx2|BIX(wJ1{8J3<#OL;ztpV*BOkpAdVY?t~7OvaFCJOqt?h9*Ckf1+x zCAqjX9%7teh#n$$`cS#MQ*wV+n1Lrp^c)ifu`%5B8zV&M@Y-dxJzqJ&Z?)OC(+M+< zZAA3eq25`w+pRxc1L2x44_HTmP3H}p`R`GA1OXmT$4LljJnqV{(EdJp7u^28=%l8Z zm!XRh69P0cmtiOg6aq0gm!Z7^DSz!-OOx9+62ALaXg3#4B|?Z70ovt*Qx$JH<)pIZ z*{9>JqA7ZYiA0V`%8q^5-@e@d_y7e;8jr?FRrWF>!3NN1^yBLWCR$uAqQzexMDF*S z%LiXS<$6IQl0*qzT)tVTh;StrO2kA7wzym`UM`=N7c0)$vc1mnfi9b3dw;XZZDW=; zuJ!$OUgsCDF2DQwX(GmBQU-%c3R9ZlzOgi1c{G$HQgkGbFIG(Hj9ljyyZL(jS~|l^>{gRobqIU(+@28+@!ybe6JWph0Dna@0lLrAdRx`D@lBn- z-Q{KW;X?Bz@vNcyHOMQ986Yo7+&*2Ju_)lcx4RUv9?n6NW%?R1?y|aoKkqu62xRZE z0k_t?W%%Vf&#>_qL$!9@uK*aPMTvl^X)SR(GZj*K-+zi&bOY1tWwlA`Vw<;hVRQ*r zu>y^h!l`bV?|<65DhpUR^a10MDqfaVo5RQ=;mg;^(g*we^g^>`odR2isjP4`mng5a zY4X;-r-*{_;Z3#c9^0xL4`q_umkbtAG;Lnu;#&Z}35!vjb&%C8#Z?MDjDasrab=p- za$Nud=g_&#ko%4j)h?xfIKt$)w;RwLf)nb!{eJU4zif&O>r=&1u^ug&$zAwqz0} zAeRIy2$^nUAy_$RoTskmVbavpbc)Yx4Wu!bWODl>U^CyyG`qy z*8A(idJFq%Cc%AyT;1(foA$bl{>(ZyL$JxW&djV5^Im1U%#;fwLF{Oi%zntKZuHU_ zN@Fwtw?Yf$v-<=kEu_nT@xk?NUEdZf-aZWGW(r`E(!O~96HG}WB8K?-E{ucKkmo(N(&r>n3r4g$I5xy?iLhdzgV-#> zV1TMVOnzzSV1P3g5uiin&5@|d90DNrYJWrrbMPRPz}$r^Tid+0-T@;Get?i^+fx%%vW~tR zrMW4}uh7;7n(@Z94xe*~g=^R7<`7m%vB{c!T3+q-gJHq73W%G}^LAf}JI&iU7k~2e z&e}LQyL?;NY86{v=bbCDJ^@2~8&+%FLduNm1(bhKtK}FFc3U%nsf-H`5dInlge;b0 zKnTMrM<~7FG{apa3Lv2&{Bt;OQZazYfhw3QOkwZrjIlT47vUsEaWW45>i8@iJ@o7S3w-jnIGk+z;Rf^NZ%8!bbF#zoRKE(QQhAAa}Te;qL#!pdJ z@Rb^bc3OP9l_yXqc>;AyPw>TO_XKwkF3MEt^Qf#it0%aNQ14n*xP`m;UCRE>?&7x; z{+R>d!w^u@4B(-{;+0e$R#O42h5#gS2;>D|G0r%kmlV+rbGQqe3Y+xgb${xzIBdMB zt3G3b#&qMlS3!l)YAlFz29RHaQXnefV~xNhC=}OV6ZL&Mi78vc_Yy;Dieg6C=%kC7 z)IPzCvbZq?EIcn|vctZ1vvRMmP1RO*n*oLs8BIW}-NG&zE&!{BvIj=!0QT=8+)u^A z;bBCDHLbk1bq2rK$Q)WX3xA9y;gtI8d*;&bc2}1!`>u9fTV)&i1lJT~wrTBsXUlbN zj-eev+BKF<(Yi_=Hf&Q!rhj!)SW^HCX{$O6`Xf#f4V%HRu6!iljD`bT;Dm+K+2OGL z#E3iR`nf6Sj}E~<%$$@Ykh6@)x@lElS_)gE`<#-okO$S6{j5Mooqsfb4%X?B$Soob zjUvHY_mXf!@MN?;GXe;|n}!9Yg%=^P;x^EwufuUtKz2JK1JBQc+sI?c>CyTWh|DF# zuhZL(>Bk(Ds_?ixDzw+3fdq*)J0>(5l9~#HBu%L9x0=t~TZu5ljkMx%R~}Jd!isdK zVfFy++sg-UAD|6H3xB#`NkTO4A(j>tTV&e@FJDEAHGKST0kQ+H@!pVb`^zeu#ft}j zbr*Mhhu@7AX>$ZItPM*hxGO^Qz0))?dz$uat__*SRV!E-nbYR~zkP^3rT0|*!%{xFbr=SogIrhgke*rYmz7Q|-Hr^>!E z-rY7zz4IijLGH@Tzhd<5TX&J@2{8w|?y^#Ua0~gEz6jQ$~p}r9;(e#JW>c-xttG z8b{3}C^naee1WMyE8iJRoPIZ$0QbaPtvZMkCD@uCoy@Y%dBG54pYb@j;a(&*2Yq$W zNy2bPATmM&b_^PTG-Z4YyzQ6Ey_kdxPL5&%2qTb;jDIn~`Kt4Czyhs@d-q*D$Qju} zI^&Qh4fsPo!at5YhSeoX#ZKl7LKys22kt;Za?dz&K)JKLo8ZyB(21AF4U_sB0hHJ< z5Z;GUOkvV+7w-D#jhd0Pgs)nBCr=zKCXo( zo{Y$b(0`q%Lu(XsSAuvT4$gysqZn)?PCxO-3yLGYgLngElt^!R#q|lLhO^Fi*R58e zt={thT90AF+y=7GxPkOm22q?~S2PaC7Z%g~#UB{y+kgWCNGth_1M=Ahtmjw6=jvBJ zQaw1S=6r9`v8xq$#|#{8oOr4?y@*C3L0H*Het-H6z#tM8n$YPTy(CZtHahLcs?v%j63bhzFk;Sfp`|J}2uqXL-2&;3 zVSnMFN9p*|n2J~7-ZIO)xk=NXt>z6L+VaSqGQ*J7uDz-(B8E<*t6Lw_?)Hf^i^E@Y zkHxIRyr#{=P^QMYIrsuJON5$S*z_Zn1T7CZ)``x>)LuA_*f-;*ndbg>V@+5Z36^#2+_1wl)bz7Dad0 zSS*lafr&JU708yOk>h56{hmW|F63~ev8}i*urC%h;*jTl&UZ-D*~b~3{q>B7&x^~m z?|%|@#waOh!Dg2qW{ejw<})KTF_OQGp&bgi6 zYUjt*=eu&h-rj_lKWumB?=F9yEr2B}4SWisWZ~JkJzwA=n{v1QZ-qn&HovLv_PZ@^ zDfqlzmU~zk7=7VZk(?+2i*O5zF@L|v<+&Aew+V>O#G)fiF%Ybq_a8q6Uh7R+FhW7N zVai)7cy1w0s8Wa5p+vHF%9k)j%?v3Fbu$#vrkF{hsPvP*=5~@W3;63zo4#GVk|l-~ z&5R$N^gtd3OrlOI{lyED$V766d$jZ3QYJDyS;7m8JQ*JGBxNi;ZMEa6nSb_{QkIvq zHF_F-e1yKl0w^)ORquC=6r`3j4to`cEkl9Q7rl9~i_Ay?{n8xOtRj|aTvc=R*lpt# z3&IS02Hx}ptL2(UR{NGJ>L>!U2ZElY(%71uN=4_fjU^Q_mbO%~ne=PkKNQ+pOD=<0 z#5u^(eYEs*LHJYYKds9=oqtiU7XvIzG88%48Y5#&*Yd+=$~wo4AV%4QnMC_+sQJ{- zWEZPXYKA9LBOggsko-;=`aFe++Ebl?fPN=%nSAec>#oI#U$~J7aRwy+UGnhkM%PYHDl?#kdKvUYPDEK#Oa(8DvA@U?LnoA ze(bh|9OZ2^OR1q^%`?R8v0A2!+25*`Nn&(9!-MAvHeGfYn!jsFW)M#b{_Ke_C&Y2? z9#y`4V^z=`v6e`y9)Cpb?^%5uQbKC;Qt{^~KICZe(TO|`GLgvF`Dn%LA49f0Ul%_) zJsnGdIhn~LG80TbdpYo&FfsLKej0yfd1%7{lbVAPkDyJ%c1lm=5x?fyis*T=$$jg@ z*?~>_XmeXAF@KT6CJSkZ<-Vn;B7nj(00m|hHrU-oS-XCt)_-%?YJ|`IRaIAE81*;d zLBFR7Uws4BzvBn%8=SqbcI6W1`G=vqxv%_>>vGe)zu6@3cl}m;55D0$1{Pcmo2P-( zb!d_LH3XY~*lspkeCyu#h2c@TtNf%@wOfBdDtwofhqu}M&EMQBU#xsbaI3Zx{ryiC zvo7P~<)FNq+GfNC_Kzxu7bzTH$W;2Wj$U+$Khsyv6aLqoXh;U*iz z%A^iLO3|Rit3bLFo?CO5_JlnPLoxe#*m?F+@ZXoaul3&l$mZ+%MZRAMI2_|JH&B-x zDSoxaPBi$n@$>!_=J6;n3W#es*#^db$%h%LK^onxUVnrz2XZFQA_+sd<^gc0n49C;fzE9iiF@t9Gl ztTFVG^ksXNm;*UM=t$8k7svr6Z+Q+ zD;XX%gX^t@LEGZS^pE$;t5ZEXZJ9Pq5gdHz9p2+Fs}h+FBScK?pN^zFfNv_`Qiyk$ z!+@{Vn)OUNM$eLE=4PWs&mB!m$PNo2jL~yi#|kH7If{yXWj7_z^4Ah7@SOP)P&rq@{{WeG8>Tt_A(TfPo^Ghl>an+W?n{J%uXZwQc8n z#`u-f6gO@~EjBoaIv0w7UyB3gtPj_hKy!~G@Zzo>A2CS5#bV-VPwV5a!iS{iqTb4$ zVui%PGDO%sVubxK*CI4UmSmhYS3!2;0aUs3pDGZgR9i8TXZZBR$01>#_-|GUSn_R< zM|L9a3DDl5AW>KN$N|V_dJ-l8o;`m6@LBtAI3a#-?2aMG%T@*f>WX&LkgiBNxr{Wq zq}{4Cf~DI~7}Vi!d4020~DJTzYq2;KQS#xv->wcwg^1FGdNt2`1!x62^YHLK~Saujxh-r+cCdxlGN>p?DpU zRIjnGq`%to{lOZ(r^PqPi|z1%uWsv+UfbAIeqqr5O3Pg_!2jYc61CE^kMT#H{w^OA z;5{)~r}uW9m)*9yUq`sNT;+8gg@s&i{~WG>-&&xv>KzlP;y922qTkieb&_i3v8|v= z(%!COvOE9Lx(+dA+Ipha{Mlwo)l;63_k$Gw?Ut4;!`~TiJ81wn!is)p?N!fJ)N5u>}PpdsKg}Oa?|VCJg=YJmnmuj z$m+t+n>r8l6K4s)X?Ekzr!o;{M6Fh#xSJ_few$~|R@-tXgQF<7>WxiiaS;FN#7KUz z->eSopt~;Y;OX)Vjh(OOrQq%-yC^KS?g%xgJNm{*ZK1usC~tE_)Zd^=5NiLV2%j}i z11M=aMDm}i^XFkDG#gT>43E)LVz`=HAT;+LA5_x?Ht#UNNT>&<>liWAj>H8!GxjZx zM`MEWW8h?aw)Pm%GDwM0rlgt#AF^^3n6fynkldBbba7@)q41Dz7;|SaFp?h<&dg%v zZ_v^$KDcjjUT+;p-cm`!Xc#_v~Xf9L2tyLK3 zaV)lc6SzizBOJH>AwRpX-0GmI?$dL-^RDC0)WEq@^{nDh!6584Un;GT22mHN@CfN8 zD08X4tjyw9+c;Zf@8qs)y^&y#c0P-HPS?;9@ABz;QFP^-ATC9!Gt!0IsBI99b(2RD z1kJttARMm+QnA|D%Gc8#7e?csp_w=Nn`TInU*H)4B_xti9<$6u_8KWT)|)yu+h@2( zRfD{qPlq{^&LY}eFNad2<r&VJTO3uhCp`G7w<2yusYfmb~@cbuz$;C?L-*n(7{~ zj+LzuAOw5*TH3cqcHGOTO8p|ED9s&yHuF_-v@3ThYZahlRC!nXN;4LsE$OS^QPdgOPNouVpK&5dG;_y#OJCg@uDpTa}i7^7E}nr zdetv125|e~E)nc)01TKOWkN+Xp^irxkHbvu^d%hB-cTm2=`nW^5Cb zu5o&nvGtSot3|w=Yk|`pU1Uie9SA>`ZyfO4XD4_h!{b0ao;{G(+3a7_dC^+)?W4rh zg#e6n`fL1dTz_vs_+0R!?zy+~h3*mLT1$+x=w|h^`g(h3sE4JXPye}av`mp7Iu}|5vC3vt=-kVxfVsuw>NhAkhFuv^V27$C3T>>-I>)T71?x z4e;Iuve$4Kk@~ao=|I*H`jfa&dXlMBQ~6Ws<|=E;#ANs%usD(-6MoHHTwGMCmRFsV z>4-@`O{pIM0KFZZ0s5Iz6h%@n*xOs;tw*D~ZY%C0!?nFErR+2RD60tmQ^~cw!6*BMVi<66`v`}nmvSPU?Fb^{s=&TE? z)?S}i;;0j^SKCxB(O#|zce0jxjv*)X?|^6Ae4}p5I$0TIt?M@PLpKhdDyb&CUpd2{ zVl*hxWODskEXFQ`6V@@Z8hs8^XL%`gIt_Q>Llsq z?1zj%0`g{lsA*7~8m37;ZBa+jXm@dm0b^XYpDH`N`G#C;2dA8n`4oHno8i{HYqod< zVOdG2qCem<>aUxxQSb+H9mai@*Ks)KqF`4<8HKE<+GldQl1XD?`aFTqUsWxjDGJGzL#lCrJSF-YJ#drEEwjH!cNT+hp2H;+Tgp)DXACe1c;gDJ;Gkq|R z+nQpb9T^e^sEIr%8E~~6!SFukW6=*zbtO{rG4A@KuUtp?YoYZCvjdlKNgD#S_Ix7GYAs$-gh!^&V?;O`lE!SmT?WV zJlCj8ljG{JT@v@!1|^C?RRDQ6tP|=kq>&Q1d+c>?K#L}|fDmg6s8`YF8ZL)z_%%CF zJKT1sL%V!?ReFPe#ar2&k7?c0&I%yTv2{b4kx>i$=5z%T*fW6AuVGUX( zdiu$JCkerjW)>vTcfkL+YSBZ#>C==c*D`sanGc3o&vvZbk@e5-EVWh{Tlg!#SMILX z1bNF^j&X;6>gL_d#%*Bb@oHu<#({z+;k8L!y_JvIHeFrUUP^b2b#np@kPSe;`czzB zo(Z1|3ORL4D}YVB7cbl~hW5C~@qzO=-bk2S(tIwvxo{alY?c(*0<~nTj7sCgCgD8g zLELQd6?9!~w%o*1NbN#R3fEqDPjltOC&wlwYTnmfya8H*VcuHdTcB7@EgQU1@ghqWLMW$F0&lg1MoCSz-SpfCY2Pe@rLp9`{5fALSI8uOIDGQ?D97%ZF0a$Qdj7s$KQ^M07` zRmNk>jbeYd@iLALm*dGq`hWq%AMAd!WS+&$UP{-Rije;LcuSCu=jS}`-l@x1-jT%u z<2Y!`CA5el)&FI~@o#SEsB|<(inZ2e!AQ=YjkTn;a7VsHYdHq+;qeblkEYJC_-eIq zzsw*ef5+lec56X#iFJB8O*V2DGy69?b6VWwAjKD&MqNYI-v-~OhVeIt0mqTQ1A{=9 zQ1jOycrFAK>Cg(Tx9iv=K_tgc>x{j(Zrw$EGv8ea;~x$K-br2eXOH7!#i~cP3=wjU zc`KkEDtTBPh|GF`aHi{V3jK2VflD~XA0CP8}VzkkcDvd=Y3b0 zEyYtPj+nnkV{@pszN3#Ip=I%72*yf>nTQtZr0TqM(9Qa_;laMA?C6ootCd1Qvs}SC zyA(Hg+=M@$hac{F;x|6l=NS_R0VMTm`|Vp zBSHxai$ef_4R@7hw8?z40NjcKtL-a(J7IwF)5qXiqLuF@rrH6pkk+n2*?w2ShT5)k zkoS2G6Pk^C2?inhT4i`bS-V@abmjC@m?En0~-Cs`h|(=qvufz4Ol7K&#lm?uA~5$4sC1okex{y&T4vG`dRnMFR8Z;9-b<%2W2QgWK*1 zSVQ>~Ql_$NXJct$w(;)4OPk8}koXuVpV;>`#mspOiY>YsEyF+>M4My zOaN;1mgUpXt7U6b%6?8BzLyRA0!)vc$mBy?n38Z01q%~yUb9q4jDF^iH7B!f$stLx zO@42<7143zl1$?Ll3mzg()%zlnTKTnN42kWWGvUq4h_!}l_>?IfWkK%OHV}^%5(aw z=9wD+GXz9voWvGeyWJ5tuC!kC&&86gaZ)q z6HG~1{m>@fOIFJ$*RuQ=v3#uNlHL8O8@2Q`HU8RL7=*2z{E4e%+w@Fg8_nX@$3P26 z3PX5@F?6hI{ONxB#pE_!U8QHiS>0`&ZLxgXDa;?mDSiz&J*J7EmnGLN40V55ss3__ zQP0(sZ|J<=g#9!#b-%=I+6}a&xCh`4K^C&g9UDsW)SeV_!ju;Wd#HI`>-PN>^D{hB z#Tg9)?`+)}l1)b!4u^zAMJV&yHO z{KO<~7SACpwi{bXLA}>1tbKoh<1_daXoYYz=CEzJFo$2 z0RvC|NZ@m2xcQd`{6f;J4d!x>{CCvhNMI)LAZ2J`kmYe;L;*bg|yIj(l!`unK#MEw@MNUii+)KNdfh=Sef21PI>x zX#}3{n-871V}^gYfdHflWoJ;tC(9^F8E&Tgb-GDMB*KV54D3x4j2RMMa8xOqH3`M_ z=IR_j@Ci*1e6gv(M^Bpa=e#wVkKG{iZ6c9uul6&)#{yWgFrRBC1ud%APi2SvORTzg z1Q1UCq(EXszF~|_19^1Bj9C6P>Ye=tX8_&}9O3zj&PJnnZvfQb?iPwweG061cF!gyH+ZHwm*B;<7?SUbeU7v-Z-XQSk7SDHx4 z7yKPVQ}<1}Wg#o-cMkth4l;;dIE2n&=AO$*HA%L2mMWEpK)%uwMYMx>DFJIYo&JL% z6|d@U77;JrKM5GAvWm9bkA$DOT$W5|#?)5-;zf+3i;ZwL|;O$bbqFAFdWhE(g0-1@W8urK^%5ty)9hmneG_DwO z+H(GKu@2Z0+2MZ!FwX=bhE zq2G$J^WN*PNr`oB$L&T|yE<$A7!M|E;vm*aH6R{&qOY=6#U*+Gt}0?(ZV+>cHA2_# z`Uui&E~v;J-G);nFKC>RM?HE6?p(Ak-LUrw0|N-I>6VnT*P3Jm&W?&pfLXod(c_Xt z4d^+|R$qt9aYY)xd*aZ03S0JVm~W@kEVX@QG`*>IcHrQ9tbjKdMvlqCm4GOr#QPN; zhTn2^3P5xkCOE!dFFzPpV?i*0z#S}Rxa50?&;e<`Z{1+{3#DdVQ9UJ4)eJ1Z&|(Gj ziS8;_eWJsS)gQG(_whK0m_;j++?LCDBSBbtN_5Bd$V~$$M_y z<0w7&oY&ejX{}vkfXEk@_7@X}=#|&NgaBrMi|26IOxNJ}1$lfmHQqX>++_))v8I`; zCp&j$-P<;+zpuD5(&9}7kb*poVV2~T*`#9Tekx@nECsL$+|z16Y`#~ z(CiA6gO85f)l{jC>iFgP#?WzehGFa^vJ;7rd-&xB>M{*GwT2Anz(0i71=2UrPXXZD zBV3!fK4I)s_C6y@G7DaL{osac#bm6c(@kXPxelBD?K2dd0ewsUFnwjogMn^t;Yp5H zOh6K4S;bkSudMK~LuIq{H?++C_x%0xo=5HQn2IAR^3xJ_!eOBmYxo48duDTuX|Gv5 zv`v*t#tapkh{YX9B(e__5vZ#4`hXhyG|7Z4W`+@8ybXbDP#1zJI5Am7d{BsZVn9QH zB&SOAj@6|1#S;2=baBL)g|v!qr~?ERaobhQj-}z5sA#z2<>$j#1toWeSFYM9YK)v0 zTO_bk2W4_(2j~9bQ6r}6T9&VAfk6wl`7T&YYHn<)cJO4&dHvN9ar))oML;*NhaikV zY2{991Y%_Wzm4%>qS;_$Afzlbh>;kL%VCf98d{{yq=z?mA)Xxj&7<>nY2+=TlEpYry5o3F zy*}IJC9aN0vKIt`7co)u5a5aU#dl;s#*@`;$S~L=zOBH@wH7O~)!9%s!*9BSsa*YP zvl*d!0ubGAkv53KU8yd**No{#pfpqVyX$R$Tw6g2iB~F7Fi4meXoZ^>I5|l37nMCS^)FvUQ$Mvr4VTdY^*l73- zv*6B)*>C@wiLRRW(66Q4Rm+HRk0gDERNoo{W|m%;MNcsxv%;JewVyT+m>oh?t#Iq$ zIC5yXFze@>mcjJN0Yq$a2<#F3uBP#;XnMmdnTB#wln9c{@4EAjT?|8^+x0^VpPMQE5r&J&i5caq{8v}4dLhAu;h;%jSM@- zy#Y`A(!qGsm&C5960Q9eOqU^GG;R`?RjuNhOg{7 z(z(5WpZe!3XMe*|qcvO%1(&2lC5|d~DDu-)%(*y;>F^>tb(7~_X{YM~^LzAg5u_B@ zG(50^+V{n<8h{|szC1+2XVULD_}9JPV^ghAPb6OUvT+TusdC#WwS>*zNop7HzI=(k zyhPj@;iGf2Q+`sAKi53tQR932P(41_4t7iUg;apQ-PedlwitWC5CMi7jS4Qn8X+vt zYt5!b)xXHJ&N$DHh83~>^cc^eMHLSn>#7L?;~=nq0ayo^yO%A2CC10N=2Dz0=eqnd z*;PiM(dR+Dc>;A$&kb+5>09uJj1HEhm~|_trz1ap7>c{f$2`;ahnwUy^U$o z5>p?#p$hG{XG?iEDQKo;mk0u zgrNa!>&UwPYe)Yxv^%B1s<+_H!S?r46JGtHY0)*OOjB35{Ea3iLWY7;a9^(>aMV`r z+X)F)kyP5UT1kfKJa6^S@^W%HCdJSS+wr!_7ePD&V``T{-Pj7qO=-`7>!}!PL zR*=r<4@$!>`gFqQ!OY;27}y@nANQr!<4#OW+U$p8560lKaB9)1%6QxvmR< z(-v#xS1A;thqvxP717Y6Y<1ZMdlm)-C($p=^SWtJ7));p{utB^>_j~?Y}g;(1D5q^ zB@$1j=cr3^DlSjik!jZITDiO!F&zym|3IGvJ7rqqIDfl{bdOBr)mu|uw?U%);b)W? zx(t@qs!1`Bn7b-QlSgb~$&qt1in2z)V5#@sxhJ^}_p^uFjtjMp&zhr^*88f5w_UZ5 ze$sVdH*Mng&{1}_g_U*aPRLFu!5@FvX1Suzkfqn*dPZ+1x2Mm9Let65!gFttwO_Ay z>K36ht}HP#-n;FMp8Q;_8X>ILldZAT^vr|n3u+nDMU-Wep=!{-Xx#ZeH`^-#WM}q+ z&k7WFWqzYpVd3xQMvELbzs?3oRZ-lfAaZO+m>XOdmN7c8}>-C`DRvA@p#QP2lmojMAFFfyp(a z+=1qTBJjs(Nm{eoF|nNnQ>cGpdZ6Y>L6PoP>Qx3mn^I84)5X??1+cXm$)XjQ)Pjx? zjd12Ik!`uy3m2raCWIv)V#14l~rWRh<#zY6e!o5ELnU1B3i&`&c zyDWx9jaR5NOMO9v6JM3_X89gRTYnRE2<}R8$Bke|l zBrjXfd4i#HrS?nmhQuJV2&Nr7G!$~AzxDdw?5B6m{baIhD5i%r$nQSP1{DFA%C-j=gz2cKj6(K(y_>tY>OtCw9 zqsH;3$h()?a#oDyy`i;Wd^a;?OG5S@WGMB1^$FUX zzuP;nVzQhvmzYz#cZGveN!qwFkmB~_H-3h~_!|w~7EH3z9_2>UT8_rSdax*__%hA1 zNS5ESv4u_KJ5A9`scy$Ut^TxxxI97T>iO&a{ci;4%#=3lJ+mS+c0{A{!-?O9V-47m z=pWK?SAvI{U>%|-00f#Sqth&_1yN2Xs7=&+OW2#7KctstdPIER;Yl!<+iB%RvMZAPx*(?GDqalaItXieS={v8Ge44-{gQ)y& zy_mqDYM3nPw-F>}DsKT}JxE^5=>@f2Yh~-V3O)Qbv%(iJTshNt5ntpD#F(`A*55iH#_@0Jk&Mf;db9WaHV=x@#jaxrF?*jSK9Eg0Vh4eP_Z#e6?VSS;Ez(XzfVpif$a6|r z!4fi40hWc%;|AtolPOS>r)$;^OQAao@fA85zh4y!OiG9v1$%|wZ+eIZX_X+8Dkgyz zpY#=OmD=C0~mJG+q96fj=cx^jTlP)TI?Q zQe@p?vRv+7s2UA|mdEKkO!n$6wWM-LL*3pDZsJHsG@kiMgs63D97IS7$C>4qW7R$< zDJ^j#Nqy6c_%bqfm1q2cPO~sPf_9{$1!x}@DicFT*-}Ros^{+`^Ku>gzC?hId+MM- z8Ba)xsjEPjKQJagOA;;-IswBM>gGB_U^29`tGsO(Z+lwy`p*rX4z|N}d35Y@eYi5X z*bArYow>PAh+uN3msofS6QOCulHx8Sb*G%3$&88GmqxE_K|=b<0sHS+_L|MO zGFVE8YD!*tWU^ zt=ZB))8VP-rp@1`Vm_Th-dsUV4zUsfU4gl~i}Vb!I)Rxdcc&lO87>Ue%iJ|MHlH@# zeyy(j0&7oVh%Z%H#5jb&I%!g<^oz*RXnUZ;L?4a3Ci*W_C*Bbd@G#`hfYb1vQNmz$ ziLbjk^n3v<7#CvqPM!eqAFP=pod;zRsiPto0?CwWx!c*Uv+p98sQL08P5ft}L@L5! z)}Labys^J&z$T(TG)fyNdpv~!0;{DEIr5WD*#lFsW8lUNz;lE8v;xb=fzFwHIERJ^9QKx+PtKd$m%7YtNXYbt!pE^C(cu)mjYhh(zjjeL>CpfM*~c-Fc?=q zEp>coyU5HH+1_V{P<9xyqi5m`H;`4KH)&%?HO;wfMu(U>W`Rro8tJrETu$GWNrDZw zgw=Eq*H*g<+Tb=?HFgloD5p~}GJRN&o|U7gFd_Jft$xJ>votAu6KSc%yV^ zMVPaU80woRrAa+MoD|tiGI7*VQw6e47hP&7fFtQtR>sQmL7$Rs*`9&W=Fwuku zVNgl{(f%+@vj!({uZn{eLYfzPo$7^B({GbYIXeDFk<8fMUlUrEBO$mxPySL4jpGam zfDaK;v%D8nfyGQT81RLg7u=%tJ50}oufZLQT*D%#|Kh<>dM{cSn?7gB4%jr5bdsjV zN#Hn3y4~v0&!8R68v_^2dg!j+iA5kGmS~E?ZPrB1bbv?{7{)~#`-e1xO^pi?v7u(A zvF`4Khfn+&LK!91>oQk!(DsE0l7Ht6z!$7~Phese_L`pNP3ad2hb^$5LV9-R#AA-t z7_o^x<{1)9ieq?dK{V!LytgMWfwPzA-GPMg?4pm-V8CF_WpBWc6qp%-;H7KED})eo zC5uKFn5B?+xI^`d+5ZOQ1YGJ}MS@x?DPNzc2H;S3VTUeTjZO)+QJDCB@R8%v3VW z6RNK8P^!toBXu2RIVa{!7yYl*kpe{ddJM)Mb zt)e0w^9UI|z;UYw{uT3+F<=$p5tJ`B(_In-#aHGGuL34Mxkm_QM%WYtfGE7|p$hnW zxI2!mOao>mMTT1B?#7CjSDU2J!Um50r))9r6?vgKt2vBUN9oL6LrF2Wx$!zqc4+W6 ze-Lk{vvzIDJke?^phOh>aq_yh{u%-Z5@;)EOV`b%i^x_(oKz~=A6rxOq;a|IoH}`t zT6%D!YMtZa8VzJO{)N|5RVX8S5q6a@b7m}4;S?6z-gvJ79-%32e(?;@bufxV$Kpb{ z0^!63c4t4{9QLo^*2qg1c;JGY(8k}Cw2z$GjvZH>>8C+&21V+@)kRup_q)VgoahMC zaBwIozqn@bX9FLVoGuk^<(L|2dd}o-Nt{z$o?1xHq55c`w;e(p-nxc3Z@PlcvwzoEK$kh3^Mk`#JYww=pU?bc< zOf4<%w(OSlOt{(t4LU3QHTx47=Pg6pg*u zq5A2xJPrBT(_(oE+)1+RJdze9qGd5aHGcv!dO}jfUNGQX*zSdIMvWG4`n5n66s!?O zc?3@ZXL0>lEklQ}w@Fw^^1&JJciHFI^p&eHSBXC_s=2(IW+Bs%a}~31^^0Eg?|*Qe z>3+xHYDwJAvN##IsdW@2QKJ$W0pnQlmfp(ZaPXH*+Di|igznH0d6F+vZ|7V)9fs3b zvs#NppDf)zFXD{>cgt9*wp^rA)Tcrkqh^2t^o8I+f@P%!N&Gj+Fl!3`F7uz5uvn3& zXpnbW&vbp73Ec#+5Iq){?NRN>LNH86?u=N>qZO8H{y|(j<+MB&;E; zH*?a5_DCBO;-z-|bNyPa!ng4^LK$aNgwr(6<4G(lKlKCJCF1arAt^i%p;l zkP}q=(3!~=ju;>Li{Aml(#cCwp_I^fQ?>K@bA}Sega`z+rjbb#j-Paf6u}8LgD;% z*Hv)O!SR`$p8%HrpIghuBtyLy%I+mqz`)?U{cMf@xT9U;ws#fZka6EHxOxDIYrYj$ zq9gwtF7Ia+?s>?7na=%{$a8et_qx_=^e)8d@-ds@po^=EX+f*-cefzD>l)gv!q5A~ z(NIdtfI7GT2LT7cGR*6gkFIgUS3I?;f!-B8kR>LPSPM`P->2<2z(b~V_@Pf1ko61@ z^UG!m*iqaoVL2YUMgSF9j))tR@Ant zmci=QpwIvHV8#wMFCpS|YA?(EuG>&(46|*|PYWyzx437)ZT_nsW^4NNR0YmshU_zB zE?;&Y78NC@St(4QhmfcZwhHqNQ1_$Wu>p+9muG17(O>6)5dIxg*>7+qKbJXkM{808 z`0m8h)0<_`hTjb#?XCP68d%>s17QoEI;`scAR-Aqa$?E_@#aAFHOH@z8%u~T4u*{| zc4o)gmW#QspsS7GTpDAq3K^(B;%pe;Na||oz+0~3XkA0m%)`B`6y{e16nH&_%3g&T zVqT{);`-hfSIb%4W=<HNZoV$QZdNCq{z+goJX?elRT%`4AD~nYfB$N19j(^$y|cHc>i1joY4?W8Nwc zTmOKT;*g{rhOuCkQwtT4sNPk9MF0LQRoQj{aTuy~)smS|>6D{+1IC&K0h>4WjH_3L zCI{J<7v0>Ij>(G*v1-{H59?kfm%8dFUH1sgf{!j`=VklUL`3Uddhp^E>Ut>eS`gZWdTWjrKB{#VzOwN158l`6F2VJM z+wMv990=NjAPqmlAyk)d7*BsGJZ<)0(Bh$tLS3wXx%%u(|Exq{|4=jk?y&_bP-?)n zmTbyaD{}8`UFKH1It~ojo7*JhRGrIYW7?GlLXsK{9VF{eBpC&nCFet(B4_6SamQAg z>2c;1(vlTW+)bS!QudI9T|hU=*FRd?^8;j>BMCA_Q6xv(r#xDDVe&ggh$F_-%(cTK z$D4BgXYbNB@YGHQ zZ(Y%U&L*Il!k~87&$H#v#E%9GuHuqA0E4`vmqOY$bWBSgn0+$W-0sLV3Mvkg-frV0 zmts|0-K45#GI`)EgfWlwO_;ymjRPBz%2ZJ0Imyrj1dAuZ1vG>VAYXa@0bK|;T}J)g z@Z0^Bv2Oo#ZCwJfwYWnWz6W49g4=S!=hkZeps&7~cH^h&s>3 z97|+RMs{rL$*1?bJDd>k1<8kLrr%(ThHjiwLO?~PlGM-d!&b1Q6(upXU=_IAe-mYD zR%#2(iqk#<4tYS=rTAT7d*A{Ca!??6U{PkC^6<`@GRV-+(l2kK4F>3>yUwBl>f}-$ z*!J$P%rO(n+in$fm$;3LwcKxO0hKpID1FCxmiatA{1F0{2kj3r)D>0zUdXcr$=8Zp z%duI)LV?W;%b6r18RS4vN?8^U8;{a);d}D#r=AH23hlL_xdZ<=92R4U;K1v+9PqTv z%{f5n)F|8+@2%VrjRSB@6)&*SMvkM2fu932zanrMV??zkjf%%@wcaYYvQ2J07@Ra0}Pw!4O7{*B-89+yJ0TH2%;sDZ@3?=4Gyj z)kq6@3Ex}AS)RFVa;8~27agc1E^r8RF4vFcd>^;J0?>E&lJR!c_78FAzcTy?AmZHD z=7NuhqvAlP>~#So2XuD>fBhwkPJ`^d^>1rh4gt4fBwWdktKD^>!}eUmk0U|-QF}AH zN>P2i?{|pz*nlSy9$}&%#(CefY9fQ?Va_^xq zVlov%MWHr@YQRq#qG6csaOo%2t(@CJhY)ctwGkI;j~4{#PZfI8Yum=y6i;_aT) z;lgqvvug6`aj@OE@CYAbAt^U*`q{sJ3fXRawfBNafdGwW(V&ceudTK83Iak>IyENh zdrGF=gGZ3ohvh+53~_twYRm-+cMc4-BMg=`{l^DHNTsy>MIeGNg}70r%cjFth*#cF zA}}(;p{w@OMx6u}BnRuC(#6#KO&K@qxCya~J^W3FFHSu_P0DFbl?63&y>J-{xr8_Q z(6!2`VE`IJ%$>l2s-Xp1%Cutf#qlv+qSn@Jh3Zz>14s@fN;MFLgeGx@vrZ(-sD55M ze|n+hX}hs5Lasl#)=|bSOFcey8w1&iP`zJEPp`M#W6G{k7aj8y#8Zjk4WTY%>BbsP zM5mEjP=v^^j$TATkZ;@;CZ4%a2x4j^(H20K`~drX5==Q|bFwlAgU?60h8w29QF>MP z>PtmYbsGV1fP-v?O(Zs1aWxRpfnDtkvmF8s!Z{|9MY}{Q6guYFtnIkIc7BXc9?H2^ zu8}SJufc0HUH)d%i$_vHx2(GR z{AOB*l*SkWBF+|gz0I7WU{*7x-S5V45kOD~sgAQp1pQ+zV*|!`?>4xcFR@$u+tU+{ zRSo~JFABUu32I_2qcst_-6x$cmie}w6xxWIKoDfwQ)Vx`INf38DO2R~o0rx$>vWHv znlk81R_VLR!AXdGQb7>*0m`;ed305xDXu{B&;b@A!7fy+c_B8&E|j!&!HffY8!+1T z;&#&<5U>-L>ZS+`i>cH79!ipeY8SJU*&-n=q57&l9IOsNGA?__T1CRb_Wji)0BJ!Y z0CEqSZjeG!!*LDF)P1oFZlqSr$3(wZ$^d-f+QKL{BV}Qz_65SXAsE~MrXyEM5F+O+ zt4NXDR9#A}x52pZssuzGM%nN*(DHdbq@KXOI?Ci$uG}wlvG$~<#W04}Dm&{Aw!n`-|dE&p8*1k@6 z2N@f+C(qSi>P-t*nIumUXa_M0nvOim9i*WYlu>A^PL}HZ?aZccj2yp52WYu)33kW^ z0DS*3`TY1WvaL`>kyAig$uJ5M8K+Jzu6-NU2gsV)jcXQXLQL&BlvqZ*TzWb>K4|;A z=VozVgH>dsuRuy#vfs9)3NPnYm3sVZRWj{E?yfdrboO7$& zXZ?R8{tlucSWen&XsGo3Hd*R`3%1n@X!Q2ad&!v}&8bo_j4tZ|(BdpBZ-i&V5w5qx z-dG<0n2i{H1Qic1@XKy1(hV}QS@7L%&F*X$?_JM$lKA`$WgN0UK!)q2_c)M>QWtPa z_zMI;cWD2w_nAE-a25Jry~4`+UsLgK?d^nr;c;uA5VA;t$R}`gwsb(w@#j##brgt#p>Ja>ljVJ z^mm!EA_d!yjh){z^fsj$<_3{0n$_0<&vi#B$>$%tn*g~>BV`Ulu$ihFqe(ytK+lrK z`Fdv7edz5(_1AIhcHbzx!FQ(mqq{q~Oj?+`U=63Y0cFp2Tp4eU?$T2KwNLTn@bCRy zOdM~kQC}PEkGEpEHVt)_#qk9^9$pUK3ue?m);u5aujx1mxMmJ5#vU9js62I1mHr`L zY_+ID*~b$YnC8^=jRTHpnGOI&&^||x8!r+A-c91JLm}0h_+C=_+T{IExxIPl);7?k zg`PwsxUnz0kK)Tp|JBXEIreS7WZEY#3{!3suby(CRcP*6J}64m^A06cG-V&$WoaT* z`n48nUe7f0J3&@We2O?n9IMc~?pVJzJ$jO&O3xP-JROxU^s$~X{~f>-nlBCfxs9Lk zE+6fI#KJkyi$4WSf~Hfg|0tToz~_5|I~IC5$;E+5uZvASiF8Mt58Ecz z7PC4%i?Ofs5Iyq#(vkyq=i)=NEt0{3ems#`-KKRY48$F-%}G)~ld@+AqVpty3>Wdv4Riv`MOV60t##C+la0tw*#Ii2xll2%$9d97jydhKwC4Kqg*h~kB-1B+J z;(Yx{w)wprH{Bp{1lDF>%1URE#mo`#ut6wYyY}yjE+)z#2}uFt%4+&vk^|PFgitEH z7R89PrW8Skhz01fU3>@iyi0E*l}^!|;q$AHJcMyhHdx!|ACdCY;S9;j+_DnqYz-C> zr#q?%jBhAD;z?V1k~jpn-{^(r8!N=$ps(vS_1IC--3jQBshNKa)@E@nSUUx#P05sV zfM}YXwrziw7-KbRjG3<+DOxlU?)cQo4PA7UVWT0Bd3<}F_vsaKf1Vf9e zw+bglOw{xL9z9H#)`QBJX^?yN;lEE#i@|>vyYD9|0wJ$p`WCBx7{TUsdgA+X;4<>m zSrbZbpi(kWBU&X5TpHU}H5pl)53MX0TNEJDV z!#o&k5Jj83(N>@f!p(&ejsr#nQQ=q9A9Ic|uH~+?+X6OSWsYAf*3P*mG1@@G>+!v+ zI^s*htWzaquA>8_A9()*nLuX0N6JT9V1@w{H-yzbzRdSooZ|hEX@T-N%S2tVn0f;t zfksZP>1JDu_@eBdT_Aa7mrkV3kMAD`l3r)7TuF z-`U1+q_;-{-h`c;a~+IQu7k#v`QlJ4u;RGq92-sa`VSP!JP?D{=1?MT!O=~eImmsCTQ+)Cue}bJGM3ZaEnKNcNyx;Za zXo=w-%~Bzv;q30{^2h^@qsV;vy2^X97Ih`Rp7^4$xCFnP*7*nkrx5<>AE|fARnQ@W zfyQv}rR#H+lBFmswbXz$L*pF}1Bux+ZG#|V!VUu)7x^ThaQg%iQ~(X7sI^ue5ojq? z35R4UB*lsi77cPrc22$qeobq+b`9>NpUV`K=WZ&~%OQ}kse~Tg<_bE-In^hvOCZr`}1%?*6 zo+!SLGnDH*P-L;YFZTEt(-B=g4TXodkd7*0m@=3^Vq-xcwJdvAE@*JHbm5 zKUD;g3qUPa7gJR0;)Rrug-!b5Z@sWWLzNz_v-x|UXDJdLQ`15@=TXET~(plLJ6tOiR z*#R%_)eAEaVM0yl2`Eq_2Vu*3Xu`n7f5rB6ty#e^z47%? zaLd8hx5|fs2)wN;AD)AbB_rP2` z|JCH#CnS14i@zc%DEqMd%S(|feh`+Kj8gw?`{ECkdc8Q8p^Fg{0X3Jge-sk~AUH9X z@T>$Xf4x@8Zrd;rz2_@*q=1SM7j3;IKoYcQfFN~yX$ph27@Ms`8ltlG>pLW+GP2+J_fqJrnR;53@l(HC?> zNg98hyno&Yo9N1>6qiK_e|h&wT;xdFetIe9e_Hlx29ximi!*|R7FcQ9cka03b5^dL zl4ZCeWIX0=oaAYSKEwp6I3Y+&(KSzT!U;vSoOM!IrRUCO=q6=cHgzx_RKEx_+lrs7^jfH; zL!o7yrKpA+0jG5kx1^d=T(FnoU}c5Q9!0xsB-D!*$lSUyM+@W1_7E0(6Bb+X!xukT zA`Evfo`d795l}t&Xwf_Y;6W=xe6N*(e~NZUDG=>8Lk?bs&h8hY53`xjfp*bY6P9Y} zL{=cF2XCW?U8rrw1TZfs|eI3;Y)#7POSddUtaor^nF%jxG< zb^c15T`J0QOc`Ifz{RSHC?#G+Wl)hbH>ilxQAN&Sn~F+~OJ1y#IQMw(9bU5;Wm-b} z<9qVS^AtmKIh>F#_aPEqpo-J~e|jCsI+5EMgm<#y*}gZis6Z6?;RNZ8PC-vNc~o`> zi40mBDOO0#(TQh;BRRGeXSlZFM&SncApxhmz9EAxAWm?w;k!Z3`p&encWuQvj1+S; zd{;mXlA);#C|))d_49Y@Hrn{I&0_djz^MY-89|+W6C6Ys?&Hk2t6JR+G}X2q|L7HZ z3>n?+Qt9W0l`y)|{cLjd3&fL{?3ba75fcM7 zF*TRbIRO*_GMCYK5h;J&8rg2#$njlYK?GQs6L{KWA3U8ovZ|R>s&XhwTOQ`Hz_k}q*d9pN!d25 z-_QO&9P;X&h#cQzu^0Pzg6FJ-Vlf{UtqZlZM)GQk~Sd*pUc!#Y4AE z^3qNxG+~Cj&5B3v`DzWnx~BQ+f)>E2?{<07uJe*+F1j*p^J)a-0~A=4&5ruEGQb*G zNb4+RI84+b6~2F9O2$OR^;MqY>=oh>xJj+4(KY&_E2w>arAulVaCL_V12*MlKML4v zwuX|b)I@Xxyq7#cHZ^(&c+*z3&ZwPR&@HeN@O$+x^ruW0lCvm|0BwVAbA>?6y18(K z&xEJ?Wm#V96b`vHB(Fs%8TSNHu4oCeT7Wv-cdpMo5%+)aetC0xc6_>cZpftc`*npC ze ziz>-7GWuv|tFpLV((}C6&$>m;6EcRSsiqbwIJOe{ST^{i4bmr+ z=jL{_Ys^)^<~`cP1H~e+N>)vN$jh|ovPDIf5j1~;LGi3@LD*kWUK-hWjjgKA@QTIC zeTVu6q9$GUB@4r7hk9cLQvH&2{<>E{;Twu!=&oYW^qYR#up`qndR|c9n2xU&>Ss@R zUDJWC-O{Sl_b8a-leg40$_VTJ_V&#O7=-2iUyQ*8Ryn``r@nOh=E+Y-Z_keYIKrFd z!I*yvm@na1urO9mx;esO$pw=^2n8&T#6tjRyLT4=`Ku>Dkbb~|SS-MhVZb=|4?#nQF_T`r zKP#4nHe-+i1F96*ZxQq&YNSe9uEOiJyPW zjD4X_J50gYIduy9Skn$X9x?SHl#wFrP5WQ%k|{AEi-j112>=y_27UNopvV!o{Vb*g z34#~c*J93fAn>AHNCaUIIQ=b=0rLWW074T$Jn#=RoR0$uz?-Ti5WOys1l_O81mqFJ zG&1;^&IkYmGCIT=Jr3b1JbgAAgS~&*mlcce!+BiQlL&!*AOrjO$uTYlq}@IsgN_Zn zar8y4lk7{20reU}dv^7L#y@*P78p!%2~lqU4#Syyx2D5Z2$IS|H_dp~((?l>q)>w? zSg*@!U3Vou0+xctb-#Z0!ZEQr#a!m005KRm>#{KhTsk?H%pV^Q$DE6!v^B9JM}n(C)}y$qcPm6 zeOd9u08hptQ^2VM1H1{C0|UJMAw4m`+oAOP1b7FtuMhBc0PPpxJ%jrX26)ex=KTSl z=dsA+|JMPYkeD}G`;p1Vg>rx2XiuW?=HYjU_I4mWH`T}RevG- zNF zOzs_RK+GxVQA16_ z1R9fS6n0UMNIak&(-XLqEQ-|pHLhB zE#QMBu}vbvRzfub!(=SKQC20S@*B*X@*9;Hwsmz`Cz}mEmvCy6q;=I;;HG94qD*ND z;oZ_!oiz4XvJ8LNNSd#6_}6uAs%Hyzit(=Y<&seekpd$D;k%Qn&5*0lG(Jq>vQUX; z&OWf8K3)vfi=Ia;f+xiwdn5gTyZ_W(Tbp-dsNC%e;MUbPxiok8vHB@kJ^Y&57utHTdT(!1y=`fnib~kB z^&xCpcM-ddB`VF6V!2`jVZ9nEM#mpMeEjvx>*F{7_;m8|6Hx!-k~xfEj~x6|N(@CZ z>Ku)=#h!o4L~!3^yi+F9H#+U8t_!{&DFm`_m(UBr0u9$1QTp=d#Uw$*L@>m=+fgI1 zbSFZ~4nLd-3C^7e$q#0?4Z2sh)@koIjFcK-ezRT-N49f~MS}^P@#pCgv~Z2RRkqHE z?OJcD@dSI@lCG^b053Jgt-iWDHLP+FNQJYS7IZ_QN%K?eFYu3|D&G?+I{ryFXcw&HYEXK3wksI|)|XQj~OjQ>Jl zbO#6f3M6iBaucz1MS}i#0wl&VzVTdj-ED0V*&;gAF!FoA<_V}FNkt`je_WJybv-kG zgPMO}2S_$0ev(jW^IC`y4uGerd!tDsrM|Z3l=@-$t*tE95FKJI^*I9kbb|kE0vF@o z-l7zvsbj>{8N5q-lWBy;<35`hk92cufUp!Wqz>imYWgyUfO@!e|Fx%wGef~tB*u3t z7`ez@MAL^LJs4iJ+af7V+EaPpImziEMoEA6pRVaW+U{Ag4@OB&9J{xKwS+|jMmIl# zZ4c1&tih<7POwY}58)l6cB6(}Dj+x>Q<|tLOKgi-JXYx2Og=OtNThC`|kb-pss)xKuMU zk2)CGC>qy{OoWB#K8)^QhjxQ6J8!DmMthmvuC2E=r(DqbWZ4;Wh*P6wXT0o*K`+Nl z5X6(I)>&g+FI-R+?HIxdW-;#^oPLk1y>O@9foxcKea(fZzks-_8@yxy$AP54DM)&E{EyqV!NAb~{A7av2w50b#+BAyX#{1>)Ahke69Fc2*D*&T!4&r``>BKR8Y;dmVU-O zzbo4pux6s7ZCiL@+~Q`kcw$&A`!CPS3Pfv*Wf$5ciJ35d>gBdtc4b|)IP+*OK|>-* zkLDn(RvFFdYS@2UifC29s++PxQ6!H_(h_Y1OVDUnZi=t5j$8P{U(knnwQ?`7i^>g! zP9eBqGEKc~pH4r1I)8N*I)jodHvPn9zFsq&)*At=tj6=_!f+;)f{tLBk@VeH!Q8-u)dGPE7P2T_>^+N$+lxO@v`W=tG*$ z7|(jwLQ{VZDMBzM5#KmG*n+w zYi~(uiC4&@0`AgZYenNXcxA;J{1w_|+2P}N#5pjKG|r;4>$0V#Hu(~a!TLOSMrI5t zT08N!UA@V>5*-WG$W!ZMEp@>UU|sNoH>Zmk=RAM<89lw4`_tt~fry6xJEa{yHwK0FJkSY^V_KktDT9%oFYPlOle3X41E28)qXz;Mtj5(oh@ zc?^I4$PxZzaU8uXe?!ytmp(Z)xHDG|Kxw)kN&z!es-lZ+N1f8P03z$Qb|ckty29QB;J7zurZYF#ybV5K|ok7ZPZRY0>T)$X0a}su{BQbK`E9#3g&zDEIcGFCYTgf zzvj%Cr=q`>I(l2V1FTl1a}hjO?MDG|0d0TLKZA%1w#T?ho^-G=)M{^4`=M4HIu_VS zW)48@Tq0m8y~9yL%So2WY#e!zc%adQ1Weg5_fdzxv3KcJaAQ?4aW9$>R0r6QNW>v^ zAWZr>2;3W33nmfT}p#b#rga_1b+^cjWed>xo@7 z#m0tHij1H_zo8U*M2jjKK#Xt^6U_xbxv_{=(U;{VwN-(_4QpyEu{{(7WiPnh3;0w^ zUCJJyb6Ibz6>3Js(dX?&Tl{D1G7f)xka!Y`N2+iZK&k*TO) zS2To@<3QN31T#&VVc85V;j+sd@07-FOY|DM(Y0F}%-5Rk$Y^@Ax4{n4 zNC=B&ASPOz%)A<{!Ud-cSWt3@yCD|2neN)~C4o-i9?9^;V0g5Y^D99dDy5rU_s+nr zAZ<}t*HY0n@!Z+qWzCBabJ%}5+RGx}v>kX`$oc^B`6PJ4UIOT@%|L}D?qJ)N+D%?o zNO7_6E)`(>!f6jj_mEgFGiHXo;QjHdx1T?~Tl}&|EHR|DeY%XR_k!)&#t4@7S;L#t zk3R)bSH{fr!PQ2H)JKTMF=8Eq3U?Cw&qXl`ic?CAehx5*etz<4hn_iwr`X1EQCVGl5(N*vc`ABcd7u4dzMKpCqKX zR7!vj`84d0PSnxZO^yM|3h1UcMc0(Y4P~#rIQ#ICC%^#!4g??`*Z&hdzCS*Hb8_|x zA#!mViu|c$@^M6?rw4y{R7WWw41UX-AZzC!#?yHtSKiIF250c70T+EiE>92S8aM}| zFpdzQXf9neFX;8_w;zBopym8R^SrfFhz3tEQyawGmTE*jgm=w$GlBJ0fu>w}RtvK` zXRb|g2~buoozeEzi+b9+uR&q?21{2i2GNeY!NCk@{O1SJ4~u{IC+EjMot~b2I6FW7 z_&!Xf63tZ7o61#5Ac-7`J4aPKj;eg)dbUh3ezn{-jSG16=Kfh}V&1yeU6b2+nm%_J zdjEoi_~YmE#UqrHjkDB|a-@iTB!UB7wDp=uo*QxJZ@n=I(%a-KuQxJ49H=*QuNvBS zLeX})1?W;l3mAV@aZu$rj+tGgI9hN?4uEDJT+uMV;!z?KSOvR7ar`b=6adAmA)5;< zlCVVfYkUva@}%x%t(%}E5Ui8OSLqKr1ZP_QF^`~h>+F9qUSR-VljL3oJzZTu2#VG2 z>ZgxdJxR>2&pCo&fP=^#a3|wVk!6<7I~*OfgO}9y0Ys$ed-wnbZ!6W#Us68e@KnOK zRYpQKd~N*!+NK`wu*m_mmW6wV!Il7_+ap$hNfSX+$~&s`ADQ7SFxV99QAUU(eCc00R{$6SJ3_LS-Hm*^?*JChp-4|G8^)s8I*)iR!Mi* zPa~T>wbUPg2WQ!ci%YcBQVn>IQBIf%q`Zs|{{JNiA}sDbY7_oVM4LVo{`w{C{c&&k z!OC4?8L(d?Tri3y9~X==z90C2-YBMooWz1n&~bkxV zk)8Mj5gPwGPQmisy}KL8-2JyDu)O+ zCOvkxgx9I3}Rd~zt!6CM~MIOxAn0WhKoRCMrDU6n0knMkJiVmT;98nIJUO|s!< z+L;E(-2^jtp~h*EEkNk#1C@X*rOmt02HLQAC@Vj>fnh^g(k49ISJ0s2Rawzv?%pF_ z0xh=GmkQ^cWJ?f+@l{ZBoMM~wTpT-NdWV0{rTejhOAri1+^Jgj&^t0UpcZ^9-^#(-u5?b12#Gm15#Gm15hd;x}eOeEL#F(>q5PkRH1bi_h4BYGj zpQF*FJ??lXv}NaV`+-K|@cs1q1=X5^q@gcvr+sY6_Qn>xj&vZM2XvW=X>iGWaLLFV zj0-M~L1P=NN#cLLK!n8~?EuJ;UfK>txm3aFCucwW7gp$pt(T#T5fcJ6GM91k2@?Y{ zG%}arj|3@yguZc>d_2VcdKCa)2o2nf9ziU@S{vuBJi^y6RX|rDph{E zN+RVaQMlUeSHF2}*Ob+rf3c2&*n4xa4nyG;_30yj^ir>`baer3hx4IV-_m+cO;dMy zSJoAcPB~C2G!4p@x9D5lGn4p7iy#f{H&!6z2HIs>!vHXts88G7y3wNu+<-aOrj~lHCU=r z>1qvHOQMK%7K&i`m0Ylqj;i_R<-5(V*KdD+*={$NyQzuISy#%JS!6#lmYXQAJ80?v z01~f1p{d>&Q0Rsh&=|{VuRo(H(Ubwm^y8uj>o*iSo*-x?3@w~DnzdZaG>a#+UEXwn zP?FwlQ=dqF0#AKLhAa+}q5M-a{Q2rV!}HpR(`Cvc0-gi$RUkEjbD|XRmt|9wx|EiG z_}H1MObM1cbn=_FKK31t*p;;<`zn|+dQwhD=U`kU%FmL>#d><4b)OU~!H}bXAse3& zs?jaV?Xk&{ap5{%6E$zHi4$#p(liAQ6%PyM=EKKK?LQ5HFZ0QNE>h{$JyAO4c=-n! z^sRn^+KZU}tFVe&Qo#@);{;CpfJbV7^a?8SZjD=j`LY6ouL_!%z!E~G=S2s2%zR!H zx^1aX(t!@|v}(sGRQqfX%nMJ0llt7vPFNVk@)CII?qKwxSTD-R?Y2K2X+Rf(PTqGl zgvPRsU&Ry13-Loua5~J~do})qcW7U3B&c%fJ|H&GvfAI$K_U-jdp0 z1Z$Z>>{Z_v)=$v-TX`nZAe@4i#J*%;%k4wtm=2V!6Zy~;gP(DNUiqPnXJPtrE}-N< zd-+gHNM>qlmqmzM~!YWp|)nqmO_u+C?)(&0j+Tx<`nYYmTza z&kW5~-s$#hBI%#YM&9qPwwvqA%`dy{1t9S1(up|%X+Rvl1aoqRxxd3TRpL>rj4M|j zPkw>qKC**PC?fCkWVF~#8)n~h+_si{i$Z-c8|~8U184p%5=g+q@VU@`p89IMTMJH3 zw^*D=GM6ZbhNQ}R=d}zXf0-3my6+lt{J<|1Dw?{bnToCPL9W*1g5^)_lAJ3 zXvAvJO=&{u9namnToR=NCcYx#CyI!Jhz*d0aQW-CbR!%fI>Wr z2bT`$WQdvq|G@P>pwAkt$owSE7Fi%66R>QNiTJK*ijWB%vN>3P$-Bi$S$*tz&e)Ch z4mjbiupZU4QS4`-cv()Lj$w5jLBh5(xihnJSJjQ>^C=F%Iui)uVj&9sdmtqwbFatb z+u&esk3aaF#a>R!C<#Co zN`mG!<(gJkI7O-|ATt5gtdm55jUYR?HWb%L?8aP#4*;+;3uq+f@B>#f$vk<8A-m6p z5@9sgrBc>^cBjjFjb$dJ0BH9bWPK_ru%j?FoZj%B1JAmR(?E!nl@~^ih61JJv(G1~ znwhY8d0d({EGF|r@x7n5^ydzI$n_DjK4*xNeh|In)mdauK8wyCdBJF7k$Qh&1&8y{ z>x=QVH*XrZfAp35dTK{qoq76A$GY^ji%x2uV6Di1j^KC7FWQ;3W^mDH>bL;~X%=`t zl@=@OD5d1iw2jraac*inHWzD%5{pM;Y~1#k`V@M6YC^$qvB1BOTH@f3;I1b7@8M+EIn zc}E?8UDf>^^N!vC+e3Za^Vdx7sPopHJEdScDtXfK*D}R08ZN{(kuJvMOo2lr=NP7n zQE5vFmtjLcNuI??>SyD7%J5TTVH?5Jqn@*k#81*OkG~~0D~->MIaG^OS4AM|ossv) zvY=WFw~=?p9>usYO(0#)_a?mIbWV+RLiiJZAcY!n<`tb2f$;N!_Dg0N3{{Ei) zR6u5NT@`g-Vb#{T3Y!GP`gLzA&;PPJR~^lsFgag*ue)}Z1Pb?GC0rO3J|>m`PV+i{ zQEK}KpynR{r6JHCIX$$GzK;MKN7J90&xfjK)FxHrr*ZgA`Q@p&bLnmVLYw)KoIOC> zS93__x4P>aV}$1UJ7d`<0b>PMmhy#NM!vXdkS`3T@`a(1FYGn)O$PbG4D!&M;<`6L zH?UYHfgd@*?Qy|ar5qItONdj~k&tvV=e^L_@;JyuHsH~>1 zu8p#K=fC7Ef{I!?w3VoUwS|Gm)^QPLgDw&@S#n zTWl9NY#&IopSFuYwUtCTNA^i}+T_>Yj7UqOLs^pT?cL&lAf_m4NX~nP!*Fsl2`4{4 z3-^9sUp{;JR;vl6Bo=~AF0Y{(lTe6>iX>4HbS);o1+NJuoJ?mzvf#~XI^!%@P2pd$ zf5`G=lR}3Q!KO&^@*4VSP~0V(Y?YVO-!K39WYU*!RWzX?iNlyyGfKi^F_|$+bR^A$ zpBW9EkKrTkd=wI`G`y;Y&+VFuMR`@G8~pO+Tdvw4$dE(;-G1;n6rmXv(e|i_Fxayl z^zFy#j7k+e0B{*p4>EZ40cVOZCR)I$e;uWrB@ijC$252BW7+=h8B zH^p`i!&38zi(Y2`nlcsGo{t|sUA?+`^XtXMPwy|U-h6oXaX0s57HcA;p3EpGFl#mE z*KBj^+ck@b3gdd){JHzLUw-lb3y#xPO`aN1035&|F1n1ESMXSJISR-;5oI)v5uZqUbS13&t<3-qJ9p8l^s zP?|&yafXm@#z0=ZplC!Q5gjC>0KG6Clvi#9uqN*l8wIqA8uYKT6s1Pe0GN43K@@z* z1tt;lWR4DLd=M2NVhyu)adb#He^UoJ8t4~_E|xZXU0vfZgFUCF!_gJ8tt&ihm@ys` z4ed%BMDdR4eC);uCYLx8#REQucvgFG$?Gs-mh!(<% zuR2+Llf}X-zEOp$G2)xp&42O1qk^zl_Hnrb&$6St5lIABUW>Q&&MP?xe`-9+;`Q%C z4cP}fxDRLw&3zlm)0+;0gmff9{MtrI*{^L>RL_;>$d|E;m_zW5%?l9iMAy?~xeG z{HGYaVzoh^>I!}`skN4g|u!) zRSZ4jR0ThSTT(TwM{d1w(+BM$`)1nk$~4-vg{fmj1miCI!g8acf82Nt0Vk41$5CL< z_=I45SbJAVvD%`bfbR~UR6ohL3}q<7kmEMZy{<<{360~COX_f1HJHPW6+KKf5A0f! zUFS0KqbU~Pxbl%}>hORig7&ZJk$8C12bl!141=f=93%ek8qdVsGMsfiGQiu9wy37ze=C zMYBr~;-n}Nj0qn4oOK=|LZg%AwlZRC<0O`;k8%nmDLPCzqzyP|opOr!JtN`dA51sb zV*vaDr-0asfB1lUM?EcpEX}Y!0y6N0ReUl5ll6M(mpB0dWRJw{#0?x^l($O67NzM+ zIw=-{g>1}!oocJx?jDEQjQV<;&5_G*&12@JG*zE=-{BPq_f+%A+EDM-!R=zjB}D zpg2!De-W7vBzz{Ra9|z|@{R)e=m)ur@LZT*JTPM-`0*Pb1aZu^2Lbd-&XY|K%9o-3 z)HJxL6+O7VMi)Q>7!dTp5_84aC`@m~k04|VQ2V9_Q>?8IA$&$9@)ad@}NRSaZBv0KW4|~MrP>ShElFyq{xgl68l$wqu#|tF@jN2m-)B74ApNfTN=#ZuT69vaXDI zcHAMKZ^I;J`SlUL%`mASMV`Z!@(AK|0i?rd!~L|0qP+qc**ZQAnKv%2nxi72QL1Mc ze&>F4$oOak4}&cL^Ke;(!uK|D{zso7^dFZSi-7*Se|a(|AjXK_r( zfYP2m!|><_(JJZbDywPA2=2YQn`!Oy%e(BR9J=XYvmLgZXP&InZt~vQ5Ro;5J@>~_ zty-RbVvLGHk0nMlZno2iF>My{tK#wqzhIQ;4-3if{XQ1u>gb@n6Qn$E&ZCtH z-qipl`OVT_-Ka=&T>ZSGkU}|?m0@NpjEZEDC3$J9MXCcmQ#;_49~~w-g#}P5&f=v1 zne(-SsomkHoIhO;ssS;2LdGVqe~whHY~sf2Xb8gDIEN+oSGw#~Pn{4QOA<$V+-%23 z$45+dLYe_*Qzut4w^n?d=jVXv_x!Al6cmqI@77z)zHh2yIuTW8utEgeJlmL7kGcU9 zBjR!DW)#N_3ySiNYQ0z<9TjzgRAodCzOuDk5riNza%#B-e_8?{GB^PL zOXtE*^{sKrJ^J=g$r+Y>V7-yK40Y7G=W1z`=oQNsSF2)?7T#JuP}S1mZU1EoMr3oD zV&`bzb3!n;hq`S(*Qa3Zu@fuR1tYv%XqiR*!hyQN_qc zzk8Xqp=kdXfU6)(IkqTWBGj1ala>0u9-K?QbEQXUQ>1L zZbY%F0NJkdm5)4ln}gBzBACBg554ZzsK5KGYJq;d!TwBy{t7~5nfEF>&+4i74>Uwuu@J@`y89W*{FFULgR8wBV!yvo%?ibXu z>f3JAKkJj-W|kDC!G1c=u;@IsC`jySfuehrBf1Hq-~al{FJ8uA6_2&G0&<|N?p?XJ zH1g%cUM*1x26KsZe|%N9<%}}hWcT(aW;MuiQ(Z4+Z*d^!rMAW_%l*~!4A2#wfqgt= zG}lo;6=@W3reOqqVylIdI7YX9Kyac+gf2sCyCTUf&F2;UurPMEE><@M zmSEi7p?bs4J5x()zN_oZ@nMY~+Qv^)yd%GsEt7 z4R&UEbs56m(m}nV_ij1tNT{p3vH%eu)Q%T)uq{*5v%2$Iw61O!z-UKGdR*tcvMOdK~$Dbi$zffY3DvJK~Hi!HnM(ta`rMlMZn zQrN!iZoN$JT~ed{(#7ru2m_~S@31E+cZK^f-Mm=Y$Co~_6mi>>|7DS018KZG3*K2{ zYrhuB+VYN-nd@ynue3D5jqZHFC#8_+vazaQdKLj^GJ9{GnmZOxhW~W=>_4nVmK~R& zixCq7H8Yoi*9j8?GB+@nv04x*f9+b`bKAHPf6rf`rw(-!;fQZAZ6EF~NhdeGrjz)d znvRE-Xqz)K{J2!oiKoHmk_Tz`$1=HEpES>%BSvvXu`Rv(` zubrK7&N8jV?Cf%;Gp2=`S!I}2(6gHTEBTpmrrCUujdP%6my<5)bPER+iKaCo2r{%hyJVb;~WST6+M;}y>G9>``?!DkxH8r zJ$(0jQ`FS@EwARnCEI+>e2#7DO-h-w4qnmjU!A@B zMQ&AJ&MQk~K;#fQTb6QHdy=*5c{F;W@BMo)-`L2fT0 z(76%{WwS!f*aTGU|2M%3d>={`8+Fla*KI=&WE90X8fNIuZe{?XJ+6#HM;F>d` zL7ZGNt%7x&A!(JVq{?r6ODCI4>S?=I9UXdIHq_fK5c^=!z_)-IVbG@%&1pbI!|HCl z(${&5d&PIKUa+CIsG73HclR_huU3A=>3FF{)0Q_hS-Lc7+Pp2HYniXH11z?#ajy&Q z9Bm6baba6;iR4o-e-Sr;|F<=Y+9j*)vZGnz$coxI{atQqU`oW=>paj{=3&%@CsEKt zUF4&cYg+h4*qb-~<@+`d4gm`Ee$Xz8YDHbJrmH%?X};_ii(unV<{12c(=k%rIfmfm z7((=pfqmXFpwT-9JOsypRvxBQ#bQ<7pq*_hFqi%A(7TN1fBq&IDCnd`WLy!wlGNty zwk!fyZ+`T?XqSON8D8e=X49?o)|HU^J0pYUfxM&VWb zf5SLz81fHp7}s@CbSB|WGYM&vpX#e^Hx&V%+Yl{rvx}|#L*q|c|2_mq(DVTm{7*db zIZe6nXBWJte{{(0T11YVRoO3pstK7fYfUG?hnS2r#*OVps%%cxlyq!aZ#Q-^pboj9Er%pX(qVrcHH7&e{GW6A|@N~CS!DOrNCpo@-|>R zEVvF9R>bi$Ou){73AnO=2{60c0bv5RCYaz~1`3D?WSglYHy;Y)y933|vaBvQ=NRN+ zS^+^`P!>!R<7t9PJM{AO^_#!Hf=y*v^26nGbm$DoQQU=(9Kx;Z9Ho`HFG>!NdM z4Mn(iw|W2aHivKyfTC__ObB^5^h9nGGf18p=6amFjO_}VM(Cj=o1!4L{>1S7d_)Ve zaG* z5UVcpi#2(9Waq#HJifOp$VR}#6MqES1Y_~Y%CutA?WEOQZ?@|dv805zpogGvXn8k+ ze~%WnM+lt`aD2~xyucy4*QlZ^^xk4+_t^mP+ktZ7m(R=IRa!-2nPMzn$jdn zf1An7!Ca;;I<6VO8kqpiEo92H;C<1+grdQ_94iC&i>qP-=2qWR(V(o*@`{kb4;g$h z<<{d0!ii8&0@AID^BUOZ)zvx*q8XU3;zz^`d>2^U#poC&oeIJp+(4q;~$(a0UOjvkH$h! zW_l`VRKN~UQ4My6uJG4rkOwhCwmTn1j3d$-EL*53tZ}Bfo~U$8Cu71KN5>q!axq!? zSmF>&xSg5(^pBUZRSCyZYmbqqp6EEfDhneIic=jD1D;td0}mJ>?tPrzaQVk*f9KTo zPrXWMJq*(!e0;U`U~Yb_1-eSI!O-OH9FAbDR1z>ok2%9Q zADydzib_i`qx+aKP|9YOWj3Wqn_=}5Kw26av?rml5<;YY6o$l>Cvm1A*UX*7R2<1P zb{0c$ARh_9NJBjifJe)Ch?CI0e<}_y<6{^h26BT8z`2p&?&6#fo=y_naoq0XYRc?U z%ud|e!ycPJCpv}OD$32+Cl%z0-1Z65WZ#0@UP-DUw=P%f6}sY>TB6)_eoR=dH&ss`>;>yWb-Q5P2q^3>kP_rxSJ8;OO-e*$>76SdNByR*fnY%N&DqVKQ$w_z(K_SIsG2d{)%gA0->=`0V6~;xada*;G9~SO%mW zpW}!+{;e_Z-y>15E_nS0)S*Hh=KavP1Fv}7i;2bDIcvCs}i!N31Bubluq1^)-| zTL5rtl-wf#yt#$5qByL&4D44uZC%YCRafhSJH_?hx?0xXNZLW7p((S@}E zjjt`N4M==-VQoO;0L0m&(EE_!?2+hgk3nzyv|Brnf7Tz(?Jy7o-+FQ zPP}x8B=MV&Lwuiw6aHw`4~VrS>U1c*zc(P(_#4MG;P$C;RY`$6obzrFkL@psnDq)5H+ za(4GHlR8UHHnS#Atx>bP$k5=1oyA>rJ!9E+2oV z-MD3@(>%+%mfwp^z@JQS=H95}wrqDzy}g+m?~(!&PsBEBE~;;oOLjMNnXEB)e=~L4U(={tXYha;Raej%Ns%_g;_q(>*)LgnKiDFwe#RLsng7OX0m8DyBY`> zlO=+ag5UGxe@oRq@idJbPt)gVmJhSkI>^FKq$X3VP1ow*fnx3w8IzjysW82KL0Z=7 z^o zwAA;{T`hT}SmmAF^j*y3ORiWcpf&UY+hHm5$Z$-o;dW!ouYGoM0>0nrV@xKZs(bbc z-I-=S#p#MCSt+LEO`fC)mHhmtO!3>H2{`zu#5j-2 z$CX1EZt6wg56|4@mf|qNR{2Wh4#c5ZE1hV_fmx}Ej9Oq(Wza%Y#Ra@N)lFWZOP-_A ztjl#dW9DeXdsA7agkINoYp~TQ{0}x5^6%h;_i)#|94hQtKJ>Usss~OF)-|pU_okR0 zswtL@D)cK!BjXf8Ho1oeIov05ZnYv2kA!z5*CLES%>`cJiNhar#NtMd*1{Z8bvxxR z6+4}h#(f1kQWn41!2JE6qjTi%v$1$Hj>^&FBiD-Q2t4G>cy<(I2&Z%=tBH4m!DBcH zni0nKL#2BdPaEJRMZsMfJ^Oe?6wE|29TaSGsMs>fBWSU0HP%~a zs^Pf-Dk5g3P%L>+1eLwy44@dMXo2wBD*!GrTQ@z1gANb^7 zPLK!8N{bLke^qB65If8RD$b9}@QN{7r1r4}0NuIphi&NZfeQpp9n_gjj5%zdXbKOM7T*F!#VF3HS%IpCp>`D-Q#~$?Y`&fYRz9&QwQs+_6^iTO)d{!E0 z0AD;7n*Lou5d3|JEBgt>IIczleLugcN}0mP?&8b`rwBgpYX7rVgPz!2n^PH__%B!N zN2pFXr+R6CuGOr1sveFX3mroy+YmR*F2STK@)j{Hbr$3EL60um?-XDgi+);&JL`3~ zM@OCUqAQI6ZXiJ}MT8-InmMlU=edPCBhU`ZzmiN@7s63jB2^Vs+HufezslODcvA$) zJQ9AMm0q*bf^eiB|0sSm0dL zblV%Y9Sks2I)8k7Jik?49eVc!S1GzPH4MDQb&C{>x7SVF6-~8hu>NQ;g-6z|K|KY=Gh-fO^K>)r+7N-fchvk#4HqCtv z1ocUTVC#$KE>8+D(McuX%JnkZB`RdISXmv`L#y!mSJ1yHES7)rs!t%TOk{LmdPFjD z%>x}TZ`=wy7*cFEQ5Ntm(Ek-w7Tmm>@)ZAzJoVCAWCKovUn&mF5t@w^=!B+ zMP9C+L{r%)^E!)6=K%X#S3_d-H97wQ6DB&UQqyrvj8oD)?XUB&veX$rX+;0E;_8T=8H**3iNr$F-LU2wl$X;j&p8 zjfmDcCM&{m)4sGauea#A1^^3cltg3D7Ugvnk7JmRJDqj4sItWPv)@s5sMH(QgQ=T* z;HeK-l$t%o{bEut;yv?vUheJ<9TO+cxq-IVyL%GgliDLiQ8>g`brMINJtJuUd}ej` zIInoPQP?!*pHi#Wi#|iHH%d$?^UtSB?Aj{gIe*36HKU7_2ldGob|748XDrC@+<)kU z7dBi);fy3W#pUY{m1(!|8P-`7K3pNEi#-GSd(Z`0c6xjk@^}SC8&r9^yUJAASjH{V zOd1ieUn*`KTHkX`aolaL&bv4G6a1=p_J_+DOvOjskX-Vmi9#r>J4oSeh&}GfLVZ?p zWskGA2OWmZF;m5~GXSCREe55U;(R=tF9H4=>XU3umans2SEp$eFf$T~N}-ooW!uVs zhEEPi-iTs*T*uAS87A|L{KE?;!VZGWz#SMk1Z;SZ0F zH&}^X`2Io)n@Xs)$vm4qW6vc5^@0|HDI|C?+r1bm3?k?dx&+qh6pGU8U?q8%%LePv zL{wIqz?AaSX8n6AE<(iEjw!=J4_7~Oap8?CI7ubp$XsLZ8`Sm!MjbrgwI|ewD4}+` zH8D*s903UCkivV!AYqzSOD&u4vWvDV^%ZLs%p0>@N#c1qay0gnB)UwX&@O;Cu~td6Y}|eF=i2YkuS;nCZ@b80PP+IvCqZP#0q0Ti@EGQOMlQYW-3#u zpUa)+a{tCW3Ztg;7RTsQxCcH0k&b;waOK#q_am>?0q6x6m8GI^l>WTQ`z1}OE3_y2 zH;PnX-)|BLO^&9~K5MgJlT+{4k@9{}<6YbxCE<#MJAAOez0Z|{@a9}iq!ceGDFC{~ zJewl_V24rxIv2uLWhLA8pwHp_dE)(HN#rY+%c&T3F%Q@;Cy3!Up!;}CNz>9;^Q9+g@KBOE`(*|ph#-`GL!Wx z&X&`!*cBa*xHEbB=4U;$>>$uDfMtZG=I|XF5(o`btrHVGRyvHY)-~&f5slzQ49yrO zw*|PWmrDtjT=_N~&UY~a;;edmmM2g(S8Y0#;G8xNVBsXx_TQi**-h0dQhH28jt8

    1Pwk;!O2#y{E_4%amJ~= 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

    M&^YlduRe-QR5o_D2 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ȭe5gimW8cWssBC;U<_x9tIRCzZtJ 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

  • 6bA%l0fSMU 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%0Db&&#ft$vS^eP#R=`-S}3-I zQmr&NULgw4RevaOp|MgzBZH)hJeE2r=fLqxwLRtY7!!#xH8P(>!5^tIK!QmIO7Cm>-LZv|mG)69o32RuU!!4H#8(3czr5p1|*7Z;~*tfy74BCD9omUIWG@;{1r(IK1g z3|E7Kju0e*X;n&BcRg=p%~ddKkMtv8!a^)?lY4=#CPNnPK(Qw+18S=vxETHS?{DIt z1(2T;=8~sTC*RnKTLWtH!0=UvXsQ)FNKb~IMXsu1Kd0wNHE)!XVa~Mznaip$|E@rF zCKCF9Jq{x4pVAL3tR!wCG;*>Q;+#X%rHjpx6pYcChCn_OH;ggyU@rZ{yg;MK|8#_N zao~l8-gRipWCA-R_RAdyZAog{)_#YeS6D2L7UeW*sWwgC{uWXZhMt@Y zbfQt>Ng=)LISxZ3Kbbtfz_8q3Y_d3JqN1KAmASwtdvjrxT_t85r)t4 z=R4}i5@$MCQdo)hWz5AZas>MjukkNxg0? zX=C$EzcB%$f=#eD2(T9fF7;6!ACe0s8idF++tNSQlRrm?{>gQjD0q?bAx_WfqBYHn%IQ%-%}Qf}+=KI>7Z zYy?F>9VA#4lb6`WG9c_XRY5mS)I@%G;8oOom+%oDqF7S+-@;&L2N7FxgKAR!82e9K zzadXo*J!k6-9)J_z}mmR&|13>kiMzM9G2n)C#HY75^W`;JM?wYj`2b6FNWC>gi@#< z`W}%ucYt?9$d4)a(*(og(jWxQ*6~5l3jm>;JIa?5vR`ORTP^@d@y63vC|&(AJOS(j z%HJK}Zr%{Bmi1kbNAkTvG$*j`we+E<=5H&_FoVRrvDJ1pCJL6Nru+fBadGK5p_F1M zKQY!6%{k`lFN2>9Ez_$~p15QR52|FQ9u8cnM36!_(`}>FC48UmZjx$ZxE!zl%73QzQkMK7roGHiN^$rHZqNPCW%rm zhdDzXpk-lA9$b2aPWb~y@6m`_a`(l{Om{=6%GM-kk6=*jOEjWIkm*2(q8DMBw3xb! zk}hkpW_8OD*yT0dF%Djn(dxN+{hwYTRkU&DP3*`x*U6KPi@oP#U-p0Uo1xKl62xJ` zL!nPkz4PDyqJnWV#C=#-cg43iu&A4zXcU0B0bn}BWmEDHzI8PCT%wZl0&u;?7z;3u(`yKJJ1ua`Ulx2?Uiw2@oh7w(!Qq` zc%R(12Tq9po~goruZ86pzG2}LhpylW!?!bd<}DFqY+|Jcsk7ah6AA;l&4OiZ7rV9; z6KQ!QB)%r`EioGQinXj*u;UkBOqF)xmgHKw=y0f8y9SvO)ffG##nrcKac|=1Qr%ij zYiYh64LW_(+9Rd~%^(k;sFUdV2ZCY5T_Y-z$jg-&5^eB0T0vQwC7MIWxOI_kc~m~7 zG)NCUe}m@&-Z<{7JOT0vAMcIcQ5T?Fao4DG^W9sB@~Fc|p+(5LaHc0SrN3$liUg&% zhX)~~x4(NYt)yYcn%=GzP#Z*(-X1Mommeg>p8hTxc1;2ik?}Vai+KJV3I#7G0}Ld| zSc(&X-H1xOcZ(i}EO&IMFLm7W=-sAZ>3;qDT|n{_ANIjeIVa&pDvdAa=*;}F2%^4( zWjjR}9lEN1Uw(RHf3dwhq4wk5DIPh6za2ZWu+mt{`nRviw*2Vkv)PB#=t5KE@!nJu znbM=y4BsXX6!oR-NAnpUrTc642E9*T4AgGOc9CS=dfMTmA~zO*s45BfPX2umnpXhU zTMh=fLvF#?d|fi5{2&|91qUzBPD1k~QPSyE^s%nN#ZmT>djfAm>a^<*Ps7Ep1{v%> zHX0k{o~6hcosKfuW)ajC5Sd@d8vbkAO{x+W@Rq+#D&-`op$19fheKASz0leu=UXLX zRhbbdyU<;5rpx5&%F?9dq*UTJHAI6HZ2efJ>Y~n{om`Lnd9B2cX@M!YnmAiw5r-!p z>P81R1r_`6c;)jm)mu;`7-afto@Y`0*~-*z(RWg0UGpF43_Ole$%CzughhuTI)r%_ zVEkCGSne4b7npGbL`95RyvRm65~Jn8-#sH>ovs6w`(^Rk_*JfJ)L7?_O20&h7ly7% zU>##l1s~(cY(+o3X+H!G*M%uEiS-kI!B;R(24#9!JLuQoBDCQ$l7bcg z!X%Giv%F$wgkzR)7Ef928|>ce@{_JHsAWp~p7>B4gf}J1`IbtuYNZzYcfpeN#YD0GWrh z>+L_$!;>2%>i?{Hko=F8A>D;!5D0%SN=Rn2PXG7C+wcM?vbvoa|9d+Ri?|~XR(ep1 z`8S+d)Dc|BbGZC78hk$4BoM0|QmR9MZRbl9xG3*OXCt*zJn@_S zq+&M}8VGlhOOn-}n9K4EVm2y0W@e=5;Ex3DI^4G-X_9^KwjDqmaO0Q*Pt9|Gv9sd4 z@4V`}zT?&S*LVB~x1A^bUy2d*+j;Qc^Hq+HwlO<)-FhX4O#(|I!v_783Y_@&?S6ZaWc92=H>bS;nCI3yWV52(kEz1uAm)*?gs?yYFYF! z32)3s8WJZAEf(I>KqieABVl6dE6Xd|6sol3joGk1`UBv>yE6gLOlo50~g7( z;>UW<2!a+r?)A*lLZS>l9YSR_HqUpF<#^m{5# zpQP-a2Cejxb4NP5$UUk3P!+)&5wW21kQiyJs7{&Q}j zkOs&}{`1sA?UOgUpp*o2`v2eK-4GBr0qz!HpWP|nOO=6j2nCCqLF3OQ|3U!Z>pm9M zbvLy7FCZnnhC_$^;p3i%g3XqhpfDO(1yX)_f{K)HG2c?Y#d=F+i8&x@2N=~=d~fA07y`&|2W<_fN>4z`o9#yg`pzW z80B)JqNAfbpks4a046PmF!J&EkcV1;VJ0VyMvww{$2qSRhF{yE(JuXlzT(kU>+i@!wC{}~N)0br>)?WH`6UZS ziK*wzKV9nWyBSs;hc-iv-p8V>#%wjCBoM~emYRvEF+5%PcqzzDYw-FC zUxtZR;JWD}|8>kwkwm&T86Jnx|1jI{&Cyk;$6*FQk&OR2*#nUOo3SJb^9h4uaO;gz zcRvJ(hPfnO|2_v?tMFm(ye(NE50eNO24JJ-QUA9?J-$1g|8tAFWwZWw2MjD6HhBO} zj9CFlo;w&NfnFrSEEvy^ItWR1AOIOf5DcP4UzP<$C<3hDh+6bfd0q}GnfgS%;loA6 zw^p`~lk7;cV!b#l9%wogavbS3JOn^6d*i`y!x*~5a{W7=s&99N2N(JO-@8JGnOHD7 z+!2fx*Zpn)TBp4;5(iG?8>a&}o_i?*V264a&De=brM0n(4QepYID-byJS-t^oY^-G;tN^pWpiDS)rva~kn!uXC=D^IroWR(? z_&}tRg`oTZn!v#OCA8_saZ7c)QB&Qy4*Y{HK7@!m+yI~zSVE8gV+j%ee_TRPnq^Ro zHL+R10p)#Y;2*>j@NdrCZp!ytBCv+;LpojV$65g65;zq8s}Ja0BcA+EeUNd}2NaKP zTA2g1FkC83DyTE4GXQ8N2pO;w4Cr=6hmu`W!F2ji*Euf#8~@DD^#1>T!CmNon?GWO zSdH9n%J38Vu!!PG3$zIkSWf{q9^-pEa~xQE7THN*-#RhnxCAm=?Fx2EbUtqRr@vwd zo&;wAE@mq_S7%k-TH5f+pGx}boRw^Z@kpt4^K##rQU4`jh0?Q+a}}7DY;iaR za;tBuw#EG>p>^Ur7F4WWS2*;Pu}&pRu;H9Ae#k2d*qqYKeaMH`V>tOFnz1Ohc6KUU zyEVM&U>ek$$R5Dz<5a-nf%t)FnAPa%U@NBN&2e(=*Lx1@c|d{JreKbWk}9puOc1j4 zN0C1Xc+@s7V4+COnuHw{WP6+endI@aFi2ETR69w?0^yQTUN%b}H{?kxV=4>KrhWYR zgQ_e76KiCOI_AEw1a26O_@KwPs0l8<#}j<~8r(3_7JLYFDhPZQcSk54T6JEckSyar zQ^K!Q0Z7L0wXWEq6&iTDZJI1C_ zSvo)xpp}n=_6;>SOmeA@GY>-~KyT9T3K=RDJzELq7uo{jjk3E{1iX zvSei2Oxd&9n^%sdI|eiQ&FFq`rT}Bx+XDWb(wL_U*^|R3KiZVGw)#_EyGiK^S=|#`(jDHW!Rn^xg6=AOaBM zpNiA#MR9+JE=}8r<2#7!jTQ1;1fCSR@~3;-Y`*-j;6oP2YE8Xl*YauQRr!X_8eiRy zVOQ}|V5wCn2geizkaQ4>R{=B!3~NV+_$Ojdd1!~QU9a^+mJw{v-z8N7*QpG&6O6^o zH_;D01r(Lx!#*T2A0^xxCWopa6BGA17%Pf!<=O50ET{t#TA_JtM61fis5 zOZ4&Bp86$6*_n2*=hTCKf4=g)Hi`-JFk|}dXKn*0lC!v#@6Gp_#}sqVVf~Y6TbBFF z556K4ulKUvKTQMBq5v2mxzdqqf5MXNQgX6zP=Ju_FbWb_MVri9_MDd^*3Zbp2!vg%Q81Zu;r-0!%rhS+$j(gosX>lU z&N7#VZVMgcNS9z}lFR?Qp+G@+Gn-wY7PE3EO_YHXbIB49e2F6os`I{*|C-*B3auE4 z3KjCW)v|asvV&M59GTi~j@rh+dl!DSjR;l+?+ebI8a4&*`m$r9Dt1%MKdu{2rn;Da z;_I3()bT_ut6W@du0fqjkz4;mayi|E3=a_&*ePym(r)~VZWm>x##0plDw%^_jZNtL zt9s%J^n%sn8$y0{)tw=kx_W#UD{5{_^LgX3)-m4irtlB$;x3c5p@VE(e94)A#=Z^i zbO{?St__XZi-^>Yr+V`}N{l0J_x5=-Je%^T!6f6D)K05G;P=|!lirl!MHRzL7b_~( zACym9KfrLyL-M%Dkopi&)tca*60yQm?2rzk^>pKFt#WS?FQ{N{xYQ1OlC?j0^lrM( zViLsc=NQEC;Vg6u-bHN>e`%EG2eOaoqi5)PD^>Hzm&cym19_J((N^x*x^HWV2d|MxZ&fvgtIqQ>|)#DAV!Jh0?3 z)fyZkVjmSc0pRnAMQlk-e1^q64Z}c291yifLL6u*mQewh4DDE_;wCPGNk+#{c1MQ> zE>oeR;D;~#!YZ@2O{DIJ+LQnk;cF5sYMS<)3sV8)6Wx$8h88sCanPk6+b zr61R65z%iZW!EXP$2>csKa$4M{o209z5P5BLpMd@_-#GzI3_SIZw@AKx(Fe+X;D0- zw~l4v1;6^NYE`Nrd@4}lEr|lZffTB+GW&52l-`KqZTKtp_xLr@P}{QrO$XXzxU8+Z zVxscbX?HFua6$t2X~hSw*#F)U;ky|TPhdo_dAYA)5`obOq=$mAS(adE_emsg2cpy} zfcskg%@r0rR9(@4Y+hOo7vC02vI~V)19l*p53bRVP{YzEK{x<66G&X&A*LVvGxsM& z06{A78YZEKthEhd_fTDKIa8$LJcGGO31PF<*Qw)Ij8Kji?%}X=r1eBL8Q4DGN(gZb z%fyd-Irln?jC^qR=|PFB0Gw7(orgg(5nK}T2@jD(Ng%Pt4d&I(4K_lo)!;92I_@r4SZyAdS%2k zOgNBV@gD8!3rD~bU6^klk*Kc;_s>#^tMP^YwT$T|!@c8iwg_jBwX z!T%r&Fdo0RJV9Y0By?V6!~DRNr-V5whkfUH@&S8Ak|UIPA2eCG+(c3UJTsxkTQrIGj`Z9lj;y7c{5u_1kq&(Dq5dByr` zp8P=jdwg|4{rSsAY2S{~((+hk#TFz>k%Y8;$h*~=+U1Mc-jEbnfsB<8^S~kFO2zQy zT=(Cem>?@|w8v6Jb>dreXFFTZmR>phBDm^h^;a+_*b7n_`A!xE4k1-3={>U}k;Pw% z#?IH1jhQRyOp;UiTo7)!!rAyNOd#f|6$%+jvR;>bR7zpeoUV$!9(pyk@JgT__KEya z6gyd^;LE3zSr!RXCnwby&wh4NIR+`!=ANxceP@6E7xC%yGq8afYoJMZDZc$3vmrd8TuaIn13_`Vl5tN>t&tUFqDLK+g8=sf-me(Pj@+{&pPUg(1eNzbAp6 z#hZT2FlMW$RT3^OV#ORPJymlWY}r5~V>)cu-!2V!IE1a1tLm0mva`QB3t5hj+URx3 z=kvGotXXzUUlSp0{_BY+KHt7v*5y_hP5zloq_?hR<}$vUueiLG?Zvz2f6d;Dn%B?5 zaD((^))@IAcKsY`YqL3L!iS3yrun-k3Zh~1WmLb=nGeYaLRIrIvt{XqJVXB-@3+Jc;MwbzU~r#41e6)T^C959yBram(5t}h z=v3*0z$EqX_5}!5zla-96~#|X=6}sJ;nm)r>N-lS8^uZ=VJRS?YR$7$o+GBR<>=SI zd(6e@X=G&^XUUPpVKZqd;v=>sz+e71%bcGj$2@8*qiFrS6h!Jrqy2wy_LfmqMs2$& zu;}iPmImqWlx`3~=|&pqT6A}(bPLj*64Kp@bP7m^#5xNE-~D}ipKqUW#_$LKeAYAP zyq|ks_Z39AEL;0D!8u4icvl=MuaI((c@2l z@PeZ!>|aA-|DAT!#Xe?E2Ls7p>%-^Q@wB=@E^SEXz9xGLoqpQRPy>0J;P72K#-#Ty zE-&#b>;BBAn%sM;;eJcUQfykuLrJDf<`p(QlYMRDf1xG2wVGOwQbNe&po+&OU)r<* zPGF=_{a(gCDt&OpwSE?rMhqyX=@Bu%0BS;78o7tt$Oj>^z!&1?zzV&Wz*4sOEJZd^ z3`aJ(hcTNxCT4up9of>Q$3;3tbcvn^P^B- zWbRJ5V}s?JBArRN@gI=msYdVy$G?HV{aSCoT_IN%Mf5RI7YdK~UGdwyRmVUMxMrzQ zpNbi}aZmr~n^P!`B_>v=v{iC3=Kz6j#quEZ+=GC+X}Gw6x@ze`efE+-&vY5!UnPuBnZEXTuqtDB5HC;`E6;ldcXZWTKgUM7jmiP7xSLt=`Jrb zb^m;_vh|8i{9blQpuxMp0&`uO>;La}{+;$db+TR)52)sYF_vGTxSbQayPiHKXKw{q zTMG_xlR$r%_S#J;ovQsoxb{!mqEAtM;UK`291s(}VTYO5S%rXO#PKyRfPvP;L8Z`S z)h>t<&@Niw!#qrXWEFb(eH~grYeX4J$(})FpG>Z*a((^l@R@w;&xk+?=7uX&k}i=K z3k_tl5)Av%;r{im68dyuu%(N(W=<8(sl^i(xpH4@j6}|e3sIHe6ojR(Bt!zzUSyXL zHz5tPYj)#pR;By}-5zGw&uGtIx6Hcn8ZgSF%mQnurUt`K@wbgs6aQ~%W+^Wo#sIJX z+ZeznmkDt~gz*t426bgaCK_G=eS8U|XSi8d=EZ5R!81K#G1ffghJ-5PwJP4hTU_t}F7Kp~wXjyz*~7>|R6u z3+<|#c#JxRSfL|9>=x70&pCxk)8L@ThWcLvbYai}&nEtW9Rr926Z!@cJ{xr9S*#+- z;BRez=4&o4$yMVMpe~om8vht+Tg-q+n$iO{JmqQ^hTKrs1h(&xnsvACpax#1LI))`;&RNU5VA zr+wh=4&0CK!atd;u!A#OxF4kCMv#F?5@?QTs~|{N*lSW` ziC!p8U&%K(K0E#dZTm1p@ysmGPxVF4z1K` zY%jMLnbG+m+U7{(T&5$xE$GofD>e41QJ7ar&98+V`LgEn|H0Rk=qH4}*xGI`ih1u- z7?gAdJ92BX{P_G}gbSR`0KQ8kYBM=l=dT_B8DPg9^*hi8c10kcsCGzJpU>Fw)nG^O|(uK{rkj=_7yYd zE$_nVz!s^W(-}G~tY+Jbb9fi$n+Lu%Bbz0RJl_}7ziu^X+m?qo8XF4$6Ns?oQi)(Np6T2LyFQRzUu|ynja*&yD^=JOY><^jOO%{%x84olU8=WiHz+y77TNZ@1~0Dx`a2m~4Pu)%aG*>&TH<*Qf8u34mcDJN0oXMG2N zWO2u6A;zHYBM^lDT^0z9%t!2b53aD={FQ41c)?@W$3P>_r`!{-$*vENcP<1ZCS$7p2gT*{f$Y8=51rsMHe2G6kS<~(rd30^|{4V?+CS?!7$ zNmW|xEa#DIEpW1#m7WV9{(GYpo5@x8{_WZKMS>Bg1# z7tE-vcZkU;>)c7Xf+33x_CD~hM3LHjX2)IBXS;pksGT_G83AE$)@lEg12A6@*_+Gl zQFdkhnWD4drxIWiV1q%6PbGirs0@qQ40gKt(LtBLl2BHx;!}LxW#dIjN)A>e%sYg~*mJRu6l%7oYF#WF?q687 zutqkm7;*P~N>9cW9|NybpIh%=SAwnNX;4{d2uqq$Y<_{Iu`8d6)|y@fbhHP&7`j z`Ro~vT5YeP0>n5s8RL%aU@MS`!2m7?J`cC=ZLAwPqydVZfg%qr+;hN;jg9I{LvH=?lS8tH>?t7DCCC7=WavWOiuOAE}I1Iv&X)-m$|!dcPiiQ z2msE1IbSN>S+#u`HLHi8{@hxAMzZ1(^?$D0vI+bo=U~;`uvYyZS zQ{VE;{$QVGuX^Bcf%_Kre`j5d;(zN~{y%(609|mfu;}NcvcwRRaQOSax!~{HzHle@ zx-d)c5vkaWcnK_v2@oPR4(KE1MHVl{3Nyn5TU@6sC8FJT3%Ag8f#!of&VZtiNDHIE z8$hc}>65n(0o(gT-nvf-`a7owmx3o>peG;4x(QLaz=vovEnLi`e#_v_Ye0d}$tFL- z7rYJfVzpp+zdd~Q>2tcXZ@7Ob#DF3@FDY&KYv?!gjQqT-*~@C!r6#(pd@-mSNsD-t z?7Tx^zs@78R^%hz0liu$)jRL}bnt=?hVXVy>*NBk7 zPIZxFvv*umuVtK9)I>PQED`6(XuIYhEG_lp+3dL6@bU|-MF@H44r4#xNgCCmMO)KB zCv4OZLu&^tuuK`NC^BZa*WPM*6h_wkVJ-rFFD`OE`=xWU(2>G$uG(kvLb)37LNHbMzKCxY+fK zY{47HB3U{nE8@h(G^y&oUmVYCA0;L-7UgKA3nqm*jHx=uyGB?P9de26)R#$uz`V8x zEV+h$@!50-62+du&lx>XGmL>MKpM#?wLdtaM;o8UBtPDQFmTr0T*kt4X{wfbj*q!U zcyp%J#as2RWA_`I7nj3SN2>S;&M)2qURI~Ph`ZaLqous(*Buu}H3J=7btPQ))r?~b z`y~ZYGpjl#H0iVlx38qAGzJn4eOaRQQIuR+%f}yndGfdl3@&&k`M@axnvAtQR8qJj zpmbHG!eZHQyU&(`3qn)hQ!(uUdkbO*Vy`~fP3=>BUh*4?Wam|%-g-NHiG3RX+GeYe z4mMm;SIj;Y41rK zi_*(|5mRysbAV8><+o^5@1%R{ z->6i|AHWRcZ}xa3pe(>l!lwj3s$(6W+;j{iANB!J*&HiMqCc~n>)q<_BH<7 z19Co7d)UEj;)e_)aA!<`F8fIQtb;h|dPx?#q0L02#B^r|qlU!fg_ceGKM{%j?tm=% zo!O);x5Az9`2_fTgg(Z^DM_})kW;rPIQnUAIS}&fM&k(jX|ZHp;6I7TB-lmFgH(uL z(APeKs0sQteh86ObI>)2&9CbnH?c+h- zui)1dA!@TA+LgRBhVKRE-k+wP0INvcAXMWSHidErvWU04TCn(5V;jvRDMq*a3?XcW zFL|i!#z!!T>&YSoJmv(5qWi3Bp=YvR!0VEmn~;l%Fv8%Je?%h_niBLu(|3!GISE^zP1RYwh*BrzXYU)(ecb7dzIq(Y(+Si&FXkX!z@{)4){S)@B_|)=`E67u_t-UE5`#k7S zjSVfuw!aCN%>Dp4-jfJXS(d;s?*@q~0Ra+POXLYnxH0lc57E)hI7#a-9x|a0Q|}Zb@f{~&D*=p=ZEwR5!oKYph5Lp*F9A+uyH&t*HpuEc#)D-DF!;jXbctpT%+BM7*@E^!Kid!u@C~Ce2=i;`1HGyQ=5v2J*T~^$ zZ&l1WaEJGl#=4^3eJP}<$l8M+ZKy556Mak`$IK>U&en4+bGmu2#iT~?LqD#6#jnsL zMtAM|ubVvNq_<}H1Nwmt7(p&K$ljM63=vsaz*tq=}QSvbkPV^ zxAzQ5{LUbGxhHM+&U{brcb>_~_o*)|(tKX0h5nzlIj~a3O?Gn$y~la>?Zwx#bIP2} zlDA7*lRB0Un$G?ms0YaE8KTx17kzlEa7TDh3;~n6g2>5A`cpVHnXiTsF35HU{Ncmg zu`_m>?#!=g@8AUwmH&9k{Omk9x{7tYp}GD()4Qii*p^?V@x8#Cc}8&|Y_^a2F1SId z&O-gT*t#I>{o?Vd zpGQ}MJDZp#et+8DaSgmf`syxFpO(uX(O!+(Ef^Tyl^ZTAM7Fv@kbVMrsvOBo^+D`4 zgkH{zY}H&Qb?A0%(pS`ICrFs>ZhfClkt$lT_t{SnF!Mpv@F9TBHOJCsi)sHqfKb!G z`KRsp*B<^kacgOeRSv8adU$n=0-!sPnk6>P1@YIUTqR${kmxxttj$o%E zP_y;IIa2OaW{?|+M&%1@I%5!0##TtK(qY7OBJBlDk}wuj%l(q}t+wcq@SR;J$xO1e ztPojXGRzaPEECaUUm3Y9UZxQGlZl%JFkQx2@_A+0Dh%DTJRr7n52L5<+1&v{<*4`A zsmE{Kp+3~-#~~(|vG#Y!9r#$jume|X^5K6_Tl4+K;%Q-Jcn=Ntms*W3syx&wiM<~O zHqtr9D6EZ%_&AoPQ%;l;ol57;q?Yup25Y3QR%d5dJ_~W7|HomI&cRV*k_qFX#&$vD z&>4M2`{Z15gPHx%uaAs9?g~oBs=IcqewAc=DMQ|syAoB!& z#_O5;ux5IqlE4UPn%aFw?ITXvRbXX-?dz1c4f9R?nXr4u&1JHc-CH0o$>&z5!=3Ji?;% zz|oE{FzE*Ni1`(M%Gw1?KqlV!$lxLZ(mkXak-1Z^J=hfhJX;g+jiz)<5cryeOKyL8 z_-Z4{mvk5z?0z6XWZ#zr7j%$PzFM9GScouMm>4syDY8)f<8LkLPSBTs>LLWbpiF|t zxG1~4z!#(Kv{~#4aO0dl#l&Rf3}>-wv&!fs74nC6IB9R0lubll`T$j|;rF5TNEUNj z$t=FUJU{*%1Se{060={oo__B`)s8-JX4z#RpkiX{n&okF==3;v?Lg8VnA#?Hu(c5avH!rRHm zk^6OC3eSi5^N28x;yOO*`;nmY!glkw>JicSWD;v>Ssh2-m^Wrsg*MWLgQ{`(du*Y0 zJuL^`uXFhitE6(r*agiM4YF8a?!uTYC5J+Q)jvX2O4JfatYBQj%b|}*cF~H<2=r0y zpoby&B#W%t)C-(VZtFEtZ}o3^PfOf?&k&TVHys-~=qha03;E56!4_O|rweBxNr)N8Z3_jrVc zpBE3@^!=l{1KUQQW|Cld0T723@)2^W=W}i#^eyBgISjlii_x^L<{H22=7+N0}2FhN+&gWY^cG&*0u5gz?IR8V(y_4+LDabi=*| z@@1p<#^4gw_83b;tY9M-$9cxpl< ziti`=7h+I$F_=+k80aMd#rWhM6h*0EwlPH{QrZ-j z13B2;=CKiGeFFHNMlkGbbC2jTnDb&}^pEpmguV>X1H<}H=@fzTz-rI^Z>)9^6}&+6 z>_JT?B|I1~iVZ+U27$F6z)F36;iF*Rj$=}P0rc2-j|0*1hBCF9Tz?~Y>6>~4nc z)^su1xgzQ!GLU|#2hDjKlC(4{$h=S{h?XOS!G=h*(z(nRS0h8|j#9zpU%Y;yEiSrb z{(b?R>(4vVITf<;jeu4xa0zEt9vBOnR1>iv7aaMZ^;FycqfRVCopZ+U=` zD|{IS&}e==JHLpH>RiSmIhA(4kYnpSf6zgUfTv3GD{A;H9DWePCML4~iBjL^)bsQo zWkM=~ys$Kz_@0f~*BZTaTbi%>Etr!}U{G+a&A?DuB+lvmxIS7@QP{u1~2+LY|`vEcCmn4|>w$B_vj3UYgX z>c^=c+tZPH=3_$`fe~f#ztb^sx&QXq`0xHtkL}|L-f`kE{*PO(4}iQ+ihl*nCd-Cb z&cN@y^3Nd&ng_D5fFMH0;aNcjS0E51w0)Di1B?SC#Lod~^?&^a7}&5o0Y~((K7*yt z$6%Zj>~##L$+Ll3;!jL@Cr1rY#mjc%23x^6q8?jS(Gn1)7e!6v9C2xs2c zw@;_xe{Bxvz;*ZO;+jB&y9F*t`vRietmMbWWZ;V{3>fSFG@X~7`!=5Y_>E_RfLIhp zvX$Ar2;;$0;GMpy8IXD;*=-mjYe<286w^CmH*r#8Pg>5))wQsi+GEH(Yr2Xlm_ngxF zzGg?5Tzk>Bz01s*XCIw7{>-J4ASiQV630nhA%qWDV9{cz zzL^TD_v-RUc=(}^EDz?>4@#;BO{C?2HVL>YJ(IuzFzC<@qL>3s+KQjF|EwZP!ahia zRQ^Y)5SV!fG6=bY1DvA4_H{+3fLOq3gOGktuX(@f?YF=G`=e1bfQ*&rFXprKV4e=H z`zuHUhz(~b8=pG!>*HRde}G|sa1V>;|Ik)jIfA{`(a2Y$>9@N zO{5j8os&+2Xf1O|(Nz`RleGa^c>3-kKdlv~QF?%oGN9}Pb(H3#>p6|S4{SE^SHI|6 z(sokl?ZJkck8`(B$uAnNAc5>LQ-6;f+cQG*eCGa3vA_a6Q5*mN6^r}s&La>U2n0)J z(G7%<_SX0A?7TmPIE91VT1JTw#>WS;`}Bj5k%9R5Ao5sXOg|}sf4DI${|R{Hc@6@S z#XphZNlomKo*(y7<-_xYCq+IqO!~-ydiLnmXYeC1XTO&`PA^kcU;009~g{mgs4VrNU;MO za_zb{Qf#{)`jX`P-Vfb_8H}r~5RJbvrC~YkqyR;I*#3wlLHtxd#8z=9UHu0AhcQLV zT_F^w{5AOwI(80(dTXy2e#r+O8XaZ|MX1CfuXtnjpzeQt4{ zwPV2YvB&lgW?T!*-a3X)1tU$>xnS)F3s{jCs991Fn5%E%P)kH5CEY~c<-~>P_bzmV z;XZhw1JE&t)?Xy#2E<1v7U8 z%yVIvcy6IfQ%v&jZJpVJb4Q7O>TTLUidixni635f6yU4?`66dhP82dI8$0c?9LBkKHOZPXD@cGJy^gQ<{82szs_v zs_`VO*J-q-a$M4?-O%}Zo0Q*`gp%lER#sfZ0n+yrZUnDb1(O#a(=xMWvp7ZvTB{TW zhK&`evrfk@f5W97uO(u!VRmUj#Zg8$$cJdSgQ+bmJ} zT9eFf2S*t-?@sHwwc82JW!E;pu4S>!I=Eg*lS@|o09}2DulPl*rOh>#R4KN&UdSF9 z0#AXU^2}M^=v?w7M-de<YgQ^RhjQ$|!0(&Tct=s<6Jh;HJBDKfwFSv7hK2qQz zJUWN3^nWJrgm(W2mdAh9n5GCHkzRqiz^X+wQtw-k>lNC~w=Ln}taK2Iw;9;^9wmSP z$Z~Hat$*9y>Ej0+hh+zh+@pi}sQ-GW_!fot&nM~cyzAL(i*Z==!&l`8I;t^7N+dVS zN8djun1t}P*wbP)=#HDY*a7uJV(+nkq~^8d4P&egHo&_@_4PKSfU;88>{XL8?7PsC z!u^VpI$qtW=vt&4bC9Nuk*3WUb7j0W{>eeD#_V?40itGqKe7;~b=0!C@4pALzEf|1 z6xV1*U__}T8?x!MvxOJqT-kQwl8NZ^sg%SO!H>gHS}d9;0QTF8Bf9l;u~W#K4JR-z zV>k2jTJ-yp#3Y5oHnoLfoY>hHIheC|Q)x`NJZ~R+!v_!HzhviU@Pz$&6;#JL!MYh` z7EZOl;x0BgM5v}M^wfUv&iZV+@o18OFJ}C&$&i=PLSx9Fjxmg><=?8e1byiLwN&& z6Ny_DR({q~106m*Hf!L<=)nmUtN?ntALu+&Pr=eP*oj%Oer*wM*6=RbBRKhgC^8Jv z-|MTi1x83-%4hH`&*SJ5VzaLl(|PfF>|VTZc4jb*x==7viEWMG3av!b%gwwD`v|s- zsZGzNJR-)vjhu|}v|uiL#bVl8o&1hP-VmtIG@WB$#8Wu%PMzf~npWo1Zs$kuI-yRWxW*s4nij@ZdanakqSi{sS?38!}fFFDU z{(6HxlTX3)9R0jdsOn@KOBQ=hq)#O~uz{&9`s*1*nKw}o4LLsz05pNc4 zxUF*Bp;44Y2!zYu7i$FA0~}|Gl@BsS6XAwBd6)qEf)!C2=i~UZ{{CH;{R_sDGZKaj zxl24QiKjz+44Fo^E<3zO0##806iOw7pJ6`qYnSXze^H$opvTT>tUF#vw6@ka3#}ct zP!JvwRgV4pb$IZr{Es6ICm6y3(`JHJZDq*iYsv!~KSITGzI?}c1+aNI+mG%QZD3%^ zBwF8sypI4F*2;o_7VrCOlfwB&@_O+8H_!fE`JY4kj?=++q103hC>~1A$} z6bl0%26-0M z&G)8?h-vzE7;8PGU!9AUx*6oZ_KYG6c^P+6E=8=-pBC$HyYUpz`>YRzFf;;dlb){4 z6#v_`S?m9LZH5g312w}U!>BzcBHCbX=^Y3%2t+0Tg6KwbE51_hJ16zIzXkzkJ4jDkQ^yO@Xv_ z`Jk$Y`9(yi2Z5i=YLaA0*nA-q!DjC1#vE)fK1o8z5@DM4;2FGgEPVYT_T5<_D)|D>?}+`>~C z(=;06;6mK#!v>+P_(y{}`)#{SMTr(-XuP|6HEtEPQ}>5yy83CIe1<}7HgIXzn_j0o zy=p4fTg(YD!|yF_M0bU3NVi7?ewF&UX~e8?LweRNTN(3_6QDqmHONYpP#rgYRME}o z4L~EYvH8!7iT`zn0B$3E;}Efv(GZ|t0TaP4Z(vn}&uWrburi-ZoPe*(41Fe1>0g#N zZ87*dSN2FL#yt1#%FV+&5ygaWvYI9>e#1t%=b9a?J{qS*r9GezjLXHYnHUb!YOF|c zD482Npe@u?;KX5{vMzO|*_0O?3vWXcOmY0NdfXM9O%Z_qQko1738$84oac5Cqt)OI zJgY>E2r4eUd5-;69ffN*0eKI)C={<|adzPL@0)jYPI!iam9TXG2zo+o8 zd*(y%$fH+N!FbgN@Z!R*EaM-FgzJ%UxcgpsR$21(#uO@}1sV^cL;2<#ks}-|UQOK6 zUc!?ILbqTBBJa*`5<2q9++MGD2dIr+dw*@({(AazDz;iIj1F(%_t2rgDNYlP8BEh# zy7;o6SEpy^iZ=DGrb;%WmSej?rM!e>LDn&y&N~Li!K)4hZ~P`{edzchuV_@5DaBFP zBLTzYd-_mJ?tR==k(ju&mKG#)lfpI?(Bw@yZ3d+oI15L3ceB5Wv#p#?L}i>dcxIN%f5#JZu{)NAue0pmKapMUsY4@{1~KiuhA@&%Sn%dfWkRD#Lj z8<_ry|3x)zT^(H?UHw2MSoyQFwp+A=}>GHm!ORDU|R|K(;}p6BfcADgPLb1(;_tV1ml1 z8cfn>8YN4H)SPNGoWLuHJ zW^E@2nvNIauKZ6MJAUU58N90>jW3^kJ-{2A|6#5Jy8@;@i^d^AXCUotDIlsmeP#R} zYhNbsyQpd@=~S^0{#a;L&Borh!-v8(>u?mwR*2?1alh4eCMUWW++*n%vHvWmcN45* z_XdHJ5X2Hy^5wud5e@e72T9bhfO^ygetE2F(aexkmZ{RxpE`qY#bvts!`-PbA=nFT+bXSB||Q9Jw5cgY};G&q-#=ls81-3X^zz)Ru53>3Voydo8HDw~( z(h-TbGFX#4y^l z7LW55W)4Oe`%KKFJe_xL^M2z#bQZ;=L3=hqXOGKd1g8V+`mI{uF0}1ejbe*5`n!06 zWerkJR4Cm0G1-1R1eYPY=Utj`B9zC0Zmh{{B#HrDDq+8|~r`XWt`8 zsZ~H!_ZuwwzA1Q#cr=1ENj#LLaWok=XTFEi5x;qd24DeSt$Z7?urWEg*btfJO>E2@ z&Dp@ta4cYsSS%+V4m2wZSjT=0#AW~zzQbig#t!4h4$kgfT3Tvzh3_Iq|B)kNAH4SN z$5J?si>&XOqP=TF@d!imR)Ct)qFo|$c&QxY=e^26m^FB1 z#~L_0J4hZ^7~U)Bg$2lr{e379TYv}*dsSRr_zp|4Uvj&RaEJ~>=u*%Tr$J0DP-T?gQy76G+nWQ3JvbHKoCyn1IRCro3b z)1xDO7{10zv22Z8RlN7yCAu195vM zX8`ap0A1({F0#tJq44nZJQ#dL*8$XVRb|*>USDDmo5uZ+55du;9R$&5A`t3j!zHP& z6%oi0_JNs6lbx3wnTOLk*++t`9RJ4D>D}F-YOZXap9f7)d?z)~?R&LuP7Y&l2f^RmoPDd3Rf~d+?4H_! z_kB6pavT2G?(7<`y4Jq7@-`0ziJOLtSc=e$yVCD$nTz>l0?=4P|1AU>KR-VyvoORy zGK7cU=Y@Oe?1N3{do|#|aqv|EoG>X(2v+Aw0ZL_7B-Pa>T<q4X!9!kOUCJpAqzx`4X+}7#hF2V>}wrdH-#DnPwd?NK1t1pzWR& zbQ-pR%u!qCRGV^dbG#65o!{YGGuKE$1{1h?U~0bHA>{jKoSol-JLI0=NY z36ebnl}pc#{Jd8ZywigPkqVA?_5J*18;-Zt+|+L6i@0HeM+BNvN4uTdlNH-%ynkD? zg6O#bgCNCl0|Z7-^u3<#!?Mb;Sx2nC4`%`nINfVc*~B4Yk!4ta4K-wVN| zAr2$qamDsP+-!JtT;66&PC#^5=oH zN&{u%>6HU1AZ;KB`(Y6sK33KOOIEUCm@!`60}vtRiSB)Y#*VjW{Q&)s*KiK)(|aF` zY$5L(Lefb)w@`w_?y+y@v_))`cZPl)(R|bkx?sNDR)dE1@DrsCKShsG4zc!<-c~4w z4uu;!%m?FE-vHb(<^!w(_ zE5*ZU_CP}@tgvN!dRiBcqX046LvF%n155Tj zy;-U{P(e`jLz=<|EV~sZ~1`hMEFCExAnrm zyALeu5mzEI*u=u9hF_e=l`f`#!FqS?&6Y;N#2OhW6a*N%{@gqFs{V^rw`aHxal|b2 zjf&tk!ZgkAkr~3v_)$fY@aFY$DdhAI$4tlmMZhZg7U-`HMLN7$jd5w$-a#x3c9_zJ z8S2KTXbgqrHDjy1jWK(jy9$;+w020<;zp4}42FeFT{08G87(u`z$m>BXWoX9a-I~xd=ZUwZ?&KEmC{FOayUOmz8;&vNg3E6)Lm+;?#{x6#5NzdL-l;>8>GY4o+j>= z3g95vzX02vASaPzPy~{J$SGgf?3Y4hXT(4&w_yF@3_Eg;Ss#BpGU&>&FN`yFQE50x&TLo~z3!AXV4b1bQDKPF$)L?eLn zFLIUb$W3=tAf;M4QN;?`uM9NAIMkB9*J*@r8Iq$VF)Di96edoX*plA;a*U}D?BteN zku<=by&0$Kp10SB8j&hYN=?c>oR~b=xx8-%*h!+&X zJ0-FlVh!-jHI!)E?t3(Zk&_LjqS@o{3C)s&Hr4%CKRBB>kX>&wMc7$Zj7kgjgN}$R zcHb;$8m?mrO$suF)Wc0>kwiNn0AEjdb-@6pn60Hd-F_O`x_6uLM_&RI&+~_jG3#Ze z`A$$WVTbUFE`@(ej=wG}8=pDlG;A;cI&x}u1atev!Cal>7bn!7D08-&?U#1#Q}gTc zVOK;C18 zC(B?+pqL*r1si*3y~miVZD(fP+)ND$LI?8os|m%z%SW^FZg~qaOq<6g>hxa!YG&G%7i4~y7EK_rP7ucJB z&H(m1Y4|+BQGG`$Bw^TO`^+t8J^5Q3<967J;*~^SVBvJMdIBx6hAYr9m9`{Gp+XzF z!_BgC{o8#UBf*aV*}?B*C2-EZDZ zauw#PK7$hMct`e~UEL;7{Po%kWv%nY6DHIJqo3I9Jhm9iEmJ*e$+Z}FZR}p^j?S(7 zBoz$&W|RijZ{cJtD@jD*;0-|)L z%dKB>O#4hTX_aEckbySRZd|pSm?Kz2&5MiS4&N1BZ`Ucxe=S;yEW&rQ55tOvuQ8ReV52&*x zX9B2b(suea^%*BMn9s4LYqfo|sGh!TU93=x@5ubJ>!&>p%X#bM`jHr4f0B4ICb9fa zosW8J-s}rA;qRY;eafm_pDiP`QZLf|Q7tsKg>3RDc`D;$3zNQLtThc3KzBCp-;~Qu znP}?I6W-ycnU+vU^xR?NsAY-gA1~G)xUA_&i;HbomPN53mQ6eLFCy|$F{Yxj>M9jE zNvLRjL%eISg4o{l{w`)C?xJHSiomX4V^48c^CD-}(RD2!SQ4xG`O~kIBRkr3<@d<% zux36{TO@XW&~vh(7C(POpj#;a8N*RC8c^=yOpOtz%@K*TUMEOe)lbGt;$|~V)ozUA zh%Q(_y9E(r@2o42+O)FGm6}Dc^mYGJ?5H(0j1c@$jx}EWh5U_rWPCaCMYHdb_yrNYp=R> z{K5+`P(B#flz7H$!OQ>mIz2{}qG@MH3=QJRIl%45A8BhjSDoyeF zuJOz653FC(Cc3%&M|R?t+;2jZf}MXT?#$G)rRC=@l$7b@kXFktGnuMot2DM!|5<@f zwED9e3KY_?PWc@+H=UXes(`I`3e;)fZ(v%pG9Y<%4;dAwdt=N68k^kk5n}qGIq$LG zs*B zR0wfLEH{YAPPhs-^PNB0xGbVi={NdjK}C$32GqJLocOt6ZesUI&>KvyCW{w=H7vJS?UXRk*+XevzNv-V|1w9;Y<4iP@6Fo&zdi zg@J5;Wc*oPlotu=pvxc(-oD0}E$PTVPwEe{GV0>PDN;#iJyqZxQ?q1m2-&88ynJV$yzvouAY3sx(N)P?0(&`OSQx{I_{OQ3`XHyf z5b>)d7T*DBF7evZ#kE_p@rqGR*A*F_!W&p`Lo-fhxuyC7j`=7YyeRq~;y~c}#sQ}- zD01~Wwv?pO)4L=gn!k?tM@{KE#C4i?SZ%)+Jit%x+z5X7=lyDCEx9yhgpP}sa}yEp zrH7nv2HY+`DSRLO(85BpTHo1=8QrxTs#i6h_2<*;L^<2cGn#h4j-qxN`q7TK%3uzN z7fD)nK30wM*|=!SA&rbG#mh8;jrm-(J{wnGG7JP(5;WCT4mjw+FCJU9r0nV|F7J#h ze0Y;oV??Ct}%3)?po|`Zj=OhcP-hf}T>P%AJAnf8Zos2#g zm3Lq01wUN)Dd^O#)(to!;!(6rZYqw8g4PH1k^GnU%Rcl1a2QIza0s~E3M;gH2GZwi z^Ax0Ar6g8=WZib?iJ|7FF2X;#Q2p98H-5;X!BcE-Lw0~e`u!dJ5f1H{=)&II@*TxH z9*8W|7@v-xzf-VL?1a~%kK#tC+2`X*aF`*FA@4*Su|npIB4l)X-||8JIG+xY%O@4b zsfAhk`jzB;!Aobuf%q>;SysIaGhRTMgNmQfcEC6_jliZr3z0Ub5|Bf!C?yOu^&;4kX%ww{XYO&K&8LY&ZqY6 z#%mZ0e}nXoTTVy$&s%1SIA?us!Bgz7sFbEOSnirrk|r7X3hKQ+q~8@T&?g* zBbs7#v~LK!dI`eI_4QI!bQf#=q{=34DJI6Ut-ANiEa{ksjlR#H{oW8ZV(UK+TyE4a zz^@YHO@vIHe%X{WeOe35dzg1PPa?aj>o``mr=*`<%>H<$dH+p%t~1A&B@Fg@NBy@Y z!`ox`2kywJie4E--GE6$fo_K)A-I3=V`w}E6pk_md^~Y1)aYsQ^)z@zH8^cN{h%_z zmQSzvkUF#BYvSu!#N>t1hLNFmNnJVmfDM}+0>d4J5-Qe+7m{ zB}y*+pOYS+aZq8DHLiDYe6D-bTqnWFtRz>UK_eEV5{X=iwBENcTq>9&xW23P+pFNh zGN+3=7kpe3ekG2ydoM;Sw&b(^(j~siLoEQBunnG}?Qk-v|549fsR)^9c)7|`Uw@Dq zP5~0i7lj(zbG3p!w~1P+2-<%V9AVNT?+)&GO%F)jcLJ8I!&4m(yBO1@)+}!sXW9Ke z>CW`%;ubZXXc5)0C;}yvs?!(yZQmK3GOin-XW_NF%%g}I z-!QXpw{paOG;@Qh)!t#PwW`#%6T{Goj}S;6xNuia9Ffvw-)g?;a!ykFn~{gR@$irm597r8GJrcx1=@={Mer z7Scz*MIkQXkIRRnO~Qw%04*I8xXGwEh|>jDa>0MzPjhFyLs(5v;i>@~2 z=98Dn{&LlGi`9Q82mg%>vw8#0=>5&7ASNgA( zD~R-jnRdCNR2=-uZ}~89P2kGK&@7qyL;d5Yg=DOS!-!GO!7M59j;H7(6{ksI!?+ms zDY4Q=@Q@Ikf%f4=98+kSreT5Ijn%+ZNz5}Ie((%IG7x_uw418j8N;N`eEz()YkhGT znQ{9efavKMdVRe3)3;hsumwvOK{Z}dtyjkzV`N3%{2VA(BQ1|nb3(&Q!|kfv*@RW2 zXb#(i(y4H&sz4|;pXJ;HWK~MXW*)3U6AhF~^g^*uLE?Lx<6xPDO4kS(wP3XsI;(arwln{Qhv9xrZ8~Z98;wQAZLX8JQ5%0jK(IWMH zMkOg7=R~_anB?GX>M1<2A9iiEsOStT$Ujf+-)3hLpKO@ZURBi|61yOXE?hnh0(K}?czXG_@e>WZIW-mdqPL6joYfLN z(-<+&GeJ;9-4MAAg z9Kq4}L&%n}`Xdo-Fex|%n?BuD`wB~;II;!9$fKp~a@kou;hXzvpXyXm1zXMM+Czey zWQn*|a*A_I>G^X61>kK$$o48v6A`zr@6d_VHMtV8Tn7jdPslZ zY9=Zb3_Z8QPYg_aq2=GZq8jkaGVeq6_J!aNE(e&{$a5^Ka(sn_KVChOG1`PWY$J~C z(`4X%@zEYop3kmgG@=Z~;y`DaaPY6>2ZDpLh=#PC?mB)ttD00kJYlw1qy;XHjDIVyiq9uvon zoE~~(TWqqO&kz~al)rakq-j!47B5zR<~b9`Wry4rxKc9zInN^aW)=P>{)6KWk*-ll|{o?1T6 zC;J2+$Kb!^59T*R%taaMqnZrR#0EUTXJaVr%#+U&m zcj~40Y(u5|0d4NVgW1KX(vOnIqDa;3A#77Z7^*gPRe8#&t=l(33v6LMKbyUD%3v*0LtS8#ukQ?q)VzL@^& z-A06=^d+{uA$zGDGJ=}G9PJxVvP^u9FBDje{vvjr`v(jic+UrWsZW+b@x{Z)!6u38qv(YFzkx)vDZfiya#9$DfD(|#;qSKMRY>fjs(Nhfh*RB!Zx43(Ky&m z`9BryBQNu36)ShL_xFFyf7w`8cpbDB*iLcpd6mnijAPDFKdgE=fIJA5sG&&hG?+g~ zqsl`_s+(+EU-o)<8l{qk1ZboJw9Nc6MNz2wcQZ(o@K+>;6 z?~xjD?QWsGpvr@d}E7(2n*@;U;PEg3>&zN?@F5^fs5!K7&npt4R$)NKv zWvP0??Rm&8VhicJ8A-(=KxgCr`knEFdKH~PyMcc#@QZVSp@=Y5ev>fcBi1bbYX{q& zA4JFGWPCYWw0-g)Er&ea_%5=2GMp0&=wTXGx!sMe+&ZiWQ$s2vHseowC~cj;m<9>L z+~JdkArg3BTeb2Vi##Z`^JFx2|CYTpo>gZs@H?3u6@{?_(6of-8{fvW2GX9@GL3%N zzUP0)P1Ae-e1zboJe=xpX;5wKvzW>}a}ItcD$K$CVWdkupwG0QO)|dT_z5(qSk=K? zxg}fCZHnn0JK=DxP!}jFOn$+VWOA=~G^iV@xU5Q_&J@$6z91jP;7FP0=J~$v{1Nc!+LtezRqG>bvC#uv<2cHeXIe8QbocR3~+n;y8b?Jf_YbFbT=PG-mGM zjrc=7lt)@mY3~Ui!P;k(_`Sj>LC1gBioLX`%36LZ-PHm?$;}* zixwVhut3kF?jfb$YnY?w-ZIu0$&}F$Wg_@}lI=%6Z4z)T&So2`htWhlb$9<>F=lSX znLk(hJT`O`|=E zLdfy$L7zp1e`st3Xip^2Z#`q-u8D(ew>}y#fN1YU`*U1=Z_t1K>@4l;6aJw2|Ln)O#DiOR&_yI}bDb9m(yE z=#y>$9{p!o6P8}8Y1jnei12@SPnsT~=I`l$=^knHxIRjqfuVld4~9Oj+(rF^TjQ1>g&>`d)LVo1xz)c3h>N4 zQGEMmD1VP+M5mJgo(<0OzV@f)QXJ=i2OuTH9M{EL5To0p??wkam(G7m)UtON?Rdgp zdLa_&>)k>fnmPs04F)3cgy!1K@nvBi6zjf{K&(jrlnZ**#R=2GwQ5YG4WA=FkshMW*pZ#6FN}*rPRlzq51W z$z9>(;$wWW3eL(5PHuk!;LI7HBCg1NH%h6LK4j+>txD*2S7+Ov#;G8I78YeVVt`c! zY19G=0?;H@y^r6|bfZgpa&TS!8=V9!j7%GGfQmLk`4I$667tVQ-={>< zjh PJ|@h^H+vcKIK1Aki1!#t*$Ii%mn&f@Qj}&8CkS@xFhKLeG%pQ(a3f$fNJs zzrh?1%Vxj1HMi!NvRt{7N$J4jzBq|E;aZX4i`6IQRaFypoLde(!UA9PaH6TH_ItP& zjusYtXJ|*nYpS>E-mphHGbxqb!9j2G1lwU1M|n5;kjPPDw~s#vJ~ro?T(5tg5Jh%0 z5Euzz-Y8nVnw@_elOxKnkS9Y$WD;F~^B9%N!VHRPE?xbN76Q%@9(_bio!|nU3ujb& z(@Pzm#ePGVS%kb!Nad@$zx<$~346fh;sUt=(Pv^I|1!Ar>i#?{?qfn8JI2z#yZe3| z=vk-ZcXZ7y8~e?d!6SJq({y9~Ai@FPfVNd09_N{RYyz5vA9jU#-Q9y6|xQ?tN+#W zRHavAv*T+E^he&G+V~N=!bynQC!-`ac1o0`ie%Y}{-ZATBeiW)rrQ@V)sH+F=3EUm zu(e<$G8HOywM@;oW*P;vpG(BpMp?2trW8|!QKWx;k!mKYw-wN7c-YscvY6C*x=fn< zQ358&OWw6!Swn8V(OKp(2H*5v4{X)WTY8ORwf-g+UafW^EgRz(Y=Tn6issEW{@ z#IdWaxOH%8z|HGC%7c?hdeln$&Cyj@R0E*_^O?8)NH;qASocD226S{LT5wDfS(lm6 zSSx?)xZ%y|kJQ^Fi-rFB+VAL{M3E}}&?r?A39pZr=SN(2ehu3d!uWfinlK^Gy@5Fj zp7+YwrXp0+eMSd2G(||eGTMTJPpYM zW(ZS=BZRN+ZX=CrQ+@fwnA-)Y;R*ShNv*H<$v~ElVscX+RN-&z1nixbe%7tt#ktxV zCY;`%JP+h7by1#r%2nZ`J|S&(E|g0mo&=Ts)?S-^!*}0xF;s-~Irw;Aif)l7O~rqd zHS*+s>5cMaOz3=DeLlq=#kebKb=E@1|9g`$8Atx7r*GDL1CN70hZ zh4xQ_p^cUOD2CY)9WSt+q}tsi#_kET(|8Kv;D$*>~z+W9c)}< zCf@4=$bQxE5HP`1t9)&g7U(D%s*DxIytLJ)PO23#=7+TVGqE_x41gjKKJp2YyC0&Y zg09_Z@9lE@gLph1#?lGxa5DvM;&N1voo_1ZF5h9{iwa+&$(Sp#nzKcZA?JVatQ;qj z<+PJW=SW#*EBZ&B^mwt#xO~hcBw`GDv}Yc6cQU|K2$tn>lzIckP2R)(7~3Zh%E1z$ zU>0TmCT8Lx7+Vb^Djb8kYuVW`*7}2t6%891O3mjwi}(>;8FuHQ>j{VXAjFRcY!vs- z-w@x{MfP+DS1m8kGU{z<69IprI<>8<949xpK@$4@Y|E0holiTkzfkYBnl;PqRMOtN z93Ad77H%r9%vjHHXGnoibi&JUcMXW z`j+0+gMlVz2v2TeX2751u|#|peoi48L*awVL-rI^>g2~n|CV6Fx1voI<11yX_j5;w z9ZSV9hTPPmTy~G&YF%7_7byjEe$7c1SU-zBQ+E7x8M_!_IXb|PPyCJyjAo$?!qcHz zHgbzV5GKme5qM16eI9>(CK1MSM#W5fu$OlYqVCk(*J$t8(HT|`W#`*}dkZmSE^KlN zjwMK0^dB8BMj8Fh6>C-eb+KlW5p%KyDIWY5F~5sS)`3ha097t@pgr22tb~y1nGTuh zH782mug}YAE%1hrNp{+Xvt=NkNlr{8F;ZtHi5m}Q$`3i*0W(`Vi9mWX8Yglt$daQ_ zfb+s-f5++mmgwdK{SHhc7TG8vPJe#rd{+_*GgX=qrt**m-jp8*9H(K|z$#g!#oEB( zzy4~6)eeX0$E_+_7@0QdGg{8<19p30L$h+oRVkY?_P3E*wM)15aO8fEz+V6V1ESH1 z2b1Cb69X_cFqeV26BH3MIWh__Ol59obZ9alHZnCbmytCW6aqIfmyzQVDu0c41yoe; z-YyE#EuBM2cT2Z)gERv(zyLD?Ged)PcZ;APEgcd9f=G&VgOr34DuRGC-x%lozjN+g z>)thM?RkG4@AK@nHV2D=F~1TB?f_PY!%+Of0z&rzD!R%Kr2s-gq5?ufBKRB}CJ>Z6 z_^%qD!wif-Lg29b|I0xI0e=Rf&^lEh3hk#0hXJ&_+yTO(0AY#y!jkuega9H!Lel?o zgd^?)RDs?Q5I|P|paqA4k@y@ca1TEO#MuRfF7vM=fXk5^AS^8{$@e=PpacaYAdWy7 zKo^K|0YlLh9f9ruW4I#(jPm=B6kM_{D3r&2K|voM9|0f~DF8<}%YSq80em1R7l08M z2}XE>L4aQa1N4AU@Sn*9@Hqe`E)e7&y)oPg>~ zs{VCBtMLEPIfGFEaUmfgNeKx6*b@Nub#xK@mEOe91N_@4{C`W0o**c|1MUHELJt8B zf;fTEfA|4Npf?zRLU@6L0{*w*KP7x&VE_o?hypl(ogpy%f3l<1V5dJa`tlJFUx1Ym z8hgS3pNSKe*d`tzF$F8OJ#K(bKXA_|J$al4EF^D@QX_W_(jBp0Ky`o z;s8nXA?QET7=HjEf7=lHCsq^Y1P4g}=@z}Fe|7Br7XVy;$-xcy&s=(NG-|;Bu75yo zEhH}Fh<*tFe?$Fu$o~!Dzq0(lK>ptise8G*|2A{|w*MbyAQa;6_tyapS}zou0J?BA z4PgK6Y7YKGT4lI9=)Y~6C?J{!N-$^le=iY&REPM2L4O7il%vZZto+fN{^FQB1O_&M zBO$+DDgb_AA))`Wp^4?_hJJA%(SZDI0;75JpC#2`j&RT~f{BPr0DuSt&<`Jd#b`+! z5Fm_ZA_(mJ8^QoV0T>*G4gsKt3j#R75%|CE^H)tl&@bIzQ3@dF{*Ne(w!(gk|54S^ z3xPn>?teEb&@KH-{>^bP*ca@Gzc34Tl!>L8dhu+KO-&=`FCHE>En|r^8B$IX023S{Gcz1q9p;AYa&T! zGycm}CL+i;wCuE&G>n+Xis8K~VGr4K*a&W&GKl1Y_peMk z)~=1BIlQw9Q^35^L=}%tti`{p#+^|_9GUL3u;vFT42iU+7ezT)Ay3ECZcfG(bkhZ> zdLLk>n$YV-G6Il3tB7`20xb4P2-sV%Z;{pRp$?`B5M@#idE*o-7FZel(wbvm%zr;F z?zAg=oW;Tz>k~$!*HMk8hHv$V^vh`pmYGC&^G+1?2VKK!zHRpY`*XQ3Ta>cTwJ9{0 z&Dh)Xs_5d>awJvl-)@L;U#XpE@a7vo(cVf7E3d{pTrNrkz3yt9%}7XPcvWKHP$Eh; zxUw=d03)Vxy=wdFYLh#5_Uhnf6n{V%tP~$F=oDIM7p`gB*et z1SHpYw6w_yvJ5tKRZ^~nW_1Oq-&SZFc|^+e<#gM-+##rO2p*zUe48fK_kZQ(oT+{j zwk3ufB=XMfi_2Rk$+g!;g>I^~wEN^Z!_++XTw-jcIkzUhrdi#Iq0RdIp4+Gp|NE-U zw@pxZp-j3)CigfFQlg^X!iAH9i?H^~=H^F?Q`t+*UAud-kk&?l<(b9C$+OCrdXyLUw`UsTBmfK`ykKY zs6HtwT(@gmGDYqKXFqgWb747_juD@IlDe>L#*0=&aK=}csdJ^JE`RxMMKpzDPCtFn zO*Qb&&X5g4X@ifyVSKl#d&~2_IK730K>Hd?XTqO*>tH&*pu}d4B|3|1fYAMRhn5ui&vp zN^Ok_NDI=;%Znsh^@Ja{(eG?@49;n;Q z+@}VgM0WciX}h}%2=@U4L6}KkQ0)`{UNs5d6cOct^rR(~VE@Co{dM*m#@iBnK2JW( zG|S_?<@p&B|9^qpCuOkBDJUG8n{KP!;a!y8`^*LaJ%y~3xwj%Eg7`QT4l>?MT@X>U z6bz>-U}D)!?oJ;8#(2y#=RwuFy>`M$^29#!q=vIWTfQzuECpAGJntX0d{|T&A1h@S z_xKj5ix<9EZ_|gD(e;qlGFpx%-#TBORUco!$?@7pE`O1JkU*JyIEmk)I$K`}L^VSz zO5{sZd)jUJQGQfOCDeZ+PPKS}aCE^vKZA)N?M_|NM)L05#?YC#ZJ+KOxM{H{-DyOb zM6{*|HaM0E$FYGN&TI0<6aiS@BJZf7rl(?oM8)CL&J zAw;5Px_=Lj$Ly2%iju#V&{)Hbx>k#8)S_ur{R9og3SVKdjN)p`j@omTgCB2P-c4(t ziAsE*Te2OUn3F@< zYOmhU5UqUlo=GdgPonU46N)J_s$K3)nM&MBI@mG}7jLPq`J8_}IDT00CiP@ibN(|);gyfvZ+co()imWW>;KV`3!qf1;&f|QP0Ac zm{*9@c>r~%GC}y+H%14X!NalsYf8HAz<=D)vkE;JnW&W7O_D)EY<(Vx?oJ#?%828R zI8Thvs8+h8tlTq0-4Gj#^0Kam+O^dEla$HSD32XHT_Z%!d+lr1h463G_<;}KgdRM3 zl^|7iLjQr#HEHDT=S;c8+1n{c>odah=DZt)%)=?WSkYFNpq2cg6S3?O+HZ7&m48bM z-==lApkaoJY{$rq5F8(qSOSdRnoNmRQkrFcprG%HtXk@hNz=z3j7;-8J#3F=2jQyG z!|Us>K4;(3!tFv*&1B+PhrPVHDfBBlf0%SO2Z6Kt%((}?T@0L1Z zxzH#RUU{?t8D^g<9xH@Qw7SELNerMohC9*5PC)2`uUT0@u?ro_%(~V`qAFm zUO1$b3@i#NuBnCvHZOi*VD6ISzK$c@A3VJHpc2)XnzP+1>^5f=-wCF2F&F~hB)#ZiW{eD7NevU7>mun4m~w_ zoxJG??&caxNVt8e`6g3+wv@fEbYmtR1$ZO!EWh(&+5QpwcWg zsc&V1Q+%h3p?e~6EVG{&K6$-Kp_@CG+klxTSa zvIGQ$qaDj<;UX(_#qVWYLjX`b|G9wRH$#;?hipgHzz+;lfr6Q%8n=h(CLgME?T<5S zz^zUkjmlX2`PImhqkkNl_O4>pT0%5g^5-IiDRHCClHNz?+OFti8?G73e7|e4)xVK3 zFNrOF^0h;Wsl?Lyxf%1}OT8spoQ_%~E0Vxc0wsi`n(2!;9OJ4p@$$k^^9uTQ@L1+k zqG#)Z;Px9x$*E{+00OxyE8L$3$1eQI`sIvl?y~jx8BJ_^qksC(V=vjW#CV+;r3i2J z+no0LY-I+|`@fwl;I$T5rtNtyL6_zhua*~jO-uZk`N5^?l8uWZZSN!xU{vVuSzmKt zs)+i1+`JSs zMBnpTNox3N$1Po5(RjGFtQJ~&jL-*+gs_pP2QoO9mHI_}ebM)6uUheBvp%Li-3lxJ zxtqRl_kZ_d{;c8*d(Ar;>6=rZ3>q#jhPsJu3qHq(W9vzoU~S*n1csb zqeO+Pt5wyf-u2=t*e_fu$%(g4>IBz$hhUHNC2f)CKAI5E+Y;AWWM1sf+KrHU89gvv z%I7of8M@ARN@bBJeC0c%Daps={-5)rFx)E|!hgQ1|8R)atzNyn=yz#xvv!PN`M|X0 zP*)kzA?14dm0db~dpo&UKd}o#PdA+(iy%MR!6wkng#_VqJ3wFit*7GLJIlw+v>_Rn zw^}>#tj?b8r#v_~=uYMv-EgLYX>Ra48EQ1(ZspHTJti@T8wnF0S|H?evK>xTrhOu- zgnz3zgwdkn+U64Wl(GLd*KCYO@%@;-Tzir^*=#>6B>P=RGXs%lB>denkJx-fy-jBD zW>HVOn<;7QqG!Kfnh*Sm#s2Mx5O?3zPwv?Pl` z@o;NP6pKM+!s?4fGj|bQVwT1J=Ya>-RDW0!=LLoeIySO#K{z>svldV7TWyk-X;wn8 zaS}zm)+%et8-!YD_3PISDR;V*nM?;PJ6LG-6zNsQ`0K=_zBapC*{D=WHgYY@WdwV` zUi*GZrqpA;C>f3Ky<$|DE1%t+!>q?Ob8ook4*0Qa>h(x}J$gNlDy1pgG_Y7v0DtG9 zvO;mi$JGgkcFc}1dlE7fq~b~P@3$C+uv=!d-QhD^F}A8#r^BZNj{*R zYb*;LenX^?|HmrT#(-i*4u-YDZL8wXD_*?5lMPaVyto;Ct&a3K6ij^4<9`@T&V7c8 znz(waLz%}D2GHZeA)N&f6(NQCm!W>k8v2`OpmBQsNn&;q*dlpJCDc@;tJ0gpA^b#6 z$rjaiO00NpzkG8=FC$}sz1d%3=FvrtVY=_fPUp&(k}LE4S&sH+A<>d75;+Uzti<)7 zOpSh**+)UL+)H#NYQg!i?0@ucw|k#EnY8_sC{4O)#1_X}D=NH=x42()ZKLCzd-6el zmb>R|{-k8~e6DCPVLZl`)k8|l9t+D?G4rrxJ%hV}g-U~$8gy>O!vtKbE9XBV@2X8s zbE)i7y5KhTW*r_xxaSIxB3vW|XENrv%<8Mp-v+a$s$aXeVN58A}wBBsvot6k*@1DSNB0Rj$gjC9x^^ z1b)0Z%_2`1jV#+pNc*&8&RMV&5}9jvpQL zrv8+^`bFR_igT!sO$UoL`z`<2~w!@I@`E#BnA%r5~cqhJH-J@hc$enPyjrKG0Cv)CH*_b`>UEZ@^H_5b^?@=r9$2S!g(Ig zy%Kw^V>9cqC6gC=x#CEB9lM)qXkk)1Mq3i_Ge^LCNLEwB^Pakcoh;)K*DWofc!+ zH?s`ml1fZ}9aAtXl@l(3?3BRp8rul@hGJ=+8lbC}FkUREK}G0cn>(h-{x>-@NzVorKKA4FiF|9=-~1W_ ztEYZbcsKlr_1PewvRI*$u76izO~cf>Z|`*qeg;eIUPKjLwO8#H0bXL9-SZxqD69yr zvP=KzN5`+&`)8B+v1wHnB#He*MQ}+DM&Z2&?w7>PDznp;&a zD>6<2QY~UpolB37O@Tgc%Cpi#M3dtlgBn94gxo+0xNFH`3 z;fbkwD~Gh*v}if^Reuj|^ZUv=!`_9x3OnquM~c`fgY*3|`kQG4h~@JS$I#}K9t)QH zMX2a+v%PvuHb}3$7F^%FC;ayR?AQ&Rf$|V)Rh*kep3iYJQx*z;KywKIB`cX zlgXyOc`dY?tJxyFSMP%`Fc?XwG*qG2i69F)n0lXL%m#BId4FfkeHAS`aCJ zjkE_e9O@G`j_AFIXsbmptGDRAchM~ttL(B?Z_#^+sL_QGy^G!nLJ&kRQKFX!A%stI z@BQ8K|DW@HXV2N)cb;eFoq6Y(VW!vC%(* z<-=xX)`uXR!GGDYnGL~kcL)qB_78@C92^Wn+}q?qh>UvI_x$x2z-q$=0E&tVbN+S* z$hd&v5E~E_paDWSfL-oyv;jE-^k6m+Fv90wAy_3G5C~T>9v&|*FK&>FJ2wn}ZZFBk z3Gjj-900mtcQD)&Yzz2RGC&jL0{*i!Zfs_Nz5~Sl4?quQhwuWy!GL>%GsFfAb-#D< zfZBrLfcx74dMfGwEmtt~53>3n1Wv%8j{^X51OFH9Pw!uWAkg2=AR8N)iz^7~1A*ED z>>$oyfR>^?NDe-S}{&hD^#e~>2#;taCBC;Uzw1W=UG0f6o+{IfoH8#u%j z;m++2asE{!&#y4|&#VBom4mssfT0L?>|goGL*QVW`*-)@`LnrBP?#6g@2`^`1Zr#d zs|;HYR~`c>#LWY&BL64n-h}Z2@44Uz-|Drw~YhOuM6~leO$r6LEta* zeGLJAt}s`C-F+G00Eiv<{s-I79pniHAmAS00Kb0%|2|;@fdE^G4FX^dwueBm|Bild z2HX8{zVAOA;teq6y_X*l!29d-zklZU3bTbloqhhM|86mlhOxSwwj#%$CI1hUm4$f& z{J8i809<^cLc9Q=fS>?>KvZsvto3;~)cnwRisCLqgmYA>LqH zZ3x1~;Sa_9VK?|SYt9fTSR3XJ`L$gDTtHsl|6un6X5)0fLEP_U`5OY?&(FWFRDjyR zY<~?JpP&!`1c!rsuxILO%+;_m8y4D$I!_>J-N0eD>RcLdZKY=@AA*xUaP;r$0-4f)#+6!|ysH^R^V zC-Pen{|W~DC-SdoqW?kuhD3fraG0%!4dTC91Me3z4;*CsOHQ)?j0WWUpZ%Y=h}`Gw z?&0F{d&U1ZmP_HU8uy^OjKt8<*cayu;%MK1M2Ab#}-q{6Z#mxR-EgLxJ^NdV%hz-+oI2 zMr7*?owjTL8_VaqlUr@ra}(r)ABy&6>IZ1BsJZl|xBY**`5Oj1J!nDhQf1C}^AN$; zE+o11>R0lAt{*5{d>=8prL$cvq=s`-HpLZh5N8%#GR<6IoijthfR5mz!DJ^s@g|r) zzxYU;_u-CC^*IN2z(G8Jv7gBrU&7Ul?{bAcpL;hY6Qv0S&4Y8|_mhwPWOve3AAa&H zEnaywO`l-rdZ#31dZ8bTaPr7z5hT~b)dm2+j+t_QSIG{`rXI+`cvHsk-W$R&Pn5)i zUw!q;+ow9OkkhbL!=Qc;@z~5*-;dF=0?%a_(2lMkDBP+PxLSbA5yEdeP#peJIF5fH zhg|Hjhh~Af>?W2fmKc0=PFt|A)<&dv5k|`coTb-__J*3$jn$gbj7JtQT4$mQyE?Psz zxJ$?*Dp0~mty+6_xD{ykLscMbUu5pe&of0)<6Gfn(BJ`YVt z-jV?u_iy|6RgjQyT~wbsJ;HKAO(31w9S{V6lF8@BN3Bo{nvNR5T%9*8SPzfI$)>zQ z)+LO7YCT;d#406seP;X;5Qe@;?o}}KX>u#4=Bvjp@y8(KfaSthjuucPLnBr z*G<hZ4F`2G`T^BLNM%t@G7b8|!FUXj9!*h%Q}7uEg;)pP)T>cR$uw=$5-BLZlyVpG4$;u#(V8 zEFee4XHofcM6d__{A# zyXt{!;@K@)tJPiyr1Aijb(3#@R1=L7+1IYP@N0FPO#8@lQ>o`cS0i@;=|LZbH5b_i zxDe-TMHb}>Dy$Yu$r`2vtAMGFxBL2brKX+xT~wpK%e#L0OE_>sxmmudF5@$s&vFAr zLukbV6||KoS9V)JA6|KmLM!!;?Db{s=Pm47!?Z|?j4E)#2|M}KmhHcP)I&T@cIIAy zC8;j1G+V-xKBZm~SG=bC?p6w%)8ihUE#ydS=Y1C)B(eUz#JuUfXKvN33x>(}qvHHw z+^lN4>n9yXh7QIAk9BYTD(U%x7MI$0SoSsHLNvp*iPrJ?PDPfX6bo-AH!yc=Zprf= zcE5Qvw!Y8OEgeM(93)$R=Wq1GKhaQIPI_i}acw!@uLN4w?~-|7jXV-F#%oe4>$h1{ zfM+|q)q&2ZdXZMODR~VL*8PYXJ+4+E9Jh{|@hLG0b8_xsk3OOJyPBPYN)A(jB-t}| zBIOgDi*apC-Wd4S-9a3d)cz3*+0Kk=uQPOhAqs&5@$m0z5HSg`oT-DtBJzHbOD zkmbw*@|u{_=wHXr$nlYa#h*xj6kdV;s20NZr_4K_pQTi=$5gh4-)l9KxA1WU2 zaV4_Khw}0^pOl{1ImyvrkeUYPRi!O?Q^qZ`Jn@d`F$z-t`UVFQi0zJF5<^V(v%)L# zDn9;Iy;f1jGsC^AsBlQuv}%O<8pX#S%*m;geltGH87PW>NR&4WV%Sx4K+~n$zT+GM zQ#|ObdpJ0E-JDB)i#zRWMz#&&v1OXv08{Qpj*7YbT*hE|8B1Ye*z@t@3wfnTJ@kGZ zrm1JH$W&!BVO}PU;q-*4`X;dB#k+Z7cb;%{;oQ@EbM^Cdk zsy8N?a0%Ko9he>)-iiQ_4|hrEK$j)031T zn`7bu{kHu^!UGy-LJDzar=9T@JjRf?m!1aYY1%121?+6hEx$|sK@D9EwnW7nR^K2 z!sNffOgb+)e>wH}kWD{GuIo$Mv=hUt=lpb}8?ZWQc3p!{oC&i+QJWG}i~_v^m{xJ# z@`ES+$S^U5S;Qi(pGKGvqgZ5mMAb`kuP-aP=UH+xWx1&=j^+hVuCLVuqR_t494W~3 zJt?Xk7aP^kng$I{aTq=wHr;q_&ACkD0-9%UiJ?dye-jc-H;Jh+A1P{Uj|%m#wxS*R zAVo?Zi|{;E+$r>$8;A3;4NlO|MbpmmY;tWp(DJMmd@w-NBkdFPCN@MAVBX3&afkeA z^4--LvUgyFAJQ>B*61tWVF?qYb65g5!g@&7uJzH0PSaXo?nrN84f9lmZj`?nt}H~2 zU6c7Fe{i1$zueDq>aq2Ft{q&0dJ~Qk!bAnK(@lCY)c>Py0Xqi0Ah$~tfQ`dQm+-db z8+^jqX#W{`d#e#ICE8E%XEoQk^-{|5nh%@()`kwZA2?9u4XUIsF*-vUj(2?OUp$=0 zWV(ZstV%Q>D6?W9Pmw`=`G+4!(fRTue%7ZYe}jh>Uxqvzi%wM844=e%v-XKBE^f;l zoo0cerib%^;@Nkx8s&nyjW@pi3~T+WRFCX? zh!pK-WP+pzG~MiP!g|V3N))EQFhbV&L(I18Z7n^xMI$%l(_!^UwWm6&KF(`O;?yoP zf1=H2Nt8Z3NV`jCdxmbaFe6_Ro6muQ0rWeW`sA%G^_q=Xmu<1T04 zxHhrYNApu77!J4Fa6Mk-*m6F1*Ip>KW3xY!jtoIj(o*w1PsM(= zx!v7@rB`Til5#$k%t@y^W0!Q$bgR&7mQ{6E070%{@O)#CJ}NG@b!@70s{3(Ee{_!8 z3CXrI;>xQ#b;SG&#EWE>^0P2CP`l%2Eu(FQrtL!GXtz{_aLB6~S^xB#y|m-$;SjHO z84r(ll79LF^5(*=cl*O9w(AFeFRm&vrzkg!5M*CNHC#y|@*xYstRw~BIm|d8;<=ib zi!^uj6}D7***IG&JUW=W>3%!@e@qF5k?QKx^vBws-X`L`%9l^fjfIKXvlC|Fp*pt! zdLx~sk74kE^Rf$j?J}GkGyKZzd&ZcokBt|8hA(*z{@{osfDqi+`0=CiC#j@?UE&6;e^i51%s^7t z-S-M1)C4=5ugSP8oPvf_UR15w2-r)^?zTPLT$J5wy)xN1>q3zwqb&~?bO_0TH$@Oo zD!j@MBeS(28SpCWjX{}*G&Z{c3dJ$b`EV&1qz3k|&8;kJ$={d&C@@5{X_3u#$G>@H zWU~cRhl(*7IuR$PI0$TBLTJXX7_}Jt|tw=VOI*R;i2Z`tl^Z( zZi0?b$fY=cdvB z2&1#XCN)O=5*Mx&N7%9W!={M%d?~<YnFFnny=|>uCtIrHQdE(F47N6($AF!&I zG~oaR`R5%yBYnR)#7t4o?27I-r&Pskr&9^ff0CG-%NbvwBX7mmKWllf)w5P6#!26t z{L_FmT#ku-!NF81xR)7OAbv+H;#(&pN0HBqG$DowNnKqoA~D9{r|QgI#<^sLNyGBd zw&j(arYq<-6;)M{iiP@n`9;A|_M=a2LMCdvI>d@7VWLBksb+phVU;I$?GDVIqUS6K ze{zgv16o6wn=bYhTRte}1!uhI=F%xrFlwKW zSE%!y6m-vJGTYF;A0l2DSll^}POP6XWY;jO zVOl^0!}~;g==7h(NXp_ccwvL_2=3d2CE+6=I6ZCv!RV?Xk{N@$VGNcuT9fANr& zH|1B3Ig*eUd~POUsE!-8uXhnf8WbHhYGvYsBGrShWwLSI4<5VSn8DmiTN4Z&(R2XJ zkSczs;AA8w==s?>1q*54lQ;!N_C9PQLqpt-e3dnA9g%&CXWuq{K9HPV3xeRz2vAtN zVD%Cexj?RiwqA~OPI7Bo)fw@Qe@(LRokj3&&n_X2dtQ4vbDM)>oiiswf(~h}mT3m) ztBljreY0j6Mt_DXt~%+CWj4)>Z*f+>v~pT!j?GZ5ay zQq467#;^4feq0yu7(I0+*V;|QuQKoPD|Jl5?yj{mNu9_hxJ>~hzEOiKe*vGzqZj#%pf1RiZft-JMPdlTK*YDOJ-z4Y+e*X1N7Z_6bI?4f6X1&kyMWjr4up!y0%be zdyt3~-Q5QPunrP)?z^{F1)ElL6Kz8ShEm*mItQmGO>~hYNTu5;HHtPbCF~>iRA)X{ z8dAV76DOz49lkHDuOe36wfVoptV(_o2)$b2PekV0D(k?ztf%Acm>Y>)5f*4yztuQS zU!w%FOR@*ce=9W#K2s)qI`w$a{q1uKuXpUHm+1w`y`!7rRC}B5td;SM+OqSV00)>B zf;mPtv8@lQkHTXT=>mU+TkPiaTUyj&Xei#@WAMh7JFR=QLebzBKj?ibd*-e7UY2JH zd$E%_rr-sV{I$?_yi|qvHvgL6B6IUZwZd6xBgF8oe>?xqaqwelbxTQ#_N!1@O>fhe z7dXcgZ=m0Th_pW~0BIPFFeW^Uvt&e8x`YaBeP6uIQ9nFIC>>b~YTx8|adPK$Br@8! zp_hlp-A*Wq&37L?I1%_M=0PHB_+1)At+kcPSM2)|O5cNH<=SSi?*$4|S`xlZS$=|N zz3aQ@e?C1?)KQdXEL|So6!3sI#!vJ{_DG0nBz?L>f<7kUuxVp$=t+wBS}28HpiR!W zmdxhz)78prC9Uq$v5Wvi)RNXGL`Y7ak`u9#D0ItkNZj& zU;XssS&=wNK%{wxi#2A(~8vFBZg zdDNUpa(l+p$V_jtR=vb|7$U;W@xo}EAp6al*g3EisP+0PjHE>f?FYVprh-qv`LhLl zY^~#vQ1V5#uTACSS#J~SaMkF8zB5z)G}-;O)t9A8L(Rezvr%&GAW+H5;=j_ne|1P@ zIo{I2bf~Gy&Ol}W6UBC`>?2!ySIU|GW@2eV>aunHQ3i4!J1SXLJ>^iBoYs+FIxG^| zFp1QF=_M!2YE&0y6h_q}x&AUv=Zt=wdVID&NjVs|7d5j|kBX z7YEVhr?+!RvB$4Lw$fmJ}KZsSd6tO?GY@Re`9otW9;+P zfgi~Sr;SjuXbYi5s8F>g#^_Tsct2q;Yhy>k8Ff*(_v~;J6=k+ox04 zN$3hf`BZg)wM$LG?;HsAe}wi#ca<)SKguTE_DM})L zG$<=^b?0n2G}ZOV?-rc!%5DbyCZ?xddxy69y&E9^TslMY; z`urx1FCQi>ukD z!#UndG;UiI&w|?(6yLLNxqrB;tTJzV>&ZJ@-*CIAM(!b}EOruN`>oPji#mDqr#sb% zTfNzL=U`);o}J$LEuVBSb68kY-g^|jh%lsi!hlkm3|d^R4_a0}$sgB5Uzqo%ln#xg zR3xKyXw)rA4Yp1We>R&l9o4G{9+$_V=cyhC5r}T%7cX-L0_OSVTu5%KT;>TB5-v+T zUL)eo8@=110qTU46cNi9OA&e42gx$3dPSkQSLK_kabqlj!TACMdi*3Rr(A9ih!di%P#?k;>z(`-t=RWl|?>PsF`aoX$p`|6`dbfA;XK(14 zbhsK$3!aNAe}2NNwSwiRPrbck(8DTX>5Ml(chD(lrYD+z;ZYffQm3P=Ybe(qv&!L7 z7-*~=*Nd)p$7AwbkVlt@XBe$F;5z)=hKb-*F`HQTf4J)A?b2=OmW|h=yXy}N4QHAT zMNF|0fUL?mqz1ue)76qh@k9&&sq^D)r8mjq0mma_OFJZlLc(I`d@&7g54yy~ddh7y zDg+3J>X?_Fg)5EgC2_#wMYJypvm}wHs~7Chu+R3f&>t?`Il{x=f6DrmOM5X`PZ0tt`*@BZrAtY1EtgynaGg+ul)lr7<$xyA{Sb!WuxVO4RT4H?La-Uq*gR$+s$&p zVv7AZUN7wCiPa81AH&Nk#a;TMaenQCN{JI{e~zLsOxhb=Rl|+v!4~#qYE`CSQRD)z z>}B=Y^Fp)7u})PB{S+#r?dm7-72<5VL`VKRWK~&h+WaO5#Kw{ewVb=bIZLub!D%AA ztti>1-+0mOhWv)54<Ud}wW z#oqxk&C3Qih2@MSu}_1#tx3=wl>^>1`cM`KdnwT+M%-%m7Npj>Zly#zuhODFftz*2e!%jUJ91pkik3 z_%DI7t%;K>(7_n+zF=i;XlZsKfXWb6QV-yNVVB@0lnGq(Acvh2SUJ_7z-8~_tN z(|_Il+xoX7bDMvRfrf^*)^AUUzqfe>d0C#@5xw^FL%_ZewKfI}IaeI|fx7b9-lFDbauHyf4B1Su-_u z0S2WMk%&%Xu#OK?m~03&llCxC&msksf@AMfwW#wP#b_x?MWy8%8kzK)MV`admZkd{{wmC&O7cgp`23Jcr10X*qgm;rRmY>a;ZCPr3H0LS}- z_y77)1e*Ulj=yZBY)otczn%S#_q|a6iP`1fLqPTK6G9F6UuW{R@1tuBp!zfE+Kg+H%I8<~GQTmN6FloRm%I0)I8zK=8=6DvI<>%Z2`9mUPvjExk{oea(X zH8%fRSN(n9tjukU6>S~Oe_t{0R*a1QNA`Zo3@zWU5y$u0{Feym_72bUq z|Ap^6n*4?D37h`G-vs>IKl{77>F?Lh`^5e+df&zDFMMyO`Cs^6CyT%EJ$=jnBJ+E= zmOwkZzXN=)h}9p3_i(L%)&@p@#qe%p^?N@5n7r4)`j3CfdyLl3f28ks3WLob>3dE# ze@ovtu>Divcd4zlvFTs&{O*a}pOU{vXZL=S*#0Rp%e#NOzq-Q0^$#=s+48+0c7Mr# zJ9PZ3Lchyw{};ZO^G|h|-^=G-}SGFe9zA9FMRjz{ujRI;_(mu&y8T{?BMWzW&CrMzh4*s;eTGv z#>Q^OhHy*swuU@G7BxX__f@U*><`Zb4@gJn!&H=8>B~a@CWC3Au|M z`al#3B2l_v1&mDll*y63C~JBa6I>}UO2j#&gWKdgx~fVtWU=tM)J}dXIW-#$s_e2| z<4|V*w2lqjj?xZKk^f2}!`txy7w=k$vNiV7?Gmv2i!8(mRg7m4Uz8QP zQf+@V59v9(*yZ>unx}yTy5O-+(b)~3Q= zw8|CK;-`Vi!h+~xo?4-b#8AIK09~kg>*>Mzns?RFAxyDsUm0l=jTYsxS-a}>wIKKL zoQYwm&M>VyO2os}dh6D!(rrsecEH-U(EGbbn>E|%<^pO=lr1-aDC^r%XGBmm4t;-1 zILY^w?cT5(!g8=LMj$2fIc1O6{#axEwrwCRa4seOQIE$SFUMeC0rGHmbsmtVikLiV z)19X519^S$VEjuT-!AxDQWX58S*?W_M_-g!8s?j6Fa|w4X!EdIcF?#`w}Q=`cPHc$ zcN7GX&AjQ*SEynT128@f1|G)8MzwzlZC*ELM^evJLL7Ba zVgdQN5%XoUYm|KJ_Zdn48&U6@Uob0~aebOeNNuNe)l3#z6@jKDNKlTXxfz;naT6pR*$ziKo86iN=5+zU zr+GcNK0GT{54FRq0~@8Q%}xTnXk)?3S{g79ujIHSb#wYgu2JfkfwXkt5apN+N0y1$ zSj(J`x={x4Uw?UwG{XSlM}mJ@^@O3ekI*5}R-gLEADPZ+r>uZ>Y?QAnd zpEAnA!8_dehfNkFYac%o>8Oa^c3XT^8jSE^pnZbh*}*yjd`(4Jv*O(G&{&PPtGUij z&y*xqyIb`)Y9Ma#<1u2*%U3BxUSi|^xc%sYL24)yOS3x9L+det39Ww-Rf*<-XbHeB z_%yTO+Q$#H?>AuIWr~)1Y#x_Ep$HZ*o}9aj;|n`7X>Q>CWg+t%Gec(CWOchvu6J!s zrh}5kwN2L>n6ry*36vf2{jmCwsxqO-e&{sF@#Cp=~@OMKbWK&5@O%>*js=V{J& z&v4o4V~Vh@F1TThOs;?J;iApQyR-TYegS{<<()c}oW()gGbPurGh5tnp@iwi&F63o zm$2b22L$-tI9Tpar%g!SK{=sLd&?Smfh{B)ewX%6L7OIz-d$*WQ;F17A)FA(N;4Ws z?$~I&8IE<#7D)=aZCimYDCAuTv8tIZ!JD4^v(XGW<(1z=tZjccb{WUX%e`~$RIFXnnj2|O>23;k)(gPcA(*r9;Me#I_caR<7(YD` z4qV?LfKQQpmoYrt(}RP%=6@b~RWV(MdRFlH30%xbvbC4ss4|fVS^79K^E0sSEVb(D;2X5W6 zUcK?16O1{ewYs>kRGR71bW6%CReNb)FKULnqSt?rJI-hMNK@Y%;lk!kUs}jjgk6w?@vk1=&F7QHy5;abZ@^MaXPYel5_(MVyb!%OVLkC22MP+14xG!1x>w~mhe0B zxVNm|XP{Ug(yljZSKlmzXwvmfr$axLR@cB%747qk_*Z>GR3!=$u`@Ur6Xdz?5dq;c zKBN%;Ocj3#m-ig}@a3UMU>qmf0VLuywXH?(x*`}Fb=pJ$Mtyw}Y`Y}8#QA}7?Jh3b zk|Dl=qLS?fVQ9MKp?+==*1wu=LsnBwtJL6xRU_;3D5LYJ1s1>9tYwW~4Y5XFm+Y60 zhWp%sIMtM@+w^UKT&UHfiX{G^&Gf5#dato+fB%2mvtzIj#A-%_Z7>VbxR(wQpi(Do zXAjS#*?&#Gf+FcdqQsmklVE)aJp&gQ&%l%v=+T6@MVPgM^~R#70Xeqb0|UZj6wPg(AE&is51ahX2}3AKOXE^HTJ_kx9H z!Gcu1CsXu@^B|J!a>na2i?~rdVqoGm%&-l0k;9HNs;VXZH6kv)K2!w&ZniqeX z?b~p-q6*lS1#O;iYRw@6KUe*Nc6M?A+l5OI~kOW5Cqu}KS3d8gaVUU=G8l-0?Q}`9rXrM}UlA7$xG@HA+jF*Ss z^woCCFR$eWC+GqTVWY!fHNFauC6<5XE|qy{pSHcvH68V@b1eEVE;+AuHV%QR2y$xb zrRlfy`{aBX$^ji(S?nQuPw}40;V@(n0 zQDy)}aCt`Dk;RtWdZVUKWfY;>$jFlQ7l|V19jp!cPJ(YkHi?nVnI` zQQsdf{yNF)YfA!EH5P03MlpZY;V&8Nv$d$Th)ry#gW1 zy@f8VmYFUzn2%&i#<142qMyOPM|VZr`HcLk_!SNhrLmeI^ulQ^ELSdQZzKH61`BC`Xx`0m%$f9Trd6ijPgvTj~c zAYD3})%ZLMXjd)l8~NpUpxKgX5$v4@r~Si8QsfBweE5MdjR8({YZuTu4C`rb+`EmC z242paTZz|kH1Xo~gWi8L#jq;W>YgzsKa8pvYuQ%>CYAPV48I9~NvrAAjtoF?fdVW> zt|JpGjTe`Uwg#czz+Nw4fh>30P}((5w<2RCce5mZ5lQ3r<2u~e8>egaw)Bym65Ky6 z|A9Cn!Pl!>X0~`lZCRP#Y!1t5FcWt#=%|Z*?QNt|k{Ehw7+R7ufMa)LiW_UM1Cr2IhBeW%J3LMJx$VK+Fz zwpGR8=UOM*PGw`~b31cl2Y=a#jGH}6PvPc}o>MWw_w>UrlU`Hm3*=#p`J;S$VsV0% zEs6B!%(|NnwT0Z-R0NXz<;Dlgilb|_vpkh|ivtU}LEhHt8HaQi^>SN6;~tLsjt1Ue zvZ9t=dK`b71Tpjy9NQScQnI$i!#abI72?Hyl%-gmMXsA^OXwSb-U10Z3%)jzQLSGN z>Z-D!SK5EAo4q;Tz7l~XDSLD2jBL8Gctr(?7D&y0TpbZ2m}%T&qc3sf?$8;)p z2yU+tuDdOj{ zU@&oVgU^mA>AABLqRV?okz=smQOqxH|tefro?R1rKPRXg!^THU}SL z6M%nYLS;CE(=&X})d9Q6Hx3EYnC8@nAv|v62Vp)gvK#1&fnyx9becx?xSPj8GY8}w z;y_p;<8q#Z5hTB9^*;I%BcD5oS4Oeat#Me8f^|Wrorc0_H}k3pwNiV8xY4G{vc&Hw z^LG2D1@fS-?m8Ru+8L{k%=Xr2uL4>0i-mtO4Ue}xo;Not&8z_^Azj%&VvFVT&Sz0J zp*k#&H+zjX-MXdB#P|jRi^B?a;&mJVD)C+3h%IMQ0Z*st%xkz6q=XY5L=!zr>GX-QSom~XH%(+ihxWV={3o)Ow*wv@Q#1t5+V^Ln7T8paQ z;l{^}C8^y9W=9NyyoQY@p*qtLiG+VKdF6o!!+z%3=avNrH2RRWZH_sS7+n$JoUO=% zDh$3ghc8q5$(I-zR`%bin03}V)8viuGGz`D8EXkn1d6Ban3C@<;B})@FOe`XQS}vl zl;4Q>WY*pU#2)r!@Y2&MYH6>+^BuIwm|@92FGMl8&D*hbfE@qSRLw274}^cLrvcN? zaR7X~6N3Mqpvu`l&}aLF#?BD|{{c~~@Yc$**g(+c6YbR~k5XKeO;&t3v-?CyC05W< zgEwL8fz08ejG9UyX&L8-t*ERdJ2CDK*Wt{pDJ(HVH28$Uqgu+ z)JksW>+y$Qz7ze=&>wUVLv7`$TwnLiE{R_G6A+Y)f z&D>?y>R!cpcs1X$Cxf4Tdb}>n8aH5PQPHne7#uoZiij%Dg?bH++6MCLo_4It$*nxD z8NUL39QPAM6-DG(WwaaCF82h)NH3IZrtgwSj&gUX+TY48Y6 zvZ0())r={_VO|q6M;!`;)EoAbyC~vGPO!-e*JyfdwqOw2`DeL zDV5U-T)QDc-lI6V+VETMy2u~--1MTl%Tys-W4ktT*%e?yErfrUw>brZ1%mc>MIl?G zLE`W~$6ULMCN6bCTdNo8k;WTD0^gFoT&Yo|^f!^e_m~5LUci3Gb~<|LOcgs4mO&vw ziamG1_EW5%GXV@xP{Ckb$+ir)u})JT;N9Spu5M^Yv1m9N&Lt=G?mzKf<1o26D)==A zs({w6SkAGf7-@evJ|;`XR0kSas@rkw+Pf=F^9~Shxxw>Y(`C4XK|D)LV0c$)HlKMI zrp;bgPS8=CgI!pw&2LbZ%YIGXRyU3O2KwqS&c{%V+)2SCuHr4GbJ50LKYw)n$R1{4ME98nPlMi>-4#58&mjRnE#=d_;V5RO5$_vH%dM`Ju_d!P` zEX{{9)uoc)N#K(^oW*AFWLCjeqHi~Rsux|Ap)3kS&~=>(1Zwt~htD7?DptnQPJg=%7bL3TPaRn(KV46<6%O#>A ziWSEVyiB1h=~=0LK=t*oWeXfETrI0LDhEdq^G$dfrs%;4ScK{?F1YuVZKfAstXrd- z+g?`I7eN3C;IKDV`C5Qg%xh2xZ)fLJ)3`oe<)nY2uAm=+KmCi9UcrsbE#7S(^&;k8 zqX{>se8iMfMgl|cjIoy3f8O@mqewmQ*XW2j_W+c78|@`TicD===kvS@gzNq{NBdBf z@(!~Ac8BGoOW6bpZgtIw-nO(jz_w{=LA|UIe^huVm<)6}qTmzDoc5WrJU3@bt9P(9_@>PS!hxIaEPO_}8(UH{yD61J^4`l`P&%a?D*i&6@kiL{l9NGZ zwlK4{gYyt{kXDlce`JC*4@M*A!a z=iX!wTPNJrK-MEji5oV|en_l-ya_k{i4vrPY%0{ku&l-304-|!hLo(9A2pD2f?h=qlRFGhDYA|RFAkKEW zoLj=n-~fr9Y|5hm{tqKGnn&)?dB$^Q9S%3DlNMGx_zFeNHX3|-2p2YjEXNT8-kX?O z9obJIjOR4>4Kk-m3$%@b{KoWj%eH@|GqDG+BDfW}$Pmf7{eD)%DChlC+CI2Sw3uWr zJ+{fBg=x#CAsaBS?*0!)IR`-W6)&6Y1ZsY!-XVrMYQ(i7?gfi`^ zZgVDHD zFfJwMI)Y0GDHx~Y@aUW(`}*`KhcCd~kqu}eBplP8XH~O@FmO8A4s?H8_#_NUy%E&@ zC5@LEOWQc32z%3%v)a<7zYxgTS-HSsokRSC=pNeSw2JDO>yUq`L2w2OjonTog#InR z3Kxxq98^<5V?KmdZ@Cd?kY=ajG@X4!;X6E+)qZXa4dur0J}+!IJ-_ksDw_5dW9%60 zOVoGp>b5GHrGslB=LLT{qz@QxlY5Ndp>5p(PghcFy|Gm!s|3o!$X_`y4s2ostDh{jai_!%z~Q(KH`;@5bYCM(243 zfZ28C2&FW2A3!H%4__lC27YjM+#}6F{V-e<;ttb3CCNv#1`mG#^f{7^s-U)z7?d6H z*i090M^}%QrGr=DCv3ZBK=VL86F8?vB3qJrxI>UaWCm>izE#PRNT@)TU9?< z#-KRaLEW1;_-#e1*c^-oS7^AVij4hdwRH1{_>-RlJeQgRH?b^%t(sRZ4fE7RR2i;Rxq?) z3*MES#9YOqTgzDyE$oQ*5dMF~mS4h1aPXAb&Nd6f<4g`| z(I~~9ko!LFys2C(Jh!5Q{LI|ow$a6lDUv&$%R(8qUXDRIQ^uEMXJyh=(xS*0I*v*6 zdMAVW%=F`u*ku6F=fZlp)XxF8xIGdN`xecp*WB*K%K=>NIBh#?P*h=zC9n4Y-*=b$ zgR|E_ihzGe&nV2sSXp0SUBCx^6qSN_utcf3n1q=C%{Zk#a|3s-sG^)uY)3|q18O-i za)>~%UC{Xh0S{xQ9hg%>D>~=${#SaYL1*n0UJ^WLfK(A3PyKQ|^<3HJ=utHC0EQ1~ z%(K2Vk|j5-K<>FZz~p*UA{NhVKM??fhty@A=8u1jvy;AaH!{ul(KS2#YK$FB8s$Mw zBr#OhZ`81WyD>6?!)6)_UFBmM>Y_YlD}B3~9Z^3?f+qyd^=Ep;EsF+PhTIK{sj)l6{(f5FqmF&ogpPUMd2HrNi(>Ou1IR_M3CdE?4W6U)6W85OcoR{ldS0c} zz5r8<{-za!FzkrF8A(04cl>DNqe5nCWs@K zqPT%mIu>v&cTiL~FP7HGY*Y6}Z*Vh~4{Z~=2cSu%-3kT3=@_lAnInQSw){=;-T&qd=0-_uYYKBK4@ZU_Y5-&23_5ibY2-)~A2VlvYuCT6ip0SaB2zuW?=Rt8i8^=r^cD3(&^9rCZHh zL^@WI{P}YZf-OufCqv74U{!svX2GzwhujqniG7PC=VVtuT#=%ln1%k*q?s*J*DiBr z7pRAj{=jv%*+{nwE?h@+PY!MjGwDV!PS!s58B4LdCIob4TEHTFm63nsDlFjz#jTa8irkpez$z}^|mF<*|9YZ5w2rXd( zavtM9{iPaa?c`uqDG4D}HL#nb%6>hU^~zl?YDKadRICCys&K_;FTG#bWHVj&-6mAs zVL4_+6%&2qr4PZdTH=2|SrGVcZFV~d@4O_{J*?DHG|saH=r0h*21GL`y0U%KEyuZ*SW^~bYYVdz5`_8#lWZp#k{hYp% zioNMwn??_3BY0f(56&z<)xoZV66HHDPO5zZN~${gRk-2VztXfU+Gy6WW&Cj8GAShq zEW{V?qlk`60;QDO?5y#lY*)sK!^q*Vw-bhTvdWW{7!?YIZ#h&Ej`ve}39szD$+%+? zBZh9~JR^u-1{r_0Cm?gm-tMDD{z7ZVIw+8ZDl@ZgrF8Z1CRr>|>{vHgTVSh|U1GY~ zTG9|&g^w#9V>QINm;~=!32%9-bJ5K{89M>__0@Rdar#0 zaIJX6qS*VFCtr|bZ|rb({%LAwv)JeYNAzp2IzVYUfhb3ry3z}0MWAx;h(Q^rL3DG_>g>7`+UgJw7~ z&8~ezAw2}bT-}nQ&%LjVq8nAR)tkU)PzO*^Lwu)EDg>o}SY*0i_!aH#XR z!sHso<9;BKm1>UYZTnjZ--VIei`l#)zvauv*&(yC07bO;3A(fB{0(ZM^j*Pv0zw2! zrA|3Mlbl2Sh!4VPm$WCOl-a@$QA%ZVa$wm+6VFR%2EEmqUIp6`ElZU=RHd=@k^Ymx zUpjxjBY}=AF&FeuLlWp_r%;KdMTDtxhiEQ-oySp83~`&qIHffk-RW=Dn67)Na;&Vgl8XG(}A*Owg4Y zm9*Ttm|98JV+Kw28~PwmItpPLueC_Mf{L7nf^L1p3{ba}Ucp{sA6o~~H2n3yJ#v#U z!nlr$wHav@l9TVbKl0q5U&aSMw(gCyq>rPLC|=|fb5C&EMp?+ND^Q+?__C^-6ybkn zlki6*tJe2y65NK*Gja^^}K4gvP`Mh%Sn+YitdhX92#R-(wqw*p*J z9p%P}1K6vW*fGa^s5!UKGT&Yq^sRprJ>sF=)%h^f0|=ebNpB0B+LES>s(RjLCU1+e z&AUch_~bI@JNR8XQNxAgBMhp{W?`Cz2vsr(4gDsw`Q^AWU)!@v1bBic>^ls- z2Z_pJf}i^WDS54(ssTaMy`c-<_+tl>q-gdydTehDKbddabPqzCSeTJ1Z0~L6|BFd&+M|GI?!?dSIs=;URBG5>=wwv{>IP==E4z8U==ClML}!Eo?D zpL3OVX6O1uEianOu&8n#qN0EG7fjg3opNu{1rW|P-1&tr0qwj(;+DEH5h`qaXkw>s zQzg(~H3N^th`Yu0Cn)8ufw>u3L+Kf8{z9gWj~B6+X)%}lpIq0LET$A~lYOLLg*o@g zcbq!mz6E3&JOfTFdylI9O==2hTM0! z=_xtFj6|C>Z$gxq&a;H75e=Ug!e~fV>@`;>pl741UCql39~>-PbmMGT)_CHliS~p` ziM`)Q{rVZp*qiQ*x82Q{t$t01PAZaa5I!q;o2PP^Xm9%FXQ4Kom3UMgr`HAPEHKY2 z@Fd939$J>Y6$ypk++8=qkmBus(+$QSR#?)^A#R%%l?(}wZ{T=V?sV8!&mr7WuwqQH z@1S`aFr zeqKYrLpgo(yl|0c=*9| z%}>f=3x+*OpaeCoZ0bmVYkMn_iSOS$H2kA-n0i0?>5COpNtsN#YyGGIPCU!M+CK$# zDl9q7=QSD)f5F$;4B7#pnlUs6+eGCw1i1vtAm4?|8526s#?bXTn+Q~hun2NR)|$jb zV78057LT*h@%}uBHh`tP#knfN>@zSidbt=@>-nCo0*Xo-n;WTr)wR!nP!3UFep1QQ zr4)r1I;b$>bh#it_MH`Ee6{KF(v0A1{CqX$uff@Cw@GNXaTc^ZzKQbk`K!Q*7wLzW zqIetc@EMqH8Yh8tY-wPCV{k8r^VfE<0lbXFa&4!J2i5D!{#Z`*tqwkNdj?4V%?JkD z%x$dUMw~Z1DaxoL#u3_VJX7aryV$ykZd#lBc#O?xd z#W3z5LU`2{$T1I77Kf`HOiDU2=y{9JKe8#^HP>SkCVc#VIngr@-PKJaJ+i^}wbI2H z6q_ul^4oPsKtSEs8i~^!U?@Cv;Fhxhlasf>hq`Gqu$R!>ZumVY_JV8!bkFP639-6A z@ad3^Rt6}+h$s#NwK9n?qew_vcnoUkNqN<5A=Tf^tN9#%PDk++OO(jZn4&&)1ROT@qo>jBNNGCsju<=Veg<-dILeUtUZKuSACE+gnC zrx;CZa9D`>6I68%?#*J9>E5{{49^h5b;xm;h8!b*y)xFZ4LQUg3?(lY{gUr0^y(a+ z(#`I=vOH4($lrm1rOD28FxN^s04uuU%Rq)$y+v#ldb{uCMy;S=3s8V5kVay&aEeb& zs*6rHtQ3GbnScx|0qJWsNc?z6+Mgv2PX-Y*GO%^cn#&Ew-&4x_41d5D(JD$|)red5 z6G3=?YrP`rg3rXqG|Lc{bWEQxc|X<1s=Vb>FJo8rX=K_0CsHX3>1J9G#s$nHXMk)R z=mg=5Why8T>ec!JXEehF`9=8?y5nbYXo>ofRHKO@@^g^c8p>}-KXynJ)0Vfbt-dC| zE^SU;auR&BBMn|;Jvoh#$tR4iom~cF?xm1_eArCoBz^sP#5ybDq zS7}r`-RzZqey5%g&M=>>pD8N(l)PxU9q9IpRi77XL1nOIVbuD83ffOBhMnWG@IwoK z`v8^ur`RGC%gmP{`8#Q3lx3oIvb_5|6F5gzh2_l3pBfL*5gFs~)co$d^kB9x$+p7s zW7C~uf%wykrxLAQ-pxH!ut|h-Ed)-ZB7FMOqtlUPd*n~$m-^4uueFQ5@Xz1xM$SO> zNS+hTbHQYr>4ofPt7ex84|%o2Brv# zal5TnWXy^}HYV`K4Q)t$7$JfpAR1`z6r{4H9>KohtzHvOR(pn+RNqFBX2VbF<*1SQ zqd{KV#nh)&aPgvLshCchNWHFq{bQy^3W#!s5u-sUKO+bl!-l7lTVZ7xr;n5ALgRM* z_qKim-llbK*^b)1E&PPAOfP=mHL2-bIS?&0^C&!aG{juJc%f1pBF;bE--M?|xd3!f04rFmv`VFNW z9R1wuIogF~6eGnXgJi3!f5hSk40Xf4WHpT7q}i_Bb=}kX_gBj}QkCJcy8bT~w)UE?e#@MFGEiA-9HcPNoEsv$qgu#|!ngHCAhX5g`FkhoUvoU{sE7yBIN;pX9T>i(jF^yXXK_5dlXH`;dBE z#e>rN5hU-;oJW8ghdABuy!P{7H#X;2WRt=Dg&TiSWQq zve&3Mkv~ddS}r~#PxvQD*XobjDP^T6eig<__aw-dGu~AJO{c8$XJvauPg6`==EcZS z8o|*bZO0e=fec*9nN5OS&o=eO}|hJi+g0* zn&AYJ=A@KhW@anlQFk&Lv}d-5^O1r6;ASyTvM+G*$>%1V{0eK;u%U)6FrUAB7AUcp z$#^VxFYT_>?c_PKB}-<^AvX=2gee&Qs*AuVB6{fLba75Przrz@*&YQ- zB4Bd6CI*U?QrfZBJk3qxzw}xuf$P_xZ!Ly_H~D_*)6s`}Ri=s8>S&@GES^zrHP*Yk zEk_aiwWgk~%6lQOmfc)NZ{j^U)SDYX8!1L*Z@`v+GimL7;=t^O|4sdoPsQ#jw|uj} zjoN0}icHDChz*oh=y}Dbw(2MCey>muQDj!-d?`wq#TWU@UO>-8-?ksQk8bSHD`Rf8 z&g@)~_w!r`Gl~*iwe}Gm9#`qN46Wu8{C=&^n}KZZcxe4z1@;BtRl>VuE%XA2RQH-c z6z`mWGilUiyh>Lez2G5|%kgdTEYLRULK?NWZ^4ZHLo{u_DTS}cm0u$sWfnSsVe1aYR-4eP zeKh#z$VEyyO!8ug#5;zsam-a*p^v*qXm8KKn zH%hIZ9SAZrwO2Ma|DTdH-zhDA)Rmq1v}!hiN#3o=+Im>M@#j$Pe_%B~Zq`2XO6F^hI(EU(l@Pbh+v%YiaA}z^mBZMo;)*; zv{-5VkBp!L9FAZW=yXx#5g~Z9LUq%$f64Zq9{b6!2g9%-GEhwVRm-CcFtwI@>u?n0 zz2Fp_d$-#>5vzWu{m(y_@Mu&e#}lcVnFJ+EQ}FIH6eKQLT-r$VZpUcZwP1RG)}WDD z$^i~-)!n&Zvj+oY(Q-@3Bdn#-95*WBe)oK{eoyr)K5-9=@@6CfR6pEz`uv3S3VX8B zlvO@L;y38$C+gKb%FgNPc=A|oFjm$YmkU!i93occMyTmFe$a7@Y62Z2U9{{@Vl;yD z-l&OaJ~&PZ`OGQBOZmf!URjZU8s7BVtn_?V`jDj7Ts(1m@L4Ri+kJQK!tuOsz66eX zSN)d<0XW^I6SRT|9+70j*c`6K+Ms%JrZA_Y#UIUAy5s=xmz#Ttz!iFoPqI?7!mDXB zxfaim!z)GB7*NDPhU3WxVU;QMx;}fyiTWu4U7cAUf zmTZIdFT7&KPIwB-^k|EJ!@xY6I;V?6&kAZj>7)s9>1yz>^`$L8359KOyy56j5~WrAE#Q7MCII}ki)y3#E_FNl(y zs){15$%k>ljbKZEf9yt0pqw<-oUgQt8$V1fc)Igexenquuwp8}Go%WXMzu;KK5`O~ z%Si{O3jMN&o}B_eZ=d*R;v;}WSE_6_)zM`K@dZC-U~$}htyx)#o!g&&vk%n5uFNbm zyus}0$an{h^C}ap2)tg+Q!nTt58(#@4s0QE68f_F)W`{cmKQB1$KZ>QmuInp(spM+ zIEmt;7JNSbUJ?&CH@+g`>Rw&>9*uAB31Kr<@=-H`hHC3ZCPh>*d=>UswPP@~<%&+e zf73R}aJ!$wanfjUH8Rr)QyDuJ6*UwcES$QCcEFn7MS+^Hfv%EOcR{e;x~z|1wnJ(M zdUL@tc!E=Z*w5vl3=-bsT+3@ULN?hq8Oa4$X#JlWkG?qy1x=9f5n@K6n1%MA=XO5+ z&{Ehd*z#IJsu2?7|8oo9uh7YG zPAdo#>a}JPDC7RP$Q^;QME(k^MBzM_`KKy>0J%H)#JNc5BFl4XCkcpfW!=`-qyZq= zX(97g*~8P&fIDG#e>Uit^S-;a-Pl|crlrkPGz?5(6Y~q_+SaZT05b|3RbNvJ)5hT> z^Yn&VB|xm%I*ynw@1Bzsvh2A~vncJAQ-;u0a`8H+ZWxd8IOWuLrzB63VYOpJMs^{8 z{XxG54b6S#Dt^VL{<34DIVDI~|IT`Y{X-e3(Eg;XT3fC!APKyG_*CZwy8Nv=CR$db zP>OJp&iF<1)Y7n1eX8bwE=$m~X&$;kke@q%5)q(uk!%*iH|nL=T}96j?M{+|G1OFF zEEn&Q>8$PWG+nSb3g;*b@g>>oFsKrLdC}04>B;s~${-N_TMOE!kv9BOiKE19DEbOa zCTvf%6WbT7QNH!eb&9U3yeUODRjEtN5c6HIH9>A6mRcLDE+AD`!L~RxlDd4}e9&;S zQaIEO`dgoqM)V0GPMh(PDwJSkEZobhXo`a1i98w{3gfG9Vb|E;M!7myq-S)0Y1@%B zJUEd6(cV=Ld908d9s$(-=bSOMl?U(M8a=fm-kF@H634{0_RpnILVPI#?5top@^GOh zkBmh&xe0I#WJ_V=mFmuV%x+_#Vphz|C>2DKDfGXd_eD3X6ZygRp;ulRD&lc{j?0w9 zA0hF=4?WJOplh3J6#yyb+U4Va@epJ~wdYVH7bM;GdtcfV37fJwJ=Bn=(ref?A+-=+ z!R4;nBPHu$RArx;h|^hMpf)h_`ZD4Z6)%`me58-qTn~%HdBggJBMRa~U#m1-o%=<0 z61X_Qeqb{WTu}Eeo)DeBX3`_|Oky9#lk; z=F>iLYw5*uwU!uQHvppQY<&}){WxEO+;njI&UL>u!`P4Q)o=z^-~Ytb#|Y~V8)YJ( zx3WRaOtrC?LtLAjDg5!`H1rVp41^ix8`bToKWDc?iuu0J+|CpVV%yu}yRMokL?QFST=GeFs*ib17G zI4^JUAxK3vtL)-Fa&zY3mod)VNLXpX#|h18#s)c&&TwRFCu)`=3imX)C6OT*g>RP0 z@$!Ppjia6=Y^b0wWIcf8R})aN{Fxgou4y-9)bwzt`2qEE7qobPr*eewkZz9x#Ki9f zKk_b({G;F{oMhO8Ii}2{Za#>pcrfVt+@GgH1n+eBm>kxUyKgmT;!of|H{j-=`cuh! zeq$~}fITqz&^MmTcOQ`q(g}Ur8F^j93HU;ik9NP8tMvTS*jD$KzWc&X-FN%p(-o{X zSCg$D_+h?+=lNED*S1Tn`8?i9}K+w{dwr9LXlyU zH0fj@F!OFBi3Z5>>FD%Ck3ZH%>56K}AWs#MmXyDuni`a_y1_P=2O!v)S`89vL9jM{ z$jc*2IwNCG_K91srq0jKF6rnUqcQv}&{EMJL2Ln%WcCz)a&XIyy#tFP%T;&4AU7>Y z%KRb!)MZJ327@&>Z@5Xvckl6|UDh^Cr|AcpBk}E2wJLA_jUDXgxpKLXui>`4&f`kj zwF(@<{ifS3OX*k}99jg6sDiYFQ|i3D*IB`=<^Jck^FfQpNW&{C^zwq9hW6WyM;s$w z#1MB*!`f4SmE-vyv`dB&nnywAUz#&H_j)f zBTuI=k5D!qOuw?iB)d9hO0GrJAj%1N8v1ansM3Y$uFPbDlc*c@9#>axJgA5bB|QfZ zUZf3m7C`cYriiBa#Th=dk0O{l`sa(kqAQJm9PLaq$8PnJ%@9WoihgkhNw@zaOw zTF?wm2U`%_ND7tZG1CORHR(|Irwb!RNrYVKNY`)8T^AE-nZ@BLD5%@MTVV! zkC#RZA=LXmJh%@kq(7w6TC(@qH_5cH&T`$i$|GbKqEQ#bBZtMRuIA%qe0gjdJhs2j{1VWlhxwYR)hD`M{7eD-c&`DG-tcPT0# zipu`^g~XuGxt7_~EGjC( z(ofq8?ZLQBVOUXRD?Rx2ku!AqySWcS@c_}kreRxV(;`X0)} zKkQ#sy>_=cH=rteIik4Y*DJn%0kVf)g@Caf7zp&0i&qFHY@F7+u+<&5_U`Q@LTyh= zK1okC&tGhIrY$q`dolgBs^*yIf`eGzMlrBTiwVvJF>9I_z_v@lMalHw|GIA$9*31M z0v6V9I|%x|dbT>P*(&ErbDp@lQni!k{h|5|^DU+QK7feLdDAjY^g@?HuN(yW- z>7p3FUf>nVrT!z{k#Hm8ZRB0r7m>qaNVUIrewk!rd8v6WzKey54JA^NZvq#m4;=_{X%vf`cB6hh(ch?)WOaWm;t4 zLTw~yC+bW3>3DT1e*o6_8k;MfOCb!`tg2moe|->QPA1JQ(C@7JFVM^+^}8Iw;h6=8 z($B-a(TbMF%5C8+>{-)l0x4Akn;aflMkh1M_IKeX%KZ( zqaTeu8@zY&_jM;yUwoySwG|g*$3p=;ZpX#o?64ql`hxADBEU?-tudbbTi_QMi*!+I z6631Oy(B;#sFY-X#Zd+Zl~(Nyr1j}WhAS`-5^v};*O~$gnnw6pyTwRI+nPyQpex(` zv=T~TmPWBkCA&bih{!yVxse>bZ;esW5K~r&Vr)D>pUXRVnQ}h%!grpn_mOow&6GaO z(nCTzC~#HwJp-~y9*fIYfVHqbL^}`^^7gIjVHbqQf5K^h+*`Y!O|+2T0qpcB5yGuq zfW446zQ7i=_L6}oygOHKSc=Frnaz=Ld7rr=aaZFkX+x|g;j~wBMJ;|zmiBBk*-VJh z2D82VE>c9w{()b{4wXluAYPNWd8Vcb{hI?GtF*!*?Sg0tvNGWr0DFS+f+m5~TqA{( z-Ba%h1Ma_(CoEwliDJ0GPc|= zvgG8YMdu9mzz5P`8;REGN z>Ch$IhV_(LSP;jaxQ=q!xK2xvwz=!u;WC5v;Q=>P1rUeGmn@IyBf4ei|J%-*r#)eq|Q|KCZluo?=Qe zX6SZ*zOS1%WZOT)$WUel3Hl#oPvy7D;c7MVi7Wy%6KZJo3s0#^MMI1D{|0o!NIxf- ziWq;Y7Wa*{2+|Tu_Scr9>xJf+6Rlc%4w3)cY$S+@+{uLtQxNg2xOmzk8}eg7XHZPj zeY9&pljW|}49&YBxug$r5xQO;l2MBdr1kfIL0mdRRQSAnfiVgTnc;bDm~Yg7U(0L1 zb43jcJAw7Q0^@on24Fv2D$zOo`^|#yN`}WY$T~zSh=i?iv|#Ru?K9j#H;z~dqAi97 zZU<&fwcz-BfMEx=`T3^$L08%rouQW^rh&Sx4_><|jmoOwI{m?mR=NJhu46JxA{k+S zTzR6SL0TYNoNUzPecNj+8HMZ8mAO)F)f`^Smimun~vXzqD9UJz@l9leq-7#n+i zDJ?o#S91Xpgzd{79}vWLY^^tS6@WAq_CQnp>57b;COn%`qI8TM0!M*%a>x>+~ zhyxbD^jgr35!^4-h-f=xBNnBtYw%y7NN;l{^&*Vd4?9N54JzC9^qoYMsW5?m+3jFE zH-iw3&h@JHcV%QbwPNTR;4cKQvq8r!4XZ3HJa*WdMdGH|Zp*^cJniikVHg2HDgi*% zKfZF)SHk31RsJHH&;jd$h|l0yoWk*)LD1)UOVoe>rd=3tTJ1-|D zI1A!-y8T^X)uA=BhNpYwBGmt29?O-v_(RiG^K8DlB+>pwUQZ&OUAYvMSRx@}`z$wP8nAd>YKDLhXY-ZF80fw-*<3PY|wtr!wrBUj;9P0$-v+q z0tK7E-CYt^r!gqxXL5d-B^@6TPDe|_ZgjON(m|Y?CKsWP-HH`|Q5N!hk?4(mQo^AB zu53r4OuWzTGMCVhY6%gFSw^+q?j^#bW34GqG^`SRRm}C#8V?ANK-#}4`-xS7>YGGx z*0KLGljxS>WU3Xt*7k&&FNyBwuqVyW9SVJOg4mrXrjyQq*Wn=j<$Ta;p^a(GGn^LE zc9D@OfN*k|kP1hC^H>@bp-IMYctIZ_m@O1)3)9l;%g(355fZslJ6VZ;I5cRXRNW*K zlNSfdG;irF%lqTkhoF&z9jS}(dWH^L&l&rQn5(PLqbW*`=SsF`{l)*H#BJ}MwccWe zi0h;mD?8-`BOsaney+J_FQkTfbay1nt2OQ$T3%BUuVE#BcHKuYV8(GP=OD|1hu09M zc?B^s3GCG_?v}G8CnK&ogWLL=Cx^WI`rR{z3lDb?b>lolB$nKzCNVB#DXAdQz9ge~_*`A}Q2J*)c?YHNAZ7%gEbzQ2Eu!77q9%9emQ zYs=@Gt-HQ|@HG3?-}<#@G(qeH|4j){I$y#;&y&Ho|9OD>wE4;*!$Jofx%6}LDt^w` z7Ueoz=FpiptGc@j!@vKs%9s(kGv-*2K`sI3P{sh=-i`m#etXmP@&HwEfC|6&ao%~a z4%EC@5;Ch+(&!?M;n%2gK(~#KVO^_{{}Kt<0GpkE?ay~UF%>ul#y|Qm2SfjAz zSuhfTd&essi7L2c7qTdSuT>EX!^r*OeoxG7!+q-qM(1RfFuFnF0&$=7RYT`#>&+g0 z-oGb*P7WvMjGoD?3QU6fGLmI+RhGCUjP$y_P**4|$IW2HjOI|(1VGBF55-XI?NaIP zCMZ&H)+CleFH9aoLV@%fN@UAXHH(M@nSjHmBuqqns)=TXhDpFeW-O*~U;LR6Z?hb6 zB3BC#pGsYR1~IaBj0&;aP&3e|5rb#wcACt8k^_ajBg@+IKzVvC&8XZ^kE9IZFUPzA zx;?Kh%t*5YD9b?LBAQlsB<7pHvn$uLG&0f(<35W@T(8}PL^48cIvnSaJ(GBXl)lKJ zHl=7SSI`YAxv)sMTBO{Qu=i!IZ+)0X^fh(;)_R0f_i*bV=L9cFeP}tXZcp734nOz< z?{{yL;r$Z>V(;GXFXP_@M#-Q5hL&q2J*E6&E-f z0fis|x)6*5+yz$=3ULM)qM!&k#^*m$@XI@3Fs`y9B3@ozK!}Sw5QVmXR}>Hecp)$j zfctQFINB2q1N<5opa*e*|CtO(#se^NK)Cdw?Cn84kDy z)&XL?F+u8AqZ!PEzaS0=MVr`#Q*@o4fuCFcPJX+ig5?JBbFg28m3ml1YC;Qc(Isy%c;;!9C})c?BRRAm3??BN)IBP&P-5(jZd^Exv zU;)BmPZR+9_51hfAr4+J6w=w}ANSw;711{~)6)YB{+amSHdR%WH^2{9Q&>zA1P~RI z5Cur%4gvp}MIVBH_}c~OpHMBN9SR@{`qM4$n*PU{$1Ni>| zxg|&v1jT(s|G%OBJLLa{@LyT}Um*YQhQJ=q&cDt4zwQ5r8RCL)_WA381FZ)JM*v+E zjt0p8b~T0nA+0VPhVXFtZ>tstf+Kyhs!@Eh&zsKnBQysCBt!a`p-TzkWdut z7w^O*r2r5#8sbBSTRl#a#32DkP#E0%H?jdDKqLx-3jyF}4glDp&}6^XEQ&*#2>h4s zuP6x+LHr|s;t(N%{4M@RRj3CVjce;SSa2=J>Pb^SG|63o8WkcY~jueN(8 z$%~h^6fCVB)~eV3x~4Q+hn`i&WPABOrrCDDXjSr%kuPuAB`#zo+A<`%Ual?1ah;a?gwRtq;UgDXxB}a~sVgw;0me$L2;FkLTQvOAfld?!PdqoL-WzzT zXmA)di}o|ksQK}xe)?KD_jVxEaxRKjgiPhmo9C)_BoFV2mX|4;Boz$KE~7*-vct?( zZ8qw)XP;yCc&Nfw@j{>j2M;X^IgTHH**k1i)4|9D&hC8>8WJyHHApGj`~jwjh_jY| zj(xRINb#H;kgkz>sS1%#{lwUK%HJF@6z%@7+m98aBd`D{`nLN1B5~rQE+33#ep{hX zHU{WL&K+hY@S2}0%{N?tPViMSVH}CpNIeBt<`q)|WwAFYESmVr%yam2;`_FL&ih_n z+LK%TFE4U(M0g=>RlbCuZnVb4bU5axzWNa+oaiYKlMKM!YSvbVUb$%2hh*wLzy6a( zaVF&Ii)kQ{%G3VXjh^0D$c{LrU2xm?3*iV3*$tRwKw0$2K()k+U755y>RhZGQ&CE> z@x-JtwMj8gr-qoTv{^fIB#r}rk90?vb|?1S)fMJa6Q3KxkNK<>QgMwo#hS~7(eJ$x z;1;G43-FPXVd&X*?YVL#CQI5Y>RG3NFYA~ErJyKv7kByF>-Y+4EsugbY+3Kh>BG|s z1E{RfL3cia7!uEj@`iy8!WCLXHX}>51G6XYQhLb^Ych8*!O*!9d|JAH^mCb*FJeCO zZg1;X!xZX|kygigeJFR`o=;KS^Y09j6AYSe-j*$nwm$Xjpv{yE8sdC*gD@AfJ1%Ct zTtoL#L}ioA;WFG?-%ID2??&{K&YwNp=_B{PoG%e5TLlZx&{S^|xrv$7o*vSTK^?t9 zhj$Bt@%7EklqC0}iEe&>iMVJr>=U`@@J?L!LK|cq6P1J_7Fqf)@i%h?;9ri<&<293 z&bMhZ*YO_K3QE}vjf&iPo1e*f-L4I=tkrOyKN6p4c_#Xemgi0)xe=ZRDlg*4{Hj%? zI|p->C;Ej@^yUW5!*@)WVMu#PwrwbNuDp&#ikk{edmoF2>}J(}^*Zwp6!4e;7I}g< zF)wHP#vjFia}KZ#gU?L{X_H(-z(TCLcX>vM35L|XN;4d6i98rjnmdFx8J18h16FPO z#bK0-mL~OLd;B~;IxMAnTGBbb-EeWFoXCpE;Yv~1m3OWGCNCB^kmXW zY;8(CE4R1Pzhr2CZ94j4kfoleBip&BO?E0!XCyRM;%2gajXivcONOC;$~z}ZI@QPV`_Rm-z81p0 zsd$1FJdn~DD*AhRC{GT3RJdY!$(0F?44t40=AC91kH_^;u{96s8RMT@OwXL|?oWXh z>Po!BQ-`jxw|vT=^&KgvC;&mcoZ>B6ggpg)4=ue<~71}3qIJJmcv1N zmdxY2u-w{$T@D8>lf_q-S>i6AEZp=KDCMOLo#VQmZ*>P9|6MPf4n91re*pBvc zT69fwmwEYYN=*lBcof$2YW2izz_7cRs*@|e3SCTTPjthNE1TUe-?nM(1Jk>bM`qFL zS}8n#m9jQ$E{k1gU6C2BMaPkTLQ2%@*uK`NhS~<62`4MDZeKn|FrR#o8uY z7kMu@tG_ld3G`f8z)OT5nM~BZ+AQH#dcVYt>g1v`*-^9qZpajOFJ1G{!N8x1`9}iL z{TI)qJ!p5=J)$Y964iU%wuQZ;}882^ey5EOj@0Tv0Q$+;Eh!p@KYXxf9V?z4-A~&kMqIhq*SN zA))xz`v)|i8$K^#Sxf9;lZmvk%tjyNrdm|G{2rDAGqetmMn0FB*4_&evlMbUk^X~4_JF1qt`;N(uX-|`sOLrUoD5b3BK_&U7 z>O?1<)7XQ-O44MfJS8WuFDdBhsGc6;DcTF(qr;6_`i2x%QW+pgUNV-Os z$Y2BCj}zJ$u6P>k-Kd6tX5yfQt&{41QTCLK7}c;P?>)02uAlQLge@Yl?Au(|&96-6 zAC2cm@?~ffn4LulfW}P9Yz#hLEyw7)_C%h~Co4NU40_CT0}Am$bdR;K_~WsED9eor z6>7B3(J_LGeb3r^h_44~)rcqU+31ivdeee?J(@R-%Vlj6)>>qL2VR-Ys`;0@Is;S# zf!i$2i+-08THkfpGN($VmeRBUNuyF&U zH9s~b_;hhW=0qw8>Lc{QB>M3;s1fGfu+e72uJ>^@K{a3}Y#nHvCW!XF&FBqah}N{m z{-8nSsXdSw+1;Xlrfkny_V{4XbNEtQgVwz(sWysz39OlmF$*3U7rZ@LkVp08$yRyF zn_7uC48&EH!8A#w%(AHY+zyQ zrYu(2w-{DjI1Jkn0Y7#IA_;*Su<{Dq6XuFnCcTlwtDT&G5@j<$7wZo`AA-8;=+0#q zx*LsZ;t~1cbRjf}DdMum5r*m9pRNI){GijFm1)?s*5P6!4*w{5IZqL*^GS`>(sDG&0P6}$Blp5 zYTCT6%i|KaPNJp2iYyv=e=r*12^A`e&|5|`KDs(UHURYO&TS@AJ{vkt(PJ@IAYAtjsNj zQK340*Xh4W#(^;u3GTt36X=2^(+*AF={} z^}^XDF_`dkgU<_Jh_>8hyvuopO+_Qe7s@hDp~~d*w!< zc>bPP#m8}U@;NC6T;KMAL+Dpeu+GkZfKImWO+WR>hO(~;KRHikYgW~6JfW%ZYnQyX z9wmc3tNTnEaoh4Z^%G@Kk?(Y z*L>v()L3@8Hg*_zIwB|>^`3=|Iy9kU6Qra*m1tHBv02j-GqOv?ybmTCa9{Yz#p!mt zj#smx0zduY$HbM^-u_OV7VNrg@N$Mz6rk;vi3973VfNkKncgJvyx_AlrWpA4s3@dbrSc*YgPqPn`BiUP-vI@5sk$WY1Vo zysGQa)E@?;2wx$qFqpcZGtPCt;9M(5==3Mpte-Eh5G+UjW}mD}>dUu(B)iz!WqW5I zxyHEe#b_<1fe3ot2=^Gw91wa)EhsHsB8iux`bv>gCdO+7JZ#TI2q#{g*i_(ILanAClx zYQB>x<+(Ka2gD!OGL4m{~l_XUs#gin``xo(o;+aYZThv%>@` zV9n31Zz+uN1#4w25Kx{6m}N|F{M=?qnnr$#l7)7Zm!40dYyPKyNYvxjn*{gEByHB2 z9Dgbdf8-rA32HrTDnGUJIIac7m9;v-385(ua_P%XpL7Va6zA)}9go`QO4!jO!8#iR zbBv8(4I7gNPQj=5ZW%RTIS6bg3RJ^PG_!gK>bg4lF(*<_TJxrtnc4)+d;s?ChJEr1rb7O)hI^QcWEuhz=WdS(_VA zQ$0nx>Rr!jm!9(wQ4bKmn(LUn7fWT7Y5}$+^<<1q)RN@!?9N)c&Lp^Z90JXWKQBy| zyi5={d$W2vJLW})?977+#r|P`=@ZR|ZOf+>K$ng4NHG<= z=>YiBnr0W(^(DKI&;A_MKR>O@$!ltJ1a8jM8-jS=xs^k%f8^Y<+fs%e4f~dQvv)MJ zeAuYb*%(P$*!mPah-hvmVGtqTW_}1Grati|dUTuLUpS$dhp;qle%LdQ98^V8omNm* zP8s866YE%iW;y|isA;4uhz~m#&I#GH;?Oz`Sc;PsTdBuJ=NTOUV@NSGa@-$2kK5L~ zdFe#?!XvnLnn@QM9u>TbS})DG@(fx@pVQ<%0A8xsTDne~;~T^SmCrY7VsU@fGOc=8 zW{u6B&H${v(C%T3WW061+QJU~?m|7opU-MGG_&o0Xj1Dl@ar`aI`b}3!VU{iTYC>` zqxPKT8ON|XzAKLtJoJgO-G#u*Aze~+CLY6gKgZ|WVj;}A5*}pQCcc#;h-5<>X!2P0 z;R6}uv_i(|GbYTON
    aMl`!T+pya-8_b9ZUX#m=?FL+_QfKx;QR^fD2`WES9WUKtR&za5U$(E5`x*KalV>Rxq}`l4WZn5fPihKwxV(%PH=FnwiKk8 zHuSQXuGWhBF(o_%Xuj&+^bnKojN_1ikq)W;o@HorM7L)c^@&_|jXkG+6Nu$#NK{?0 zvxG%|>uJm8)djP!mLW9poZ@dJVH}aRp02aZ_1((M>MV3io?gfvXfDSzQAhiBou2t3&^tS zG&ppeeW9ZA(seo0rCf&x|{RK4z}{mERHH>NpX2cg*DThWLL&6P(i#b-v$Q$#)=-S=QqzKuw;^W}{H~{2 zNc9Ph!>ZU1%q16rNqB%XA>MTgA63eAPDw|5-*pe@2PlfBJe|i3`ySUZ5w<2CliEyG zE1VoYr4b(VA8kr6;h3L0{~54o9WsyS$^2`?wDY`>9uGCVVeopoz0LH_RajZqck8+t zXCV{Idfl*a{OOKI6Xk+23r4s`-A!yY7OSNa4dT2Ubg$HwvUSy~?_m0M+$HfZ@QKMV+B@ak z#~6g~TWw#P{gs4FqMB+c`m6tqcqWkOdyJaFDgbs2+xFECNpHp)cw@ zQcg1%)r{I3jX=F=|9EU%uEdbr#PFDneji}j6s>c8M|M|-+$IA!*ZycW7Elzdq`ad)8##sqZ(8N zX)6g2kxBVWDJG?|(wHozjbj_yQ}&e>RHDXiu5!+amQtMV=^{4;IFq(tra6*ah=_Z@ zwVh-fa~`K2YutZrKX+|^>1@gCO;2tH4EBHMvjy$_WMNuFZfRR@n=A2=GL9)#;gZzb z1_ktj-Vyx zBHIAd!h#YU9zjeFhZaRF6Hoy3h=Vb#j5rhR6SXk>!LCT#GCeOpDg(Go&;A#zi2 z;r@E=lTbug)A*C4DDo(Z(D-LA$?8L)oR&`#3<1ZFT{3y%&v26$tSA?IUeu>w3~0HOh`03E>Kb0qI@C?-$o4Mn1s+ z_>h~>^9%5~R1xxK5m5c?%J75=yk$_yd4VCoVH_Oa9NkK)x6eDEm($Xs0SicDNbMO& zkUL5EJqCn6K;&tU%MO(~vX4`RGB)h<>e?of%~y=elMC!03eE@?Z)nv6bqMI|*(smt zER~^3ewq2SX^mF=Odm^B{4Ad7o(`c!fg1XN*!TIm5f&23!4zK^2dg>o=s|b&{H^mF zpBTma+NqDo08+iAdq?^mkrD^m*UcJg3Jx=QGzIVH0)MJSv^`^%z3hn$Gms={jGqWu zg8(@Mx)jM%C}eQND5Am$MGyc5l`w91*C$$1Vk~y%#KeafS%88aisVQLgNTL9hvgKh zN`{!o+1N5l1S0#|FdVv{h#`650cWT&41OZCi`Ox=kc9oTA~(G(xtp6Ir>U^tTkz&y zR?&Hh;0^05%)$tb-Eq+CMR=d=??v&spw_XXzcUZ4bZC9Xvg6|uOBX<|-A=u7=xjGx z2?MLs!b@?MO%G!1KKq$1TbYPJUCV}JTYY2smEtnc|MBkQ;u!;UOHMELIgCfS@F$;j z+ftcoL@L!RctwMsuxjkq&~;u(U<6N6+Ox zk@w8d-hNn`@MX!Oq_y~C747^kY1Px&w34cnWu(?@T6OSq?$ghqlKq->vo*WK!x+51 zjfw=DooB9*vF~=Yp1=8}Y;VPHkLbFd92|~My)@gjpnR~$tUgWcbPq;T#C^Y*q6wXx zvfLP`&HhF#@CiUq>E<;N3rl~uSQSgsM2jDBiTi_lU(u|&xPvTTEqT>@lMVF}D@iL( zyh#)9*mZG&0&Dd?rtuF>k_LkXR=syvTBDQFRLp*F!;YR%oDH5q2x!gxgr84=Vs=tS z{IZc^P=s3j#+*uJkWI_qmI2E9rA&cs`$SL#EziaN@8Z;mm3MZ|ORn(e^Ov8hMY?-@ z*^;4?XKyS8z#KwZoQkY(WXHNDF6ZDxs$}JjnpLg~ztVa0UCqwChfBSj*c{)@q_-Sc zOh2-8SDFDaj?rH`kj(>D8!KQ|Rf<=6f1BSAlqWmtT-s7ac;G!M8JcL#prtNGwyXL$ zE8P}YN@laob#9w6z$+vIHU0N`Sm$jOj~xLm10|W&=a-E;uIT-yR#uG+{GY19s!=Q~ zdDP~5-@oUgEfv|jkzKM<7v3^|id_w-^B}Ebu4sVw$7QG~r`Na}q?nx0Rv_m&uig=Y z(EFLC(ZZb8Iz8nPgc}c`@p*;RHcl;vE^h1R>mNvs5|7N|yM3(21##LX0On@(+hf2K zXR=$kp?jYdeC49F9R820(_P0nYViEs<2b{luz5KhZ8YiVThA)HhVGT&lGRIh8;XN1 z{TRS`?74#Tu*$4@L!E5#EW+G5dnDJq`RA!=Z~7D(zoM#?jL7xGIsr{d##8UHld787 zxa?)K&4bDEWjjq&nuC9L<+*N6*M-FPY}R%p&zGgk7M|j)7iGSy<4mBcSysC8%xdSy zUV>{(!#+=SNlr8tI-5(e>SFzb@DVFCuQ9+RgZlztWE)VSM=wL^iTcb^$ZaRTgTR$Z zM$pN8{c=-MK#hGcvk*Pn?(eY(3nM${bbJIihIYSA&P8k0*;>PSefqtS`>4y*>_kAa zf9uo14bN)IHmq+{r}8M)tYOQl_uT6#FRSGu!sm2#ZM%Y>7X12qsXWe(^Ya5oF9u+H zrg9vtp-5)&qZDn+%Q7LJx%;2wA`k|Sc;63{WY1B|hUV8HOe+vD76uO1 z{xBOrz&7kv`RR0lum!VOTWmmpWd0xa6_zz}x_l@aqVb(Xp zZ2T8vSj0q2w%En2ZARJt55}47dkXcx?Qr-0i_J2?{EP86S07+D{o{`_S&(g)Z}lIwq|%ZEQo)hSw(Qv=15#DZ%|NHM&{(&CeWXVj10{Gv-%_CVE+C(J3%M` zmpWDsxa{_yQ+kX9@ojfgJ9s5+Qj4Q?*B9zx({;4n3H%kKjSY;VOr(eP_viOKa6cec z4(GI`lBJa>%}ji;I#_%l-cGIc|17Y`_}h)auem~O=*#N&AZ%$s^daUO5WX@1&-)oJYYEMaLZ&iyUsr z`ZIf;W@2mGrV;VFR;J1z2)3RMfT5!PuqQGKLL{Gz!OL^DhH{sHsbmHgB{zJX3MK;Y zf55i_#`EnB&>z?=5zNSABLlY((k0`lWu>|~z zB)1{$y&Tlq0H4W-L(R`F_|SacjVL_h9`rSN#ywh?=L2=C-jX##TR91Mzo{5T!Qf|_ zNdu^cXk7Eb<sAA_xRPJ3@p+B8kjtX2_dGlDN3ChwitO>5NeI^n*AIYzlC%Mc+Fh*z)z zBKb6dVkT_pxVarlrQ-OX#rA6_Mk7+bhvd>tM9OCe5>upt*8yrNkto30z%WV)vxd)w zsKxR8pSMOIcg^LK4Bnn@06Pz+F4y<{N|D!@jEL!Fn-{tl6v-P)FOSZ@PA}e?vOD(t zw$NsM{0A!XS=z*tIY9_DMKSYzKJ0py)^yvt+1A!U{GWE1{M}tVUbU^Fb+`A$1PJ@& zHcQoP@<9YafL9FEy3VfFzc-I>?lq@IAC@}ADJkUpi4KpgQq&QXD#CPC zARLsHD%j}QPU?0|!Kw?$Y-EE7lR1-C{8-u6fHyOT&Q|>|Z=3lRFHX`bl~J z=Y4FMo$nf)z7{!k0NVZ?SSxb!02vN?rk#$p`u@-L4m(eYrN_zskzjk_-|7Kw`+H@{ zEMs@M8|ndf9f1TKLYA1&!zHIYainYN6ZN>Dy&;91KVkb-473T6R9Ve27g@(Xvt=Uf z&*YlK3MtsdDS4UXk14=cP|Xwi?7~>7$cnMieruL05i6-01B9X(qy2}~&FN67D@xSu zY743fuPX*O<$A#kV=?yg z)vm4xDln*3uc9{I@UN^=731GNI^ej?Bn8qq1|)agY<;!6pT{_L{>i3AIiU>ZtV{K4LXDN#|?Z(=J!FGeaQAELe!x8B0c7?5hW|zsqH|d zfucW7egIi+-SO`)WLRtyCPM|uaxXi!d z{F4a%JO5^VfKBT>Fdi-2V~Y2VYPLC|umJ1=oerSbhZSF;3Gayxx1RW(N{zC1E?ND+ z;wqTz^1i!4G6kJI#+#gY?M50ok=;I&erVd2q^``hZ#Ku&il)KMQc=sGR%HU+Si0t` zzEaX*G2%hv-(+d-pETHYitoIMDyeLplsrgTA8yz$gpbTV3A)&T5|6YdkLULxbC)z1 zX$pWpy;15K-wX|G_!T`)jo!)P$iCp{i~36}ADTU%T)v%gQ5wsbLOYwQm?5;h2x*E6 zbgqLogLKzZ&sFHB{OMl;{0N6l{3&pzY7Q6p>s{?LdmpPA4SZNfCrjU|CAb+lGlY{N zGlG*La6^F%PA8xYgVyGz4e$yBx1b2yzGuJ>dvJwo$LYg{M0-@;>#RP{KyI`q6 zP`}DcgKEM2O&6&O=X^eJ$15I)(Hl;rf3(ApPYl|>jn}wft4f@2lE8_zY1>sMvghm)r+{RccYPdVORagYZ_rv9ssslKS z;@$%W)@Gt2MT5EC#H12KRxI32e+h-g35NF^Jc%kWD-lf^x5)HxKq+^ozD*D|e!jlQ zpj7TeL$S7^ce*V2kKFGn-@V?zR*2!Zz6v-_#*N8GPIIZ>Re~~rZ?dq&U;z+{Y6wVW z64&h8;3Kd6uERAGHgDh%sNo#)G%1Q;o=i=x6DXUM(I7N7DWZ{}WHuI*NoxW9|rh|aZW7k?eb z{t`1SzvHmewmfrGXLsVN0BEUb#vQvSF40oahT1mG+h(4#XdiRKEeFc=JB3S88x_dy zJ}MXAxGz$6=(@mESF2F|o|Q^W;qWY!n&|0LDwGVWRxyj)-KSZ`ry98Is+CezPF%y- zQ7Eo0xcf3JY-Z|0+m2AZ#hdJUX>tj%Q5$S7{P_&j>*GEnIYdt#1wfYeUKoB#;j9}5 za$`wEebDygIe-o(jLtUgnKSjy0+-EpE5@iFBTZrvM5!_e^RRSuCZmC^gbdjwdM^D0 z0TCDS8#16M$_D}ycCrVj2m((iYxe=OE19XlK%*YabO?BYlp07xhw{r+bh^6yQm-NU0fa87eb??%b;j^jW9b9@->A3CsZgaG@F408{=t<)_I-C?R%_{5J-ata9NKaRwBa8lxA1R|a;%j+p3@ zcpCf!7mT~4wFq?tG%Tru?#h>-2ZBa#YYQ~kmTZhlyM+9N7x3c0V1Fq{s9grm*Rt`$ z#a0kUlR{D=GsNnPh%kixUj0BAE5-zxh=XEsPgpxpvRR$H2z_&4CI?6FkbX9@`c5rj zo60WK+B30bkEH@R`D94VSDI(PyaR0l`Pe0Ejx80vmvo&t$efr!&uUSGuPd!A)YG$3MZC0g zP*As#W277%^3~iwx`2#Fw}sgz^o7(G3k};6T-4`Ptq4 zdn|OBsEqD8I-{GF=DprA00A^4A43l)qUGr|C}iJ6 zC@d}%GdG(pA!-pRu5Hv1a7d@^NTTTgRm^pQ)aw3FXeDK=gX@@k=US)g=rv$ajEy|= z>s4T06n${33YT`cfqh2v`1Gou<;IN69L+}}=hB(%VwcdAcaZJKkj|K@b--H?_L?*( zN!z@txZwON*Yh-5rXlZx{`pX_sKYITpdq?Z)m@ zds(g0H>put@gUIptry8myj5=Zv!-#8gJiE0+f<}OZ9gL9**pWuSNB`jS8gXJ;>tP| z0#!YPg|ti5NbK1}6t4fYs6gn)S@w%Td=uvA4_7a)6?sbjIheykrhZf|$^@gcA19p& zB63QRoE-V$=xG5rfHPBuyg2^yz|lT4L#``+zV!a$eZlR?>x}39_dlOi8v#zdq`weS zEej3yTr}@+4L7A0hmI*9vG!|$;w6^~%0xx|+r5fNM;fysr*7sA2JVa}p4WBV9*0+p zi}(1L?x6D<~dGv)!c!F*c-JpHL4ylH7-u>tA-r20WKxJ+7LK%CE zWC2wIGD!NI&`0SUzW5iuE6M{1up2MlJP0{2f_y?;KJjnD^-UZtJ`vhjzaTf$zJyf|DKLZ=4_Y(>%0@=ncFTqp>4M6J6xYD# zrP}p1%`jxhFa1snbQm%lV2k3NdmZQK04Z{7fuh0ruCU?o;YHKB`m)qp zevOr`uuF~Kz;;-3O$#x_R^MJ2;%!q4u}BAP6%>+9IJMBg`u`1CGuj4kuU4X@u|IEX z(SISW;wzMFTzPXXH`fEq*fq8UW3OF)E`E;~t26z%oqu5u7;!=3nuJfy$XmUgyDA&i z;w@;3Y3YYr(R>oMtyYWa)G}TU*uy7Cra6zz6q38*OZI<-BmI7c&!Oo>d6q0Nq1XgI zsO)DWpK*U$IVX-UaVdJn#cC+lH}_%;s-)NwUOUnUm&EWp*mZt2RbFl$Z`rtONA7PmPa zm)8xi=SlA5qpJ?D(+%559$Iu?uUq+nsO=la?S17kBr{E4<)VwHvOn)rVX=g{-nH#40)S168R#m`ueVY*HY1jRb7&m%~4tCdtV?^dcsa zt;;QmAc|szH)&eP-k!L@G`%-z zX(x#Jl5V7>q^{cx?-a~H=qpOQhd?(vV^M!PZhE$|E$MZ1#cy)jG0z+ zGc_siN=91IrKqrkdtPZF(~RR5PsY|EOmjiwgg6%`35dtJA*Kvft{WZ?!{% z86~d)Nd-RN2s!1pF-b)xHfe#CWsJgx1L$DOHAI-59Vjq^IRM`$Wm;vFGwlu3b0YJ{ zWT$29W3Zf$XtTjCQqB7DWVyhQ^VWAFb!X`YUH64gqR56xS6C4(n14swhYq)+#p6~D zzIZ+2rbuqbShO^WltsvqlNatrz15}#$gg)DX3Q5`w>_i9Xz5Ilus5q_k6|#_4Y!&?%V&ul zft`BGszrn?J8neyNi!C1^yZ_D9NcX=xW3RT*7QO1ju__kMQ5TGvWBTbb;ih@ByhtK zEU-oWKy_Js5y)Cio)Aa_r&2@&k!7jZ6HQ72opxo`Hh^=mSVa*>?DQfkIr3`ryL|q2 zVe$WS$Y*-~P$nnvKRYm-$rSjp`7;EwO%{>SF`dxhgiUZDOsMfk9IrEZN%*@GO?Lc< zQboXXVaopMUth@T?e28aNlZ5+LoP|4;5Q=$|p1$hOU$+dTFfdU@l;yveuu_DF^io5EnDNyN?HIFv zw7%=z@eBad72<}6zQZIz?G&l;;3!EZvo~eXNGig+OUS&22A4{Q@p--8#$Mrv*bK&t zZM-Syk_tD6Gx>63JCJT0?f`x+e1XCz8a~r}T-%lntZ=CsoD~RLW>PUW$t7ZH6-&)k zMx{HJ@BiF9YZ-0evMzJo8Wk6GBvDloy>~1tfH^AtDhfONCTE7Wb9uiUB1@gh1{S`( zn18!yluJy}ES8eFObts}>kOzp%O_4R zI_-|V1T8bpK>60hB;}X*1uU(9nFK9KCv#n;%(P^c;v=%fQn&w)==iPO{MNdd>&|@} z|5qd^KT37IkmKj}1d2O>0Cd!9H3pM4Xc^^u0)UE>BkzbZ@K!1G21*GYQ(C5Jx5MKz zhsm)y3tD^Or4pPE;W>@Q*x5vgB_a4!tQZKbs3;?}Mkz729O9k|7dBCyK4?v+p0yo4 zn$wPdI$-AEF`@XeWmDXkvEKGW)GgD^@k}U#mXR{2X(79IXhqQ|B|mK3O_Q8Dq$yP- z02KOk*?tmM9BJAY+RKlew~-4#tfB55(@jpV>Bc!930;zEVWu&-;HI%jp2mErM>!-+ z#pY6Kq$86_;*s%3tG=_blLe3KoLNHFo4&?i!5th0NnMUBKz?=^%Ao@Q^pY zzC5f$UMq&Zrh>P*cLl>KpNIC99@tej0v7Bw)@1Eo0X6Bq>_;;bxvBmu>hvWlu{;}y ze;{yuoFj2S%H00E#AIjHc~J3mBR26I`0OranB`AstH^~-lx2k>R=kn3=M|NW0#I%X zMg0pHD&2YA=u|tiwgaVANs8skRLPR~5>=ekNg7s$`s2zVEY$TH;cdTE?JrliRoHcB z*kaGRVBPhU7GDpU<-0_SO3yw-ip)4Kr8Scxo95_EdP|+lT4Ft_i^19LflIuxhmCD- z=WnE~!?T0*JnADKK^Yr&R0gp50dNM9*$}l$^6^QLf)~lg%#{z)<{vC(tD4k*^U~@$ z&2D!`FdI!Hl`Yw?i&m_+WNSA&(hb_(*aw~Ot-~&lHdP+Mvlb*(^$7js&@ASIJHYBjNPt|h_K_7_ycE>cymftrjjOdqW2e}ho~$bd77PZwifD+Al#}oa?4K*t}*H! zpoyg+vJiH5X)dtDS_Mo*HlLW# z90v_pak&I4iV_V z$As(8x5H$;&X@k+=`7FupB)@}-G1mZR6hxPX8C45!T^zXJi&sEhw|*j>ET-5Nl;_` zZ)f!Bm*vYLVt)uKg0A@#JYPpI-#k6uio?~8(}4%OTQ)mh)5K2VZ`0#OHPg`$&Dpv#hJ-x4T|XJ@3z5*}AakhthAIJ-nN+z8oCBTN|WKMK@F6 zjT`V3?E>_?o)7k?b*1|EeVvQvtgSZQ&DgCHA=kXvvZ67(JYa@-YIvu+{$BJ?^NV@# zadE_?VgDq{snefAe3&C{gGh#um38=F!TS>hCuiwjAvwTyvE^RGAvsb}DmBv9lpJx0NqewOVG+--hYsyKxdb+9j+~FYIf5PGZX)^us z^6Ab%?iay^wRh*{sjZhxFyQTDycqBakN0^IFN_!UNbG>byuM9Fn?hMyTQgv7cMN)VxN_@8 zB{LaT50y_oKHXV%2<^5kxCU;gU%n9RKf3;XLw0yJd50O?&ZxH0jc(pwzfHci*{|NW z*#}%j3@BQx9P4@Af4mMeA%9N!Dwt=D0)BNC+l5^1a9GZmwJWa@%xCd;e!Lwv6G(aV zZAP#*iw8b0;XBpv9;7M%2CwSI9L#LOYrN?CxSE&G?n-DH^!P<-mXWr#To4M0^PDP! zDi?JvC48(Adn}v8&x>LOBMRYOWyX!$U?hdT19t-Hu&Hn6Y zEv(4wCzct#haFpsP+Dnujcz^%+}{>o(x*Ts+f*~6HKjmk1JgBO;8eY~=+W-A$4>1p zzOLiQMNOt(o*urE39KI_!(FZG4X-aRr_1`8j+=0u)vo6Xr?!oHt_zD_d>PBSmh^Ps_My&F#x4=n|W+>zYov>zv@ z-G2{-s{-k}c%c?%d3sM(G=y!X?`M{VY45>aAhBOYTe@5q>ENYVl`#palQ z7iQ$?KWF0enPYuE=;?VrE{f0fLneU<{Lq9>%q5|Cd!FgOVxa48+v-|9Ov(S%QmyCx zHmTPg_k^p7R5LJJkfU+QY#N5&@hgW@sh@8?-pOm{I%`S1e?8U%JgRV=;RA`T*DC$uTYu-{I;&x!h|F+n zx6$M=m;87dBq!i~-9wnx<#BVKkpl%XX6*!B`XR|4p7+QdZlJm5tk7o_0(I2mN~WTl`(e$YKZ3{f>S$?K%mlV$^QwuTmRTmSV|H`IwexNTC{<57)5TrJW?;7xLR0N{M`kYRSStb?cqF2$?73;B_qO)nVb253d36Ht?PYX`zRQWO-8Zl@H}9()ly| z!6q4H*}KG@6~QG6OMlWndLdp;oA~VKS>@kcr_rrmz|Q^Ms^a78+u{)f=Hnf$6%cud z9_)>3{qUz=vnfyKU@ZTk@bt=46<0@OL7`<-ve<%5 zQIRwDNdhsqPpu@{d_0@3%g-u%BQ1Ye2YfG} z1`HHs3m4PQnkWNVYQ+j-cZ5kK0!vrF?5TbUY>GHo4ra|H3|h}h&>Jm@TG6z%naKai z)AXg8OD9@KX)q&i(2jgC_s`>$pl^`nu4nBOFzP6ZX2h;O6)zpKSQA~X@H6yvCRnRm zacxTRb0!FBN{oPP1E^5sapwFKQ0e*A3`VP^nur|Jq(fqbVwF^R1ZEj%vnGj1Z8$I2 z2Qf4+XF&H9;H;GV+pRHPy~GS&C#OraiMTnS2BRud1gt?q&wzR|uOe2rB#)h>mNz$3 zWC?m!!U2jxqapr}Yow-m>zyzOUW_Fk#$`cNSZt_L`I6o25`eWP3ifcJ22&%rV%Ov# zNK$-iq_RNF=u$*7ve60K41P2Tlyw-wS#|u+x^Afu<#nQ;?2&HimQbT6cp?h$n%7(G zjES&g4fL~A4Rj)P`WDnT9%mZypu!i`ILQRp-@JR^j zgz`xU3vw(=Hh?&-dr6zi!8;w~=`t?vvRg zomY<@iieB0y+7BNA21UAS4EVpL~vmUVc*k*c%miBoGjR1c*b1;p6; z_&mNyH+YzR!~^l-&1a0TGf{1|xUZJ%P2B-^zN8c4`-c>)R_lza?(4N7O3{!H5+#?y z<)`PfI)L0_{R^Yf&cIhJL~p|6taPso{Ror?rz=Ry>`q4e$gkpM0_D|G&wEEftmbRe z=Ua5<2q5tpu^Orqgl^CG)B9<$zmv!GdflgvR)-}AF8pW1e-*a*p9&s4Kkl2ew=Uf2 zKh)6Yk-DqR&%a*oo~rxNSB6t(aDlC%I$O58{{q(0*g?xdkEnO9ph0Xkc3p>jgp2WB zDBC!)N<`Sy}aSle*Ka#RvPf)Zc#eFq*OG) zdQra*bdqW|B~vBK(p)+;Va2I+uqNV=t{D|j2r^pPH45h|v~AWZ&eAO2;0zi7q^-8H zfj@f&yF)k=xAO$GQS~07=)16ogOB#S3OJ+1w81={IAKG{V2_VAH_|mn`R;~&<2MsN zc1zlm3VO%}Cic!RXP$jRK|1%BiOzE-Ag8|Q-~DX<}7i%cRxfu4ss zPFWw1oPd$)QHIgTO{v zX>D83c1ojOXRR46N308>d5_$y;Zste-Cl`gsPseXQX zG+z!yB?;2b**=Zuj3!?T4sg`^SjIGMp2w_}r>? zs@0WDNR?U(t*;ylDZ4;ek8$9Ei0~x@rl_#=YzzwAB91;P9IdFZ9E(*u1fYom`+LKb zbC#tISZsDiiDfdhs27gmdy7+aKI4yO7lgrrf|fZ{W>AbC5M(Y5v>dFf!<>L;rSPF} zAf{XzLibZ=rclDa0BaLz#&V5yzr{7cg!>p-j(c zf%P&y#aiYuPy`0puJp{GUO+j$pi*YmSw%5&7nr0@l&KR)nXPb0<8q--8H&Q>at|_i zLsbn2aAG>EmSNA}`Y36`+=->>`3{TI><* zNBeM_kh55#X}&wi5mW)$jTiIoYROd39~Czb&F^tan5@RJCX(%~UO%|!;~^wa~`5B~g)GDO@OZP0wh z!$L)4Qx!M1GIByuksT$LsggTO75N^DwEw~NQ77k0>X^%Ta2ByJBdO>kskr|Q7&t#D zNh~o_@o=>y%V+n;o=g6lUPzN{a_k@y3MdOBV{+{sG9^3{+yA`gS-vY<7_+`#^MP9H z*0{q+Udw6|`Q$#QU3x$yA$x@Em|}>>l!Al`cbd9B+DsdThR5g1#qPh-##gf-75h20 zbezsqT%4w9bfTOY{Ks>DQ0{(ltSH&-LSW=;zi_!CNO-@*+3g1ZxxumtO3}Z(iwWx& z#RT&v!EmMkj-eHn^{I%k)b35h0aPpk9|Sj|5ipz8`0b1#EQzaQGOrL$X_vXx%tB~` zw^AKNYOnU1><8)7Rw?x+Mra56X@{mJ{yC7E$naFJ3Xnszw+H9D6RrwSh;&zlunE_M z+TR&V*U!ZAywkXXCeQ=%qJ-xD&C~Ud;#8ZzirWi5*Ry-OeJVdVoBF4p6f`v%B-;L>u#vW4v}|+ z6DWT65{J;qG0~}6Q_S|Uz2pj*w899NLT{0VE}{?M&M6qvXdB1Qol_8-hu$EG2pZZW zlFth0Pd1i1SZ?vz3hUl78xPgtAP^pf(ToThS@r7k#Y zrbBj%o;SWnn~&-sV#JhJv$SAzi=GJ{PP1hI$IOB&RoVhdxhMT-U&L|e_XcddK1YW$)tt@Y5S4 z@&0>hgFzwz!WT&hIAkIq(jRNap%2c6)FD0sO=8qx@n3sQ}eJm~?aB*OFWJl`1le{!Q>6V4S{ozA688`1S3rGx|W{z(`@z)sINrHZG zitRbCUIw$~2~IU_hF_Y|zcfWrd+%+lfqF{omhXKtuIVBGR8TWdn_Z?R6@@dS07zCW z98It?$HPymy0;>%*`hN}r$AU50z-@sIca$0otz(Wm$NP{KUWVw-Y?9R2IkTl>&=Y% zr=YBn+G!noRx9e7_;*;@mx0{^>NSkVrhLZD%uhSm>p4yLrhL2^cTjKKdsbDLtWA3k zN!c7#8M4U%nq`gLgili8z`R%ti%d8So0vCTez_zAt5Dv>L&^2$T&qRcU#Pb#`^s24 z79Ey6?WxCF_2sQ?N~vNmSD&}G_@9r11X+BZuYV6e51HUAQ-bI}KlbP64<8&kH&zv& zT%5d?BkNo&A2~ejzCJuT{@Q*VUR7>b!M!AF zDV+4uuTcb3{2knUJcPT_iTGLGd>IJcNjZk}_0KQ64or{GUXMIUJ%LG@veArxky}N+F3Cd`uyiTT&#+}OUtj%@QvZnKYbgN%d(3nwLZ&L=ZwWWJt$f6PCrM@5Qp;O5X} z@2n6n8DAz#1Cmt_F4x8>H!^ehg?|rx7R=%@a@|$QLmnl9!wF#us`wNu*8T^c48I5m z(=g01%GG?a^suQj@H0zuCsd5|IHM$-b@wN;_yb0D+1myE10}DYF$Rqy!nFj6?6PfGFy;#2t(q zaVt}o)di)UCVYiOJXfa-33hKTo~nr+tQtYhjc?NGxhH^4ytdiU*1<%87jiy#RzQx* z7(kR8r!P~HGoj^fLr3tbPV)bv008?^gug`wz9 zHKvMuxW8o=c7T1oSSN#(>(5{pfPq|@OtqwjTmjls9Jp7GyGf==)fu<)#X-&<@>t5} zm+Is`n;E37D`gAlkXquPg6*AdLC)~%oo>}Ng_0glSyqyt^Ir{aWV(D{`F+0TTEV4iPSaqtY(6`1WnWld_X86gAh1N7N% zpK|jWDeJ*zQZTg;QTS*pFjv*U`KoBi0s^+mE*yFF2b%6r`w7cnI|e!KXZ*pcocm!V z-#8E9Q#d|Drf@LhHq9F<=H|Ko%Lfvds@mQS&P#0-$f$XDM- z*R0T_?yMP4QGN*LT51}ojU99dGXZNx!-sZ^-Ae^^U8nOom! zH^6gmbvUbAr3k(2_(5zI=`nylfv!RmCvwYZSGmg#Qi@n5R~oyIs1_8cY9H)8NViW6 zgv+3mK&P_36A!ZR6)7WIJP5MM=`$MT z`T0)kn;V=R7tL*B)|H$$NDXc;>bXz#>Ke>lz?|jCQPs#Ip>PNTc?Cwpj+$l-wrDT#As3z8`$n$ixtai_18Cpq$@CEt5dkcz-2P+a<>kaGu`8=^`-*3)l$F( zBPwA0a&Dl7RgMFU^3KFq&JxCV7wy7`%3$SDCZH@sZ_K?_eK~bjGMbw7e*Tm#p1e_i z{k1qhUo~Fc#2uJjCvQMmQH;K4DpNGOh~S3KV4tXyi7h!J8q=!EYbAImmJd=z0;tkK zqthir?67kAB_nua8a7GFpK#vpF4~0QpG0LhRdzpfFRII$IM$=;HTT0PU^_>GPfoG} z?JiihiIi3trI{^!93aC}tM%xy6#ATqy-P3}$sdU`Bs6r_oPQ~DWsC6z#T{tlz#LQ7 z6@QmtR*_cfb^JkYx7_$edInS{)oP=GQT3qL4j$O?nx&~F+PJ?%GR|1m4qV*z7phFViw&5dUG|RW|yrM=$7be zRk0~nw#}Xai5m9mK?Sy#ZB@-yVV0y3+oU~T&iXG|Anrv^z(f>l~^WkP4 zqs7(v(&JyU$dAAZKq^wnW>h^GZ54_MrfVm36=3JUC}S(r!(nc;VX7x>);6Ht^VOW> zb3q_KX${iBar6U2dMWIV7TeTZA;Dv}%G_%LKImdbvrnj+)##d$c|0%BQ{PJ*_Exj* zuOukWc`=SUE`T{elKLMcEQ79U9~2H#86W@&SF^5Hqm%$GUxhO`0smrpUc|6GRSouo zW?fkzEJM26mi%NBw2nsZ4U73#j9yxPH(^7nz3Sb1e6t;6HEUQE^=6;ri`%Gv3(lfD?P5cAUH4A? zTrS~8!QtW|D)(A`Y4a4%OgEw|sWyZ<7ci}kzI zh7Pnwu`cYZ^}Cj}Q?hKnMSQ>XRN_#3wmmS3OC~m-}HJ z=k65bHJ+nafzvb8o_h`~w+-Vh=rZ1s7UKMcEXuf4fBqq)p-!_DvzH-Y%V&gYvu~G) z$XV|Ala6s#v-zHFdhDbu^G*R_1~}k@0?u?#l-534j{ zh==%VrtVpQvK%?cUSWA4n6)CGMLznEe53q-RP|xJQeEF-#6Eb~mNC7f z;e4Qv{rh_ZBzu}E5RwkO-;#^}zrBdy{nv|#m~S1i%w1nYZr|wz?qL25*&0EJs{r^M zZRqMCVWF7dQ-A-V>B&h_tX+3;n*MB4F;-DKYHak&TYAzd#dh9K$JW{8&UT`kb=Y#| zVW_hK&``M;J6XGGe^%LcqUe{Z6VpPhPp`w+_})@;(q4J^XQlm}sipR1q4TwyP)Feu z^lD?=C4I)&@dDI+JF#*$8CszHKK@eL;;Xe()RDq1U2WUX80p#!7pMKG)nk=m7-QQ) zB3*f#+2~}sbXPx8?KkP-hnseOTvOR;clXw)&BAGG8||tQMPg|H>1A(tKmJPmYGWwk z`&xtCPTTD!b^Lpx7T9w5YbR3AEtxSGbXDItGmb;x98>Sd|G0HpVZ;xo^CllfVnC*2 zwQpnGJYWB19WQ>Cz>~TOm(lyEJ3bk3)}4MvRy(e?XgS_4t>4|OjLE&)e)oM{`_oDP z*nXSMnw(*pZPPu7WeGUxBO|m3JeTHJ1a^J0Q}Rq1VaW;cGE$D?UhP-)o`3rQvi&CT zw=#eJ4m3_)iw!~_vaLb~)6$mfvgHt9%atqE#GMJ>WUu2+(c+q=b;Q01 zv@PMLiO|>5#G5-mux*k(EVTtS{i5yxJIenOySxOn9^NNprgX<9wO!GytDtSFE77HIw&z+SjYs+b^J(IR*c*m{(`T z*De+fR;A1zEej0xPg>_ob;sKRE!U*xeuzCw_)A}qFNF5Xu(IT`Or5Qr?I`R6m{Ve4 zlK%D7OQ9opv7{s)A^p$`7mM}b&+BeO@~=HMt5uI)Uc+6E037j+>pp! z3PmSdj#d<73eM>*91iFh@6ZXcAe~WUE)Kshm$`*@CjFP#RGpxY`(;=1dMPNz^py>L zjIIY;DMl-@{v@gwh@!ty#oZi>2f?eeF?HZ|Xc6CY&TEpOs^h0W7A6-%jZ)(2wi0p4F;O1^hg9_r;c^1>(HF=EqkPOrj-~G6zW(H z)Y|rho~u?~Q~w4TOGJCGZA5Cu2-GQAXDutP(nVj)N}JxrxAZ>fS3XAP#+I`2*0M(u zrv7SSQMw{b#EY=y__|j;)|t>^6^4F$dh8w^|BW}pS$)Ie$CyWwrQ&e=sO|<%4V9mt z&eN-zMT1Ju62#+|GXs@oSUdBfqt#_LzjViu^wl;sm1DO^?YcKmujSEkCfVAii!f{ICA?474BDM;k^JGo z`bp01+$}c!hkIy#?Gt!MrUkTLx|J+CaK{-O!jBgReh9aSO(dQL@?kWg3?wzBF!k|+ zs>PI4>@NEtgzvi3DZ56EoB#ACjIJzTbQS{>zriIKMjB4h3c{5C6ANbWzQ@wpV{mS4 z7~KrG9GlCrtgw-P@dQM>OVLk=UiC1!;aha8FDCuh*fikOSdE@Vx}np5~1q9J*B?$IyiQjMFe*gU2MJNQZ zjv+wJiv~*+Qk%LCv996`LVLePWbDZs{xauk?izg`MmMFGrndry=U)m80ZRT_-z8}X zzU&K6@OKA;2jByA(ipctH{t}uA{867?%X4cZj!>_=u`E%sLZpE#VQ{hBB++elb|zm z&+^J9F|Dss&KQoB`D(@DT(zF3C&w?0oW#&*$H~z(V!UsGngw1bt&P~why|T?`;8p< zR=)8@cSCG!bmQdVIySz&K+PJq6yNFLlo8D_`oz~+^wekuK2;D3AOZEk9|e&Kf`_UO zVtG0r!fq4?)53?8%3Dav7(^^(3}JVo3c=$_2a&~reV6N(qU5h+Pq}-Wx4cV#b3=E7 z33w?Mfh;lkhzZcIrRiqenLHYY-bxeaSrGyW2AUu~@^Q*tSj;PrOu9jEiL3~yCXyPfNN2h>!t4xIMzU9(9q zyYfb<@o9DcJ=cb^8;0l}EkOi7Tpoi}XkBRPv-@QG&k%KfoR)weo*yyR@*lbrIwb%8mU6Wtg3OEM!%U9L{9c!ahrY?CR4(K}u z`_aU|3YGaf))FF1K%Q0nOVfu#n)x_y^e*{1K}0oN#1P|R6np69_}(L})p%-`7J5D*jE<=pYQF3_Nh=s*#eVyD&^ru?VDq ztT6Gi z&<_304&4pdt~}t5p-Yybt_l;WOP+OgSnzWK5#*#aEBp|tN^{E}CS zaj~tnBsi&&Zd{D_ebt)Bi~nCYOr(%kN=>R-G3an7i5WC5xv_9yICE3;a1d$Z(#)-M z7x60oyr&YNgO>Z*phxV-kc_@p$1Yax<9dlvd_Gdc`gtwgYOU$%>|%YF{Qb-A=;ecV zO#S-heg4T`RI`A}OLuBe)m+o+pf4dtj(mQ}vx`${-gOU0kF+VZ6>2l`0eWWW^4JvG z*h%Mu9_YR9xHa+WL1|K7E+PL&F016q@9{oVYuvBDxUUIlZB~O?s~bV!8H2CsE8yEI zAA5KI*^~;kUkB*`_r--5a0Gu9A76urcZoQY5g@vU*zoMt`E0w|e~-;9aX9^ZnbXN9 z9q)JO!ASd5{&W46MpxM5Ws57SXz=T8Qp6^xX2fxumrFF$i=Ruh-HV@F^kEULSkZ*F z)L4Y;;pSfTaj7ZflwRM<8=RHt%`d7*=%;a8*p>D`fpgUez8n1nLtc-r*8iIMOx7Qg zd+g}>$9LHtcw6kt)<5M!KX;@cm~vA%=iZT1P`s2@qL5)_lF4G(?hBsH&bwVelW~3~ z?HkO%r~T8%UB5|#HqwERTwA}g=o$M4S1^y6=gM>jNsko#G*vhitx=HwQ63CQre$6pcEy1|~wA#1yX z;p7(149v(RHR@ATifaLsl*pK{X|U$32L> zVjz2}1j{7p&XBMxPw9J~47(-AjHXWaqt9UI;}!6K8vjHk1JnxN2?tTwLiSy;7Dpo&Oy~QEg==W=oub9&4Gr3p}$W-@o^7RTwHSE zk?m09eX{Vkd5aPa-ZQ%XW$O(qoAg_tgM(HRV>e?c1zB@U@hdFlJpytk!4Zwn`O zg*c-2h62oR$D*Kzm=f{eBlW0Q+1v@J!2)WRDoERoSc>#8L63?J6}wRuKuia+N>KwF z(2@Z^ZbXGa4^_cGW2q$I$s~+;T4<9X^;T2~gEi$Cs)X0s55?HCS`x0^;?J(JJw35K zzsZz{2yTh7-y6WdN0#3+fT0)z47vTpbXNbKoxjOgCH3;DDmF(Si0D~MbxlpYMK&u+ zWC)a$D?-nKO!Y*%Vc1nR1M9p?+@>_?U3*5#roatuQvlP+{;c!~T_21gFGNsx z;wX3S2{pbeD4k6f{wk(vdZKeLkEnJ{?wB9^De%L{W=Dqkq(Io28v&vk-&G|n#kROt0UykP11y+-k4QOGX+tgrIMd@kw`A3Kjd7x>wj z1pI8=%h$}#zDlvo(VcusZ#e2F%L&Y~_VVDFyJNUJ8?eu(&7{GXdp|8z>?vgyit7uU z;_gNgS$bl4GTg1)a*nADRN<0sNwDA59T5eoNI6Vt)S-CQ9CIIiFImdN6Ih1pn(pH{ z8VUo9`8`prYJ)3bH@q4O3-85iCnb7PUowX_IXU;QejCu90oU?b1*BxqmQ!$krC?M= z;#dCc`c!0sgP;$&%R|5r-7e1nDN z;OF=!Bvcx%Gyy6UCvVye9W;1}gyDEB6TidyW^H)!od4yKoO~~!yZ5T!z#P}S(3ES7 zl<4B&-QbXpkrCU1&P~mX?uoBRR_zBv`3NO3^}SEguPfEqg2*s0V3kLF;Zh*Hu$di+ z%6T~TO*xs`$aaHx(z)9u& zd~6l{b~)L19igFXCp!X_-4x8ZEev>ZB&$Jjp!$_&EMewOIcdtAQ*z-VlgDf!!}lS# z`3;7g7Yge-CjJl!`F`EVu;`IK^Kc3jo>6)-LKw^ znUBvUeoczPp|ke-lp}>8>&hS*Wf`=9d7nFM3SSl(vfC@oI2KsUXcd$MITDZHJYr)1 z;Q9PRHg{z1tq=}!M8ZCAe4yB@3mb!VFMgTQ*e<);#PvBoXEU9vkanQHg^X*@*AR4z9~EaX|(lNwFh+_UVvF$6MMd#)8<<&91uY@Vto0itxPR*fAr0O7dYA z5`A?2dDDGLCGN4Ht4Km5{L`%xO35p}HfxHr0VuVQZniTLEpT=Aj&sVdvFPFUvH>G~ z)sUgrd~MB{&#>Zbv-1N`l)z&cd&g6aNsQro+DMU3nukvSnXMs~M9}Z&DbYW7tf1HP zw9PosYuNkCTU^ik=9l+B|9+r&0IPvp4>93 z2Y6SCR?d4hqa8fo-$>U{B7P}Pmbucu3*tCd}muQdyaN>B24bC zD+gI$p0q%JOE6qV`8{c7iiZ5#Oq$Q{;HPIlmO<9%C&X(75x*a`FK`Y;V@Wk{`x8Fu z&9`eTLRV$m2`u!EnI8-zi@vu}`)Ry=v6|fp%G4fbzZM@Kg9mcz^ha2&HSKC({o^xVSW9OR~++` z{ZdYDXTe7)T<4aX!gzft*u!auXSPhvJq^-oYkAFBLDr5|q+G7^H&Vp0;4>^{(wCc4%7cx)G_m=jc5O@0fs)D) z222YUS(C+vvY+K(Q}*xva5>&*R}5!|oAHk&zxH&bCfbh6=>iAcc9Jq-CThdeYm!XR z*;l}x=7ThsoD`eKYD3el=QP+g?eiJqTx-zTdN47e4)8vG>isPsi;!*thX{FFNuEEH z8%bUdTO+jC3eG_Ko3ZBzN~o@JP4<7@kHf6ngQ{-ws6f+S?bjwd)u#rG!73u^Izehc zr5g4o`%~kwQ3F;`Fp7t6C7ug;EKkf6N@18f{Mm1{mY`z%E%EB4dmBFJQUX?71Er(V z;M24W_L@gN)?(D{wA)bvhFT#Y8M`xKs-A2x>vk&TqSC?=yH-AeYK3t&%ZT(r?y$Y@I!cZj^t7w$_&OU9la_8^nax7L>J6o#9>8rC_ z7aTjqne?yQ5{pxDE4$^);6C%% z1+W_A1yiuLAIs?G`k7l|Xvq#pGCTf&LDjI%xJG(x^f3^Eq~DbcsoAb_2RDI8+D zl-{aeoR-nJgcv@!!v;-0qk-rlsY2O{Aspf#s?p3A*M0j|{VA)!}j9 zACw@1+MlYVqp}DFL+V~DdT5c{K8wv?;fI1?2`d#4(s%j-CGZh*D0dK~`!_H&yjS$R zyBxhJ`+{IU^I{6=Iwn(qMOxOs;>E|AD2s3Hve5=ZPJVwaL8cz*kzJJJTz~bTm??%x zJ?aZA#Er-q*v*qFIJ-Y#6|}9z`w0S4dDU$NOBcX@_{sQJ^pHw~|A4AP<%t?sh$ClR zsZ0M?5#P*67;9Hi`fnZ`)putIg&RQM*GQ_V?XT${0<8Tf(|_VNQM z5y!xyc*0qJ;4RizPLFx{{9C_TjIjzL@*zv2u&U$9#}#N;eidQRIOTr%;q0i#PiyYS zJoQJ_v0{H4G${)AGIe1G#|)c*6YPQOm7h+s-_#2mb>k0yLcZIV&(x#{(w--uFog}4 za|w)7d}WCFtI>E5#!OqJrz+=~4ZRuJP39}`csdnl=j+r!b=^5?vI6TKlQPhS6?vEC zX~$pqp`?P&81sDlYtSguAt>nRL zv1SRRPWV4!Ypa+ZRpxZ7>Il1T2T#u7iYz~f01dCkptt=^h+^KK*Fb*)_w#b!i7y_$ zpFfd`2Qm2+S3TvOxD^S@d?fHtNRPE zaJz{wgog{)+x+56!^ZB2yQ!c2u9X#YKJO2~4KVRDPplY6TVf<;Z?_?l9?tB(aOVJ; z1u1&$k6mjvuu0pi#I8v{|NM~GNt8ZrX0mZMjyL1!UC%-~nB}oj(((nd+oTi2nJ%{{ z6C`(uu_2S}8V#>siFE}&zt|}A@!H7*drzv}tTxW)3Do0GOF5z49lNk;&Svl|@ZC4A z&#suoYPY$4R@)xX($Ic_F0|G?!}~sE%gb@oV2BcR&`G5;@FOhyyiGSIZAS#9?h$`& z#(E}XX?eq5m64k2pN2eC-eM+n?rVc?8E6FOEpd|8_uIqyizZw%#%zIFvoY~E0$m=I zR9`9=x&h+`HVvz3t#cO5tY3=djC?{`XC#*{5l0-*!(cX9HzE)_#@f@bQdde3GR%X# zQ>Cu@1W!NiJZWBhVAz$Q{-ulYO|*7hmbaH7O5tmU;JdItLsSsO4+Z}55PVk9cxDg+ ztJ7{^t}FZc5F&2S>`&P``^G)t7TZ*y3}DHLhob+*nMOcn`6{voaNLMl(h(A0 z!J?oJXf0;CbVPHMjzLM3V&akJYBTe7GU_&XLBA%P8fSr$-Cf~BFq!|wC@VNe0YI6hjZWUz=NX=@OOUcdUX(t%$7Mx&KH^`d=|$_wKf z_jw3|UYM0B^lLj)0qXAEkYU}+$`Ozu+Ge6v=b6d+-a$&@6jGE%5X4~$L=@#BGSd}8 zHVRd<&yERQe=Li^y$+V}BTyAp(Cac7n-<5noc^dVFpc?qL@?M^Rka1`$cwdi`EB?i zS7Q3jH)#RsQE#-@phNk3@!s12n zHitv{bzeEK`CZ^}m*96xheX5jIxIFX?~=+_jY|5ZI-ZVgCn)gc(=xH}APZUeAs*j{ zr#Ub})%7+`h;PhWd~dWm#&ybuQju`+o(ozy(SB_bNsJq?X-0hpCGECs;0vswrriy* zl(+Z$DlT2#K(n+Ab+?hQYz-OX(I7Gdb3o=FQsG?v@4`lYvs~zxI#x!J02W^`L(?g1Ic?ZK_l9pl7v^+^tfv#@;f~kod;nb>hw9jn9n*nS`DuK$|$S9K%u;X5aP(vo!?A}u{gH~&&J=*&MKmX&99U4prZoL$GrW(uC#kYF?$3OWQL;kPt)8~&X-pegUf$4*s4o;P4X!U8PpH z{pL=L!2>;@7NC52Kr4tzdp^Bt(zEdl2fJSuAl!;ibDOrua|GT!&kwWiT#2uLsO`hm zb1MDBZGI_vSgzO=If_N_9cf?=e^*~9g1v7d2pj81gkayRn6g5matCpC+gDz@de68} zW}d6zG|$<@8q-KW#f}#eZKlb`gsjxgZ|>FvQJ`-Jl^FGd*4;bN_jv>)^~&5DeWoc5 zWB9i7EI5bMScgU*hZ`1e7MgVD^?Ca9MAd6g>U3ODTzN!KaEN%s_BIA?6Me>69vhs^ zI^EnomdH4E-;y1ScC~$V8LN>2@fx5)+f>QDvV?ffKvw4*G$DMS_ zL6xh;u5rWz#nde%u`eP!AG>z@N2m(ND<_ZdhUkh*@fQV@X*X_&4yiH!@z|L|_f*j4 zK#cHYjVEx*_%7RUgn?ynL;{bO>M|TS@c?Mj*kzJF~O% zaD$IlVPxY-yV57X`=1P!0YL%`7bpKe!MTa>`M8l-rLCQuUC8;k+5f$2gaiC)rWlg} zl%j9+g`^d{d!=^E+^$z=Z{q3$LZJMl!CI5-TIojwi^D~9z_^UwJ4f$bDW>cebD96YCHX_s$-+=)?%RS8B1xb!ulxaBM`wG`JIunc4ReXwK9 z(kw;kHBCb-$+}E5u|5>GQZi?a&54DhAm&t(eap_BGK(+OC(Df-iCZKZ09)7*L%U9~ zSaY)>a0rU;LxW$htBVO4Ry?Ga8g&&YQu3OcK2Q&!(D1DhS;Q~Atk{kbu~?@m7T_0c z6@R5TS2sV!GrB7u;!?|R(sfJdLXnb6`n>gNVMvPF8!rhz(~9%J;>%HxZln&f6$sCk z+fSZ1WI9JWjZ1G)o~3>=^u|?=&>JV)%vz;Vp?r08$B2Q!!~neQYOVy^@WJes;>-zn z8QG@Dv-wf&bL;A;fKP0GS3YOXXdB)7x8g1}BbFKI*p218Rl{SMTVq; zW)3nichC!DzlusaGmz{D(=E$Qz&OscpU`t;+vuG zoW(v$dnh!3l?y6IYk*TAOV-JZ6T#=kZxQFoTlM#AZ~t@qHu72;Fj8`>qO?q z#yBpCmRIDu+MbtKQ;tS>{0lzD<8-1qgo4a`E!nmz4s+1-Z)4*96AH2c2PK1uM7Ze@revF7w-b#6*l)qKFN)##tc>^Et*BJDx80h{F)GRxt(2r1Chzj0xZQQH$e3 z9*0=p`JzLk9nYk%r(Fu2O~+HvUk#qWXC1BXVQyc`&Rdom%-URf{PCnY057#5mYt4no@~R!aFgOC66rEMB~Va_Yh_?%QCLIC+?AJ z()I71Ux4ysfSA=0%eBq&i>4k6td>XW9;2J z(}Da)ELA&8f=|2m>vrc}^z$bec9H;4xr4dg+i!uz#Y{kIs;+^B z`YBJzt`sS-7Qf2t0^R;|bNX*LfRbasnT#T5mO9>CvJG>6j5Q0V`|dH15!7S^4_swV zhvdD7cKQ-@Yi-_^s((63p#okb^l>WC;EManej>Io`5}B!=QKx9a_wu?!DR2a>BO$% zcbK%s^vwg1Cx7HKajW=RdcT_-)8~qDPjibkU{(7?ozYLg-kjIbKEgw17dddE%psWh zkn*4nMPKC_9CIFy;BgEmPHTyzecYNMHC9qkQEme+&0K8-ZjHU)UEC;VuhnHuF5;{P zAm4he>$;x5rmVf!inWBQoq3Hq#lzi$v-p$h&aekW4kXG@{>=k4&|NNE^8i;o+pNeo z)TQ>rCV3(4rS#RLDJ{5;$I&yX^jfIVrqCLi`JfdB?dV40(`cDu1y<|Cp=K0>%uE%k&AMT`S;*q8PUeR2f zz!>-wa5RzUtNq=z+uBlIaT3<(bSSmISD@kt54lW04J5Evk)tn|A%G#EBHTjeD$*r7 z!z?UA87l*$;G?8ec%-ZwOf^V1mVB;Ur`-D*88Z`;iyA0D>Izj&B@>S{ZLZuJ0HcKX zmn{+q(0-7KZ}z-k_~aFtSvE19oKG*IAzi@<+%LR0hu{JzYgz$+fZ1~L1=uDe5{U-} z%l21nAj7m~-apijnHzThdDCGmB@5i}3UsZ69V7u97aJi^zox%&X%3giU==zz+~~)V zG|IZ^A?#+1ST-Cnfr*xAZ^ia+lTCd<1VW6MU}=$lCK{V4z0bFDY0lw1c?@DWRmp&2 z>?efA*xPcM$gd)Z(u!GA*O264p z9VZ;+wR3e+nSmUHY>fU4VDWN}^xMu@vZ`#*N@-_+dz~-GF$~3JY7h$NlGV2D;-psGev~3Y{a2%-a z#mPN^nX~=^YlMKGFwP~&rdK+FJ?aPM(|)$o({{H0f>^&YI4t@Ah;RzuNzG9WB>0uO z@!B~1vdhJ=ky8P6ny5=^m6%Hyi0ut0FjxhEDNS-DxTqicL^745=rnm8E74n1Frbo1 zssU3FBC0~O53D9otT;j)pKBoR`9>m(2LVM|B39hfU$Ia*RFv~~hOcyC9;ALBnM8@2 z6$u{3KrX?b2|8B-)Nw~$)MNZcx2&2yjZCpm*k>7PXB^0>rge%k@X91Tjg8>t?pIc! zyqu9nq2DzhM6tpOo|gE2Z~f`^eh(Tz8yr~Cc8tKYOL z7JZxqIb(G41T7f!@O6Rzl)>uVG?o%jjWCsM(kaY=7K$UFy`H!x+FFIo%mKDz zru6)bnTHFpy>~Drv}M$=a5QXe7=N-Ce*P5K0{BBgV{0ZsDGXfZpNpb_HpN}N=F#yB zdeLDQih6fpNNK|s_V&xZTJS=B!S*Q3i^P7)?!B~l1PKdtWPD*}lau>x&=PYDA7iEg zNP^13UM}jTp?+IL^Af=*V~6Dd(r0w%oI~HR=@5Vjjj*z!uil>3I+{Vp^LQ9-S`rITs>6ULe;uUSR;Rw9c+tX9@InbGQA+6mfyN>37BAAF`%5``X|8bF7D_;Ejl& zr#r{RG?82~hgFLdW6G-+v?}$qj_qIl08ex%qjxxFtA0Nw9t5=8)p# z=aAy#k>KYP|0FFTLjM0%!Tv`FT$Q4w!)F&DIXgQyCuiFAS7=%g^*7INM3!$Ow{{I# zEBp;B8zT=6t>-Nr=WgD1wf64bo97QArSMP;ILKk-qa-kU=m?lBi1;utF#J-m(F9Vk zF@S!0qylL%mYC6NqG#VtlXuUaoH4}%50T5m3|h`92P!jMkTzb#yp-bJaoES?=!kg| z+9>-lS9Z7^8cb`@?2y;AD&93|78FfjJ%E$(L~LHNU}_w-rc12H6nb3p;&f?9dJ9rU z#9LR?Ssar}aj!4#u93!V6>71b4+0q`s29KngA6;+>&ONb4Z{q;#zz_UuLlt0qtW>n~(JFvt8s#9+3hQ~B_Z}o*6~u2CmSbI-*N)Bv71f7S zhv`_paF02x27Mw1#T7t>4;309mq+5_{~ds+i{gf8!;=n|x+Hb-^9;r}@Dp_WkBFAF zJRC)6uaw(9sNRgluO+VEtc}ogp;7~lr{Plr_Wh&Ecg;?;0~P?x)A&n4C;-Z3nE7wa zd1Q95YrP=1I_NW)j$Vg4_%qnoUOz_&VmO&zakeSRoHl8Vt3E;&M~Y<_R759N0E8|K zZcvxl12M`7mrmlsJ`8a}1|S(jxoxg!=A7vez`kPA`;_Kdx$VVcD#j<}qD`3$~U(B!g0!yo}nvxjT#nZ7ffb z`N-)S0B$ooIxy_8&igyQprsf|l!7?x5%hSkQymnrM?6;}+x}y%Xufw2^igz0(;frJ zzFB^*T0Y35P=QykcV-8Ga|Ams4r2#J)Jw=ylC5KXxL}zOe*COBJ#JJe&spt|HYD=Q zggG+>{H8_tIR!PZeNb}aj~JTVqiQj=j&+@uKJXqrZ$(EZYc!1Y*v(6}J(__;N=pEV zwsJGCwamdP!8lJoO|4j?%z>N6tKJXf4sYA)yfaQ`Uox-4T@BSPDiC?%V4j(~@MStk z^O(0n=7^_R>Up?{%UMN;klpoiJ-_&0of6|O@=ykC$ObVOeSEf1>-jD8;b`*PxOyIY z4LnhwTVkx*Eay5h&vlGA00tj8QP6hrg$*AmGzgasDH<-RPu5)9IFBd}1Zm#K$406M zfyG~$lC0mSIc+s@$hufN384|a@*r%q_vfpN0PO~JOT#kkL69e)ggtDw{o0NV-X&0P z_*ka1o5kQM-C+3dtYRPC{W zq>9tE^;>Dwn;0vIXj+rkKSqpl&F;jwk5NOz#4WvD^vmMq#h#eHX-6Mv9o`xAYairR zWA@^vxFZ5F+_K)BFeg_TJ6D;M_=Mz=NIoNaV<>AgoW|od>m8>MsCwHPMaq^={}y5( zlJK8Dea_zXRWW}rZo^9UjWPdHYpW6!JDmPVPhIfXc0 zlI@Xx;hwFvhckevm{%<>aSf4eCIQe+*RMFhnd=jIE4f&e=0I}H$LEJ4bCYd}qoCP% zs0#KkeeCrYK!;^lMZ^D5 z{%Qa&eCXl8uK=NRK!FKS*`W}QBF79fhLIiYuRl}Yph^Nzr>zP)PF#|X^GHrxH1uI` z{RwE=-&xizXwqTZd%@#l0`^vnHyth2KZM51u+q<+{m7K7YJr}ESX4#lF3?ge>?dQd zd>s;~3eL7yzYetuo~T#44$%(IKumNQsRgnt9o(=jvnfr=2mdYr*)kd`1Q{_*Sg)x+ za!7c@pN~KI@vid34nhR5x&Xy~p}4S3bO1?6G^Ai1AlHn7!?e5vHBy>XdP z$9S?mVlS|>tnq#UcOQyO$lst2uyLUz8RGrK=VYP+H?rNY*2EaArX(*#@|FVNVTI_n z#KGQqsP+aykz!xv`Tr*c`aih;FXb5Q918*cq&7zi%Z_Esa1_ahk4mU`myz+30ZSMF zZMYQx1B3#{eSb=r7x}Nxm9h`W)-P$oS1|&Fd{J;_+QQR%^;bZxFruvy< zLgy`jCzA2c8ht`+Ly{(^OXsU%f=3XXy^7O+=S()D2}tKYpE^{REZ{xY`T|rhTCbZQ zM9ZT;HGuvI))zpai>mFP0>IHlxqIB#Ctj7ahF(Tn%sPVS7X}B}BCvye128VbwLssi zxYvC+gY$+ERakol>8<+V6SK{zthtnm@Quc4<2q-qVSqQpl}6zwNQ4?9&j-QzWAI~- z=8MI`L-GraZi}O$IU!=Lc_mzgoJ>$F*&SgU4TckQ?8Q@rA@f^|Qb?c@IJKn`K~8@R zg9qzV$T}eRh7(Kgv3(4~;Ex_vf)Yv|-IjJh5(^;CIP?IiCS;+?ipsq3&rT)y#ojqv z;9S zPW)UhWl<*O?YGnyCA;G{FUP-)Kn2@Gw^8j-vU`4QM6J;m3MQ@zFC4R~R7T-zHd2$}vGbn7XI@<87a4~M594gM?0g3x!gz>w$%h61s0 zC<>%tx_=3MVS^;GZ1t>z_hSEO7Je8>Uq+PHA(!}f>Hic!|7Gw$De>?YiY~EmjQ_Hi z8r<|2Uo;Rx^U&;kAAE%L$pYcNyO%OIsJ&onkmXw~bu)mDmPAa^BD! zktjLm93==IGISqFf&#V(D5)hkIp;8~_ntfF%*>s+@BQAqzq{c#ge|J82&VYYBb1}G_i zvOmID$%dEGYp__nV&qe?@gBCQ_2}nNybNM+n3))pF75+WmJGtOaGz0Jr_js-+7EcP zP?1R-U^&BL7ozx0VU&U%yCcz9kOzb+k=T$1sIprSriIf%c`ZO@_<59Uix@Q08>%=- z@LO0M_-LBp0G*AbAEo+@Ynn}4-mjv<|EWv^Lm8$|KCE_z>?rIKjkAMPMc}^=e~F|y z`rTKDkUA&|twUhPbz&S|neS2Q`pYseO285TA04qDNZjNvR3QOr^BevWc7rsBYL{%WFRRN8)qT+t|j2XhzEwJH&R>m#5v4u?s*#11EDj$* zM1JFd&n4Huv$1TT7_R{;SIFW!Poxhkb{< z@*Dd}r-uQ<{x(D0nry*)fJIV&k^<$@OI(G4{ck)YPm&ch7VmJy)A+{@*sHN|?=dF! zNB&O`>wY7S_+lbwJo#yBM`Pg@_H77PR|bc2V*j%q0IU1coo;%x1{>4fKtg}g1-PCG zt6~j7H@Q2VJUJCpt548sn7GjjKL>-!*V7M06 zjUs%2Fd3yR%RFm7JK#AqIttO2KnRUKTvKkjKQT;@3#D8YKVHv2+nP>Te#vmFmfbh<>t*|C(HcZ9<8txtYbSh}!jlccIn?UdKN;#;BYuPLMnG zExebwR@i4!35CU75>;c!tsF+V!s(fs1`5>6Xt1uzK!R!nxwu0DXE-^N!vM!ULMHM5 zBM6)w5!}D#?fxmVvh3k3u-g{do{4o%5lOm4Dlz124m%v-9GN1ac-S6CB^)%B-wDo; zlR6l3gyS*Y94JsB1c~z}sD}MtK~*??PCodkk%SO+{24dqvuZ0E;4jK5R>_d~W#7{s zrE3#HN{1zHwP`clDS{Kxq3Xu6BNnb+3yv1S>FE?ICdK1gtveGN zBjZS2P27v&EOgTqXbq5zK#S2I5Dm6TQ$~cuwXYemv1&qe*K>Af=3ymUb10w%QWf}t zk#?%TNHZ>Mt|(9k2@ALwsm736nf&an=`YZ-(L)nw5VwGzVWu0i$mc#2Y*V;N#fo-3 ztYr;s8^%jVP|2bBhf=r+bqSo~zkz_Ceg8>J9aLCqvdV@X{HGWinfdZHQ#NS|-|>T- z_#Ml?-s*TPvIx*mGez(bYrTjG!;ny7tcMl$9qVwBSRweum}CFpT_Jf!Nx|W_p#m=W zpAlZ8lyV4iF73yXw(-eu8~60)X~>7rCdIz5`+DBrzn=j@vj2D;=P*P?eBV4x+-~_ z_>0y5z3H8zn)Esibg(7h$|k-$Wb1SwIS~ecp}Ij!Dwjf}j|y;m!mt#Y;uac@ibqAl z1y_r9?gYN|_{Y?Sb3*wU2_wR3pgfEeWno6(u10lVF~V5T0>V#>Mi=ijR6GN(3@$xN zxs3Pxo!e(y?@%Tvc$J`0g&_k!E!-a*vT=A8=PJf7ghPhps%JdF0c%Q$Vz(jyJF9}& z>HNK?`yy@2jm|<3=f;cF@iXfu^L)ysPcqHFbl^TE$VNCJbZeZJt)$$rF(YiqsDd6F zGAc;^d;|}MDnp~q8mTDZ_d+FHlzxY~?=)d;6!=mSQ=U1WrV%DdT4KZzhX=c+n1belYF3o*-*Bcsi5g=tf2d&lLsTMB6szJuYXtwN>VM!1s?1a1EFPn>o2affO3^!LRi%Av-Va|Syzu}uhF!&G4vk>8Z%^` zng;4!yo;_yL<(Re;)Wj$=JZO+RkscHT%TLd5O8N`IN$Lfu5y)3Ys4;?65X3nNWQ5$ zE_lpR_giBI%GuPH<;i4f+Z{Hsmm^hM5@tGD%Ct;LzolvBlX%Ag(@5rXiVFM>pEjId zIdzu>3|J)pwhlhDS<}{zLr9M|V?PbJ*piBQekMi5gP=w;KhduaN!QA|)ZN=~Bg99j zh(+d#6iQ}vuJ-*1!QzThH31b30sZUWuuEmMb*1`t9HD*au$LX~fz-B!QZ|;2|0LfZ zz?v(l@mT{eQBUMQ$T^XhIZLcJ z>g5@Q;``SH{TBU~R?1TZ(%~UopZ%J${s_22Uo_}nKJKw7j~iokF{}<9A7!pL8xOfB zeV3b4w%Vw9iqa=E7s@b6fekGHXzEF)n!3*7xk;ji~j6NhB3a%%?x_l7*W zmvP>h^0uO3N&Wmn-eqD2TaL@2XOFdL>Y|B_4`L4$Uk`Ih(-DQ?_64k3T#|c6J3wwd zt+{_)o6l)O;~AatpeJcwvx>4ZW&z1)PZ#L5(161oO&fbSrE@4DbUVo(X!v3wTD7O{ zz+a?|mH!-jm`>~6>otlm7k4;oc1bQA&1j?+#zlJ5s9@k?g^TUxZb2kbZ?9y|vy_21 zEjD}Y9b%@QsA^kPnz_U z73sg*A|f^)lTi7o6)1?rQ@_byq(TG24t;v$?h}nJ*sVYlgGh7?v9SXAtNJJ((hsll ziW-ZHIh>efg3APLpxJ%3DI#k@Ydkx;3%^U9S>lo7;3GLyj>R1R>HZfs{1En^L-BG* zKxh=?C2(dVM&%WL3dOY`rpNslgq<3nP^Zr=PxB#ORQuY8Xio%NJ(bH_b{r*HV#=_0 z2N`mpkaC#Kap;yh{$$KO;{`sBxZKAC6lKpxjBFjMf(GYZUWW!~(P(S`a@ViT^%wrz zU{pCz%7W;p5n^6mRbJY~#K(mA7Cgl%z$5CI#Wd7#5OGW!Yhr0cgC^>>hfW;SC|=dC zlAivMktc)sW6}L6#s~J6W63;2V}A69JS37*iR!Z7p5}7xj|tK5-c{eJ{37d>F?X*t$S3LwHw zWMZtm2NJAQ_HcS13)*X4lw`skdDcBgh5SRI5{K)|>xiTy(5Gr!fzV1=oR+PVuQ4C>; zamhw8?aEt>CAq$d>3x>s1q51*0d*MUal^pDX-Xaj7kjw@mPD2gkYMd~v{+2QFUAjF zMP>9o$WX~`I(>j|kBz3Y@T;rF_8z8S>3+;Qe{WdtycO0?I6bG}C2A3>E$f-X%OHrU z=9j`vY0ivx&B7g=66B{K;CB-(mt-vH_{c7uQHcH2tCIFRY>lpq3^#!N)wvyqhm|Ol zBrNFAD~I-B+cG@J!ZDnMsKIWi_y=;9zQ?u!rIg{NG_O3!A~c-cDjTCToXxurBg9sV zl9o^El#R`2*Igm(c_I|O2EnB7>xKwp)sT=5}=4)xy-AkRgx29gb$C}a)d)9Un&O95RdqmG1qucY3QM{w_N?@>Lj?>BTz@nj2B2bgl-4q{uQ^@CUWG1H#DM#31@sa^?tblSBinCy_nutF?j^a zJ!Pb7FC$s~v_?P~eq+$t)L(L_D99|8U4vw)5vWqocQR6{9;7NP0j`P$x!viP8mlfi zwE6Q*ml_nS4VQ=vQEnA`ZMj>JR0Cs_r_qvkdBA*C5d21Zmg&+Vc}04Sz_u~7GxJE0 zR@SBEHFeGmhiv(M_bp?je>(9npzU7Bt+{>E#_KhDUE!wZo1Ww^-T9dg%%YjXf+GIr zz)qY$d?)~v?nYy?D}_vDAn7_)N1C#L%)QZ3LDSc}f9 zL`xt$!_em-Wbhor^mPTAXoQpv-3Son(r$UF}xhYaFN7({bifLKn4zw=ABleWt>Sv+U*SGIDivY)8ma_ zke_iuG;(dU!)4UrRf%>Kn5SDqQ<)P(E)93?3!EG5 z-7DXf5;z~BL9#3m0G8kr!SdZ^H!}0mlL4&ndZdn{^wbyyVCmS7+4cyA~8B_$H=-?SopH3+A zMH-B*mzEEs)SVcZrrI>jBtxvtS2Gf3@3fCi{#N2B-%mVE3z{`2AgR=9huuDD=D6+c zCKID{6dDWV5G4G_K;C5~R>IGC2Ef0+197W84qPNw9omH(9TRH+IxoK36Or`^--uN< z7yC|w?6D&QcM7|tx;UO-6IIgPnxE0@CYx+xlHfDLeXNfNSUb_(aLXJ&hU^bz(#w$} zM>epTqmJkT>kkbp4_L^qxGnf`Cu6>Pj#wdYRB8ocOyQ8I{;hVs`VBic9m;7Vb*!(d zx~aD1qtl@qX)7z>Y|a>X*w_Y_S4*1;Ov}EP_E5zqw_!pv{bAiEE>GjD*ztU!N%u79 z0tT)J&_0DR9F&8sd!+(dcAu`a$X5*KK5c%|06l&OSDdfx+>V4^rxOrW#DzbD-*Y2* z6-#%kQEjI+7;aygw6H~cOEm8N72MAexI?J9>Yp z;VSNvMb;5%8=N~J0wJzA(y3oGRyx-xN57%xP)rKGOZU7N1{Y+%8MN<@{Lt z+ma@DJ)R1{*Go31EXUfrEZyHxBI8iQo7r6gEvH&YVVa!=^!RP~l*MlDJGg?gw|r{w zOE0#g+&P-*Ln7qNJ%Z!<^uW@~Z*z0t7K1bA^N_VuqCf&F8&N+)x#07{5ac_*Yt3r3 z5hiGp9ZV4aTwOWI$MxF6mE_2v<=6hD+K0-ju?7H2GDObGFaa`q#pFZZ%}3m_ny=&Q zay>7Oe4tEwaU&JjB*}9k8gZYVn-)6Ryl=G-EA!?uv{1t*y8+;#@d$5rWpL?+B zXyvg)fh3cB&v17pz2bd(GZ{p+Q@Mt=LqLZ2Jie(<*{HYfdBFtC+Rd;RNOXOFwaye^ za|zJeTzdA~_FZLrrTHBC*ftP}dA;9~IGQ6_`gj-Kyvjez#&go|hm_Aj%KIIPY#u9O zd^eBHNtG-_PWXh^^4UqQ4igG|3ej`?JKu3sCXVyjiIvWB(Dr6Qv19p$-uZ934PE<> zfNP->T{#d_KFL~-AfJF@8!hcbPC(QY48Ym7BVktLxNNl7Y2K23RJ1TFy0Zx0;3;W; zp5<`syQEJ3COP$bPFQRm;rqDIuX^xq(g&j}0CDJ9AQ0ADulD8C@EA;g$8^%Rh$~{9pllz=UubVFa>ho}>k0vlM zOwL3tE73Zr4~rWX()xy(A9Kt~P7SbU$pwn2-{c(~aUswCc@Oc*L8;1C&oEOw z*)Y$G#)`7W(ueXZn%5gSI*$3G!O5OslC~?q8}4{NpJ>g{6Djl&O;ws|jr{Bhh1FhQMVm%M};7>}-eZ*0OxliV3Z1`rvlP}+(1DI6r%0zx0jvMRK^LXIl zn)WHqlgv5)Ue=U@3Ob0$eqUV3(=|OX)bphm|8Oqqwyf`SGhff?K-n$qBL|*a@>QuW zVH!}D6(S8~&oH7JdrS-`I4^?$F;PFwHqn)bH~k2{v!&J|P74nPhwV`kvdT$j%NH3M zdoAR0Iehvw3b%uk_dnN>k(QiEJbvR>#gVYQagmd@mvT@vEc*4t+@t?_$fY$>!sgU% z5j>wVu;A4?u2l5#c?H(_6d?woCN6(6&m z3uv2fU+A1!l=m%NpHIQ5mWH>2c$&3W7KE*GwF-b0WrS?L`%?Zg!F7M?%ln|~($iq@ z_twNp6*=(<&A4_W%rr2aL4ITUEQ>>=_})a4imf$)Pi_h#)oBS_^07tFLsRCi(WsF3 zHe~|+Hf54^oxDX~%@%dTBr90idipz8ocu2V?9J*LOk4cBW2_&+_G%%%H6|JI5Q67? z1B$b`{FgEETE^bij$+IDX?e(80cEpk>DD0MEXhZ{ZRF-NJ{UlFn#n`Q-FZ-yxA{Ts zKyL3h5hmT1#!~I+R*yRO6;{60w4>!=hPvq&HvL?umS~YQ2x2qQj&BQPYW3tS$w`dy z(e$jfqxzgGQoPn9b6R=4 zHSnVPLPn`$?H)gX=u_0#^50s?3L}3tv*6&e#3p*ylE0E*mjK=hF(QO)k$7xBkN5aw zmjpp5Moo7Kjkn%rDr@2MOe!C+7*sqoeI55u<$5rLfDr~v*G2YjVLak}M>xLJ4UUc| z?gt?)QSQ@qG@D=d_D2<+ITG~e6w~>Klhfw&L|K~yaleEh1>t0lvI}LE^D!l&&qbHL zM868On8>Lfv($9zG8YBj&9>ou=XtD+cLHv2i^i#S>Xo`B!yPx%nfCaaK0P2;cFW1} z*7sSld+yu-WQM?1Bf@RS@Li|698BgVP4ktp`_vrBpQ}Ch+exix%e`-Dfqc&H4B(J> z`)T30;m()6flGYx=fRXA?CIX!R@QyG<+lv?!?qd-F(wE{Aj7lcBj01}o$G^wXOm#MhA072YZO;1b zj%D+_{_rIAyg){sxo86HOB~PkK3gQ*zAn7@V~RtEKIW`L1T)=ncOxWkta9SA*6jU{ zC^L&2Zh3|$=e??`(7;p__=f2#<^ zS#`Bt?2CmMhB!vs)k3QM(+6!oo=5Pn*@`IpcL-KQ3bxD&mKq$?M&mHK0{-Shvg7T9 z@5FB%TVWD9*JaPw7bCvg8ej0?)*qK>}y}4ynNcW3%RID`xbY+U6LlJ`)D=XD(m5m zehL&yH@Rg8ChVQn!#V*2U};(%0r6>Vy7S3`ZzZQBDduWQ@0P*VeVZgFBy;^5)0Q*K zbai!R$}nNq!M!c03 zJIO=p9~K2#ad{`SuXCn3I@LWIr=ydsOQVzJOZ$=oOXl>p(uI-%BHq`Fcf_GuY@)tL zizM@Ydp*~y`11h;2EYPB{QU>Lwj!F86TZ?MIw5$ZOhF!M7p> zZl9NNf)k~wR^^*cflyzPs28CV#8JJWGQ?55q3J|X5JX^jk2pdwyoVGq1@93+#K3!) z5%TaJImCKc45J^Bc;&>mMr<28XOgjV6mKx}zARTlJ8W-upQKkNwER5e<_>g@&lJcv2{u0T&)KG}FevE4_lw*P z3|%=6p+$e{oFn&pyiG-*P=8D^%jcJm4u=0P6oCI7)sF5-L2w`^g`8N4<0KS~52yMk z1>nD_`~Oh|{PUsx3*D>0-O{qX_m2D3_?iBE3jMDi%{l(e_4=>R=CDU|gr0~$g(ky# z3y6ep|2?6!hM*epxSp^Ew2t_ZI`HF|rXF+<{u-LCmFB>oaIoKka|wl-zF8K25SiirteXnz8brO;?Hm+R0AK$7uL zF;1{DCn-ixj0fj*yFRXZxzQBj??E1QdpB%6BeBS_r?Dnvl1qX+dI8Yna45-ybMD=O z68U#6bx{J5+?XDO%vV0=`h=tIC)HgA%qyn|muHecdmAIsNn$3zlyPXIrFYPh+L#|` zG;QhEx zXl=_OQZ|aBzY$WbE4Jc43w_s^M=Iyx&T?Dy{8!{M4NOLX>MH2#iZ`A!f%t4ClA-8S zh-UTKl1mN>XOdmK4}sqz_>)%o3XuVL80f4c3YN^^=n(EuApo@`RG1!O-A9#R`(VH-&(6;V( zQ>jz_oqjC<6jUPgBJDl}8nwwB#Ha?CJ587no)%!MCgZ%x1=oA3ekL_5rbXj5yn5Zt zyPYAA_*}CMN;}U&iBh4cVsu-l@9*F3CV`1M6b1C=n{2v3$?|?F{P1zQzaPgao^-^r zIq92=7b{KLgu>QR-Be1IB%1bx7M8SABHn=6#2dQ3*yJ%vc&y1=f$_@NRf$q*e%$sV zsR&>lr>I2|-rRGee(MTol{}TUNO{FH_I7fU*^`|y`sj-gq!#2t=@A(uhu3StgJjQS z-u`xe>s3dWNo7XyEYcs!sUhh7mX8XA+|T> zjw(-R1Z9F@|AIHwUGI%$waxZHw}Q9ScYQv`mC9ki z{GEjWG+GISxt$PR1%q{fcLw6{+L>-ie~IieTXObf;{}j$ ztJ;-rw3hy;cl$htRF0<~q^S;wYa?K_&9_K0jWyDHRPG51JC z1ClTkZeL7q+Z5ReYN=?8|E5v`o(t*1F^%t zq#(aTb1nlwpFHs$zV}zgfdAO^WMF+Ap-;zNeWXoYu51naeBbkbi_OrhuAN8M{yMN^ zpR~Rz^$ZnqB*4+h%V-j#1}ssfff+AZaxkFc-dVN-4N)u_Y2&>G3^W>X6abi}VvW2X zM^wc?;ZpQ*Kr@_}b>66Wfm{Pm-ilT`oex`TV-VyW){u6mM51GNE>Iqjye+@LAG}tg z>o;GWrU#0WI_@(4ulNvj1p1TrPh>Ujc8Vm)*tGc22t1v2LaHDl)(Z2fA$AHh6zL#E zA`}gXd`Kh6jGBz8+w}&yuK;4RciZdn4u|jhn+47|9HdAlzzDeR0+9ZpVBp zKyZ>a1{RZq6nng*uCg(olHoRQ?S@NdCqkK@n7Fn_q`!mUYy^!Sq(&M#j?NXLhw`eq=;6 zPX7!UJx5z#mR2DCO5&@)*c<*E0w5}=PVXWlALNC=WWZ)K(r*gZUm`O`UPha7HWmrc zlH5t4QQHefUKSv$$c<{={f0(T@PJEh%YLZT+UH=%=YvZNJ& z0#gCD)i#|rIgor`)$bBAk&*TKv?&&qlGkeK*KJ8nc@|3%=h8D{l##VSzWs9qoYGTMh6|eL zvIVzI$1@W!#S>`H?2bY*v|%kVBDDZ@oAiKVQjdfWA~*XLSZTVmrj7hULw3$AlPI!h@aY&rec=(xa?;a8QYoaRriaGKtCm{e9QL*t*k4cgvN?`?DRSTg)Uhs4_?_LIRdhzL= z(pst@c;=~Mc9(+_ki7|X>wzQ3`^m2_D*=vP`f#I}yNe!M^=Rz|%QEnNYcG^y`e5gN zj+3paAuYD}?0~yOy#9)^yP?p3Lg*MJ#u2}hne{HZNihQ}w1ey9$l&-Uutk9O(~E$u zq%?;Trr*4WjD{LwOZnS;v|Lox=%n28iR|n<^v~Qvw4-vP!Lt}SH zPt|{6p&~Y-W!!yuRl*?XF;TRkedW3^f?@wwX=(RzD<#pe zBm+ZA>2~5hP*NJ?HN-8%<^r+wQd70qp)AY$10q+!dWcd~4obU-;E2i;Sbb*@Rfyu1 zz_HG}JRB8HTs3qRfEkVCP6HP`GvxqZEsZelWiWodc)?m(X445f)-d3W@R-HkllkYw z)zCySo#5knx+$_*4a-?VI5S&AF!V$^`k{GtNuyrbvh3_ zq^AjAOxk0ymh52t9zQMk1dv~~~Hbj2amlBRiLNi-SlfJYKBCTwl zSO(GYim;IE5ph4>T0JU+{|3^}35xaV(%29VuqgeMqg2kf0LKwDbfiWdO|Xg_E3c&! z%aZL1^LF&vub7G2-dNZAIvFRLD#E_)H>UVn^eaaxsGs`{Kfs~}mImw#ikh~72Zaj8 z%)$D9my%_ExE&yGne5i2DKcBhi>JLKp`_*^YC;4;w=Ml$aA2vz zAq^`M&P4A7p~#`bO?%8;hT!gyux@>Zxs}(d_u;6#jwdLXV4|(8T@OAuE~Q*W!+f;+ zlL+@?eKpgpR9n_}E}C~_caa#)nJ|fwNLVtVk1gJUotmG%qHMWkveGUU z8!#p8csytuJLmjvWY~V1KyRWd)#@067?k6(h8(qhRgjK!9%Q)RG=W=>Z~7yrdI|A7 z*=&7T$%ZM1*J7(>emua3o`QNsS-Nd97x&P`XT|!>Cn5Ds8SXQEP@(%}s-T_TT3VCq zXN`fXeqxu?2hzl1rQ9_ZRw@VkCKqfj4?yIJottP$cdoGx61%+@3Lvv04H||F*39L| zwa%L_Jkf^B)Zm2oU-W629!z1_-Gr z6Z4*XJb|$#K}IYT2sKwGYXrQ>PihyzGsfIZ(mHeJ^&wey(={pN?67kjRV^JDlH)bI z*lgguYz@bn4J8{L8$aK&7r8vTWZr*ktqBqJULPyW24mS_Qjg(Pc|vqb*t`G9W`i7| z;{}@nowSU0i=SVkVuI9Yh$C>b26RS8qZdFM5jc1;VHy;#S@k1llNC}n%GuZW@$~vo zhM&sNzCbLz>M=4*W60pDMGTzook$ugyg_*{;RuZ8X6)2waYPku8KkYSo0ymCZfiJD z@~CHuBC4Bz8h?jzYE4rtm&=*>6GNbR$OPt6LiEjDaW*aBlR6y(YtAtXgSjAu0Zd$P z%m~$Q|Nf*Wp0!TjP?+(a$86j>&845~(l2@{TivoLIcB})-wX3`N43|(!);JR%K-F7 z8g?{z9X!{V3E)QMi1I~i0ZnqXw^vjum8h@<#^v#K>PkzM$U`PVcBT{ag%kCiUNbXgx=v7kY^4C8P?7vfqM z?qJFa(X~Rrn7je81mO%yEJ#2L%yY}W4RZuP-BAKrd?d4y5@{rgOzTC_wTk{GTzENt zQKqC_+OM?nUf`N4cG%lo0*L48>u{tHXH~XE4Wcm=mPj;i0K6h${lAW^;6&F*?I8&9 z3~ktwj=CGBfBat0*g|{x#*DKAy-y<-i43Yb!-8?fa6qJD6a@ewI0BhA zmfhjQmvLsQ3QVVuJa(f^99BB6{YWK?l?gHrI{9mN8de2!kRMN@9?yEQ-k))MA~HY{~e8 z03(}hJl=$nJ^JwQ&EvAE9OxBWl}`7S5X#{<;o!{=nPD>+E}$9lYkfl;@fY`I22_fh z?wS?z4)aN(hqvFdawuWmz(gaW9%%NyyLos2zrR59!VpwRjwz_XZ2#ePc#QwR>;Lw# z*IIJUo2?kzpXv_M(<)T=a@{#u92u6BNxhi=Y!(+Gu5v;SsdL>aL!>0agmGPC4Y2d|wtFk#B(GR)VTe%_uhM#DuP{Bj4Y zsn>0%6S+fM%-z!CVK>jT*0YJ=ry?Rl`kb{O(xA>%$B&^BW1(CCnvtYg0?{bl z=pc;ccpkHm4>dPjn8Y(uTPxgcck=K>4Q9r(k%xrP)1MtrK!-tr|2RPX%JND3qu_0% zZ;`_DQcL{GLBFzH9FtyPuR}9gdjGSGMZ zIwXIR4^~%ry`kfhkN5uZ7Fb!aDr5KY`%Jv$8qYQa<7l9X@kqvwrtSOMRRv$m5ZU7F zsBM17CFuJw@XXYl)UIN!|0vPJiONLqRYuHD957yIm+PSmwUclJREk>9Gi+g6cNZ*t zd!Q#OW;9;)v5bI26()>%YCs_1C^OnZ9cEqGqD$-Y{IsKsGsq0m3O|}_MaVi@2Lh2E z8EK^fuhH>%~Cv7tHU24Zw&R)!TSyv z6>S6IxfNMbyA+lL?7MHfe{38ME{LduyNn#bNd*!TK|dOFSI5N3A6@EX`b=Z1xMc7! z>zi}vXElJip#pLClqEtH4D#1}#(;N&%!_X_UiQYJ_)^v4q5_YlLG>FuoMzjXY>si> z5c?q?9Dz-Np&|v-?Xv|b_++jO;we$1%A+;EZ{w63R*BpKR{9mUH)105AG0Wge7Dh} zXohCEF1bOj|)^6m~4W$1!9OKI*)xy0yUg=^I_Pf^|FOvKc^51KFnOpVFa#2oaiz7aK(ZZAcj~El2cn>gXiN;5)BYhqKem3{^`fJZ1A*CJ zn3=f(JGro?A(lKNSI+8!C`IyyS446dAjpdi?G3^K7CR}!z5@ZM7M%QCvw_b1Q(6}# zj|-pR!=R~)R=-7eDxL4rSH3o?z4- z{n5iEYXZ@<8?9EA!*&Hdm%CXtrxpCTi|0iRt&@FbbFQpQy}^c?0OOeqG64t?f!YHq z;rvy=NOsZu^Urzq;T!O4@jO4kiq|+Xu9rvu9AV;-d`;rcdBgWp#{|KHly?C)LMSk) z>|O#Z%JG6z*Tt|J1#LqZ09QNmq7xIVGkr7OJ|x-}y34~GQVZ)I%fKb*Pk_DpO%Yhm z+~u*=YmKQIe>OZbQuqBAtdOGxaRo`@9#8dJK}m+@o6 zBZ&y)mO%e%{yymD%dkv0od3mJ>sr7Og_;6v`h-OBse%Y{S1zA6S$t?KHTkO9n3yi2 zXViS;U>~J!meWfe^kPP;%>nP~#+XfBI>k|YHka^yb>B8J?>?g*Yqz%9`^!p4)(xX* zlXtQia-|!vG9>*o)wmyg3hOAALQ**6*Cmrsc)e9a+_l~um{{x3KU2W!vM(>Jf3b1t zxa*mxbH&tghB3!A`F6_a@YONzAxk3Rqr~=&;BlCTxdFVLc7F?rmex=QjRwNaoR(k! zO%3>eux34{6@}3qng7d?*@ZmsqP&*(g6IZlSRuXqo1zp=?$;+nZYdSd-$RXt#i%zV zAfvQhzfVJ9v~98f_$)ZNSV6sRc8 zdwbhOhE%lC_fG3e8w*T_o#!Y3pwQME}{?Q2}FX(40&qEQ`JB zz?JFwYhGg zHKtVM+W+g9ur_b3bk3Az--YM}GyG>1QSQ)Lj>N}hS1*jJ|D5X29wH{WL+W}^6w0C# z8uF_|jBj)d3h_O)(x(d|D-`ORG8C+mIQ{?wsHPl}xKbc=#6mKF9IGLW7zQhc2Ew=> zEj}wy6ta&RoJ+Sx2K3&YM@khaOaPH-0rQz3tuOz!bOK^^v~b#GuE?&cV9VoAXmTG@ zM_wYh-w)Bd(-Ym8l7kU~eBG+1zQ)cqr>33;13_o?dEI6$1D-acZBpm5{i*0!@H5}G zuo@X99FbGp**ZEvQ>M-f3eVIEpEzftbIPi3Gq_J{Gm^=yht|AUEiQ!1#HXjxboW)PscEUoAd$+TL#2x-svWGj&HI% zhS+-CLYiP}FZ$#1215ESOj^PEAcEV0-8|0VDBT!o0S^eCF9J50F>(w(OEB!elSyj3EL?0tZB^i3?#kEDU#)0XsNrMuXU-`RgTV6n#p*a;1>Zr{rEckYA$KM&KPd=yj|KR zUDnT3Ixzum0x1WKF0sSANPQZz!@~6;bm+-q+T@f~X%pb29b0@W6gr$MWw> zt!ro_?Wm%DLKKGOZU#zdo#l)N=CF7RKH}fNnB72>~G*dZiLNRIVlgp(Fi(n1QJij7&&DxN~j zJgU-$bM!)KpH-N6Gx0(x%9IAj*&$G?c%M6`GwT?|>+PrR$ ztGLZ(&@b|7`7Zx~n5`l7@9c#ZI9mQMEU{ zVA31=dK#)IYNCs(scC)lS1oaz!a1p691294$_XY7LdkK-lTLUHh<()KNi2v-S&jfm z2ClVUaC^osz7MS36POu3ES5~SCouKp>hkAx+jy!fO;4H#H|cR{95>F3Ns3N>9JMx}BxEwfzqKure$u4r|_?REzp^sA%3`ufAYDEd z*qrx%Hd8CQ_O7%J@@rW2rHTS*_d%wV_19ojVc}P9L^3zD=rV7q3Vt}1ET*CChLdGI zBMJ~H52tUPe6fD08CNcTk9e)wJSX}$EW*fH({Mw9a~$70nT33M=!0Z4oN9-S1tHwi zesg-!l2%Qm{2GBp*}ubf^4srY9lqQ9iLhn{o}|LLknM%PDO8$&3W-2`VJr+7V!9=??4%54hiO$NsV=#<$&{H?TQ6jp&z+lWcTtbKAjd~r86ud3_{y>gJ zKzwi}_%B>j1UX}QdT<(+0%@*zk}(rqsXy4^_gFpzNCF(CDBvhC0^4{bF_650fl4{r zl2}8KmjwkL{VP7W1tm8KB`DiK>3+u}?D#J;0U7B&&SY6WQiD+}gz}J*=9@vV2ophZ zyMe66pD~Yk7-&+CG#wTXRTeu4I^9Oj0AVe6Y9f4x81mv^@ccLbSK9IL*LoEm`Y}(@Tq=wn#z#ZZwC*ZUOV;i6= zN{)3N*h;+7zZ-X6{OF4C-o%*U1whhs;wz`U~ zYEB>IlpXH?f|M#unxe8Q&BGss3{hk$X%*yt+%GlG{ku^0DTGS#k38yQH!6)M_;R>A z(LFFvLjWj3Wm!4bQ1{!5b`u}V}Uw@&sL8 zUXLDqYTRmC*7EVmh)GVnMz6+pwSC>JIwzOK^GMTjRaBGYW!uRRHor?h%Z&bui8HsZ z{{*`pWHQI+otLk7h;bFBZ_DZGrFz?GmG$G^9pF9gl3*EN;FcG#(vSOj?`$PBw!8 ze^YY?@%qutv=4|UHu^(SrHF24C0zG6{=`D~e#-HzV9(d=MR(7`llxj0$L0BLJ*ayU zQQ>3J@<_H2EkbVk@%_cM#HoK!-1NCo8eoHIdlff(P_T~c_O0&*pVXnffMkD>uM5%( zh;=J${K1v!+b{7uxm#fJp`Tzv(pyTuEv%ceO0dQSxz_r#t8V6#mIG68L+6VG^y&Nf z80ScSseu;H(kZd@3S~2XWA25~)$;kw)k6Ehma|vsJ|@y$#i!^17k#(UjQoQm*Ic{@|f) z_+kFzWBH=9F+n~}kS>pbFptX8z0xNvflEm)RJKTgV{o}K{MkTQCF%&I)YtxoJ00@$ zU#_mL+A5&oNzqi08qN$iA7aWx86Z(kx#J|&Wgr_t;%Si{D!y(OqYP5b97yQK@%A8% z#OZ+;JGB7Eq;e1aK}N@6sd7>{oeRn3;f0rxj|x@i+YBBcPi2IB0Ov6F#AVc=2|6Ck z1mbAccg79x@OJJ9W{;noQgJRBjwNXXy*PNMGb{pa1%f6#eF!CyO#mT@3s`pI8e*t# z6>dbwgydRy;tID7P$Nof%0z{D;YjA|OQ7U56rhYc4vD1q(u_=*#fqx|&-xkrAZzV| zbhIf2#SV`FUF=uRWV-6KkjKk8&P3u(hwCF@I%Z8hd^z@(GGi(uIH9$;DY-|`X%Fj5 zfApv1<5vi_4K-7N7iNfZ0buqYrBm`jD)L9i<5FQTd(JSL$CG+7q@#$NwM*R`b!HkfPv zIsxk+NHHviRc2=|Ytav`5-|ZYq*um6aFucrD5`ewzZ>on-KcOa*pl%RQs zFf*5gjM-=mQL;P<=@zrRCa@!NTFtYcwe(j%O&OUM2@6i1kqU))P@wnfBXRKy*!Y!6 zR8eQg9+!TVjKn}qr;?uvE(p?-(qC(p08FlRB+s8A=XDJJfW+T&Y2g}-*J0IxwMzSq zDXYU5o@eIQ2K1xmIMq?TlcHYYi)Vq0tP;I|vQ`6IgO-NHGWk3n--{>j=dAX{L-{z~ z9z8dTo2UOd*QL2c@baHOc@?C3C8T<}CVP1%d-*1N1tfcgBzr|9d&MMsB_w;LBztAJ z6h4qv{0#t@LL-n^sf39sZQ4_V(H_0d-$2{$$!@nT)l&#p9B|<)v7u^-hQpXC z!d1tamKUXIvr9L_SPBJw!MlL0c9&)E*xk?NL1t zZ2T>CIdr%9>z}%0Cm4ta!81lZ>^pb&BocXtTBr)pTE?h5%O7Np`wPNJoVcMuQ&Z-z zF*}%W;SOc6N)?lfHI_<_wOqT?FhqJ+sPrVw1}f8hQsl@*era%Dv=TTnkO3U=Ap>mB z=TU%d;vyv0mE{e5Nk2p^enWYxtN%a6liQZX*nrugd*=zM%s}4(~tZ z;MW4^>ia-WUbYV;VPj7Nj>PtnzpF17|0fl>TpHs4MDz$Wh6gji)uc(A(#x*hhm|J* zgHqb|0KATqqC<*CC2`GI%+>tR#}YPMVH*-|12me3ya7(azw()%A#C1qnqY9zGiWK{ za{~)fAOuQ0d|s3Jg3G5wzaI%Ak|-AIrqu#q0u|&-Uhy2ncGRfMfuQcHa(c9Y-jbn~ zx-m4BDcGO%k}ZDs(7 z;=ql+-)$hby7iqx&k&agRFwP21Hsvd@$I`}HuPVhcw|zeBmvbj7=`;8Lu~!O3`&ciiQ-+()Pdx^5Cb7ZGKoLeIf#ZRJw&tdPvg;In}-z` z^HzM$zD>VrLv*LZUXNL2V!LgH`zn{4x|_fqA<4Hc1r&cHUt|PD{8kO#765gX$3={5 z8NW-ES9Irk>H#0-gG>K#Pi#AS079}MAK!X@j9YbWv!7p$zP&xWlaD27r!tJQX==G) zW-kqk?m4wd0&aXg+x`C^%h}%2obKuA|Nk?D|Kp)V{w8=SBV(DiFA9T}w*LT)2FlFN z{C||HW35TIO$n6kOWJy{S?t!2@39$zb%F5+KKWuYSV~x|V5)3lU(9ULo^~I46)`53wfM6a29hBnIa{{un%M1VGHjr+$lFNB z%kQyuD>ryV`q6wkQ}LY@1lUQw0Ycla*R_PFtM~mYcmS}27)c>_;+9w>vzTY{4CBsk zND;KoC-p!$HomWm`wVG&Ef(H%VOEqrA5c%5bqHLE9o5wL=BeHGGGY;P8*BTl!E`iW zR8C-a{}fQz)z1Vv&90 zX&Goof>_wK*q=V|ya=caixl3z)tK2V6bazSwDU4L+THPrxb*JBJo&X=Jyv;63CKnp zzf#Tt4MRWiz9RwkkPb*M^>u6XUqu3_{Ut33$kHH!ml2H2jwGUwz?B&&@x6M2C0Nx| zI+gn&j8a>XgslRF9**Irl+F;#UKEh_1o}QDp6icdk18$*XL4jaLlY@v1H-0x4g8rO z$X*j9xYJaVRkztPh8928Bn>j{yb7{=r}>n{1b%YoR2Owj_gYJl$i~MFF9`$Sj}+Pf z$Xb)mfoaBy?mT%4357m;!NG1c48*;$=^RWeijD3bs->E2jTJqjg-B8oNr%rIg>e#D z!j#?U`qy%a_@TiNo1D}%S@mt1cOASiY}kd<&jh-baW>uET21+rzk)|q`;emXB%O-* zYiE{@U>%O)Bj5#%dI_LoMgticaAs3VqE5I(|YWP4s2)6`6s8}_mV`kw>&c%uT zXQbu0QDCtc>Vj{>kXU6L^c1Xsn@(EXn+;GOSLs@Y^Ate-#6n}HzsjD7fbG{ZzYzB| z8Gk3l5{)5zBCnWWE3P&T+8WpZv#HbqscGg=xYhZ{0h5~0>a0O#$|In4s$QSgPDHf9!Bn@gJa&sbvYZ+MPJ5Y_=cC%-}8ojc6}|i~wBc>0Az= z%;`msEDbuk+fmPON>$LN(4hRr$q;zPmKv*})u|K(d7#L!hV%5?S2=x#|AbW_P;lrx zQy{qhWWS;+!8HxhqjdndVi+F@kVz2ooj|ZEmFSP22uk2u#+1!LV{gIu`tho?PGlma zB`GM)zvb~}da>WEwaO(B;u-tvx;XhTR;wshPv+-l%@s|l(Of>&Tpx#gYWh5VA45bG z@!L=%uJO0Le7Q=S)b{qTI7L|1J3fb)p;d=^85{>`U3C$~5HtXHEp0!!N@QYZ1K7C~ zXu&%sv&7XIqFpQ1XtYdmL*$4G5zZOdsx3Y8uF!>1{STXh+2L^GgP`yTudGcO3;pT7 zNdo$`TV0~j9lpqNk#~y2`X4r!%GcL!tJHiBNNcF7&khJiriU{e5oFF}rUL%`CgpM> zJ0DRa@$%AXLk@tws%w*x+8oWXE)}E5b8GtXelAa*Hh=w7G-zKB5|`=H+@>jbh^rkJ z99=F!bUg|bt{+M;y5t6wU|9DV&=!yzu-?jmwM>2U6Z!^@F2>yP=bUTjJn$5|uWb3R zlga9qDe$^}Q^AIMfb0>9PA*XJ)ffb#a3U5b26KU4l`g<(i_Z7EiQCVoL(9%2c2oj0uUH%WN`b`Gz1$-PD%HO=u%))3AP!p&_(AkAk3O zXKmOUI%52W#262}=dQ{f!VZ_12o&I-yu^VWyRC4b*wa-|kH7?w(h9fd!JZl~niH}v zTe+_4?{B0&buiz6D0C%BiR6#bFli<%gEunbl?PP$Urf?vAcA9FZ?NOZ%y~-Q@L&f9 z!(%gHEE=v>=xNXiaBGCbEmfUB$XfKwzN}lSGW5o&3D5HIvRA@vR;m>y_6=ZiXv?7d zYw9{GnS8MO$M=iZy)vOZIpN@u6IhS6CJWgQg=!dwQO=kxaGakCc)HH1bkTHalpW-& z_XGH?cm=jX8hgvEVakVS;jQ8-tx!*BE;LZT_1}`hy8^*b1(v@1gQd~#%?=)|=3b4;4XIn^EsY1%Xah~A(H=s_9=@w>K-L%^~E+Om!D zK|5}fzgcXS`ETynQmF4+K^1(#Y&L?HI{=17%~Y@m756)49ezl-B~a$j4yq>S_nh#i zN};;RLYEA#7R+1PD#H!Gt3R9FnkT56il`a_N>X#5dM5SXETcT}@U!=}*|^22|c) zh{r$Dkx5j$usq6!M^M_~R*_2^vu?PMgW2~mWKzfD555~J_s>v8+)%_i)9h67Z8A|@ zY#kQhMUNrL)#9AcX)X|$RQKFQOuwI#>Dk|8N1 zVCB2(I?TXWcbq$2E<+gXw(9fCBR!LC zhg50RO!K?^z%bK0&$mcmJJOv#@lK;YqQK+D%K;!@UG)!)shx?li<7CLZJKoe9Bi61 z91IEw7h76GBMc2-SzXR~@qf30&MamP#2W?Z@GT4A;P68e_y2k+8nHhkY4)fZ6!_Pr%gFtod_q9}n@6h`%**`F}?A8qk#wBniy zYcCRgasl{geI9q#9Z#+-CnPR-@jlkVn@~OfH&JjHCCaaX*Jyq?6}-|reX_DVH`11X zNriBRX}^gckJ2UDkR~GZLj@8^4=mR~9fB}n}VAWySUi<@DDqS-%$ z6k}S1`M#319%3>_af5v_ed4A$nb7OKYH&MWDX}Lyt&5o)rDWdXoq>4f@|=o9_g8>tvdqROz02lQ|j7SF+4j z2y10~bZmGnWvCXv0La^;iVd7f;FazJm}P*U^)>k0$yNrGDG>-ss(0r0o`gURf zn&XtXpjRv}q$f)U3_O`3%uKHb>ROVxN8ys{A%>k_*Cm&EB$LB5V&@JHf{q=Envxu5 zN>-bhXA7X_1PK)V;KzC#Y3Q@GnUneG4HWj~Eq5SkV&_K|TTW-K?bvEIYl;`?LC@aZ z2SJj13auI@fF)O178b{N9`Y81{~cUS4gC3k1#4igw0(LgNkzJY=eQf=TKQ*e=SO*^N@ZPbX+^PBYNZy+G8wM8`@7?e;J=;LO@hP^UQdH3U@AMDd4;pnaxrLBvXzF(e3F5< z1O^mS23&WC7YphSOJd8&c*0bK`kzL_K3aA|-#*$ztzofhLH2zUzICAwvW36a&Q1z7 zae$8YrO>;IKJi(8p;5+ZU=Ot3(Qmtrw}ev z4W~gdYkYp3%N(+j>rei*`Gs*u4rp3ynb>-)YXt(E7HAb_<^bl_ zpFzH*UsXsR##4PN1%Urw za5#hW{4$n2AT!lF>(_6uB2hQ8y zub&V7vd5;ZO~N`meN4M;&QrnMUzeX3*I_wNXC8q2^9@6f9Vushe~sx)#)fsM2ql#; z1TNFHrPl*l&Oe1y!L9C2>C@A5cfjq>`^(_=vhB-mnSC$!{%)P*ek!EOFuBv|&;3-+ zu^MaYyEqcz{nlsJdO_zt=%VvN0SbvTNne(8?zSC&$Yvs{G znxoIh{=fVyXftFvLQ+_^J3WpZB5z&8$Sa1d8-7GA#;f$`u6Y)lL;J9UTmWv5Nmz`} zUZ~8-GYrCZ9&YF>ZFOkO)rKQZbac^v+o0nt;Y z!So%cnx!O=cdkA|PRvaZGXS8(7M^0rn8vnE_QkC=FvqEsIeTDpjo-{}mZ zbcwVN%8lh~u5^9xh|^Zv;mY1n8#?>@u5~P0M29_XM=iKX5FrX83<@qF#6GCqq4xp? zZd;cQLcMt2Gt5#rA4nq;nY(6E0&x!c@-A!-w!D91fR!^H>phe44#1uMEf*=Q+{J>G zxP_hHKU8jWFa>P1Fy^qi$32k400xQ3VFHV_sqb1cJ&5JU#|6gRKcn%8zTNVj@zbxC(EgJT4P>GQG{Aq3SH&fXboKol!$#|1Y1 z+g1I%X6%^Dq*2Jw3D9kKF!jSzRAWALC3`)!1}V&fXSWGbdfl5ahHU0TLkCOZgq3Y* zZ6~ssM;`bX^A2fYXD$!cN^t>^+DzJtYy;zRyfZ^BD;G_#_}>^d_>AG;Jd}PTQ=K|E zg8l#eZ{A;t+0Z^w5CK}$R4i-V`IKH>g|iy0(Gz6>76Tbyz+k}|;vBl6!^qOEkrOsX z#4^3X%PNMj36FBlcBvpG6Pp%?;|Y+hQo4>g1NOcmyuaw)nX$O851^Dt)~qy(nM5wC zZ>djP!+ZkSl2N!BubSC_khP4MiM?j*zwE1I@b{t*P1N2jB=8wJo*TfYekff+HiD-w zCgDJ6qT%rXUH`=sEU=ceD0l?RS5`N4^cupT%fpYEU9`Re>E7#d`MKQv$+e(0Aq%5K z>nXid5d3~R@w6}S@;n3g`PE9ZrZtey zF1TC5nb)*`ya~|Bnb{3|T7KS^%r-%V!~DEIS-b{xRmHJR3j#hSm*Z}C1-jn3YZ6?>!91D0c zyo?JlVS6;rhD8`Lyc*`BLiFgKjQ;1Tea_hMC2|1>ONQ0Ora#y_rw@zqRDcRy5|#8IREtxXnZ87 zI|glrSd8XNIQl91OLGUJ5Dco5LAXNL%(-={Mt{NQp~1AV!DH2@I1Ag4X*Ey-sQ(-J zG@=X}`4Z$}sV}$`fENgAGDxDEj9pGxkcuxm?2&l#<6s3P*(;36DruUAJ_NGw0jCxR0KC>T!&3P%}8e zb(QF4dUvNNV;Bohh)cF{Hoo`M6f)kRXjGxNH+ossa%JxduN20dQcb^T81NrKWot(-*)9vA z>uQdO1!@)vfa2Nog&zkNNFsK~tN^>R{GeGWsHc5y)QY{!oT94|wWL*1+^1zq*|h!7 z%Py(HU{QodryMoI|L-rmSv6X3g+Iq9)T}{z2 z4$|&!{8?Wtm<(8|YJ;nbkm0{-a(h9a_RgRC@7Z_2`Onwfj-m8gamM;mr7TGu+Z-SN zK%#~5DIEMI`8_Z{xV8`Y81PTxfeZBID2JRLQJw{xC?Y193Mp7``ju`~Qtm=fh zD^ptlEdJh1V=a^R{{@ghZ@;kZA|s)N5npGE9U>zfd+fIorU&6%OJ`u%wxBs+R})3S zVJw}on9ZD*i)}%3z-|(87&qnT0a@5Vu91uA7BmOA2~ycX!q)PdBiMt_4wAZ}z-|8{ zu?DRi03i~Z#cx=>`jyJZ!!i9@WX?dEbmJay)Q}h zz9iB6l9ccF^OmH1Uy|~^B;|cc%KMU(_l2G>^t|nvjKA-7XXR0-a^=$N{zxwV7n0t; z=;w$V_=X0zz$Yy+u%3m7}(lZ5aE48Iy;Ygyj} zX8(qmj)-A?K*W<381{7!P#?mIIyvc`^wz49Mhz;GCsky8&9m%{l86aqFhmjRs+DSug8bKANR ze$TJa+WP3M%Awbe zYbw$AQmc0BHr(yuqym;n-rDZ_RI3WdH4lZBco9@MjQupR3iBa(II&erQRc|E45);0weY_|72Mt5qL(jJm?jAs#l`nv6hV#<}gX$ zKdZjGCksf;oUkklrhmH48;6B{z!Fb*17YS>m&V#jV$3Baor&Ksa^o{~_s4Zv{$QFz z6Nn9{J!r6|=J8rS;x?do=r!G*m9?^c-3{BCX_m5TA|paIX=}sZU+FY+jk|BE`AeAm z0EM$8VdKVS3C2Wq#2R!ZN;8{G76hOdr3X+hJy2)>=^YYQ34fMANnG1@mSKjyjdX)* z(taJw)B=6s>_NiTAeF*Ut(b|q4I-S|%mU43t~Ul`9EFpNJ4HqesnR0>hjcs1GWWtj zwh=kBYp`|?exv+AIlMkj?Q05c5H-wD_FKzlzZn{qR_)wI6D`w8>P9&MMWPMOS6GgBn3!<{?I_|HKmrkt&I7upD)7i9CcCLw47~G+hK17*L|U8RGWHKt1;bN1XP^#B^XC{JEm@QN7xPI z7pfbGxIHtjs?S==M@k{IYLI%DE4b<9%C7jZ7k^Inup@^H5Mlr@*M)Y$En9+rIi#Gz4 zT-Q?VXtreQMR`7kiB^D?a?Q-XvtNdwoNE}MG}N!%1cP$A=tQ#cuE1hcEYNhlt*uLY zhkv7sa>`@XFCt9pm`Xxkx{z{30yrC2PjO(~)>3c7frcXF5v112RD;1XiUCptnDwAb z%>(O)XO`^_+j7Xs4$_ku+!vK}wb!72s62oX(_RlD0zz*`-fkWI!0k?1mTU{L%_9zq zozxWlgg#TNhG4uVSzS!nYr?voQg_x}#kxPpz(1j2F0=G<6elSdnhjh*b7lUn zmFc9ve&7YiuRC}!rfKFDaBa#^Eq^mKJr8Upn!H1RuBk>KwWq*A>h7vC*lXm_L4IJC zvEWegV+1(&!}d%|GNij(0@{Sfp`qni$SgJhR!IG*D(h-x9c&RVg@>(b#C;=~efL@Q zKi+ot82v@gO;Ffn#yMLyegGJoHt4de`1 z8hSTwgO*v4;k%kSc&sw+sHu{I8`ZZWV(cC*_&Jd(1lW*ND@AoMN<-P!OFEwjG1 zoc|=I@dfxjjFW#|TwhgQ_F#kSLYwD zS4R@*C{dCGJ|T80KD#=z>=|$(l zLr7_GFC_s8+CGkoot$qX=_ixQmSJdMr;RLg7~50#bV#vpgwByDBVmWNofaD6((-$8 z*b=XNyNb>(zB+5C_$afR-QAjqZX6We`JlD^nW}l7({}{7BIS2Sabyi{mx|QIof}9d zK8jWu%jB+{60d7G|9>XGkg>qHnjkq3rjQ&1Am#@U|0sHV|C9hSq80p$9gYhM2?}?& z;^;yvNb)C$sWfCT%e-?~36*`O3gnqz=CL~w?Fhw9;7bu}8|Uy^Jt|v%Gh0|Q=Q$uC zTd_l!CM?SkxSVK&G|=S_SKd+;?=@pE{^2#7K@8R8wQw|F8j|; ztN(Q^uEtCIlZub1%q5jx&fsR-{@krp`;$U;Nljn^*hxjqhEsSPPJWRU&bMN}*I12v zITr_6KtCe~&VRgAhl1Ay1N{Z>(7pX#kwhR&Y(=Y}!trlYJViw`NDlG-qG!o-Kg!1* z#J&%fyXvQnOBhCeIEJj;LHW1IP=rlQ18LL0%~qcHgC{|`VG`53=9m|S4Y2-5MJY8vpS9`^V)Pjc^q zCNlg14}aPjU8@)T-}$|<=HG#E=Brzw8cI2&DcwojPW~Y`@KnJ&(yGGy4ZPLTPm!Pn zJ>)^kb`*2o`XY@Kn*Xafoy*ar^n)>$!+bX0Ge0aMCxdVj!7H9CJvt{&{UbBF?_ya- zK2)0pJWKq<;l>M_yYI#AyZ;05!~K5>Wo~41beDHV0S%XiVF47EHyH~of1Q#sYr`-Q zh4=gljW#%!(@AGpYalMPC1fykXgZkMX$+}a?1s{RU%9eE5;AojX(}z*K2^4oT zysFD;wkQn=iD1!6QSF3butdV>9E>JWHR3thlEn0-xOIa z5d+$2%0eLFl(j`hX|45D!qvMjVa!Q0s9gC20n7YfI5ugalIhV;-Qm!>rayj8ORXlM z98Gn@n#GY0yHz1QIQE00x>v~@%AZyy;w_+GAlB=}t^)73vuMqaXOpSq-E8{zl?5T}v!~ia4wD%`Q#jGR;`* ze>R1=0(S-}!*zw7vRL*kD^56V^1VcL(TcS~c>0?oot)(u!K8U57rX-EE~hQ^&~ z_4w42y$;S4rdt~|epA1lla&=r|2qZYx)R*<)DQi1dg9qZ+x=k9PDdb+CS?`biyd{# zG>$3Ii(L)++4r!2QdQuz(J_K0KDfsXPwG7CfmisbpOJG5=Un8iM!iEVFzQ4W=dxyT zPyKNDe!G(*kM8?v*lWBqt@5Y`Y4zn>``KA(|NC^`?a>=QFP&{*FzXBB zx%|QS1oiTa!b2&#W8Q3n7W>vC6?L*s?#d@#psd-4j2ccDA)?PBla5!@cPINDlUX{E zEYbmyrNbI5Tphz5YS3@R-TT05qZ@8J7_ zE4pd;jHi-_@EsXz!Khv3*-mEp5&*CWz+-TKL)I8r>242wQk_8Sknegcsc5q8*%p_l|W+R+WONcqO6oaZ0eB_!(X`5Dg70O~q7h`wYT z^7Z)P6@zutX@6&{seG$RU8}jjw2%CM7-}p(g^tj95_}2aqp8yq;QWqPEFe(`9)5+u zoJE9P0EZkD`j2{*11x_=s8ys6Y8BZv(#92nTSew~(AJ)CUXl6eeKG{_*1JNz4>tfZ z^zf1Hfb3|@h!K9_gD);ma5Fm_sq}=ox?r+XI9%+7aG?uw&5DR7MfA^* z1c=$-jqT0>cft3tN7k~y%M%P~$f^wyOOj>+q|IAeJWekP?y&)z2${x0&i6fsM5^Ob zly4XX1Tp)@&3sAXhYva#%MO))r7Qv6a#xq~S;3(BWSq+EMk*;bWn7mDZOG%aDuGp8 zWQDVFh!1Ql^37_Ob3}+G9240!&r4Xgy8JyXiz}8vugkbB<(j8=yu5NLJk>u~T*9`S z3V2HR_aQ84YhBVA)iCL|NjZx115vSyx#Hos(}+IPp|pN zd{*jTA*FT_CS`roYv~7s0N|$w9lAM#+92z1DO!aTy|rnYUqv?ov=YlT;}RS%ouq{3 zt}MfzSA`(SpgM{-T?oT}qMQxl@4^Qj;oXVqdUIj&$vk^dgHuBaY-)IGRUmPl);`eF zaxUl#`Oeu*u8dN_(R2f1=JVMk2^g=4^Q!Ptim#+w2Jhk(tJ!6S9T(A0}oU;KZh2@q2m&YkU3ah|2<|3;U6T;S0ME&@34e_>h6S4hIm*$F!IS1 z5bWNZ2mWVA4FEG9cf8JCq%PU}J{XU(h(%p5O()HR?uYzbitrfD#fA;3ko@XG}C zy^rCj!lpa-7qAiJ6G9a388uW}S>9L}-JzQIjKo+`RL(&&<#GN&Lw(flNihT91t~U% zquRT@w*caex54y($Y_bcejR;h;5jU-gi#q$j*h|txPADDHux7zHMa+FiT;tn(tCW& z7vN#*;O%~N0fj$ovdFE^XGvS+258BVT&@M*0q~ybwEu4mj|l&l)W1N>HS~mu9o6XQ zY#R*-z!4aR;^651s3ML3ox1-T;HS4Q3qZyIyz@}}w@F(WWOt3Z{TENkGM4^dmq>%# z{`m0j-+S;?4wrF80TTf=mjN*f6ahDvv1SJ9FhQEmDB7d zlSgIpvQvB5-2+WR5^5+?2Ep-oetr4{O0wy#+R7yt5om(wMnAuXlFfdTZ2okU$n*RA zoA)18xk;0_PU>`XzuS~atbtPMA})2dx$ibVMfV4DyVYeCO(#3xsE)=RQ#`+_qruGH ze~klE?ZnT${c@X?kr8skOQ+NA7OAamdZu`18h?ak8SEI}ZmTMZ{$PNcH!s-in$`zW zT;`MyJ~}vhwwp+dPk&em391f4ojvR($cPz4Kvb)*LU#&09Y@l=uC|GQCv4 z(mK|K0_%|A6R){8Q5`4svZ8I4L*T}|yPSsf`OIojIp`xVuJzKJVeb!U4HZ4W13vZm z4J!c6mX$jCX57eYeopda9!|7!>>Fplp;j)wZjP`dWl}T9yLqslC0RD{qi_2Df0_4Z zcevb7(|%>x4?IF=dGztN($VZdzwSF^SAf=gI$grY%K23O;0&lB(=}+vc{5qmQKqY? z9giaXAkH@NI&^1TK(<2y+Y3ozFSI(^jA)IMWhZAQ*@@pw_J|%o_r4j-I8Sg!5E{iT zP+Wf)=lvn@vcla?m#0{BT2z%%e_1q)o(B>_?r6Oy&ji|oC>h6(Gh5%!MEg9_n#~flq$4VC&#s)|MfBsTJz>pMa ztl+G9ok(_T@CQX zJ0VXN-Qit0Zk&|mfAwjxlwpO}sbW-vmBJ!iAbEgFcnO~DiA0#Zn~&%C2U=&Q*4dN9 z4G^9zR^{*=DXXZj;v~=G6r>P!eYjr@lsvAB#rZyyt36X`2la5B*5GLE=%9*)#MH@g zDD|-KTPGSQQ}E`iQfr6POoxD+X*>PguCQ!PDNt5w zRx1php~AFT;Aau%RmD61ur6K}#LIx|%tan2ROH1k?0#TZ%ETgBG@fyu>zfnmtV$s> zTd~|yU2$=5f0`Gc_v0iBsWu?L%jCEQpB?Xru%Uz!@*~2A#$kP%Si4V_%3oRs+{P0- zO*2bhMcwQ;f`LvT2~^!T!R4W4*vUJ9#z2&fN1-mRbP+xkhfjSrGAeGxur4$RBul0j zpoHT9l4){oVqg+ZjXtLf!bwObLCgPFftTJD{ah!i( z#;kFXf3QaT)&=L77;?-Wv5qPt@J^`9fs=z80tOrRt^r^U-Crx)ad&9hX;)0PBdzN^ z`dc$2yaZR`(hdU=o)q7~rjqAq`3cyA*u1dAqM}?wu|auowa8Xbq84Oyw^kF%Sf$Gf zEMIFI={VC1uy{l}MZX8hz*@gstutku)!D_Se<=&?n}V&0DGeZkD?V>S`AOae@Z7kj?DF>_gkjg&#-Z@_;&N ze`+^@xWNDA1L{)Cw{e07kf;`jO1{5hLBKXuy}+|+e%N*pJ$OeUEjsnb!sb#uHcwT= ziK<>)E!YRwIO=|>eXrK5U{)#V3UG96KHqZrz}Y;>fVfwII}8@(RKXxP)&lgf+paN( zwf)>tRtz7nXh`LCe0Fvy72Ov7)~u;%e=Cbu54u%lK@m0K5+?Ug?g41E#GY;mq0_NnVBVAiDvv@66{bPs0 zj(K%<6WwQ(m#sUzAy-sI9`49m%Ed^a=KY)yg(@FAo-wW)WTDi6{4%D>OhORIe^((c z)e`B_aZ2RyX2AXRMbM%^tY|xq>x+vB_MJhn9r(wQmw?~x=6)rnrL=vt_YpzduFc%qBA|H0lV7emPwTtc|-*S zji`V`IGuXvCK*k?LUf`SLU2;qe|k&(5a?B+lWf${6+|IzD8B72l+^CJhURBUaIypU za^sOFjA>vHtia49Snvh)MnJqLJo&I}lg8N#-gJ$#;;;7yGf|IMUkH*^i-$DC0^8Ps zUy$#!(L!T^oO~Sbi)ZV@jWbuWDmmXQ|MT|JP=9CQIrqS%id9HA^_k^grV*;@392r_ ztv}x1Jl{3zUrcEaSuA(vXVjz2WRoOhY zvbEW}i+#0M<>UjFuuTPl11OI7ufOi;;Uyzkvh+oQVd&}U{&i132)r9F@P2&}Jn{eS z1&9B@;~wWR3q7L^(}D07s~4AF0&fYAe)9q*)bnk@t?;elw?MK z%UvX3vSeDtj>0b&FV5Z@ct2oq5OeS1+T%hqZ6Y9MSi~dmV(DG_AK#o`%;M00eSWq~ znq>Cn;?| zN)3TvCNR61Pyq{7v|R?B8l+^AArbt4jpfODhwM+WZYTS}y1ysubT$V%{$0{EX;t7& z?0*ip%F~y#IS9m0YMPPN^*UYBgzKtY(de7%p>C2qFK?>k?lxN_Y&H*7;J=?m(l0BT zw60U!956X|DzdBJXU#242$X-G6*qZ0A%K{J_Kjym!1PWFl1!LhaZ}rm6$9~qASEd{ zF|Z)!VWW}<{=a7;@=N@=U#8U`FNw9Jz&!`j|4^4rRo-Qb$80L4Srmk)U{k4>1tuQz zdH(Gl#HytB--3<4f=dzmm&Biw;8!c)x!`~ppg59q4pXG`Kd$oz$tdkF=k;B(NNHSL z+@@gp_WJ$2{@?cDET2pAy+Tz_5gkeFvhc$&Uh*rqnoc`KwPA6Ho zHK)sU-gK6wxv`dogXL9|WChAxMS-&|9REG}>*4IfoAbAf?!l&%wJE&W zZBwAimKW2*S?)x!)QUw?f_P$Z5b`J(OC2#DXiFxkR_y%O^0mg;!8${s);0?}*2YP-@5Z3;xEJ_Q21)}s8aGx~vOtreG zX(j?@0_=7rFs|CVHPv~4NAPf$gtV{p_c_qP>*A)KbGYIJG-nVOcuCpiex`_^a zZqb1ktE{TZs-_$3G3+Q|CPK_a1I*wv#LRpOCkUh?Ao6KqEBN?-Adnm^=uMPp2w)^v zCqfCt39*P;l+@svw_@a(3#(ufBg2KyanVf{4J;M`MQ7nUph;tLiU}a*CVd0xhyKsA zIS-Bh(-ci^n25!IC@4&KuBxURi#)v8bw-AgNd5VsJHRpeiO`$DrXr-a0{0FJ_T+doZ9n@62szPKPVidYD_mbD>G zk0uw8%qB}G(50NvWw=9^e5lJEW_LJtr_7G?gVM&$g20r^6tHWEk2Hid$_UzvJ&Ka6 z+{NXbarVk?ttI4L+6M@L)&l{4ZLl=weoe2H*Yw}qrZnk)BTQJ}gmbuPY&r*{d3IGL z)dPlt~D=0rxg6`&_n64AZ`{<>tp4t+RU`xuh zte&mw>MSqeNInCu&sGZ{UY|``q71+^x)*Ki1grdix5$3X^X%)47gvZcb<|1&F=l$s$NOwclgfhwf; zSL=p`vxesPXo0~i8>gmpL!n1f+}M;2rmky9TIks}*hB&B`DxV5WduH3j%7nA{+?B3 zv2uuiCL8`f)1jYK8Tt%s#Ez7GJ<{$-`CzL$5K<>~N>`9OR<^1GXe(^u1%p-kZJkwa zMpM$`WVxh)BE6@J>ojTBRf=K*bozI2nO5KJ{_zC@9?VOBWOd_)`?uVp*EE_CAO=jg z$IW9K#)vT#t*8aWZ(Bso18}L``S9+47w`UmcspsJfI`{LBeXu;+oZW#(hBGc1O$zC zQ#4RF)w)*#jx7h}OFNr_3im=yV^s<}T3J&sz~-0flDWOBfGJ>ir0~9Yri`B_)lF)z zBZz*T_#_7#~khbM*7AG8KEZmy0XyL#w}9|-mwF~S-S_lq{VdPNZ#s`VnO<~)!kPxqNtbESme;J$`EDmvG{e=} zx-$W99s{1{Zk*{BiL1l15T?L({B-q_7b} zScp_(ue$Nt%TK?K<7AGZYZ!SLY=p)Zw(x-x;6rhk$;fzB>Rk`RTBh*|ey4k0nnj@* zQrsSS6aB}5cgs`^q@vwP7800$?$-oxnCwA9abPr_YWiRjVboE4Xc@6shKEaIT6e<@ zh7eGMo```*!CS=%7Dt459q-cHV|@(>?P#zO;c=RC3R+KZm-M-@-Bx$g8-9vttKXw# zh*~z%Y!Z^pMBx@fk0J651xz!eAc7R~2!+~wH3~f7D}*@R##9lcsX!8cv=F$kl7pX* zC4>p!cd#6Xzf1dDx{(8Ykcct#l?VHvp(tZG?er!kqHqA64sCD>#40?3qn;9Qru1=s zXb&PGGe%F5XhG5MXger~$kRsN3HiAW9!Y2^k8$vOkk~`8&*!7J-UFqvN0F%8qb(A- zJlO>o_ZW4gxohpVqg~B^XX&C_%2gm9YIB7_fvBbkEL~7Gu`Ld*HzN#eF&-RXK<>s= zEKV3;3@APueFpi8adP2uX7YEbYJGvNe_e9af zu`=wUi!q@Cql?28usgbVwnDc@7x?{w=z|L>_@m$=9tIach7ZVpCfnb+Yh>H+-qX+n$S%4spH=#2*bH4x{7as-5Sh~A&Fht>vW1J zXS}a({&Rn?>g-bmw$ypNefETox6gxV?QNgq?ViX!kCkC(pJPG?+UMa4*lnNBR_J#7 zR1);-K1maM8t4#z>?#7VN4qR2VxjCNK$s$g_A~m+>Caa00xSS>V{F|?;EJ3(BfFbg zH?;lL!;Q>E2@;#6;VJTxF{S6{B@)0D$EV0kfKnVE8^AnGcz?Y4efN&CHc?{T|&ruF^{jn@E{CsPwxy%v38~ad!bo&62_^YzU zUW2=HwD3c(5VUCVi1R@erETuR9NU}tF@v}aPYb_)?N{Kmeu0tNall~=cI0>(ZOtNK zt~mC_sw%Bpf&3r^dR>1d-dO^U>tKz2<<6?C;|dq$UC36mNe0yje83&@A?9U!!(vTuya*+s!ZC})MR=~Cuee9xISI5=lYzQ9y570!)yO(iB0TY+t5)2gsH!v}mp#uRbe@%1T zxDkf${uOf^RYfow-$+hgC*JI?ckM)~RAn6>M$*`ts*&WCbTTK12u> zLj}|_i_?q6hvm<&Pfm}bTfRDZd9k`*9eq6g@x|XxD}8VVgZk$hFtRcLK?x~M-@$*R z)=Bo|8!Z=3M6W|S)(RK(;uwU9c6Z?U&E@X6UQF$T)p}7K_vC<^>+?eafAKtHd}2V= z3%EMF8#bT{QAlrD8c>4~8e+czPY-$vs_*UUz^NK3078AL=R^P6OJU8k3Dmy!@9}D> z2MGRhbH5(S8i(g#o}oItb+pFg)hy$5>*&<#GS6A!Cox`9HcoCw0 zVBo{q>h}8Xq~+~iZFV2 zyu+)|AdSJLmJ(x_zD-aX+W}$o2)uGqHdveNVaVEy5X6bZ773b#e-lu``Haa{y*tqU zAn`h;Hp4@Mi!D_pVu*$B1CU6MH@fbr-mSiTx!l~YM-XK=W$;Ng^wa@+-=Oi@?--R3 zLixoYAq^ZE9BFJ1ANuW~l-CUaC#wztoDm`e=%N>(coG%fksc^fZQB%Z=u)Dpb-T)C z4}lB{e+k_$O2gv}e{lHG5>p^NFch&ju{k4IXk{c83sg?k7Vt`ZeYBjKt~z80Q$Ki? zB<4a8-sZaD)z=Y*7)8aYF$o`V zX8^lIMfSj(7Il-|4H23Vf)MgrC}2rL4sU@V^GM=5^Lm6Ke+J>4hkC*g@&3!HC;b@? zRZI%+RYR9aOBWgtG5DlDs%KPr2n{+W%MR(75rXJ&Ae7@tFnHaA$v4nUcjUd4wOx;Q?j2{WMRJ2m+>gQJP!CU6Z{HQJE2fPysEB;Yl&zg~Xv)ckZv9JWP3Eg+Z8DsfDeu7OJ!Y6*syy%$e-x zz$Kj#gD&Ze5Ohf;2orej{=`03QM*ezY`mbm=UC}5)gD2OJ&+4{<2c_Jyx6R+Zmusz zat_1Ue-cNv__H};@KgG#+K@4_6fZ$H`z;O&)Nj=m+WppK)d9H{+t6y3WMrf6rUFOE zO^0dl4CM9%Ki{stTyE}13U7|n&FJ>jpNlSsA40chNQbAQ%VHs;+q2L_ce?5jUAzv~ zI~H^U2ym2iN75gME)Cv#!dgg^2lm(_xkC>Te^J?#5w^0bG5Y7QNrhO?rj14@nlaPR zLTj>xAty6J5GNSPDPZ9QLn=ur?skL|23^WEwJzXaWab11ce)@WTZx9jOi47g8wEkq zWJPQ}HlFTa2*ZpJ1cSw1$nhi%>xHtEH10-VV9+f|qZY=nu{;=5@T3QW9A-*t=$XNS zf5eTB(PV3k_Dpa6B~H{G)!y&v1EoQ>8>~3+{QP9h=f|x;@e~_rP@gpkDi0%qvDr=Omjfc=2UP>R;GZO$Z z4<r`-P1h`ahMT;aF8jIWx+v4VRXJLz8@RsFzA+&r546JBo(dB>Lu7if79F^ z%UUS)f{9+XiWvr*C2Q0+!3J9v28I?UlN}5(nGqsmVsPvoA_pbd;KF!H8Y3MDgDgSP z(+$GxSJb3=%&sd@IP!dy1O_XVF?v=&;in7@a!hLybFzg22{R%P2sl_z>%2Kg2o?+J zd_VkMy&Il*#N?h2^zD(^*h9S-f3ce|eaX%Fp*8VoN;9%(0vJ5c2cmE}LOetJ7UXMT zpE|_db3<^*lPV7powF_O84PK_?$|wOiRNn5>8eB4XM`Zw)4wdMz>L>eox05W$f|h; z*<300WEBqKO-^<0;7HnI-)W$%0Q0J~YM#MmNr*k0+NAZ4qss`>4uHq`f0=4-h|lvQ z5Ir^ssd!SQ!*j=RV0Y#}s1bY^bRqbzv3tT^$kJ&#>OY|k34@nHN$o`kmzJJ94!~sL zAptW&5CX;to)uumU=L>VE%L+l2m$kDOCM6}Dj~!ENsJj=hzzOPXs|KgWkI8MX}Ur3 zcmh$-;%BP4AwJKKK=fcHf5ak!1s{$5zs&c}Pb2g&$d>$3>-HWd`%-i_wn1=MDU8%s zbhj&alo8cjR5;z;5Rw@oh!TZOXnDqF3X5KoZ=<)HHzS-d2$wWdE1NVwNz>g?!C0P2 zm!ky{gHIa6_k7}oYtb=Tc1XvJ5JU&yy(W2b2x#FW5FI0MFz8Yde_QKHVXP@xB&xBU zpXp*W&|q*`@=I;g*xl4wH>!8-EHc@{kdql9GADQ}jt+RTh)fg5d9&9qXKhY6bW0Mc zg@drZS|_7Snbd{`5FB<&uBh!OZ)ql5o7VHb=?(@s%n3m_V0o<~OWM%bv?0&u|1y#_ zIAn>2S{HQpP&oA{e^$`Q1-qHpAc4UOk4!u3{h9nGlabZ4r`w0*1tJt$F^XJ@Un!Qe$jtYEC}e|bTFA+5p6U5IREj>#T| zFw6)+Fj%bBc((FuYlNijEKVtV!KY&)oVd>R){>5RYWR2PlmV5hY zqxKBqbPq!uW`rOdbP$GTSH3n%$UFx7=U6|&AX{=nrR#Qk@^`smzy6@Ld5ObHVWF~; zW>*d_=zY+Ef9TdIWV*Q_Br`$~B+B7Xo+oE$yh&+S`N@HqKCF!lj^xvEx;=Ip-7%2n z^&cp%wqGtsR>W|eY(cZu#^Pe1sLHD&Fp_V;$zX=2`Fdtdq%5VII|Zg27y>vW1OW&} zSe~u@8iD}Y)ZPLRkJBb{09Y%YrR=m^-;Y7aaKZ(`e_H=p5Hgr45Y}d%4B=!0LkMSt zAP6P4C(pEzmQDa|mp>UBeKY7%nEFc2iAQ=k2!RAq-l=^$KT0@t%%(~PxQC1tK0iOMv@Z8 z8Pnjuf2R&<;<|nxmv!YAWYIhhBZnnQO+8D&xW@rxQO)}mdaBLsbJJCa%=#c4&l?LA z_AV-zr!b30nxI*jtwndtjtn$7&bTmJtIuGT!4f6VzNO~G7mF-GTg$egovb>9);ZyM z-kqR)DtaiMV(m_JvV$QEGeQsyT4Iy2Y#vO@dJXOJKOK1;FNZF{Q0t~$ z0AaYHS?9N^J^}-SnNs@KZmjo*wlkY<8+v|f8(Oc!obGH0$&3&L352vtiv<#;u>8*V z%D+Y!VUQ(8YT5LvZhAst(hhB1he?Y?EreuuT4hGhgF>GrJc)Eij3^PIy4ASBG z@MH{-U7^x7!>=Pto;h@hhFaGMY4^{or1$$}M2$yR9BxWEQQL75M~G$nxo?&elRXT1 zm=PlL0BJ6p=WPTKv0#n)w)l1A{U{u|^jy0qoF3Yj9z^cTO9+i+WgKoOJM`Qre<-Vo zx|cFNO2c#q0~+RpC^TSw4wJrU>fx7HQN!R}5oKC#`DtNeH--jp1h`1wITZAAbw*!+ z144;Ecdhf-mtrkGbO*ja!qLmkk@CxL7wg-*qhllO^5#?e*DUWZ*SkObe13Aj%Ky3D zoZYT&f8YJ`;fM3Pzu=DsmVbRKfAvRkbnI+gzP(9dzm;z|s?4jXyDtop4__ow9TNrU zKu4^uFLqj&o6nbrA{vjEsVsoqe>W78>_zOBz<*jep>+3UQ=T@W=I@4js129`tXfnD zUajuex0}_rJA84hA$FtfW6($%J%G6FS}JrVx5+4;|NZ(RwTGA8Hxu3Me-6k;#^vYD zf73zh>)qcs`QNv%e*O3EfKNBKDE%k=1+UK8*ZbZ7U#-%oe%~Fk{@>;<|9zF?e@oYL zz1^0m$+YadeSQ1;-Ti92z1h9z?R=HXvR<>M9SyNGD?N*P*j(6kOI?oIS>7R-3~6nW zp^yxTCXNNmRK**>OO@uS4)t8Lj$&#aYg|X0XUaYv;-6bFg7ulp#uRZ zf8Cs0Z`(Q&$KUfQ{3ru8OAhb5PidN--qP(RK@S!=eNb$*G2qy(FYU><-ywC0Xj8JC z5LjTJEGHEIqao*~8HzF;d>_!kA18Fr=g$*{pLDu>H8L`;5?Bmt-$;&sI4J@$=)ZqHt zfPo~GbL>kK%gx|=GPubu&aSS9R%NGGFDLmrAAY@le{z1^vH+|gT8pPzAZW`1j{i5n zLJR&vo1E;+H=GU>vD*FP+dvX!`C!C|u(E78Ufh-K!amWvcu}o(2X{D~k7FGgf1ta_{TI|YCm1AWi!NZ-~)U!-)f`?0D4V0$8na+ygh;yFJ^ZTMFb`luCDJ5D$ zXu!>FzMQYV4o3_qZGDpnlZbAxcw~YGW4PrXGxqlfopq^4kTM(Ha&*-B) zKbY0eBecR60DC5?v^XEs{z(ShJIK59EW#9q)YHy#Y-qsri2@FcZS0O{a<>DG)tdqU*()tbYFP4xIt4zq4&RVQ*`k(y6;HGJ2wIgHw%SI z0t=-u93?NW<~77%VbEZ}h62UmS#c{E#s>>EJ7D3aPa07viL{|62I;P(QUn>5L{eG8 zL@2o*PYDLK##5lIG4gS0Dhvo(-Rdc!6tA%xPYG-h0@Fx#fa4qNe$h_oV#8r_Fd4?ci!W#U?_C?AmozjGcXV{!g-^Ig_5|-2^|{jk^dJ zQWM(0mUA$|-S7%?0Kxq{FbNReR_r5q0>KL5ZN*-KCy*==-hWoaEU_CbDTcBJOI!3Q zTuEU|&6T|_ud$Lsw8qNT%z7GCT8W{cCOh{DqHydGB|AD2L~cb%5<#seiTguIk`dZj zvLkZt4oSp;Bst!5yCmU860my`O3jGo2ap8ATUAN$A4RPEL|ZU1b?uC_&m#%WG9?4a z&IK)yX*4CeN`Htz6O%Jv0EP)#?Ba0>;l;}ohPY(UD6#+Ifm^)zG@6+0fe6PK6Q=&^ zH^t;?*wzv@L_o9f&x~6qb_@Tcn`|j85nu?Tp(U=ibDU)o4UmHNa4v-j4d=p<_ngzf zv+u?7KA(40yr;LL>3q7LF3@+vmibboeto<7zS#Vl7Jr++u^kgU`|@H>E~PPLI)C9l z5qyig`D!tbg7wl>&qkKzG=AnY;?B}M`+WH-c7~Q^WL0&tuIprxF)DzXZZ;n8?Fbu@ zS3>I~Sr*p{?W&%~yzNS}jBlw4gJ%=k>*NGIfQ}e zZp9pRIDgK;7WTEXJ83gRw+Ol?LfxeLipi(y=9{ zItkL-qWwruAX+26E!vOt1fn(4+oHWCbc#W32-8-50%20v(hz3b?S~L1g#is=wkBIe z7#k2qF>obw957WK?NU4s7R)AFd87MUtYas7uxMJY$SJ5-C9yI2+da+=c4e?GV%1@9AWH=YPV~?;KOvC3zoJc)gg*P>;v5RWA&vxYsEphEW{<>-;vMGBLK zuzgPo4%{08)DqcL_`OKMmRhO=NNG#l4 z=GErGB@7t*(S+fu$d?%3O4^bMidNMO=0kO=5j*d)_=Sxa%}!nAV>8CeuYYCi>!yU+ zK2KTQO@gESw+n)iB>;Q6U=#z`>b)eeZc^6QdmG=N>RwF3c0k2*_orfl7$|l=AT-*f zkd%@br31rnVwy+``s%;N= zb=50D*sq!eiPmW4 zn?j&CwDwv>_~=)Unc(Ga34hQm^F$%}#WgcZwjMS{+g*@LX8@<7ey|vA_NQNCg6zZM z_Jt!kVC&6tzGZCHc=64>%!ECjE$)A8*7&yx09BB69IfZD&=RkCCrk29RHK+pRCy*+E zDK)7AQ_`R+fps;iw&z9p8j)LR_N+RfZsXMQjP{y%eKY}Vl69Tf&m#49F zEdJL*or_gBX@U?G34@N^?o9hH~+8?_a9+q`W0b&*pufu5eo=b+ z_c7|BVw6~lb(0IHx_4uV5v;WYpWoK+*E7P&Km5gY{qV-%#y9-v#~3Ngneu?&Xp5KXM6zL6rph5KCxUBAFm{p7@s zPu)&iEa@H_-n*wP(|lH4eZKVN^I+uOH^w=RopK^Y^$^$@Idg`(WmOjjeV%VdU?jQ! z=?ttC{f7QB)(chiWSpb_1(fUpaF=mL0TTf@mm$Ck6azRpHJ8z_2`PUW%W~Yf@$Rpf zo2ZIJkp#iV<`QSKc5Ny?q@>sfuMZH3nL*4UXZf(K{rdC^9L|VJ)s``nj7b2sqUG(*Ruo#R8~ zSTkN6@S(aN4eg48eRmM((d=aO`9n2)x&HF-&&@5r48AJVY01wqZ4G!z1+L{U6IN;P zpTYJF`e5kFlWBP6^C#E*CDLEu>LF5|S$OwO1OL)crCEafi#C6^3TC;mE)MhX`c~^G z_?ft(BH)T`@kLo4d^3%!&FFwp=QPh{0yGn#sTI?_rza;$FF9?Q#RD%qv5-94b&>~r zFN+G-z7j&s>)Wp9L2nyt2H6#doyX!&$*@K(u79fBl-@*374GeU8!vBT` z+Xlo6-^z_Rea3&KG#KzIa9lNZxDSODor@^}#4;uIN=gwD0(O(DEyLE|4>%-Z#JKOK zzOuyKUmo84{w9V~qD{O>R2k-_+GJTA#&Nl+4sSkxi8eJX!bL(=7MmwRJ#18%kR?JzZbLlu9RUZBHtFunVOWC2suNm}RW zXqvAc0L=S#t+T+m#ymDw6ubbIsp6bU%s=gbBTed`dZi2XMcE+{Ch!YTSYntcLRp@+h zaXYmYItd{~=1PZ!N2OK4U{$k@xC&Tb( zXPbZ8A19~tL=0Wdc|ejY7bb47Mn=H2-=bK7*7_3=_~gbtk3Y0E$ z*c%4!%qbmW$WsqmDyaF%-4h|u@c*X+sz_kNp<^d6wueAb%_5Pz!{F$h7si4enusnX z%;0iMi5U#8KDyBk!%FZgb*RB1YYh@e^p6F8;Q)Uh-6G<3^gx8nTaSGQiNb-Qjor?q%_w^XGJ!`2 zeFg1?U^#dylrgSot!v>Gdg2(6D$ddHYw$zCuVxWow4{~l8Db-xfe%gd;1hc`CAlSG zbo@ZFL<)-lyqf*NQl+l^j!Pf5nnwz&Fc*5FeALgR;DFJ=wQTVzuncV&xki72xsi=a zha<@wVwkxJKiE$gF!LsoU3cAi3Lap|1%f zaBc|)YHEKZWrNjIE=1Z*keX2?xfvYgM)N@^2cImZ9$SGA9|kMH zZo6Wcy+y4)ZPu(|hMW}6#!kMZvM}ImyqT;=U*27FE`PRRJunxLt3B+U5ILmJ6A|m=)=dsc4i#ZlZ`* zTIh8Zyaz(g8&#mO#UJn(yHOomZ-!vFv$;$?Z-%H9G;+;=Pj#k@+PGKrIORr_GR zvwk;?GsI;GpAdiEDo8RM_7!#vV(Jju`~@JkQWc6Yv6J0eJ7hcSNgc(ixQ}@?GCJGA!xWoD?EOChoJFnwqDL z`zrMy&M0AkuRR>0LOOkdJD!uKTE;8$-z9jMw}|+&@+~srU4=n zNTF0k@GDdUwuakkRYJZ!f}7xC0gtPy36xuQy;3^&7Hs;F97RUGRlE%<2iM#gHtc?% z94+9?Fyb&hqIGdDP6nIllT+u}o*D?qz1~s7kHCNUw*|PeemeMW8sV@zIg*8-hQZq? znOidiE;zEB%7KB0(s6p;pl};2yu{iTx z%yIc4?_1r;%HE{_{ zfWO@G#YJguE!J3^v~#)Z5P|Jf?RS?$bFF*Klx(S1-v8I=UyGu%!EgD(xwkNz-tI@$7NV6M%I>bskJ&LjE z(M^w#agjB_!Yo0&Nt7?14vXYp&~vl5M*_X{!#kD){zJ*MBaYg5hRnGI{Ng_t6@_9s zB)PM;rUR}xnx$XD$400M#U4xOYOq#{~8 zh}|CkQHTHaRuY3hzjx!8^SJB3kY#JQncCcDI!rU^1jhL)GGwm*1G};Sr-Un-{vZE<*BJYjIL)`(d==M zM16H0>td+dX8Z2`=Z%6JjNa^&5qX^Q4gJs+gF8MU!bIM)mpa|Z7_f4QwC%!9orzfT z#`{wR*O|;j&= z;?2_Nw^*949~jFs!V@A0QOdR{-NmD{hnv;LjYHS^J&#DatBxn)fMJKC9NO-Cpfi?U zRRG;reL40$pMi(Xh_^viAhmv|%A(%xlm?Q!uI+k%94lfBVS889RdZzEV+Fz|a6g_s zA`*;{iB3X9IZkw!&S<9q3h7dxrRgWA$-1EBsL)v(EK>u(=!gA6l>x zrSj<1;@(G|knnJ@q=R8BFOS$2O%G=fGcX^Uz4J>2e`eN#Q*SLeWHW86(l3$danN7j z3w)G+6^QP47f7o79YcF1a)qO-H5e8ye)m=9N;Ywv9$LBq6b!0C;ifWrS%JwmMUCRs zC|+%h=btyB7+n(#2LJ_sNCgG{JRv|&mmXc?z?De*IPZ`{8MS9dqoc+%{ys3nU^^=e zvC)_mB-A}rLkC9`-4jE=N{6m`7?Cx!k}Si2*wi_{>V~4K`>>gyL~0s++}b39#p0p% z$Y`**%zh4lA1_`H%^pSbiJ>Iku0f_&Xhjx@KRx3wCH_+6Puzqx2)WV-Z4!lH4Gz((e#Ob zCt&;~D|Zpv`>%#>yjBXMLeM5*C&2^e+UXDVa1yQ^V;LBXH7}#Q@wB1vrNQ zKXl`HGEv-D7EM^>?*;J7>QXPS<;mXlB^VQf_5p$Inu%C-w=5QD<^XxiPZi0RXJDzrv%OP-{TC#LXEwB>Bq@4c@z(A9xlop%NcTK@ ztoE*c;vEN!)E$qHBP=jVkLUw`RyX^~^}PJ{MSIEh^EExZL@5^Ccd>eo8cU-$ob|qo z%{$Ven!7DKL2jbx}fpNWY zLLFC~*ImG4WEA4-v8PZ5fHYj5`HWUGbR}dV4quqEq)<>?6MEnXm8a3AX~B7_4u0n{BgNj z7ZA7^v{q9PH@g`-lYrm;T%5D`IcBdo`stTna)thp$}D>22Hf_4?4^n4$yrJzluSTT zTpTmbGJz+;N*geKi*3Aikb#y_2c&WR7-irPlz5_^};( zhR;Gi*L1M+Fg9f{Ps_ywK&KSDM!CwQfa?0Iv_mrz3j;mzJYKV}BrP*N?eN`c-4m+W=Giv!FZvQcQQaD8r3m=p0BuU}f z0OoB1Un5Mc`N$eVGt(wFDMZMa?LZ6cRdx^rOsG>lnwgJvhsZQ_FcT$!y050VRW*2B+N60C4*Pin>Tm= z=J%`{3-L!84IP$R(mrQVqgOw~i!U~P?Rtv}vjQ8I)fkAthK{(kdxK{c% zuF4A}n_nxkY>Jpa$d#ku@=Q%8`n*_?dm^$~OjTxod)+FPGA!aInt4XuH~ik1F}U7%v(JIs6x`cRFltzCoUPj+qJ>Cs#qmtAg^? z!W1okR}4G@k~T^St^IAkuG?hJULZpreBhV@W{(LH+z1U|am_6yDHvofvcT2TCgdFSH`X}XN--zI#EP6lUmbi0QgjGQ$B1yl2ac9DS zu4Y(MQlioWhFvH%pz(Cau_geeW_;-3)Ql~EK%PwUotHo-=jSjZ`L?)R2@B#Q6_;6qYiAn1;?>5!UJmm5D6= z7BK|;P<>I%NLdj`;YY*Tzn-EoQFn$Dtc<8Ey4n`lCRAeT=J{q)icXDxE5=v3@Et&Z zfh3V6`MiZe<+dLGGx6eP$Mr1zrGrm|MnymRgQo{i82k5L`U^nM>&fP(`um(KDo3fmKKafS+EuaoVvNc%sercM=eTSY z4U*m;u-ZEZm*EEk69F-oLBj|X0yR08k$wg#mq_s3mQ_(_!SGL`z70;S%4??ry(?+-~5c=sp0Kg4O~wR#%+uBA@uJ?-Pb)8_Fs z?ti%dZhv0=&D$7D2YwM0AuS#34iPp=?5f{jau|DKHJp}CS z;&q<;Xf zfP??&3)dR|qQDPA<+#MLf)I}NAqW$Ak@*Eq2jhMcI)@FurF<$4A7SSXfC`tjIE`KU$7%t5m@Iz?=7xx5^on3)}VQKIgMX2?_im-dw z9Y%9$jFahMA$Z`2!IqJqPMR-=9G-%!hd~4#i(hCx*ElIR3cZJE6b?d@OkkS2iyJ5R z+$uosjwXu>*LIUmzRo6mJJ@-xlS98G#4c!OxjHgo!;r7+6)nc4zOhTPOIZ*uA2+Yvk?q1DkNqsVTM*fkM-M_c zIv`%$`wZbrKPS9y^~)Ij7j5InIVH!Gy+zRp7FNZ`Ef5jS-I)vqY7H4l<|C*q7+fq~ zAo22xEMShrS2>B~r+^XW3V*gxB?qYN7ECt21Fv!NPlFI@-FBmPXVOBv4JV>mb93BO z&gh^E?pxT;BR_<^OH?3Bs#F|wH;L@VW3 zCbZnxszAz`Lyl_aK5I$-VDnSEXhq+uDs@XShm|+rD?W|%P-&V z84BcED6kR=>j2;YDscOFC6!8-`yCL1m~n`&eE;59?hvrgBiZv+60T!oDO~L5`JB*v z9d4d5g5<>xP8;AHUl@+rYRmP4*Ko94f7nugs1iR2)D;1e0Dq8xPiS+RLitfjKBN3x zDdGC|dRrhTlzemH)u6dJj!~Hnr*7gq4fHwfpn+gh4;d_(&d&E0Ff zB!v%Ox{cr)R1Kp!#*M8!CsB1>&dCV*DAlRP<~W@DE`RcutsILTn#by?pYx#^X=8Px zH_3Jm$UV{>Aa?}r9C+CeFW3)k5E4(VSr)o$W&^XimE>y$#}30xHEN@~ygA(FiR#g{5H^K1HW zPhQlQ?SF7KkjE)!c2luks2W_=R=$!BRZIKHw6&!9ga27U4|Z1)HO{jClc*{V7ZDXl z-utd;~f zfl2a5j+@Z?^$qgRxwz;0wMe{U-<_p(?pmu|Q{AL-ml6L_K7@$H~-s0Y1nK ze}97r`a5rBvuYB9D_!y)hr!}OX3sCRsFS*BaB#`)TAnumqLjtN(%r?u;;(<6_bA{1 zO!G_VRll5Rv!HD7%PQF9)VMy%^QFx5Xgip}l10{BHYhy76q_MlM;GtRpyK92XdBip1}VB< z*+P$R&sTG1dixY557!Dwl0m4%y1!ntD!sXt2f8Q`xAK=pC2}*<6@3}m|cMmSlzdt%nJE!l%zvwMH{5Bcf2-t4+oP8DmArWe1lBJ4@o9YlW98bE}CNg z^UZg!-e^9atrQc`;xz4_e>CL)pkWev!j!U|FLbJtZe38LnoF1LwsV;#xAO)377Y#5 zcl2y>9D5(WTbEr|R`(MiCRr6-vFz&bWnQfg7FpL#`MCLMUc*M!WZ0c{lgF%PCSSe>P;ib1e>j1IvAeq2(k|hZ zb^(n?|6zH*#v^xOuz^MMs>LtzuB@x}B@7s`|LQF_yzOAD?aF1ofmcBT+aj;1^=@u# zl5ck53&322RD61rZ=#NhZV7!RFv4=VYw{(KT`A>RRjI&l*wL1rp?4ckQs&{% zF{ebhnWykIEUD7uz8p57vc!`Xo&``H7^9#${!XYYFb6b7e~dvhil(U>JhnA~G&B*< zh_`E56f2sUw={BBZ#G29_OtoI8k78^=xAuy($u$H=%(%Z`Axt}0b*W=%Jg|TJ5qZ{gX2pv_i>zcZvm(k^cDQy7K6g{+U-3G|Tue*E` zWkF>!mWs6Jf3JryN6Z|{9QRWU(bS!Kg52(#1}l4H&S=k8~{`xEEs@eXEM227gcOo4TLt?c@d<5 zw6dSl^A#RwbWtWqsZexp0*<+4Hd9j^ui%C@F{nl3Nt z3Lxs=e@CUL1;AOl$BR<2Q&?uD*-tV&iVY^UJd2DB&@~1FnnyXCyp9n}LQ^{UM5-~D zPA>!qN2UQk)(WP~*;~=CeezZeunaH(pk#84babadt4O703IK*#B6e8KoRUDo{WRbv zD@F460%(I5in~3%CX)9Q0sR1}hHi21OfY6g5J3;k6iA{P~ zXo!kz#3l!8O5_+=5~QToPm z1NGi6+(CmZ2kb6>dk6}u+!j@DKHvy$VQ_5@Fa?|CJe`58WlB7e9R^quEa0i_p{C;2 zj;@i6N+|&fMhqshK=gSrWs^7Fm~7~1e>pvZwCK8`?|%r^?r$ae8`K??KglVucSU+& z*fmABYjCmy6-i4l$^esWh#J&l z%vw+yxKUry+gUbT6twt{X__K}!758Z)LZj3n)a~3EHhw1o;SmQV}yZTp`JmJI14WNks%i}NmI1D4f)8ZFOJm+aLG%W>MipyQ}w2x_haZL z`S#%C)zm@GChY5WQ?vn26DE(8;^uv?##TkRf6$`Md=`~-n!~kEPb#jlMkl=mijHfV zC(kJK(X@}I;`ot@i|P?59L`1Fu;ls;I!x1bH-T) z`z)@SI2=2fo{L|g(Z@GhsJ#)H6&1k)2t^yfI@0PC6~rdJVLO^(Py zKpIYE?Lln88-2S5v_D4uf0PhorOr*S)O`z;G`Fac%Xj5!=gnqr4#LtW;x%w(Q?0Iy zoViKlY;G?yS6Pc8j78(k}O9-ar1pl1;)sjFZVYR<&0!b zOg(OIa4PWM>uo`;W!{n@BgxB9uo=t^V8>lkZ>bgRD_nWktwSsXfBFYg4%+KJKj4xg z9`(YAg}J1iVgezmohAa|qsW&-_YpJ-dWl+d-u zLKmH;kS_aI!Nu1{b$D8>9at1e}hSHySUz7;3YLqKC>U9K9wJGm~fl2E^woB3V1i|#qnFtV>ci4 zq=S<>Jj)Z^0)k{IsrC$Bf&Eag;8PIugK|x$G^RbW(4%r_Ov|V#Z&@l};nBjN67w<)H9voKqP&knlRMLaG5f2-`1HqR*={@T*c%9b|K zCtFwadQ0(=$eu8zmzqyt+kZR}8BKCZHrKs?a6|Cws4FKeJ0Us znQ}-(-rJA8e2j<~j9#5~IkW-u9d3y>fO=T}NnTYCOB>jqd#YCzQ>iBrlNLiPu~Rw8GI5ZG`V%K?uD5WGd?d7RphsE#OcEj` z3E@79gouQSMiL@^Z@{3KpbM@|8ng5>CiyvlXd{PI4U+rM<<9Ncz!T21= zWZjASY#@yKvm-)Wi-=fYWrT>nNP$W@e~u)9W2qYi!S}HcC1)np6My(b3<(Q9N3))a zSbG&>MV4KI+U$2Zu`#_mLaomz4gUgp^~N|f!ITC(UD7x(bw z$GH+dVT3{(SoJOknSy-{y~D-FKQzo0Pw-C-81MnzKx3<2Lw*;uQE^zCd|y{ye-S{> zSGoUaQ+s&?Hkwu#(164C#@cdSm&@W{`_t1d`tL9`Yyz=<^d6m*zA{Qmg{%5}S3$2| z<+!S!KzhqB#j#3cN!d+5Ew_ZA8uU~Z{`BHkuLHEze?49& z5GOl&9R63*SN=~(KXG#Ue=dpCz=4m78&#GLPL8l(kh+8NMsV8zW6s&Wf35%kf{~lD zG}9BwmU0jSnMGp|@0Kt=c9QZT0_x8%v!s85r9+Kn-5`y^XhqMQ9-!oReMKI;QeC2N zhSVdce=7AFoZ#*D>Uj^UFVlzS9Vp>FP*45=qRd9fhL`<6t;XByLL@~q3lh!S2xk9p zk2%Z;e{(@5&?>pz`Fi;mS)Mg#kSCe_qkom$7RK6aqOhm%&N{C=E9XFHB`_XLM*FGBh=pk$wg#f5lpB zZyPrj{jOiZkJ|-Gk@vv|5ERV=X}d^)pvi~b27#eC(?nQX@>()B-Cw`wjz*3qvgNTg zNr42U#&h?Y9Hz%Xqr(I_04*lSQEU**GL|$E{E=CJfr?|b z(HIj=641euoB@U*TqD5P(;#?aL&So&6#p@hGfgq@nmE*jaUt63E}^3)e`d2uiVr0G z$WTizXrUrgMXnG_;-p|5Acl@TP8hC|J%MaZPy=SCA>xTvbkv4mERH=9amr#HESD5? zFkMZiV6~171|@5@sg&TfFs32JX-#orU{k~*NgFC3lDXPD6-#3a2Q}mtUxjc{ z>p-a$#1qJs$fghsMTI6}G&DLuGp;C)_>V5`RHD#$m{sID?52(fCc)tJx`<2>48qS;kt=p9I_VjUGqf36u&G*(v&)?6vL zS^*4egG~}yCyyRYrmz3JXx#MiVzFFLrmwEvt=r!(=8Jz%rcaia@0-gv0Xs6jo&G%i zW%~3@#E!q7MbAOv% zTr`XK^H2WickYKDe*n(BUh*!EXYLI)ItKsEP5=3?-<^#NN`p8aJHsum&d%O$WuGq>>vr7dY&LK6(sMJK z+dfnQT38>iOkZ9uPhT~F>!vTCJ$KXB&8M|{+tO0b%xi zhTnh@_b`}uU|G*r=d;Dt>})(h;E%875KG18fenwgaOSbe!#&>(=;Xi6y9@AqJV@~U z?Rp_<@fH4@a`qLrn+xpGK^1+NuRmVBJDIOmSIt+ze+5I7E&j-!;LNFlJ_ZYvh8H-< z>GL^{kB4oE%s_R3;K+e*5TNtZ#cDo2BE&A93u3hjKi0-66)H+Vn7o#B2+?{)UjdKp zctH@E+V7iN_c0lxK=x7&;b~T1f!Q3hXBb}M_WKr~!lfk(d!e_3n{72;G>ECgO`zcB zERw%=e{(SwA5?GlbNj+|BdpmYyt~aQes+GhJIHKNblv{2NIGnPz@T)mJk)oR?D0WZe?0)pqS*&%%8UQXXo#(!Ouj`Vh;tGxKyG zhqEhe2@%G}DuC5=hw#>iC}Y(ToedJ^Odbm{Og4brLPLcs=9h;FQ?d$>3>8+N^T7F$ z!amZiLEbK@cG=b=)h^q1qu^o%->s0X3Z-XlDV4elpu}f%tSVQ=Ol#-k;3RMyz;Hf$_@a8Vj52!s^|P<(C&P-kn|T zrCynb8^&GP7#T5x*qMpXu?%8kkAYUW&*>(f?nZPY5UuQ6zg&+cS{J8D9g}F5VH>f& zx3X41AcQ!iATawL89%3QOEhL=fBPW8H5OPXWGn-)+(NW+ABWKshB;3aTFJ>%rLV)Z z2a_xBk*nyD^|n;`lQ@O)X&#&R8PX0^iQUr{=Z8NL`#8 zq9cZgurO?=-Jv}&J_P3Zf9&$(JkW?(?D#C_&sZw55gr2N)#=CC;(yI$kP$a@3GMQ1 z(MVh3mmzR|U(G+9FBk8}gkyCO)$|!oTZ$Y6=f%9a!mgSv)ERk+gAm%nX=% zPt};2?#|kW1!#TYJ4(nm2`j<5R~;rSW`9Kv3lm1PYgU$cmoJOcch{S5uPX1;~GV9hZKRkUG00#YekVX*X2hxl*!P_RaCm z&wnhJYkaNoal|tXxK6B|g7pPDXm1i({MA-TZayP#{&O|!BK84|SwEMA>>zBeeAtCf z0h6>HI^Y{DHUHhy}aJu`n?B6 zyW=j}{p}`_-@o49yn3U}E{?(?D&pP!VV4$Rs`8ylvd|=IcVF**4u-|6AG<|b$WYP9@I<{?1Y}=ezlT2*e z?%19BZ8IO~q-|WX#oy%i@3fFLKjW!~l&@!RAe}=ickFqh-it=|@uCH>faJh>6 zKeCKrU(IY$*LPD6A)|Z$PDM9d*cCdf_Rfinby#Ia9t}P*Co%vC-UI@j+Ae`1bdSSb2#4-aat<_xMyHB~06v z?cLL%n8O6=Ns$F{xh);40?-_HSfVz(h=Ut%5!t@bCx|uyQ@3DAOqf&$7CDs@!Uf#d zSB-k9)0U5{WbEz~hQ?!@1e>i6P1}2MzYIX>4Q3eQV}faPuc_eFw2@<-hl0LV4N(}V zT;a-=GgyF128rd>>hi|bQ-N+H{_qF*T=>!c#1OW9s>bNAImdu*PfkqAmQP|TD}=zsrAmBs@8`2)ts@G zcxV7jK3%0Qh=+xH4o`dHS?+;qNr@0GL@R1Dn}{1k{hYy31~<L)`KkZ5RGK_Yg&k(d|blhn$+602&pOMEv%|P zp8K;v1*^F3{h}<2&;fBQr;XqTu=;8znn2)`9u7k%}3A3P!LgN-QBO4Vc>yN zsm42iN6eWx7o31ioYTI6qtj@s50AQfJ{y>_&R9RmK7KWd(C;zGkPFV!@QQ8+l4YPn z{hK>nLBu~o=qWEeTFuxRM#X;B6Q>u57li$V;WsFD+2J!zn>qKHH|6N(i=xxWKnM0+i3|-f;xUJR_lA~%Ri*vbhfU^q zXGlbDhmt>dMtPR+>Dor?56Y+3++nja2jcAVI13h6^0k>M#_^5KyWkc0 z<3Z==;^Dq61bZkmnJ&j678i?6=&~0BKECFy1Ef>aW&%gB z3bZ0xx^O*MyOFaPYIL3)7WdTd_b{~V(e7b=-?tk1Sceazr7VGKDEf zAu%sSn$yImSJah>_aUZf@>zNsM_QtANVOqscagqlUlwce9gH}c zwDVB17PY-D66SO=%`*>$T4I8cxVVq2KIIs3n3R*s!e4(S_weFSWl}YMZ7P<~LVW^F zDDYaXadY|NRukC*_SsZXqzW`m^LDN(Sd0-3(Xkco;FWoSQJ>19!$WEx*b?>-K}@Eb zJx1`yxk~MT4pJe0$4Vx93jz_Ah`AY^_1(P!csZ`qy2k|Fq%Xw_= zQxfgKzRP|5pXaVLRsD2}dV1hqqbl!l*Xh9bfhB3`4nz4vJv)NL5b1OVq_ult@l=c> z8A2+!`rt}nVXb{xMOjs~xCu9wA}u`&Ztw6p2liy8mSOL1TL_+H469T{3S z2(#v5E^32ffjfKFU5m{awL-ZouNEGDw}!pMPh?rTajSj_!Bjw zdh|Sji8Flq9Gpctv4{TR=67E-HojO;)=nB@ENZD>q_if^-|`cIQ^on?BHF)9$VU4x z?uqkcH%`l#P5DUHkyyHd)>m%Y>5!HM3txG_usQfX6mb+LfYJsRS$^5rQ6rw z)mWP|}Ou z7U7*_9g{afB@BE)5fNFuA%Cxee{mHmYH6Q?xmJbme?7Ys+^>1nSN`Dicp|Z0Ew10G zCg2#O@Qt@SkrOZ=z3poMa&0k61{7Uyk2w%J+`7skOwR<9hlEetS`oU~TnKPG@Wc_K zIL>R^3-8rIa%M_HSklF^$l3~V$WX^>60*-Lbw12H^ALKb4ZkP67zsWWK~)9he{KFy z!cE6#`5FicpF<7Umouyx`vTPn=Vtk@9-S>^cL@d^z?5RZ`zHMeyHiKGdCgTCecIgI-o5$( z`IgrI88JvibfpX2rpxS>YL)89xP=&{Q(8#PMnkhv<~UwGTprB3=uu|ni} zMFjM|ksswHUN{xiQQ(b7Z10pBCj4bv(dOEmB2lo3_Ic~f=OOZ}*P{5zgqq$YuKA09 zXHT8a=WK^l0cl>bQ8KS&Z%HAvIUjGuwmMi2xOK?$FwzVJZ5p1JUvtJ^l5F<~7x zQ-qJ=Oe;!8;ONZ!^-+n=XS@-Mw)VSOAt_Ln90|OV3T45V2nj6r z*FKWY7O0+#ijRuaHte-o5mZUtJ@gu73D{3jGm$+#;S6Pvrq0)xrD<1Y(cO2SDw zpmKEH?BEg@k0#P7_~d)-{2LuB-d*$^p>G#dwopr*vEBc9rJd(Qul)XojcD6_8S(De zHd7Es;_7=TxEHY_SG+?ziVYl=hfnoOqY=&cZ^)R@Q&8ZKbi8ATXl(XB&#}9XcTEwNmdjdT}#9kpbR;64d540U%lm*Gryb2=OBRf;>=EOzAD6%?p@H%t{)n?yhtNM ze))+FE!w`3u{#l~-UbVHEPJv&(WIlz8N*aXb?xf8~c&3TvPg6GHe+l?@I0Dz+O&{%6gr?t3X`ja|vER=6 z(O3L}U@tFMQSt$(vnt!{e)Er<>0PSg;v4kh zArW4B=7qpL*YJx*@b;`lZ>=sy@`NNa&k}%3pUW`cdb`9ThuLUWTdsD|0o_BtICf;t z;>N{eL6`W19?q(2UQG_)C}zbxP!EY-l!H{CbD3Ke8_PI*T#>9<;y%LL3QE5P6;vIh zP&c^`kCbvYWf7Vo6DbzKF#$#*CWz zIsaDYu{2DEzDiL9p9f-rTwZEJsu%F=fWCnhk07Eh!NRux_isWc$;GTugNcffFpC=*mz*sLF_@WxV8=nymcrwE_H@DIR;@@vMr z8SBbts6`=fXsIdf!MbUaD1EWP7|ay1g{m3IzSoQG@3}%!a`y<
    ~xuje(m#6uoDJ!=!#R8`z4wh5r_1< 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ᴋ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

    -MYD1PRxDXbCWn?J}Q>;sb1 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%0Dx9}$RM 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

    kyhx{zv_L?73)lt=Lx(0ARZKej_Ph#!y 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%0Dugz+XVCR#kaIt><$gMxbyN|rn?$4qtEOv0V@jUn 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 z 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 z

    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≪BIxEfKe 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ºn>5f5+o{mYt5J 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�VW5RprhDzxh)+T8LDa1KyRbs%c^*zYV$W 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 Date: Tue, 21 Apr 2026 16:59:07 +0200 Subject: [PATCH 27/43] Use basename for the md files --- tools/Python/mcdoc/mcdoc.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/tools/Python/mcdoc/mcdoc.py b/tools/Python/mcdoc/mcdoc.py index b5befcb3d..082b82805 100644 --- a/tools/Python/mcdoc/mcdoc.py +++ b/tools/Python/mcdoc/mcdoc.py @@ -1190,7 +1190,7 @@ def create(self): lines.append('') lines.append('## Links') lines.append('') - lines.append('- [Source code](%s) for `%s`.' % (i.filepath, os.path.basename(i.filepath))) + lines.append('- [Source code](%s) for `%s`.' % (os.path.basename(i.filepath), os.path.basename(i.filepath))) for l in i.links: lines.append('- %s' % _md_text(l)) lines.append('') From 17c3f5e4fee02fe688e8c895e9b784e7d5b30469 Mon Sep 17 00:00:00 2001 From: Peter Willendrup Date: Tue, 21 Apr 2026 17:01:13 +0200 Subject: [PATCH 28/43] Author update --- docs/manuals/mcstas/title_comp.tex | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docs/manuals/mcstas/title_comp.tex b/docs/manuals/mcstas/title_comp.tex index 61adb19a2..224e1fde2 100644 --- a/docs/manuals/mcstas/title_comp.tex +++ b/docs/manuals/mcstas/title_comp.tex @@ -3,7 +3,7 @@ \includegraphics[width=50mm]{figures/mcstas_logo_reflection}\\[4mm] \end{center} } -\author{P. Willendrup, E. Farhi, E. Knudsen, U. Filges, K. Lefmann\\ +\author{P. Willendrup, E. Farhi, E. Knudsen, K. Lefmann\\ } \date{\reldate} From 13eb82e8bfd302df86da10dbfe92402f9696a6b0 Mon Sep 17 00:00:00 2001 From: Peter Willendrup Date: Tue, 21 Apr 2026 17:03:18 +0200 Subject: [PATCH 29/43] Further updated pdfs --- docpkg/manuals/mcstas/Component_manual.pdf | Bin 1117373 -> 1113957 bytes docpkg/manuals/mcstas/manual.pdf | Bin 2443008 -> 2443008 bytes 2 files changed, 0 insertions(+), 0 deletions(-) diff --git a/docpkg/manuals/mcstas/Component_manual.pdf b/docpkg/manuals/mcstas/Component_manual.pdf index 3c8a7bf2970483c5719ba31a094ae06a57840f54..39535ee72676125b000941038e20c1d45dcb7a9d 100644 GIT binary patch delta 153640 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 z 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

    d@QM&7T6Q=nUr4QGydZ8XcFf(Sqa1lh6 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

    YTBYrmC`yBcVI9>-*%LB$6zb{Hc82dZD@& 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 RlA|n~iUec}FpuS|~c6 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 delta 157182 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
    )zrbwy{*c!-fc~?Yk9+PHndrhlTPW4RkuUd&~ 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 aenbk*ka)tQ#S{_}5yfC;R@73$_`d)e-u+tu diff --git a/docpkg/manuals/mcstas/manual.pdf b/docpkg/manuals/mcstas/manual.pdf index 174b3f08c6bdc1a3d3507dd494794fd596d95ace..e279225336d295dabfee91c8eae19ee158fdc2e7 100644 GIT binary patch delta 182 zcmajVNeY5s06<}^Y@SCOG_72;`&FDEg8a=RwCOJ4;;q|77YV#iCyD3)EgpP}m){>s z{tbl^Wh$stsZpmvlNN0{bm`G&z>pDRCQO;3F=xS&6*>lMOe{8R*}d$GriQ|G#Ph1z s#*f8Kvn^F-j_-#uaRT8<_Z+42UVeWl z`8O0wl&PRnrAD0wOQW07?^C>vU^z7jhMu*H#(?H6|b`n>*ffr;a Date: Tue, 21 Apr 2026 17:06:30 +0200 Subject: [PATCH 30/43] Use basename --- tools/Python/mcdoc/mcdoc.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/tools/Python/mcdoc/mcdoc.py b/tools/Python/mcdoc/mcdoc.py index 082b82805..9f9cd8760 100644 --- a/tools/Python/mcdoc/mcdoc.py +++ b/tools/Python/mcdoc/mcdoc.py @@ -1249,7 +1249,7 @@ def create(self): lines.append('') lines.append('## Links') lines.append('') - lines.append('- [Source code](%s) for `%s`.' % (i.filepath, os.path.basename(i.filepath))) + lines.append('- [Source code](%s) for `%s`.' % (os.path.basename(i.filepath), os.path.basename(i.filepath))) for l in i.links: lines.append('- %s' % _md_text(l)) lines.append('') From c8b135cf65c0c6e79fe54c8e3898e677dc581cbb Mon Sep 17 00:00:00 2001 From: Peter Willendrup Date: Tue, 21 Apr 2026 17:09:28 +0200 Subject: [PATCH 31/43] Fix md files, link to local files --- mcstas-comps/contrib/Al_window.md | 2 +- mcstas-comps/contrib/CavitiesIn.md | 2 +- mcstas-comps/contrib/CavitiesOut.md | 2 +- mcstas-comps/contrib/Collimator_ROC.md | 2 +- mcstas-comps/contrib/Commodus_I3.md | 2 +- mcstas-comps/contrib/Conics_EH.md | 2 +- mcstas-comps/contrib/Conics_HE.md | 2 +- mcstas-comps/contrib/Conics_PH.md | 2 +- mcstas-comps/contrib/Conics_PP.md | 2 +- mcstas-comps/contrib/E_4PI.md | 2 +- mcstas-comps/contrib/Exact_radial_coll.md | 2 +- mcstas-comps/contrib/FermiChopper_ILL.md | 2 +- mcstas-comps/contrib/Fermi_chop2a.md | 2 +- mcstas-comps/contrib/Filter_graphite.md | 2 +- mcstas-comps/contrib/FlatEllipse_finite_mirror.md | 2 +- mcstas-comps/contrib/Foil_flipper_magnet.md | 2 +- mcstas-comps/contrib/GISANS_sample.md | 2 +- mcstas-comps/contrib/Guide_anyshape_r.md | 2 +- mcstas-comps/contrib/Guide_curved.md | 2 +- mcstas-comps/contrib/Guide_four_side.md | 2 +- mcstas-comps/contrib/Guide_gravity_psd.md | 2 +- mcstas-comps/contrib/Guide_honeycomb.md | 2 +- mcstas-comps/contrib/Guide_m.md | 2 +- mcstas-comps/contrib/Guide_multichannel.md | 2 +- mcstas-comps/contrib/ISIS_moderator.md | 2 +- mcstas-comps/contrib/Lens.md | 2 +- mcstas-comps/contrib/Lens_simple.md | 2 +- mcstas-comps/contrib/Mirror_Curved_Bispectral.md | 2 +- mcstas-comps/contrib/Mirror_Elliptic.md | 2 +- mcstas-comps/contrib/Mirror_Elliptic_Bispectral.md | 2 +- mcstas-comps/contrib/Mirror_Parabolic.md | 2 +- mcstas-comps/contrib/Monochromator_2foc.md | 2 +- mcstas-comps/contrib/Monochromator_bent.md | 2 +- mcstas-comps/contrib/Monochromator_bent_complex.md | 2 +- mcstas-comps/contrib/MultiDiskChopper.md | 2 +- mcstas-comps/contrib/Multilayer_Sample.md | 2 +- mcstas-comps/contrib/NMO.md | 2 +- mcstas-comps/contrib/NPI_tof_dhkl_detector.md | 2 +- mcstas-comps/contrib/NPI_tof_theta_monitor.md | 2 +- mcstas-comps/contrib/PSD_Detector.md | 2 +- mcstas-comps/contrib/PSD_Pol_monitor.md | 2 +- mcstas-comps/contrib/PSD_monitor_rad.md | 2 +- mcstas-comps/contrib/PSD_spinDmon.md | 2 +- mcstas-comps/contrib/PSD_spinUmon.md | 2 +- mcstas-comps/contrib/PerfectCrystal.md | 2 +- mcstas-comps/contrib/Pol_bender_tapering.md | 2 +- mcstas-comps/contrib/Pol_pi_2_rotator.md | 2 +- mcstas-comps/contrib/Pol_triafield.md | 2 +- mcstas-comps/contrib/Radial_div.md | 2 +- mcstas-comps/contrib/SANSCurve.md | 2 +- mcstas-comps/contrib/SANSCylinders.md | 2 +- mcstas-comps/contrib/SANSEllipticCylinders.md | 2 +- mcstas-comps/contrib/SANSLiposomes.md | 2 +- mcstas-comps/contrib/SANSNanodiscs.md | 2 +- mcstas-comps/contrib/SANSNanodiscsFast.md | 2 +- mcstas-comps/contrib/SANSNanodiscsWithTags.md | 2 +- mcstas-comps/contrib/SANSNanodiscsWithTagsFast.md | 2 +- mcstas-comps/contrib/SANSPDB.md | 2 +- mcstas-comps/contrib/SANSPDBFast.md | 2 +- mcstas-comps/contrib/SANSQMonitor.md | 2 +- mcstas-comps/contrib/SANSShells.md | 2 +- mcstas-comps/contrib/SANSSpheres.md | 2 +- mcstas-comps/contrib/SANSSpheresPolydisperse.md | 2 +- mcstas-comps/contrib/SANS_AnySamp.md | 2 +- mcstas-comps/contrib/SANS_DebyeS.md | 2 +- mcstas-comps/contrib/SANS_Guinier.md | 2 +- mcstas-comps/contrib/SANS_Liposomes_Abs.md | 2 +- mcstas-comps/contrib/SANS_benchmark2.md | 2 +- mcstas-comps/contrib/SNS_source.md | 2 +- mcstas-comps/contrib/SNS_source_analytic.md | 2 +- mcstas-comps/contrib/Sans_liposomes_new.md | 2 +- mcstas-comps/contrib/Sapphire_Filter.md | 2 +- mcstas-comps/contrib/SiC.md | 2 +- mcstas-comps/contrib/Single_crystal_inelastic.md | 2 +- mcstas-comps/contrib/Source_custom.md | 2 +- mcstas-comps/contrib/Source_gen4.md | 2 +- mcstas-comps/contrib/Source_multi_surfaces.md | 2 +- mcstas-comps/contrib/Source_pulsed.md | 2 +- mcstas-comps/contrib/Spherical_Backscattering_Analyser.md | 2 +- mcstas-comps/contrib/Spin_random.md | 2 +- mcstas-comps/contrib/Spot_sample.md | 2 +- mcstas-comps/contrib/StatisticalChopper.md | 2 +- mcstas-comps/contrib/StatisticalChopper_Monitor.md | 2 +- mcstas-comps/contrib/SupermirrorFlat.md | 2 +- mcstas-comps/contrib/TOF2Q_cyl_monitor.md | 2 +- mcstas-comps/contrib/TOFSANSdet.md | 2 +- mcstas-comps/contrib/TOF_PSDmonitor.md | 2 +- mcstas-comps/contrib/TOF_PSDmonitor_toQ.md | 2 +- mcstas-comps/contrib/Transmission_V_polarisator.md | 2 +- mcstas-comps/contrib/Transmission_polarisatorABSnT.md | 2 +- mcstas-comps/contrib/Vertical_Bender.md | 2 +- mcstas-comps/contrib/Vertical_T0a.md | 2 +- mcstas-comps/contrib/ViewModISIS.md | 2 +- mcstas-comps/contrib/multi_pipe.md | 2 +- mcstas-comps/examples/BNL/BNL_H8/BNL_H8.md | 2 +- mcstas-comps/examples/BNL/BNL_H8_simple/BNL_H8_simple.md | 2 +- mcstas-comps/examples/BNL/h8_test_legacy/h8_test_legacy.md | 2 +- mcstas-comps/examples/DTU/Test_FZP_simple/Test_FZP_simple.md | 2 +- mcstas-comps/examples/DTU/Vin_test/Vin_test.md | 2 +- mcstas-comps/examples/DTU/Vout_test/Vout_test.md | 2 +- mcstas-comps/examples/ESS/ESS_BEER_MCPL/ESS_BEER_MCPL.md | 2 +- mcstas-comps/examples/ESS/ESS_IN5_reprate/ESS_IN5_reprate.md | 2 +- .../ESS/ESS_Testbeamline_HZB_V20/ESS_Testbeamline_HZB_V20.md | 2 +- .../ESS_butterfly_Guide_curved_test.md | 2 +- .../ESS/ESS_butterfly_MCPL_test/ESS_butterfly_MCPL_test.md | 2 +- .../examples/ESS/ESS_butterfly_test/ESS_butterfly_test.md | 2 +- .../ESS_butterfly_tfocus_NOFOCUS_test.md | 2 +- .../ESS/ESS_butterfly_tfocus_test/ESS_butterfly_tfocus_test.md | 2 +- mcstas-comps/examples/ESS/ESS_mcpl2hist/ESS_mcpl2hist.md | 2 +- .../FZ_Juelich/FZJ_BenchmarkSfin2/FZJ_BenchmarkSfin2.md | 2 +- mcstas-comps/examples/FZ_Juelich/FZJ_KWS2_Lens/FZJ_KWS2_Lens.md | 2 +- .../FZJ_SANS_KWS2_AnySample/FZJ_SANS_KWS2_AnySample.md | 2 +- mcstas-comps/examples/HZB/HZB_FLEX/HZB_FLEX.md | 2 +- mcstas-comps/examples/HZB/HZB_NEAT/HZB_NEAT.md | 2 +- mcstas-comps/examples/HighNESS/WOFSANS/WOFSANS.md | 2 +- mcstas-comps/examples/ILL/ILL_BRISP/ILL_BRISP.md | 2 +- mcstas-comps/examples/ILL/ILL_D2B/ILL_D2B.md | 2 +- mcstas-comps/examples/ILL/ILL_D2B_noenv/ILL_D2B_noenv.md | 2 +- mcstas-comps/examples/ILL/ILL_D4/ILL_D4.md | 2 +- mcstas-comps/examples/ILL/ILL_H10_IN8/ILL_H10_IN8.md | 2 +- mcstas-comps/examples/ILL/ILL_H113/ILL_H113.md | 2 +- mcstas-comps/examples/ILL/ILL_H13_IN20/ILL_H13_IN20.md | 2 +- mcstas-comps/examples/ILL/ILL_H142/ILL_H142.md | 2 +- mcstas-comps/examples/ILL/ILL_H142_D33/ILL_H142_D33.md | 2 +- mcstas-comps/examples/ILL/ILL_H142_IN12/ILL_H142_IN12.md | 2 +- mcstas-comps/examples/ILL/ILL_H142_simple/ILL_H142_simple.md | 2 +- mcstas-comps/examples/ILL/ILL_H143_LADI/ILL_H143_LADI.md | 2 +- mcstas-comps/examples/ILL/ILL_H15/ILL_H15.md | 2 +- mcstas-comps/examples/ILL/ILL_H15_D11/ILL_H15_D11.md | 2 +- mcstas-comps/examples/ILL/ILL_H15_IN6/ILL_H15_IN6.md | 2 +- mcstas-comps/examples/ILL/ILL_H15_SAM/ILL_H15_SAM.md | 2 +- mcstas-comps/examples/ILL/ILL_H16/ILL_H16.md | 2 +- mcstas-comps/examples/ILL/ILL_H16_IN5/ILL_H16_IN5.md | 2 +- mcstas-comps/examples/ILL/ILL_H22/ILL_H22.md | 2 +- mcstas-comps/examples/ILL/ILL_H22_D1A/ILL_H22_D1A.md | 2 +- .../examples/ILL/ILL_H22_D1A_noenv/ILL_H22_D1A_noenv.md | 2 +- mcstas-comps/examples/ILL/ILL_H22_D1B/ILL_H22_D1B.md | 2 +- .../examples/ILL/ILL_H22_D1B_noenv/ILL_H22_D1B_noenv.md | 2 +- mcstas-comps/examples/ILL/ILL_H22_VIVALDI/ILL_H22_VIVALDI.md | 2 +- mcstas-comps/examples/ILL/ILL_H24/ILL_H24.md | 2 +- mcstas-comps/examples/ILL/ILL_H25/ILL_H25.md | 2 +- mcstas-comps/examples/ILL/ILL_H25_IN22/ILL_H25_IN22.md | 2 +- mcstas-comps/examples/ILL/ILL_H5/ILL_H5.md | 2 +- mcstas-comps/examples/ILL/ILL_H512_D22/ILL_H512_D22.md | 2 +- mcstas-comps/examples/ILL/ILL_H53/ILL_H53.md | 2 +- mcstas-comps/examples/ILL/ILL_H53_D16/ILL_H53_D16.md | 2 +- mcstas-comps/examples/ILL/ILL_H53_IN14/ILL_H53_IN14.md | 2 +- mcstas-comps/examples/ILL/ILL_H5_new/ILL_H5_new.md | 2 +- mcstas-comps/examples/ILL/ILL_H8_IN1/ILL_H8_IN1.md | 2 +- mcstas-comps/examples/ILL/ILL_IN13/ILL_IN13.md | 2 +- mcstas-comps/examples/ILL/ILL_IN4/ILL_IN4.md | 2 +- mcstas-comps/examples/ILL/ILL_IN5/ILL_IN5.md | 2 +- mcstas-comps/examples/ILL/ILL_IN5_Spots/ILL_IN5_Spots.md | 2 +- mcstas-comps/examples/ILL/ILL_IN6/ILL_IN6.md | 2 +- mcstas-comps/examples/ILL/ILL_Lagrange/ILL_Lagrange.md | 2 +- mcstas-comps/examples/ILL/ILL_SALSA/ILL_SALSA.md | 2 +- mcstas-comps/examples/ISIS/ISIS_CRISP/ISIS_CRISP.md | 2 +- mcstas-comps/examples/ISIS/ISIS_GEM/ISIS_GEM.md | 2 +- mcstas-comps/examples/ISIS/ISIS_HET/ISIS_HET.md | 2 +- mcstas-comps/examples/ISIS/ISIS_IMAT/ISIS_IMAT.md | 2 +- mcstas-comps/examples/ISIS/ISIS_LET/ISIS_LET.md | 2 +- mcstas-comps/examples/ISIS/ISIS_MERLIN/ISIS_MERLIN.md | 2 +- mcstas-comps/examples/ISIS/ISIS_OSIRIS/ISIS_OSIRIS.md | 2 +- mcstas-comps/examples/ISIS/ISIS_Prisma2/ISIS_Prisma2.md | 2 +- mcstas-comps/examples/ISIS/ISIS_SANS2d/ISIS_SANS2d.md | 2 +- .../ISIS/ISIS_TOSCA_preupgrade/ISIS_TOSCA_preupgrade.md | 2 +- .../examples/ISIS/ISIS_TS1_Brilliance/ISIS_TS1_Brilliance.md | 2 +- .../examples/ISIS/ISIS_TS2_Brilliance/ISIS_TS2_Brilliance.md | 2 +- mcstas-comps/examples/ISIS/ISIS_test/ISIS_test.md | 2 +- mcstas-comps/examples/ISIS/ViewModISIStest/ViewModISIStest.md | 2 +- mcstas-comps/examples/LLB/LLB_6T2/LLB_6T2.md | 2 +- .../examples/Mantid/ILL_H16_IN5_Mantid/ILL_H16_IN5_Mantid.md | 2 +- mcstas-comps/examples/Mantid/ILL_H16_Mantid/ILL_H16_Mantid.md | 2 +- mcstas-comps/examples/Mantid/ILL_IN5_Mantid/ILL_IN5_Mantid.md | 2 +- .../examples/Mantid/ISIS_SANS2d_Mantid/ISIS_SANS2d_Mantid.md | 2 +- .../ISIS_TOSCA_preupgrade_Mantid.md | 2 +- mcstas-comps/examples/Mantid/SNS_ARCS_Mantid/SNS_ARCS_Mantid.md | 2 +- mcstas-comps/examples/Mantid/Tools_ONION/Tools_ONION.md | 2 +- .../Mantid/templateSANS2_Mantid/templateSANS2_Mantid.md | 2 +- .../examples/Mantid/templateSANS_Mantid/templateSANS_Mantid.md | 2 +- .../Mantid/templateSasView_Mantid/templateSasView_Mantid.md | 2 +- .../templateVanadiumMultipleScat_Mantid.md | 2 +- .../examples/NCrystal/NCrystal_example/NCrystal_example.md | 2 +- .../NCrystal/Union_NCrystal_example/Union_NCrystal_example.md | 2 +- .../Union_NCrystal_mix_example/Union_NCrystal_mix_example.md | 2 +- mcstas-comps/examples/Necsa/SAFARI_MPISI/SAFARI_MPISI.md | 2 +- mcstas-comps/examples/Necsa/SAFARI_PITSI/SAFARI_PITSI.md | 2 +- mcstas-comps/examples/PSI/PSI_DMC/PSI_DMC.md | 2 +- mcstas-comps/examples/PSI/PSI_DMC_simple/PSI_DMC_simple.md | 2 +- mcstas-comps/examples/PSI/PSI_Focus/PSI_Focus.md | 2 +- mcstas-comps/examples/PSI/PSI_source/PSI_source.md | 2 +- mcstas-comps/examples/PSI/RITA-II/RITA-II.md | 2 +- mcstas-comps/examples/Risoe/TAS1_C1/TAS1_C1.md | 2 +- mcstas-comps/examples/Risoe/TAS1_C1_Tilt/TAS1_C1_Tilt.md | 2 +- .../examples/Risoe/TAS1_Diff_Powder/TAS1_Diff_Powder.md | 2 +- mcstas-comps/examples/Risoe/TAS1_Diff_Slit/TAS1_Diff_Slit.md | 2 +- mcstas-comps/examples/Risoe/TAS1_Diff_Vana/TAS1_Diff_Vana.md | 2 +- mcstas-comps/examples/Risoe/TAS1_Powder/TAS1_Powder.md | 2 +- mcstas-comps/examples/Risoe/TAS1_Vana/TAS1_Vana.md | 2 +- .../SINE2020/McStas_Isotropic_Sqw/McStas_Isotropic_Sqw.md | 2 +- mcstas-comps/examples/SINE2020/McStas_PowderN/McStas_PowderN.md | 2 +- .../SINE2020/McStas_Single_crystal/McStas_Single_crystal.md | 2 +- .../Gallmeier_SNS_decoupled_poisoned.md | 2 +- .../Granroth_SNS_decoupled_poisoned.md | 2 +- .../Mezei_SNS_decoupled_poisoned.md | 2 +- mcstas-comps/examples/SNS/SNS_ARCS/SNS_ARCS.md | 2 +- mcstas-comps/examples/SNS/SNS_BASIS/SNS_BASIS.md | 2 +- .../examples/SNS/SNS_analytic_test/SNS_analytic_test.md | 2 +- mcstas-comps/examples/SNS/SNS_test/SNS_test.md | 2 +- mcstas-comps/examples/TRIGA/RTP_DIF/RTP_DIF.md | 2 +- mcstas-comps/examples/TRIGA/RTP_Laue/RTP_Laue.md | 2 +- .../TRIGA/RTP_NeutronRadiography/RTP_NeutronRadiography.md | 2 +- mcstas-comps/examples/TRIGA/RTP_SANS/RTP_SANS.md | 2 +- mcstas-comps/examples/TUDelft/SEMSANS_Delft/SEMSANS_Delft.md | 2 +- .../examples/TUDelft/SEMSANS_instrument/SEMSANS_instrument.md | 2 +- mcstas-comps/examples/TUDelft/SESANS_Delft/SESANS_Delft.md | 2 +- mcstas-comps/examples/Templates/BTsimple/BTsimple.md | 2 +- .../Templates/Demo_shape_primitives/Demo_shape_primitives.md | 2 +- .../Demo_shape_primitives_simple.md | 2 +- .../examples/Templates/TOF_Reflectometer/TOF_Reflectometer.md | 2 +- .../Test_SasView_bcc_paracrystal_aniso.md | 2 +- .../Templates/Test_SasView_guinier/Test_SasView_guinier.md | 2 +- mcstas-comps/examples/Templates/Tomography/Tomography.md | 2 +- mcstas-comps/examples/Templates/mini/mini.md | 2 +- mcstas-comps/examples/Templates/template/template.md | 2 +- mcstas-comps/examples/Templates/templateDIFF/templateDIFF.md | 2 +- mcstas-comps/examples/Templates/templateLaue/templateLaue.md | 2 +- mcstas-comps/examples/Templates/templateNMX/templateNMX.md | 2 +- .../examples/Templates/templateNMX_TOF/templateNMX_TOF.md | 2 +- mcstas-comps/examples/Templates/templateSANS/templateSANS.md | 2 +- mcstas-comps/examples/Templates/templateSANS2/templateSANS2.md | 2 +- .../examples/Templates/templateSANS_MCPL/templateSANS_MCPL.md | 2 +- .../examples/Templates/templateSasView/templateSasView.md | 2 +- mcstas-comps/examples/Templates/templateTAS/templateTAS.md | 2 +- mcstas-comps/examples/Templates/templateTOF/templateTOF.md | 2 +- .../examples/Templates/template_simple/template_simple.md | 2 +- .../examples/Tests_MCPL_etc/Test_MCPL_input/Test_MCPL_input.md | 2 +- .../Tests_MCPL_etc/Test_MCPL_input_once/Test_MCPL_input_once.md | 2 +- .../Tests_MCPL_etc/Test_MCPL_output/Test_MCPL_output.md | 2 +- .../examples/Tests_RNG/Test_RNG_rand01/Test_RNG_rand01.md | 2 +- .../examples/Tests_RNG/Test_RNG_randnorm/Test_RNG_randnorm.md | 2 +- .../examples/Tests_RNG/Test_RNG_randpm1/Test_RNG_randpm1.md | 2 +- .../Tests_RNG/Test_RNG_randtriangle/Test_RNG_randtriangle.md | 2 +- .../Test_RNG_randvec_target_circle.md | 2 +- .../Test_RNG_randvec_target_rect.md | 2 +- .../Test_RNG_randvec_target_rect_angular.md | 2 +- mcstas-comps/examples/Tests_grammar/Test_GROUP/Test_GROUP.md | 2 +- mcstas-comps/examples/Tests_grammar/Test_GROUP_restore.md | 2 +- .../Tests_grammar/Test_Jump_Iterate/Test_Jump_Iterate.md | 2 +- .../Unittest_ALLOW_BACKPROP/Unittest_ALLOW_BACKPROP.md | 2 +- .../Unittest_JUMP_ITERATE/Unittest_JUMP_ITERATE.md | 2 +- .../Tests_grammar/Unittest_JUMP_WHEN/Unittest_JUMP_WHEN.md | 2 +- .../examples/Tests_grammar/Unittest_SPLIT/Unittest_SPLIT.md | 2 +- .../Unittest_SPLIT_sample/Unittest_SPLIT_sample.md | 2 +- .../Tests_monitors/Test_Cyl_monitors/Test_Cyl_monitors.md | 2 +- .../examples/Tests_monitors/Test_Monitor_nD/Test_Monitor_nD.md | 2 +- .../Test_TOF_PSDmonitor_toQ/Test_TOF_PSDmonitor_toQ.md | 2 +- .../examples/Tests_optics/Test_Al_windows/Test_Al_windows.md | 2 +- .../Test_Collimator_Radial/Test_Collimator_Radial.md | 2 +- .../Tests_optics/Test_Conics_pairs/Test_Conics_pairs.md | 2 +- .../Tests_optics/Test_DiskChoppers/Test_DiskChoppers.md | 2 +- .../Tests_optics/Test_DiskChoppers2/Test_DiskChoppers2.md | 2 +- mcstas-comps/examples/Tests_optics/Test_Fermi/Test_Fermi.md | 2 +- .../Test_FocalisationMirrors/Test_FocalisationMirrors.md | 2 +- mcstas-comps/examples/Tests_optics/Test_Guides/Test_Guides.md | 2 +- .../Tests_optics/Test_Guides_Curved/Test_Guides_Curved.md | 2 +- mcstas-comps/examples/Tests_optics/Test_Lens/Test_Lens.md | 2 +- .../Test_Monochromator_bent/Test_Monochromator_bent.md | 2 +- .../Test_Monochromator_bent_complex.md | 2 +- .../Tests_optics/Test_Monochromators/Test_Monochromators.md | 2 +- mcstas-comps/examples/Tests_optics/Test_NMO/Test_NMO.md | 2 +- .../Tests_optics/Test_PSD_Detector/Test_PSD_Detector.md | 2 +- .../Test_Pol_Bender_Vs_Guide_Curved.md | 2 +- mcstas-comps/examples/Tests_optics/Test_Rotator/Test_Rotator.md | 2 +- .../examples/Tests_optics/Test_Selectors/Test_Selectors.md | 2 +- .../Tests_optics/Test_Source_pulsed/Test_Source_pulsed.md | 2 +- mcstas-comps/examples/Tests_optics/Test_Sources/Test_Sources.md | 2 +- .../Test_StatisticalChopper/Test_StatisticalChopper.md | 2 +- .../Tests_optics/Test_Vertical_Bender/Test_Vertical_Bender.md | 2 +- mcstas-comps/examples/Tests_optics/Test_filters/Test_filters.md | 2 +- mcstas-comps/examples/Tests_optics/Test_focus/Test_focus.md | 2 +- mcstas-comps/examples/Tests_other/test_File/test_File.md | 2 +- .../Tests_polarization/He3_spin_filter/He3_spin_filter.md | 2 +- .../examples/Tests_polarization/SE_example/SE_example.md | 2 +- .../examples/Tests_polarization/SE_example2/SE_example2.md | 2 +- .../Supermirror_thin_substrate/Supermirror_thin_substrate.md | 2 +- .../Test_Magnetic_Constant/Test_Magnetic_Constant.md | 2 +- .../Test_Magnetic_Majorana/Test_Magnetic_Majorana.md | 2 +- .../Test_Magnetic_Rotation/Test_Magnetic_Rotation.md | 2 +- .../Tests_polarization/Test_Pol_Bender/Test_Pol_Bender.md | 2 +- .../Tests_polarization/Test_Pol_FieldBox/Test_Pol_FieldBox.md | 2 +- .../Test_Pol_Guide_Vmirror/Test_Pol_Guide_Vmirror.md | 2 +- .../Test_Pol_Guide_mirror/Test_Pol_Guide_mirror.md | 2 +- .../examples/Tests_polarization/Test_Pol_MSF/Test_Pol_MSF.md | 2 +- .../Tests_polarization/Test_Pol_Mirror/Test_Pol_Mirror.md | 2 +- .../Tests_polarization/Test_Pol_SF_ideal/Test_Pol_SF_ideal.md | 2 +- .../examples/Tests_polarization/Test_Pol_Set/Test_Pol_Set.md | 2 +- .../Tests_polarization/Test_Pol_Tabled/Test_Pol_Tabled.md | 2 +- .../Test_Pol_TripleAxis/Test_Pol_TripleAxis.md | 2 +- .../Test_V_cavity_SNAG_double_side.md | 2 +- .../Test_V_cavity_SNAG_single_side.md | 2 +- .../Tests_polarization/Test_pol_ideal/Test_pol_ideal.md | 2 +- .../examples/Tests_samples/GISANS_tests/GISANS_tests.md | 2 +- .../Tests_samples/Samples_Incoherent/Samples_Incoherent.md | 2 +- .../Samples_Incoherent_off/Samples_Incoherent_off.md | 2 +- .../Samples_Isotropic_Sqw/Samples_Isotropic_Sqw.md | 2 +- .../examples/Tests_samples/Samples_Phonon/Samples_Phonon.md | 2 +- .../examples/Tests_samples/Samples_vanadium/Samples_vanadium.md | 2 +- .../examples/Tests_samples/Test_Incoherent/Test_Incoherent.md | 2 +- .../Tests_samples/Test_Incoherent_MS/Test_Incoherent_MS.md | 2 +- .../Tests_samples/Test_Magnon_bcc_2D/Test_Magnon_bcc_2D.md | 2 +- .../Tests_samples/Test_Magnon_bcc_TAS/Test_Magnon_bcc_TAS.md | 2 +- .../examples/Tests_samples/Test_PowderN/Test_PowderN.md | 2 +- .../examples/Tests_samples/Test_PowderN_Res/Test_PowderN_Res.md | 2 +- .../Test_PowderN_concentric/Test_PowderN_concentric.md | 2 +- .../examples/Tests_samples/Test_Powders/Test_Powders.md | 2 +- mcstas-comps/examples/Tests_samples/Test_SANS/Test_SANS.md | 2 +- mcstas-comps/examples/Tests_samples/Test_SX/Test_SX.md | 2 +- .../Test_Single_crystal_inelastic.md | 2 +- mcstas-comps/examples/Tests_samples/Test_Sqw/Test_Sqw.md | 2 +- .../examples/Tests_samples/Test_Sqw_monitor/Test_Sqw_monitor.md | 2 +- .../Tests_samples/Test_TOFRes_sample/Test_TOFRes_sample.md | 2 +- .../examples/Tests_samples/Test_TasReso/Test_TasReso.md | 2 +- .../Test_single_magnetic_crystal.md | 2 +- .../Unittest_SANS_benchmark2/Unittest_SANS_benchmark2.md | 2 +- .../Tests_sources/Test_Source_custom/test_Source_custom.md | 2 +- .../Tests_sources/Test_Source_quasi/Test_Source_quasi.md | 2 +- .../examples/Tests_union/Conditional_test/Conditional_test.md | 2 +- .../External_component_test/External_component_test.md | 2 +- .../examples/Tests_union/Geometry_test/Geometry_test.md | 2 +- .../examples/Tests_union/Hidden_Cylinder/Hidden_Cylinder.md | 2 +- .../Tests_union/IncoherentPhonon_test/IncoherentPhonon_test.md | 2 +- mcstas-comps/examples/Tests_union/Logger_test/Logger_test.md | 2 +- mcstas-comps/examples/Tests_union/Many_meshes/Many_meshes.md | 2 +- .../examples/Tests_union/Test_absorption/Test_absorption.md | 2 +- .../Tests_union/Test_absorption_image/Test_absorption_image.md | 2 +- mcstas-comps/examples/Tests_union/Test_box/Test_box.md | 2 +- mcstas-comps/examples/Tests_union/Test_mask/Test_mask.md | 2 +- mcstas-comps/examples/Tests_union/Test_powder/Test_powder.md | 2 +- mcstas-comps/examples/Tests_union/Test_texture/Test_texture.md | 2 +- .../Unit_test_abs_logger_1D_space.md | 2 +- .../Unit_test_abs_logger_1D_space_event.md | 2 +- .../Unit_test_abs_logger_1D_space_tof.md | 2 +- .../Unit_test_abs_logger_1D_space_tof_to_lambda.md | 2 +- .../Unit_test_abs_logger_2D_space.md | 2 +- .../Unit_test_abs_logger_event/Unit_test_abs_logger_event.md | 2 +- .../Unit_test_abs_logger_nD/Unit_test_abs_logger_nD.md | 2 +- .../Unit_test_conditional_PSD/Unit_test_conditional_PSD.md | 2 +- .../Unit_test_conditional_standard.md | 2 +- .../Tests_union/Unit_test_logger_1D/Unit_test_logger_1D.md | 2 +- .../Tests_union/Unit_test_logger_2DQ/Unit_test_logger_2DQ.md | 2 +- .../Unit_test_logger_2D_kf/Unit_test_logger_2D_kf.md | 2 +- .../Unit_test_logger_2D_kf_time/Unit_test_logger_2D_kf_time.md | 2 +- .../Unit_test_logger_2D_space/Unit_test_logger_2D_space.md | 2 +- .../Unit_test_logger_2D_space_time.md | 2 +- .../Unit_test_logger_3D_space/Unit_test_logger_3D_space.md | 2 +- .../Unit_test_loggers_base/Unit_test_loggers_base.md | 2 +- mcstas-comps/examples/Tools/Histogrammer/Histogrammer.md | 2 +- .../examples/Tools/MCPL2Mantid_flat/MCPL2Mantid_flat.md | 2 +- mcstas-comps/examples/Tools/MCPL2hist/MCPL2hist.md | 2 +- .../examples/Tools/MCPL_filter_energy/MCPL_filter_energy.md | 2 +- .../examples/Tools/MCPL_filter_radius/MCPL_filter_radius.md | 2 +- .../Tools/MCPL_filter_wavelength/MCPL_filter_wavelength.md | 2 +- mcstas-comps/examples/Tools/vinput2mcpl/vinput2mcpl.md | 2 +- mcstas-comps/examples/Union_demos/Bispectral/Bispectral.md | 2 +- .../examples/Union_demos/Demonstration/Demonstration.md | 2 +- .../Union_demos/External_component/External_component.md | 2 +- mcstas-comps/examples/Union_demos/Laue_camera/Laue_camera.md | 2 +- .../examples/Union_demos/Manual_example/Manual_example.md | 2 +- .../Sample_picture_replica/Sample_picture_replica.md | 2 +- mcstas-comps/examples/Union_demos/Tagging_demo/Tagging_demo.md | 2 +- .../examples/Union_demos/Time_of_flight/Time_of_flight.md | 2 +- .../SE_usage_example/SE_usage_example.md | 2 +- .../cryostat_example/cryostat_example.md | 2 +- .../Incoherent_validation/Incoherent_validation.md | 2 +- .../Union_validation/Mirror_validation/Mirror_validation.md | 2 +- .../Union_validation/Powder_validation/Powder_validation.md | 2 +- .../Single_crystal_validation/Single_crystal_validation.md | 2 +- .../Radiography_absorbing_edge/Radiography_absorbing_edge.md | 2 +- mcstas-comps/examples/elearning/Reflectometer/Reflectometer.md | 2 +- mcstas-comps/examples/elearning/SANSsimple/SANSsimple.md | 2 +- .../examples/elearning/SANSsimpleSpheres/SANSsimpleSpheres.md | 2 +- .../SimplePowderDiffractometer/SimplePowderDiffractometer.md | 2 +- mcstas-comps/misc/Annulus.md | 2 +- mcstas-comps/misc/Circle.md | 2 +- mcstas-comps/misc/Cone.md | 2 +- mcstas-comps/misc/Disc.md | 2 +- mcstas-comps/misc/File.md | 2 +- mcstas-comps/misc/Legacy_circle.md | 2 +- mcstas-comps/misc/MCPL_input.md | 2 +- mcstas-comps/misc/MCPL_input_once.md | 2 +- mcstas-comps/misc/MCPL_output.md | 2 +- mcstas-comps/misc/MCPL_output_noacc.md | 2 +- mcstas-comps/misc/Progress_bar.md | 2 +- mcstas-comps/misc/Shape.md | 2 +- mcstas-comps/misc/Shape_simple.md | 2 +- mcstas-comps/monitors/Brilliance_monitor.md | 2 +- mcstas-comps/monitors/Cyl_monitor.md | 2 +- mcstas-comps/monitors/Cyl_monitor_PSD.md | 2 +- mcstas-comps/monitors/Cyl_monitor_TOF.md | 2 +- mcstas-comps/monitors/Div1D_monitor.md | 2 +- mcstas-comps/monitors/DivLambda_monitor.md | 2 +- mcstas-comps/monitors/DivPos_monitor.md | 2 +- mcstas-comps/monitors/Divergence_monitor.md | 2 +- mcstas-comps/monitors/EPSD_monitor.md | 2 +- mcstas-comps/monitors/E_monitor.md | 2 +- mcstas-comps/monitors/Event_monitor_simple.md | 2 +- mcstas-comps/monitors/Flex_monitor_1D.md | 2 +- mcstas-comps/monitors/Flex_monitor_2D.md | 2 +- mcstas-comps/monitors/Flex_monitor_3D.md | 2 +- mcstas-comps/monitors/L_monitor.md | 2 +- mcstas-comps/monitors/MeanPolLambda_monitor.md | 2 +- mcstas-comps/monitors/Monitor.md | 2 +- mcstas-comps/monitors/Monitor_4PI.md | 2 +- mcstas-comps/monitors/Monitor_nD.md | 2 +- mcstas-comps/monitors/Monitor_nD_noacc.md | 2 +- mcstas-comps/monitors/PSD_TOF_monitor.md | 2 +- mcstas-comps/monitors/PSD_monitor.md | 2 +- mcstas-comps/monitors/PSD_monitor_4PI.md | 2 +- mcstas-comps/monitors/PSD_monitor_4PI_spin.md | 2 +- mcstas-comps/monitors/PSD_monitor_TOF.md | 2 +- mcstas-comps/monitors/PSD_monitor_psf.md | 2 +- mcstas-comps/monitors/PSD_monitor_psf_eff.md | 2 +- mcstas-comps/monitors/PSDcyl_monitor.md | 2 +- mcstas-comps/monitors/PSDlin_diff_monitor.md | 2 +- mcstas-comps/monitors/PSDlin_monitor.md | 2 +- mcstas-comps/monitors/PolLambda_monitor.md | 2 +- mcstas-comps/monitors/Pol_monitor.md | 2 +- mcstas-comps/monitors/Res_monitor.md | 2 +- mcstas-comps/monitors/Sqq_w_monitor.md | 2 +- mcstas-comps/monitors/Sqw_monitor.md | 2 +- mcstas-comps/monitors/TOF2E_monitor.md | 2 +- mcstas-comps/monitors/TOF2Q_cylPSD_monitor.md | 2 +- mcstas-comps/monitors/TOFLambda_monitor.md | 2 +- mcstas-comps/monitors/TOFRes_monitor.md | 2 +- mcstas-comps/monitors/TOF_PSD_monitor_rad.md | 2 +- mcstas-comps/monitors/TOF_cylPSD_monitor.md | 2 +- mcstas-comps/monitors/TOF_monitor.md | 2 +- mcstas-comps/monitors/TOFlog_monitor.md | 2 +- mcstas-comps/obsolete/Beam_spy.md | 2 +- mcstas-comps/obsolete/ESS_moderator_short.md | 2 +- mcstas-comps/obsolete/V_sample.md | 2 +- mcstas-comps/obsolete/Virtual_input.md | 2 +- mcstas-comps/obsolete/Virtual_mcnp_input.md | 2 +- mcstas-comps/obsolete/Virtual_mcnp_output.md | 2 +- mcstas-comps/obsolete/Virtual_mcnp_ss_Guide.md | 2 +- mcstas-comps/obsolete/Virtual_mcnp_ss_input.md | 2 +- mcstas-comps/obsolete/Virtual_mcnp_ss_output.md | 2 +- mcstas-comps/obsolete/Virtual_output.md | 2 +- mcstas-comps/obsolete/Virtual_tripoli4_input.md | 2 +- mcstas-comps/obsolete/Virtual_tripoli4_output.md | 2 +- mcstas-comps/obsolete/Vitess_input.md | 2 +- mcstas-comps/obsolete/Vitess_output.md | 2 +- mcstas-comps/optics/Absorber.md | 2 +- mcstas-comps/optics/Arm.md | 2 +- mcstas-comps/optics/Beamstop.md | 2 +- mcstas-comps/optics/Bender.md | 2 +- mcstas-comps/optics/Collimator_linear.md | 2 +- mcstas-comps/optics/Collimator_radial.md | 2 +- mcstas-comps/optics/Derotator.md | 2 +- mcstas-comps/optics/Diaphragm.md | 2 +- mcstas-comps/optics/DiskChopper.md | 2 +- mcstas-comps/optics/Elliptic_guide_gravity.md | 2 +- mcstas-comps/optics/FZP_simple.md | 2 +- mcstas-comps/optics/FermiChopper.md | 2 +- mcstas-comps/optics/Filter_gen.md | 2 +- mcstas-comps/optics/Guide.md | 2 +- mcstas-comps/optics/Guide_anyshape.md | 2 +- mcstas-comps/optics/Guide_channeled.md | 2 +- mcstas-comps/optics/Guide_gravity.md | 2 +- mcstas-comps/optics/Guide_simple.md | 2 +- mcstas-comps/optics/Guide_tapering.md | 2 +- mcstas-comps/optics/Guide_wavy.md | 2 +- mcstas-comps/optics/He3_cell.md | 2 +- mcstas-comps/optics/Mask.md | 2 +- mcstas-comps/optics/Mirror.md | 2 +- mcstas-comps/optics/Monochromator_curved.md | 2 +- mcstas-comps/optics/Monochromator_flat.md | 2 +- mcstas-comps/optics/Monochromator_pol.md | 2 +- mcstas-comps/optics/Place.md | 2 +- mcstas-comps/optics/PolAnalyser_ideal.md | 2 +- mcstas-comps/optics/Pol_Bfield.md | 2 +- mcstas-comps/optics/Pol_Bfield_stop.md | 2 +- mcstas-comps/optics/Pol_FieldBox.md | 2 +- mcstas-comps/optics/Pol_SF_ideal.md | 2 +- mcstas-comps/optics/Pol_bender.md | 2 +- mcstas-comps/optics/Pol_constBfield.md | 2 +- mcstas-comps/optics/Pol_guide_mirror.md | 2 +- mcstas-comps/optics/Pol_guide_vmirror.md | 2 +- mcstas-comps/optics/Pol_mirror.md | 2 +- mcstas-comps/optics/Pol_tabled_field.md | 2 +- mcstas-comps/optics/Refractor.md | 2 +- mcstas-comps/optics/Rotator.md | 2 +- mcstas-comps/optics/Selector.md | 2 +- mcstas-comps/optics/Set_pol.md | 2 +- mcstas-comps/optics/Slit.md | 2 +- mcstas-comps/optics/V_selector.md | 2 +- mcstas-comps/optics/Vitess_ChopperFermi.md | 2 +- mcstas-comps/samples/Incoherent.md | 2 +- mcstas-comps/samples/Isotropic_Sqw.md | 2 +- mcstas-comps/samples/Magnon_bcc.md | 2 +- mcstas-comps/samples/NCrystal_sample.md | 2 +- mcstas-comps/samples/Phonon_simple.md | 2 +- mcstas-comps/samples/Powder1.md | 2 +- mcstas-comps/samples/PowderN.md | 2 +- mcstas-comps/samples/Res_sample.md | 2 +- mcstas-comps/samples/SANS_spheres2.md | 2 +- mcstas-comps/samples/Sans_spheres.md | 2 +- mcstas-comps/samples/SasView_model.md | 2 +- mcstas-comps/samples/Single_crystal.md | 2 +- mcstas-comps/samples/Single_magnetic_crystal.md | 2 +- mcstas-comps/samples/TOFRes_sample.md | 2 +- mcstas-comps/samples/Tunneling_sample.md | 2 +- mcstas-comps/sasmodels/SasView_adsorbed_layer.md | 2 +- mcstas-comps/sasmodels/SasView_barbell.md | 2 +- mcstas-comps/sasmodels/SasView_barbell_aniso.md | 2 +- mcstas-comps/sasmodels/SasView_bcc_paracrystal.md | 2 +- mcstas-comps/sasmodels/SasView_bcc_paracrystal_aniso.md | 2 +- mcstas-comps/sasmodels/SasView_binary_hard_sphere.md | 2 +- mcstas-comps/sasmodels/SasView_broad_peak.md | 2 +- mcstas-comps/sasmodels/SasView_capped_cylinder.md | 2 +- mcstas-comps/sasmodels/SasView_capped_cylinder_aniso.md | 2 +- mcstas-comps/sasmodels/SasView_core_multi_shell.md | 2 +- mcstas-comps/sasmodels/SasView_core_shell_bicelle.md | 2 +- mcstas-comps/sasmodels/SasView_core_shell_bicelle_aniso.md | 2 +- mcstas-comps/sasmodels/SasView_core_shell_bicelle_elliptical.md | 2 +- .../sasmodels/SasView_core_shell_bicelle_elliptical_aniso.md | 2 +- .../SasView_core_shell_bicelle_elliptical_belt_rough.md | 2 +- .../SasView_core_shell_bicelle_elliptical_belt_rough_aniso.md | 2 +- mcstas-comps/sasmodels/SasView_core_shell_cylinder.md | 2 +- mcstas-comps/sasmodels/SasView_core_shell_cylinder_aniso.md | 2 +- mcstas-comps/sasmodels/SasView_core_shell_ellipsoid.md | 2 +- mcstas-comps/sasmodels/SasView_core_shell_ellipsoid_aniso.md | 2 +- mcstas-comps/sasmodels/SasView_core_shell_parallelepiped.md | 2 +- .../sasmodels/SasView_core_shell_parallelepiped_aniso.md | 2 +- mcstas-comps/sasmodels/SasView_core_shell_sphere.md | 2 +- mcstas-comps/sasmodels/SasView_correlation_length.md | 2 +- mcstas-comps/sasmodels/SasView_cylinder.md | 2 +- mcstas-comps/sasmodels/SasView_cylinder_aniso.md | 2 +- mcstas-comps/sasmodels/SasView_dab.md | 2 +- mcstas-comps/sasmodels/SasView_ellipsoid.md | 2 +- mcstas-comps/sasmodels/SasView_ellipsoid_aniso.md | 2 +- mcstas-comps/sasmodels/SasView_elliptical_cylinder.md | 2 +- mcstas-comps/sasmodels/SasView_elliptical_cylinder_aniso.md | 2 +- mcstas-comps/sasmodels/SasView_fcc_paracrystal.md | 2 +- mcstas-comps/sasmodels/SasView_fcc_paracrystal_aniso.md | 2 +- mcstas-comps/sasmodels/SasView_flexible_cylinder.md | 2 +- mcstas-comps/sasmodels/SasView_flexible_cylinder_elliptical.md | 2 +- mcstas-comps/sasmodels/SasView_fractal.md | 2 +- mcstas-comps/sasmodels/SasView_fractal_core_shell.md | 2 +- mcstas-comps/sasmodels/SasView_fuzzy_sphere.md | 2 +- mcstas-comps/sasmodels/SasView_gauss_lorentz_gel.md | 2 +- mcstas-comps/sasmodels/SasView_gaussian_peak.md | 2 +- mcstas-comps/sasmodels/SasView_gel_fit.md | 2 +- mcstas-comps/sasmodels/SasView_guinier.md | 2 +- mcstas-comps/sasmodels/SasView_guinier_porod.md | 2 +- mcstas-comps/sasmodels/SasView_hardsphere.md | 2 +- mcstas-comps/sasmodels/SasView_hayter_msa.md | 2 +- mcstas-comps/sasmodels/SasView_hollow_cylinder.md | 2 +- mcstas-comps/sasmodels/SasView_hollow_cylinder_aniso.md | 2 +- mcstas-comps/sasmodels/SasView_hollow_rectangular_prism.md | 2 +- .../sasmodels/SasView_hollow_rectangular_prism_aniso.md | 2 +- .../sasmodels/SasView_hollow_rectangular_prism_thin_walls.md | 2 +- mcstas-comps/sasmodels/SasView_lamellar_hg.md | 2 +- mcstas-comps/sasmodels/SasView_lamellar_hg_stack_caille.md | 2 +- mcstas-comps/sasmodels/SasView_lamellar_stack_caille.md | 2 +- mcstas-comps/sasmodels/SasView_lamellar_stack_paracrystal.md | 2 +- mcstas-comps/sasmodels/SasView_line.md | 2 +- mcstas-comps/sasmodels/SasView_linear_pearls.md | 2 +- mcstas-comps/sasmodels/SasView_lorentz.md | 2 +- mcstas-comps/sasmodels/SasView_mass_fractal.md | 2 +- mcstas-comps/sasmodels/SasView_mass_surface_fractal.md | 2 +- mcstas-comps/sasmodels/SasView_mono_gauss_coil.md | 2 +- mcstas-comps/sasmodels/SasView_multilayer_vesicle.md | 2 +- mcstas-comps/sasmodels/SasView_onion.md | 2 +- mcstas-comps/sasmodels/SasView_parallelepiped.md | 2 +- mcstas-comps/sasmodels/SasView_parallelepiped_aniso.md | 2 +- mcstas-comps/sasmodels/SasView_peak_lorentz.md | 2 +- mcstas-comps/sasmodels/SasView_pearl_necklace.md | 2 +- mcstas-comps/sasmodels/SasView_poly_gauss_coil.md | 2 +- mcstas-comps/sasmodels/SasView_polymer_excl_volume.md | 2 +- mcstas-comps/sasmodels/SasView_polymer_micelle.md | 2 +- mcstas-comps/sasmodels/SasView_porod.md | 2 +- mcstas-comps/sasmodels/SasView_power_law.md | 2 +- mcstas-comps/sasmodels/SasView_pringle.md | 2 +- mcstas-comps/sasmodels/SasView_raspberry.md | 2 +- mcstas-comps/sasmodels/SasView_rectangular_prism.md | 2 +- mcstas-comps/sasmodels/SasView_rectangular_prism_aniso.md | 2 +- mcstas-comps/sasmodels/SasView_rpa.md | 2 +- mcstas-comps/sasmodels/SasView_sc_paracrystal.md | 2 +- mcstas-comps/sasmodels/SasView_sc_paracrystal_aniso.md | 2 +- mcstas-comps/sasmodels/SasView_sphere.md | 2 +- mcstas-comps/sasmodels/SasView_spinodal.md | 2 +- mcstas-comps/sasmodels/SasView_squarewell.md | 2 +- mcstas-comps/sasmodels/SasView_stacked_disks.md | 2 +- mcstas-comps/sasmodels/SasView_stacked_disks_aniso.md | 2 +- mcstas-comps/sasmodels/SasView_star_polymer.md | 2 +- mcstas-comps/sasmodels/SasView_stickyhardsphere.md | 2 +- mcstas-comps/sasmodels/SasView_superball.md | 2 +- mcstas-comps/sasmodels/SasView_superball_aniso.md | 2 +- mcstas-comps/sasmodels/SasView_surface_fractal.md | 2 +- mcstas-comps/sasmodels/SasView_teubner_strey.md | 2 +- mcstas-comps/sasmodels/SasView_triaxial_ellipsoid.md | 2 +- mcstas-comps/sasmodels/SasView_triaxial_ellipsoid_aniso.md | 2 +- mcstas-comps/sasmodels/SasView_two_lorentzian.md | 2 +- mcstas-comps/sasmodels/SasView_two_power_law.md | 2 +- mcstas-comps/sasmodels/SasView_vesicle.md | 2 +- mcstas-comps/sources/Adapt_check.md | 2 +- mcstas-comps/sources/ESS_butterfly.md | 2 +- mcstas-comps/sources/ESS_moderator.md | 2 +- mcstas-comps/sources/Moderator.md | 2 +- mcstas-comps/sources/Monitor_Optimizer.md | 2 +- mcstas-comps/sources/Source_4PI.md | 2 +- mcstas-comps/sources/Source_Maxwell_3.md | 2 +- mcstas-comps/sources/Source_Optimizer.md | 2 +- mcstas-comps/sources/Source_adapt.md | 2 +- mcstas-comps/sources/Source_div.md | 2 +- mcstas-comps/sources/Source_div_quasi.md | 2 +- mcstas-comps/sources/Source_gen.md | 2 +- mcstas-comps/sources/Source_simple.md | 2 +- mcstas-comps/union/AF_HB_1D_process.md | 2 +- mcstas-comps/union/IncoherentPhonon_process.md | 2 +- mcstas-comps/union/Incoherent_process.md | 2 +- mcstas-comps/union/Mirror_surface.md | 2 +- mcstas-comps/union/NCrystal_process.md | 2 +- mcstas-comps/union/Non_process.md | 2 +- mcstas-comps/union/PhononSimple_process.md | 2 +- mcstas-comps/union/Powder_process.md | 2 +- mcstas-comps/union/Single_crystal_process.md | 2 +- mcstas-comps/union/Template_process.md | 2 +- mcstas-comps/union/Template_surface.md | 2 +- mcstas-comps/union/Texture_process.md | 2 +- mcstas-comps/union/Union_abs_logger_1D_space.md | 2 +- mcstas-comps/union/Union_abs_logger_1D_space_event.md | 2 +- mcstas-comps/union/Union_abs_logger_1D_space_tof.md | 2 +- mcstas-comps/union/Union_abs_logger_1D_space_tof_to_lambda.md | 2 +- mcstas-comps/union/Union_abs_logger_1D_time.md | 2 +- mcstas-comps/union/Union_abs_logger_2D_space.md | 2 +- mcstas-comps/union/Union_abs_logger_event.md | 2 +- mcstas-comps/union/Union_abs_logger_nD.md | 2 +- mcstas-comps/union/Union_box.md | 2 +- mcstas-comps/union/Union_conditional_PSD.md | 2 +- mcstas-comps/union/Union_conditional_standard.md | 2 +- mcstas-comps/union/Union_cone.md | 2 +- mcstas-comps/union/Union_cylinder.md | 2 +- mcstas-comps/union/Union_init.md | 2 +- mcstas-comps/union/Union_logger_1D.md | 2 +- mcstas-comps/union/Union_logger_2DQ.md | 2 +- mcstas-comps/union/Union_logger_2D_kf.md | 2 +- mcstas-comps/union/Union_logger_2D_kf_time.md | 2 +- mcstas-comps/union/Union_logger_2D_space.md | 2 +- mcstas-comps/union/Union_logger_2D_space_time.md | 2 +- mcstas-comps/union/Union_logger_3D_space.md | 2 +- mcstas-comps/union/Union_make_material.md | 2 +- mcstas-comps/union/Union_master.md | 2 +- mcstas-comps/union/Union_master_GPU.md | 2 +- mcstas-comps/union/Union_mesh.md | 2 +- mcstas-comps/union/Union_sphere.md | 2 +- mcstas-comps/union/Union_stop.md | 2 +- 659 files changed, 659 insertions(+), 659 deletions(-) diff --git a/mcstas-comps/contrib/Al_window.md b/mcstas-comps/contrib/Al_window.md index 32030f294..1af151725 100644 --- a/mcstas-comps/contrib/Al_window.md +++ b/mcstas-comps/contrib/Al_window.md @@ -30,7 +30,7 @@ Parameters in **boldface** are required; the others are optional. ## Links -- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/contrib/Al_window.comp) for `Al_window.comp`. +- [Source code](Al_window.comp) for `Al_window.comp`. --- diff --git a/mcstas-comps/contrib/CavitiesIn.md b/mcstas-comps/contrib/CavitiesIn.md index 6a5fca42f..2094e8897 100644 --- a/mcstas-comps/contrib/CavitiesIn.md +++ b/mcstas-comps/contrib/CavitiesIn.md @@ -32,7 +32,7 @@ Parameters in **boldface** are required; the others are optional. ## Links -- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/contrib/CavitiesIn.comp) for `CavitiesIn.comp`. +- [Source code](CavitiesIn.comp) for `CavitiesIn.comp`. --- diff --git a/mcstas-comps/contrib/CavitiesOut.md b/mcstas-comps/contrib/CavitiesOut.md index 30326d5b9..2a09e4e62 100644 --- a/mcstas-comps/contrib/CavitiesOut.md +++ b/mcstas-comps/contrib/CavitiesOut.md @@ -32,7 +32,7 @@ Parameters in **boldface** are required; the others are optional. ## Links -- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/contrib/CavitiesOut.comp) for `CavitiesOut.comp`. +- [Source code](CavitiesOut.comp) for `CavitiesOut.comp`. --- diff --git a/mcstas-comps/contrib/Collimator_ROC.md b/mcstas-comps/contrib/Collimator_ROC.md index a0aeaf227..643dcf6c4 100644 --- a/mcstas-comps/contrib/Collimator_ROC.md +++ b/mcstas-comps/contrib/Collimator_ROC.md @@ -49,7 +49,7 @@ Parameters in **boldface** are required; the others are optional. ## Links -- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/contrib/Collimator_ROC.comp) for `Collimator_ROC.comp`. +- [Source code](Collimator_ROC.comp) for `Collimator_ROC.comp`. - D20 diffractometer at the ILL --- diff --git a/mcstas-comps/contrib/Commodus_I3.md b/mcstas-comps/contrib/Commodus_I3.md index cba4d6bc1..1693543c8 100644 --- a/mcstas-comps/contrib/Commodus_I3.md +++ b/mcstas-comps/contrib/Commodus_I3.md @@ -50,7 +50,7 @@ Parameters in **boldface** are required; the others are optional. ## Links -- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/contrib/Commodus_I3.comp) for `Commodus_I3.comp`. +- [Source code](Commodus_I3.comp) for `Commodus_I3.comp`. --- diff --git a/mcstas-comps/contrib/Conics_EH.md b/mcstas-comps/contrib/Conics_EH.md index f51e4c637..6345668cd 100644 --- a/mcstas-comps/contrib/Conics_EH.md +++ b/mcstas-comps/contrib/Conics_EH.md @@ -53,7 +53,7 @@ Parameters in **boldface** are required; the others are optional. ## Links -- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/contrib/Conics_EH.comp) for `Conics_EH.comp`. +- [Source code](Conics_EH.comp) for `Conics_EH.comp`. --- diff --git a/mcstas-comps/contrib/Conics_HE.md b/mcstas-comps/contrib/Conics_HE.md index 8071647b0..42e774620 100644 --- a/mcstas-comps/contrib/Conics_HE.md +++ b/mcstas-comps/contrib/Conics_HE.md @@ -53,7 +53,7 @@ Parameters in **boldface** are required; the others are optional. ## Links -- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/contrib/Conics_HE.comp) for `Conics_HE.comp`. +- [Source code](Conics_HE.comp) for `Conics_HE.comp`. --- diff --git a/mcstas-comps/contrib/Conics_PH.md b/mcstas-comps/contrib/Conics_PH.md index 3ee3016c9..a0f56c36f 100644 --- a/mcstas-comps/contrib/Conics_PH.md +++ b/mcstas-comps/contrib/Conics_PH.md @@ -51,7 +51,7 @@ Parameters in **boldface** are required; the others are optional. ## Links -- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/contrib/Conics_PH.comp) for `Conics_PH.comp`. +- [Source code](Conics_PH.comp) for `Conics_PH.comp`. --- diff --git a/mcstas-comps/contrib/Conics_PP.md b/mcstas-comps/contrib/Conics_PP.md index f64da76c1..f43753d7b 100644 --- a/mcstas-comps/contrib/Conics_PP.md +++ b/mcstas-comps/contrib/Conics_PP.md @@ -53,7 +53,7 @@ Parameters in **boldface** are required; the others are optional. ## Links -- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/contrib/Conics_PP.comp) for `Conics_PP.comp`. +- [Source code](Conics_PP.comp) for `Conics_PP.comp`. --- diff --git a/mcstas-comps/contrib/E_4PI.md b/mcstas-comps/contrib/E_4PI.md index f13b70d4f..e8628712b 100644 --- a/mcstas-comps/contrib/E_4PI.md +++ b/mcstas-comps/contrib/E_4PI.md @@ -30,7 +30,7 @@ Parameters in **boldface** are required; the others are optional. ## Links -- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/contrib/E_4PI.comp) for `E_4PI.comp`. +- [Source code](E_4PI.comp) for `E_4PI.comp`. - Test - results (not up-to-date). diff --git a/mcstas-comps/contrib/Exact_radial_coll.md b/mcstas-comps/contrib/Exact_radial_coll.md index 09501e2a2..b5010949f 100644 --- a/mcstas-comps/contrib/Exact_radial_coll.md +++ b/mcstas-comps/contrib/Exact_radial_coll.md @@ -42,7 +42,7 @@ Parameters in **boldface** are required; the others are optional. ## Links -- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/contrib/Exact_radial_coll.comp) for `Exact_radial_coll.comp`. +- [Source code](Exact_radial_coll.comp) for `Exact_radial_coll.comp`. --- diff --git a/mcstas-comps/contrib/FermiChopper_ILL.md b/mcstas-comps/contrib/FermiChopper_ILL.md index 9ec5acb6b..311e821cf 100644 --- a/mcstas-comps/contrib/FermiChopper_ILL.md +++ b/mcstas-comps/contrib/FermiChopper_ILL.md @@ -69,7 +69,7 @@ Parameters in **boldface** are required; the others are optional. ## Links -- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/contrib/FermiChopper_ILL.comp) for `FermiChopper_ILL.comp`. +- [Source code](FermiChopper_ILL.comp) for `FermiChopper_ILL.comp`. --- diff --git a/mcstas-comps/contrib/Fermi_chop2a.md b/mcstas-comps/contrib/Fermi_chop2a.md index 1403976e2..0d3fd9b42 100644 --- a/mcstas-comps/contrib/Fermi_chop2a.md +++ b/mcstas-comps/contrib/Fermi_chop2a.md @@ -34,7 +34,7 @@ Parameters in **boldface** are required; the others are optional. ## Links -- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/contrib/Fermi_chop2a.comp) for `Fermi_chop2a.comp`. +- [Source code](Fermi_chop2a.comp) for `Fermi_chop2a.comp`. --- diff --git a/mcstas-comps/contrib/Filter_graphite.md b/mcstas-comps/contrib/Filter_graphite.md index e1bc7db3a..bfd9eb3b0 100644 --- a/mcstas-comps/contrib/Filter_graphite.md +++ b/mcstas-comps/contrib/Filter_graphite.md @@ -39,7 +39,7 @@ Parameters in **boldface** are required; the others are optional. ## Links -- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/contrib/Filter_graphite.comp) for `Filter_graphite.comp`. +- [Source code](Filter_graphite.comp) for `Filter_graphite.comp`. --- diff --git a/mcstas-comps/contrib/FlatEllipse_finite_mirror.md b/mcstas-comps/contrib/FlatEllipse_finite_mirror.md index 6ce5b4e63..0911d66c4 100644 --- a/mcstas-comps/contrib/FlatEllipse_finite_mirror.md +++ b/mcstas-comps/contrib/FlatEllipse_finite_mirror.md @@ -46,7 +46,7 @@ Parameters in **boldface** are required; the others are optional. ## Links -- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/contrib/FlatEllipse_finite_mirror.comp) for `FlatEllipse_finite_mirror.comp`. +- [Source code](FlatEllipse_finite_mirror.comp) for `FlatEllipse_finite_mirror.comp`. - Christoph Herb et al., Nucl. Instrum. Meth. A 1040, 1671564 (1-18) 2022. --- diff --git a/mcstas-comps/contrib/Foil_flipper_magnet.md b/mcstas-comps/contrib/Foil_flipper_magnet.md index d45462a98..ee37795df 100644 --- a/mcstas-comps/contrib/Foil_flipper_magnet.md +++ b/mcstas-comps/contrib/Foil_flipper_magnet.md @@ -50,7 +50,7 @@ Parameters in **boldface** are required; the others are optional. ## Links -- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/contrib/Foil_flipper_magnet.comp) for `Foil_flipper_magnet.comp`. +- [Source code](Foil_flipper_magnet.comp) for `Foil_flipper_magnet.comp`. --- diff --git a/mcstas-comps/contrib/GISANS_sample.md b/mcstas-comps/contrib/GISANS_sample.md index 4eacb2876..41c1223e4 100644 --- a/mcstas-comps/contrib/GISANS_sample.md +++ b/mcstas-comps/contrib/GISANS_sample.md @@ -82,7 +82,7 @@ Parameters in **boldface** are required; the others are optional. ## Links -- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/contrib/GISANS_sample.comp) for `GISANS_sample.comp`. +- [Source code](GISANS_sample.comp) for `GISANS_sample.comp`. --- diff --git a/mcstas-comps/contrib/Guide_anyshape_r.md b/mcstas-comps/contrib/Guide_anyshape_r.md index c46372cab..61e2da0d7 100644 --- a/mcstas-comps/contrib/Guide_anyshape_r.md +++ b/mcstas-comps/contrib/Guide_anyshape_r.md @@ -59,7 +59,7 @@ Parameters in **boldface** are required; the others are optional. ## Links -- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/contrib/Guide_anyshape_r.comp) for `Guide_anyshape_r.comp`. +- [Source code](Guide_anyshape_r.comp) for `Guide_anyshape_r.comp`. - Geomview and Object File Format (OFF) - Java version of Geomview (display only) jroff.jar - qhull diff --git a/mcstas-comps/contrib/Guide_curved.md b/mcstas-comps/contrib/Guide_curved.md index 60e6d3ffa..a206bd00d 100644 --- a/mcstas-comps/contrib/Guide_curved.md +++ b/mcstas-comps/contrib/Guide_curved.md @@ -42,7 +42,7 @@ Parameters in **boldface** are required; the others are optional. ## Links -- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/contrib/Guide_curved.comp) for `Guide_curved.comp`. +- [Source code](Guide_curved.comp) for `Guide_curved.comp`. - Bender --- diff --git a/mcstas-comps/contrib/Guide_four_side.md b/mcstas-comps/contrib/Guide_four_side.md index 681ab6822..6988856b2 100644 --- a/mcstas-comps/contrib/Guide_four_side.md +++ b/mcstas-comps/contrib/Guide_four_side.md @@ -129,7 +129,7 @@ Parameters in **boldface** are required; the others are optional. ## Links -- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/contrib/Guide_four_side.comp) for `Guide_four_side.comp`. +- [Source code](Guide_four_side.comp) for `Guide_four_side.comp`. --- diff --git a/mcstas-comps/contrib/Guide_gravity_psd.md b/mcstas-comps/contrib/Guide_gravity_psd.md index 4bae647bb..047da54a6 100644 --- a/mcstas-comps/contrib/Guide_gravity_psd.md +++ b/mcstas-comps/contrib/Guide_gravity_psd.md @@ -94,7 +94,7 @@ Parameters in **boldface** are required; the others are optional. ## Links -- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/contrib/Guide_gravity_psd.comp) for `Guide_gravity_psd.comp`. +- [Source code](Guide_gravity_psd.comp) for `Guide_gravity_psd.comp`. --- diff --git a/mcstas-comps/contrib/Guide_honeycomb.md b/mcstas-comps/contrib/Guide_honeycomb.md index 6fefe4c21..f3794d18b 100644 --- a/mcstas-comps/contrib/Guide_honeycomb.md +++ b/mcstas-comps/contrib/Guide_honeycomb.md @@ -50,7 +50,7 @@ Parameters in **boldface** are required; the others are optional. ## Links -- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/contrib/Guide_honeycomb.comp) for `Guide_honeycomb.comp`. +- [Source code](Guide_honeycomb.comp) for `Guide_honeycomb.comp`. --- diff --git a/mcstas-comps/contrib/Guide_m.md b/mcstas-comps/contrib/Guide_m.md index 00c0d82d5..f7ee58ec5 100644 --- a/mcstas-comps/contrib/Guide_m.md +++ b/mcstas-comps/contrib/Guide_m.md @@ -73,7 +73,7 @@ Parameters in **boldface** are required; the others are optional. ## Links -- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/contrib/Guide_m.comp) for `Guide_m.comp`. +- [Source code](Guide_m.comp) for `Guide_m.comp`. --- diff --git a/mcstas-comps/contrib/Guide_multichannel.md b/mcstas-comps/contrib/Guide_multichannel.md index 60128c8d5..fa9c1dddb 100644 --- a/mcstas-comps/contrib/Guide_multichannel.md +++ b/mcstas-comps/contrib/Guide_multichannel.md @@ -67,7 +67,7 @@ Parameters in **boldface** are required; the others are optional. ## Links -- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/contrib/Guide_multichannel.comp) for `Guide_multichannel.comp`. +- [Source code](Guide_multichannel.comp) for `Guide_multichannel.comp`. --- diff --git a/mcstas-comps/contrib/ISIS_moderator.md b/mcstas-comps/contrib/ISIS_moderator.md index 75e3de358..216d55998 100644 --- a/mcstas-comps/contrib/ISIS_moderator.md +++ b/mcstas-comps/contrib/ISIS_moderator.md @@ -46,7 +46,7 @@ Parameters in **boldface** are required; the others are optional. ## Links -- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/contrib/ISIS_moderator.comp) for `ISIS_moderator.comp`. +- [Source code](ISIS_moderator.comp) for `ISIS_moderator.comp`. - Further information should be - downloaded from the ISIS MC website. - *******************************************************************************/ diff --git a/mcstas-comps/contrib/Lens.md b/mcstas-comps/contrib/Lens.md index 85a736321..7ff572e5e 100644 --- a/mcstas-comps/contrib/Lens.md +++ b/mcstas-comps/contrib/Lens.md @@ -93,7 +93,7 @@ Parameters in **boldface** are required; the others are optional. ## Links -- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/contrib/Lens.comp) for `Lens.comp`. +- [Source code](Lens.comp) for `Lens.comp`. - M. L. Goldberger et al, Phys. Rev. 71, 294 - 310 (1947) - Sears V.F. Neutron optics. An introduction to the theory of neutron optical phenomena and their applications. Oxford University Press, 1989. - H. Park et al. Measured operationnal neutron energies of compound refractive lenses. Nuclear Instruments and Methods B, 251:507-511, 2006. diff --git a/mcstas-comps/contrib/Lens_simple.md b/mcstas-comps/contrib/Lens_simple.md index 22791d2d4..7a3f0d489 100644 --- a/mcstas-comps/contrib/Lens_simple.md +++ b/mcstas-comps/contrib/Lens_simple.md @@ -65,7 +65,7 @@ Parameters in **boldface** are required; the others are optional. ## Links -- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/contrib/Lens_simple.comp) for `Lens_simple.comp`. +- [Source code](Lens_simple.comp) for `Lens_simple.comp`. --- diff --git a/mcstas-comps/contrib/Mirror_Curved_Bispectral.md b/mcstas-comps/contrib/Mirror_Curved_Bispectral.md index 605225fbc..87a29f86f 100644 --- a/mcstas-comps/contrib/Mirror_Curved_Bispectral.md +++ b/mcstas-comps/contrib/Mirror_Curved_Bispectral.md @@ -39,7 +39,7 @@ Parameters in **boldface** are required; the others are optional. ## Links -- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/contrib/Mirror_Curved_Bispectral.comp) for `Mirror_Curved_Bispectral.comp`. +- [Source code](Mirror_Curved_Bispectral.comp) for `Mirror_Curved_Bispectral.comp`. --- diff --git a/mcstas-comps/contrib/Mirror_Elliptic.md b/mcstas-comps/contrib/Mirror_Elliptic.md index dabb8b166..af117bb7c 100644 --- a/mcstas-comps/contrib/Mirror_Elliptic.md +++ b/mcstas-comps/contrib/Mirror_Elliptic.md @@ -39,7 +39,7 @@ Parameters in **boldface** are required; the others are optional. ## Links -- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/contrib/Mirror_Elliptic.comp) for `Mirror_Elliptic.comp`. +- [Source code](Mirror_Elliptic.comp) for `Mirror_Elliptic.comp`. --- diff --git a/mcstas-comps/contrib/Mirror_Elliptic_Bispectral.md b/mcstas-comps/contrib/Mirror_Elliptic_Bispectral.md index b59f8c659..d1847fc62 100644 --- a/mcstas-comps/contrib/Mirror_Elliptic_Bispectral.md +++ b/mcstas-comps/contrib/Mirror_Elliptic_Bispectral.md @@ -37,7 +37,7 @@ Parameters in **boldface** are required; the others are optional. ## Links -- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/contrib/Mirror_Elliptic_Bispectral.comp) for `Mirror_Elliptic_Bispectral.comp`. +- [Source code](Mirror_Elliptic_Bispectral.comp) for `Mirror_Elliptic_Bispectral.comp`. --- diff --git a/mcstas-comps/contrib/Mirror_Parabolic.md b/mcstas-comps/contrib/Mirror_Parabolic.md index 5f99951ed..ac50f1e8a 100644 --- a/mcstas-comps/contrib/Mirror_Parabolic.md +++ b/mcstas-comps/contrib/Mirror_Parabolic.md @@ -38,7 +38,7 @@ Parameters in **boldface** are required; the others are optional. ## Links -- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/contrib/Mirror_Parabolic.comp) for `Mirror_Parabolic.comp`. +- [Source code](Mirror_Parabolic.comp) for `Mirror_Parabolic.comp`. --- diff --git a/mcstas-comps/contrib/Monochromator_2foc.md b/mcstas-comps/contrib/Monochromator_2foc.md index 71e6e0285..be1a34943 100644 --- a/mcstas-comps/contrib/Monochromator_2foc.md +++ b/mcstas-comps/contrib/Monochromator_2foc.md @@ -65,7 +65,7 @@ Parameters in **boldface** are required; the others are optional. ## Links -- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/contrib/Monochromator_2foc.comp) for `Monochromator_2foc.comp`. +- [Source code](Monochromator_2foc.comp) for `Monochromator_2foc.comp`. - Additional note from Peter Link. --- diff --git a/mcstas-comps/contrib/Monochromator_bent.md b/mcstas-comps/contrib/Monochromator_bent.md index 4abf0e973..a1949aa17 100644 --- a/mcstas-comps/contrib/Monochromator_bent.md +++ b/mcstas-comps/contrib/Monochromator_bent.md @@ -55,7 +55,7 @@ Parameters in **boldface** are required; the others are optional. ## Links -- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/contrib/Monochromator_bent.comp) for `Monochromator_bent.comp`. +- [Source code](Monochromator_bent.comp) for `Monochromator_bent.comp`. - Jan Šaroun NIM A Volume 529, Issue 1-3 (2004), pp162-165 --- diff --git a/mcstas-comps/contrib/Monochromator_bent_complex.md b/mcstas-comps/contrib/Monochromator_bent_complex.md index 2251abe56..bbccd3edb 100644 --- a/mcstas-comps/contrib/Monochromator_bent_complex.md +++ b/mcstas-comps/contrib/Monochromator_bent_complex.md @@ -49,7 +49,7 @@ Parameters in **boldface** are required; the others are optional. ## Links -- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/contrib/Monochromator_bent_complex.comp) for `Monochromator_bent_complex.comp`. +- [Source code](Monochromator_bent_complex.comp) for `Monochromator_bent_complex.comp`. - Jan Šaroun NIM A Volume 529, Issue 1-3 (2004), pp162-165 - Christensen, D.L.; Cabeza, S.; Pirling, T.; Lefmann, K.; Šaroun, J. Simulating Neutron Diffraction from Deformed Mosaic Crystals in McStas. Quantum Beam Sci. 2026, 10, 6. https://doi.org/10.3390/qubs10010006 diff --git a/mcstas-comps/contrib/MultiDiskChopper.md b/mcstas-comps/contrib/MultiDiskChopper.md index d4cbdba0a..285a4ae86 100644 --- a/mcstas-comps/contrib/MultiDiskChopper.md +++ b/mcstas-comps/contrib/MultiDiskChopper.md @@ -61,7 +61,7 @@ Parameters in **boldface** are required; the others are optional. ## Links -- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/contrib/MultiDiskChopper.comp) for `MultiDiskChopper.comp`. +- [Source code](MultiDiskChopper.comp) for `MultiDiskChopper.comp`. --- diff --git a/mcstas-comps/contrib/Multilayer_Sample.md b/mcstas-comps/contrib/Multilayer_Sample.md index a78c7bfa3..6918be6e9 100644 --- a/mcstas-comps/contrib/Multilayer_Sample.md +++ b/mcstas-comps/contrib/Multilayer_Sample.md @@ -49,7 +49,7 @@ Parameters in **boldface** are required; the others are optional. ## Links -- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/contrib/Multilayer_Sample.comp) for `Multilayer_Sample.comp`. +- [Source code](Multilayer_Sample.comp) for `Multilayer_Sample.comp`. --- diff --git a/mcstas-comps/contrib/NMO.md b/mcstas-comps/contrib/NMO.md index a8ea87d13..814d8bf24 100644 --- a/mcstas-comps/contrib/NMO.md +++ b/mcstas-comps/contrib/NMO.md @@ -48,7 +48,7 @@ Parameters in **boldface** are required; the others are optional. ## Links -- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/contrib/NMO.comp) for `NMO.comp`. +- [Source code](NMO.comp) for `NMO.comp`. - Christoph Herb et al., Nucl. Instrum. Meth. A 1040, 1671564 (1-18) 2022. --- diff --git a/mcstas-comps/contrib/NPI_tof_dhkl_detector.md b/mcstas-comps/contrib/NPI_tof_dhkl_detector.md index 53e3d6403..a85ebc3d9 100644 --- a/mcstas-comps/contrib/NPI_tof_dhkl_detector.md +++ b/mcstas-comps/contrib/NPI_tof_dhkl_detector.md @@ -66,7 +66,7 @@ Parameters in **boldface** are required; the others are optional. ## Links -- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/contrib/NPI_tof_dhkl_detector.comp) for `NPI_tof_dhkl_detector.comp`. +- [Source code](NPI_tof_dhkl_detector.comp) for `NPI_tof_dhkl_detector.comp`. --- diff --git a/mcstas-comps/contrib/NPI_tof_theta_monitor.md b/mcstas-comps/contrib/NPI_tof_theta_monitor.md index 86b01073e..722fad159 100644 --- a/mcstas-comps/contrib/NPI_tof_theta_monitor.md +++ b/mcstas-comps/contrib/NPI_tof_theta_monitor.md @@ -43,7 +43,7 @@ Parameters in **boldface** are required; the others are optional. ## Links -- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/contrib/NPI_tof_theta_monitor.comp) for `NPI_tof_theta_monitor.comp`. +- [Source code](NPI_tof_theta_monitor.comp) for `NPI_tof_theta_monitor.comp`. --- diff --git a/mcstas-comps/contrib/PSD_Detector.md b/mcstas-comps/contrib/PSD_Detector.md index 574bf8acd..9c9a685cd 100644 --- a/mcstas-comps/contrib/PSD_Detector.md +++ b/mcstas-comps/contrib/PSD_Detector.md @@ -160,7 +160,7 @@ Parameters in **boldface** are required; the others are optional. ## Links -- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/contrib/PSD_Detector.comp) for `PSD_Detector.comp`. +- [Source code](PSD_Detector.comp) for `PSD_Detector.comp`. - The test/example instrument Test_PSD_Detector.instr. --- diff --git a/mcstas-comps/contrib/PSD_Pol_monitor.md b/mcstas-comps/contrib/PSD_Pol_monitor.md index 24f22f8b0..ccd730c1f 100644 --- a/mcstas-comps/contrib/PSD_Pol_monitor.md +++ b/mcstas-comps/contrib/PSD_Pol_monitor.md @@ -40,7 +40,7 @@ Parameters in **boldface** are required; the others are optional. ## Links -- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/contrib/PSD_Pol_monitor.comp) for `PSD_Pol_monitor.comp`. +- [Source code](PSD_Pol_monitor.comp) for `PSD_Pol_monitor.comp`. --- diff --git a/mcstas-comps/contrib/PSD_monitor_rad.md b/mcstas-comps/contrib/PSD_monitor_rad.md index f447ea88b..e06e6d3ad 100644 --- a/mcstas-comps/contrib/PSD_monitor_rad.md +++ b/mcstas-comps/contrib/PSD_monitor_rad.md @@ -33,7 +33,7 @@ Parameters in **boldface** are required; the others are optional. ## Links -- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/contrib/PSD_monitor_rad.comp) for `PSD_monitor_rad.comp`. +- [Source code](PSD_monitor_rad.comp) for `PSD_monitor_rad.comp`. --- diff --git a/mcstas-comps/contrib/PSD_spinDmon.md b/mcstas-comps/contrib/PSD_spinDmon.md index 8f8520ede..73e0dc6c0 100644 --- a/mcstas-comps/contrib/PSD_spinDmon.md +++ b/mcstas-comps/contrib/PSD_spinDmon.md @@ -37,7 +37,7 @@ Parameters in **boldface** are required; the others are optional. ## Links -- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/contrib/PSD_spinDmon.comp) for `PSD_spinDmon.comp`. +- [Source code](PSD_spinDmon.comp) for `PSD_spinDmon.comp`. --- diff --git a/mcstas-comps/contrib/PSD_spinUmon.md b/mcstas-comps/contrib/PSD_spinUmon.md index 6d998ee58..3276a926e 100644 --- a/mcstas-comps/contrib/PSD_spinUmon.md +++ b/mcstas-comps/contrib/PSD_spinUmon.md @@ -37,7 +37,7 @@ Parameters in **boldface** are required; the others are optional. ## Links -- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/contrib/PSD_spinUmon.comp) for `PSD_spinUmon.comp`. +- [Source code](PSD_spinUmon.comp) for `PSD_spinUmon.comp`. --- diff --git a/mcstas-comps/contrib/PerfectCrystal.md b/mcstas-comps/contrib/PerfectCrystal.md index 29c3b7725..96c25337c 100644 --- a/mcstas-comps/contrib/PerfectCrystal.md +++ b/mcstas-comps/contrib/PerfectCrystal.md @@ -82,7 +82,7 @@ Parameters in **boldface** are required; the others are optional. ## Links -- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/contrib/PerfectCrystal.comp) for `PerfectCrystal.comp`. +- [Source code](PerfectCrystal.comp) for `PerfectCrystal.comp`. --- diff --git a/mcstas-comps/contrib/Pol_bender_tapering.md b/mcstas-comps/contrib/Pol_bender_tapering.md index 8b4f16049..b099297a7 100644 --- a/mcstas-comps/contrib/Pol_bender_tapering.md +++ b/mcstas-comps/contrib/Pol_bender_tapering.md @@ -66,7 +66,7 @@ Parameters in **boldface** are required; the others are optional. ## Links -- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/contrib/Pol_bender_tapering.comp) for `Pol_bender_tapering.comp`. +- [Source code](Pol_bender_tapering.comp) for `Pol_bender_tapering.comp`. --- diff --git a/mcstas-comps/contrib/Pol_pi_2_rotator.md b/mcstas-comps/contrib/Pol_pi_2_rotator.md index b69e9b8aa..15d17de3c 100644 --- a/mcstas-comps/contrib/Pol_pi_2_rotator.md +++ b/mcstas-comps/contrib/Pol_pi_2_rotator.md @@ -32,7 +32,7 @@ Parameters in **boldface** are required; the others are optional. ## Links -- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/contrib/Pol_pi_2_rotator.comp) for `Pol_pi_2_rotator.comp`. +- [Source code](Pol_pi_2_rotator.comp) for `Pol_pi_2_rotator.comp`. --- diff --git a/mcstas-comps/contrib/Pol_triafield.md b/mcstas-comps/contrib/Pol_triafield.md index 0b5fd2835..bffb87889 100644 --- a/mcstas-comps/contrib/Pol_triafield.md +++ b/mcstas-comps/contrib/Pol_triafield.md @@ -49,7 +49,7 @@ Parameters in **boldface** are required; the others are optional. ## Links -- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/contrib/Pol_triafield.comp) for `Pol_triafield.comp`. +- [Source code](Pol_triafield.comp) for `Pol_triafield.comp`. --- diff --git a/mcstas-comps/contrib/Radial_div.md b/mcstas-comps/contrib/Radial_div.md index 75d21f0e1..c109a861f 100644 --- a/mcstas-comps/contrib/Radial_div.md +++ b/mcstas-comps/contrib/Radial_div.md @@ -39,7 +39,7 @@ Parameters in **boldface** are required; the others are optional. ## Links -- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/contrib/Radial_div.comp) for `Radial_div.comp`. +- [Source code](Radial_div.comp) for `Radial_div.comp`. --- diff --git a/mcstas-comps/contrib/SANSCurve.md b/mcstas-comps/contrib/SANSCurve.md index 014a7fc90..11293bb64 100644 --- a/mcstas-comps/contrib/SANSCurve.md +++ b/mcstas-comps/contrib/SANSCurve.md @@ -37,7 +37,7 @@ Parameters in **boldface** are required; the others are optional. ## Links -- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/contrib/SANSCurve.comp) for `SANSCurve.comp`. +- [Source code](SANSCurve.comp) for `SANSCurve.comp`. --- diff --git a/mcstas-comps/contrib/SANSCylinders.md b/mcstas-comps/contrib/SANSCylinders.md index 8bf41c0a7..211c1c3d5 100644 --- a/mcstas-comps/contrib/SANSCylinders.md +++ b/mcstas-comps/contrib/SANSCylinders.md @@ -35,7 +35,7 @@ Parameters in **boldface** are required; the others are optional. ## Links -- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/contrib/SANSCylinders.comp) for `SANSCylinders.comp`. +- [Source code](SANSCylinders.comp) for `SANSCylinders.comp`. --- diff --git a/mcstas-comps/contrib/SANSEllipticCylinders.md b/mcstas-comps/contrib/SANSEllipticCylinders.md index 70885310e..13e23df33 100644 --- a/mcstas-comps/contrib/SANSEllipticCylinders.md +++ b/mcstas-comps/contrib/SANSEllipticCylinders.md @@ -37,7 +37,7 @@ Parameters in **boldface** are required; the others are optional. ## Links -- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/contrib/SANSEllipticCylinders.comp) for `SANSEllipticCylinders.comp`. +- [Source code](SANSEllipticCylinders.comp) for `SANSEllipticCylinders.comp`. --- diff --git a/mcstas-comps/contrib/SANSLiposomes.md b/mcstas-comps/contrib/SANSLiposomes.md index 70934204d..93381f7fc 100644 --- a/mcstas-comps/contrib/SANSLiposomes.md +++ b/mcstas-comps/contrib/SANSLiposomes.md @@ -42,7 +42,7 @@ Parameters in **boldface** are required; the others are optional. ## Links -- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/contrib/SANSLiposomes.comp) for `SANSLiposomes.comp`. +- [Source code](SANSLiposomes.comp) for `SANSLiposomes.comp`. --- diff --git a/mcstas-comps/contrib/SANSNanodiscs.md b/mcstas-comps/contrib/SANSNanodiscs.md index eb57c1729..11fc2c110 100644 --- a/mcstas-comps/contrib/SANSNanodiscs.md +++ b/mcstas-comps/contrib/SANSNanodiscs.md @@ -46,7 +46,7 @@ Parameters in **boldface** are required; the others are optional. ## Links -- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/contrib/SANSNanodiscs.comp) for `SANSNanodiscs.comp`. +- [Source code](SANSNanodiscs.comp) for `SANSNanodiscs.comp`. --- diff --git a/mcstas-comps/contrib/SANSNanodiscsFast.md b/mcstas-comps/contrib/SANSNanodiscsFast.md index b28ab9dde..8d3c1b1cf 100644 --- a/mcstas-comps/contrib/SANSNanodiscsFast.md +++ b/mcstas-comps/contrib/SANSNanodiscsFast.md @@ -50,7 +50,7 @@ Parameters in **boldface** are required; the others are optional. ## Links -- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/contrib/SANSNanodiscsFast.comp) for `SANSNanodiscsFast.comp`. +- [Source code](SANSNanodiscsFast.comp) for `SANSNanodiscsFast.comp`. --- diff --git a/mcstas-comps/contrib/SANSNanodiscsWithTags.md b/mcstas-comps/contrib/SANSNanodiscsWithTags.md index 7696285e7..a2ef54fcf 100644 --- a/mcstas-comps/contrib/SANSNanodiscsWithTags.md +++ b/mcstas-comps/contrib/SANSNanodiscsWithTags.md @@ -51,7 +51,7 @@ Parameters in **boldface** are required; the others are optional. ## Links -- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/contrib/SANSNanodiscsWithTags.comp) for `SANSNanodiscsWithTags.comp`. +- [Source code](SANSNanodiscsWithTags.comp) for `SANSNanodiscsWithTags.comp`. --- diff --git a/mcstas-comps/contrib/SANSNanodiscsWithTagsFast.md b/mcstas-comps/contrib/SANSNanodiscsWithTagsFast.md index 673d10935..140cc4560 100644 --- a/mcstas-comps/contrib/SANSNanodiscsWithTagsFast.md +++ b/mcstas-comps/contrib/SANSNanodiscsWithTagsFast.md @@ -54,7 +54,7 @@ Parameters in **boldface** are required; the others are optional. ## Links -- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/contrib/SANSNanodiscsWithTagsFast.comp) for `SANSNanodiscsWithTagsFast.comp`. +- [Source code](SANSNanodiscsWithTagsFast.comp) for `SANSNanodiscsWithTagsFast.comp`. --- diff --git a/mcstas-comps/contrib/SANSPDB.md b/mcstas-comps/contrib/SANSPDB.md index d52be59aa..a1ec8a8b4 100644 --- a/mcstas-comps/contrib/SANSPDB.md +++ b/mcstas-comps/contrib/SANSPDB.md @@ -38,7 +38,7 @@ Parameters in **boldface** are required; the others are optional. ## Links -- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/contrib/SANSPDB.comp) for `SANSPDB.comp`. +- [Source code](SANSPDB.comp) for `SANSPDB.comp`. --- diff --git a/mcstas-comps/contrib/SANSPDBFast.md b/mcstas-comps/contrib/SANSPDBFast.md index afd4294c9..57ccfe3c3 100644 --- a/mcstas-comps/contrib/SANSPDBFast.md +++ b/mcstas-comps/contrib/SANSPDBFast.md @@ -43,7 +43,7 @@ Parameters in **boldface** are required; the others are optional. ## Links -- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/contrib/SANSPDBFast.comp) for `SANSPDBFast.comp`. +- [Source code](SANSPDBFast.comp) for `SANSPDBFast.comp`. --- diff --git a/mcstas-comps/contrib/SANSQMonitor.md b/mcstas-comps/contrib/SANSQMonitor.md index e8db0f036..5442eb8b7 100644 --- a/mcstas-comps/contrib/SANSQMonitor.md +++ b/mcstas-comps/contrib/SANSQMonitor.md @@ -34,7 +34,7 @@ Parameters in **boldface** are required; the others are optional. ## Links -- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/contrib/SANSQMonitor.comp) for `SANSQMonitor.comp`. +- [Source code](SANSQMonitor.comp) for `SANSQMonitor.comp`. --- diff --git a/mcstas-comps/contrib/SANSShells.md b/mcstas-comps/contrib/SANSShells.md index 2380624ec..c0842d1bd 100644 --- a/mcstas-comps/contrib/SANSShells.md +++ b/mcstas-comps/contrib/SANSShells.md @@ -35,7 +35,7 @@ Parameters in **boldface** are required; the others are optional. ## Links -- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/contrib/SANSShells.comp) for `SANSShells.comp`. +- [Source code](SANSShells.comp) for `SANSShells.comp`. --- diff --git a/mcstas-comps/contrib/SANSSpheres.md b/mcstas-comps/contrib/SANSSpheres.md index d22758bce..9cc824b4a 100644 --- a/mcstas-comps/contrib/SANSSpheres.md +++ b/mcstas-comps/contrib/SANSSpheres.md @@ -35,7 +35,7 @@ Parameters in **boldface** are required; the others are optional. ## Links -- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/contrib/SANSSpheres.comp) for `SANSSpheres.comp`. +- [Source code](SANSSpheres.comp) for `SANSSpheres.comp`. --- diff --git a/mcstas-comps/contrib/SANSSpheresPolydisperse.md b/mcstas-comps/contrib/SANSSpheresPolydisperse.md index b32498847..e7ee600f3 100644 --- a/mcstas-comps/contrib/SANSSpheresPolydisperse.md +++ b/mcstas-comps/contrib/SANSSpheresPolydisperse.md @@ -35,7 +35,7 @@ Parameters in **boldface** are required; the others are optional. ## Links -- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/contrib/SANSSpheresPolydisperse.comp) for `SANSSpheresPolydisperse.comp`. +- [Source code](SANSSpheresPolydisperse.comp) for `SANSSpheresPolydisperse.comp`. --- diff --git a/mcstas-comps/contrib/SANS_AnySamp.md b/mcstas-comps/contrib/SANS_AnySamp.md index bba2be08a..5b8a0538d 100644 --- a/mcstas-comps/contrib/SANS_AnySamp.md +++ b/mcstas-comps/contrib/SANS_AnySamp.md @@ -51,7 +51,7 @@ Parameters in **boldface** are required; the others are optional. ## Links -- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/contrib/SANS_AnySamp.comp) for `SANS_AnySamp.comp`. +- [Source code](SANS_AnySamp.comp) for `SANS_AnySamp.comp`. - Sans_spheres component --- diff --git a/mcstas-comps/contrib/SANS_DebyeS.md b/mcstas-comps/contrib/SANS_DebyeS.md index e45951c5f..7257d07aa 100644 --- a/mcstas-comps/contrib/SANS_DebyeS.md +++ b/mcstas-comps/contrib/SANS_DebyeS.md @@ -44,7 +44,7 @@ Parameters in **boldface** are required; the others are optional. ## Links -- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/contrib/SANS_DebyeS.comp) for `SANS_DebyeS.comp`. +- [Source code](SANS_DebyeS.comp) for `SANS_DebyeS.comp`. - Sans_spheres component --- diff --git a/mcstas-comps/contrib/SANS_Guinier.md b/mcstas-comps/contrib/SANS_Guinier.md index 08c16719e..1df494c07 100644 --- a/mcstas-comps/contrib/SANS_Guinier.md +++ b/mcstas-comps/contrib/SANS_Guinier.md @@ -51,7 +51,7 @@ Parameters in **boldface** are required; the others are optional. ## Links -- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/contrib/SANS_Guinier.comp) for `SANS_Guinier.comp`. +- [Source code](SANS_Guinier.comp) for `SANS_Guinier.comp`. - Sans_spheres component --- diff --git a/mcstas-comps/contrib/SANS_Liposomes_Abs.md b/mcstas-comps/contrib/SANS_Liposomes_Abs.md index ac368dc5a..c3e8b40a9 100644 --- a/mcstas-comps/contrib/SANS_Liposomes_Abs.md +++ b/mcstas-comps/contrib/SANS_Liposomes_Abs.md @@ -53,7 +53,7 @@ Parameters in **boldface** are required; the others are optional. ## Links -- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/contrib/SANS_Liposomes_Abs.comp) for `SANS_Liposomes_Abs.comp`. +- [Source code](SANS_Liposomes_Abs.comp) for `SANS_Liposomes_Abs.comp`. - Sans_spheres component - SANS_AnySamp component diff --git a/mcstas-comps/contrib/SANS_benchmark2.md b/mcstas-comps/contrib/SANS_benchmark2.md index f479703aa..b7c03b765 100644 --- a/mcstas-comps/contrib/SANS_benchmark2.md +++ b/mcstas-comps/contrib/SANS_benchmark2.md @@ -48,7 +48,7 @@ Parameters in **boldface** are required; the others are optional. ## Links -- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/contrib/SANS_benchmark2.comp) for `SANS_benchmark2.comp`. +- [Source code](SANS_benchmark2.comp) for `SANS_benchmark2.comp`. --- diff --git a/mcstas-comps/contrib/SNS_source.md b/mcstas-comps/contrib/SNS_source.md index 413af8bdc..e86d6f56a 100644 --- a/mcstas-comps/contrib/SNS_source.md +++ b/mcstas-comps/contrib/SNS_source.md @@ -47,7 +47,7 @@ Parameters in **boldface** are required; the others are optional. ## Links -- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/contrib/SNS_source.comp) for `SNS_source.comp`. +- [Source code](SNS_source.comp) for `SNS_source.comp`. --- diff --git a/mcstas-comps/contrib/SNS_source_analytic.md b/mcstas-comps/contrib/SNS_source_analytic.md index a1f27fa83..85a38f8c9 100644 --- a/mcstas-comps/contrib/SNS_source_analytic.md +++ b/mcstas-comps/contrib/SNS_source_analytic.md @@ -59,7 +59,7 @@ Parameters in **boldface** are required; the others are optional. ## Links -- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/contrib/SNS_source_analytic.comp) for `SNS_source_analytic.comp`. +- [Source code](SNS_source_analytic.comp) for `SNS_source_analytic.comp`. --- diff --git a/mcstas-comps/contrib/Sans_liposomes_new.md b/mcstas-comps/contrib/Sans_liposomes_new.md index eafa0b3de..2c0db8ffe 100644 --- a/mcstas-comps/contrib/Sans_liposomes_new.md +++ b/mcstas-comps/contrib/Sans_liposomes_new.md @@ -45,7 +45,7 @@ Parameters in **boldface** are required; the others are optional. ## Links -- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/contrib/Sans_liposomes_new.comp) for `Sans_liposomes_new.comp`. +- [Source code](Sans_liposomes_new.comp) for `Sans_liposomes_new.comp`. - The test/example instrument SANS.instr. --- diff --git a/mcstas-comps/contrib/Sapphire_Filter.md b/mcstas-comps/contrib/Sapphire_Filter.md index e1296469e..0c2f7ea1f 100644 --- a/mcstas-comps/contrib/Sapphire_Filter.md +++ b/mcstas-comps/contrib/Sapphire_Filter.md @@ -47,7 +47,7 @@ Parameters in **boldface** are required; the others are optional. ## Links -- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/contrib/Sapphire_Filter.comp) for `Sapphire_Filter.comp`. +- [Source code](Sapphire_Filter.comp) for `Sapphire_Filter.comp`. --- diff --git a/mcstas-comps/contrib/SiC.md b/mcstas-comps/contrib/SiC.md index 117576646..9ebc61dfb 100644 --- a/mcstas-comps/contrib/SiC.md +++ b/mcstas-comps/contrib/SiC.md @@ -28,7 +28,7 @@ Parameters in **boldface** are required; the others are optional. ## Links -- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/contrib/SiC.comp) for `SiC.comp`. +- [Source code](SiC.comp) for `SiC.comp`. --- diff --git a/mcstas-comps/contrib/Single_crystal_inelastic.md b/mcstas-comps/contrib/Single_crystal_inelastic.md index f0f7b0a7f..30e1bf296 100644 --- a/mcstas-comps/contrib/Single_crystal_inelastic.md +++ b/mcstas-comps/contrib/Single_crystal_inelastic.md @@ -90,7 +90,7 @@ Parameters in **boldface** are required; the others are optional. ## Links -- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/contrib/Single_crystal_inelastic.comp) for `Single_crystal_inelastic.comp`. +- [Source code](Single_crystal_inelastic.comp) for `Single_crystal_inelastic.comp`. --- diff --git a/mcstas-comps/contrib/Source_custom.md b/mcstas-comps/contrib/Source_custom.md index 92f047400..21cc3c515 100644 --- a/mcstas-comps/contrib/Source_custom.md +++ b/mcstas-comps/contrib/Source_custom.md @@ -122,7 +122,7 @@ Parameters in **boldface** are required; the others are optional. ## Links -- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/contrib/Source_custom.comp) for `Source_custom.comp`. +- [Source code](Source_custom.comp) for `Source_custom.comp`. - This model is implemented in an interactive notebook to fit custom neutron sources. --- diff --git a/mcstas-comps/contrib/Source_gen4.md b/mcstas-comps/contrib/Source_gen4.md index 3e6f9b377..9eac0cef7 100644 --- a/mcstas-comps/contrib/Source_gen4.md +++ b/mcstas-comps/contrib/Source_gen4.md @@ -109,7 +109,7 @@ Parameters in **boldface** are required; the others are optional. ## Links -- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/contrib/Source_gen4.comp) for `Source_gen4.comp`. +- [Source code](Source_gen4.comp) for `Source_gen4.comp`. - The ILL Yellow book - P. Ageron, Nucl. Inst. Meth. A 284 (1989) 197 diff --git a/mcstas-comps/contrib/Source_multi_surfaces.md b/mcstas-comps/contrib/Source_multi_surfaces.md index 98c885385..6d768c794 100644 --- a/mcstas-comps/contrib/Source_multi_surfaces.md +++ b/mcstas-comps/contrib/Source_multi_surfaces.md @@ -87,7 +87,7 @@ Parameters in **boldface** are required; the others are optional. ## Links -- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/contrib/Source_multi_surfaces.comp) for `Source_multi_surfaces.comp`. +- [Source code](Source_multi_surfaces.comp) for `Source_multi_surfaces.comp`. --- diff --git a/mcstas-comps/contrib/Source_pulsed.md b/mcstas-comps/contrib/Source_pulsed.md index 0b564b9c7..54d354386 100644 --- a/mcstas-comps/contrib/Source_pulsed.md +++ b/mcstas-comps/contrib/Source_pulsed.md @@ -67,7 +67,7 @@ Parameters in **boldface** are required; the others are optional. ## Links -- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/contrib/Source_pulsed.comp) for `Source_pulsed.comp`. +- [Source code](Source_pulsed.comp) for `Source_pulsed.comp`. --- diff --git a/mcstas-comps/contrib/Spherical_Backscattering_Analyser.md b/mcstas-comps/contrib/Spherical_Backscattering_Analyser.md index 6418d7114..84d42b04b 100644 --- a/mcstas-comps/contrib/Spherical_Backscattering_Analyser.md +++ b/mcstas-comps/contrib/Spherical_Backscattering_Analyser.md @@ -43,7 +43,7 @@ Parameters in **boldface** are required; the others are optional. ## Links -- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/contrib/Spherical_Backscattering_Analyser.comp) for `Spherical_Backscattering_Analyser.comp`. +- [Source code](Spherical_Backscattering_Analyser.comp) for `Spherical_Backscattering_Analyser.comp`. --- diff --git a/mcstas-comps/contrib/Spin_random.md b/mcstas-comps/contrib/Spin_random.md index e771d6f4a..90c6bce64 100644 --- a/mcstas-comps/contrib/Spin_random.md +++ b/mcstas-comps/contrib/Spin_random.md @@ -25,7 +25,7 @@ Parameters in **boldface** are required; the others are optional. ## Links -- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/contrib/Spin_random.comp) for `Spin_random.comp`. +- [Source code](Spin_random.comp) for `Spin_random.comp`. --- diff --git a/mcstas-comps/contrib/Spot_sample.md b/mcstas-comps/contrib/Spot_sample.md index 1e22f5559..0cb026b6a 100644 --- a/mcstas-comps/contrib/Spot_sample.md +++ b/mcstas-comps/contrib/Spot_sample.md @@ -52,7 +52,7 @@ Parameters in **boldface** are required; the others are optional. ## Links -- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/contrib/Spot_sample.comp) for `Spot_sample.comp`. +- [Source code](Spot_sample.comp) for `Spot_sample.comp`. --- diff --git a/mcstas-comps/contrib/StatisticalChopper.md b/mcstas-comps/contrib/StatisticalChopper.md index e78b0a630..46d83e821 100644 --- a/mcstas-comps/contrib/StatisticalChopper.md +++ b/mcstas-comps/contrib/StatisticalChopper.md @@ -38,7 +38,7 @@ Parameters in **boldface** are required; the others are optional. ## Links -- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/contrib/StatisticalChopper.comp) for `StatisticalChopper.comp`. +- [Source code](StatisticalChopper.comp) for `StatisticalChopper.comp`. - R. Von Jan and R. Scherm. The statistical chopper for neutron time-of-flight spectroscopy. Nuclear Instruments and Methods, 80 (1970) 69-76. --- diff --git a/mcstas-comps/contrib/StatisticalChopper_Monitor.md b/mcstas-comps/contrib/StatisticalChopper_Monitor.md index 9c23c4f8f..19ab02a26 100644 --- a/mcstas-comps/contrib/StatisticalChopper_Monitor.md +++ b/mcstas-comps/contrib/StatisticalChopper_Monitor.md @@ -34,7 +34,7 @@ Parameters in **boldface** are required; the others are optional. ## Links -- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/contrib/StatisticalChopper_Monitor.comp) for `StatisticalChopper_Monitor.comp`. +- [Source code](StatisticalChopper_Monitor.comp) for `StatisticalChopper_Monitor.comp`. - R. Von Jan and R. Scherm. The statistical chopper for neutron time-of-flight spectroscopy. Nuclear Instruments and Methods, 80 (1970) 69-76. --- diff --git a/mcstas-comps/contrib/SupermirrorFlat.md b/mcstas-comps/contrib/SupermirrorFlat.md index 39ed9754e..e902e4144 100644 --- a/mcstas-comps/contrib/SupermirrorFlat.md +++ b/mcstas-comps/contrib/SupermirrorFlat.md @@ -159,7 +159,7 @@ Parameters in **boldface** are required; the others are optional. ## Links -- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/contrib/SupermirrorFlat.comp) for `SupermirrorFlat.comp`. +- [Source code](SupermirrorFlat.comp) for `SupermirrorFlat.comp`. --- diff --git a/mcstas-comps/contrib/TOF2Q_cyl_monitor.md b/mcstas-comps/contrib/TOF2Q_cyl_monitor.md index 85ca41787..275fbbb5d 100644 --- a/mcstas-comps/contrib/TOF2Q_cyl_monitor.md +++ b/mcstas-comps/contrib/TOF2Q_cyl_monitor.md @@ -38,7 +38,7 @@ Parameters in **boldface** are required; the others are optional. ## Links -- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/contrib/TOF2Q_cyl_monitor.comp) for `TOF2Q_cyl_monitor.comp`. +- [Source code](TOF2Q_cyl_monitor.comp) for `TOF2Q_cyl_monitor.comp`. --- diff --git a/mcstas-comps/contrib/TOFSANSdet.md b/mcstas-comps/contrib/TOFSANSdet.md index 71df6bd2a..1ea162619 100644 --- a/mcstas-comps/contrib/TOFSANSdet.md +++ b/mcstas-comps/contrib/TOFSANSdet.md @@ -58,7 +58,7 @@ Parameters in **boldface** are required; the others are optional. ## Links -- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/contrib/TOFSANSdet.comp) for `TOFSANSdet.comp`. +- [Source code](TOFSANSdet.comp) for `TOFSANSdet.comp`. --- diff --git a/mcstas-comps/contrib/TOF_PSDmonitor.md b/mcstas-comps/contrib/TOF_PSDmonitor.md index 22033a3b3..3a573acbd 100644 --- a/mcstas-comps/contrib/TOF_PSDmonitor.md +++ b/mcstas-comps/contrib/TOF_PSDmonitor.md @@ -42,7 +42,7 @@ Parameters in **boldface** are required; the others are optional. ## Links -- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/contrib/TOF_PSDmonitor.comp) for `TOF_PSDmonitor.comp`. +- [Source code](TOF_PSDmonitor.comp) for `TOF_PSDmonitor.comp`. --- diff --git a/mcstas-comps/contrib/TOF_PSDmonitor_toQ.md b/mcstas-comps/contrib/TOF_PSDmonitor_toQ.md index 11c09aa8d..7c1dafac9 100644 --- a/mcstas-comps/contrib/TOF_PSDmonitor_toQ.md +++ b/mcstas-comps/contrib/TOF_PSDmonitor_toQ.md @@ -50,7 +50,7 @@ Parameters in **boldface** are required; the others are optional. ## Links -- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/contrib/TOF_PSDmonitor_toQ.comp) for `TOF_PSDmonitor_toQ.comp`. +- [Source code](TOF_PSDmonitor_toQ.comp) for `TOF_PSDmonitor_toQ.comp`. --- diff --git a/mcstas-comps/contrib/Transmission_V_polarisator.md b/mcstas-comps/contrib/Transmission_V_polarisator.md index 77625a1aa..f1ecf139b 100644 --- a/mcstas-comps/contrib/Transmission_V_polarisator.md +++ b/mcstas-comps/contrib/Transmission_V_polarisator.md @@ -51,7 +51,7 @@ Parameters in **boldface** are required; the others are optional. ## Links -- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/contrib/Transmission_V_polarisator.comp) for `Transmission_V_polarisator.comp`. +- [Source code](Transmission_V_polarisator.comp) for `Transmission_V_polarisator.comp`. - P. Böni, W. Münzer and A. Ostermann: Physica B: Condensed Matter Volume 404, Issue 17, 1 September 2009, Pages 2620-2623 --- diff --git a/mcstas-comps/contrib/Transmission_polarisatorABSnT.md b/mcstas-comps/contrib/Transmission_polarisatorABSnT.md index 2631b60a3..d5395be06 100644 --- a/mcstas-comps/contrib/Transmission_polarisatorABSnT.md +++ b/mcstas-comps/contrib/Transmission_polarisatorABSnT.md @@ -62,7 +62,7 @@ Parameters in **boldface** are required; the others are optional. ## Links -- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/contrib/Transmission_polarisatorABSnT.comp) for `Transmission_polarisatorABSnT.comp`. +- [Source code](Transmission_polarisatorABSnT.comp) for `Transmission_polarisatorABSnT.comp`. --- diff --git a/mcstas-comps/contrib/Vertical_Bender.md b/mcstas-comps/contrib/Vertical_Bender.md index 2a71d8a98..0e5f5f396 100644 --- a/mcstas-comps/contrib/Vertical_Bender.md +++ b/mcstas-comps/contrib/Vertical_Bender.md @@ -80,7 +80,7 @@ Parameters in **boldface** are required; the others are optional. ## Links -- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/contrib/Vertical_Bender.comp) for `Vertical_Bender.comp`. +- [Source code](Vertical_Bender.comp) for `Vertical_Bender.comp`. --- diff --git a/mcstas-comps/contrib/Vertical_T0a.md b/mcstas-comps/contrib/Vertical_T0a.md index d505ad4df..14086ec05 100644 --- a/mcstas-comps/contrib/Vertical_T0a.md +++ b/mcstas-comps/contrib/Vertical_T0a.md @@ -32,7 +32,7 @@ Parameters in **boldface** are required; the others are optional. ## Links -- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/contrib/Vertical_T0a.comp) for `Vertical_T0a.comp`. +- [Source code](Vertical_T0a.comp) for `Vertical_T0a.comp`. --- diff --git a/mcstas-comps/contrib/ViewModISIS.md b/mcstas-comps/contrib/ViewModISIS.md index 898fc9c98..7c2b16b22 100644 --- a/mcstas-comps/contrib/ViewModISIS.md +++ b/mcstas-comps/contrib/ViewModISIS.md @@ -65,7 +65,7 @@ Parameters in **boldface** are required; the others are optional. ## Links -- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/contrib/ViewModISIS.comp) for `ViewModISIS.comp`. +- [Source code](ViewModISIS.comp) for `ViewModISIS.comp`. --- diff --git a/mcstas-comps/contrib/multi_pipe.md b/mcstas-comps/contrib/multi_pipe.md index 7cecaa6c2..8938d2d10 100644 --- a/mcstas-comps/contrib/multi_pipe.md +++ b/mcstas-comps/contrib/multi_pipe.md @@ -44,7 +44,7 @@ Parameters in **boldface** are required; the others are optional. ## Links -- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/contrib/multi_pipe.comp) for `multi_pipe.comp`. +- [Source code](multi_pipe.comp) for `multi_pipe.comp`. --- diff --git a/mcstas-comps/examples/BNL/BNL_H8/BNL_H8.md b/mcstas-comps/examples/BNL/BNL_H8/BNL_H8.md index 3bd98bd6f..bd12ebfbd 100644 --- a/mcstas-comps/examples/BNL/BNL_H8/BNL_H8.md +++ b/mcstas-comps/examples/BNL/BNL_H8/BNL_H8.md @@ -30,7 +30,7 @@ Parameters in **boldface** are required; the others are optional. ## Links -- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/examples/BNL/BNL_H8/BNL_H8.instr) for `BNL_H8.instr`. +- [Source code](BNL_H8.instr) for `BNL_H8.instr`. - Neutron News 13 (No. 4), 24-29 (2002). --- diff --git a/mcstas-comps/examples/BNL/BNL_H8_simple/BNL_H8_simple.md b/mcstas-comps/examples/BNL/BNL_H8_simple/BNL_H8_simple.md index 3df619844..c8b76d0e4 100644 --- a/mcstas-comps/examples/BNL/BNL_H8_simple/BNL_H8_simple.md +++ b/mcstas-comps/examples/BNL/BNL_H8_simple/BNL_H8_simple.md @@ -30,7 +30,7 @@ Parameters in **boldface** are required; the others are optional. ## Links -- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/examples/BNL/BNL_H8_simple/BNL_H8_simple.instr) for `BNL_H8_simple.instr`. +- [Source code](BNL_H8_simple.instr) for `BNL_H8_simple.instr`. - Neutron News 13 (No. 4), 24-29 (2002). --- diff --git a/mcstas-comps/examples/BNL/h8_test_legacy/h8_test_legacy.md b/mcstas-comps/examples/BNL/h8_test_legacy/h8_test_legacy.md index 125b45fb6..a882adb11 100644 --- a/mcstas-comps/examples/BNL/h8_test_legacy/h8_test_legacy.md +++ b/mcstas-comps/examples/BNL/h8_test_legacy/h8_test_legacy.md @@ -36,7 +36,7 @@ Parameters in **boldface** are required; the others are optional. ## Links -- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/examples/BNL/h8_test_legacy/h8_test_legacy.instr) for `h8_test_legacy.instr`. +- [Source code](h8_test_legacy.instr) for `h8_test_legacy.instr`. - Neutron News 13 (No. 4), 24-29 (2002). --- diff --git a/mcstas-comps/examples/DTU/Test_FZP_simple/Test_FZP_simple.md b/mcstas-comps/examples/DTU/Test_FZP_simple/Test_FZP_simple.md index d90cf19a1..ecbcd997e 100644 --- a/mcstas-comps/examples/DTU/Test_FZP_simple/Test_FZP_simple.md +++ b/mcstas-comps/examples/DTU/Test_FZP_simple/Test_FZP_simple.md @@ -27,7 +27,7 @@ Parameters in **boldface** are required; the others are optional. ## Links -- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/examples/DTU/Test_FZP_simple/Test_FZP_simple.instr) for `Test_FZP_simple.instr`. +- [Source code](Test_FZP_simple.instr) for `Test_FZP_simple.instr`. - --- diff --git a/mcstas-comps/examples/DTU/Vin_test/Vin_test.md b/mcstas-comps/examples/DTU/Vin_test/Vin_test.md index a041b9412..e9ef95c09 100644 --- a/mcstas-comps/examples/DTU/Vin_test/Vin_test.md +++ b/mcstas-comps/examples/DTU/Vin_test/Vin_test.md @@ -25,7 +25,7 @@ Parameters in **boldface** are required; the others are optional. ## Links -- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/examples/DTU/Vin_test/Vin_test.instr) for `Vin_test.instr`. +- [Source code](Vin_test.instr) for `Vin_test.instr`. - A reference/HTML link for more information --- diff --git a/mcstas-comps/examples/DTU/Vout_test/Vout_test.md b/mcstas-comps/examples/DTU/Vout_test/Vout_test.md index aaeb85575..7a17a705b 100644 --- a/mcstas-comps/examples/DTU/Vout_test/Vout_test.md +++ b/mcstas-comps/examples/DTU/Vout_test/Vout_test.md @@ -25,7 +25,7 @@ Parameters in **boldface** are required; the others are optional. ## Links -- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/examples/DTU/Vout_test/Vout_test.instr) for `Vout_test.instr`. +- [Source code](Vout_test.instr) for `Vout_test.instr`. - A reference/HTML link for more information --- diff --git a/mcstas-comps/examples/ESS/ESS_BEER_MCPL/ESS_BEER_MCPL.md b/mcstas-comps/examples/ESS/ESS_BEER_MCPL/ESS_BEER_MCPL.md index 5f2e3aa6e..dfbda43b4 100644 --- a/mcstas-comps/examples/ESS/ESS_BEER_MCPL/ESS_BEER_MCPL.md +++ b/mcstas-comps/examples/ESS/ESS_BEER_MCPL/ESS_BEER_MCPL.md @@ -75,7 +75,7 @@ Parameters in **boldface** are required; the others are optional. ## Links -- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/examples/ESS/ESS_BEER_MCPL/ESS_BEER_MCPL.instr) for `ESS_BEER_MCPL.instr`. +- [Source code](ESS_BEER_MCPL.instr) for `ESS_BEER_MCPL.instr`. --- diff --git a/mcstas-comps/examples/ESS/ESS_IN5_reprate/ESS_IN5_reprate.md b/mcstas-comps/examples/ESS/ESS_IN5_reprate/ESS_IN5_reprate.md index 2f2bda775..a0664a84a 100644 --- a/mcstas-comps/examples/ESS/ESS_IN5_reprate/ESS_IN5_reprate.md +++ b/mcstas-comps/examples/ESS/ESS_IN5_reprate/ESS_IN5_reprate.md @@ -71,7 +71,7 @@ Parameters in **boldface** are required; the others are optional. ## Links -- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/examples/ESS/ESS_IN5_reprate/ESS_IN5_reprate.instr) for `ESS_IN5_reprate.instr`. +- [Source code](ESS_IN5_reprate.instr) for `ESS_IN5_reprate.instr`. - The ESS-Rencurel website. - The IN5@ILL Yellow Pages diff --git a/mcstas-comps/examples/ESS/ESS_Testbeamline_HZB_V20/ESS_Testbeamline_HZB_V20.md b/mcstas-comps/examples/ESS/ESS_Testbeamline_HZB_V20/ESS_Testbeamline_HZB_V20.md index 3e9eac501..0603e6881 100644 --- a/mcstas-comps/examples/ESS/ESS_Testbeamline_HZB_V20/ESS_Testbeamline_HZB_V20.md +++ b/mcstas-comps/examples/ESS/ESS_Testbeamline_HZB_V20/ESS_Testbeamline_HZB_V20.md @@ -50,7 +50,7 @@ Parameters in **boldface** are required; the others are optional. ## Links -- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/examples/ESS/ESS_Testbeamline_HZB_V20/ESS_Testbeamline_HZB_V20.instr) for `ESS_Testbeamline_HZB_V20.instr`. +- [Source code](ESS_Testbeamline_HZB_V20.instr) for `ESS_Testbeamline_HZB_V20.instr`. - V20 page at the HZB website - V20 info section at the ESS website diff --git a/mcstas-comps/examples/ESS/ESS_butterfly_Guide_curved_test/ESS_butterfly_Guide_curved_test.md b/mcstas-comps/examples/ESS/ESS_butterfly_Guide_curved_test/ESS_butterfly_Guide_curved_test.md index 5a1f4549e..f3cc787c0 100644 --- a/mcstas-comps/examples/ESS/ESS_butterfly_Guide_curved_test/ESS_butterfly_Guide_curved_test.md +++ b/mcstas-comps/examples/ESS/ESS_butterfly_Guide_curved_test/ESS_butterfly_Guide_curved_test.md @@ -43,7 +43,7 @@ Parameters in **boldface** are required; the others are optional. ## Links -- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/examples/ESS/ESS_butterfly_Guide_curved_test/ESS_butterfly_Guide_curved_test.instr) for `ESS_butterfly_Guide_curved_test.instr`. +- [Source code](ESS_butterfly_Guide_curved_test.instr) for `ESS_butterfly_Guide_curved_test.instr`. - - Benchmarking website available at http://ess_butterfly.mcstas.org diff --git a/mcstas-comps/examples/ESS/ESS_butterfly_MCPL_test/ESS_butterfly_MCPL_test.md b/mcstas-comps/examples/ESS/ESS_butterfly_MCPL_test/ESS_butterfly_MCPL_test.md index aafb0eed6..a7a592d6c 100644 --- a/mcstas-comps/examples/ESS/ESS_butterfly_MCPL_test/ESS_butterfly_MCPL_test.md +++ b/mcstas-comps/examples/ESS/ESS_butterfly_MCPL_test/ESS_butterfly_MCPL_test.md @@ -46,7 +46,7 @@ Parameters in **boldface** are required; the others are optional. ## Links -- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/examples/ESS/ESS_butterfly_MCPL_test/ESS_butterfly_MCPL_test.instr) for `ESS_butterfly_MCPL_test.instr`. +- [Source code](ESS_butterfly_MCPL_test.instr) for `ESS_butterfly_MCPL_test.instr`. - - Benchmarking website available at http://ess_butterfly.mcstas.org diff --git a/mcstas-comps/examples/ESS/ESS_butterfly_test/ESS_butterfly_test.md b/mcstas-comps/examples/ESS/ESS_butterfly_test/ESS_butterfly_test.md index af90be557..36f1c5097 100644 --- a/mcstas-comps/examples/ESS/ESS_butterfly_test/ESS_butterfly_test.md +++ b/mcstas-comps/examples/ESS/ESS_butterfly_test/ESS_butterfly_test.md @@ -37,7 +37,7 @@ Parameters in **boldface** are required; the others are optional. ## Links -- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/examples/ESS/ESS_butterfly_test/ESS_butterfly_test.instr) for `ESS_butterfly_test.instr`. +- [Source code](ESS_butterfly_test.instr) for `ESS_butterfly_test.instr`. - - Benchmarking website available at http://ess_butterfly.mcstas.org diff --git a/mcstas-comps/examples/ESS/ESS_butterfly_tfocus_NOFOCUS_test/ESS_butterfly_tfocus_NOFOCUS_test.md b/mcstas-comps/examples/ESS/ESS_butterfly_tfocus_NOFOCUS_test/ESS_butterfly_tfocus_NOFOCUS_test.md index 56a2f8a8c..f89b56d93 100644 --- a/mcstas-comps/examples/ESS/ESS_butterfly_tfocus_NOFOCUS_test/ESS_butterfly_tfocus_NOFOCUS_test.md +++ b/mcstas-comps/examples/ESS/ESS_butterfly_tfocus_NOFOCUS_test/ESS_butterfly_tfocus_NOFOCUS_test.md @@ -40,7 +40,7 @@ Parameters in **boldface** are required; the others are optional. ## Links -- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/examples/ESS/ESS_butterfly_tfocus_NOFOCUS_test/ESS_butterfly_tfocus_NOFOCUS_test.instr) for `ESS_butterfly_tfocus_NOFOCUS_test.instr`. +- [Source code](ESS_butterfly_tfocus_NOFOCUS_test.instr) for `ESS_butterfly_tfocus_NOFOCUS_test.instr`. - - Benchmarking website available at http://ess_butterfly.mcstas.org diff --git a/mcstas-comps/examples/ESS/ESS_butterfly_tfocus_test/ESS_butterfly_tfocus_test.md b/mcstas-comps/examples/ESS/ESS_butterfly_tfocus_test/ESS_butterfly_tfocus_test.md index 130d2d07d..16a7016a0 100644 --- a/mcstas-comps/examples/ESS/ESS_butterfly_tfocus_test/ESS_butterfly_tfocus_test.md +++ b/mcstas-comps/examples/ESS/ESS_butterfly_tfocus_test/ESS_butterfly_tfocus_test.md @@ -40,7 +40,7 @@ Parameters in **boldface** are required; the others are optional. ## Links -- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/examples/ESS/ESS_butterfly_tfocus_test/ESS_butterfly_tfocus_test.instr) for `ESS_butterfly_tfocus_test.instr`. +- [Source code](ESS_butterfly_tfocus_test.instr) for `ESS_butterfly_tfocus_test.instr`. - - Benchmarking website available at http://ess_butterfly.mcstas.org diff --git a/mcstas-comps/examples/ESS/ESS_mcpl2hist/ESS_mcpl2hist.md b/mcstas-comps/examples/ESS/ESS_mcpl2hist/ESS_mcpl2hist.md index c5a2277cb..598be94ee 100644 --- a/mcstas-comps/examples/ESS/ESS_mcpl2hist/ESS_mcpl2hist.md +++ b/mcstas-comps/examples/ESS/ESS_mcpl2hist/ESS_mcpl2hist.md @@ -32,7 +32,7 @@ Parameters in **boldface** are required; the others are optional. ## Links -- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/examples/ESS/ESS_mcpl2hist/ESS_mcpl2hist.instr) for `ESS_mcpl2hist.instr`. +- [Source code](ESS_mcpl2hist.instr) for `ESS_mcpl2hist.instr`. - - Benchmarking website available at http://ess_butterfly.mcstas.org diff --git a/mcstas-comps/examples/FZ_Juelich/FZJ_BenchmarkSfin2/FZJ_BenchmarkSfin2.md b/mcstas-comps/examples/FZ_Juelich/FZJ_BenchmarkSfin2/FZJ_BenchmarkSfin2.md index 2a74aeb40..8dce65664 100644 --- a/mcstas-comps/examples/FZ_Juelich/FZJ_BenchmarkSfin2/FZJ_BenchmarkSfin2.md +++ b/mcstas-comps/examples/FZ_Juelich/FZJ_BenchmarkSfin2/FZJ_BenchmarkSfin2.md @@ -47,7 +47,7 @@ Parameters in **boldface** are required; the others are optional. ## Links -- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/examples/FZ_Juelich/FZJ_BenchmarkSfin2/FZJ_BenchmarkSfin2.instr) for `FZJ_BenchmarkSfin2.instr`. +- [Source code](FZJ_BenchmarkSfin2.instr) for `FZJ_BenchmarkSfin2.instr`. --- diff --git a/mcstas-comps/examples/FZ_Juelich/FZJ_KWS2_Lens/FZJ_KWS2_Lens.md b/mcstas-comps/examples/FZ_Juelich/FZJ_KWS2_Lens/FZJ_KWS2_Lens.md index 0960cb8eb..6f3bf3328 100644 --- a/mcstas-comps/examples/FZ_Juelich/FZJ_KWS2_Lens/FZJ_KWS2_Lens.md +++ b/mcstas-comps/examples/FZ_Juelich/FZJ_KWS2_Lens/FZJ_KWS2_Lens.md @@ -34,7 +34,7 @@ Parameters in **boldface** are required; the others are optional. ## Links -- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/examples/FZ_Juelich/FZJ_KWS2_Lens/FZJ_KWS2_Lens.instr) for `FZJ_KWS2_Lens.instr`. +- [Source code](FZJ_KWS2_Lens.instr) for `FZJ_KWS2_Lens.instr`. - The Lens_simple component --- diff --git a/mcstas-comps/examples/FZ_Juelich/FZJ_SANS_KWS2_AnySample/FZJ_SANS_KWS2_AnySample.md b/mcstas-comps/examples/FZ_Juelich/FZJ_SANS_KWS2_AnySample/FZJ_SANS_KWS2_AnySample.md index 471a37cf5..84dd202e1 100644 --- a/mcstas-comps/examples/FZ_Juelich/FZJ_SANS_KWS2_AnySample/FZJ_SANS_KWS2_AnySample.md +++ b/mcstas-comps/examples/FZ_Juelich/FZJ_SANS_KWS2_AnySample/FZJ_SANS_KWS2_AnySample.md @@ -32,7 +32,7 @@ Parameters in **boldface** are required; the others are optional. ## Links -- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/examples/FZ_Juelich/FZJ_SANS_KWS2_AnySample/FZJ_SANS_KWS2_AnySample.instr) for `FZJ_SANS_KWS2_AnySample.instr`. +- [Source code](FZJ_SANS_KWS2_AnySample.instr) for `FZJ_SANS_KWS2_AnySample.instr`. --- diff --git a/mcstas-comps/examples/HZB/HZB_FLEX/HZB_FLEX.md b/mcstas-comps/examples/HZB/HZB_FLEX/HZB_FLEX.md index b355cbc13..484d4fc6a 100644 --- a/mcstas-comps/examples/HZB/HZB_FLEX/HZB_FLEX.md +++ b/mcstas-comps/examples/HZB/HZB_FLEX/HZB_FLEX.md @@ -34,7 +34,7 @@ Parameters in **boldface** are required; the others are optional. ## Links -- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/examples/HZB/HZB_FLEX/HZB_FLEX.instr) for `HZB_FLEX.instr`. +- [Source code](HZB_FLEX.instr) for `HZB_FLEX.instr`. --- diff --git a/mcstas-comps/examples/HZB/HZB_NEAT/HZB_NEAT.md b/mcstas-comps/examples/HZB/HZB_NEAT/HZB_NEAT.md index 1682513b8..9834ba1ef 100644 --- a/mcstas-comps/examples/HZB/HZB_NEAT/HZB_NEAT.md +++ b/mcstas-comps/examples/HZB/HZB_NEAT/HZB_NEAT.md @@ -48,7 +48,7 @@ Parameters in **boldface** are required; the others are optional. ## Links -- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/examples/HZB/HZB_NEAT/HZB_NEAT.instr) for `HZB_NEAT.instr`. +- [Source code](HZB_NEAT.instr) for `HZB_NEAT.instr`. - NEAT at HZB/BENSC --- diff --git a/mcstas-comps/examples/HighNESS/WOFSANS/WOFSANS.md b/mcstas-comps/examples/HighNESS/WOFSANS/WOFSANS.md index cbfa4cda0..0e5740bb7 100644 --- a/mcstas-comps/examples/HighNESS/WOFSANS/WOFSANS.md +++ b/mcstas-comps/examples/HighNESS/WOFSANS/WOFSANS.md @@ -46,7 +46,7 @@ Parameters in **boldface** are required; the others are optional. ## Links -- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/examples/HighNESS/WOFSANS/WOFSANS.instr) for `WOFSANS.instr`. +- [Source code](WOFSANS.instr) for `WOFSANS.instr`. - V. Santoro et. al. Nuc. Sci. Eng. 2023 https://doi.org/10.1080/00295639.2023.2204184 - https://highnessproject.eu - This work was supported by the HighNESS project and is funded by European Commission (H2020-951782). diff --git a/mcstas-comps/examples/ILL/ILL_BRISP/ILL_BRISP.md b/mcstas-comps/examples/ILL/ILL_BRISP/ILL_BRISP.md index 9bcc94944..ae85583d0 100644 --- a/mcstas-comps/examples/ILL/ILL_BRISP/ILL_BRISP.md +++ b/mcstas-comps/examples/ILL/ILL_BRISP/ILL_BRISP.md @@ -86,7 +86,7 @@ Parameters in **boldface** are required; the others are optional. ## Links -- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/examples/ILL/ILL_BRISP/ILL_BRISP.instr) for `ILL_BRISP.instr`. +- [Source code](ILL_BRISP.instr) for `ILL_BRISP.instr`. - The BRISP spectrometer at the ILL BRISP --- diff --git a/mcstas-comps/examples/ILL/ILL_D2B/ILL_D2B.md b/mcstas-comps/examples/ILL/ILL_D2B/ILL_D2B.md index 06f34370f..b26503c06 100644 --- a/mcstas-comps/examples/ILL/ILL_D2B/ILL_D2B.md +++ b/mcstas-comps/examples/ILL/ILL_D2B/ILL_D2B.md @@ -64,7 +64,7 @@ Parameters in **boldface** are required; the others are optional. ## Links -- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/examples/ILL/ILL_D2B/ILL_D2B.instr) for `ILL_D2B.instr`. +- [Source code](ILL_D2B.instr) for `ILL_D2B.instr`. - G. Caglioti, A. Paoletti, F.P. Ricci, Nucl. Instr. and. Meth. 3 (1958) 223 - L.D. Cussen, Nucl. Instr. and. Meth. A 554 (2005) 406 - M. Morhac, NIM A 600 (2009) 478 diff --git a/mcstas-comps/examples/ILL/ILL_D2B_noenv/ILL_D2B_noenv.md b/mcstas-comps/examples/ILL/ILL_D2B_noenv/ILL_D2B_noenv.md index 050b9bc32..a424bfd01 100644 --- a/mcstas-comps/examples/ILL/ILL_D2B_noenv/ILL_D2B_noenv.md +++ b/mcstas-comps/examples/ILL/ILL_D2B_noenv/ILL_D2B_noenv.md @@ -64,7 +64,7 @@ Parameters in **boldface** are required; the others are optional. ## Links -- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/examples/ILL/ILL_D2B_noenv/ILL_D2B_noenv.instr) for `ILL_D2B_noenv.instr`. +- [Source code](ILL_D2B_noenv.instr) for `ILL_D2B_noenv.instr`. - G. Caglioti, A. Paoletti, F.P. Ricci, Nucl. Instr. and. Meth. 3 (1958) 223 - L.D. Cussen, Nucl. Instr. and. Meth. A 554 (2005) 406 - M. Morhac, NIM A 600 (2009) 478 diff --git a/mcstas-comps/examples/ILL/ILL_D4/ILL_D4.md b/mcstas-comps/examples/ILL/ILL_D4/ILL_D4.md index 8cd64f5ce..269f3761e 100644 --- a/mcstas-comps/examples/ILL/ILL_D4/ILL_D4.md +++ b/mcstas-comps/examples/ILL/ILL_D4/ILL_D4.md @@ -43,7 +43,7 @@ Parameters in **boldface** are required; the others are optional. ## Links -- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/examples/ILL/ILL_D4/ILL_D4.instr) for `ILL_D4.instr`. +- [Source code](ILL_D4.instr) for `ILL_D4.instr`. - The D4 diffractometer at the ILL --- diff --git a/mcstas-comps/examples/ILL/ILL_H10_IN8/ILL_H10_IN8.md b/mcstas-comps/examples/ILL/ILL_H10_IN8/ILL_H10_IN8.md index 93e19ee80..2c430d7f1 100644 --- a/mcstas-comps/examples/ILL/ILL_H10_IN8/ILL_H10_IN8.md +++ b/mcstas-comps/examples/ILL/ILL_H10_IN8/ILL_H10_IN8.md @@ -75,7 +75,7 @@ Parameters in **boldface** are required; the others are optional. ## Links -- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/examples/ILL/ILL_H10_IN8/ILL_H10_IN8.instr) for `ILL_H10_IN8.instr`. +- [Source code](ILL_H10_IN8.instr) for `ILL_H10_IN8.instr`. - Rescal for Matlab at http://www.ill.eu/instruments-support/computing-for-science/cs-software/all-software/matlab-ill/ - Restrax at http://omega.ujf.cas.cz/restrax/ diff --git a/mcstas-comps/examples/ILL/ILL_H113/ILL_H113.md b/mcstas-comps/examples/ILL/ILL_H113/ILL_H113.md index c45d669d6..0f349bab0 100644 --- a/mcstas-comps/examples/ILL/ILL_H113/ILL_H113.md +++ b/mcstas-comps/examples/ILL/ILL_H113/ILL_H113.md @@ -28,7 +28,7 @@ Parameters in **boldface** are required; the others are optional. ## Links -- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/examples/ILL/ILL_H113/ILL_H113.instr) for `ILL_H113.instr`. +- [Source code](ILL_H113.instr) for `ILL_H113.instr`. - The PF1b beam line at the ILL --- diff --git a/mcstas-comps/examples/ILL/ILL_H13_IN20/ILL_H13_IN20.md b/mcstas-comps/examples/ILL/ILL_H13_IN20/ILL_H13_IN20.md index 61fde6703..22479ec63 100644 --- a/mcstas-comps/examples/ILL/ILL_H13_IN20/ILL_H13_IN20.md +++ b/mcstas-comps/examples/ILL/ILL_H13_IN20/ILL_H13_IN20.md @@ -74,7 +74,7 @@ Parameters in **boldface** are required; the others are optional. ## Links -- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/examples/ILL/ILL_H13_IN20/ILL_H13_IN20.instr) for `ILL_H13_IN20.instr`. +- [Source code](ILL_H13_IN20.instr) for `ILL_H13_IN20.instr`. - Rescal for Matlab at http://www.ill.eu/instruments-support/computing-for-science/cs-software/all-software/matlab-ill/ - Restrax at http://omega.ujf.cas.cz/restrax/ diff --git a/mcstas-comps/examples/ILL/ILL_H142/ILL_H142.md b/mcstas-comps/examples/ILL/ILL_H142/ILL_H142.md index 5110dc02c..31b94401d 100644 --- a/mcstas-comps/examples/ILL/ILL_H142/ILL_H142.md +++ b/mcstas-comps/examples/ILL/ILL_H142/ILL_H142.md @@ -29,7 +29,7 @@ Parameters in **boldface** are required; the others are optional. ## Links -- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/examples/ILL/ILL_H142/ILL_H142.instr) for `ILL_H142.instr`. +- [Source code](ILL_H142.instr) for `ILL_H142.instr`. - The IN12 TAS at the ILL --- diff --git a/mcstas-comps/examples/ILL/ILL_H142_D33/ILL_H142_D33.md b/mcstas-comps/examples/ILL/ILL_H142_D33/ILL_H142_D33.md index aec3dcefc..d40d31782 100644 --- a/mcstas-comps/examples/ILL/ILL_H142_D33/ILL_H142_D33.md +++ b/mcstas-comps/examples/ILL/ILL_H142_D33/ILL_H142_D33.md @@ -41,7 +41,7 @@ Parameters in **boldface** are required; the others are optional. ## Links -- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/examples/ILL/ILL_H142_D33/ILL_H142_D33.instr) for `ILL_H142_D33.instr`. +- [Source code](ILL_H142_D33.instr) for `ILL_H142_D33.instr`. --- diff --git a/mcstas-comps/examples/ILL/ILL_H142_IN12/ILL_H142_IN12.md b/mcstas-comps/examples/ILL/ILL_H142_IN12/ILL_H142_IN12.md index be6510b67..f39efcaec 100644 --- a/mcstas-comps/examples/ILL/ILL_H142_IN12/ILL_H142_IN12.md +++ b/mcstas-comps/examples/ILL/ILL_H142_IN12/ILL_H142_IN12.md @@ -43,7 +43,7 @@ Parameters in **boldface** are required; the others are optional. ## Links -- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/examples/ILL/ILL_H142_IN12/ILL_H142_IN12.instr) for `ILL_H142_IN12.instr`. +- [Source code](ILL_H142_IN12.instr) for `ILL_H142_IN12.instr`. - The IN12 TAS at the ILL --- diff --git a/mcstas-comps/examples/ILL/ILL_H142_simple/ILL_H142_simple.md b/mcstas-comps/examples/ILL/ILL_H142_simple/ILL_H142_simple.md index e86c3596f..595ce1212 100644 --- a/mcstas-comps/examples/ILL/ILL_H142_simple/ILL_H142_simple.md +++ b/mcstas-comps/examples/ILL/ILL_H142_simple/ILL_H142_simple.md @@ -29,7 +29,7 @@ Parameters in **boldface** are required; the others are optional. ## Links -- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/examples/ILL/ILL_H142_simple/ILL_H142_simple.instr) for `ILL_H142_simple.instr`. +- [Source code](ILL_H142_simple.instr) for `ILL_H142_simple.instr`. - The IN12 TAS at the ILL --- diff --git a/mcstas-comps/examples/ILL/ILL_H143_LADI/ILL_H143_LADI.md b/mcstas-comps/examples/ILL/ILL_H143_LADI/ILL_H143_LADI.md index 2fad570ae..99a6abf4c 100644 --- a/mcstas-comps/examples/ILL/ILL_H143_LADI/ILL_H143_LADI.md +++ b/mcstas-comps/examples/ILL/ILL_H143_LADI/ILL_H143_LADI.md @@ -53,7 +53,7 @@ Parameters in **boldface** are required; the others are optional. ## Links -- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/examples/ILL/ILL_H143_LADI/ILL_H143_LADI.instr) for `ILL_H143_LADI.instr`. +- [Source code](ILL_H143_LADI.instr) for `ILL_H143_LADI.instr`. --- diff --git a/mcstas-comps/examples/ILL/ILL_H15/ILL_H15.md b/mcstas-comps/examples/ILL/ILL_H15/ILL_H15.md index ce244cbf5..983e1a536 100644 --- a/mcstas-comps/examples/ILL/ILL_H15/ILL_H15.md +++ b/mcstas-comps/examples/ILL/ILL_H15/ILL_H15.md @@ -28,7 +28,7 @@ Parameters in **boldface** are required; the others are optional. ## Links -- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/examples/ILL/ILL_H15/ILL_H15.instr) for `ILL_H15.instr`. +- [Source code](ILL_H15.instr) for `ILL_H15.instr`. - The IN6 TOF at the ILL --- diff --git a/mcstas-comps/examples/ILL/ILL_H15_D11/ILL_H15_D11.md b/mcstas-comps/examples/ILL/ILL_H15_D11/ILL_H15_D11.md index 3dd0b918e..ceeec955a 100644 --- a/mcstas-comps/examples/ILL/ILL_H15_D11/ILL_H15_D11.md +++ b/mcstas-comps/examples/ILL/ILL_H15_D11/ILL_H15_D11.md @@ -51,7 +51,7 @@ Parameters in **boldface** are required; the others are optional. ## Links -- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/examples/ILL/ILL_H15_D11/ILL_H15_D11.instr) for `ILL_H15_D11.instr`. +- [Source code](ILL_H15_D11.instr) for `ILL_H15_D11.instr`. --- diff --git a/mcstas-comps/examples/ILL/ILL_H15_IN6/ILL_H15_IN6.md b/mcstas-comps/examples/ILL/ILL_H15_IN6/ILL_H15_IN6.md index 992fa1945..d6c370391 100644 --- a/mcstas-comps/examples/ILL/ILL_H15_IN6/ILL_H15_IN6.md +++ b/mcstas-comps/examples/ILL/ILL_H15_IN6/ILL_H15_IN6.md @@ -55,7 +55,7 @@ Parameters in **boldface** are required; the others are optional. ## Links -- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/examples/ILL/ILL_H15_IN6/ILL_H15_IN6.instr) for `ILL_H15_IN6.instr`. +- [Source code](ILL_H15_IN6.instr) for `ILL_H15_IN6.instr`. - The IN6@ILL Yellow Pages - R.Scherm et al, "Another Time of Flight Spectrometer", ILL Report 76S235, 1976 - R.Scherm, "A high-resolution spectrometer ...", report Jul-295-NP, Kernforschungsanlage Julich, 1965 diff --git a/mcstas-comps/examples/ILL/ILL_H15_SAM/ILL_H15_SAM.md b/mcstas-comps/examples/ILL/ILL_H15_SAM/ILL_H15_SAM.md index ccb0c9e6d..4d6fe9e9c 100644 --- a/mcstas-comps/examples/ILL/ILL_H15_SAM/ILL_H15_SAM.md +++ b/mcstas-comps/examples/ILL/ILL_H15_SAM/ILL_H15_SAM.md @@ -63,7 +63,7 @@ Parameters in **boldface** are required; the others are optional. ## Links -- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/examples/ILL/ILL_H15_SAM/ILL_H15_SAM.instr) for `ILL_H15_SAM.instr`. +- [Source code](ILL_H15_SAM.instr) for `ILL_H15_SAM.instr`. - --- diff --git a/mcstas-comps/examples/ILL/ILL_H16/ILL_H16.md b/mcstas-comps/examples/ILL/ILL_H16/ILL_H16.md index 8ab0bb71b..cda8c204b 100644 --- a/mcstas-comps/examples/ILL/ILL_H16/ILL_H16.md +++ b/mcstas-comps/examples/ILL/ILL_H16/ILL_H16.md @@ -27,7 +27,7 @@ Parameters in **boldface** are required; the others are optional. ## Links -- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/examples/ILL/ILL_H16/ILL_H16.instr) for `ILL_H16.instr`. +- [Source code](ILL_H16.instr) for `ILL_H16.instr`. --- diff --git a/mcstas-comps/examples/ILL/ILL_H16_IN5/ILL_H16_IN5.md b/mcstas-comps/examples/ILL/ILL_H16_IN5/ILL_H16_IN5.md index 587a3bc95..3f05bb11f 100644 --- a/mcstas-comps/examples/ILL/ILL_H16_IN5/ILL_H16_IN5.md +++ b/mcstas-comps/examples/ILL/ILL_H16_IN5/ILL_H16_IN5.md @@ -29,7 +29,7 @@ Parameters in **boldface** are required; the others are optional. ## Links -- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/examples/ILL/ILL_H16_IN5/ILL_H16_IN5.instr) for `ILL_H16_IN5.instr`. +- [Source code](ILL_H16_IN5.instr) for `ILL_H16_IN5.instr`. - The IN5@ILL cold time of flight instrument --- diff --git a/mcstas-comps/examples/ILL/ILL_H22/ILL_H22.md b/mcstas-comps/examples/ILL/ILL_H22/ILL_H22.md index 12541b073..3760114c5 100644 --- a/mcstas-comps/examples/ILL/ILL_H22/ILL_H22.md +++ b/mcstas-comps/examples/ILL/ILL_H22/ILL_H22.md @@ -28,7 +28,7 @@ Parameters in **boldface** are required; the others are optional. ## Links -- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/examples/ILL/ILL_H22/ILL_H22.instr) for `ILL_H22.instr`. +- [Source code](ILL_H22.instr) for `ILL_H22.instr`. --- diff --git a/mcstas-comps/examples/ILL/ILL_H22_D1A/ILL_H22_D1A.md b/mcstas-comps/examples/ILL/ILL_H22_D1A/ILL_H22_D1A.md index 28b8028eb..41f58b927 100644 --- a/mcstas-comps/examples/ILL/ILL_H22_D1A/ILL_H22_D1A.md +++ b/mcstas-comps/examples/ILL/ILL_H22_D1A/ILL_H22_D1A.md @@ -57,7 +57,7 @@ Parameters in **boldface** are required; the others are optional. ## Links -- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/examples/ILL/ILL_H22_D1A/ILL_H22_D1A.instr) for `ILL_H22_D1A.instr`. +- [Source code](ILL_H22_D1A.instr) for `ILL_H22_D1A.instr`. --- diff --git a/mcstas-comps/examples/ILL/ILL_H22_D1A_noenv/ILL_H22_D1A_noenv.md b/mcstas-comps/examples/ILL/ILL_H22_D1A_noenv/ILL_H22_D1A_noenv.md index 3bfebf9b4..a1715a3d2 100644 --- a/mcstas-comps/examples/ILL/ILL_H22_D1A_noenv/ILL_H22_D1A_noenv.md +++ b/mcstas-comps/examples/ILL/ILL_H22_D1A_noenv/ILL_H22_D1A_noenv.md @@ -57,7 +57,7 @@ Parameters in **boldface** are required; the others are optional. ## Links -- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/examples/ILL/ILL_H22_D1A_noenv/ILL_H22_D1A_noenv.instr) for `ILL_H22_D1A_noenv.instr`. +- [Source code](ILL_H22_D1A_noenv.instr) for `ILL_H22_D1A_noenv.instr`. --- diff --git a/mcstas-comps/examples/ILL/ILL_H22_D1B/ILL_H22_D1B.md b/mcstas-comps/examples/ILL/ILL_H22_D1B/ILL_H22_D1B.md index 92550e09d..c79bcb332 100644 --- a/mcstas-comps/examples/ILL/ILL_H22_D1B/ILL_H22_D1B.md +++ b/mcstas-comps/examples/ILL/ILL_H22_D1B/ILL_H22_D1B.md @@ -67,7 +67,7 @@ Parameters in **boldface** are required; the others are optional. ## Links -- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/examples/ILL/ILL_H22_D1B/ILL_H22_D1B.instr) for `ILL_H22_D1B.instr`. +- [Source code](ILL_H22_D1B.instr) for `ILL_H22_D1B.instr`. --- diff --git a/mcstas-comps/examples/ILL/ILL_H22_D1B_noenv/ILL_H22_D1B_noenv.md b/mcstas-comps/examples/ILL/ILL_H22_D1B_noenv/ILL_H22_D1B_noenv.md index 5af25d8cf..d117c1381 100644 --- a/mcstas-comps/examples/ILL/ILL_H22_D1B_noenv/ILL_H22_D1B_noenv.md +++ b/mcstas-comps/examples/ILL/ILL_H22_D1B_noenv/ILL_H22_D1B_noenv.md @@ -67,7 +67,7 @@ Parameters in **boldface** are required; the others are optional. ## Links -- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/examples/ILL/ILL_H22_D1B_noenv/ILL_H22_D1B_noenv.instr) for `ILL_H22_D1B_noenv.instr`. +- [Source code](ILL_H22_D1B_noenv.instr) for `ILL_H22_D1B_noenv.instr`. --- diff --git a/mcstas-comps/examples/ILL/ILL_H22_VIVALDI/ILL_H22_VIVALDI.md b/mcstas-comps/examples/ILL/ILL_H22_VIVALDI/ILL_H22_VIVALDI.md index 304edb99f..78737659c 100644 --- a/mcstas-comps/examples/ILL/ILL_H22_VIVALDI/ILL_H22_VIVALDI.md +++ b/mcstas-comps/examples/ILL/ILL_H22_VIVALDI/ILL_H22_VIVALDI.md @@ -42,7 +42,7 @@ Parameters in **boldface** are required; the others are optional. ## Links -- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/examples/ILL/ILL_H22_VIVALDI/ILL_H22_VIVALDI.instr) for `ILL_H22_VIVALDI.instr`. +- [Source code](ILL_H22_VIVALDI.instr) for `ILL_H22_VIVALDI.instr`. --- diff --git a/mcstas-comps/examples/ILL/ILL_H24/ILL_H24.md b/mcstas-comps/examples/ILL/ILL_H24/ILL_H24.md index 75f37ec3e..0f6eb9d57 100644 --- a/mcstas-comps/examples/ILL/ILL_H24/ILL_H24.md +++ b/mcstas-comps/examples/ILL/ILL_H24/ILL_H24.md @@ -28,7 +28,7 @@ Parameters in **boldface** are required; the others are optional. ## Links -- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/examples/ILL/ILL_H24/ILL_H24.instr) for `ILL_H24.instr`. +- [Source code](ILL_H24.instr) for `ILL_H24.instr`. --- diff --git a/mcstas-comps/examples/ILL/ILL_H25/ILL_H25.md b/mcstas-comps/examples/ILL/ILL_H25/ILL_H25.md index c4987a526..3280c6ab9 100644 --- a/mcstas-comps/examples/ILL/ILL_H25/ILL_H25.md +++ b/mcstas-comps/examples/ILL/ILL_H25/ILL_H25.md @@ -28,7 +28,7 @@ Parameters in **boldface** are required; the others are optional. ## Links -- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/examples/ILL/ILL_H25/ILL_H25.instr) for `ILL_H25.instr`. +- [Source code](ILL_H25.instr) for `ILL_H25.instr`. --- diff --git a/mcstas-comps/examples/ILL/ILL_H25_IN22/ILL_H25_IN22.md b/mcstas-comps/examples/ILL/ILL_H25_IN22/ILL_H25_IN22.md index 6cc770118..f9811fd4e 100644 --- a/mcstas-comps/examples/ILL/ILL_H25_IN22/ILL_H25_IN22.md +++ b/mcstas-comps/examples/ILL/ILL_H25_IN22/ILL_H25_IN22.md @@ -48,7 +48,7 @@ Parameters in **boldface** are required; the others are optional. ## Links -- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/examples/ILL/ILL_H25_IN22/ILL_H25_IN22.instr) for `ILL_H25_IN22.instr`. +- [Source code](ILL_H25_IN22.instr) for `ILL_H25_IN22.instr`. - The IN22 TAS at the ILL --- diff --git a/mcstas-comps/examples/ILL/ILL_H5/ILL_H5.md b/mcstas-comps/examples/ILL/ILL_H5/ILL_H5.md index baf1899f1..ad1a7d89c 100644 --- a/mcstas-comps/examples/ILL/ILL_H5/ILL_H5.md +++ b/mcstas-comps/examples/ILL/ILL_H5/ILL_H5.md @@ -43,7 +43,7 @@ Parameters in **boldface** are required; the others are optional. ## Links -- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/examples/ILL/ILL_H5/ILL_H5.instr) for `ILL_H5.instr`. +- [Source code](ILL_H5.instr) for `ILL_H5.instr`. --- diff --git a/mcstas-comps/examples/ILL/ILL_H512_D22/ILL_H512_D22.md b/mcstas-comps/examples/ILL/ILL_H512_D22/ILL_H512_D22.md index 1e8678bfe..44e9c612f 100644 --- a/mcstas-comps/examples/ILL/ILL_H512_D22/ILL_H512_D22.md +++ b/mcstas-comps/examples/ILL/ILL_H512_D22/ILL_H512_D22.md @@ -33,7 +33,7 @@ Parameters in **boldface** are required; the others are optional. ## Links -- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/examples/ILL/ILL_H512_D22/ILL_H512_D22.instr) for `ILL_H512_D22.instr`. +- [Source code](ILL_H512_D22.instr) for `ILL_H512_D22.instr`. --- diff --git a/mcstas-comps/examples/ILL/ILL_H53/ILL_H53.md b/mcstas-comps/examples/ILL/ILL_H53/ILL_H53.md index c8aba9060..ed5b460e0 100644 --- a/mcstas-comps/examples/ILL/ILL_H53/ILL_H53.md +++ b/mcstas-comps/examples/ILL/ILL_H53/ILL_H53.md @@ -28,7 +28,7 @@ Parameters in **boldface** are required; the others are optional. ## Links -- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/examples/ILL/ILL_H53/ILL_H53.instr) for `ILL_H53.instr`. +- [Source code](ILL_H53.instr) for `ILL_H53.instr`. --- diff --git a/mcstas-comps/examples/ILL/ILL_H53_D16/ILL_H53_D16.md b/mcstas-comps/examples/ILL/ILL_H53_D16/ILL_H53_D16.md index 4f3fc80a3..7d54a29d7 100644 --- a/mcstas-comps/examples/ILL/ILL_H53_D16/ILL_H53_D16.md +++ b/mcstas-comps/examples/ILL/ILL_H53_D16/ILL_H53_D16.md @@ -45,7 +45,7 @@ Parameters in **boldface** are required; the others are optional. ## Links -- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/examples/ILL/ILL_H53_D16/ILL_H53_D16.instr) for `ILL_H53_D16.instr`. +- [Source code](ILL_H53_D16.instr) for `ILL_H53_D16.instr`. - The D16 diffractometer at the ILL --- diff --git a/mcstas-comps/examples/ILL/ILL_H53_IN14/ILL_H53_IN14.md b/mcstas-comps/examples/ILL/ILL_H53_IN14/ILL_H53_IN14.md index 660adb35a..1c109fed8 100644 --- a/mcstas-comps/examples/ILL/ILL_H53_IN14/ILL_H53_IN14.md +++ b/mcstas-comps/examples/ILL/ILL_H53_IN14/ILL_H53_IN14.md @@ -63,7 +63,7 @@ Parameters in **boldface** are required; the others are optional. ## Links -- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/examples/ILL/ILL_H53_IN14/ILL_H53_IN14.instr) for `ILL_H53_IN14.instr`. +- [Source code](ILL_H53_IN14.instr) for `ILL_H53_IN14.instr`. - The IN14 TAS at the ILL --- diff --git a/mcstas-comps/examples/ILL/ILL_H5_new/ILL_H5_new.md b/mcstas-comps/examples/ILL/ILL_H5_new/ILL_H5_new.md index 2f177f00b..70906a06e 100644 --- a/mcstas-comps/examples/ILL/ILL_H5_new/ILL_H5_new.md +++ b/mcstas-comps/examples/ILL/ILL_H5_new/ILL_H5_new.md @@ -63,7 +63,7 @@ Parameters in **boldface** are required; the others are optional. ## Links -- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/examples/ILL/ILL_H5_new/ILL_H5_new.instr) for `ILL_H5_new.instr`. +- [Source code](ILL_H5_new.instr) for `ILL_H5_new.instr`. - The NoteDPT11 at the ILL - The DPT/SMAE 11/070 WASP design report - The DPT/SMAE 10/271 H5 design report diff --git a/mcstas-comps/examples/ILL/ILL_H8_IN1/ILL_H8_IN1.md b/mcstas-comps/examples/ILL/ILL_H8_IN1/ILL_H8_IN1.md index 22f25a1f0..ee00c16f8 100644 --- a/mcstas-comps/examples/ILL/ILL_H8_IN1/ILL_H8_IN1.md +++ b/mcstas-comps/examples/ILL/ILL_H8_IN1/ILL_H8_IN1.md @@ -78,7 +78,7 @@ Parameters in **boldface** are required; the others are optional. ## Links -- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/examples/ILL/ILL_H8_IN1/ILL_H8_IN1.instr) for `ILL_H8_IN1.instr`. +- [Source code](ILL_H8_IN1.instr) for `ILL_H8_IN1.instr`. - Rescal for Matlab at http://www.ill.eu/instruments-support/computing-for-science/cs-software/all-software/matlab-ill/ - Restrax at http://omega.ujf.cas.cz/restrax/ diff --git a/mcstas-comps/examples/ILL/ILL_IN13/ILL_IN13.md b/mcstas-comps/examples/ILL/ILL_IN13/ILL_IN13.md index 537cff423..adc3bd1a9 100644 --- a/mcstas-comps/examples/ILL/ILL_IN13/ILL_IN13.md +++ b/mcstas-comps/examples/ILL/ILL_IN13/ILL_IN13.md @@ -84,7 +84,7 @@ Parameters in **boldface** are required; the others are optional. ## Links -- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/examples/ILL/ILL_IN13/ILL_IN13.instr) for `ILL_IN13.instr`. +- [Source code](ILL_IN13.instr) for `ILL_IN13.instr`. - The IN3 TAS at the ILL --- diff --git a/mcstas-comps/examples/ILL/ILL_IN4/ILL_IN4.md b/mcstas-comps/examples/ILL/ILL_IN4/ILL_IN4.md index 0523a3f2d..907dbc657 100644 --- a/mcstas-comps/examples/ILL/ILL_IN4/ILL_IN4.md +++ b/mcstas-comps/examples/ILL/ILL_IN4/ILL_IN4.md @@ -84,7 +84,7 @@ Parameters in **boldface** are required; the others are optional. ## Links -- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/examples/ILL/ILL_IN4/ILL_IN4.instr) for `ILL_IN4.instr`. +- [Source code](ILL_IN4.instr) for `ILL_IN4.instr`. - H. Mutka, Nucl. Instr. and Meth. A 338 (1994) 144 - http://www.ill.eu/fr/instruments-support/instruments-groups/instruments/in4c diff --git a/mcstas-comps/examples/ILL/ILL_IN5/ILL_IN5.md b/mcstas-comps/examples/ILL/ILL_IN5/ILL_IN5.md index d3dfe72a6..a45c891b6 100644 --- a/mcstas-comps/examples/ILL/ILL_IN5/ILL_IN5.md +++ b/mcstas-comps/examples/ILL/ILL_IN5/ILL_IN5.md @@ -38,7 +38,7 @@ Parameters in **boldface** are required; the others are optional. ## Links -- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/examples/ILL/ILL_IN5/ILL_IN5.instr) for `ILL_IN5.instr`. +- [Source code](ILL_IN5.instr) for `ILL_IN5.instr`. - The IN5@ILL cold time of flight instrument --- diff --git a/mcstas-comps/examples/ILL/ILL_IN5_Spots/ILL_IN5_Spots.md b/mcstas-comps/examples/ILL/ILL_IN5_Spots/ILL_IN5_Spots.md index a2ffe726c..fe86da848 100644 --- a/mcstas-comps/examples/ILL/ILL_IN5_Spots/ILL_IN5_Spots.md +++ b/mcstas-comps/examples/ILL/ILL_IN5_Spots/ILL_IN5_Spots.md @@ -44,7 +44,7 @@ Parameters in **boldface** are required; the others are optional. ## Links -- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/examples/ILL/ILL_IN5_Spots/ILL_IN5_Spots.instr) for `ILL_IN5_Spots.instr`. +- [Source code](ILL_IN5_Spots.instr) for `ILL_IN5_Spots.instr`. - The IN5@ILL cold time of flight instrument --- diff --git a/mcstas-comps/examples/ILL/ILL_IN6/ILL_IN6.md b/mcstas-comps/examples/ILL/ILL_IN6/ILL_IN6.md index c0471ce25..f5a9e991d 100644 --- a/mcstas-comps/examples/ILL/ILL_IN6/ILL_IN6.md +++ b/mcstas-comps/examples/ILL/ILL_IN6/ILL_IN6.md @@ -67,7 +67,7 @@ Parameters in **boldface** are required; the others are optional. ## Links -- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/examples/ILL/ILL_IN6/ILL_IN6.instr) for `ILL_IN6.instr`. +- [Source code](ILL_IN6.instr) for `ILL_IN6.instr`. - The IN6@ILL Yellow Pages - R.Scherm et al, "Another Time of Flight Spectrometer", ILL Report 76S235, 1976 - R.Scherm, "A high-resolution spectrometer ...", report Jul-295-NP, Kernforschungsanlage Julich, 1965 diff --git a/mcstas-comps/examples/ILL/ILL_Lagrange/ILL_Lagrange.md b/mcstas-comps/examples/ILL/ILL_Lagrange/ILL_Lagrange.md index ae8f3fe66..c5d25c41c 100644 --- a/mcstas-comps/examples/ILL/ILL_Lagrange/ILL_Lagrange.md +++ b/mcstas-comps/examples/ILL/ILL_Lagrange/ILL_Lagrange.md @@ -48,7 +48,7 @@ Parameters in **boldface** are required; the others are optional. ## Links -- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/examples/ILL/ILL_Lagrange/ILL_Lagrange.instr) for `ILL_Lagrange.instr`. +- [Source code](ILL_Lagrange.instr) for `ILL_Lagrange.instr`. - The D4 diffractometer at the ILL --- diff --git a/mcstas-comps/examples/ILL/ILL_SALSA/ILL_SALSA.md b/mcstas-comps/examples/ILL/ILL_SALSA/ILL_SALSA.md index 7f3b27970..ff239259d 100644 --- a/mcstas-comps/examples/ILL/ILL_SALSA/ILL_SALSA.md +++ b/mcstas-comps/examples/ILL/ILL_SALSA/ILL_SALSA.md @@ -56,7 +56,7 @@ Parameters in **boldface** are required; the others are optional. ## Links -- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/examples/ILL/ILL_SALSA/ILL_SALSA.instr) for `ILL_SALSA.instr`. +- [Source code](ILL_SALSA.instr) for `ILL_SALSA.instr`. --- diff --git a/mcstas-comps/examples/ISIS/ISIS_CRISP/ISIS_CRISP.md b/mcstas-comps/examples/ISIS/ISIS_CRISP/ISIS_CRISP.md index 900b44569..661ba81a7 100644 --- a/mcstas-comps/examples/ISIS/ISIS_CRISP/ISIS_CRISP.md +++ b/mcstas-comps/examples/ISIS/ISIS_CRISP/ISIS_CRISP.md @@ -36,7 +36,7 @@ Parameters in **boldface** are required; the others are optional. ## Links -- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/examples/ISIS/ISIS_CRISP/ISIS_CRISP.instr) for `ISIS_CRISP.instr`. +- [Source code](ISIS_CRISP.instr) for `ISIS_CRISP.instr`. --- diff --git a/mcstas-comps/examples/ISIS/ISIS_GEM/ISIS_GEM.md b/mcstas-comps/examples/ISIS/ISIS_GEM/ISIS_GEM.md index edf6e70af..52ec8c8b7 100644 --- a/mcstas-comps/examples/ISIS/ISIS_GEM/ISIS_GEM.md +++ b/mcstas-comps/examples/ISIS/ISIS_GEM/ISIS_GEM.md @@ -34,7 +34,7 @@ Parameters in **boldface** are required; the others are optional. ## Links -- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/examples/ISIS/ISIS_GEM/ISIS_GEM.instr) for `ISIS_GEM.instr`. +- [Source code](ISIS_GEM.instr) for `ISIS_GEM.instr`. - The ESS Instrument workshops website. - The GEM instrument at ISIS diff --git a/mcstas-comps/examples/ISIS/ISIS_HET/ISIS_HET.md b/mcstas-comps/examples/ISIS/ISIS_HET/ISIS_HET.md index ee1e77b7e..f33d1d70c 100644 --- a/mcstas-comps/examples/ISIS/ISIS_HET/ISIS_HET.md +++ b/mcstas-comps/examples/ISIS/ISIS_HET/ISIS_HET.md @@ -32,7 +32,7 @@ Parameters in **boldface** are required; the others are optional. ## Links -- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/examples/ISIS/ISIS_HET/ISIS_HET.instr) for `ISIS_HET.instr`. +- [Source code](ISIS_HET.instr) for `ISIS_HET.instr`. --- diff --git a/mcstas-comps/examples/ISIS/ISIS_IMAT/ISIS_IMAT.md b/mcstas-comps/examples/ISIS/ISIS_IMAT/ISIS_IMAT.md index 4bba7ab52..ba5426da7 100644 --- a/mcstas-comps/examples/ISIS/ISIS_IMAT/ISIS_IMAT.md +++ b/mcstas-comps/examples/ISIS/ISIS_IMAT/ISIS_IMAT.md @@ -39,7 +39,7 @@ Parameters in **boldface** are required; the others are optional. ## Links -- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/examples/ISIS/ISIS_IMAT/ISIS_IMAT.instr) for `ISIS_IMAT.instr`. +- [Source code](ISIS_IMAT.instr) for `ISIS_IMAT.instr`. - --- diff --git a/mcstas-comps/examples/ISIS/ISIS_LET/ISIS_LET.md b/mcstas-comps/examples/ISIS/ISIS_LET/ISIS_LET.md index 8ee7d86f3..175f33e5a 100644 --- a/mcstas-comps/examples/ISIS/ISIS_LET/ISIS_LET.md +++ b/mcstas-comps/examples/ISIS/ISIS_LET/ISIS_LET.md @@ -36,7 +36,7 @@ Parameters in **boldface** are required; the others are optional. ## Links -- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/examples/ISIS/ISIS_LET/ISIS_LET.instr) for `ISIS_LET.instr`. +- [Source code](ISIS_LET.instr) for `ISIS_LET.instr`. --- diff --git a/mcstas-comps/examples/ISIS/ISIS_MERLIN/ISIS_MERLIN.md b/mcstas-comps/examples/ISIS/ISIS_MERLIN/ISIS_MERLIN.md index 69bb8b309..8e2f4b0d5 100644 --- a/mcstas-comps/examples/ISIS/ISIS_MERLIN/ISIS_MERLIN.md +++ b/mcstas-comps/examples/ISIS/ISIS_MERLIN/ISIS_MERLIN.md @@ -40,7 +40,7 @@ Parameters in **boldface** are required; the others are optional. ## Links -- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/examples/ISIS/ISIS_MERLIN/ISIS_MERLIN.instr) for `ISIS_MERLIN.instr`. +- [Source code](ISIS_MERLIN.instr) for `ISIS_MERLIN.instr`. - http://www.isis.stfc.ac.uk/instruments/merlin --- diff --git a/mcstas-comps/examples/ISIS/ISIS_OSIRIS/ISIS_OSIRIS.md b/mcstas-comps/examples/ISIS/ISIS_OSIRIS/ISIS_OSIRIS.md index a8b454fa7..e73dd0340 100644 --- a/mcstas-comps/examples/ISIS/ISIS_OSIRIS/ISIS_OSIRIS.md +++ b/mcstas-comps/examples/ISIS/ISIS_OSIRIS/ISIS_OSIRIS.md @@ -38,7 +38,7 @@ Parameters in **boldface** are required; the others are optional. ## Links -- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/examples/ISIS/ISIS_OSIRIS/ISIS_OSIRIS.instr) for `ISIS_OSIRIS.instr`. +- [Source code](ISIS_OSIRIS.instr) for `ISIS_OSIRIS.instr`. --- diff --git a/mcstas-comps/examples/ISIS/ISIS_Prisma2/ISIS_Prisma2.md b/mcstas-comps/examples/ISIS/ISIS_Prisma2/ISIS_Prisma2.md index 0fd509b16..1d003f39e 100644 --- a/mcstas-comps/examples/ISIS/ISIS_Prisma2/ISIS_Prisma2.md +++ b/mcstas-comps/examples/ISIS/ISIS_Prisma2/ISIS_Prisma2.md @@ -41,7 +41,7 @@ Parameters in **boldface** are required; the others are optional. ## Links -- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/examples/ISIS/ISIS_Prisma2/ISIS_Prisma2.instr) for `ISIS_Prisma2.instr`. +- [Source code](ISIS_Prisma2.instr) for `ISIS_Prisma2.instr`. - The McStas User manual - PRISMA diff --git a/mcstas-comps/examples/ISIS/ISIS_SANS2d/ISIS_SANS2d.md b/mcstas-comps/examples/ISIS/ISIS_SANS2d/ISIS_SANS2d.md index a15924429..81195444b 100644 --- a/mcstas-comps/examples/ISIS/ISIS_SANS2d/ISIS_SANS2d.md +++ b/mcstas-comps/examples/ISIS/ISIS_SANS2d/ISIS_SANS2d.md @@ -47,7 +47,7 @@ Parameters in **boldface** are required; the others are optional. ## Links -- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/examples/ISIS/ISIS_SANS2d/ISIS_SANS2d.instr) for `ISIS_SANS2d.instr`. +- [Source code](ISIS_SANS2d.instr) for `ISIS_SANS2d.instr`. --- diff --git a/mcstas-comps/examples/ISIS/ISIS_TOSCA_preupgrade/ISIS_TOSCA_preupgrade.md b/mcstas-comps/examples/ISIS/ISIS_TOSCA_preupgrade/ISIS_TOSCA_preupgrade.md index b68196e28..bb064d510 100644 --- a/mcstas-comps/examples/ISIS/ISIS_TOSCA_preupgrade/ISIS_TOSCA_preupgrade.md +++ b/mcstas-comps/examples/ISIS/ISIS_TOSCA_preupgrade/ISIS_TOSCA_preupgrade.md @@ -40,7 +40,7 @@ Parameters in **boldface** are required; the others are optional. ## Links -- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/examples/ISIS/ISIS_TOSCA_preupgrade/ISIS_TOSCA_preupgrade.instr) for `ISIS_TOSCA_preupgrade.instr`. +- [Source code](ISIS_TOSCA_preupgrade.instr) for `ISIS_TOSCA_preupgrade.instr`. - TOSCA instrument webpage - MDANSE 2018 school webpage diff --git a/mcstas-comps/examples/ISIS/ISIS_TS1_Brilliance/ISIS_TS1_Brilliance.md b/mcstas-comps/examples/ISIS/ISIS_TS1_Brilliance/ISIS_TS1_Brilliance.md index 2fb16bdd7..748c17d48 100644 --- a/mcstas-comps/examples/ISIS/ISIS_TS1_Brilliance/ISIS_TS1_Brilliance.md +++ b/mcstas-comps/examples/ISIS/ISIS_TS1_Brilliance/ISIS_TS1_Brilliance.md @@ -29,7 +29,7 @@ Parameters in **boldface** are required; the others are optional. ## Links -- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/examples/ISIS/ISIS_TS1_Brilliance/ISIS_TS1_Brilliance.instr) for `ISIS_TS1_Brilliance.instr`. +- [Source code](ISIS_TS1_Brilliance.instr) for `ISIS_TS1_Brilliance.instr`. --- diff --git a/mcstas-comps/examples/ISIS/ISIS_TS2_Brilliance/ISIS_TS2_Brilliance.md b/mcstas-comps/examples/ISIS/ISIS_TS2_Brilliance/ISIS_TS2_Brilliance.md index 7910b492a..8d22a1b8a 100644 --- a/mcstas-comps/examples/ISIS/ISIS_TS2_Brilliance/ISIS_TS2_Brilliance.md +++ b/mcstas-comps/examples/ISIS/ISIS_TS2_Brilliance/ISIS_TS2_Brilliance.md @@ -29,7 +29,7 @@ Parameters in **boldface** are required; the others are optional. ## Links -- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/examples/ISIS/ISIS_TS2_Brilliance/ISIS_TS2_Brilliance.instr) for `ISIS_TS2_Brilliance.instr`. +- [Source code](ISIS_TS2_Brilliance.instr) for `ISIS_TS2_Brilliance.instr`. --- diff --git a/mcstas-comps/examples/ISIS/ISIS_test/ISIS_test.md b/mcstas-comps/examples/ISIS/ISIS_test/ISIS_test.md index 2645e0aa3..2ca769872 100644 --- a/mcstas-comps/examples/ISIS/ISIS_test/ISIS_test.md +++ b/mcstas-comps/examples/ISIS/ISIS_test/ISIS_test.md @@ -26,7 +26,7 @@ Parameters in **boldface** are required; the others are optional. ## Links -- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/examples/ISIS/ISIS_test/ISIS_test.instr) for `ISIS_test.instr`. +- [Source code](ISIS_test.instr) for `ISIS_test.instr`. - Written by D. Champion ISIS, Feb 2004 --- diff --git a/mcstas-comps/examples/ISIS/ViewModISIStest/ViewModISIStest.md b/mcstas-comps/examples/ISIS/ViewModISIStest/ViewModISIStest.md index 95a12cf54..37438f65d 100644 --- a/mcstas-comps/examples/ISIS/ViewModISIStest/ViewModISIStest.md +++ b/mcstas-comps/examples/ISIS/ViewModISIStest/ViewModISIStest.md @@ -27,7 +27,7 @@ Parameters in **boldface** are required; the others are optional. ## Links -- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/examples/ISIS/ViewModISIStest/ViewModISIStest.instr) for `ViewModISIStest.instr`. +- [Source code](ViewModISIStest.instr) for `ViewModISIStest.instr`. - Written by D. Champion ISIS, Feb 2004 --- diff --git a/mcstas-comps/examples/LLB/LLB_6T2/LLB_6T2.md b/mcstas-comps/examples/LLB/LLB_6T2/LLB_6T2.md index b289717bf..ebb11692f 100644 --- a/mcstas-comps/examples/LLB/LLB_6T2/LLB_6T2.md +++ b/mcstas-comps/examples/LLB/LLB_6T2/LLB_6T2.md @@ -37,7 +37,7 @@ Parameters in **boldface** are required; the others are optional. ## Links -- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/examples/LLB/LLB_6T2/LLB_6T2.instr) for `LLB_6T2.instr`. +- [Source code](LLB_6T2.instr) for `LLB_6T2.instr`. --- diff --git a/mcstas-comps/examples/Mantid/ILL_H16_IN5_Mantid/ILL_H16_IN5_Mantid.md b/mcstas-comps/examples/Mantid/ILL_H16_IN5_Mantid/ILL_H16_IN5_Mantid.md index 656dffa65..c8349d96d 100644 --- a/mcstas-comps/examples/Mantid/ILL_H16_IN5_Mantid/ILL_H16_IN5_Mantid.md +++ b/mcstas-comps/examples/Mantid/ILL_H16_IN5_Mantid/ILL_H16_IN5_Mantid.md @@ -48,7 +48,7 @@ Parameters in **boldface** are required; the others are optional. ## Links -- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/examples/Mantid/ILL_H16_IN5_Mantid/ILL_H16_IN5_Mantid.instr) for `ILL_H16_IN5_Mantid.instr`. +- [Source code](ILL_H16_IN5_Mantid.instr) for `ILL_H16_IN5_Mantid.instr`. - The IN5@ILL cold time of flight instrument --- diff --git a/mcstas-comps/examples/Mantid/ILL_H16_Mantid/ILL_H16_Mantid.md b/mcstas-comps/examples/Mantid/ILL_H16_Mantid/ILL_H16_Mantid.md index 5e0bd5593..de30e4853 100644 --- a/mcstas-comps/examples/Mantid/ILL_H16_Mantid/ILL_H16_Mantid.md +++ b/mcstas-comps/examples/Mantid/ILL_H16_Mantid/ILL_H16_Mantid.md @@ -30,7 +30,7 @@ Parameters in **boldface** are required; the others are optional. ## Links -- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/examples/Mantid/ILL_H16_Mantid/ILL_H16_Mantid.instr) for `ILL_H16_Mantid.instr`. +- [Source code](ILL_H16_Mantid.instr) for `ILL_H16_Mantid.instr`. --- diff --git a/mcstas-comps/examples/Mantid/ILL_IN5_Mantid/ILL_IN5_Mantid.md b/mcstas-comps/examples/Mantid/ILL_IN5_Mantid/ILL_IN5_Mantid.md index 56d7e7ea7..14fb0c29b 100644 --- a/mcstas-comps/examples/Mantid/ILL_IN5_Mantid/ILL_IN5_Mantid.md +++ b/mcstas-comps/examples/Mantid/ILL_IN5_Mantid/ILL_IN5_Mantid.md @@ -39,7 +39,7 @@ Parameters in **boldface** are required; the others are optional. ## Links -- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/examples/Mantid/ILL_IN5_Mantid/ILL_IN5_Mantid.instr) for `ILL_IN5_Mantid.instr`. +- [Source code](ILL_IN5_Mantid.instr) for `ILL_IN5_Mantid.instr`. - The IN5@ILL cold time of flight instrument --- diff --git a/mcstas-comps/examples/Mantid/ISIS_SANS2d_Mantid/ISIS_SANS2d_Mantid.md b/mcstas-comps/examples/Mantid/ISIS_SANS2d_Mantid/ISIS_SANS2d_Mantid.md index 4581e6fe1..159ebbe16 100644 --- a/mcstas-comps/examples/Mantid/ISIS_SANS2d_Mantid/ISIS_SANS2d_Mantid.md +++ b/mcstas-comps/examples/Mantid/ISIS_SANS2d_Mantid/ISIS_SANS2d_Mantid.md @@ -48,7 +48,7 @@ Parameters in **boldface** are required; the others are optional. ## Links -- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/examples/Mantid/ISIS_SANS2d_Mantid/ISIS_SANS2d_Mantid.instr) for `ISIS_SANS2d_Mantid.instr`. +- [Source code](ISIS_SANS2d_Mantid.instr) for `ISIS_SANS2d_Mantid.instr`. --- diff --git a/mcstas-comps/examples/Mantid/ISIS_TOSCA_preupgrade_Mantid/ISIS_TOSCA_preupgrade_Mantid.md b/mcstas-comps/examples/Mantid/ISIS_TOSCA_preupgrade_Mantid/ISIS_TOSCA_preupgrade_Mantid.md index d36d48705..233c59789 100644 --- a/mcstas-comps/examples/Mantid/ISIS_TOSCA_preupgrade_Mantid/ISIS_TOSCA_preupgrade_Mantid.md +++ b/mcstas-comps/examples/Mantid/ISIS_TOSCA_preupgrade_Mantid/ISIS_TOSCA_preupgrade_Mantid.md @@ -46,7 +46,7 @@ Parameters in **boldface** are required; the others are optional. ## Links -- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/examples/Mantid/ISIS_TOSCA_preupgrade_Mantid/ISIS_TOSCA_preupgrade_Mantid.instr) for `ISIS_TOSCA_preupgrade_Mantid.instr`. +- [Source code](ISIS_TOSCA_preupgrade_Mantid.instr) for `ISIS_TOSCA_preupgrade_Mantid.instr`. - TOSCA instrument webpage - MDANSE 2018 school webpage diff --git a/mcstas-comps/examples/Mantid/SNS_ARCS_Mantid/SNS_ARCS_Mantid.md b/mcstas-comps/examples/Mantid/SNS_ARCS_Mantid/SNS_ARCS_Mantid.md index 30a19911a..73240fe55 100644 --- a/mcstas-comps/examples/Mantid/SNS_ARCS_Mantid/SNS_ARCS_Mantid.md +++ b/mcstas-comps/examples/Mantid/SNS_ARCS_Mantid/SNS_ARCS_Mantid.md @@ -44,7 +44,7 @@ Parameters in **boldface** are required; the others are optional. ## Links -- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/examples/Mantid/SNS_ARCS_Mantid/SNS_ARCS_Mantid.instr) for `SNS_ARCS_Mantid.instr`. +- [Source code](SNS_ARCS_Mantid.instr) for `SNS_ARCS_Mantid.instr`. -
    Granroth, G. E. and Abernathy, D. L., "Performance Comparisons of Four Direct Geometry Spectrometers Planned for Spallation Neutron Source", Proceedings of ICANS-XVI, 289 (2003). -
    D. L. Abernathy, M. B. Stone, M. J. Loguillo, M. S. Lucas, O. Delaire, X.Tang, J. Y. Y. Lin, and B. Fultz,"Design and operation of the wide angular-range chopper spectrometer ARCS at the Spallation Neutron Source", Review of Scientific Instruments, 83 , 015114 (2012) diff --git a/mcstas-comps/examples/Mantid/Tools_ONION/Tools_ONION.md b/mcstas-comps/examples/Mantid/Tools_ONION/Tools_ONION.md index 4b34bee68..17ad62058 100644 --- a/mcstas-comps/examples/Mantid/Tools_ONION/Tools_ONION.md +++ b/mcstas-comps/examples/Mantid/Tools_ONION/Tools_ONION.md @@ -34,7 +34,7 @@ Parameters in **boldface** are required; the others are optional. ## Links -- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/examples/Mantid/Tools_ONION/Tools_ONION.instr) for `Tools_ONION.instr`. +- [Source code](Tools_ONION.instr) for `Tools_ONION.instr`. - "Using an onion like neutron scattering instrument model to quickly optimize design parameters" - T. Huegle, Nuclear Instruments and Methods in Physics Research Section A, 2019 - Python script available at https://github.com/mccode-dev/McCode-contribution-support-docs/tree/master/McStas/2.6_Onion_tool_T_Huegle diff --git a/mcstas-comps/examples/Mantid/templateSANS2_Mantid/templateSANS2_Mantid.md b/mcstas-comps/examples/Mantid/templateSANS2_Mantid/templateSANS2_Mantid.md index 929f72407..343d81b85 100644 --- a/mcstas-comps/examples/Mantid/templateSANS2_Mantid/templateSANS2_Mantid.md +++ b/mcstas-comps/examples/Mantid/templateSANS2_Mantid/templateSANS2_Mantid.md @@ -32,7 +32,7 @@ Parameters in **boldface** are required; the others are optional. ## Links -- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/examples/Mantid/templateSANS2_Mantid/templateSANS2_Mantid.instr) for `templateSANS2_Mantid.instr`. +- [Source code](templateSANS2_Mantid.instr) for `templateSANS2_Mantid.instr`. --- diff --git a/mcstas-comps/examples/Mantid/templateSANS_Mantid/templateSANS_Mantid.md b/mcstas-comps/examples/Mantid/templateSANS_Mantid/templateSANS_Mantid.md index 9514f1386..a258d69ed 100644 --- a/mcstas-comps/examples/Mantid/templateSANS_Mantid/templateSANS_Mantid.md +++ b/mcstas-comps/examples/Mantid/templateSANS_Mantid/templateSANS_Mantid.md @@ -38,7 +38,7 @@ Parameters in **boldface** are required; the others are optional. ## Links -- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/examples/Mantid/templateSANS_Mantid/templateSANS_Mantid.instr) for `templateSANS_Mantid.instr`. +- [Source code](templateSANS_Mantid.instr) for `templateSANS_Mantid.instr`. --- diff --git a/mcstas-comps/examples/Mantid/templateSasView_Mantid/templateSasView_Mantid.md b/mcstas-comps/examples/Mantid/templateSasView_Mantid/templateSasView_Mantid.md index 1e9db1017..4378991bb 100644 --- a/mcstas-comps/examples/Mantid/templateSasView_Mantid/templateSasView_Mantid.md +++ b/mcstas-comps/examples/Mantid/templateSasView_Mantid/templateSasView_Mantid.md @@ -53,7 +53,7 @@ Parameters in **boldface** are required; the others are optional. ## Links -- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/examples/Mantid/templateSasView_Mantid/templateSasView_Mantid.instr) for `templateSasView_Mantid.instr`. +- [Source code](templateSasView_Mantid.instr) for `templateSasView_Mantid.instr`. --- diff --git a/mcstas-comps/examples/Mantid/templateVanadiumMultipleScat_Mantid/templateVanadiumMultipleScat_Mantid.md b/mcstas-comps/examples/Mantid/templateVanadiumMultipleScat_Mantid/templateVanadiumMultipleScat_Mantid.md index 6aeeffe4a..2563c4b9b 100644 --- a/mcstas-comps/examples/Mantid/templateVanadiumMultipleScat_Mantid/templateVanadiumMultipleScat_Mantid.md +++ b/mcstas-comps/examples/Mantid/templateVanadiumMultipleScat_Mantid/templateVanadiumMultipleScat_Mantid.md @@ -26,7 +26,7 @@ Parameters in **boldface** are required; the others are optional. ## Links -- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/examples/Mantid/templateVanadiumMultipleScat_Mantid/templateVanadiumMultipleScat_Mantid.instr) for `templateVanadiumMultipleScat_Mantid.instr`. +- [Source code](templateVanadiumMultipleScat_Mantid.instr) for `templateVanadiumMultipleScat_Mantid.instr`. - A reference/HTML link for more information --- diff --git a/mcstas-comps/examples/NCrystal/NCrystal_example/NCrystal_example.md b/mcstas-comps/examples/NCrystal/NCrystal_example/NCrystal_example.md index 69b73c0dc..53ea54b7b 100644 --- a/mcstas-comps/examples/NCrystal/NCrystal_example/NCrystal_example.md +++ b/mcstas-comps/examples/NCrystal/NCrystal_example/NCrystal_example.md @@ -42,7 +42,7 @@ Parameters in **boldface** are required; the others are optional. ## Links -- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/examples/NCrystal/NCrystal_example/NCrystal_example.instr) for `NCrystal_example.instr`. +- [Source code](NCrystal_example.instr) for `NCrystal_example.instr`. - https://github.com/mctools/ncrystal/wiki/ --- diff --git a/mcstas-comps/examples/NCrystal/Union_NCrystal_example/Union_NCrystal_example.md b/mcstas-comps/examples/NCrystal/Union_NCrystal_example/Union_NCrystal_example.md index 96876b5c4..c662e68d6 100644 --- a/mcstas-comps/examples/NCrystal/Union_NCrystal_example/Union_NCrystal_example.md +++ b/mcstas-comps/examples/NCrystal/Union_NCrystal_example/Union_NCrystal_example.md @@ -27,7 +27,7 @@ Parameters in **boldface** are required; the others are optional. ## Links -- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/examples/NCrystal/Union_NCrystal_example/Union_NCrystal_example.instr) for `Union_NCrystal_example.instr`. +- [Source code](Union_NCrystal_example.instr) for `Union_NCrystal_example.instr`. - https://github.com/mctools/ncrystal/wiki/ --- diff --git a/mcstas-comps/examples/NCrystal/Union_NCrystal_mix_example/Union_NCrystal_mix_example.md b/mcstas-comps/examples/NCrystal/Union_NCrystal_mix_example/Union_NCrystal_mix_example.md index a27e04e84..4949079cc 100644 --- a/mcstas-comps/examples/NCrystal/Union_NCrystal_mix_example/Union_NCrystal_mix_example.md +++ b/mcstas-comps/examples/NCrystal/Union_NCrystal_mix_example/Union_NCrystal_mix_example.md @@ -28,7 +28,7 @@ Parameters in **boldface** are required; the others are optional. ## Links -- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/examples/NCrystal/Union_NCrystal_mix_example/Union_NCrystal_mix_example.instr) for `Union_NCrystal_mix_example.instr`. +- [Source code](Union_NCrystal_mix_example.instr) for `Union_NCrystal_mix_example.instr`. - https://github.com/mctools/ncrystal/wiki/ --- diff --git a/mcstas-comps/examples/Necsa/SAFARI_MPISI/SAFARI_MPISI.md b/mcstas-comps/examples/Necsa/SAFARI_MPISI/SAFARI_MPISI.md index 4a5f634d4..d7aa1a082 100644 --- a/mcstas-comps/examples/Necsa/SAFARI_MPISI/SAFARI_MPISI.md +++ b/mcstas-comps/examples/Necsa/SAFARI_MPISI/SAFARI_MPISI.md @@ -56,7 +56,7 @@ Parameters in **boldface** are required; the others are optional. ## Links -- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/examples/Necsa/SAFARI_MPISI/SAFARI_MPISI.instr) for `SAFARI_MPISI.instr`. +- [Source code](SAFARI_MPISI.instr) for `SAFARI_MPISI.instr`. - The South African Nuclear Energy Corporation website --- diff --git a/mcstas-comps/examples/Necsa/SAFARI_PITSI/SAFARI_PITSI.md b/mcstas-comps/examples/Necsa/SAFARI_PITSI/SAFARI_PITSI.md index 1cd64ba7a..bde200ac5 100644 --- a/mcstas-comps/examples/Necsa/SAFARI_PITSI/SAFARI_PITSI.md +++ b/mcstas-comps/examples/Necsa/SAFARI_PITSI/SAFARI_PITSI.md @@ -53,7 +53,7 @@ Parameters in **boldface** are required; the others are optional. ## Links -- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/examples/Necsa/SAFARI_PITSI/SAFARI_PITSI.instr) for `SAFARI_PITSI.instr`. +- [Source code](SAFARI_PITSI.instr) for `SAFARI_PITSI.instr`. - The South African Nuclear Energy Corporation website --- diff --git a/mcstas-comps/examples/PSI/PSI_DMC/PSI_DMC.md b/mcstas-comps/examples/PSI/PSI_DMC/PSI_DMC.md index 4baf1a5c1..845b3be0a 100644 --- a/mcstas-comps/examples/PSI/PSI_DMC/PSI_DMC.md +++ b/mcstas-comps/examples/PSI/PSI_DMC/PSI_DMC.md @@ -39,7 +39,7 @@ Parameters in **boldface** are required; the others are optional. ## Links -- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/examples/PSI/PSI_DMC/PSI_DMC.instr) for `PSI_DMC.instr`. +- [Source code](PSI_DMC.instr) for `PSI_DMC.instr`. - The PSI Monte-Carlo website. - P Willendrup, U Filges, L Keller, E Farhi, K Lefmann: Validation of a realistic powder sample using data from DMC at PSI, ICNS 2005 (Physica B, 386, (2006), 1032.) diff --git a/mcstas-comps/examples/PSI/PSI_DMC_simple/PSI_DMC_simple.md b/mcstas-comps/examples/PSI/PSI_DMC_simple/PSI_DMC_simple.md index 5cb095bdd..0fdb2086b 100644 --- a/mcstas-comps/examples/PSI/PSI_DMC_simple/PSI_DMC_simple.md +++ b/mcstas-comps/examples/PSI/PSI_DMC_simple/PSI_DMC_simple.md @@ -38,7 +38,7 @@ Parameters in **boldface** are required; the others are optional. ## Links -- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/examples/PSI/PSI_DMC_simple/PSI_DMC_simple.instr) for `PSI_DMC_simple.instr`. +- [Source code](PSI_DMC_simple.instr) for `PSI_DMC_simple.instr`. - The PSI Monte-Carlo website. - P Willendrup, U Filges, L Keller, E Farhi, K Lefmann: Validation of a realistic powder sample using data from DMC at PSI, ICNS 2005 (Physica B, 386, (2006), 1032.) diff --git a/mcstas-comps/examples/PSI/PSI_Focus/PSI_Focus.md b/mcstas-comps/examples/PSI/PSI_Focus/PSI_Focus.md index b88f13a85..5d8790a68 100644 --- a/mcstas-comps/examples/PSI/PSI_Focus/PSI_Focus.md +++ b/mcstas-comps/examples/PSI/PSI_Focus/PSI_Focus.md @@ -27,7 +27,7 @@ Parameters in **boldface** are required; the others are optional. ## Links -- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/examples/PSI/PSI_Focus/PSI_Focus.instr) for `PSI_Focus.instr`. +- [Source code](PSI_Focus.instr) for `PSI_Focus.instr`. - Written by U.Filges PSI, Jan 2004 --- diff --git a/mcstas-comps/examples/PSI/PSI_source/PSI_source.md b/mcstas-comps/examples/PSI/PSI_source/PSI_source.md index 6f4e004ed..ded35588d 100644 --- a/mcstas-comps/examples/PSI/PSI_source/PSI_source.md +++ b/mcstas-comps/examples/PSI/PSI_source/PSI_source.md @@ -38,7 +38,7 @@ Parameters in **boldface** are required; the others are optional. ## Links -- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/examples/PSI/PSI_source/PSI_source.instr) for `PSI_source.instr`. +- [Source code](PSI_source.instr) for `PSI_source.instr`. - The PSI Monte-Carlo website. - P Willendrup, U Filges, L Keller, E Farhi, K Lefmann: Validation of a realistic powder sample using data from DMC at PSI, ICNS 2005 (Physica B, 386, (2006), 1032.) diff --git a/mcstas-comps/examples/PSI/RITA-II/RITA-II.md b/mcstas-comps/examples/PSI/RITA-II/RITA-II.md index 439cc3d16..ed521a2ad 100644 --- a/mcstas-comps/examples/PSI/RITA-II/RITA-II.md +++ b/mcstas-comps/examples/PSI/RITA-II/RITA-II.md @@ -143,7 +143,7 @@ Parameters in **boldface** are required; the others are optional. ## Links -- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/examples/PSI/RITA-II/RITA-II.instr) for `RITA-II.instr`. +- [Source code](RITA-II.instr) for `RITA-II.instr`. - Rescal for Matlab at http://www.ill.fr/tas/matlab - Restrax at http://omega.ujf.cas.cz/restrax/ diff --git a/mcstas-comps/examples/Risoe/TAS1_C1/TAS1_C1.md b/mcstas-comps/examples/Risoe/TAS1_C1/TAS1_C1.md index d4c5e424a..86d32edf7 100644 --- a/mcstas-comps/examples/Risoe/TAS1_C1/TAS1_C1.md +++ b/mcstas-comps/examples/Risoe/TAS1_C1/TAS1_C1.md @@ -34,7 +34,7 @@ Parameters in **boldface** are required; the others are optional. ## Links -- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/examples/Risoe/TAS1_C1/TAS1_C1.instr) for `TAS1_C1.instr`. +- [Source code](TAS1_C1.instr) for `TAS1_C1.instr`. - The McStas User manual - A. Abrahamsen, N. B. Christensen, and E. Lauridsen. McStas simulations of the TAS1 spectrometer. Student's report, Niels Bohr Institute, University of Copenhagen, 1998. diff --git a/mcstas-comps/examples/Risoe/TAS1_C1_Tilt/TAS1_C1_Tilt.md b/mcstas-comps/examples/Risoe/TAS1_C1_Tilt/TAS1_C1_Tilt.md index cec9d68f8..b519e8392 100644 --- a/mcstas-comps/examples/Risoe/TAS1_C1_Tilt/TAS1_C1_Tilt.md +++ b/mcstas-comps/examples/Risoe/TAS1_C1_Tilt/TAS1_C1_Tilt.md @@ -35,7 +35,7 @@ Parameters in **boldface** are required; the others are optional. ## Links -- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/examples/Risoe/TAS1_C1_Tilt/TAS1_C1_Tilt.instr) for `TAS1_C1_Tilt.instr`. +- [Source code](TAS1_C1_Tilt.instr) for `TAS1_C1_Tilt.instr`. - The McStas User manual - A. Abrahamsen, N. B. Christensen, and E. Lauridsen. McStas simulations of the TAS1 spectrometer. Student's report, Niels Bohr Institute, University of Copenhagen, 1998. diff --git a/mcstas-comps/examples/Risoe/TAS1_Diff_Powder/TAS1_Diff_Powder.md b/mcstas-comps/examples/Risoe/TAS1_Diff_Powder/TAS1_Diff_Powder.md index fec0ef81d..1e74c1c44 100644 --- a/mcstas-comps/examples/Risoe/TAS1_Diff_Powder/TAS1_Diff_Powder.md +++ b/mcstas-comps/examples/Risoe/TAS1_Diff_Powder/TAS1_Diff_Powder.md @@ -40,7 +40,7 @@ Parameters in **boldface** are required; the others are optional. ## Links -- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/examples/Risoe/TAS1_Diff_Powder/TAS1_Diff_Powder.instr) for `TAS1_Diff_Powder.instr`. +- [Source code](TAS1_Diff_Powder.instr) for `TAS1_Diff_Powder.instr`. - The McStas User manual - A. Abrahamsen, N. B. Christensen, and E. Lauridsen. McStas simulations of the TAS1 spectrometer. Student's report, Niels Bohr Institute, University of Copenhagen, 1998. diff --git a/mcstas-comps/examples/Risoe/TAS1_Diff_Slit/TAS1_Diff_Slit.md b/mcstas-comps/examples/Risoe/TAS1_Diff_Slit/TAS1_Diff_Slit.md index c3cbbdcc6..042466f78 100644 --- a/mcstas-comps/examples/Risoe/TAS1_Diff_Slit/TAS1_Diff_Slit.md +++ b/mcstas-comps/examples/Risoe/TAS1_Diff_Slit/TAS1_Diff_Slit.md @@ -39,7 +39,7 @@ Parameters in **boldface** are required; the others are optional. ## Links -- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/examples/Risoe/TAS1_Diff_Slit/TAS1_Diff_Slit.instr) for `TAS1_Diff_Slit.instr`. +- [Source code](TAS1_Diff_Slit.instr) for `TAS1_Diff_Slit.instr`. - The McStas User manual - A. Abrahamsen, N. B. Christensen, and E. Lauridsen. McStas simulations of the TAS1 spectrometer. Student's report, Niels Bohr Institute, University of Copenhagen, 1998. diff --git a/mcstas-comps/examples/Risoe/TAS1_Diff_Vana/TAS1_Diff_Vana.md b/mcstas-comps/examples/Risoe/TAS1_Diff_Vana/TAS1_Diff_Vana.md index 006228442..cc2b9182b 100644 --- a/mcstas-comps/examples/Risoe/TAS1_Diff_Vana/TAS1_Diff_Vana.md +++ b/mcstas-comps/examples/Risoe/TAS1_Diff_Vana/TAS1_Diff_Vana.md @@ -40,7 +40,7 @@ Parameters in **boldface** are required; the others are optional. ## Links -- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/examples/Risoe/TAS1_Diff_Vana/TAS1_Diff_Vana.instr) for `TAS1_Diff_Vana.instr`. +- [Source code](TAS1_Diff_Vana.instr) for `TAS1_Diff_Vana.instr`. - The McStas User manual - A. Abrahamsen, N. B. Christensen, and E. Lauridsen. McStas simulations of the TAS1 spectrometer. Student's report, Niels Bohr Institute, University of Copenhagen, 1998. diff --git a/mcstas-comps/examples/Risoe/TAS1_Powder/TAS1_Powder.md b/mcstas-comps/examples/Risoe/TAS1_Powder/TAS1_Powder.md index 8db0189cb..b06a22a99 100644 --- a/mcstas-comps/examples/Risoe/TAS1_Powder/TAS1_Powder.md +++ b/mcstas-comps/examples/Risoe/TAS1_Powder/TAS1_Powder.md @@ -39,7 +39,7 @@ Parameters in **boldface** are required; the others are optional. ## Links -- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/examples/Risoe/TAS1_Powder/TAS1_Powder.instr) for `TAS1_Powder.instr`. +- [Source code](TAS1_Powder.instr) for `TAS1_Powder.instr`. - The McStas User manual - A. Abrahamsen, N. B. Christensen, and E. Lauridsen. McStas simulations of the TAS1 spectrometer. Student's report, Niels Bohr Institute, University of Copenhagen, 1998. diff --git a/mcstas-comps/examples/Risoe/TAS1_Vana/TAS1_Vana.md b/mcstas-comps/examples/Risoe/TAS1_Vana/TAS1_Vana.md index ee6c9d837..64628e5c9 100644 --- a/mcstas-comps/examples/Risoe/TAS1_Vana/TAS1_Vana.md +++ b/mcstas-comps/examples/Risoe/TAS1_Vana/TAS1_Vana.md @@ -39,7 +39,7 @@ Parameters in **boldface** are required; the others are optional. ## Links -- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/examples/Risoe/TAS1_Vana/TAS1_Vana.instr) for `TAS1_Vana.instr`. +- [Source code](TAS1_Vana.instr) for `TAS1_Vana.instr`. - The McStas User manual - A. Abrahamsen, N. B. Christensen, and E. Lauridsen. McStas simulations of the TAS1 spectrometer. Student's report, Niels Bohr Institute, University of Copenhagen, 1998. diff --git a/mcstas-comps/examples/SINE2020/McStas_Isotropic_Sqw/McStas_Isotropic_Sqw.md b/mcstas-comps/examples/SINE2020/McStas_Isotropic_Sqw/McStas_Isotropic_Sqw.md index 66786ccf3..f8affa992 100644 --- a/mcstas-comps/examples/SINE2020/McStas_Isotropic_Sqw/McStas_Isotropic_Sqw.md +++ b/mcstas-comps/examples/SINE2020/McStas_Isotropic_Sqw/McStas_Isotropic_Sqw.md @@ -51,7 +51,7 @@ Parameters in **boldface** are required; the others are optional. ## Links -- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/examples/SINE2020/McStas_Isotropic_Sqw/McStas_Isotropic_Sqw.instr) for `McStas_Isotropic_Sqw.instr`. +- [Source code](McStas_Isotropic_Sqw.instr) for `McStas_Isotropic_Sqw.instr`. - Website for the MCPL particle exchange format - Website for the SIMRES package - Website for WP8 in EU-SINE2020 diff --git a/mcstas-comps/examples/SINE2020/McStas_PowderN/McStas_PowderN.md b/mcstas-comps/examples/SINE2020/McStas_PowderN/McStas_PowderN.md index d9e931b9f..39e3812ce 100644 --- a/mcstas-comps/examples/SINE2020/McStas_PowderN/McStas_PowderN.md +++ b/mcstas-comps/examples/SINE2020/McStas_PowderN/McStas_PowderN.md @@ -48,7 +48,7 @@ Parameters in **boldface** are required; the others are optional. ## Links -- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/examples/SINE2020/McStas_PowderN/McStas_PowderN.instr) for `McStas_PowderN.instr`. +- [Source code](McStas_PowderN.instr) for `McStas_PowderN.instr`. - Website for the MCPL particle exchange format - Website for the SIMRES package - Website for WP8 in EU-SINE2020 diff --git a/mcstas-comps/examples/SINE2020/McStas_Single_crystal/McStas_Single_crystal.md b/mcstas-comps/examples/SINE2020/McStas_Single_crystal/McStas_Single_crystal.md index b71019508..8f4ebcad2 100644 --- a/mcstas-comps/examples/SINE2020/McStas_Single_crystal/McStas_Single_crystal.md +++ b/mcstas-comps/examples/SINE2020/McStas_Single_crystal/McStas_Single_crystal.md @@ -48,7 +48,7 @@ Parameters in **boldface** are required; the others are optional. ## Links -- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/examples/SINE2020/McStas_Single_crystal/McStas_Single_crystal.instr) for `McStas_Single_crystal.instr`. +- [Source code](McStas_Single_crystal.instr) for `McStas_Single_crystal.instr`. - Website for the MCPL particle exchange format - Website for the SIMRES package - Website for WP8 in EU-SINE2020 diff --git a/mcstas-comps/examples/SNS/Gallmeier_SNS_decoupled_poisoned/Gallmeier_SNS_decoupled_poisoned.md b/mcstas-comps/examples/SNS/Gallmeier_SNS_decoupled_poisoned/Gallmeier_SNS_decoupled_poisoned.md index dab70eb30..e4809e74c 100644 --- a/mcstas-comps/examples/SNS/Gallmeier_SNS_decoupled_poisoned/Gallmeier_SNS_decoupled_poisoned.md +++ b/mcstas-comps/examples/SNS/Gallmeier_SNS_decoupled_poisoned/Gallmeier_SNS_decoupled_poisoned.md @@ -27,7 +27,7 @@ Parameters in **boldface** are required; the others are optional. ## Links -- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/examples/SNS/Gallmeier_SNS_decoupled_poisoned/Gallmeier_SNS_decoupled_poisoned.instr) for `Gallmeier_SNS_decoupled_poisoned.instr`. +- [Source code](Gallmeier_SNS_decoupled_poisoned.instr) for `Gallmeier_SNS_decoupled_poisoned.instr`. --- diff --git a/mcstas-comps/examples/SNS/Granroth_SNS_decoupled_poisoned/Granroth_SNS_decoupled_poisoned.md b/mcstas-comps/examples/SNS/Granroth_SNS_decoupled_poisoned/Granroth_SNS_decoupled_poisoned.md index 887cdc05e..3463cfb31 100644 --- a/mcstas-comps/examples/SNS/Granroth_SNS_decoupled_poisoned/Granroth_SNS_decoupled_poisoned.md +++ b/mcstas-comps/examples/SNS/Granroth_SNS_decoupled_poisoned/Granroth_SNS_decoupled_poisoned.md @@ -27,7 +27,7 @@ Parameters in **boldface** are required; the others are optional. ## Links -- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/examples/SNS/Granroth_SNS_decoupled_poisoned/Granroth_SNS_decoupled_poisoned.instr) for `Granroth_SNS_decoupled_poisoned.instr`. +- [Source code](Granroth_SNS_decoupled_poisoned.instr) for `Granroth_SNS_decoupled_poisoned.instr`. --- diff --git a/mcstas-comps/examples/SNS/Mezei_SNS_decoupled_poisoned/Mezei_SNS_decoupled_poisoned.md b/mcstas-comps/examples/SNS/Mezei_SNS_decoupled_poisoned/Mezei_SNS_decoupled_poisoned.md index bb861e22f..b77158b52 100644 --- a/mcstas-comps/examples/SNS/Mezei_SNS_decoupled_poisoned/Mezei_SNS_decoupled_poisoned.md +++ b/mcstas-comps/examples/SNS/Mezei_SNS_decoupled_poisoned/Mezei_SNS_decoupled_poisoned.md @@ -28,7 +28,7 @@ Parameters in **boldface** are required; the others are optional. ## Links -- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/examples/SNS/Mezei_SNS_decoupled_poisoned/Mezei_SNS_decoupled_poisoned.instr) for `Mezei_SNS_decoupled_poisoned.instr`. +- [Source code](Mezei_SNS_decoupled_poisoned.instr) for `Mezei_SNS_decoupled_poisoned.instr`. --- diff --git a/mcstas-comps/examples/SNS/SNS_ARCS/SNS_ARCS.md b/mcstas-comps/examples/SNS/SNS_ARCS/SNS_ARCS.md index a73d2f291..c325daf02 100644 --- a/mcstas-comps/examples/SNS/SNS_ARCS/SNS_ARCS.md +++ b/mcstas-comps/examples/SNS/SNS_ARCS/SNS_ARCS.md @@ -44,7 +44,7 @@ Parameters in **boldface** are required; the others are optional. ## Links -- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/examples/SNS/SNS_ARCS/SNS_ARCS.instr) for `SNS_ARCS.instr`. +- [Source code](SNS_ARCS.instr) for `SNS_ARCS.instr`. -
    Granroth, G. E. and Abernathy, D. L., "Performance Comparisons of Four Direct Geometry Spectrometers Planned for Spallation Neutron Source", Proceedings of ICANS-XVI, 289 (2003). -
    D. L. Abernathy, M. B. Stone, M. J. Loguillo, M. S. Lucas, O. Delaire, X.Tang, J. Y. Y. Lin, and B. Fultz,"Design and operation of the wide angular-range chopper spectrometer ARCS at the Spallation Neutron Source", Review of Scientific Instruments, 83 , 015114 (2012) diff --git a/mcstas-comps/examples/SNS/SNS_BASIS/SNS_BASIS.md b/mcstas-comps/examples/SNS/SNS_BASIS/SNS_BASIS.md index 40d4f8e8e..efa45bef1 100644 --- a/mcstas-comps/examples/SNS/SNS_BASIS/SNS_BASIS.md +++ b/mcstas-comps/examples/SNS/SNS_BASIS/SNS_BASIS.md @@ -63,7 +63,7 @@ Parameters in **boldface** are required; the others are optional. ## Links -- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/examples/SNS/SNS_BASIS/SNS_BASIS.instr) for `SNS_BASIS.instr`. +- [Source code](SNS_BASIS.instr) for `SNS_BASIS.instr`. - A reference/HTML link for more information --- diff --git a/mcstas-comps/examples/SNS/SNS_analytic_test/SNS_analytic_test.md b/mcstas-comps/examples/SNS/SNS_analytic_test/SNS_analytic_test.md index c16f8c40f..437112d09 100644 --- a/mcstas-comps/examples/SNS/SNS_analytic_test/SNS_analytic_test.md +++ b/mcstas-comps/examples/SNS/SNS_analytic_test/SNS_analytic_test.md @@ -26,7 +26,7 @@ Parameters in **boldface** are required; the others are optional. ## Links -- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/examples/SNS/SNS_analytic_test/SNS_analytic_test.instr) for `SNS_analytic_test.instr`. +- [Source code](SNS_analytic_test.instr) for `SNS_analytic_test.instr`. - Written by G. Granroth - SNS_source component - Source files diff --git a/mcstas-comps/examples/SNS/SNS_test/SNS_test.md b/mcstas-comps/examples/SNS/SNS_test/SNS_test.md index c467561be..9ff2523f3 100644 --- a/mcstas-comps/examples/SNS/SNS_test/SNS_test.md +++ b/mcstas-comps/examples/SNS/SNS_test/SNS_test.md @@ -26,7 +26,7 @@ Parameters in **boldface** are required; the others are optional. ## Links -- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/examples/SNS/SNS_test/SNS_test.instr) for `SNS_test.instr`. +- [Source code](SNS_test.instr) for `SNS_test.instr`. - Written by G. Granroth - SNS_source component - Source files diff --git a/mcstas-comps/examples/TRIGA/RTP_DIF/RTP_DIF.md b/mcstas-comps/examples/TRIGA/RTP_DIF/RTP_DIF.md index 0cdf1bf17..93a2abfa0 100644 --- a/mcstas-comps/examples/TRIGA/RTP_DIF/RTP_DIF.md +++ b/mcstas-comps/examples/TRIGA/RTP_DIF/RTP_DIF.md @@ -29,7 +29,7 @@ Parameters in **boldface** are required; the others are optional. ## Links -- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/examples/TRIGA/RTP_DIF/RTP_DIF.instr) for `RTP_DIF.instr`. +- [Source code](RTP_DIF.instr) for `RTP_DIF.instr`. - Nuclear Malaysia - M. Sufi et al., J. AppL Cryst. (1997). 30, 884-888 [doi:10.1107/S0021889897001738] diff --git a/mcstas-comps/examples/TRIGA/RTP_Laue/RTP_Laue.md b/mcstas-comps/examples/TRIGA/RTP_Laue/RTP_Laue.md index bce899c47..e8b867ea7 100644 --- a/mcstas-comps/examples/TRIGA/RTP_Laue/RTP_Laue.md +++ b/mcstas-comps/examples/TRIGA/RTP_Laue/RTP_Laue.md @@ -29,7 +29,7 @@ Parameters in **boldface** are required; the others are optional. ## Links -- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/examples/TRIGA/RTP_Laue/RTP_Laue.instr) for `RTP_Laue.instr`. +- [Source code](RTP_Laue.instr) for `RTP_Laue.instr`. - Nuclear Malaysia - M. Sufi et al., J. AppL Cryst. (1997). 30, 884-888 [doi:10.1107/S0021889897001738] diff --git a/mcstas-comps/examples/TRIGA/RTP_NeutronRadiography/RTP_NeutronRadiography.md b/mcstas-comps/examples/TRIGA/RTP_NeutronRadiography/RTP_NeutronRadiography.md index 53642a02b..b2770692c 100644 --- a/mcstas-comps/examples/TRIGA/RTP_NeutronRadiography/RTP_NeutronRadiography.md +++ b/mcstas-comps/examples/TRIGA/RTP_NeutronRadiography/RTP_NeutronRadiography.md @@ -28,7 +28,7 @@ Parameters in **boldface** are required; the others are optional. ## Links -- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/examples/TRIGA/RTP_NeutronRadiography/RTP_NeutronRadiography.instr) for `RTP_NeutronRadiography.instr`. +- [Source code](RTP_NeutronRadiography.instr) for `RTP_NeutronRadiography.instr`. - Nuclear Malaysia - M. Sufi et al., J. AppL Cryst. (1997). 30, 884-888 [doi:10.1107/S0021889897001738] diff --git a/mcstas-comps/examples/TRIGA/RTP_SANS/RTP_SANS.md b/mcstas-comps/examples/TRIGA/RTP_SANS/RTP_SANS.md index acbf36118..268a2a0ab 100644 --- a/mcstas-comps/examples/TRIGA/RTP_SANS/RTP_SANS.md +++ b/mcstas-comps/examples/TRIGA/RTP_SANS/RTP_SANS.md @@ -42,7 +42,7 @@ Parameters in **boldface** are required; the others are optional. ## Links -- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/examples/TRIGA/RTP_SANS/RTP_SANS.instr) for `RTP_SANS.instr`. +- [Source code](RTP_SANS.instr) for `RTP_SANS.instr`. - Nuclear Malaysia - M. Sufi et al., J. AppL Cryst. (1997). 30, 884-888 [doi:10.1107/S0021889897001738] diff --git a/mcstas-comps/examples/TUDelft/SEMSANS_Delft/SEMSANS_Delft.md b/mcstas-comps/examples/TUDelft/SEMSANS_Delft/SEMSANS_Delft.md index ded8e4998..f1f0cef0a 100644 --- a/mcstas-comps/examples/TUDelft/SEMSANS_Delft/SEMSANS_Delft.md +++ b/mcstas-comps/examples/TUDelft/SEMSANS_Delft/SEMSANS_Delft.md @@ -39,7 +39,7 @@ Parameters in **boldface** are required; the others are optional. ## Links -- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/examples/TUDelft/SEMSANS_Delft/SEMSANS_Delft.instr) for `SEMSANS_Delft.instr`. +- [Source code](SEMSANS_Delft.instr) for `SEMSANS_Delft.instr`. - - https://doi.org/10.1107/S1600576720015496 diff --git a/mcstas-comps/examples/TUDelft/SEMSANS_instrument/SEMSANS_instrument.md b/mcstas-comps/examples/TUDelft/SEMSANS_instrument/SEMSANS_instrument.md index 499d904d6..766543574 100644 --- a/mcstas-comps/examples/TUDelft/SEMSANS_instrument/SEMSANS_instrument.md +++ b/mcstas-comps/examples/TUDelft/SEMSANS_instrument/SEMSANS_instrument.md @@ -62,7 +62,7 @@ Parameters in **boldface** are required; the others are optional. ## Links -- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/examples/TUDelft/SEMSANS_instrument/SEMSANS_instrument.instr) for `SEMSANS_instrument.instr`. +- [Source code](SEMSANS_instrument.instr) for `SEMSANS_instrument.instr`. --- diff --git a/mcstas-comps/examples/TUDelft/SESANS_Delft/SESANS_Delft.md b/mcstas-comps/examples/TUDelft/SESANS_Delft/SESANS_Delft.md index 6bafd0ac2..1b51e55d6 100644 --- a/mcstas-comps/examples/TUDelft/SESANS_Delft/SESANS_Delft.md +++ b/mcstas-comps/examples/TUDelft/SESANS_Delft/SESANS_Delft.md @@ -38,7 +38,7 @@ Parameters in **boldface** are required; the others are optional. ## Links -- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/examples/TUDelft/SESANS_Delft/SESANS_Delft.instr) for `SESANS_Delft.instr`. +- [Source code](SESANS_Delft.instr) for `SESANS_Delft.instr`. - - https://doi.org/10.1107/S1600576720015496 diff --git a/mcstas-comps/examples/Templates/BTsimple/BTsimple.md b/mcstas-comps/examples/Templates/BTsimple/BTsimple.md index a36ad01e9..56cb5e26c 100644 --- a/mcstas-comps/examples/Templates/BTsimple/BTsimple.md +++ b/mcstas-comps/examples/Templates/BTsimple/BTsimple.md @@ -35,7 +35,7 @@ Parameters in **boldface** are required; the others are optional. ## Links -- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/examples/Templates/BTsimple/BTsimple.instr) for `BTsimple.instr`. +- [Source code](BTsimple.instr) for `BTsimple.instr`. --- diff --git a/mcstas-comps/examples/Templates/Demo_shape_primitives/Demo_shape_primitives.md b/mcstas-comps/examples/Templates/Demo_shape_primitives/Demo_shape_primitives.md index bd335909b..44f96da0e 100644 --- a/mcstas-comps/examples/Templates/Demo_shape_primitives/Demo_shape_primitives.md +++ b/mcstas-comps/examples/Templates/Demo_shape_primitives/Demo_shape_primitives.md @@ -25,7 +25,7 @@ Parameters in **boldface** are required; the others are optional. ## Links -- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/examples/Templates/Demo_shape_primitives/Demo_shape_primitives.instr) for `Demo_shape_primitives.instr`. +- [Source code](Demo_shape_primitives.instr) for `Demo_shape_primitives.instr`. --- diff --git a/mcstas-comps/examples/Templates/Demo_shape_primitives_simple/Demo_shape_primitives_simple.md b/mcstas-comps/examples/Templates/Demo_shape_primitives_simple/Demo_shape_primitives_simple.md index 5bcf32b2e..e1fa45253 100644 --- a/mcstas-comps/examples/Templates/Demo_shape_primitives_simple/Demo_shape_primitives_simple.md +++ b/mcstas-comps/examples/Templates/Demo_shape_primitives_simple/Demo_shape_primitives_simple.md @@ -25,7 +25,7 @@ Parameters in **boldface** are required; the others are optional. ## Links -- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/examples/Templates/Demo_shape_primitives_simple/Demo_shape_primitives_simple.instr) for `Demo_shape_primitives_simple.instr`. +- [Source code](Demo_shape_primitives_simple.instr) for `Demo_shape_primitives_simple.instr`. --- diff --git a/mcstas-comps/examples/Templates/TOF_Reflectometer/TOF_Reflectometer.md b/mcstas-comps/examples/Templates/TOF_Reflectometer/TOF_Reflectometer.md index 8ae75ca91..efbdd504d 100644 --- a/mcstas-comps/examples/Templates/TOF_Reflectometer/TOF_Reflectometer.md +++ b/mcstas-comps/examples/Templates/TOF_Reflectometer/TOF_Reflectometer.md @@ -40,7 +40,7 @@ Parameters in **boldface** are required; the others are optional. ## Links -- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/examples/Templates/TOF_Reflectometer/TOF_Reflectometer.instr) for `TOF_Reflectometer.instr`. +- [Source code](TOF_Reflectometer.instr) for `TOF_Reflectometer.instr`. --- diff --git a/mcstas-comps/examples/Templates/Test_SasView_bcc_paracrystal_aniso/Test_SasView_bcc_paracrystal_aniso.md b/mcstas-comps/examples/Templates/Test_SasView_bcc_paracrystal_aniso/Test_SasView_bcc_paracrystal_aniso.md index 283844b31..be8410228 100644 --- a/mcstas-comps/examples/Templates/Test_SasView_bcc_paracrystal_aniso/Test_SasView_bcc_paracrystal_aniso.md +++ b/mcstas-comps/examples/Templates/Test_SasView_bcc_paracrystal_aniso/Test_SasView_bcc_paracrystal_aniso.md @@ -52,7 +52,7 @@ Parameters in **boldface** are required; the others are optional. ## Links -- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/examples/Templates/Test_SasView_bcc_paracrystal_aniso/Test_SasView_bcc_paracrystal_aniso.instr) for `Test_SasView_bcc_paracrystal_aniso.instr`. +- [Source code](Test_SasView_bcc_paracrystal_aniso.instr) for `Test_SasView_bcc_paracrystal_aniso.instr`. --- diff --git a/mcstas-comps/examples/Templates/Test_SasView_guinier/Test_SasView_guinier.md b/mcstas-comps/examples/Templates/Test_SasView_guinier/Test_SasView_guinier.md index 68752c065..cae320db2 100644 --- a/mcstas-comps/examples/Templates/Test_SasView_guinier/Test_SasView_guinier.md +++ b/mcstas-comps/examples/Templates/Test_SasView_guinier/Test_SasView_guinier.md @@ -42,7 +42,7 @@ Parameters in **boldface** are required; the others are optional. ## Links -- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/examples/Templates/Test_SasView_guinier/Test_SasView_guinier.instr) for `Test_SasView_guinier.instr`. +- [Source code](Test_SasView_guinier.instr) for `Test_SasView_guinier.instr`. --- diff --git a/mcstas-comps/examples/Templates/Tomography/Tomography.md b/mcstas-comps/examples/Templates/Tomography/Tomography.md index fabaaf3d7..e8f82d861 100644 --- a/mcstas-comps/examples/Templates/Tomography/Tomography.md +++ b/mcstas-comps/examples/Templates/Tomography/Tomography.md @@ -43,7 +43,7 @@ Parameters in **boldface** are required; the others are optional. ## Links -- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/examples/Templates/Tomography/Tomography.instr) for `Tomography.instr`. +- [Source code](Tomography.instr) for `Tomography.instr`. - http://shape.cs.princeton.edu/benchmark/documentation/off_format.html --- diff --git a/mcstas-comps/examples/Templates/mini/mini.md b/mcstas-comps/examples/Templates/mini/mini.md index bb8f37e51..f65752ff4 100644 --- a/mcstas-comps/examples/Templates/mini/mini.md +++ b/mcstas-comps/examples/Templates/mini/mini.md @@ -25,7 +25,7 @@ Parameters in **boldface** are required; the others are optional. ## Links -- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/examples/Templates/mini/mini.instr) for `mini.instr`. +- [Source code](mini.instr) for `mini.instr`. - A reference/HTML link for more information --- diff --git a/mcstas-comps/examples/Templates/template/template.md b/mcstas-comps/examples/Templates/template/template.md index aa2e31163..376bd600f 100644 --- a/mcstas-comps/examples/Templates/template/template.md +++ b/mcstas-comps/examples/Templates/template/template.md @@ -34,7 +34,7 @@ Parameters in **boldface** are required; the others are optional. ## Links -- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/examples/Templates/template/template.instr) for `template.instr`. +- [Source code](template.instr) for `template.instr`. - A reference/HTML link for more information --- diff --git a/mcstas-comps/examples/Templates/templateDIFF/templateDIFF.md b/mcstas-comps/examples/Templates/templateDIFF/templateDIFF.md index aba1e3e8c..bcd9bf077 100644 --- a/mcstas-comps/examples/Templates/templateDIFF/templateDIFF.md +++ b/mcstas-comps/examples/Templates/templateDIFF/templateDIFF.md @@ -58,7 +58,7 @@ Parameters in **boldface** are required; the others are optional. ## Links -- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/examples/Templates/templateDIFF/templateDIFF.instr) for `templateDIFF.instr`. +- [Source code](templateDIFF.instr) for `templateDIFF.instr`. --- diff --git a/mcstas-comps/examples/Templates/templateLaue/templateLaue.md b/mcstas-comps/examples/Templates/templateLaue/templateLaue.md index 32a9d3407..5d20f5ee4 100644 --- a/mcstas-comps/examples/Templates/templateLaue/templateLaue.md +++ b/mcstas-comps/examples/Templates/templateLaue/templateLaue.md @@ -26,7 +26,7 @@ Parameters in **boldface** are required; the others are optional. ## Links -- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/examples/Templates/templateLaue/templateLaue.instr) for `templateLaue.instr`. +- [Source code](templateLaue.instr) for `templateLaue.instr`. --- diff --git a/mcstas-comps/examples/Templates/templateNMX/templateNMX.md b/mcstas-comps/examples/Templates/templateNMX/templateNMX.md index 1a0f48d10..b061264f6 100644 --- a/mcstas-comps/examples/Templates/templateNMX/templateNMX.md +++ b/mcstas-comps/examples/Templates/templateNMX/templateNMX.md @@ -28,7 +28,7 @@ Parameters in **boldface** are required; the others are optional. ## Links -- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/examples/Templates/templateNMX/templateNMX.instr) for `templateNMX.instr`. +- [Source code](templateNMX.instr) for `templateNMX.instr`. --- diff --git a/mcstas-comps/examples/Templates/templateNMX_TOF/templateNMX_TOF.md b/mcstas-comps/examples/Templates/templateNMX_TOF/templateNMX_TOF.md index 53e1592d5..1a9e494a6 100644 --- a/mcstas-comps/examples/Templates/templateNMX_TOF/templateNMX_TOF.md +++ b/mcstas-comps/examples/Templates/templateNMX_TOF/templateNMX_TOF.md @@ -39,7 +39,7 @@ Parameters in **boldface** are required; the others are optional. ## Links -- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/examples/Templates/templateNMX_TOF/templateNMX_TOF.instr) for `templateNMX_TOF.instr`. +- [Source code](templateNMX_TOF.instr) for `templateNMX_TOF.instr`. --- diff --git a/mcstas-comps/examples/Templates/templateSANS/templateSANS.md b/mcstas-comps/examples/Templates/templateSANS/templateSANS.md index 8c6c61489..078909ba2 100644 --- a/mcstas-comps/examples/Templates/templateSANS/templateSANS.md +++ b/mcstas-comps/examples/Templates/templateSANS/templateSANS.md @@ -31,7 +31,7 @@ Parameters in **boldface** are required; the others are optional. ## Links -- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/examples/Templates/templateSANS/templateSANS.instr) for `templateSANS.instr`. +- [Source code](templateSANS.instr) for `templateSANS.instr`. --- diff --git a/mcstas-comps/examples/Templates/templateSANS2/templateSANS2.md b/mcstas-comps/examples/Templates/templateSANS2/templateSANS2.md index 8f4cace1e..7e518ee64 100644 --- a/mcstas-comps/examples/Templates/templateSANS2/templateSANS2.md +++ b/mcstas-comps/examples/Templates/templateSANS2/templateSANS2.md @@ -32,7 +32,7 @@ Parameters in **boldface** are required; the others are optional. ## Links -- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/examples/Templates/templateSANS2/templateSANS2.instr) for `templateSANS2.instr`. +- [Source code](templateSANS2.instr) for `templateSANS2.instr`. --- diff --git a/mcstas-comps/examples/Templates/templateSANS_MCPL/templateSANS_MCPL.md b/mcstas-comps/examples/Templates/templateSANS_MCPL/templateSANS_MCPL.md index d03389041..6f87c95e5 100644 --- a/mcstas-comps/examples/Templates/templateSANS_MCPL/templateSANS_MCPL.md +++ b/mcstas-comps/examples/Templates/templateSANS_MCPL/templateSANS_MCPL.md @@ -34,7 +34,7 @@ Parameters in **boldface** are required; the others are optional. ## Links -- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/examples/Templates/templateSANS_MCPL/templateSANS_MCPL.instr) for `templateSANS_MCPL.instr`. +- [Source code](templateSANS_MCPL.instr) for `templateSANS_MCPL.instr`. --- diff --git a/mcstas-comps/examples/Templates/templateSasView/templateSasView.md b/mcstas-comps/examples/Templates/templateSasView/templateSasView.md index 818d1cf82..0e08b5738 100644 --- a/mcstas-comps/examples/Templates/templateSasView/templateSasView.md +++ b/mcstas-comps/examples/Templates/templateSasView/templateSasView.md @@ -41,7 +41,7 @@ Parameters in **boldface** are required; the others are optional. ## Links -- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/examples/Templates/templateSasView/templateSasView.instr) for `templateSasView.instr`. +- [Source code](templateSasView.instr) for `templateSasView.instr`. --- diff --git a/mcstas-comps/examples/Templates/templateTAS/templateTAS.md b/mcstas-comps/examples/Templates/templateTAS/templateTAS.md index 72981a30d..43f18d7ab 100644 --- a/mcstas-comps/examples/Templates/templateTAS/templateTAS.md +++ b/mcstas-comps/examples/Templates/templateTAS/templateTAS.md @@ -127,7 +127,7 @@ Parameters in **boldface** are required; the others are optional. ## Links -- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/examples/Templates/templateTAS/templateTAS.instr) for `templateTAS.instr`. +- [Source code](templateTAS.instr) for `templateTAS.instr`. - Rescal for Matlab at http://www.ill.eu/instruments-support/computing-for-science/cs-software/all-software/matlab-ill/ - Restrax at http://omega.ujf.cas.cz/restrax/ diff --git a/mcstas-comps/examples/Templates/templateTOF/templateTOF.md b/mcstas-comps/examples/Templates/templateTOF/templateTOF.md index 417f93da0..f95e093f0 100644 --- a/mcstas-comps/examples/Templates/templateTOF/templateTOF.md +++ b/mcstas-comps/examples/Templates/templateTOF/templateTOF.md @@ -44,7 +44,7 @@ Parameters in **boldface** are required; the others are optional. ## Links -- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/examples/Templates/templateTOF/templateTOF.instr) for `templateTOF.instr`. +- [Source code](templateTOF.instr) for `templateTOF.instr`. - The Isotropic_Sqw sample - The Samples_Isotropic_Sqw example instrument diff --git a/mcstas-comps/examples/Templates/template_simple/template_simple.md b/mcstas-comps/examples/Templates/template_simple/template_simple.md index be55a9260..9d92c248d 100644 --- a/mcstas-comps/examples/Templates/template_simple/template_simple.md +++ b/mcstas-comps/examples/Templates/template_simple/template_simple.md @@ -27,7 +27,7 @@ Parameters in **boldface** are required; the others are optional. ## Links -- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/examples/Templates/template_simple/template_simple.instr) for `template_simple.instr`. +- [Source code](template_simple.instr) for `template_simple.instr`. - --- diff --git a/mcstas-comps/examples/Tests_MCPL_etc/Test_MCPL_input/Test_MCPL_input.md b/mcstas-comps/examples/Tests_MCPL_etc/Test_MCPL_input/Test_MCPL_input.md index fa9b8f11d..e8747d000 100644 --- a/mcstas-comps/examples/Tests_MCPL_etc/Test_MCPL_input/Test_MCPL_input.md +++ b/mcstas-comps/examples/Tests_MCPL_etc/Test_MCPL_input/Test_MCPL_input.md @@ -29,7 +29,7 @@ Parameters in **boldface** are required; the others are optional. ## Links -- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/examples/Tests_MCPL_etc/Test_MCPL_input/Test_MCPL_input.instr) for `Test_MCPL_input.instr`. +- [Source code](Test_MCPL_input.instr) for `Test_MCPL_input.instr`. --- diff --git a/mcstas-comps/examples/Tests_MCPL_etc/Test_MCPL_input_once/Test_MCPL_input_once.md b/mcstas-comps/examples/Tests_MCPL_etc/Test_MCPL_input_once/Test_MCPL_input_once.md index 3629f6f0c..a91768859 100644 --- a/mcstas-comps/examples/Tests_MCPL_etc/Test_MCPL_input_once/Test_MCPL_input_once.md +++ b/mcstas-comps/examples/Tests_MCPL_etc/Test_MCPL_input_once/Test_MCPL_input_once.md @@ -30,7 +30,7 @@ Parameters in **boldface** are required; the others are optional. ## Links -- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/examples/Tests_MCPL_etc/Test_MCPL_input_once/Test_MCPL_input_once.instr) for `Test_MCPL_input_once.instr`. +- [Source code](Test_MCPL_input_once.instr) for `Test_MCPL_input_once.instr`. --- diff --git a/mcstas-comps/examples/Tests_MCPL_etc/Test_MCPL_output/Test_MCPL_output.md b/mcstas-comps/examples/Tests_MCPL_etc/Test_MCPL_output/Test_MCPL_output.md index e84f5c622..0db40056c 100644 --- a/mcstas-comps/examples/Tests_MCPL_etc/Test_MCPL_output/Test_MCPL_output.md +++ b/mcstas-comps/examples/Tests_MCPL_etc/Test_MCPL_output/Test_MCPL_output.md @@ -25,7 +25,7 @@ Parameters in **boldface** are required; the others are optional. ## Links -- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/examples/Tests_MCPL_etc/Test_MCPL_output/Test_MCPL_output.instr) for `Test_MCPL_output.instr`. +- [Source code](Test_MCPL_output.instr) for `Test_MCPL_output.instr`. --- diff --git a/mcstas-comps/examples/Tests_RNG/Test_RNG_rand01/Test_RNG_rand01.md b/mcstas-comps/examples/Tests_RNG/Test_RNG_rand01/Test_RNG_rand01.md index 92088db94..b93382b21 100644 --- a/mcstas-comps/examples/Tests_RNG/Test_RNG_rand01/Test_RNG_rand01.md +++ b/mcstas-comps/examples/Tests_RNG/Test_RNG_rand01/Test_RNG_rand01.md @@ -32,7 +32,7 @@ Parameters in **boldface** are required; the others are optional. ## Links -- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/examples/Tests_RNG/Test_RNG_rand01/Test_RNG_rand01.instr) for `Test_RNG_rand01.instr`. +- [Source code](Test_RNG_rand01.instr) for `Test_RNG_rand01.instr`. - --- diff --git a/mcstas-comps/examples/Tests_RNG/Test_RNG_randnorm/Test_RNG_randnorm.md b/mcstas-comps/examples/Tests_RNG/Test_RNG_randnorm/Test_RNG_randnorm.md index ddf150c6a..5a2d5c50b 100644 --- a/mcstas-comps/examples/Tests_RNG/Test_RNG_randnorm/Test_RNG_randnorm.md +++ b/mcstas-comps/examples/Tests_RNG/Test_RNG_randnorm/Test_RNG_randnorm.md @@ -32,7 +32,7 @@ Parameters in **boldface** are required; the others are optional. ## Links -- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/examples/Tests_RNG/Test_RNG_randnorm/Test_RNG_randnorm.instr) for `Test_RNG_randnorm.instr`. +- [Source code](Test_RNG_randnorm.instr) for `Test_RNG_randnorm.instr`. - --- diff --git a/mcstas-comps/examples/Tests_RNG/Test_RNG_randpm1/Test_RNG_randpm1.md b/mcstas-comps/examples/Tests_RNG/Test_RNG_randpm1/Test_RNG_randpm1.md index ce09a3e42..f26c345cf 100644 --- a/mcstas-comps/examples/Tests_RNG/Test_RNG_randpm1/Test_RNG_randpm1.md +++ b/mcstas-comps/examples/Tests_RNG/Test_RNG_randpm1/Test_RNG_randpm1.md @@ -32,7 +32,7 @@ Parameters in **boldface** are required; the others are optional. ## Links -- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/examples/Tests_RNG/Test_RNG_randpm1/Test_RNG_randpm1.instr) for `Test_RNG_randpm1.instr`. +- [Source code](Test_RNG_randpm1.instr) for `Test_RNG_randpm1.instr`. - --- diff --git a/mcstas-comps/examples/Tests_RNG/Test_RNG_randtriangle/Test_RNG_randtriangle.md b/mcstas-comps/examples/Tests_RNG/Test_RNG_randtriangle/Test_RNG_randtriangle.md index 7cddf6a93..b49265cb8 100644 --- a/mcstas-comps/examples/Tests_RNG/Test_RNG_randtriangle/Test_RNG_randtriangle.md +++ b/mcstas-comps/examples/Tests_RNG/Test_RNG_randtriangle/Test_RNG_randtriangle.md @@ -32,7 +32,7 @@ Parameters in **boldface** are required; the others are optional. ## Links -- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/examples/Tests_RNG/Test_RNG_randtriangle/Test_RNG_randtriangle.instr) for `Test_RNG_randtriangle.instr`. +- [Source code](Test_RNG_randtriangle.instr) for `Test_RNG_randtriangle.instr`. - --- diff --git a/mcstas-comps/examples/Tests_RNG/Test_RNG_randvec_target_circle/Test_RNG_randvec_target_circle.md b/mcstas-comps/examples/Tests_RNG/Test_RNG_randvec_target_circle/Test_RNG_randvec_target_circle.md index 7e01c669d..d3903cc38 100644 --- a/mcstas-comps/examples/Tests_RNG/Test_RNG_randvec_target_circle/Test_RNG_randvec_target_circle.md +++ b/mcstas-comps/examples/Tests_RNG/Test_RNG_randvec_target_circle/Test_RNG_randvec_target_circle.md @@ -33,7 +33,7 @@ Parameters in **boldface** are required; the others are optional. ## Links -- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/examples/Tests_RNG/Test_RNG_randvec_target_circle/Test_RNG_randvec_target_circle.instr) for `Test_RNG_randvec_target_circle.instr`. +- [Source code](Test_RNG_randvec_target_circle.instr) for `Test_RNG_randvec_target_circle.instr`. - --- diff --git a/mcstas-comps/examples/Tests_RNG/Test_RNG_randvec_target_rect/Test_RNG_randvec_target_rect.md b/mcstas-comps/examples/Tests_RNG/Test_RNG_randvec_target_rect/Test_RNG_randvec_target_rect.md index 0cd3dfa3a..6edb85c91 100644 --- a/mcstas-comps/examples/Tests_RNG/Test_RNG_randvec_target_rect/Test_RNG_randvec_target_rect.md +++ b/mcstas-comps/examples/Tests_RNG/Test_RNG_randvec_target_rect/Test_RNG_randvec_target_rect.md @@ -33,7 +33,7 @@ Parameters in **boldface** are required; the others are optional. ## Links -- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/examples/Tests_RNG/Test_RNG_randvec_target_rect/Test_RNG_randvec_target_rect.instr) for `Test_RNG_randvec_target_rect.instr`. +- [Source code](Test_RNG_randvec_target_rect.instr) for `Test_RNG_randvec_target_rect.instr`. - --- diff --git a/mcstas-comps/examples/Tests_RNG/Test_RNG_randvec_target_rect_angular/Test_RNG_randvec_target_rect_angular.md b/mcstas-comps/examples/Tests_RNG/Test_RNG_randvec_target_rect_angular/Test_RNG_randvec_target_rect_angular.md index 3ef39848d..fa99f0f4d 100644 --- a/mcstas-comps/examples/Tests_RNG/Test_RNG_randvec_target_rect_angular/Test_RNG_randvec_target_rect_angular.md +++ b/mcstas-comps/examples/Tests_RNG/Test_RNG_randvec_target_rect_angular/Test_RNG_randvec_target_rect_angular.md @@ -33,7 +33,7 @@ Parameters in **boldface** are required; the others are optional. ## Links -- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/examples/Tests_RNG/Test_RNG_randvec_target_rect_angular/Test_RNG_randvec_target_rect_angular.instr) for `Test_RNG_randvec_target_rect_angular.instr`. +- [Source code](Test_RNG_randvec_target_rect_angular.instr) for `Test_RNG_randvec_target_rect_angular.instr`. - --- diff --git a/mcstas-comps/examples/Tests_grammar/Test_GROUP/Test_GROUP.md b/mcstas-comps/examples/Tests_grammar/Test_GROUP/Test_GROUP.md index aa7e8dd39..9fa39d40b 100644 --- a/mcstas-comps/examples/Tests_grammar/Test_GROUP/Test_GROUP.md +++ b/mcstas-comps/examples/Tests_grammar/Test_GROUP/Test_GROUP.md @@ -26,7 +26,7 @@ Parameters in **boldface** are required; the others are optional. ## Links -- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/examples/Tests_grammar/Test_GROUP/Test_GROUP.instr) for `Test_GROUP.instr`. +- [Source code](Test_GROUP.instr) for `Test_GROUP.instr`. --- diff --git a/mcstas-comps/examples/Tests_grammar/Test_GROUP_restore.md b/mcstas-comps/examples/Tests_grammar/Test_GROUP_restore.md index f9dff5dfd..3226e25c4 100644 --- a/mcstas-comps/examples/Tests_grammar/Test_GROUP_restore.md +++ b/mcstas-comps/examples/Tests_grammar/Test_GROUP_restore.md @@ -32,7 +32,7 @@ Parameters in **boldface** are required; the others are optional. ## Links -- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/examples/Tests_grammar/Test_GROUP_restore.instr) for `Test_GROUP_restore.instr`. +- [Source code](Test_GROUP_restore.instr) for `Test_GROUP_restore.instr`. - A reference/HTML link for more information --- diff --git a/mcstas-comps/examples/Tests_grammar/Test_Jump_Iterate/Test_Jump_Iterate.md b/mcstas-comps/examples/Tests_grammar/Test_Jump_Iterate/Test_Jump_Iterate.md index 68aaff4a3..168e699a3 100644 --- a/mcstas-comps/examples/Tests_grammar/Test_Jump_Iterate/Test_Jump_Iterate.md +++ b/mcstas-comps/examples/Tests_grammar/Test_Jump_Iterate/Test_Jump_Iterate.md @@ -30,7 +30,7 @@ Parameters in **boldface** are required; the others are optional. ## Links -- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/examples/Tests_grammar/Test_Jump_Iterate/Test_Jump_Iterate.instr) for `Test_Jump_Iterate.instr`. +- [Source code](Test_Jump_Iterate.instr) for `Test_Jump_Iterate.instr`. --- diff --git a/mcstas-comps/examples/Tests_grammar/Unittest_ALLOW_BACKPROP/Unittest_ALLOW_BACKPROP.md b/mcstas-comps/examples/Tests_grammar/Unittest_ALLOW_BACKPROP/Unittest_ALLOW_BACKPROP.md index 90e8a8c68..b030e2000 100644 --- a/mcstas-comps/examples/Tests_grammar/Unittest_ALLOW_BACKPROP/Unittest_ALLOW_BACKPROP.md +++ b/mcstas-comps/examples/Tests_grammar/Unittest_ALLOW_BACKPROP/Unittest_ALLOW_BACKPROP.md @@ -31,7 +31,7 @@ Parameters in **boldface** are required; the others are optional. ## Links -- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/examples/Tests_grammar/Unittest_ALLOW_BACKPROP/Unittest_ALLOW_BACKPROP.instr) for `Unittest_ALLOW_BACKPROP.instr`. +- [Source code](Unittest_ALLOW_BACKPROP.instr) for `Unittest_ALLOW_BACKPROP.instr`. - A reference/HTML link for more information --- diff --git a/mcstas-comps/examples/Tests_grammar/Unittest_JUMP_ITERATE/Unittest_JUMP_ITERATE.md b/mcstas-comps/examples/Tests_grammar/Unittest_JUMP_ITERATE/Unittest_JUMP_ITERATE.md index f6fd4777d..1c1f795fe 100644 --- a/mcstas-comps/examples/Tests_grammar/Unittest_JUMP_ITERATE/Unittest_JUMP_ITERATE.md +++ b/mcstas-comps/examples/Tests_grammar/Unittest_JUMP_ITERATE/Unittest_JUMP_ITERATE.md @@ -30,7 +30,7 @@ Parameters in **boldface** are required; the others are optional. ## Links -- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/examples/Tests_grammar/Unittest_JUMP_ITERATE/Unittest_JUMP_ITERATE.instr) for `Unittest_JUMP_ITERATE.instr`. +- [Source code](Unittest_JUMP_ITERATE.instr) for `Unittest_JUMP_ITERATE.instr`. - --- diff --git a/mcstas-comps/examples/Tests_grammar/Unittest_JUMP_WHEN/Unittest_JUMP_WHEN.md b/mcstas-comps/examples/Tests_grammar/Unittest_JUMP_WHEN/Unittest_JUMP_WHEN.md index 43e9c1b0d..47c1bac7b 100644 --- a/mcstas-comps/examples/Tests_grammar/Unittest_JUMP_WHEN/Unittest_JUMP_WHEN.md +++ b/mcstas-comps/examples/Tests_grammar/Unittest_JUMP_WHEN/Unittest_JUMP_WHEN.md @@ -30,7 +30,7 @@ Parameters in **boldface** are required; the others are optional. ## Links -- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/examples/Tests_grammar/Unittest_JUMP_WHEN/Unittest_JUMP_WHEN.instr) for `Unittest_JUMP_WHEN.instr`. +- [Source code](Unittest_JUMP_WHEN.instr) for `Unittest_JUMP_WHEN.instr`. - --- diff --git a/mcstas-comps/examples/Tests_grammar/Unittest_SPLIT/Unittest_SPLIT.md b/mcstas-comps/examples/Tests_grammar/Unittest_SPLIT/Unittest_SPLIT.md index 7e3b5aff0..9c98da649 100644 --- a/mcstas-comps/examples/Tests_grammar/Unittest_SPLIT/Unittest_SPLIT.md +++ b/mcstas-comps/examples/Tests_grammar/Unittest_SPLIT/Unittest_SPLIT.md @@ -28,7 +28,7 @@ Parameters in **boldface** are required; the others are optional. ## Links -- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/examples/Tests_grammar/Unittest_SPLIT/Unittest_SPLIT.instr) for `Unittest_SPLIT.instr`. +- [Source code](Unittest_SPLIT.instr) for `Unittest_SPLIT.instr`. - --- diff --git a/mcstas-comps/examples/Tests_grammar/Unittest_SPLIT_sample/Unittest_SPLIT_sample.md b/mcstas-comps/examples/Tests_grammar/Unittest_SPLIT_sample/Unittest_SPLIT_sample.md index 17cd2b5d5..6ee6cb49a 100644 --- a/mcstas-comps/examples/Tests_grammar/Unittest_SPLIT_sample/Unittest_SPLIT_sample.md +++ b/mcstas-comps/examples/Tests_grammar/Unittest_SPLIT_sample/Unittest_SPLIT_sample.md @@ -29,7 +29,7 @@ Parameters in **boldface** are required; the others are optional. ## Links -- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/examples/Tests_grammar/Unittest_SPLIT_sample/Unittest_SPLIT_sample.instr) for `Unittest_SPLIT_sample.instr`. +- [Source code](Unittest_SPLIT_sample.instr) for `Unittest_SPLIT_sample.instr`. - --- diff --git a/mcstas-comps/examples/Tests_monitors/Test_Cyl_monitors/Test_Cyl_monitors.md b/mcstas-comps/examples/Tests_monitors/Test_Cyl_monitors/Test_Cyl_monitors.md index 21a579be3..372dfd55d 100644 --- a/mcstas-comps/examples/Tests_monitors/Test_Cyl_monitors/Test_Cyl_monitors.md +++ b/mcstas-comps/examples/Tests_monitors/Test_Cyl_monitors/Test_Cyl_monitors.md @@ -36,7 +36,7 @@ Parameters in **boldface** are required; the others are optional. ## Links -- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/examples/Tests_monitors/Test_Cyl_monitors/Test_Cyl_monitors.instr) for `Test_Cyl_monitors.instr`. +- [Source code](Test_Cyl_monitors.instr) for `Test_Cyl_monitors.instr`. --- diff --git a/mcstas-comps/examples/Tests_monitors/Test_Monitor_nD/Test_Monitor_nD.md b/mcstas-comps/examples/Tests_monitors/Test_Monitor_nD/Test_Monitor_nD.md index 743d21702..367ebf87d 100644 --- a/mcstas-comps/examples/Tests_monitors/Test_Monitor_nD/Test_Monitor_nD.md +++ b/mcstas-comps/examples/Tests_monitors/Test_Monitor_nD/Test_Monitor_nD.md @@ -31,7 +31,7 @@ Parameters in **boldface** are required; the others are optional. ## Links -- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/examples/Tests_monitors/Test_Monitor_nD/Test_Monitor_nD.instr) for `Test_Monitor_nD.instr`. +- [Source code](Test_Monitor_nD.instr) for `Test_Monitor_nD.instr`. --- diff --git a/mcstas-comps/examples/Tests_monitors/Test_TOF_PSDmonitor_toQ/Test_TOF_PSDmonitor_toQ.md b/mcstas-comps/examples/Tests_monitors/Test_TOF_PSDmonitor_toQ/Test_TOF_PSDmonitor_toQ.md index 40f5694d3..ad2cf4803 100644 --- a/mcstas-comps/examples/Tests_monitors/Test_TOF_PSDmonitor_toQ/Test_TOF_PSDmonitor_toQ.md +++ b/mcstas-comps/examples/Tests_monitors/Test_TOF_PSDmonitor_toQ/Test_TOF_PSDmonitor_toQ.md @@ -28,7 +28,7 @@ Parameters in **boldface** are required; the others are optional. ## Links -- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/examples/Tests_monitors/Test_TOF_PSDmonitor_toQ/Test_TOF_PSDmonitor_toQ.instr) for `Test_TOF_PSDmonitor_toQ.instr`. +- [Source code](Test_TOF_PSDmonitor_toQ.instr) for `Test_TOF_PSDmonitor_toQ.instr`. - --- diff --git a/mcstas-comps/examples/Tests_optics/Test_Al_windows/Test_Al_windows.md b/mcstas-comps/examples/Tests_optics/Test_Al_windows/Test_Al_windows.md index 9e3149839..e6973964f 100644 --- a/mcstas-comps/examples/Tests_optics/Test_Al_windows/Test_Al_windows.md +++ b/mcstas-comps/examples/Tests_optics/Test_Al_windows/Test_Al_windows.md @@ -37,7 +37,7 @@ Parameters in **boldface** are required; the others are optional. ## Links -- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/examples/Tests_optics/Test_Al_windows/Test_Al_windows.instr) for `Test_Al_windows.instr`. +- [Source code](Test_Al_windows.instr) for `Test_Al_windows.instr`. - --- diff --git a/mcstas-comps/examples/Tests_optics/Test_Collimator_Radial/Test_Collimator_Radial.md b/mcstas-comps/examples/Tests_optics/Test_Collimator_Radial/Test_Collimator_Radial.md index 9c97ad142..6c8557cb1 100644 --- a/mcstas-comps/examples/Tests_optics/Test_Collimator_Radial/Test_Collimator_Radial.md +++ b/mcstas-comps/examples/Tests_optics/Test_Collimator_Radial/Test_Collimator_Radial.md @@ -29,7 +29,7 @@ Parameters in **boldface** are required; the others are optional. ## Links -- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/examples/Tests_optics/Test_Collimator_Radial/Test_Collimator_Radial.instr) for `Test_Collimator_Radial.instr`. +- [Source code](Test_Collimator_Radial.instr) for `Test_Collimator_Radial.instr`. --- diff --git a/mcstas-comps/examples/Tests_optics/Test_Conics_pairs/Test_Conics_pairs.md b/mcstas-comps/examples/Tests_optics/Test_Conics_pairs/Test_Conics_pairs.md index b7995f8ae..453ae6f53 100644 --- a/mcstas-comps/examples/Tests_optics/Test_Conics_pairs/Test_Conics_pairs.md +++ b/mcstas-comps/examples/Tests_optics/Test_Conics_pairs/Test_Conics_pairs.md @@ -35,7 +35,7 @@ Parameters in **boldface** are required; the others are optional. ## Links -- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/examples/Tests_optics/Test_Conics_pairs/Test_Conics_pairs.instr) for `Test_Conics_pairs.instr`. +- [Source code](Test_Conics_pairs.instr) for `Test_Conics_pairs.instr`. - --- diff --git a/mcstas-comps/examples/Tests_optics/Test_DiskChoppers/Test_DiskChoppers.md b/mcstas-comps/examples/Tests_optics/Test_DiskChoppers/Test_DiskChoppers.md index 2c96d5f3c..926c78647 100644 --- a/mcstas-comps/examples/Tests_optics/Test_DiskChoppers/Test_DiskChoppers.md +++ b/mcstas-comps/examples/Tests_optics/Test_DiskChoppers/Test_DiskChoppers.md @@ -28,7 +28,7 @@ Parameters in **boldface** are required; the others are optional. ## Links -- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/examples/Tests_optics/Test_DiskChoppers/Test_DiskChoppers.instr) for `Test_DiskChoppers.instr`. +- [Source code](Test_DiskChoppers.instr) for `Test_DiskChoppers.instr`. --- diff --git a/mcstas-comps/examples/Tests_optics/Test_DiskChoppers2/Test_DiskChoppers2.md b/mcstas-comps/examples/Tests_optics/Test_DiskChoppers2/Test_DiskChoppers2.md index 3b784626b..95e42ff36 100644 --- a/mcstas-comps/examples/Tests_optics/Test_DiskChoppers2/Test_DiskChoppers2.md +++ b/mcstas-comps/examples/Tests_optics/Test_DiskChoppers2/Test_DiskChoppers2.md @@ -34,7 +34,7 @@ Parameters in **boldface** are required; the others are optional. ## Links -- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/examples/Tests_optics/Test_DiskChoppers2/Test_DiskChoppers2.instr) for `Test_DiskChoppers2.instr`. +- [Source code](Test_DiskChoppers2.instr) for `Test_DiskChoppers2.instr`. --- diff --git a/mcstas-comps/examples/Tests_optics/Test_Fermi/Test_Fermi.md b/mcstas-comps/examples/Tests_optics/Test_Fermi/Test_Fermi.md index 652f5d18c..06bd93b82 100644 --- a/mcstas-comps/examples/Tests_optics/Test_Fermi/Test_Fermi.md +++ b/mcstas-comps/examples/Tests_optics/Test_Fermi/Test_Fermi.md @@ -39,7 +39,7 @@ Parameters in **boldface** are required; the others are optional. ## Links -- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/examples/Tests_optics/Test_Fermi/Test_Fermi.instr) for `Test_Fermi.instr`. +- [Source code](Test_Fermi.instr) for `Test_Fermi.instr`. --- diff --git a/mcstas-comps/examples/Tests_optics/Test_FocalisationMirrors/Test_FocalisationMirrors.md b/mcstas-comps/examples/Tests_optics/Test_FocalisationMirrors/Test_FocalisationMirrors.md index cd5c35a8a..c9e2e34da 100644 --- a/mcstas-comps/examples/Tests_optics/Test_FocalisationMirrors/Test_FocalisationMirrors.md +++ b/mcstas-comps/examples/Tests_optics/Test_FocalisationMirrors/Test_FocalisationMirrors.md @@ -37,7 +37,7 @@ Parameters in **boldface** are required; the others are optional. ## Links -- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/examples/Tests_optics/Test_FocalisationMirrors/Test_FocalisationMirrors.instr) for `Test_FocalisationMirrors.instr`. +- [Source code](Test_FocalisationMirrors.instr) for `Test_FocalisationMirrors.instr`. --- diff --git a/mcstas-comps/examples/Tests_optics/Test_Guides/Test_Guides.md b/mcstas-comps/examples/Tests_optics/Test_Guides/Test_Guides.md index 3a18d82e0..1a1b538df 100644 --- a/mcstas-comps/examples/Tests_optics/Test_Guides/Test_Guides.md +++ b/mcstas-comps/examples/Tests_optics/Test_Guides/Test_Guides.md @@ -27,7 +27,7 @@ Parameters in **boldface** are required; the others are optional. ## Links -- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/examples/Tests_optics/Test_Guides/Test_Guides.instr) for `Test_Guides.instr`. +- [Source code](Test_Guides.instr) for `Test_Guides.instr`. --- diff --git a/mcstas-comps/examples/Tests_optics/Test_Guides_Curved/Test_Guides_Curved.md b/mcstas-comps/examples/Tests_optics/Test_Guides_Curved/Test_Guides_Curved.md index 80a25d9d5..c8a1d830d 100644 --- a/mcstas-comps/examples/Tests_optics/Test_Guides_Curved/Test_Guides_Curved.md +++ b/mcstas-comps/examples/Tests_optics/Test_Guides_Curved/Test_Guides_Curved.md @@ -28,7 +28,7 @@ Parameters in **boldface** are required; the others are optional. ## Links -- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/examples/Tests_optics/Test_Guides_Curved/Test_Guides_Curved.instr) for `Test_Guides_Curved.instr`. +- [Source code](Test_Guides_Curved.instr) for `Test_Guides_Curved.instr`. --- diff --git a/mcstas-comps/examples/Tests_optics/Test_Lens/Test_Lens.md b/mcstas-comps/examples/Tests_optics/Test_Lens/Test_Lens.md index 1dbfa1ee0..30dad4c56 100644 --- a/mcstas-comps/examples/Tests_optics/Test_Lens/Test_Lens.md +++ b/mcstas-comps/examples/Tests_optics/Test_Lens/Test_Lens.md @@ -28,7 +28,7 @@ Parameters in **boldface** are required; the others are optional. ## Links -- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/examples/Tests_optics/Test_Lens/Test_Lens.instr) for `Test_Lens.instr`. +- [Source code](Test_Lens.instr) for `Test_Lens.instr`. --- diff --git a/mcstas-comps/examples/Tests_optics/Test_Monochromator_bent/Test_Monochromator_bent.md b/mcstas-comps/examples/Tests_optics/Test_Monochromator_bent/Test_Monochromator_bent.md index 3e92e617a..1bd4aa2ab 100644 --- a/mcstas-comps/examples/Tests_optics/Test_Monochromator_bent/Test_Monochromator_bent.md +++ b/mcstas-comps/examples/Tests_optics/Test_Monochromator_bent/Test_Monochromator_bent.md @@ -26,7 +26,7 @@ Parameters in **boldface** are required; the others are optional. ## Links -- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/examples/Tests_optics/Test_Monochromator_bent/Test_Monochromator_bent.instr) for `Test_Monochromator_bent.instr`. +- [Source code](Test_Monochromator_bent.instr) for `Test_Monochromator_bent.instr`. --- diff --git a/mcstas-comps/examples/Tests_optics/Test_Monochromator_bent_complex/Test_Monochromator_bent_complex.md b/mcstas-comps/examples/Tests_optics/Test_Monochromator_bent_complex/Test_Monochromator_bent_complex.md index 590a939a9..ade1988c4 100644 --- a/mcstas-comps/examples/Tests_optics/Test_Monochromator_bent_complex/Test_Monochromator_bent_complex.md +++ b/mcstas-comps/examples/Tests_optics/Test_Monochromator_bent_complex/Test_Monochromator_bent_complex.md @@ -36,7 +36,7 @@ Parameters in **boldface** are required; the others are optional. ## Links -- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/examples/Tests_optics/Test_Monochromator_bent_complex/Test_Monochromator_bent_complex.instr) for `Test_Monochromator_bent_complex.instr`. +- [Source code](Test_Monochromator_bent_complex.instr) for `Test_Monochromator_bent_complex.instr`. --- diff --git a/mcstas-comps/examples/Tests_optics/Test_Monochromators/Test_Monochromators.md b/mcstas-comps/examples/Tests_optics/Test_Monochromators/Test_Monochromators.md index e96b39dc9..3608ab0ac 100644 --- a/mcstas-comps/examples/Tests_optics/Test_Monochromators/Test_Monochromators.md +++ b/mcstas-comps/examples/Tests_optics/Test_Monochromators/Test_Monochromators.md @@ -50,7 +50,7 @@ Parameters in **boldface** are required; the others are optional. ## Links -- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/examples/Tests_optics/Test_Monochromators/Test_Monochromators.instr) for `Test_Monochromators.instr`. +- [Source code](Test_Monochromators.instr) for `Test_Monochromators.instr`. --- diff --git a/mcstas-comps/examples/Tests_optics/Test_NMO/Test_NMO.md b/mcstas-comps/examples/Tests_optics/Test_NMO/Test_NMO.md index e52ad5173..daf9dcfc1 100644 --- a/mcstas-comps/examples/Tests_optics/Test_NMO/Test_NMO.md +++ b/mcstas-comps/examples/Tests_optics/Test_NMO/Test_NMO.md @@ -46,7 +46,7 @@ Parameters in **boldface** are required; the others are optional. ## Links -- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/examples/Tests_optics/Test_NMO/Test_NMO.instr) for `Test_NMO.instr`. +- [Source code](Test_NMO.instr) for `Test_NMO.instr`. - P Böni presentation at PSI NFO workshop - Christoph Herb et al., Nucl. Instrum. Meth. A 1040, 1671564 (1-18) 2022. diff --git a/mcstas-comps/examples/Tests_optics/Test_PSD_Detector/Test_PSD_Detector.md b/mcstas-comps/examples/Tests_optics/Test_PSD_Detector/Test_PSD_Detector.md index 58d6b0bab..cfcb41133 100644 --- a/mcstas-comps/examples/Tests_optics/Test_PSD_Detector/Test_PSD_Detector.md +++ b/mcstas-comps/examples/Tests_optics/Test_PSD_Detector/Test_PSD_Detector.md @@ -26,7 +26,7 @@ Parameters in **boldface** are required; the others are optional. ## Links -- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/examples/Tests_optics/Test_PSD_Detector/Test_PSD_Detector.instr) for `Test_PSD_Detector.instr`. +- [Source code](Test_PSD_Detector.instr) for `Test_PSD_Detector.instr`. - The PSD_Detector component --- diff --git a/mcstas-comps/examples/Tests_optics/Test_Pol_Bender_Vs_Guide_Curved/Test_Pol_Bender_Vs_Guide_Curved.md b/mcstas-comps/examples/Tests_optics/Test_Pol_Bender_Vs_Guide_Curved/Test_Pol_Bender_Vs_Guide_Curved.md index daef98291..a78bd102d 100644 --- a/mcstas-comps/examples/Tests_optics/Test_Pol_Bender_Vs_Guide_Curved/Test_Pol_Bender_Vs_Guide_Curved.md +++ b/mcstas-comps/examples/Tests_optics/Test_Pol_Bender_Vs_Guide_Curved/Test_Pol_Bender_Vs_Guide_Curved.md @@ -29,7 +29,7 @@ Parameters in **boldface** are required; the others are optional. ## Links -- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/examples/Tests_optics/Test_Pol_Bender_Vs_Guide_Curved/Test_Pol_Bender_Vs_Guide_Curved.instr) for `Test_Pol_Bender_Vs_Guide_Curved.instr`. +- [Source code](Test_Pol_Bender_Vs_Guide_Curved.instr) for `Test_Pol_Bender_Vs_Guide_Curved.instr`. - A reference/HTML link for more information --- diff --git a/mcstas-comps/examples/Tests_optics/Test_Rotator/Test_Rotator.md b/mcstas-comps/examples/Tests_optics/Test_Rotator/Test_Rotator.md index 8d52b3d29..4279345bf 100644 --- a/mcstas-comps/examples/Tests_optics/Test_Rotator/Test_Rotator.md +++ b/mcstas-comps/examples/Tests_optics/Test_Rotator/Test_Rotator.md @@ -29,7 +29,7 @@ Parameters in **boldface** are required; the others are optional. ## Links -- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/examples/Tests_optics/Test_Rotator/Test_Rotator.instr) for `Test_Rotator.instr`. +- [Source code](Test_Rotator.instr) for `Test_Rotator.instr`. - A reference/HTML link for more information --- diff --git a/mcstas-comps/examples/Tests_optics/Test_Selectors/Test_Selectors.md b/mcstas-comps/examples/Tests_optics/Test_Selectors/Test_Selectors.md index dd72995cd..872828475 100644 --- a/mcstas-comps/examples/Tests_optics/Test_Selectors/Test_Selectors.md +++ b/mcstas-comps/examples/Tests_optics/Test_Selectors/Test_Selectors.md @@ -29,7 +29,7 @@ Parameters in **boldface** are required; the others are optional. ## Links -- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/examples/Tests_optics/Test_Selectors/Test_Selectors.instr) for `Test_Selectors.instr`. +- [Source code](Test_Selectors.instr) for `Test_Selectors.instr`. --- diff --git a/mcstas-comps/examples/Tests_optics/Test_Source_pulsed/Test_Source_pulsed.md b/mcstas-comps/examples/Tests_optics/Test_Source_pulsed/Test_Source_pulsed.md index 28bff8b4d..8607c8cb3 100644 --- a/mcstas-comps/examples/Tests_optics/Test_Source_pulsed/Test_Source_pulsed.md +++ b/mcstas-comps/examples/Tests_optics/Test_Source_pulsed/Test_Source_pulsed.md @@ -27,7 +27,7 @@ Parameters in **boldface** are required; the others are optional. ## Links -- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/examples/Tests_optics/Test_Source_pulsed/Test_Source_pulsed.instr) for `Test_Source_pulsed.instr`. +- [Source code](Test_Source_pulsed.instr) for `Test_Source_pulsed.instr`. --- diff --git a/mcstas-comps/examples/Tests_optics/Test_Sources/Test_Sources.md b/mcstas-comps/examples/Tests_optics/Test_Sources/Test_Sources.md index f939dc1c6..2819738fc 100644 --- a/mcstas-comps/examples/Tests_optics/Test_Sources/Test_Sources.md +++ b/mcstas-comps/examples/Tests_optics/Test_Sources/Test_Sources.md @@ -34,7 +34,7 @@ Parameters in **boldface** are required; the others are optional. ## Links -- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/examples/Tests_optics/Test_Sources/Test_Sources.instr) for `Test_Sources.instr`. +- [Source code](Test_Sources.instr) for `Test_Sources.instr`. --- diff --git a/mcstas-comps/examples/Tests_optics/Test_StatisticalChopper/Test_StatisticalChopper.md b/mcstas-comps/examples/Tests_optics/Test_StatisticalChopper/Test_StatisticalChopper.md index 74ab2d619..8c40999e4 100644 --- a/mcstas-comps/examples/Tests_optics/Test_StatisticalChopper/Test_StatisticalChopper.md +++ b/mcstas-comps/examples/Tests_optics/Test_StatisticalChopper/Test_StatisticalChopper.md @@ -26,7 +26,7 @@ Parameters in **boldface** are required; the others are optional. ## Links -- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/examples/Tests_optics/Test_StatisticalChopper/Test_StatisticalChopper.instr) for `Test_StatisticalChopper.instr`. +- [Source code](Test_StatisticalChopper.instr) for `Test_StatisticalChopper.instr`. - R. Von Jan and R. Scherm. The statistical chopper for neutron time-of-flight spectroscopy. Nuclear Instruments and Methods, 80 (1970) 69-76. --- diff --git a/mcstas-comps/examples/Tests_optics/Test_Vertical_Bender/Test_Vertical_Bender.md b/mcstas-comps/examples/Tests_optics/Test_Vertical_Bender/Test_Vertical_Bender.md index 1054b3ce0..2263e0a15 100644 --- a/mcstas-comps/examples/Tests_optics/Test_Vertical_Bender/Test_Vertical_Bender.md +++ b/mcstas-comps/examples/Tests_optics/Test_Vertical_Bender/Test_Vertical_Bender.md @@ -32,7 +32,7 @@ Parameters in **boldface** are required; the others are optional. ## Links -- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/examples/Tests_optics/Test_Vertical_Bender/Test_Vertical_Bender.instr) for `Test_Vertical_Bender.instr`. +- [Source code](Test_Vertical_Bender.instr) for `Test_Vertical_Bender.instr`. - --- diff --git a/mcstas-comps/examples/Tests_optics/Test_filters/Test_filters.md b/mcstas-comps/examples/Tests_optics/Test_filters/Test_filters.md index 917734c3a..ea2653464 100644 --- a/mcstas-comps/examples/Tests_optics/Test_filters/Test_filters.md +++ b/mcstas-comps/examples/Tests_optics/Test_filters/Test_filters.md @@ -32,7 +32,7 @@ Parameters in **boldface** are required; the others are optional. ## Links -- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/examples/Tests_optics/Test_filters/Test_filters.instr) for `Test_filters.instr`. +- [Source code](Test_filters.instr) for `Test_filters.instr`. - Acta Cryst. (1978). A34, 61-65 - Rev. Sci. Instrum. 59, 380-381 (1988) - Test instrument written by P Willendrup ESS, March 2026 diff --git a/mcstas-comps/examples/Tests_optics/Test_focus/Test_focus.md b/mcstas-comps/examples/Tests_optics/Test_focus/Test_focus.md index 561e9100c..574885af2 100644 --- a/mcstas-comps/examples/Tests_optics/Test_focus/Test_focus.md +++ b/mcstas-comps/examples/Tests_optics/Test_focus/Test_focus.md @@ -35,7 +35,7 @@ Parameters in **boldface** are required; the others are optional. ## Links -- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/examples/Tests_optics/Test_focus/Test_focus.instr) for `Test_focus.instr`. +- [Source code](Test_focus.instr) for `Test_focus.instr`. --- diff --git a/mcstas-comps/examples/Tests_other/test_File/test_File.md b/mcstas-comps/examples/Tests_other/test_File/test_File.md index 9cfb24974..0f41b9b92 100644 --- a/mcstas-comps/examples/Tests_other/test_File/test_File.md +++ b/mcstas-comps/examples/Tests_other/test_File/test_File.md @@ -25,7 +25,7 @@ Parameters in **boldface** are required; the others are optional. ## Links -- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/examples/Tests_other/test_File/test_File.instr) for `test_File.instr`. +- [Source code](test_File.instr) for `test_File.instr`. - From https://github.com/g5t/mccode-file --- diff --git a/mcstas-comps/examples/Tests_polarization/He3_spin_filter/He3_spin_filter.md b/mcstas-comps/examples/Tests_polarization/He3_spin_filter/He3_spin_filter.md index 335fec1d1..5a980fc86 100644 --- a/mcstas-comps/examples/Tests_polarization/He3_spin_filter/He3_spin_filter.md +++ b/mcstas-comps/examples/Tests_polarization/He3_spin_filter/He3_spin_filter.md @@ -33,7 +33,7 @@ Parameters in **boldface** are required; the others are optional. ## Links -- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/examples/Tests_polarization/He3_spin_filter/He3_spin_filter.instr) for `He3_spin_filter.instr`. +- [Source code](He3_spin_filter.instr) for `He3_spin_filter.instr`. - --- diff --git a/mcstas-comps/examples/Tests_polarization/SE_example/SE_example.md b/mcstas-comps/examples/Tests_polarization/SE_example/SE_example.md index 1ebf9ccf0..5fe3883db 100644 --- a/mcstas-comps/examples/Tests_polarization/SE_example/SE_example.md +++ b/mcstas-comps/examples/Tests_polarization/SE_example/SE_example.md @@ -37,7 +37,7 @@ Parameters in **boldface** are required; the others are optional. ## Links -- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/examples/Tests_polarization/SE_example/SE_example.instr) for `SE_example.instr`. +- [Source code](SE_example.instr) for `SE_example.instr`. - Requires mcstas 1.12b (or beta). PolLambda_monitor has been modified to work (nL->nlam) --- diff --git a/mcstas-comps/examples/Tests_polarization/SE_example2/SE_example2.md b/mcstas-comps/examples/Tests_polarization/SE_example2/SE_example2.md index a05f79fae..f6ff5b8fd 100644 --- a/mcstas-comps/examples/Tests_polarization/SE_example2/SE_example2.md +++ b/mcstas-comps/examples/Tests_polarization/SE_example2/SE_example2.md @@ -37,7 +37,7 @@ Parameters in **boldface** are required; the others are optional. ## Links -- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/examples/Tests_polarization/SE_example2/SE_example2.instr) for `SE_example2.instr`. +- [Source code](SE_example2.instr) for `SE_example2.instr`. - Requires mcstas 1.12b (or beta). PolLambda_monitor has been modified to work (nL->nlam) --- diff --git a/mcstas-comps/examples/Tests_polarization/Supermirror_thin_substrate/Supermirror_thin_substrate.md b/mcstas-comps/examples/Tests_polarization/Supermirror_thin_substrate/Supermirror_thin_substrate.md index f91754e63..25b71bb83 100644 --- a/mcstas-comps/examples/Tests_polarization/Supermirror_thin_substrate/Supermirror_thin_substrate.md +++ b/mcstas-comps/examples/Tests_polarization/Supermirror_thin_substrate/Supermirror_thin_substrate.md @@ -46,7 +46,7 @@ Parameters in **boldface** are required; the others are optional. ## Links -- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/examples/Tests_polarization/Supermirror_thin_substrate/Supermirror_thin_substrate.instr) for `Supermirror_thin_substrate.instr`. +- [Source code](Supermirror_thin_substrate.instr) for `Supermirror_thin_substrate.instr`. - A reference/HTML link for more information --- diff --git a/mcstas-comps/examples/Tests_polarization/Test_Magnetic_Constant/Test_Magnetic_Constant.md b/mcstas-comps/examples/Tests_polarization/Test_Magnetic_Constant/Test_Magnetic_Constant.md index a6ef493e7..0f00806f3 100644 --- a/mcstas-comps/examples/Tests_polarization/Test_Magnetic_Constant/Test_Magnetic_Constant.md +++ b/mcstas-comps/examples/Tests_polarization/Test_Magnetic_Constant/Test_Magnetic_Constant.md @@ -31,7 +31,7 @@ Parameters in **boldface** are required; the others are optional. ## Links -- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/examples/Tests_polarization/Test_Magnetic_Constant/Test_Magnetic_Constant.instr) for `Test_Magnetic_Constant.instr`. +- [Source code](Test_Magnetic_Constant.instr) for `Test_Magnetic_Constant.instr`. --- diff --git a/mcstas-comps/examples/Tests_polarization/Test_Magnetic_Majorana/Test_Magnetic_Majorana.md b/mcstas-comps/examples/Tests_polarization/Test_Magnetic_Majorana/Test_Magnetic_Majorana.md index a933981ad..44a7e6f67 100644 --- a/mcstas-comps/examples/Tests_polarization/Test_Magnetic_Majorana/Test_Magnetic_Majorana.md +++ b/mcstas-comps/examples/Tests_polarization/Test_Magnetic_Majorana/Test_Magnetic_Majorana.md @@ -34,7 +34,7 @@ Parameters in **boldface** are required; the others are optional. ## Links -- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/examples/Tests_polarization/Test_Magnetic_Majorana/Test_Magnetic_Majorana.instr) for `Test_Magnetic_Majorana.instr`. +- [Source code](Test_Magnetic_Majorana.instr) for `Test_Magnetic_Majorana.instr`. --- diff --git a/mcstas-comps/examples/Tests_polarization/Test_Magnetic_Rotation/Test_Magnetic_Rotation.md b/mcstas-comps/examples/Tests_polarization/Test_Magnetic_Rotation/Test_Magnetic_Rotation.md index cf7980a02..e5796041c 100644 --- a/mcstas-comps/examples/Tests_polarization/Test_Magnetic_Rotation/Test_Magnetic_Rotation.md +++ b/mcstas-comps/examples/Tests_polarization/Test_Magnetic_Rotation/Test_Magnetic_Rotation.md @@ -30,7 +30,7 @@ Parameters in **boldface** are required; the others are optional. ## Links -- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/examples/Tests_polarization/Test_Magnetic_Rotation/Test_Magnetic_Rotation.instr) for `Test_Magnetic_Rotation.instr`. +- [Source code](Test_Magnetic_Rotation.instr) for `Test_Magnetic_Rotation.instr`. --- diff --git a/mcstas-comps/examples/Tests_polarization/Test_Pol_Bender/Test_Pol_Bender.md b/mcstas-comps/examples/Tests_polarization/Test_Pol_Bender/Test_Pol_Bender.md index 4bb7cf5a3..2942f7b04 100644 --- a/mcstas-comps/examples/Tests_polarization/Test_Pol_Bender/Test_Pol_Bender.md +++ b/mcstas-comps/examples/Tests_polarization/Test_Pol_Bender/Test_Pol_Bender.md @@ -31,7 +31,7 @@ Parameters in **boldface** are required; the others are optional. ## Links -- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/examples/Tests_polarization/Test_Pol_Bender/Test_Pol_Bender.instr) for `Test_Pol_Bender.instr`. +- [Source code](Test_Pol_Bender.instr) for `Test_Pol_Bender.instr`. --- diff --git a/mcstas-comps/examples/Tests_polarization/Test_Pol_FieldBox/Test_Pol_FieldBox.md b/mcstas-comps/examples/Tests_polarization/Test_Pol_FieldBox/Test_Pol_FieldBox.md index 55ae03e16..f21b59895 100644 --- a/mcstas-comps/examples/Tests_polarization/Test_Pol_FieldBox/Test_Pol_FieldBox.md +++ b/mcstas-comps/examples/Tests_polarization/Test_Pol_FieldBox/Test_Pol_FieldBox.md @@ -28,7 +28,7 @@ Parameters in **boldface** are required; the others are optional. ## Links -- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/examples/Tests_polarization/Test_Pol_FieldBox/Test_Pol_FieldBox.instr) for `Test_Pol_FieldBox.instr`. +- [Source code](Test_Pol_FieldBox.instr) for `Test_Pol_FieldBox.instr`. --- diff --git a/mcstas-comps/examples/Tests_polarization/Test_Pol_Guide_Vmirror/Test_Pol_Guide_Vmirror.md b/mcstas-comps/examples/Tests_polarization/Test_Pol_Guide_Vmirror/Test_Pol_Guide_Vmirror.md index 5760ad440..a58f6b3be 100644 --- a/mcstas-comps/examples/Tests_polarization/Test_Pol_Guide_Vmirror/Test_Pol_Guide_Vmirror.md +++ b/mcstas-comps/examples/Tests_polarization/Test_Pol_Guide_Vmirror/Test_Pol_Guide_Vmirror.md @@ -26,7 +26,7 @@ Parameters in **boldface** are required; the others are optional. ## Links -- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/examples/Tests_polarization/Test_Pol_Guide_Vmirror/Test_Pol_Guide_Vmirror.instr) for `Test_Pol_Guide_Vmirror.instr`. +- [Source code](Test_Pol_Guide_Vmirror.instr) for `Test_Pol_Guide_Vmirror.instr`. --- diff --git a/mcstas-comps/examples/Tests_polarization/Test_Pol_Guide_mirror/Test_Pol_Guide_mirror.md b/mcstas-comps/examples/Tests_polarization/Test_Pol_Guide_mirror/Test_Pol_Guide_mirror.md index 668f8f4ec..75372c95f 100644 --- a/mcstas-comps/examples/Tests_polarization/Test_Pol_Guide_mirror/Test_Pol_Guide_mirror.md +++ b/mcstas-comps/examples/Tests_polarization/Test_Pol_Guide_mirror/Test_Pol_Guide_mirror.md @@ -27,7 +27,7 @@ Parameters in **boldface** are required; the others are optional. ## Links -- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/examples/Tests_polarization/Test_Pol_Guide_mirror/Test_Pol_Guide_mirror.instr) for `Test_Pol_Guide_mirror.instr`. +- [Source code](Test_Pol_Guide_mirror.instr) for `Test_Pol_Guide_mirror.instr`. --- diff --git a/mcstas-comps/examples/Tests_polarization/Test_Pol_MSF/Test_Pol_MSF.md b/mcstas-comps/examples/Tests_polarization/Test_Pol_MSF/Test_Pol_MSF.md index f66fb5a52..253a7593a 100644 --- a/mcstas-comps/examples/Tests_polarization/Test_Pol_MSF/Test_Pol_MSF.md +++ b/mcstas-comps/examples/Tests_polarization/Test_Pol_MSF/Test_Pol_MSF.md @@ -26,7 +26,7 @@ Parameters in **boldface** are required; the others are optional. ## Links -- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/examples/Tests_polarization/Test_Pol_MSF/Test_Pol_MSF.instr) for `Test_Pol_MSF.instr`. +- [Source code](Test_Pol_MSF.instr) for `Test_Pol_MSF.instr`. --- diff --git a/mcstas-comps/examples/Tests_polarization/Test_Pol_Mirror/Test_Pol_Mirror.md b/mcstas-comps/examples/Tests_polarization/Test_Pol_Mirror/Test_Pol_Mirror.md index 1eacaa8e0..484ffaefe 100644 --- a/mcstas-comps/examples/Tests_polarization/Test_Pol_Mirror/Test_Pol_Mirror.md +++ b/mcstas-comps/examples/Tests_polarization/Test_Pol_Mirror/Test_Pol_Mirror.md @@ -31,7 +31,7 @@ Parameters in **boldface** are required; the others are optional. ## Links -- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/examples/Tests_polarization/Test_Pol_Mirror/Test_Pol_Mirror.instr) for `Test_Pol_Mirror.instr`. +- [Source code](Test_Pol_Mirror.instr) for `Test_Pol_Mirror.instr`. --- diff --git a/mcstas-comps/examples/Tests_polarization/Test_Pol_SF_ideal/Test_Pol_SF_ideal.md b/mcstas-comps/examples/Tests_polarization/Test_Pol_SF_ideal/Test_Pol_SF_ideal.md index 074b6c544..7fd4baabc 100644 --- a/mcstas-comps/examples/Tests_polarization/Test_Pol_SF_ideal/Test_Pol_SF_ideal.md +++ b/mcstas-comps/examples/Tests_polarization/Test_Pol_SF_ideal/Test_Pol_SF_ideal.md @@ -29,7 +29,7 @@ Parameters in **boldface** are required; the others are optional. ## Links -- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/examples/Tests_polarization/Test_Pol_SF_ideal/Test_Pol_SF_ideal.instr) for `Test_Pol_SF_ideal.instr`. +- [Source code](Test_Pol_SF_ideal.instr) for `Test_Pol_SF_ideal.instr`. --- diff --git a/mcstas-comps/examples/Tests_polarization/Test_Pol_Set/Test_Pol_Set.md b/mcstas-comps/examples/Tests_polarization/Test_Pol_Set/Test_Pol_Set.md index 61aa98d82..d1a6ebdff 100644 --- a/mcstas-comps/examples/Tests_polarization/Test_Pol_Set/Test_Pol_Set.md +++ b/mcstas-comps/examples/Tests_polarization/Test_Pol_Set/Test_Pol_Set.md @@ -27,7 +27,7 @@ Parameters in **boldface** are required; the others are optional. ## Links -- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/examples/Tests_polarization/Test_Pol_Set/Test_Pol_Set.instr) for `Test_Pol_Set.instr`. +- [Source code](Test_Pol_Set.instr) for `Test_Pol_Set.instr`. --- diff --git a/mcstas-comps/examples/Tests_polarization/Test_Pol_Tabled/Test_Pol_Tabled.md b/mcstas-comps/examples/Tests_polarization/Test_Pol_Tabled/Test_Pol_Tabled.md index 92605e662..1127522e3 100644 --- a/mcstas-comps/examples/Tests_polarization/Test_Pol_Tabled/Test_Pol_Tabled.md +++ b/mcstas-comps/examples/Tests_polarization/Test_Pol_Tabled/Test_Pol_Tabled.md @@ -29,7 +29,7 @@ Parameters in **boldface** are required; the others are optional. ## Links -- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/examples/Tests_polarization/Test_Pol_Tabled/Test_Pol_Tabled.instr) for `Test_Pol_Tabled.instr`. +- [Source code](Test_Pol_Tabled.instr) for `Test_Pol_Tabled.instr`. - A reference/HTML link for more information --- diff --git a/mcstas-comps/examples/Tests_polarization/Test_Pol_TripleAxis/Test_Pol_TripleAxis.md b/mcstas-comps/examples/Tests_polarization/Test_Pol_TripleAxis/Test_Pol_TripleAxis.md index 268309e25..d50c285da 100644 --- a/mcstas-comps/examples/Tests_polarization/Test_Pol_TripleAxis/Test_Pol_TripleAxis.md +++ b/mcstas-comps/examples/Tests_polarization/Test_Pol_TripleAxis/Test_Pol_TripleAxis.md @@ -36,7 +36,7 @@ Parameters in **boldface** are required; the others are optional. ## Links -- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/examples/Tests_polarization/Test_Pol_TripleAxis/Test_Pol_TripleAxis.instr) for `Test_Pol_TripleAxis.instr`. +- [Source code](Test_Pol_TripleAxis.instr) for `Test_Pol_TripleAxis.instr`. --- diff --git a/mcstas-comps/examples/Tests_polarization/Test_V_cavity_SNAG_double_side/Test_V_cavity_SNAG_double_side.md b/mcstas-comps/examples/Tests_polarization/Test_V_cavity_SNAG_double_side/Test_V_cavity_SNAG_double_side.md index cfbe9383c..3b82aed68 100644 --- a/mcstas-comps/examples/Tests_polarization/Test_V_cavity_SNAG_double_side/Test_V_cavity_SNAG_double_side.md +++ b/mcstas-comps/examples/Tests_polarization/Test_V_cavity_SNAG_double_side/Test_V_cavity_SNAG_double_side.md @@ -38,7 +38,7 @@ Parameters in **boldface** are required; the others are optional. ## Links -- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/examples/Tests_polarization/Test_V_cavity_SNAG_double_side/Test_V_cavity_SNAG_double_side.instr) for `Test_V_cavity_SNAG_double_side.instr`. +- [Source code](Test_V_cavity_SNAG_double_side.instr) for `Test_V_cavity_SNAG_double_side.instr`. - P. Böni, W. Münzer and A. Ostermann: Physica B: Condensed Matter Volume 404, Issue 17, 1 September 2009, Pages 2620-2623 --- diff --git a/mcstas-comps/examples/Tests_polarization/Test_V_cavity_SNAG_single_side/Test_V_cavity_SNAG_single_side.md b/mcstas-comps/examples/Tests_polarization/Test_V_cavity_SNAG_single_side/Test_V_cavity_SNAG_single_side.md index 4d45547a7..8c76b13dc 100644 --- a/mcstas-comps/examples/Tests_polarization/Test_V_cavity_SNAG_single_side/Test_V_cavity_SNAG_single_side.md +++ b/mcstas-comps/examples/Tests_polarization/Test_V_cavity_SNAG_single_side/Test_V_cavity_SNAG_single_side.md @@ -38,7 +38,7 @@ Parameters in **boldface** are required; the others are optional. ## Links -- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/examples/Tests_polarization/Test_V_cavity_SNAG_single_side/Test_V_cavity_SNAG_single_side.instr) for `Test_V_cavity_SNAG_single_side.instr`. +- [Source code](Test_V_cavity_SNAG_single_side.instr) for `Test_V_cavity_SNAG_single_side.instr`. - P. Böni, W. Münzer and A. Ostermann: Physica B: Condensed Matter Volume 404, Issue 17, 1 September 2009, Pages 2620-2623 --- diff --git a/mcstas-comps/examples/Tests_polarization/Test_pol_ideal/Test_pol_ideal.md b/mcstas-comps/examples/Tests_polarization/Test_pol_ideal/Test_pol_ideal.md index b623625b2..4ee1fb43f 100644 --- a/mcstas-comps/examples/Tests_polarization/Test_pol_ideal/Test_pol_ideal.md +++ b/mcstas-comps/examples/Tests_polarization/Test_pol_ideal/Test_pol_ideal.md @@ -25,7 +25,7 @@ Parameters in **boldface** are required; the others are optional. ## Links -- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/examples/Tests_polarization/Test_pol_ideal/Test_pol_ideal.instr) for `Test_pol_ideal.instr`. +- [Source code](Test_pol_ideal.instr) for `Test_pol_ideal.instr`. --- diff --git a/mcstas-comps/examples/Tests_samples/GISANS_tests/GISANS_tests.md b/mcstas-comps/examples/Tests_samples/GISANS_tests/GISANS_tests.md index e09797f0c..39eb428ec 100644 --- a/mcstas-comps/examples/Tests_samples/GISANS_tests/GISANS_tests.md +++ b/mcstas-comps/examples/Tests_samples/GISANS_tests/GISANS_tests.md @@ -29,7 +29,7 @@ Parameters in **boldface** are required; the others are optional. ## Links -- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/examples/Tests_samples/GISANS_tests/GISANS_tests.instr) for `GISANS_tests.instr`. +- [Source code](GISANS_tests.instr) for `GISANS_tests.instr`. --- diff --git a/mcstas-comps/examples/Tests_samples/Samples_Incoherent/Samples_Incoherent.md b/mcstas-comps/examples/Tests_samples/Samples_Incoherent/Samples_Incoherent.md index 799f5a5f3..6f420acd4 100644 --- a/mcstas-comps/examples/Tests_samples/Samples_Incoherent/Samples_Incoherent.md +++ b/mcstas-comps/examples/Tests_samples/Samples_Incoherent/Samples_Incoherent.md @@ -68,7 +68,7 @@ Parameters in **boldface** are required; the others are optional. ## Links -- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/examples/Tests_samples/Samples_Incoherent/Samples_Incoherent.instr) for `Samples_Incoherent.instr`. +- [Source code](Samples_Incoherent.instr) for `Samples_Incoherent.instr`. - Validation of Single_crystal is now in progress! --- diff --git a/mcstas-comps/examples/Tests_samples/Samples_Incoherent_off/Samples_Incoherent_off.md b/mcstas-comps/examples/Tests_samples/Samples_Incoherent_off/Samples_Incoherent_off.md index 992df1994..e1e4f8d15 100644 --- a/mcstas-comps/examples/Tests_samples/Samples_Incoherent_off/Samples_Incoherent_off.md +++ b/mcstas-comps/examples/Tests_samples/Samples_Incoherent_off/Samples_Incoherent_off.md @@ -27,7 +27,7 @@ Parameters in **boldface** are required; the others are optional. ## Links -- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/examples/Tests_samples/Samples_Incoherent_off/Samples_Incoherent_off.instr) for `Samples_Incoherent_off.instr`. +- [Source code](Samples_Incoherent_off.instr) for `Samples_Incoherent_off.instr`. - http://shape.cs.princeton.edu/benchmark/documentation/off_format.html --- diff --git a/mcstas-comps/examples/Tests_samples/Samples_Isotropic_Sqw/Samples_Isotropic_Sqw.md b/mcstas-comps/examples/Tests_samples/Samples_Isotropic_Sqw/Samples_Isotropic_Sqw.md index 3975c4514..71dc433b2 100644 --- a/mcstas-comps/examples/Tests_samples/Samples_Isotropic_Sqw/Samples_Isotropic_Sqw.md +++ b/mcstas-comps/examples/Tests_samples/Samples_Isotropic_Sqw/Samples_Isotropic_Sqw.md @@ -29,7 +29,7 @@ Parameters in **boldface** are required; the others are optional. ## Links -- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/examples/Tests_samples/Samples_Isotropic_Sqw/Samples_Isotropic_Sqw.instr) for `Samples_Isotropic_Sqw.instr`. +- [Source code](Samples_Isotropic_Sqw.instr) for `Samples_Isotropic_Sqw.instr`. - The Isotropic_Sqw sample --- diff --git a/mcstas-comps/examples/Tests_samples/Samples_Phonon/Samples_Phonon.md b/mcstas-comps/examples/Tests_samples/Samples_Phonon/Samples_Phonon.md index 9916d9e99..9d0687a27 100644 --- a/mcstas-comps/examples/Tests_samples/Samples_Phonon/Samples_Phonon.md +++ b/mcstas-comps/examples/Tests_samples/Samples_Phonon/Samples_Phonon.md @@ -34,7 +34,7 @@ Parameters in **boldface** are required; the others are optional. ## Links -- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/examples/Tests_samples/Samples_Phonon/Samples_Phonon.instr) for `Samples_Phonon.instr`. +- [Source code](Samples_Phonon.instr) for `Samples_Phonon.instr`. --- diff --git a/mcstas-comps/examples/Tests_samples/Samples_vanadium/Samples_vanadium.md b/mcstas-comps/examples/Tests_samples/Samples_vanadium/Samples_vanadium.md index 79a33d87a..a128efe78 100644 --- a/mcstas-comps/examples/Tests_samples/Samples_vanadium/Samples_vanadium.md +++ b/mcstas-comps/examples/Tests_samples/Samples_vanadium/Samples_vanadium.md @@ -26,7 +26,7 @@ Parameters in **boldface** are required; the others are optional. ## Links -- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/examples/Tests_samples/Samples_vanadium/Samples_vanadium.instr) for `Samples_vanadium.instr`. +- [Source code](Samples_vanadium.instr) for `Samples_vanadium.instr`. - The McStas User manual - The McStas tutorial diff --git a/mcstas-comps/examples/Tests_samples/Test_Incoherent/Test_Incoherent.md b/mcstas-comps/examples/Tests_samples/Test_Incoherent/Test_Incoherent.md index ad6754289..89d198d41 100644 --- a/mcstas-comps/examples/Tests_samples/Test_Incoherent/Test_Incoherent.md +++ b/mcstas-comps/examples/Tests_samples/Test_Incoherent/Test_Incoherent.md @@ -26,7 +26,7 @@ Parameters in **boldface** are required; the others are optional. ## Links -- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/examples/Tests_samples/Test_Incoherent/Test_Incoherent.instr) for `Test_Incoherent.instr`. +- [Source code](Test_Incoherent.instr) for `Test_Incoherent.instr`. --- diff --git a/mcstas-comps/examples/Tests_samples/Test_Incoherent_MS/Test_Incoherent_MS.md b/mcstas-comps/examples/Tests_samples/Test_Incoherent_MS/Test_Incoherent_MS.md index 29f510273..e3c95eeb7 100644 --- a/mcstas-comps/examples/Tests_samples/Test_Incoherent_MS/Test_Incoherent_MS.md +++ b/mcstas-comps/examples/Tests_samples/Test_Incoherent_MS/Test_Incoherent_MS.md @@ -58,7 +58,7 @@ Parameters in **boldface** are required; the others are optional. ## Links -- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/examples/Tests_samples/Test_Incoherent_MS/Test_Incoherent_MS.instr) for `Test_Incoherent_MS.instr`. +- [Source code](Test_Incoherent_MS.instr) for `Test_Incoherent_MS.instr`. - A reference/HTML link for more information --- diff --git a/mcstas-comps/examples/Tests_samples/Test_Magnon_bcc_2D/Test_Magnon_bcc_2D.md b/mcstas-comps/examples/Tests_samples/Test_Magnon_bcc_2D/Test_Magnon_bcc_2D.md index eb0008bfe..acfb2e170 100644 --- a/mcstas-comps/examples/Tests_samples/Test_Magnon_bcc_2D/Test_Magnon_bcc_2D.md +++ b/mcstas-comps/examples/Tests_samples/Test_Magnon_bcc_2D/Test_Magnon_bcc_2D.md @@ -34,7 +34,7 @@ Parameters in **boldface** are required; the others are optional. ## Links -- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/examples/Tests_samples/Test_Magnon_bcc_2D/Test_Magnon_bcc_2D.instr) for `Test_Magnon_bcc_2D.instr`. +- [Source code](Test_Magnon_bcc_2D.instr) for `Test_Magnon_bcc_2D.instr`. --- diff --git a/mcstas-comps/examples/Tests_samples/Test_Magnon_bcc_TAS/Test_Magnon_bcc_TAS.md b/mcstas-comps/examples/Tests_samples/Test_Magnon_bcc_TAS/Test_Magnon_bcc_TAS.md index 3cb114c27..2f2e2eb8e 100644 --- a/mcstas-comps/examples/Tests_samples/Test_Magnon_bcc_TAS/Test_Magnon_bcc_TAS.md +++ b/mcstas-comps/examples/Tests_samples/Test_Magnon_bcc_TAS/Test_Magnon_bcc_TAS.md @@ -35,7 +35,7 @@ Parameters in **boldface** are required; the others are optional. ## Links -- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/examples/Tests_samples/Test_Magnon_bcc_TAS/Test_Magnon_bcc_TAS.instr) for `Test_Magnon_bcc_TAS.instr`. +- [Source code](Test_Magnon_bcc_TAS.instr) for `Test_Magnon_bcc_TAS.instr`. - --- diff --git a/mcstas-comps/examples/Tests_samples/Test_PowderN/Test_PowderN.md b/mcstas-comps/examples/Tests_samples/Test_PowderN/Test_PowderN.md index 87a9a85f5..15bae57e2 100644 --- a/mcstas-comps/examples/Tests_samples/Test_PowderN/Test_PowderN.md +++ b/mcstas-comps/examples/Tests_samples/Test_PowderN/Test_PowderN.md @@ -33,7 +33,7 @@ Parameters in **boldface** are required; the others are optional. ## Links -- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/examples/Tests_samples/Test_PowderN/Test_PowderN.instr) for `Test_PowderN.instr`. +- [Source code](Test_PowderN.instr) for `Test_PowderN.instr`. --- diff --git a/mcstas-comps/examples/Tests_samples/Test_PowderN_Res/Test_PowderN_Res.md b/mcstas-comps/examples/Tests_samples/Test_PowderN_Res/Test_PowderN_Res.md index 848a1b009..92655ca2b 100644 --- a/mcstas-comps/examples/Tests_samples/Test_PowderN_Res/Test_PowderN_Res.md +++ b/mcstas-comps/examples/Tests_samples/Test_PowderN_Res/Test_PowderN_Res.md @@ -38,7 +38,7 @@ Parameters in **boldface** are required; the others are optional. ## Links -- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/examples/Tests_samples/Test_PowderN_Res/Test_PowderN_Res.instr) for `Test_PowderN_Res.instr`. +- [Source code](Test_PowderN_Res.instr) for `Test_PowderN_Res.instr`. - A reference/HTML link for more information --- diff --git a/mcstas-comps/examples/Tests_samples/Test_PowderN_concentric/Test_PowderN_concentric.md b/mcstas-comps/examples/Tests_samples/Test_PowderN_concentric/Test_PowderN_concentric.md index fc4f043b7..3abcaf199 100644 --- a/mcstas-comps/examples/Tests_samples/Test_PowderN_concentric/Test_PowderN_concentric.md +++ b/mcstas-comps/examples/Tests_samples/Test_PowderN_concentric/Test_PowderN_concentric.md @@ -29,7 +29,7 @@ Parameters in **boldface** are required; the others are optional. ## Links -- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/examples/Tests_samples/Test_PowderN_concentric/Test_PowderN_concentric.instr) for `Test_PowderN_concentric.instr`. +- [Source code](Test_PowderN_concentric.instr) for `Test_PowderN_concentric.instr`. --- diff --git a/mcstas-comps/examples/Tests_samples/Test_Powders/Test_Powders.md b/mcstas-comps/examples/Tests_samples/Test_Powders/Test_Powders.md index 1795f3e2c..bf48023d4 100644 --- a/mcstas-comps/examples/Tests_samples/Test_Powders/Test_Powders.md +++ b/mcstas-comps/examples/Tests_samples/Test_Powders/Test_Powders.md @@ -33,7 +33,7 @@ Parameters in **boldface** are required; the others are optional. ## Links -- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/examples/Tests_samples/Test_Powders/Test_Powders.instr) for `Test_Powders.instr`. +- [Source code](Test_Powders.instr) for `Test_Powders.instr`. --- diff --git a/mcstas-comps/examples/Tests_samples/Test_SANS/Test_SANS.md b/mcstas-comps/examples/Tests_samples/Test_SANS/Test_SANS.md index 0bec2034c..36e74e8f1 100644 --- a/mcstas-comps/examples/Tests_samples/Test_SANS/Test_SANS.md +++ b/mcstas-comps/examples/Tests_samples/Test_SANS/Test_SANS.md @@ -47,7 +47,7 @@ Parameters in **boldface** are required; the others are optional. ## Links -- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/examples/Tests_samples/Test_SANS/Test_SANS.instr) for `Test_SANS.instr`. +- [Source code](Test_SANS.instr) for `Test_SANS.instr`. --- diff --git a/mcstas-comps/examples/Tests_samples/Test_SX/Test_SX.md b/mcstas-comps/examples/Tests_samples/Test_SX/Test_SX.md index bf2d3203e..3e29fa426 100644 --- a/mcstas-comps/examples/Tests_samples/Test_SX/Test_SX.md +++ b/mcstas-comps/examples/Tests_samples/Test_SX/Test_SX.md @@ -35,7 +35,7 @@ Parameters in **boldface** are required; the others are optional. ## Links -- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/examples/Tests_samples/Test_SX/Test_SX.instr) for `Test_SX.instr`. +- [Source code](Test_SX.instr) for `Test_SX.instr`. --- diff --git a/mcstas-comps/examples/Tests_samples/Test_Single_crystal_inelastic/Test_Single_crystal_inelastic.md b/mcstas-comps/examples/Tests_samples/Test_Single_crystal_inelastic/Test_Single_crystal_inelastic.md index cfb071c9f..097b575be 100644 --- a/mcstas-comps/examples/Tests_samples/Test_Single_crystal_inelastic/Test_Single_crystal_inelastic.md +++ b/mcstas-comps/examples/Tests_samples/Test_Single_crystal_inelastic/Test_Single_crystal_inelastic.md @@ -41,7 +41,7 @@ Parameters in **boldface** are required; the others are optional. ## Links -- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/examples/Tests_samples/Test_Single_crystal_inelastic/Test_Single_crystal_inelastic.instr) for `Test_Single_crystal_inelastic.instr`. +- [Source code](Test_Single_crystal_inelastic.instr) for `Test_Single_crystal_inelastic.instr`. - Duc Le (2015) - duc.le@stfc.ac.uk --- diff --git a/mcstas-comps/examples/Tests_samples/Test_Sqw/Test_Sqw.md b/mcstas-comps/examples/Tests_samples/Test_Sqw/Test_Sqw.md index f50a89cff..593be6166 100644 --- a/mcstas-comps/examples/Tests_samples/Test_Sqw/Test_Sqw.md +++ b/mcstas-comps/examples/Tests_samples/Test_Sqw/Test_Sqw.md @@ -29,7 +29,7 @@ Parameters in **boldface** are required; the others are optional. ## Links -- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/examples/Tests_samples/Test_Sqw/Test_Sqw.instr) for `Test_Sqw.instr`. +- [Source code](Test_Sqw.instr) for `Test_Sqw.instr`. --- diff --git a/mcstas-comps/examples/Tests_samples/Test_Sqw_monitor/Test_Sqw_monitor.md b/mcstas-comps/examples/Tests_samples/Test_Sqw_monitor/Test_Sqw_monitor.md index 8c8459351..b3c1931d9 100644 --- a/mcstas-comps/examples/Tests_samples/Test_Sqw_monitor/Test_Sqw_monitor.md +++ b/mcstas-comps/examples/Tests_samples/Test_Sqw_monitor/Test_Sqw_monitor.md @@ -105,7 +105,7 @@ Parameters in **boldface** are required; the others are optional. ## Links -- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/examples/Tests_samples/Test_Sqw_monitor/Test_Sqw_monitor.instr) for `Test_Sqw_monitor.instr`. +- [Source code](Test_Sqw_monitor.instr) for `Test_Sqw_monitor.instr`. - The Isotropic_Sqw sample - The PowderN sample - The Samples_Isotropic_Sqw example instrument diff --git a/mcstas-comps/examples/Tests_samples/Test_TOFRes_sample/Test_TOFRes_sample.md b/mcstas-comps/examples/Tests_samples/Test_TOFRes_sample/Test_TOFRes_sample.md index d09241991..d259c3840 100644 --- a/mcstas-comps/examples/Tests_samples/Test_TOFRes_sample/Test_TOFRes_sample.md +++ b/mcstas-comps/examples/Tests_samples/Test_TOFRes_sample/Test_TOFRes_sample.md @@ -35,7 +35,7 @@ Parameters in **boldface** are required; the others are optional. ## Links -- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/examples/Tests_samples/Test_TOFRes_sample/Test_TOFRes_sample.instr) for `Test_TOFRes_sample.instr`. +- [Source code](Test_TOFRes_sample.instr) for `Test_TOFRes_sample.instr`. --- diff --git a/mcstas-comps/examples/Tests_samples/Test_TasReso/Test_TasReso.md b/mcstas-comps/examples/Tests_samples/Test_TasReso/Test_TasReso.md index 7bb8c1bcc..97062b22b 100644 --- a/mcstas-comps/examples/Tests_samples/Test_TasReso/Test_TasReso.md +++ b/mcstas-comps/examples/Tests_samples/Test_TasReso/Test_TasReso.md @@ -52,7 +52,7 @@ Parameters in **boldface** are required; the others are optional. ## Links -- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/examples/Tests_samples/Test_TasReso/Test_TasReso.instr) for `Test_TasReso.instr`. +- [Source code](Test_TasReso.instr) for `Test_TasReso.instr`. --- diff --git a/mcstas-comps/examples/Tests_samples/Test_single_magnetic_crystal/Test_single_magnetic_crystal.md b/mcstas-comps/examples/Tests_samples/Test_single_magnetic_crystal/Test_single_magnetic_crystal.md index 87773898d..a99524fe1 100644 --- a/mcstas-comps/examples/Tests_samples/Test_single_magnetic_crystal/Test_single_magnetic_crystal.md +++ b/mcstas-comps/examples/Tests_samples/Test_single_magnetic_crystal/Test_single_magnetic_crystal.md @@ -36,7 +36,7 @@ Parameters in **boldface** are required; the others are optional. ## Links -- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/examples/Tests_samples/Test_single_magnetic_crystal/Test_single_magnetic_crystal.instr) for `Test_single_magnetic_crystal.instr`. +- [Source code](Test_single_magnetic_crystal.instr) for `Test_single_magnetic_crystal.instr`. - A reference/HTML link for more information --- diff --git a/mcstas-comps/examples/Tests_samples/Unittest_SANS_benchmark2/Unittest_SANS_benchmark2.md b/mcstas-comps/examples/Tests_samples/Unittest_SANS_benchmark2/Unittest_SANS_benchmark2.md index c6eed2463..e972b4d67 100644 --- a/mcstas-comps/examples/Tests_samples/Unittest_SANS_benchmark2/Unittest_SANS_benchmark2.md +++ b/mcstas-comps/examples/Tests_samples/Unittest_SANS_benchmark2/Unittest_SANS_benchmark2.md @@ -32,7 +32,7 @@ Parameters in **boldface** are required; the others are optional. ## Links -- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/examples/Tests_samples/Unittest_SANS_benchmark2/Unittest_SANS_benchmark2.instr) for `Unittest_SANS_benchmark2.instr`. +- [Source code](Unittest_SANS_benchmark2.instr) for `Unittest_SANS_benchmark2.instr`. --- diff --git a/mcstas-comps/examples/Tests_sources/Test_Source_custom/test_Source_custom.md b/mcstas-comps/examples/Tests_sources/Test_Source_custom/test_Source_custom.md index 0a1ca1445..5392524dd 100644 --- a/mcstas-comps/examples/Tests_sources/Test_Source_custom/test_Source_custom.md +++ b/mcstas-comps/examples/Tests_sources/Test_Source_custom/test_Source_custom.md @@ -25,7 +25,7 @@ Parameters in **boldface** are required; the others are optional. ## Links -- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/examples/Tests_sources/Test_Source_custom/test_Source_custom.instr) for `test_Source_custom.instr`. +- [Source code](test_Source_custom.instr) for `test_Source_custom.instr`. --- diff --git a/mcstas-comps/examples/Tests_sources/Test_Source_quasi/Test_Source_quasi.md b/mcstas-comps/examples/Tests_sources/Test_Source_quasi/Test_Source_quasi.md index fe50ce65c..3a81b2c00 100644 --- a/mcstas-comps/examples/Tests_sources/Test_Source_quasi/Test_Source_quasi.md +++ b/mcstas-comps/examples/Tests_sources/Test_Source_quasi/Test_Source_quasi.md @@ -25,7 +25,7 @@ Parameters in **boldface** are required; the others are optional. ## Links -- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/examples/Tests_sources/Test_Source_quasi/Test_Source_quasi.instr) for `Test_Source_quasi.instr`. +- [Source code](Test_Source_quasi.instr) for `Test_Source_quasi.instr`. --- diff --git a/mcstas-comps/examples/Tests_union/Conditional_test/Conditional_test.md b/mcstas-comps/examples/Tests_union/Conditional_test/Conditional_test.md index fa69ebbc8..f1fb24572 100644 --- a/mcstas-comps/examples/Tests_union/Conditional_test/Conditional_test.md +++ b/mcstas-comps/examples/Tests_union/Conditional_test/Conditional_test.md @@ -25,7 +25,7 @@ Parameters in **boldface** are required; the others are optional. ## Links -- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/examples/Tests_union/Conditional_test/Conditional_test.instr) for `Conditional_test.instr`. +- [Source code](Conditional_test.instr) for `Conditional_test.instr`. --- diff --git a/mcstas-comps/examples/Tests_union/External_component_test/External_component_test.md b/mcstas-comps/examples/Tests_union/External_component_test/External_component_test.md index 5f83e21e9..3da314401 100644 --- a/mcstas-comps/examples/Tests_union/External_component_test/External_component_test.md +++ b/mcstas-comps/examples/Tests_union/External_component_test/External_component_test.md @@ -25,7 +25,7 @@ Parameters in **boldface** are required; the others are optional. ## Links -- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/examples/Tests_union/External_component_test/External_component_test.instr) for `External_component_test.instr`. +- [Source code](External_component_test.instr) for `External_component_test.instr`. --- diff --git a/mcstas-comps/examples/Tests_union/Geometry_test/Geometry_test.md b/mcstas-comps/examples/Tests_union/Geometry_test/Geometry_test.md index 20ab10638..60192c4a5 100644 --- a/mcstas-comps/examples/Tests_union/Geometry_test/Geometry_test.md +++ b/mcstas-comps/examples/Tests_union/Geometry_test/Geometry_test.md @@ -25,7 +25,7 @@ Parameters in **boldface** are required; the others are optional. ## Links -- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/examples/Tests_union/Geometry_test/Geometry_test.instr) for `Geometry_test.instr`. +- [Source code](Geometry_test.instr) for `Geometry_test.instr`. --- diff --git a/mcstas-comps/examples/Tests_union/Hidden_Cylinder/Hidden_Cylinder.md b/mcstas-comps/examples/Tests_union/Hidden_Cylinder/Hidden_Cylinder.md index fd950d5d8..f11893d0c 100644 --- a/mcstas-comps/examples/Tests_union/Hidden_Cylinder/Hidden_Cylinder.md +++ b/mcstas-comps/examples/Tests_union/Hidden_Cylinder/Hidden_Cylinder.md @@ -34,7 +34,7 @@ Parameters in **boldface** are required; the others are optional. ## Links -- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/examples/Tests_union/Hidden_Cylinder/Hidden_Cylinder.instr) for `Hidden_Cylinder.instr`. +- [Source code](Hidden_Cylinder.instr) for `Hidden_Cylinder.instr`. --- diff --git a/mcstas-comps/examples/Tests_union/IncoherentPhonon_test/IncoherentPhonon_test.md b/mcstas-comps/examples/Tests_union/IncoherentPhonon_test/IncoherentPhonon_test.md index 9f3140f1e..a6e84bd32 100644 --- a/mcstas-comps/examples/Tests_union/IncoherentPhonon_test/IncoherentPhonon_test.md +++ b/mcstas-comps/examples/Tests_union/IncoherentPhonon_test/IncoherentPhonon_test.md @@ -49,7 +49,7 @@ Parameters in **boldface** are required; the others are optional. ## Links -- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/examples/Tests_union/IncoherentPhonon_test/IncoherentPhonon_test.instr) for `IncoherentPhonon_test.instr`. +- [Source code](IncoherentPhonon_test.instr) for `IncoherentPhonon_test.instr`. --- diff --git a/mcstas-comps/examples/Tests_union/Logger_test/Logger_test.md b/mcstas-comps/examples/Tests_union/Logger_test/Logger_test.md index 73018f89a..fdb24189a 100644 --- a/mcstas-comps/examples/Tests_union/Logger_test/Logger_test.md +++ b/mcstas-comps/examples/Tests_union/Logger_test/Logger_test.md @@ -26,7 +26,7 @@ Parameters in **boldface** are required; the others are optional. ## Links -- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/examples/Tests_union/Logger_test/Logger_test.instr) for `Logger_test.instr`. +- [Source code](Logger_test.instr) for `Logger_test.instr`. --- diff --git a/mcstas-comps/examples/Tests_union/Many_meshes/Many_meshes.md b/mcstas-comps/examples/Tests_union/Many_meshes/Many_meshes.md index 9663b65a1..f6482fc43 100644 --- a/mcstas-comps/examples/Tests_union/Many_meshes/Many_meshes.md +++ b/mcstas-comps/examples/Tests_union/Many_meshes/Many_meshes.md @@ -33,7 +33,7 @@ Parameters in **boldface** are required; the others are optional. ## Links -- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/examples/Tests_union/Many_meshes/Many_meshes.instr) for `Many_meshes.instr`. +- [Source code](Many_meshes.instr) for `Many_meshes.instr`. --- diff --git a/mcstas-comps/examples/Tests_union/Test_absorption/Test_absorption.md b/mcstas-comps/examples/Tests_union/Test_absorption/Test_absorption.md index a9913ac8f..411c587c5 100644 --- a/mcstas-comps/examples/Tests_union/Test_absorption/Test_absorption.md +++ b/mcstas-comps/examples/Tests_union/Test_absorption/Test_absorption.md @@ -26,7 +26,7 @@ Parameters in **boldface** are required; the others are optional. ## Links -- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/examples/Tests_union/Test_absorption/Test_absorption.instr) for `Test_absorption.instr`. +- [Source code](Test_absorption.instr) for `Test_absorption.instr`. --- diff --git a/mcstas-comps/examples/Tests_union/Test_absorption_image/Test_absorption_image.md b/mcstas-comps/examples/Tests_union/Test_absorption_image/Test_absorption_image.md index e69b113e1..a37d714f6 100644 --- a/mcstas-comps/examples/Tests_union/Test_absorption_image/Test_absorption_image.md +++ b/mcstas-comps/examples/Tests_union/Test_absorption_image/Test_absorption_image.md @@ -26,7 +26,7 @@ Parameters in **boldface** are required; the others are optional. ## Links -- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/examples/Tests_union/Test_absorption_image/Test_absorption_image.instr) for `Test_absorption_image.instr`. +- [Source code](Test_absorption_image.instr) for `Test_absorption_image.instr`. --- diff --git a/mcstas-comps/examples/Tests_union/Test_box/Test_box.md b/mcstas-comps/examples/Tests_union/Test_box/Test_box.md index 2267069a2..2bf8ae91d 100644 --- a/mcstas-comps/examples/Tests_union/Test_box/Test_box.md +++ b/mcstas-comps/examples/Tests_union/Test_box/Test_box.md @@ -27,7 +27,7 @@ Parameters in **boldface** are required; the others are optional. ## Links -- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/examples/Tests_union/Test_box/Test_box.instr) for `Test_box.instr`. +- [Source code](Test_box.instr) for `Test_box.instr`. --- diff --git a/mcstas-comps/examples/Tests_union/Test_mask/Test_mask.md b/mcstas-comps/examples/Tests_union/Test_mask/Test_mask.md index 0f5ddedb7..1d30c5476 100644 --- a/mcstas-comps/examples/Tests_union/Test_mask/Test_mask.md +++ b/mcstas-comps/examples/Tests_union/Test_mask/Test_mask.md @@ -25,7 +25,7 @@ Parameters in **boldface** are required; the others are optional. ## Links -- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/examples/Tests_union/Test_mask/Test_mask.instr) for `Test_mask.instr`. +- [Source code](Test_mask.instr) for `Test_mask.instr`. --- diff --git a/mcstas-comps/examples/Tests_union/Test_powder/Test_powder.md b/mcstas-comps/examples/Tests_union/Test_powder/Test_powder.md index b63ffd057..7bf269abf 100644 --- a/mcstas-comps/examples/Tests_union/Test_powder/Test_powder.md +++ b/mcstas-comps/examples/Tests_union/Test_powder/Test_powder.md @@ -24,7 +24,7 @@ Parameters in **boldface** are required; the others are optional. ## Links -- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/examples/Tests_union/Test_powder/Test_powder.instr) for `Test_powder.instr`. +- [Source code](Test_powder.instr) for `Test_powder.instr`. --- diff --git a/mcstas-comps/examples/Tests_union/Test_texture/Test_texture.md b/mcstas-comps/examples/Tests_union/Test_texture/Test_texture.md index 82b113053..b71f61e48 100644 --- a/mcstas-comps/examples/Tests_union/Test_texture/Test_texture.md +++ b/mcstas-comps/examples/Tests_union/Test_texture/Test_texture.md @@ -30,7 +30,7 @@ Parameters in **boldface** are required; the others are optional. ## Links -- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/examples/Tests_union/Test_texture/Test_texture.instr) for `Test_texture.instr`. +- [Source code](Test_texture.instr) for `Test_texture.instr`. --- diff --git a/mcstas-comps/examples/Tests_union/Unit_test_abs_logger_1D_space/Unit_test_abs_logger_1D_space.md b/mcstas-comps/examples/Tests_union/Unit_test_abs_logger_1D_space/Unit_test_abs_logger_1D_space.md index a6a763b39..76c6ac155 100644 --- a/mcstas-comps/examples/Tests_union/Unit_test_abs_logger_1D_space/Unit_test_abs_logger_1D_space.md +++ b/mcstas-comps/examples/Tests_union/Unit_test_abs_logger_1D_space/Unit_test_abs_logger_1D_space.md @@ -26,7 +26,7 @@ Parameters in **boldface** are required; the others are optional. ## Links -- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/examples/Tests_union/Unit_test_abs_logger_1D_space/Unit_test_abs_logger_1D_space.instr) for `Unit_test_abs_logger_1D_space.instr`. +- [Source code](Unit_test_abs_logger_1D_space.instr) for `Unit_test_abs_logger_1D_space.instr`. --- diff --git a/mcstas-comps/examples/Tests_union/Unit_test_abs_logger_1D_space_event/Unit_test_abs_logger_1D_space_event.md b/mcstas-comps/examples/Tests_union/Unit_test_abs_logger_1D_space_event/Unit_test_abs_logger_1D_space_event.md index 9dbef506c..686a4c10f 100644 --- a/mcstas-comps/examples/Tests_union/Unit_test_abs_logger_1D_space_event/Unit_test_abs_logger_1D_space_event.md +++ b/mcstas-comps/examples/Tests_union/Unit_test_abs_logger_1D_space_event/Unit_test_abs_logger_1D_space_event.md @@ -24,7 +24,7 @@ Parameters in **boldface** are required; the others are optional. ## Links -- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/examples/Tests_union/Unit_test_abs_logger_1D_space_event/Unit_test_abs_logger_1D_space_event.instr) for `Unit_test_abs_logger_1D_space_event.instr`. +- [Source code](Unit_test_abs_logger_1D_space_event.instr) for `Unit_test_abs_logger_1D_space_event.instr`. --- diff --git a/mcstas-comps/examples/Tests_union/Unit_test_abs_logger_1D_space_tof/Unit_test_abs_logger_1D_space_tof.md b/mcstas-comps/examples/Tests_union/Unit_test_abs_logger_1D_space_tof/Unit_test_abs_logger_1D_space_tof.md index 3616d4219..7bdafead1 100644 --- a/mcstas-comps/examples/Tests_union/Unit_test_abs_logger_1D_space_tof/Unit_test_abs_logger_1D_space_tof.md +++ b/mcstas-comps/examples/Tests_union/Unit_test_abs_logger_1D_space_tof/Unit_test_abs_logger_1D_space_tof.md @@ -25,7 +25,7 @@ Parameters in **boldface** are required; the others are optional. ## Links -- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/examples/Tests_union/Unit_test_abs_logger_1D_space_tof/Unit_test_abs_logger_1D_space_tof.instr) for `Unit_test_abs_logger_1D_space_tof.instr`. +- [Source code](Unit_test_abs_logger_1D_space_tof.instr) for `Unit_test_abs_logger_1D_space_tof.instr`. --- diff --git a/mcstas-comps/examples/Tests_union/Unit_test_abs_logger_1D_space_tof_to_lambda/Unit_test_abs_logger_1D_space_tof_to_lambda.md b/mcstas-comps/examples/Tests_union/Unit_test_abs_logger_1D_space_tof_to_lambda/Unit_test_abs_logger_1D_space_tof_to_lambda.md index d549ce726..f9e9a4edf 100644 --- a/mcstas-comps/examples/Tests_union/Unit_test_abs_logger_1D_space_tof_to_lambda/Unit_test_abs_logger_1D_space_tof_to_lambda.md +++ b/mcstas-comps/examples/Tests_union/Unit_test_abs_logger_1D_space_tof_to_lambda/Unit_test_abs_logger_1D_space_tof_to_lambda.md @@ -32,7 +32,7 @@ Parameters in **boldface** are required; the others are optional. ## Links -- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/examples/Tests_union/Unit_test_abs_logger_1D_space_tof_to_lambda/Unit_test_abs_logger_1D_space_tof_to_lambda.instr) for `Unit_test_abs_logger_1D_space_tof_to_lambda.instr`. +- [Source code](Unit_test_abs_logger_1D_space_tof_to_lambda.instr) for `Unit_test_abs_logger_1D_space_tof_to_lambda.instr`. --- diff --git a/mcstas-comps/examples/Tests_union/Unit_test_abs_logger_2D_space/Unit_test_abs_logger_2D_space.md b/mcstas-comps/examples/Tests_union/Unit_test_abs_logger_2D_space/Unit_test_abs_logger_2D_space.md index 2201016ed..80c637ae3 100644 --- a/mcstas-comps/examples/Tests_union/Unit_test_abs_logger_2D_space/Unit_test_abs_logger_2D_space.md +++ b/mcstas-comps/examples/Tests_union/Unit_test_abs_logger_2D_space/Unit_test_abs_logger_2D_space.md @@ -24,7 +24,7 @@ Parameters in **boldface** are required; the others are optional. ## Links -- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/examples/Tests_union/Unit_test_abs_logger_2D_space/Unit_test_abs_logger_2D_space.instr) for `Unit_test_abs_logger_2D_space.instr`. +- [Source code](Unit_test_abs_logger_2D_space.instr) for `Unit_test_abs_logger_2D_space.instr`. --- diff --git a/mcstas-comps/examples/Tests_union/Unit_test_abs_logger_event/Unit_test_abs_logger_event.md b/mcstas-comps/examples/Tests_union/Unit_test_abs_logger_event/Unit_test_abs_logger_event.md index d01b4cba7..c1cf097cf 100644 --- a/mcstas-comps/examples/Tests_union/Unit_test_abs_logger_event/Unit_test_abs_logger_event.md +++ b/mcstas-comps/examples/Tests_union/Unit_test_abs_logger_event/Unit_test_abs_logger_event.md @@ -24,7 +24,7 @@ Parameters in **boldface** are required; the others are optional. ## Links -- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/examples/Tests_union/Unit_test_abs_logger_event/Unit_test_abs_logger_event.instr) for `Unit_test_abs_logger_event.instr`. +- [Source code](Unit_test_abs_logger_event.instr) for `Unit_test_abs_logger_event.instr`. --- diff --git a/mcstas-comps/examples/Tests_union/Unit_test_abs_logger_nD/Unit_test_abs_logger_nD.md b/mcstas-comps/examples/Tests_union/Unit_test_abs_logger_nD/Unit_test_abs_logger_nD.md index e8ed41ca5..04b2d20af 100644 --- a/mcstas-comps/examples/Tests_union/Unit_test_abs_logger_nD/Unit_test_abs_logger_nD.md +++ b/mcstas-comps/examples/Tests_union/Unit_test_abs_logger_nD/Unit_test_abs_logger_nD.md @@ -26,7 +26,7 @@ Parameters in **boldface** are required; the others are optional. ## Links -- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/examples/Tests_union/Unit_test_abs_logger_nD/Unit_test_abs_logger_nD.instr) for `Unit_test_abs_logger_nD.instr`. +- [Source code](Unit_test_abs_logger_nD.instr) for `Unit_test_abs_logger_nD.instr`. --- diff --git a/mcstas-comps/examples/Tests_union/Unit_test_conditional_PSD/Unit_test_conditional_PSD.md b/mcstas-comps/examples/Tests_union/Unit_test_conditional_PSD/Unit_test_conditional_PSD.md index a2f9fba7b..c8f5117d0 100644 --- a/mcstas-comps/examples/Tests_union/Unit_test_conditional_PSD/Unit_test_conditional_PSD.md +++ b/mcstas-comps/examples/Tests_union/Unit_test_conditional_PSD/Unit_test_conditional_PSD.md @@ -26,7 +26,7 @@ Parameters in **boldface** are required; the others are optional. ## Links -- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/examples/Tests_union/Unit_test_conditional_PSD/Unit_test_conditional_PSD.instr) for `Unit_test_conditional_PSD.instr`. +- [Source code](Unit_test_conditional_PSD.instr) for `Unit_test_conditional_PSD.instr`. --- diff --git a/mcstas-comps/examples/Tests_union/Unit_test_conditional_standard/Unit_test_conditional_standard.md b/mcstas-comps/examples/Tests_union/Unit_test_conditional_standard/Unit_test_conditional_standard.md index 7e4dcfcf2..4dd80ea4c 100644 --- a/mcstas-comps/examples/Tests_union/Unit_test_conditional_standard/Unit_test_conditional_standard.md +++ b/mcstas-comps/examples/Tests_union/Unit_test_conditional_standard/Unit_test_conditional_standard.md @@ -26,7 +26,7 @@ Parameters in **boldface** are required; the others are optional. ## Links -- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/examples/Tests_union/Unit_test_conditional_standard/Unit_test_conditional_standard.instr) for `Unit_test_conditional_standard.instr`. +- [Source code](Unit_test_conditional_standard.instr) for `Unit_test_conditional_standard.instr`. --- diff --git a/mcstas-comps/examples/Tests_union/Unit_test_logger_1D/Unit_test_logger_1D.md b/mcstas-comps/examples/Tests_union/Unit_test_logger_1D/Unit_test_logger_1D.md index 98af57cc1..5aaf9c2ff 100644 --- a/mcstas-comps/examples/Tests_union/Unit_test_logger_1D/Unit_test_logger_1D.md +++ b/mcstas-comps/examples/Tests_union/Unit_test_logger_1D/Unit_test_logger_1D.md @@ -24,7 +24,7 @@ Parameters in **boldface** are required; the others are optional. ## Links -- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/examples/Tests_union/Unit_test_logger_1D/Unit_test_logger_1D.instr) for `Unit_test_logger_1D.instr`. +- [Source code](Unit_test_logger_1D.instr) for `Unit_test_logger_1D.instr`. --- diff --git a/mcstas-comps/examples/Tests_union/Unit_test_logger_2DQ/Unit_test_logger_2DQ.md b/mcstas-comps/examples/Tests_union/Unit_test_logger_2DQ/Unit_test_logger_2DQ.md index 2dcc9cc25..43e8173a7 100644 --- a/mcstas-comps/examples/Tests_union/Unit_test_logger_2DQ/Unit_test_logger_2DQ.md +++ b/mcstas-comps/examples/Tests_union/Unit_test_logger_2DQ/Unit_test_logger_2DQ.md @@ -24,7 +24,7 @@ Parameters in **boldface** are required; the others are optional. ## Links -- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/examples/Tests_union/Unit_test_logger_2DQ/Unit_test_logger_2DQ.instr) for `Unit_test_logger_2DQ.instr`. +- [Source code](Unit_test_logger_2DQ.instr) for `Unit_test_logger_2DQ.instr`. --- diff --git a/mcstas-comps/examples/Tests_union/Unit_test_logger_2D_kf/Unit_test_logger_2D_kf.md b/mcstas-comps/examples/Tests_union/Unit_test_logger_2D_kf/Unit_test_logger_2D_kf.md index d58467c27..9e23fa128 100644 --- a/mcstas-comps/examples/Tests_union/Unit_test_logger_2D_kf/Unit_test_logger_2D_kf.md +++ b/mcstas-comps/examples/Tests_union/Unit_test_logger_2D_kf/Unit_test_logger_2D_kf.md @@ -24,7 +24,7 @@ Parameters in **boldface** are required; the others are optional. ## Links -- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/examples/Tests_union/Unit_test_logger_2D_kf/Unit_test_logger_2D_kf.instr) for `Unit_test_logger_2D_kf.instr`. +- [Source code](Unit_test_logger_2D_kf.instr) for `Unit_test_logger_2D_kf.instr`. --- diff --git a/mcstas-comps/examples/Tests_union/Unit_test_logger_2D_kf_time/Unit_test_logger_2D_kf_time.md b/mcstas-comps/examples/Tests_union/Unit_test_logger_2D_kf_time/Unit_test_logger_2D_kf_time.md index c1aac133d..6b3aa68af 100644 --- a/mcstas-comps/examples/Tests_union/Unit_test_logger_2D_kf_time/Unit_test_logger_2D_kf_time.md +++ b/mcstas-comps/examples/Tests_union/Unit_test_logger_2D_kf_time/Unit_test_logger_2D_kf_time.md @@ -24,7 +24,7 @@ Parameters in **boldface** are required; the others are optional. ## Links -- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/examples/Tests_union/Unit_test_logger_2D_kf_time/Unit_test_logger_2D_kf_time.instr) for `Unit_test_logger_2D_kf_time.instr`. +- [Source code](Unit_test_logger_2D_kf_time.instr) for `Unit_test_logger_2D_kf_time.instr`. --- diff --git a/mcstas-comps/examples/Tests_union/Unit_test_logger_2D_space/Unit_test_logger_2D_space.md b/mcstas-comps/examples/Tests_union/Unit_test_logger_2D_space/Unit_test_logger_2D_space.md index 3615c016e..4728d3abe 100644 --- a/mcstas-comps/examples/Tests_union/Unit_test_logger_2D_space/Unit_test_logger_2D_space.md +++ b/mcstas-comps/examples/Tests_union/Unit_test_logger_2D_space/Unit_test_logger_2D_space.md @@ -26,7 +26,7 @@ Parameters in **boldface** are required; the others are optional. ## Links -- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/examples/Tests_union/Unit_test_logger_2D_space/Unit_test_logger_2D_space.instr) for `Unit_test_logger_2D_space.instr`. +- [Source code](Unit_test_logger_2D_space.instr) for `Unit_test_logger_2D_space.instr`. --- diff --git a/mcstas-comps/examples/Tests_union/Unit_test_logger_2D_space_time/Unit_test_logger_2D_space_time.md b/mcstas-comps/examples/Tests_union/Unit_test_logger_2D_space_time/Unit_test_logger_2D_space_time.md index 13a572b6d..753726802 100644 --- a/mcstas-comps/examples/Tests_union/Unit_test_logger_2D_space_time/Unit_test_logger_2D_space_time.md +++ b/mcstas-comps/examples/Tests_union/Unit_test_logger_2D_space_time/Unit_test_logger_2D_space_time.md @@ -24,7 +24,7 @@ Parameters in **boldface** are required; the others are optional. ## Links -- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/examples/Tests_union/Unit_test_logger_2D_space_time/Unit_test_logger_2D_space_time.instr) for `Unit_test_logger_2D_space_time.instr`. +- [Source code](Unit_test_logger_2D_space_time.instr) for `Unit_test_logger_2D_space_time.instr`. --- diff --git a/mcstas-comps/examples/Tests_union/Unit_test_logger_3D_space/Unit_test_logger_3D_space.md b/mcstas-comps/examples/Tests_union/Unit_test_logger_3D_space/Unit_test_logger_3D_space.md index ae9de6909..8ccabc6e8 100644 --- a/mcstas-comps/examples/Tests_union/Unit_test_logger_3D_space/Unit_test_logger_3D_space.md +++ b/mcstas-comps/examples/Tests_union/Unit_test_logger_3D_space/Unit_test_logger_3D_space.md @@ -24,7 +24,7 @@ Parameters in **boldface** are required; the others are optional. ## Links -- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/examples/Tests_union/Unit_test_logger_3D_space/Unit_test_logger_3D_space.instr) for `Unit_test_logger_3D_space.instr`. +- [Source code](Unit_test_logger_3D_space.instr) for `Unit_test_logger_3D_space.instr`. --- diff --git a/mcstas-comps/examples/Tests_union/Unit_test_loggers_base/Unit_test_loggers_base.md b/mcstas-comps/examples/Tests_union/Unit_test_loggers_base/Unit_test_loggers_base.md index 94b3124b0..090e57240 100644 --- a/mcstas-comps/examples/Tests_union/Unit_test_loggers_base/Unit_test_loggers_base.md +++ b/mcstas-comps/examples/Tests_union/Unit_test_loggers_base/Unit_test_loggers_base.md @@ -24,7 +24,7 @@ Parameters in **boldface** are required; the others are optional. ## Links -- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/examples/Tests_union/Unit_test_loggers_base/Unit_test_loggers_base.instr) for `Unit_test_loggers_base.instr`. +- [Source code](Unit_test_loggers_base.instr) for `Unit_test_loggers_base.instr`. --- diff --git a/mcstas-comps/examples/Tools/Histogrammer/Histogrammer.md b/mcstas-comps/examples/Tools/Histogrammer/Histogrammer.md index 8177673d4..1484e5c64 100644 --- a/mcstas-comps/examples/Tools/Histogrammer/Histogrammer.md +++ b/mcstas-comps/examples/Tools/Histogrammer/Histogrammer.md @@ -45,7 +45,7 @@ Parameters in **boldface** are required; the others are optional. ## Links -- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/examples/Tools/Histogrammer/Histogrammer.instr) for `Histogrammer.instr`. +- [Source code](Histogrammer.instr) for `Histogrammer.instr`. - Virtual_input component (McStas event file) - Vitess_input component (Vitess event file) - Virtual_mcnp_input component (MCNP PTRAC event file) diff --git a/mcstas-comps/examples/Tools/MCPL2Mantid_flat/MCPL2Mantid_flat.md b/mcstas-comps/examples/Tools/MCPL2Mantid_flat/MCPL2Mantid_flat.md index 9b5279e5a..6d2d56a8b 100644 --- a/mcstas-comps/examples/Tools/MCPL2Mantid_flat/MCPL2Mantid_flat.md +++ b/mcstas-comps/examples/Tools/MCPL2Mantid_flat/MCPL2Mantid_flat.md @@ -49,7 +49,7 @@ Parameters in **boldface** are required; the others are optional. ## Links -- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/examples/Tools/MCPL2Mantid_flat/MCPL2Mantid_flat.instr) for `MCPL2Mantid_flat.instr`. +- [Source code](MCPL2Mantid_flat.instr) for `MCPL2Mantid_flat.instr`. - - MCPL website at https://mctools.github.io/mcpl/ diff --git a/mcstas-comps/examples/Tools/MCPL2hist/MCPL2hist.md b/mcstas-comps/examples/Tools/MCPL2hist/MCPL2hist.md index 9a3b28444..a86ce4faa 100644 --- a/mcstas-comps/examples/Tools/MCPL2hist/MCPL2hist.md +++ b/mcstas-comps/examples/Tools/MCPL2hist/MCPL2hist.md @@ -35,7 +35,7 @@ Parameters in **boldface** are required; the others are optional. ## Links -- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/examples/Tools/MCPL2hist/MCPL2hist.instr) for `MCPL2hist.instr`. +- [Source code](MCPL2hist.instr) for `MCPL2hist.instr`. - - MCPL website at https://mctools.github.io/mcpl/ diff --git a/mcstas-comps/examples/Tools/MCPL_filter_energy/MCPL_filter_energy.md b/mcstas-comps/examples/Tools/MCPL_filter_energy/MCPL_filter_energy.md index d1366b6f3..f9bc6b5a0 100644 --- a/mcstas-comps/examples/Tools/MCPL_filter_energy/MCPL_filter_energy.md +++ b/mcstas-comps/examples/Tools/MCPL_filter_energy/MCPL_filter_energy.md @@ -30,7 +30,7 @@ Parameters in **boldface** are required; the others are optional. ## Links -- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/examples/Tools/MCPL_filter_energy/MCPL_filter_energy.instr) for `MCPL_filter_energy.instr`. +- [Source code](MCPL_filter_energy.instr) for `MCPL_filter_energy.instr`. - - MCPL website at https://mctools.github.io/mcpl/ diff --git a/mcstas-comps/examples/Tools/MCPL_filter_radius/MCPL_filter_radius.md b/mcstas-comps/examples/Tools/MCPL_filter_radius/MCPL_filter_radius.md index 48e08e54b..c929f3d9a 100644 --- a/mcstas-comps/examples/Tools/MCPL_filter_radius/MCPL_filter_radius.md +++ b/mcstas-comps/examples/Tools/MCPL_filter_radius/MCPL_filter_radius.md @@ -27,7 +27,7 @@ Parameters in **boldface** are required; the others are optional. ## Links -- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/examples/Tools/MCPL_filter_radius/MCPL_filter_radius.instr) for `MCPL_filter_radius.instr`. +- [Source code](MCPL_filter_radius.instr) for `MCPL_filter_radius.instr`. - - MCPL website at https://mctools.github.io/mcpl/ diff --git a/mcstas-comps/examples/Tools/MCPL_filter_wavelength/MCPL_filter_wavelength.md b/mcstas-comps/examples/Tools/MCPL_filter_wavelength/MCPL_filter_wavelength.md index 93b1403af..dc3fd73ca 100644 --- a/mcstas-comps/examples/Tools/MCPL_filter_wavelength/MCPL_filter_wavelength.md +++ b/mcstas-comps/examples/Tools/MCPL_filter_wavelength/MCPL_filter_wavelength.md @@ -30,7 +30,7 @@ Parameters in **boldface** are required; the others are optional. ## Links -- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/examples/Tools/MCPL_filter_wavelength/MCPL_filter_wavelength.instr) for `MCPL_filter_wavelength.instr`. +- [Source code](MCPL_filter_wavelength.instr) for `MCPL_filter_wavelength.instr`. - - MCPL website at https://mctools.github.io/mcpl/ diff --git a/mcstas-comps/examples/Tools/vinput2mcpl/vinput2mcpl.md b/mcstas-comps/examples/Tools/vinput2mcpl/vinput2mcpl.md index ba358571f..89d381a78 100644 --- a/mcstas-comps/examples/Tools/vinput2mcpl/vinput2mcpl.md +++ b/mcstas-comps/examples/Tools/vinput2mcpl/vinput2mcpl.md @@ -28,7 +28,7 @@ Parameters in **boldface** are required; the others are optional. ## Links -- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/examples/Tools/vinput2mcpl/vinput2mcpl.instr) for `vinput2mcpl.instr`. +- [Source code](vinput2mcpl.instr) for `vinput2mcpl.instr`. - --- diff --git a/mcstas-comps/examples/Union_demos/Bispectral/Bispectral.md b/mcstas-comps/examples/Union_demos/Bispectral/Bispectral.md index 00f969d3b..6b2c54aa2 100644 --- a/mcstas-comps/examples/Union_demos/Bispectral/Bispectral.md +++ b/mcstas-comps/examples/Union_demos/Bispectral/Bispectral.md @@ -29,7 +29,7 @@ Parameters in **boldface** are required; the others are optional. ## Links -- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/examples/Union_demos/Bispectral/Bispectral.instr) for `Bispectral.instr`. +- [Source code](Bispectral.instr) for `Bispectral.instr`. - A reference/HTML link for more information --- diff --git a/mcstas-comps/examples/Union_demos/Demonstration/Demonstration.md b/mcstas-comps/examples/Union_demos/Demonstration/Demonstration.md index d6206b660..ed22cf9f5 100644 --- a/mcstas-comps/examples/Union_demos/Demonstration/Demonstration.md +++ b/mcstas-comps/examples/Union_demos/Demonstration/Demonstration.md @@ -32,7 +32,7 @@ Parameters in **boldface** are required; the others are optional. ## Links -- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/examples/Union_demos/Demonstration/Demonstration.instr) for `Demonstration.instr`. +- [Source code](Demonstration.instr) for `Demonstration.instr`. --- diff --git a/mcstas-comps/examples/Union_demos/External_component/External_component.md b/mcstas-comps/examples/Union_demos/External_component/External_component.md index 99290b182..99b074f65 100644 --- a/mcstas-comps/examples/Union_demos/External_component/External_component.md +++ b/mcstas-comps/examples/Union_demos/External_component/External_component.md @@ -28,7 +28,7 @@ Parameters in **boldface** are required; the others are optional. ## Links -- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/examples/Union_demos/External_component/External_component.instr) for `External_component.instr`. +- [Source code](External_component.instr) for `External_component.instr`. --- diff --git a/mcstas-comps/examples/Union_demos/Laue_camera/Laue_camera.md b/mcstas-comps/examples/Union_demos/Laue_camera/Laue_camera.md index 2454db626..4bd7607bc 100644 --- a/mcstas-comps/examples/Union_demos/Laue_camera/Laue_camera.md +++ b/mcstas-comps/examples/Union_demos/Laue_camera/Laue_camera.md @@ -38,7 +38,7 @@ Parameters in **boldface** are required; the others are optional. ## Links -- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/examples/Union_demos/Laue_camera/Laue_camera.instr) for `Laue_camera.instr`. +- [Source code](Laue_camera.instr) for `Laue_camera.instr`. --- diff --git a/mcstas-comps/examples/Union_demos/Manual_example/Manual_example.md b/mcstas-comps/examples/Union_demos/Manual_example/Manual_example.md index ab91833a9..8856c9165 100644 --- a/mcstas-comps/examples/Union_demos/Manual_example/Manual_example.md +++ b/mcstas-comps/examples/Union_demos/Manual_example/Manual_example.md @@ -26,7 +26,7 @@ Parameters in **boldface** are required; the others are optional. ## Links -- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/examples/Union_demos/Manual_example/Manual_example.instr) for `Manual_example.instr`. +- [Source code](Manual_example.instr) for `Manual_example.instr`. --- diff --git a/mcstas-comps/examples/Union_demos/Sample_picture_replica/Sample_picture_replica.md b/mcstas-comps/examples/Union_demos/Sample_picture_replica/Sample_picture_replica.md index e61fd95ca..06f3bd12b 100644 --- a/mcstas-comps/examples/Union_demos/Sample_picture_replica/Sample_picture_replica.md +++ b/mcstas-comps/examples/Union_demos/Sample_picture_replica/Sample_picture_replica.md @@ -26,7 +26,7 @@ Parameters in **boldface** are required; the others are optional. ## Links -- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/examples/Union_demos/Sample_picture_replica/Sample_picture_replica.instr) for `Sample_picture_replica.instr`. +- [Source code](Sample_picture_replica.instr) for `Sample_picture_replica.instr`. --- diff --git a/mcstas-comps/examples/Union_demos/Tagging_demo/Tagging_demo.md b/mcstas-comps/examples/Union_demos/Tagging_demo/Tagging_demo.md index fb80e7a5c..e1fdd329d 100644 --- a/mcstas-comps/examples/Union_demos/Tagging_demo/Tagging_demo.md +++ b/mcstas-comps/examples/Union_demos/Tagging_demo/Tagging_demo.md @@ -37,7 +37,7 @@ Parameters in **boldface** are required; the others are optional. ## Links -- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/examples/Union_demos/Tagging_demo/Tagging_demo.instr) for `Tagging_demo.instr`. +- [Source code](Tagging_demo.instr) for `Tagging_demo.instr`. --- diff --git a/mcstas-comps/examples/Union_demos/Time_of_flight/Time_of_flight.md b/mcstas-comps/examples/Union_demos/Time_of_flight/Time_of_flight.md index 9a39a8519..13019920d 100644 --- a/mcstas-comps/examples/Union_demos/Time_of_flight/Time_of_flight.md +++ b/mcstas-comps/examples/Union_demos/Time_of_flight/Time_of_flight.md @@ -27,7 +27,7 @@ Parameters in **boldface** are required; the others are optional. ## Links -- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/examples/Union_demos/Time_of_flight/Time_of_flight.instr) for `Time_of_flight.instr`. +- [Source code](Time_of_flight.instr) for `Time_of_flight.instr`. --- diff --git a/mcstas-comps/examples/Union_sample_environments/SE_usage_example/SE_usage_example.md b/mcstas-comps/examples/Union_sample_environments/SE_usage_example/SE_usage_example.md index c4c1fdc75..93320f917 100644 --- a/mcstas-comps/examples/Union_sample_environments/SE_usage_example/SE_usage_example.md +++ b/mcstas-comps/examples/Union_sample_environments/SE_usage_example/SE_usage_example.md @@ -27,7 +27,7 @@ Parameters in **boldface** are required; the others are optional. ## Links -- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/examples/Union_sample_environments/SE_usage_example/SE_usage_example.instr) for `SE_usage_example.instr`. +- [Source code](SE_usage_example.instr) for `SE_usage_example.instr`. --- diff --git a/mcstas-comps/examples/Union_sample_environments/cryostat_example/cryostat_example.md b/mcstas-comps/examples/Union_sample_environments/cryostat_example/cryostat_example.md index 45bf56e4c..4867101b4 100644 --- a/mcstas-comps/examples/Union_sample_environments/cryostat_example/cryostat_example.md +++ b/mcstas-comps/examples/Union_sample_environments/cryostat_example/cryostat_example.md @@ -33,7 +33,7 @@ Parameters in **boldface** are required; the others are optional. ## Links -- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/examples/Union_sample_environments/cryostat_example/cryostat_example.instr) for `cryostat_example.instr`. +- [Source code](cryostat_example.instr) for `cryostat_example.instr`. --- diff --git a/mcstas-comps/examples/Union_validation/Incoherent_validation/Incoherent_validation.md b/mcstas-comps/examples/Union_validation/Incoherent_validation/Incoherent_validation.md index 90d165797..ca6eb1e04 100644 --- a/mcstas-comps/examples/Union_validation/Incoherent_validation/Incoherent_validation.md +++ b/mcstas-comps/examples/Union_validation/Incoherent_validation/Incoherent_validation.md @@ -32,7 +32,7 @@ Parameters in **boldface** are required; the others are optional. ## Links -- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/examples/Union_validation/Incoherent_validation/Incoherent_validation.instr) for `Incoherent_validation.instr`. +- [Source code](Incoherent_validation.instr) for `Incoherent_validation.instr`. --- diff --git a/mcstas-comps/examples/Union_validation/Mirror_validation/Mirror_validation.md b/mcstas-comps/examples/Union_validation/Mirror_validation/Mirror_validation.md index 0ba274983..56e277f97 100644 --- a/mcstas-comps/examples/Union_validation/Mirror_validation/Mirror_validation.md +++ b/mcstas-comps/examples/Union_validation/Mirror_validation/Mirror_validation.md @@ -41,7 +41,7 @@ Parameters in **boldface** are required; the others are optional. ## Links -- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/examples/Union_validation/Mirror_validation/Mirror_validation.instr) for `Mirror_validation.instr`. +- [Source code](Mirror_validation.instr) for `Mirror_validation.instr`. - A reference/HTML link for more information --- diff --git a/mcstas-comps/examples/Union_validation/Powder_validation/Powder_validation.md b/mcstas-comps/examples/Union_validation/Powder_validation/Powder_validation.md index 20cd636d5..89f99cd44 100644 --- a/mcstas-comps/examples/Union_validation/Powder_validation/Powder_validation.md +++ b/mcstas-comps/examples/Union_validation/Powder_validation/Powder_validation.md @@ -38,7 +38,7 @@ Parameters in **boldface** are required; the others are optional. ## Links -- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/examples/Union_validation/Powder_validation/Powder_validation.instr) for `Powder_validation.instr`. +- [Source code](Powder_validation.instr) for `Powder_validation.instr`. --- diff --git a/mcstas-comps/examples/Union_validation/Single_crystal_validation/Single_crystal_validation.md b/mcstas-comps/examples/Union_validation/Single_crystal_validation/Single_crystal_validation.md index 66f6ee0e6..6a8575be2 100644 --- a/mcstas-comps/examples/Union_validation/Single_crystal_validation/Single_crystal_validation.md +++ b/mcstas-comps/examples/Union_validation/Single_crystal_validation/Single_crystal_validation.md @@ -46,7 +46,7 @@ Parameters in **boldface** are required; the others are optional. ## Links -- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/examples/Union_validation/Single_crystal_validation/Single_crystal_validation.instr) for `Single_crystal_validation.instr`. +- [Source code](Single_crystal_validation.instr) for `Single_crystal_validation.instr`. --- diff --git a/mcstas-comps/examples/elearning/Radiography_absorbing_edge/Radiography_absorbing_edge.md b/mcstas-comps/examples/elearning/Radiography_absorbing_edge/Radiography_absorbing_edge.md index 9f48f3a36..779bea2ba 100644 --- a/mcstas-comps/examples/elearning/Radiography_absorbing_edge/Radiography_absorbing_edge.md +++ b/mcstas-comps/examples/elearning/Radiography_absorbing_edge/Radiography_absorbing_edge.md @@ -34,7 +34,7 @@ Parameters in **boldface** are required; the others are optional. ## Links -- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/examples/elearning/Radiography_absorbing_edge/Radiography_absorbing_edge.instr) for `Radiography_absorbing_edge.instr`. +- [Source code](Radiography_absorbing_edge.instr) for `Radiography_absorbing_edge.instr`. - http://vnt.nmi3.org/mcstas-web --- diff --git a/mcstas-comps/examples/elearning/Reflectometer/Reflectometer.md b/mcstas-comps/examples/elearning/Reflectometer/Reflectometer.md index 376779374..c6ab79333 100644 --- a/mcstas-comps/examples/elearning/Reflectometer/Reflectometer.md +++ b/mcstas-comps/examples/elearning/Reflectometer/Reflectometer.md @@ -48,7 +48,7 @@ Parameters in **boldface** are required; the others are optional. ## Links -- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/examples/elearning/Reflectometer/Reflectometer.instr) for `Reflectometer.instr`. +- [Source code](Reflectometer.instr) for `Reflectometer.instr`. --- diff --git a/mcstas-comps/examples/elearning/SANSsimple/SANSsimple.md b/mcstas-comps/examples/elearning/SANSsimple/SANSsimple.md index a05b10b5f..98b30dd55 100644 --- a/mcstas-comps/examples/elearning/SANSsimple/SANSsimple.md +++ b/mcstas-comps/examples/elearning/SANSsimple/SANSsimple.md @@ -40,7 +40,7 @@ Parameters in **boldface** are required; the others are optional. ## Links -- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/examples/elearning/SANSsimple/SANSsimple.instr) for `SANSsimple.instr`. +- [Source code](SANSsimple.instr) for `SANSsimple.instr`. - A reference/HTML link for more information --- diff --git a/mcstas-comps/examples/elearning/SANSsimpleSpheres/SANSsimpleSpheres.md b/mcstas-comps/examples/elearning/SANSsimpleSpheres/SANSsimpleSpheres.md index f0693b3b6..0ac0140cf 100644 --- a/mcstas-comps/examples/elearning/SANSsimpleSpheres/SANSsimpleSpheres.md +++ b/mcstas-comps/examples/elearning/SANSsimpleSpheres/SANSsimpleSpheres.md @@ -38,7 +38,7 @@ Parameters in **boldface** are required; the others are optional. ## Links -- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/examples/elearning/SANSsimpleSpheres/SANSsimpleSpheres.instr) for `SANSsimpleSpheres.instr`. +- [Source code](SANSsimpleSpheres.instr) for `SANSsimpleSpheres.instr`. - https://sim.e-neutrons.org/instrument/intro-ns/SANSsimple --- diff --git a/mcstas-comps/examples/elearning/SimplePowderDiffractometer/SimplePowderDiffractometer.md b/mcstas-comps/examples/elearning/SimplePowderDiffractometer/SimplePowderDiffractometer.md index 54407998c..00d70deb4 100644 --- a/mcstas-comps/examples/elearning/SimplePowderDiffractometer/SimplePowderDiffractometer.md +++ b/mcstas-comps/examples/elearning/SimplePowderDiffractometer/SimplePowderDiffractometer.md @@ -33,7 +33,7 @@ Parameters in **boldface** are required; the others are optional. ## Links -- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/examples/elearning/SimplePowderDiffractometer/SimplePowderDiffractometer.instr) for `SimplePowderDiffractometer.instr`. +- [Source code](SimplePowderDiffractometer.instr) for `SimplePowderDiffractometer.instr`. - http://vnt.nmi3.org/mcstas-web --- diff --git a/mcstas-comps/misc/Annulus.md b/mcstas-comps/misc/Annulus.md index 28b15304d..8870bba19 100644 --- a/mcstas-comps/misc/Annulus.md +++ b/mcstas-comps/misc/Annulus.md @@ -33,7 +33,7 @@ Parameters in **boldface** are required; the others are optional. ## Links -- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/misc/Annulus.comp) for `Annulus.comp`. +- [Source code](Annulus.comp) for `Annulus.comp`. - mcdoc page of Shape
    component --- diff --git a/mcstas-comps/misc/Circle.md b/mcstas-comps/misc/Circle.md index 1962c15e9..7b2d5f821 100644 --- a/mcstas-comps/misc/Circle.md +++ b/mcstas-comps/misc/Circle.md @@ -31,7 +31,7 @@ Parameters in **boldface** are required; the others are optional. ## Links -- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/misc/Circle.comp) for `Circle.comp`. +- [Source code](Circle.comp) for `Circle.comp`. - mcdoc page of Shape
    component --- diff --git a/mcstas-comps/misc/Cone.md b/mcstas-comps/misc/Cone.md index 6d1cd759f..f5ba7b2e4 100644 --- a/mcstas-comps/misc/Cone.md +++ b/mcstas-comps/misc/Cone.md @@ -31,7 +31,7 @@ Parameters in **boldface** are required; the others are optional. ## Links -- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/misc/Cone.comp) for `Cone.comp`. +- [Source code](Cone.comp) for `Cone.comp`. - mcdoc page of Shape
    component --- diff --git a/mcstas-comps/misc/Disc.md b/mcstas-comps/misc/Disc.md index a85f16346..b86f2c430 100644 --- a/mcstas-comps/misc/Disc.md +++ b/mcstas-comps/misc/Disc.md @@ -34,7 +34,7 @@ Parameters in **boldface** are required; the others are optional. ## Links -- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/misc/Disc.comp) for `Disc.comp`. +- [Source code](Disc.comp) for `Disc.comp`. - mcdoc page of Shape
    component --- diff --git a/mcstas-comps/misc/File.md b/mcstas-comps/misc/File.md index c2e940336..1340e5118 100644 --- a/mcstas-comps/misc/File.md +++ b/mcstas-comps/misc/File.md @@ -29,7 +29,7 @@ Parameters in **boldface** are required; the others are optional. ## Links -- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/misc/File.comp) for `File.comp`. +- [Source code](File.comp) for `File.comp`. --- diff --git a/mcstas-comps/misc/Legacy_circle.md b/mcstas-comps/misc/Legacy_circle.md index 6df82931f..8e46348c7 100644 --- a/mcstas-comps/misc/Legacy_circle.md +++ b/mcstas-comps/misc/Legacy_circle.md @@ -47,7 +47,7 @@ Parameters in **boldface** are required; the others are optional. ## Links -- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/misc/Legacy_circle.comp) for `Legacy_circle.comp`. +- [Source code](Legacy_circle.comp) for `Legacy_circle.comp`. - Geomview and Object File Format (OFF) - Powercrust/qhull diff --git a/mcstas-comps/misc/MCPL_input.md b/mcstas-comps/misc/MCPL_input.md index ad879c2e9..702386676 100644 --- a/mcstas-comps/misc/MCPL_input.md +++ b/mcstas-comps/misc/MCPL_input.md @@ -42,7 +42,7 @@ Parameters in **boldface** are required; the others are optional. ## Links -- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/misc/MCPL_input.comp) for `MCPL_input.comp`. +- [Source code](MCPL_input.comp) for `MCPL_input.comp`. --- diff --git a/mcstas-comps/misc/MCPL_input_once.md b/mcstas-comps/misc/MCPL_input_once.md index 87eb5f464..3f58bf218 100644 --- a/mcstas-comps/misc/MCPL_input_once.md +++ b/mcstas-comps/misc/MCPL_input_once.md @@ -42,7 +42,7 @@ Parameters in **boldface** are required; the others are optional. ## Links -- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/misc/MCPL_input_once.comp) for `MCPL_input_once.comp`. +- [Source code](MCPL_input_once.comp) for `MCPL_input_once.comp`. --- diff --git a/mcstas-comps/misc/MCPL_output.md b/mcstas-comps/misc/MCPL_output.md index 70ed4eb2b..d8ef1f522 100644 --- a/mcstas-comps/misc/MCPL_output.md +++ b/mcstas-comps/misc/MCPL_output.md @@ -51,7 +51,7 @@ Parameters in **boldface** are required; the others are optional. ## Links -- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/misc/MCPL_output.comp) for `MCPL_output.comp`. +- [Source code](MCPL_output.comp) for `MCPL_output.comp`. --- diff --git a/mcstas-comps/misc/MCPL_output_noacc.md b/mcstas-comps/misc/MCPL_output_noacc.md index df696c9cb..0cd102e46 100644 --- a/mcstas-comps/misc/MCPL_output_noacc.md +++ b/mcstas-comps/misc/MCPL_output_noacc.md @@ -51,7 +51,7 @@ Parameters in **boldface** are required; the others are optional. ## Links -- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/misc/MCPL_output_noacc.comp) for `MCPL_output_noacc.comp`. +- [Source code](MCPL_output_noacc.comp) for `MCPL_output_noacc.comp`. --- diff --git a/mcstas-comps/misc/Progress_bar.md b/mcstas-comps/misc/Progress_bar.md index ec830f58a..01b42d325 100644 --- a/mcstas-comps/misc/Progress_bar.md +++ b/mcstas-comps/misc/Progress_bar.md @@ -35,7 +35,7 @@ Parameters in **boldface** are required; the others are optional. ## Links -- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/misc/Progress_bar.comp) for `Progress_bar.comp`. +- [Source code](Progress_bar.comp) for `Progress_bar.comp`. --- diff --git a/mcstas-comps/misc/Shape.md b/mcstas-comps/misc/Shape.md index fde1c4c2c..3c16ee70e 100644 --- a/mcstas-comps/misc/Shape.md +++ b/mcstas-comps/misc/Shape.md @@ -56,7 +56,7 @@ Parameters in **boldface** are required; the others are optional. ## Links -- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/misc/Shape.comp) for `Shape.comp`. +- [Source code](Shape.comp) for `Shape.comp`. - Geomview and Object File Format (OFF) - Powercrust/qhull diff --git a/mcstas-comps/misc/Shape_simple.md b/mcstas-comps/misc/Shape_simple.md index c4663be0a..4257b4fe7 100644 --- a/mcstas-comps/misc/Shape_simple.md +++ b/mcstas-comps/misc/Shape_simple.md @@ -53,7 +53,7 @@ Parameters in **boldface** are required; the others are optional. ## Links -- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/misc/Shape_simple.comp) for `Shape_simple.comp`. +- [Source code](Shape_simple.comp) for `Shape_simple.comp`. - Geomview and Object File Format (OFF) - Powercrust/qhull diff --git a/mcstas-comps/monitors/Brilliance_monitor.md b/mcstas-comps/monitors/Brilliance_monitor.md index c9230f29b..02438b5ef 100644 --- a/mcstas-comps/monitors/Brilliance_monitor.md +++ b/mcstas-comps/monitors/Brilliance_monitor.md @@ -62,7 +62,7 @@ Parameters in **boldface** are required; the others are optional. ## Links -- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/monitors/Brilliance_monitor.comp) for `Brilliance_monitor.comp`. +- [Source code](Brilliance_monitor.comp) for `Brilliance_monitor.comp`. --- diff --git a/mcstas-comps/monitors/Cyl_monitor.md b/mcstas-comps/monitors/Cyl_monitor.md index 91332ea35..e1f270f9e 100644 --- a/mcstas-comps/monitors/Cyl_monitor.md +++ b/mcstas-comps/monitors/Cyl_monitor.md @@ -36,7 +36,7 @@ Parameters in **boldface** are required; the others are optional. ## Links -- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/monitors/Cyl_monitor.comp) for `Cyl_monitor.comp`. +- [Source code](Cyl_monitor.comp) for `Cyl_monitor.comp`. --- diff --git a/mcstas-comps/monitors/Cyl_monitor_PSD.md b/mcstas-comps/monitors/Cyl_monitor_PSD.md index 2ed861614..b1bf439f5 100644 --- a/mcstas-comps/monitors/Cyl_monitor_PSD.md +++ b/mcstas-comps/monitors/Cyl_monitor_PSD.md @@ -37,7 +37,7 @@ Parameters in **boldface** are required; the others are optional. ## Links -- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/monitors/Cyl_monitor_PSD.comp) for `Cyl_monitor_PSD.comp`. +- [Source code](Cyl_monitor_PSD.comp) for `Cyl_monitor_PSD.comp`. --- diff --git a/mcstas-comps/monitors/Cyl_monitor_TOF.md b/mcstas-comps/monitors/Cyl_monitor_TOF.md index cd41544f0..33e32a924 100644 --- a/mcstas-comps/monitors/Cyl_monitor_TOF.md +++ b/mcstas-comps/monitors/Cyl_monitor_TOF.md @@ -39,7 +39,7 @@ Parameters in **boldface** are required; the others are optional. ## Links -- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/monitors/Cyl_monitor_TOF.comp) for `Cyl_monitor_TOF.comp`. +- [Source code](Cyl_monitor_TOF.comp) for `Cyl_monitor_TOF.comp`. --- diff --git a/mcstas-comps/monitors/Div1D_monitor.md b/mcstas-comps/monitors/Div1D_monitor.md index bcc2790a9..22bb63b8a 100644 --- a/mcstas-comps/monitors/Div1D_monitor.md +++ b/mcstas-comps/monitors/Div1D_monitor.md @@ -39,7 +39,7 @@ Parameters in **boldface** are required; the others are optional. ## Links -- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/monitors/Div1D_monitor.comp) for `Div1D_monitor.comp`. +- [Source code](Div1D_monitor.comp) for `Div1D_monitor.comp`. --- diff --git a/mcstas-comps/monitors/DivLambda_monitor.md b/mcstas-comps/monitors/DivLambda_monitor.md index 5df4d4176..79a57e884 100644 --- a/mcstas-comps/monitors/DivLambda_monitor.md +++ b/mcstas-comps/monitors/DivLambda_monitor.md @@ -46,7 +46,7 @@ Parameters in **boldface** are required; the others are optional. ## Links -- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/monitors/DivLambda_monitor.comp) for `DivLambda_monitor.comp`. +- [Source code](DivLambda_monitor.comp) for `DivLambda_monitor.comp`. --- diff --git a/mcstas-comps/monitors/DivPos_monitor.md b/mcstas-comps/monitors/DivPos_monitor.md index 0a03127f3..6fbc4bde3 100644 --- a/mcstas-comps/monitors/DivPos_monitor.md +++ b/mcstas-comps/monitors/DivPos_monitor.md @@ -46,7 +46,7 @@ Parameters in **boldface** are required; the others are optional. ## Links -- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/monitors/DivPos_monitor.comp) for `DivPos_monitor.comp`. +- [Source code](DivPos_monitor.comp) for `DivPos_monitor.comp`. --- diff --git a/mcstas-comps/monitors/Divergence_monitor.md b/mcstas-comps/monitors/Divergence_monitor.md index 3edcac32f..0f40cf32c 100644 --- a/mcstas-comps/monitors/Divergence_monitor.md +++ b/mcstas-comps/monitors/Divergence_monitor.md @@ -45,7 +45,7 @@ Parameters in **boldface** are required; the others are optional. ## Links -- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/monitors/Divergence_monitor.comp) for `Divergence_monitor.comp`. +- [Source code](Divergence_monitor.comp) for `Divergence_monitor.comp`. --- diff --git a/mcstas-comps/monitors/EPSD_monitor.md b/mcstas-comps/monitors/EPSD_monitor.md index a3c6733d5..b2f0ddbc0 100644 --- a/mcstas-comps/monitors/EPSD_monitor.md +++ b/mcstas-comps/monitors/EPSD_monitor.md @@ -40,7 +40,7 @@ Parameters in **boldface** are required; the others are optional. ## Links -- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/monitors/EPSD_monitor.comp) for `EPSD_monitor.comp`. +- [Source code](EPSD_monitor.comp) for `EPSD_monitor.comp`. --- diff --git a/mcstas-comps/monitors/E_monitor.md b/mcstas-comps/monitors/E_monitor.md index e0c6372a3..26b76f756 100644 --- a/mcstas-comps/monitors/E_monitor.md +++ b/mcstas-comps/monitors/E_monitor.md @@ -39,7 +39,7 @@ Parameters in **boldface** are required; the others are optional. ## Links -- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/monitors/E_monitor.comp) for `E_monitor.comp`. +- [Source code](E_monitor.comp) for `E_monitor.comp`. --- diff --git a/mcstas-comps/monitors/Event_monitor_simple.md b/mcstas-comps/monitors/Event_monitor_simple.md index e9470ad71..6bbed9a4e 100644 --- a/mcstas-comps/monitors/Event_monitor_simple.md +++ b/mcstas-comps/monitors/Event_monitor_simple.md @@ -27,7 +27,7 @@ Parameters in **boldface** are required; the others are optional. ## Links -- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/monitors/Event_monitor_simple.comp) for `Event_monitor_simple.comp`. +- [Source code](Event_monitor_simple.comp) for `Event_monitor_simple.comp`. --- diff --git a/mcstas-comps/monitors/Flex_monitor_1D.md b/mcstas-comps/monitors/Flex_monitor_1D.md index 9da2a5338..30858dea0 100644 --- a/mcstas-comps/monitors/Flex_monitor_1D.md +++ b/mcstas-comps/monitors/Flex_monitor_1D.md @@ -35,7 +35,7 @@ Parameters in **boldface** are required; the others are optional. ## Links -- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/monitors/Flex_monitor_1D.comp) for `Flex_monitor_1D.comp`. +- [Source code](Flex_monitor_1D.comp) for `Flex_monitor_1D.comp`. --- diff --git a/mcstas-comps/monitors/Flex_monitor_2D.md b/mcstas-comps/monitors/Flex_monitor_2D.md index 78f042f7a..db610ab03 100644 --- a/mcstas-comps/monitors/Flex_monitor_2D.md +++ b/mcstas-comps/monitors/Flex_monitor_2D.md @@ -40,7 +40,7 @@ Parameters in **boldface** are required; the others are optional. ## Links -- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/monitors/Flex_monitor_2D.comp) for `Flex_monitor_2D.comp`. +- [Source code](Flex_monitor_2D.comp) for `Flex_monitor_2D.comp`. --- diff --git a/mcstas-comps/monitors/Flex_monitor_3D.md b/mcstas-comps/monitors/Flex_monitor_3D.md index a21777c82..99fa3c33a 100644 --- a/mcstas-comps/monitors/Flex_monitor_3D.md +++ b/mcstas-comps/monitors/Flex_monitor_3D.md @@ -45,7 +45,7 @@ Parameters in **boldface** are required; the others are optional. ## Links -- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/monitors/Flex_monitor_3D.comp) for `Flex_monitor_3D.comp`. +- [Source code](Flex_monitor_3D.comp) for `Flex_monitor_3D.comp`. --- diff --git a/mcstas-comps/monitors/L_monitor.md b/mcstas-comps/monitors/L_monitor.md index a7f79c07a..2b061bb5a 100644 --- a/mcstas-comps/monitors/L_monitor.md +++ b/mcstas-comps/monitors/L_monitor.md @@ -39,7 +39,7 @@ Parameters in **boldface** are required; the others are optional. ## Links -- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/monitors/L_monitor.comp) for `L_monitor.comp`. +- [Source code](L_monitor.comp) for `L_monitor.comp`. --- diff --git a/mcstas-comps/monitors/MeanPolLambda_monitor.md b/mcstas-comps/monitors/MeanPolLambda_monitor.md index 3eee68d25..cbab61f7d 100644 --- a/mcstas-comps/monitors/MeanPolLambda_monitor.md +++ b/mcstas-comps/monitors/MeanPolLambda_monitor.md @@ -39,7 +39,7 @@ Parameters in **boldface** are required; the others are optional. ## Links -- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/monitors/MeanPolLambda_monitor.comp) for `MeanPolLambda_monitor.comp`. +- [Source code](MeanPolLambda_monitor.comp) for `MeanPolLambda_monitor.comp`. --- diff --git a/mcstas-comps/monitors/Monitor.md b/mcstas-comps/monitors/Monitor.md index 827cf8dd7..b1db77d56 100644 --- a/mcstas-comps/monitors/Monitor.md +++ b/mcstas-comps/monitors/Monitor.md @@ -34,7 +34,7 @@ Parameters in **boldface** are required; the others are optional. ## Links -- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/monitors/Monitor.comp) for `Monitor.comp`. +- [Source code](Monitor.comp) for `Monitor.comp`. --- diff --git a/mcstas-comps/monitors/Monitor_4PI.md b/mcstas-comps/monitors/Monitor_4PI.md index dea626498..48c30db2b 100644 --- a/mcstas-comps/monitors/Monitor_4PI.md +++ b/mcstas-comps/monitors/Monitor_4PI.md @@ -29,7 +29,7 @@ Parameters in **boldface** are required; the others are optional. ## Links -- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/monitors/Monitor_4PI.comp) for `Monitor_4PI.comp`. +- [Source code](Monitor_4PI.comp) for `Monitor_4PI.comp`. --- diff --git a/mcstas-comps/monitors/Monitor_nD.md b/mcstas-comps/monitors/Monitor_nD.md index d3108e5a5..84fa2bccf 100644 --- a/mcstas-comps/monitors/Monitor_nD.md +++ b/mcstas-comps/monitors/Monitor_nD.md @@ -213,7 +213,7 @@ Parameters in **boldface** are required; the others are optional. ## Links -- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/monitors/Monitor_nD.comp) for `Monitor_nD.comp`. +- [Source code](Monitor_nD.comp) for `Monitor_nD.comp`. - PreMonitor_nD --- diff --git a/mcstas-comps/monitors/Monitor_nD_noacc.md b/mcstas-comps/monitors/Monitor_nD_noacc.md index 53c848ac2..d671825ec 100644 --- a/mcstas-comps/monitors/Monitor_nD_noacc.md +++ b/mcstas-comps/monitors/Monitor_nD_noacc.md @@ -213,7 +213,7 @@ Parameters in **boldface** are required; the others are optional. ## Links -- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/monitors/Monitor_nD_noacc.comp) for `Monitor_nD_noacc.comp`. +- [Source code](Monitor_nD_noacc.comp) for `Monitor_nD_noacc.comp`. - PreMonitor_nD --- diff --git a/mcstas-comps/monitors/PSD_TOF_monitor.md b/mcstas-comps/monitors/PSD_TOF_monitor.md index 42c1b45eb..fde00935a 100644 --- a/mcstas-comps/monitors/PSD_TOF_monitor.md +++ b/mcstas-comps/monitors/PSD_TOF_monitor.md @@ -42,7 +42,7 @@ Parameters in **boldface** are required; the others are optional. ## Links -- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/monitors/PSD_TOF_monitor.comp) for `PSD_TOF_monitor.comp`. +- [Source code](PSD_TOF_monitor.comp) for `PSD_TOF_monitor.comp`. --- diff --git a/mcstas-comps/monitors/PSD_monitor.md b/mcstas-comps/monitors/PSD_monitor.md index c45e695c3..ef9f58a16 100644 --- a/mcstas-comps/monitors/PSD_monitor.md +++ b/mcstas-comps/monitors/PSD_monitor.md @@ -38,7 +38,7 @@ Parameters in **boldface** are required; the others are optional. ## Links -- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/monitors/PSD_monitor.comp) for `PSD_monitor.comp`. +- [Source code](PSD_monitor.comp) for `PSD_monitor.comp`. --- diff --git a/mcstas-comps/monitors/PSD_monitor_4PI.md b/mcstas-comps/monitors/PSD_monitor_4PI.md index cc0a2abde..7e8759681 100644 --- a/mcstas-comps/monitors/PSD_monitor_4PI.md +++ b/mcstas-comps/monitors/PSD_monitor_4PI.md @@ -33,7 +33,7 @@ Parameters in **boldface** are required; the others are optional. ## Links -- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/monitors/PSD_monitor_4PI.comp) for `PSD_monitor_4PI.comp`. +- [Source code](PSD_monitor_4PI.comp) for `PSD_monitor_4PI.comp`. - Test - results (not up-to-date). diff --git a/mcstas-comps/monitors/PSD_monitor_4PI_spin.md b/mcstas-comps/monitors/PSD_monitor_4PI_spin.md index 91b72bdf3..b82860fe5 100644 --- a/mcstas-comps/monitors/PSD_monitor_4PI_spin.md +++ b/mcstas-comps/monitors/PSD_monitor_4PI_spin.md @@ -36,7 +36,7 @@ Parameters in **boldface** are required; the others are optional. ## Links -- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/monitors/PSD_monitor_4PI_spin.comp) for `PSD_monitor_4PI_spin.comp`. +- [Source code](PSD_monitor_4PI_spin.comp) for `PSD_monitor_4PI_spin.comp`. --- diff --git a/mcstas-comps/monitors/PSD_monitor_TOF.md b/mcstas-comps/monitors/PSD_monitor_TOF.md index 2ac7c678d..ff3d1a97d 100644 --- a/mcstas-comps/monitors/PSD_monitor_TOF.md +++ b/mcstas-comps/monitors/PSD_monitor_TOF.md @@ -42,7 +42,7 @@ Parameters in **boldface** are required; the others are optional. ## Links -- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/monitors/PSD_monitor_TOF.comp) for `PSD_monitor_TOF.comp`. +- [Source code](PSD_monitor_TOF.comp) for `PSD_monitor_TOF.comp`. --- diff --git a/mcstas-comps/monitors/PSD_monitor_psf.md b/mcstas-comps/monitors/PSD_monitor_psf.md index bc3161cad..598dde687 100644 --- a/mcstas-comps/monitors/PSD_monitor_psf.md +++ b/mcstas-comps/monitors/PSD_monitor_psf.md @@ -39,7 +39,7 @@ Parameters in **boldface** are required; the others are optional. ## Links -- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/monitors/PSD_monitor_psf.comp) for `PSD_monitor_psf.comp`. +- [Source code](PSD_monitor_psf.comp) for `PSD_monitor_psf.comp`. --- diff --git a/mcstas-comps/monitors/PSD_monitor_psf_eff.md b/mcstas-comps/monitors/PSD_monitor_psf_eff.md index 3580efe6a..69f7cfb97 100644 --- a/mcstas-comps/monitors/PSD_monitor_psf_eff.md +++ b/mcstas-comps/monitors/PSD_monitor_psf_eff.md @@ -41,7 +41,7 @@ Parameters in **boldface** are required; the others are optional. ## Links -- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/monitors/PSD_monitor_psf_eff.comp) for `PSD_monitor_psf_eff.comp`. +- [Source code](PSD_monitor_psf_eff.comp) for `PSD_monitor_psf_eff.comp`. --- diff --git a/mcstas-comps/monitors/PSDcyl_monitor.md b/mcstas-comps/monitors/PSDcyl_monitor.md index 2639fc7e8..1dab654d3 100644 --- a/mcstas-comps/monitors/PSDcyl_monitor.md +++ b/mcstas-comps/monitors/PSDcyl_monitor.md @@ -37,7 +37,7 @@ Parameters in **boldface** are required; the others are optional. ## Links -- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/monitors/PSDcyl_monitor.comp) for `PSDcyl_monitor.comp`. +- [Source code](PSDcyl_monitor.comp) for `PSDcyl_monitor.comp`. --- diff --git a/mcstas-comps/monitors/PSDlin_diff_monitor.md b/mcstas-comps/monitors/PSDlin_diff_monitor.md index 2daddf4c3..547fb99f8 100644 --- a/mcstas-comps/monitors/PSDlin_diff_monitor.md +++ b/mcstas-comps/monitors/PSDlin_diff_monitor.md @@ -36,7 +36,7 @@ Parameters in **boldface** are required; the others are optional. ## Links -- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/monitors/PSDlin_diff_monitor.comp) for `PSDlin_diff_monitor.comp`. +- [Source code](PSDlin_diff_monitor.comp) for `PSDlin_diff_monitor.comp`. --- diff --git a/mcstas-comps/monitors/PSDlin_monitor.md b/mcstas-comps/monitors/PSDlin_monitor.md index 2a80bfdce..badf8058e 100644 --- a/mcstas-comps/monitors/PSDlin_monitor.md +++ b/mcstas-comps/monitors/PSDlin_monitor.md @@ -39,7 +39,7 @@ Parameters in **boldface** are required; the others are optional. ## Links -- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/monitors/PSDlin_monitor.comp) for `PSDlin_monitor.comp`. +- [Source code](PSDlin_monitor.comp) for `PSDlin_monitor.comp`. --- diff --git a/mcstas-comps/monitors/PolLambda_monitor.md b/mcstas-comps/monitors/PolLambda_monitor.md index e2634a588..8b3ad7c3f 100644 --- a/mcstas-comps/monitors/PolLambda_monitor.md +++ b/mcstas-comps/monitors/PolLambda_monitor.md @@ -40,7 +40,7 @@ Parameters in **boldface** are required; the others are optional. ## Links -- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/monitors/PolLambda_monitor.comp) for `PolLambda_monitor.comp`. +- [Source code](PolLambda_monitor.comp) for `PolLambda_monitor.comp`. --- diff --git a/mcstas-comps/monitors/Pol_monitor.md b/mcstas-comps/monitors/Pol_monitor.md index 7bde859ef..89b867440 100644 --- a/mcstas-comps/monitors/Pol_monitor.md +++ b/mcstas-comps/monitors/Pol_monitor.md @@ -35,7 +35,7 @@ Parameters in **boldface** are required; the others are optional. ## Links -- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/monitors/Pol_monitor.comp) for `Pol_monitor.comp`. +- [Source code](Pol_monitor.comp) for `Pol_monitor.comp`. --- diff --git a/mcstas-comps/monitors/Res_monitor.md b/mcstas-comps/monitors/Res_monitor.md index 2b77b2b93..0de6e8267 100644 --- a/mcstas-comps/monitors/Res_monitor.md +++ b/mcstas-comps/monitors/Res_monitor.md @@ -55,7 +55,7 @@ Parameters in **boldface** are required; the others are optional. ## Links -- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/monitors/Res_monitor.comp) for `Res_monitor.comp`. +- [Source code](Res_monitor.comp) for `Res_monitor.comp`. --- diff --git a/mcstas-comps/monitors/Sqq_w_monitor.md b/mcstas-comps/monitors/Sqq_w_monitor.md index 58b982071..92831439c 100644 --- a/mcstas-comps/monitors/Sqq_w_monitor.md +++ b/mcstas-comps/monitors/Sqq_w_monitor.md @@ -56,7 +56,7 @@ Parameters in **boldface** are required; the others are optional. ## Links -- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/monitors/Sqq_w_monitor.comp) for `Sqq_w_monitor.comp`. +- [Source code](Sqq_w_monitor.comp) for `Sqq_w_monitor.comp`. --- diff --git a/mcstas-comps/monitors/Sqw_monitor.md b/mcstas-comps/monitors/Sqw_monitor.md index 8a9d9b952..b0e5f6508 100644 --- a/mcstas-comps/monitors/Sqw_monitor.md +++ b/mcstas-comps/monitors/Sqw_monitor.md @@ -41,7 +41,7 @@ Parameters in **boldface** are required; the others are optional. ## Links -- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/monitors/Sqw_monitor.comp) for `Sqw_monitor.comp`. +- [Source code](Sqw_monitor.comp) for `Sqw_monitor.comp`. --- diff --git a/mcstas-comps/monitors/TOF2E_monitor.md b/mcstas-comps/monitors/TOF2E_monitor.md index 6077aaffa..b85cc5d0a 100644 --- a/mcstas-comps/monitors/TOF2E_monitor.md +++ b/mcstas-comps/monitors/TOF2E_monitor.md @@ -41,7 +41,7 @@ Parameters in **boldface** are required; the others are optional. ## Links -- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/monitors/TOF2E_monitor.comp) for `TOF2E_monitor.comp`. +- [Source code](TOF2E_monitor.comp) for `TOF2E_monitor.comp`. --- diff --git a/mcstas-comps/monitors/TOF2Q_cylPSD_monitor.md b/mcstas-comps/monitors/TOF2Q_cylPSD_monitor.md index 0d3df4920..59a88454e 100644 --- a/mcstas-comps/monitors/TOF2Q_cylPSD_monitor.md +++ b/mcstas-comps/monitors/TOF2Q_cylPSD_monitor.md @@ -41,7 +41,7 @@ Parameters in **boldface** are required; the others are optional. ## Links -- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/monitors/TOF2Q_cylPSD_monitor.comp) for `TOF2Q_cylPSD_monitor.comp`. +- [Source code](TOF2Q_cylPSD_monitor.comp) for `TOF2Q_cylPSD_monitor.comp`. --- diff --git a/mcstas-comps/monitors/TOFLambda_monitor.md b/mcstas-comps/monitors/TOFLambda_monitor.md index 017b455e7..37533800f 100644 --- a/mcstas-comps/monitors/TOFLambda_monitor.md +++ b/mcstas-comps/monitors/TOFLambda_monitor.md @@ -40,7 +40,7 @@ Parameters in **boldface** are required; the others are optional. ## Links -- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/monitors/TOFLambda_monitor.comp) for `TOFLambda_monitor.comp`. +- [Source code](TOFLambda_monitor.comp) for `TOFLambda_monitor.comp`. --- diff --git a/mcstas-comps/monitors/TOFRes_monitor.md b/mcstas-comps/monitors/TOFRes_monitor.md index 750613dc3..ba2b3afec 100644 --- a/mcstas-comps/monitors/TOFRes_monitor.md +++ b/mcstas-comps/monitors/TOFRes_monitor.md @@ -55,7 +55,7 @@ Parameters in **boldface** are required; the others are optional. ## Links -- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/monitors/TOFRes_monitor.comp) for `TOFRes_monitor.comp`. +- [Source code](TOFRes_monitor.comp) for `TOFRes_monitor.comp`. --- diff --git a/mcstas-comps/monitors/TOF_PSD_monitor_rad.md b/mcstas-comps/monitors/TOF_PSD_monitor_rad.md index 487d4594a..93a4057d5 100644 --- a/mcstas-comps/monitors/TOF_PSD_monitor_rad.md +++ b/mcstas-comps/monitors/TOF_PSD_monitor_rad.md @@ -38,7 +38,7 @@ Parameters in **boldface** are required; the others are optional. ## Links -- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/monitors/TOF_PSD_monitor_rad.comp) for `TOF_PSD_monitor_rad.comp`. +- [Source code](TOF_PSD_monitor_rad.comp) for `TOF_PSD_monitor_rad.comp`. --- diff --git a/mcstas-comps/monitors/TOF_cylPSD_monitor.md b/mcstas-comps/monitors/TOF_cylPSD_monitor.md index d6ddfaff5..5f070fc51 100644 --- a/mcstas-comps/monitors/TOF_cylPSD_monitor.md +++ b/mcstas-comps/monitors/TOF_cylPSD_monitor.md @@ -33,7 +33,7 @@ Parameters in **boldface** are required; the others are optional. ## Links -- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/monitors/TOF_cylPSD_monitor.comp) for `TOF_cylPSD_monitor.comp`. +- [Source code](TOF_cylPSD_monitor.comp) for `TOF_cylPSD_monitor.comp`. --- diff --git a/mcstas-comps/monitors/TOF_monitor.md b/mcstas-comps/monitors/TOF_monitor.md index 53d52cf71..ffba9b3ff 100644 --- a/mcstas-comps/monitors/TOF_monitor.md +++ b/mcstas-comps/monitors/TOF_monitor.md @@ -37,7 +37,7 @@ Parameters in **boldface** are required; the others are optional. ## Links -- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/monitors/TOF_monitor.comp) for `TOF_monitor.comp`. +- [Source code](TOF_monitor.comp) for `TOF_monitor.comp`. --- diff --git a/mcstas-comps/monitors/TOFlog_monitor.md b/mcstas-comps/monitors/TOFlog_monitor.md index cf5063e34..a9e6c6aeb 100644 --- a/mcstas-comps/monitors/TOFlog_monitor.md +++ b/mcstas-comps/monitors/TOFlog_monitor.md @@ -37,7 +37,7 @@ Parameters in **boldface** are required; the others are optional. ## Links -- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/monitors/TOFlog_monitor.comp) for `TOFlog_monitor.comp`. +- [Source code](TOFlog_monitor.comp) for `TOFlog_monitor.comp`. --- diff --git a/mcstas-comps/obsolete/Beam_spy.md b/mcstas-comps/obsolete/Beam_spy.md index 8a2484f05..220224d67 100644 --- a/mcstas-comps/obsolete/Beam_spy.md +++ b/mcstas-comps/obsolete/Beam_spy.md @@ -28,7 +28,7 @@ Parameters in **boldface** are required; the others are optional. ## Links -- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/obsolete/Beam_spy.comp) for `Beam_spy.comp`. +- [Source code](Beam_spy.comp) for `Beam_spy.comp`. - Monitor component --- diff --git a/mcstas-comps/obsolete/ESS_moderator_short.md b/mcstas-comps/obsolete/ESS_moderator_short.md index 81e5c2f6f..c8e0b7207 100644 --- a/mcstas-comps/obsolete/ESS_moderator_short.md +++ b/mcstas-comps/obsolete/ESS_moderator_short.md @@ -87,7 +87,7 @@ Parameters in **boldface** are required; the others are optional. ## Links -- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/obsolete/ESS_moderator_short.comp) for `ESS_moderator_short.comp`. +- [Source code](ESS_moderator_short.comp) for `ESS_moderator_short.comp`. --- diff --git a/mcstas-comps/obsolete/V_sample.md b/mcstas-comps/obsolete/V_sample.md index 2a3575683..e995f1e05 100644 --- a/mcstas-comps/obsolete/V_sample.md +++ b/mcstas-comps/obsolete/V_sample.md @@ -69,7 +69,7 @@ Parameters in **boldface** are required; the others are optional. ## Links -- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/obsolete/V_sample.comp) for `V_sample.comp`. +- [Source code](V_sample.comp) for `V_sample.comp`. - Test - results (not up-to-date). - The test/example instrument vanadium_example.instr. diff --git a/mcstas-comps/obsolete/Virtual_input.md b/mcstas-comps/obsolete/Virtual_input.md index 65fa16501..8bc1fcc39 100644 --- a/mcstas-comps/obsolete/Virtual_input.md +++ b/mcstas-comps/obsolete/Virtual_input.md @@ -57,7 +57,7 @@ Parameters in **boldface** are required; the others are optional. ## Links -- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/obsolete/Virtual_input.comp) for `Virtual_input.comp`. +- [Source code](Virtual_input.comp) for `Virtual_input.comp`. --- diff --git a/mcstas-comps/obsolete/Virtual_mcnp_input.md b/mcstas-comps/obsolete/Virtual_mcnp_input.md index b37858bd3..41a26563e 100644 --- a/mcstas-comps/obsolete/Virtual_mcnp_input.md +++ b/mcstas-comps/obsolete/Virtual_mcnp_input.md @@ -71,7 +71,7 @@ Parameters in **boldface** are required; the others are optional. ## Links -- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/obsolete/Virtual_mcnp_input.comp) for `Virtual_mcnp_input.comp`. +- [Source code](Virtual_mcnp_input.comp) for `Virtual_mcnp_input.comp`. - MCNP - MCNP -- A General Monte Carlo N-Particle Transport Code, Version 5, Volume II: User's Guide, p177 diff --git a/mcstas-comps/obsolete/Virtual_mcnp_output.md b/mcstas-comps/obsolete/Virtual_mcnp_output.md index d1d9b64ca..00801f31b 100644 --- a/mcstas-comps/obsolete/Virtual_mcnp_output.md +++ b/mcstas-comps/obsolete/Virtual_mcnp_output.md @@ -44,7 +44,7 @@ Parameters in **boldface** are required; the others are optional. ## Links -- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/obsolete/Virtual_mcnp_output.comp) for `Virtual_mcnp_output.comp`. +- [Source code](Virtual_mcnp_output.comp) for `Virtual_mcnp_output.comp`. - MCNP - MCNP -- A General Monte Carlo N-Particle Transport Code, Version 5, Volume II: User's Guide, p177 diff --git a/mcstas-comps/obsolete/Virtual_mcnp_ss_Guide.md b/mcstas-comps/obsolete/Virtual_mcnp_ss_Guide.md index 2ca11d586..192d71d04 100644 --- a/mcstas-comps/obsolete/Virtual_mcnp_ss_Guide.md +++ b/mcstas-comps/obsolete/Virtual_mcnp_ss_Guide.md @@ -63,7 +63,7 @@ Parameters in **boldface** are required; the others are optional. ## Links -- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/obsolete/Virtual_mcnp_ss_Guide.comp) for `Virtual_mcnp_ss_Guide.comp`. +- [Source code](Virtual_mcnp_ss_Guide.comp) for `Virtual_mcnp_ss_Guide.comp`. --- diff --git a/mcstas-comps/obsolete/Virtual_mcnp_ss_input.md b/mcstas-comps/obsolete/Virtual_mcnp_ss_input.md index 60afcb6d6..78e3c8264 100644 --- a/mcstas-comps/obsolete/Virtual_mcnp_ss_input.md +++ b/mcstas-comps/obsolete/Virtual_mcnp_ss_input.md @@ -63,7 +63,7 @@ Parameters in **boldface** are required; the others are optional. ## Links -- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/obsolete/Virtual_mcnp_ss_input.comp) for `Virtual_mcnp_ss_input.comp`. +- [Source code](Virtual_mcnp_ss_input.comp) for `Virtual_mcnp_ss_input.comp`. - MCNP - MCNP -- A General Monte Carlo N-Particle Transport Code, Version 5, Volume II: User's Guide, p177 diff --git a/mcstas-comps/obsolete/Virtual_mcnp_ss_output.md b/mcstas-comps/obsolete/Virtual_mcnp_ss_output.md index 6c5424f9c..bcd4c4dd5 100644 --- a/mcstas-comps/obsolete/Virtual_mcnp_ss_output.md +++ b/mcstas-comps/obsolete/Virtual_mcnp_ss_output.md @@ -63,7 +63,7 @@ Parameters in **boldface** are required; the others are optional. ## Links -- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/obsolete/Virtual_mcnp_ss_output.comp) for `Virtual_mcnp_ss_output.comp`. +- [Source code](Virtual_mcnp_ss_output.comp) for `Virtual_mcnp_ss_output.comp`. - MCNP - MCNP -- A General Monte Carlo N-Particle Transport Code, Version 5, Volume II: User's Guide, p177 diff --git a/mcstas-comps/obsolete/Virtual_output.md b/mcstas-comps/obsolete/Virtual_output.md index 695e564db..d569618c3 100644 --- a/mcstas-comps/obsolete/Virtual_output.md +++ b/mcstas-comps/obsolete/Virtual_output.md @@ -55,7 +55,7 @@ Parameters in **boldface** are required; the others are optional. ## Links -- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/obsolete/Virtual_output.comp) for `Virtual_output.comp`. +- [Source code](Virtual_output.comp) for `Virtual_output.comp`. --- diff --git a/mcstas-comps/obsolete/Virtual_tripoli4_input.md b/mcstas-comps/obsolete/Virtual_tripoli4_input.md index 84d1cad1c..2fa55e554 100644 --- a/mcstas-comps/obsolete/Virtual_tripoli4_input.md +++ b/mcstas-comps/obsolete/Virtual_tripoli4_input.md @@ -68,7 +68,7 @@ Parameters in **boldface** are required; the others are optional. ## Links -- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/obsolete/Virtual_tripoli4_input.comp) for `Virtual_tripoli4_input.comp`. +- [Source code](Virtual_tripoli4_input.comp) for `Virtual_tripoli4_input.comp`. - Tripoli - Virtual_tripoli4_output - CAMPIONI Guillaume, Etude et Modelisation des Sources Froides de Neutrons, These de Doctorat, CEA Saclay/UJF (2004) diff --git a/mcstas-comps/obsolete/Virtual_tripoli4_output.md b/mcstas-comps/obsolete/Virtual_tripoli4_output.md index d19b9f5a6..8d76a7350 100644 --- a/mcstas-comps/obsolete/Virtual_tripoli4_output.md +++ b/mcstas-comps/obsolete/Virtual_tripoli4_output.md @@ -47,7 +47,7 @@ Parameters in **boldface** are required; the others are optional. ## Links -- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/obsolete/Virtual_tripoli4_output.comp) for `Virtual_tripoli4_output.comp`. +- [Source code](Virtual_tripoli4_output.comp) for `Virtual_tripoli4_output.comp`. - Tripoli - Virtual_tripoli4_input diff --git a/mcstas-comps/obsolete/Vitess_input.md b/mcstas-comps/obsolete/Vitess_input.md index 62d8b029b..277e15b87 100644 --- a/mcstas-comps/obsolete/Vitess_input.md +++ b/mcstas-comps/obsolete/Vitess_input.md @@ -34,7 +34,7 @@ Parameters in **boldface** are required; the others are optional. ## Links -- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/obsolete/Vitess_input.comp) for `Vitess_input.comp`. +- [Source code](Vitess_input.comp) for `Vitess_input.comp`. --- diff --git a/mcstas-comps/obsolete/Vitess_output.md b/mcstas-comps/obsolete/Vitess_output.md index 229539438..8f821302b 100644 --- a/mcstas-comps/obsolete/Vitess_output.md +++ b/mcstas-comps/obsolete/Vitess_output.md @@ -39,7 +39,7 @@ Parameters in **boldface** are required; the others are optional. ## Links -- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/obsolete/Vitess_output.comp) for `Vitess_output.comp`. +- [Source code](Vitess_output.comp) for `Vitess_output.comp`. --- diff --git a/mcstas-comps/optics/Absorber.md b/mcstas-comps/optics/Absorber.md index fe7c80e4c..44077ab2e 100644 --- a/mcstas-comps/optics/Absorber.md +++ b/mcstas-comps/optics/Absorber.md @@ -32,7 +32,7 @@ Parameters in **boldface** are required; the others are optional. ## Links -- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/optics/Absorber.comp) for `Absorber.comp`. +- [Source code](Absorber.comp) for `Absorber.comp`. --- diff --git a/mcstas-comps/optics/Arm.md b/mcstas-comps/optics/Arm.md index 64ebec6c5..069e80982 100644 --- a/mcstas-comps/optics/Arm.md +++ b/mcstas-comps/optics/Arm.md @@ -27,7 +27,7 @@ Parameters in **boldface** are required; the others are optional. ## Links -- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/optics/Arm.comp) for `Arm.comp`. +- [Source code](Arm.comp) for `Arm.comp`. --- diff --git a/mcstas-comps/optics/Beamstop.md b/mcstas-comps/optics/Beamstop.md index 782b9faf4..342b17f76 100644 --- a/mcstas-comps/optics/Beamstop.md +++ b/mcstas-comps/optics/Beamstop.md @@ -37,7 +37,7 @@ Parameters in **boldface** are required; the others are optional. ## Links -- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/optics/Beamstop.comp) for `Beamstop.comp`. +- [Source code](Beamstop.comp) for `Beamstop.comp`. --- diff --git a/mcstas-comps/optics/Bender.md b/mcstas-comps/optics/Bender.md index 582736dcf..7e768d463 100644 --- a/mcstas-comps/optics/Bender.md +++ b/mcstas-comps/optics/Bender.md @@ -78,7 +78,7 @@ Parameters in **boldface** are required; the others are optional. ## Links -- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/optics/Bender.comp) for `Bender.comp`. +- [Source code](Bender.comp) for `Bender.comp`. - Additional note from Philipp Bernhardt. diff --git a/mcstas-comps/optics/Collimator_linear.md b/mcstas-comps/optics/Collimator_linear.md index 2ce66e791..fd7a70418 100644 --- a/mcstas-comps/optics/Collimator_linear.md +++ b/mcstas-comps/optics/Collimator_linear.md @@ -39,7 +39,7 @@ Parameters in **boldface** are required; the others are optional. ## Links -- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/optics/Collimator_linear.comp) for `Collimator_linear.comp`. +- [Source code](Collimator_linear.comp) for `Collimator_linear.comp`. --- diff --git a/mcstas-comps/optics/Collimator_radial.md b/mcstas-comps/optics/Collimator_radial.md index 83ffad59d..f470ea65b 100644 --- a/mcstas-comps/optics/Collimator_radial.md +++ b/mcstas-comps/optics/Collimator_radial.md @@ -66,7 +66,7 @@ Parameters in **boldface** are required; the others are optional. ## Links -- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/optics/Collimator_radial.comp) for `Collimator_radial.comp`. +- [Source code](Collimator_radial.comp) for `Collimator_radial.comp`. --- diff --git a/mcstas-comps/optics/Derotator.md b/mcstas-comps/optics/Derotator.md index 0e3f47240..70bcceda8 100644 --- a/mcstas-comps/optics/Derotator.md +++ b/mcstas-comps/optics/Derotator.md @@ -33,7 +33,7 @@ Parameters in **boldface** are required; the others are optional. ## Links -- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/optics/Derotator.comp) for `Derotator.comp`. +- [Source code](Derotator.comp) for `Derotator.comp`. --- diff --git a/mcstas-comps/optics/Diaphragm.md b/mcstas-comps/optics/Diaphragm.md index 3e082a847..c7f8b4eac 100644 --- a/mcstas-comps/optics/Diaphragm.md +++ b/mcstas-comps/optics/Diaphragm.md @@ -32,7 +32,7 @@ Parameters in **boldface** are required; the others are optional. ## Links -- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/optics/Diaphragm.comp) for `Diaphragm.comp`. +- [Source code](Diaphragm.comp) for `Diaphragm.comp`. --- diff --git a/mcstas-comps/optics/DiskChopper.md b/mcstas-comps/optics/DiskChopper.md index 8addee238..b3ddad7df 100644 --- a/mcstas-comps/optics/DiskChopper.md +++ b/mcstas-comps/optics/DiskChopper.md @@ -61,7 +61,7 @@ Parameters in **boldface** are required; the others are optional. ## Links -- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/optics/DiskChopper.comp) for `DiskChopper.comp`. +- [Source code](DiskChopper.comp) for `DiskChopper.comp`. --- diff --git a/mcstas-comps/optics/Elliptic_guide_gravity.md b/mcstas-comps/optics/Elliptic_guide_gravity.md index c36d0f675..4460c7563 100644 --- a/mcstas-comps/optics/Elliptic_guide_gravity.md +++ b/mcstas-comps/optics/Elliptic_guide_gravity.md @@ -120,7 +120,7 @@ Parameters in **boldface** are required; the others are optional. ## Links -- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/optics/Elliptic_guide_gravity.comp) for `Elliptic_guide_gravity.comp`. +- [Source code](Elliptic_guide_gravity.comp) for `Elliptic_guide_gravity.comp`. --- diff --git a/mcstas-comps/optics/FZP_simple.md b/mcstas-comps/optics/FZP_simple.md index 34fd81622..2b617a837 100644 --- a/mcstas-comps/optics/FZP_simple.md +++ b/mcstas-comps/optics/FZP_simple.md @@ -40,7 +40,7 @@ Parameters in **boldface** are required; the others are optional. ## Links -- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/optics/FZP_simple.comp) for `FZP_simple.comp`. +- [Source code](FZP_simple.comp) for `FZP_simple.comp`. --- diff --git a/mcstas-comps/optics/FermiChopper.md b/mcstas-comps/optics/FermiChopper.md index 37e2902bf..4ab75598d 100644 --- a/mcstas-comps/optics/FermiChopper.md +++ b/mcstas-comps/optics/FermiChopper.md @@ -60,7 +60,7 @@ Parameters in **boldface** are required; the others are optional. ## Links -- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/optics/FermiChopper.comp) for `FermiChopper.comp`. +- [Source code](FermiChopper.comp) for `FermiChopper.comp`. - Vitess_ChopperFermi component by - G. Zsigmond, imported from Vitess by K. Lieutenant. diff --git a/mcstas-comps/optics/Filter_gen.md b/mcstas-comps/optics/Filter_gen.md index 8f10bb216..cd3fc08df 100644 --- a/mcstas-comps/optics/Filter_gen.md +++ b/mcstas-comps/optics/Filter_gen.md @@ -73,7 +73,7 @@ Parameters in **boldface** are required; the others are optional. ## Links -- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/optics/Filter_gen.comp) for `Filter_gen.comp`. +- [Source code](Filter_gen.comp) for `Filter_gen.comp`. - HOPG.trm filename as an example. --- diff --git a/mcstas-comps/optics/Guide.md b/mcstas-comps/optics/Guide.md index b9adaf72f..04b69c8f2 100644 --- a/mcstas-comps/optics/Guide.md +++ b/mcstas-comps/optics/Guide.md @@ -50,7 +50,7 @@ Parameters in **boldface** are required; the others are optional. ## Links -- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/optics/Guide.comp) for `Guide.comp`. +- [Source code](Guide.comp) for `Guide.comp`. --- diff --git a/mcstas-comps/optics/Guide_anyshape.md b/mcstas-comps/optics/Guide_anyshape.md index 8c3519310..5655e5cea 100644 --- a/mcstas-comps/optics/Guide_anyshape.md +++ b/mcstas-comps/optics/Guide_anyshape.md @@ -55,7 +55,7 @@ Parameters in **boldface** are required; the others are optional. ## Links -- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/optics/Guide_anyshape.comp) for `Guide_anyshape.comp`. +- [Source code](Guide_anyshape.comp) for `Guide_anyshape.comp`. - Geomview and Object File Format (OFF) - Java version of Geomview (display only) jroff.jar - qhull diff --git a/mcstas-comps/optics/Guide_channeled.md b/mcstas-comps/optics/Guide_channeled.md index 1e8c38376..b4e04d81a 100644 --- a/mcstas-comps/optics/Guide_channeled.md +++ b/mcstas-comps/optics/Guide_channeled.md @@ -62,7 +62,7 @@ Parameters in **boldface** are required; the others are optional. ## Links -- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/optics/Guide_channeled.comp) for `Guide_channeled.comp`. +- [Source code](Guide_channeled.comp) for `Guide_channeled.comp`. --- diff --git a/mcstas-comps/optics/Guide_gravity.md b/mcstas-comps/optics/Guide_gravity.md index 003df788c..4d6a7021b 100644 --- a/mcstas-comps/optics/Guide_gravity.md +++ b/mcstas-comps/optics/Guide_gravity.md @@ -89,7 +89,7 @@ Parameters in **boldface** are required; the others are optional. ## Links -- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/optics/Guide_gravity.comp) for `Guide_gravity.comp`. +- [Source code](Guide_gravity.comp) for `Guide_gravity.comp`. --- diff --git a/mcstas-comps/optics/Guide_simple.md b/mcstas-comps/optics/Guide_simple.md index 5a0765489..df04d8b41 100644 --- a/mcstas-comps/optics/Guide_simple.md +++ b/mcstas-comps/optics/Guide_simple.md @@ -49,7 +49,7 @@ Parameters in **boldface** are required; the others are optional. ## Links -- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/optics/Guide_simple.comp) for `Guide_simple.comp`. +- [Source code](Guide_simple.comp) for `Guide_simple.comp`. --- diff --git a/mcstas-comps/optics/Guide_tapering.md b/mcstas-comps/optics/Guide_tapering.md index 5e6d39bbd..5427d3030 100644 --- a/mcstas-comps/optics/Guide_tapering.md +++ b/mcstas-comps/optics/Guide_tapering.md @@ -77,7 +77,7 @@ Parameters in **boldface** are required; the others are optional. ## Links -- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/optics/Guide_tapering.comp) for `Guide_tapering.comp`. +- [Source code](Guide_tapering.comp) for `Guide_tapering.comp`. --- diff --git a/mcstas-comps/optics/Guide_wavy.md b/mcstas-comps/optics/Guide_wavy.md index 68ccef9e7..5879cbf6b 100644 --- a/mcstas-comps/optics/Guide_wavy.md +++ b/mcstas-comps/optics/Guide_wavy.md @@ -56,7 +56,7 @@ Parameters in **boldface** are required; the others are optional. ## Links -- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/optics/Guide_wavy.comp) for `Guide_wavy.comp`. +- [Source code](Guide_wavy.comp) for `Guide_wavy.comp`. --- diff --git a/mcstas-comps/optics/He3_cell.md b/mcstas-comps/optics/He3_cell.md index 95a2a04f7..78a128583 100644 --- a/mcstas-comps/optics/He3_cell.md +++ b/mcstas-comps/optics/He3_cell.md @@ -42,7 +42,7 @@ Parameters in **boldface** are required; the others are optional. ## Links -- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/optics/He3_cell.comp) for `He3_cell.comp`. +- [Source code](He3_cell.comp) for `He3_cell.comp`. --- diff --git a/mcstas-comps/optics/Mask.md b/mcstas-comps/optics/Mask.md index e766b2f8e..111005a94 100644 --- a/mcstas-comps/optics/Mask.md +++ b/mcstas-comps/optics/Mask.md @@ -49,7 +49,7 @@ Parameters in **boldface** are required; the others are optional. ## Links -- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/optics/Mask.comp) for `Mask.comp`. +- [Source code](Mask.comp) for `Mask.comp`. --- diff --git a/mcstas-comps/optics/Mirror.md b/mcstas-comps/optics/Mirror.md index 883bee35a..24a875fde 100644 --- a/mcstas-comps/optics/Mirror.md +++ b/mcstas-comps/optics/Mirror.md @@ -48,7 +48,7 @@ Parameters in **boldface** are required; the others are optional. ## Links -- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/optics/Mirror.comp) for `Mirror.comp`. +- [Source code](Mirror.comp) for `Mirror.comp`. --- diff --git a/mcstas-comps/optics/Monochromator_curved.md b/mcstas-comps/optics/Monochromator_curved.md index fbfc216fb..281749d99 100644 --- a/mcstas-comps/optics/Monochromator_curved.md +++ b/mcstas-comps/optics/Monochromator_curved.md @@ -77,7 +77,7 @@ Parameters in **boldface** are required; the others are optional. ## Links -- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/optics/Monochromator_curved.comp) for `Monochromator_curved.comp`. +- [Source code](Monochromator_curved.comp) for `Monochromator_curved.comp`. - Additional note from Peter Link. - Obsolete Mosaic_anisotropic by Kristian Nielsen - Contributed Monochromator_2foc by Peter Link diff --git a/mcstas-comps/optics/Monochromator_flat.md b/mcstas-comps/optics/Monochromator_flat.md index d70448d84..c66730d81 100644 --- a/mcstas-comps/optics/Monochromator_flat.md +++ b/mcstas-comps/optics/Monochromator_flat.md @@ -56,7 +56,7 @@ Parameters in **boldface** are required; the others are optional. ## Links -- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/optics/Monochromator_flat.comp) for `Monochromator_flat.comp`. +- [Source code](Monochromator_flat.comp) for `Monochromator_flat.comp`. --- diff --git a/mcstas-comps/optics/Monochromator_pol.md b/mcstas-comps/optics/Monochromator_pol.md index b7a8430a9..4bae0af16 100644 --- a/mcstas-comps/optics/Monochromator_pol.md +++ b/mcstas-comps/optics/Monochromator_pol.md @@ -81,7 +81,7 @@ Parameters in **boldface** are required; the others are optional. ## Links -- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/optics/Monochromator_pol.comp) for `Monochromator_pol.comp`. +- [Source code](Monochromator_pol.comp) for `Monochromator_pol.comp`. --- diff --git a/mcstas-comps/optics/Place.md b/mcstas-comps/optics/Place.md index 70f8dbbbb..ee87c9e85 100644 --- a/mcstas-comps/optics/Place.md +++ b/mcstas-comps/optics/Place.md @@ -27,7 +27,7 @@ Parameters in **boldface** are required; the others are optional. ## Links -- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/optics/Place.comp) for `Place.comp`. +- [Source code](Place.comp) for `Place.comp`. --- diff --git a/mcstas-comps/optics/PolAnalyser_ideal.md b/mcstas-comps/optics/PolAnalyser_ideal.md index 61f730538..7b65eeb6f 100644 --- a/mcstas-comps/optics/PolAnalyser_ideal.md +++ b/mcstas-comps/optics/PolAnalyser_ideal.md @@ -31,7 +31,7 @@ Parameters in **boldface** are required; the others are optional. ## Links -- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/optics/PolAnalyser_ideal.comp) for `PolAnalyser_ideal.comp`. +- [Source code](PolAnalyser_ideal.comp) for `PolAnalyser_ideal.comp`. --- diff --git a/mcstas-comps/optics/Pol_Bfield.md b/mcstas-comps/optics/Pol_Bfield.md index 9a6e517a8..5112c692a 100644 --- a/mcstas-comps/optics/Pol_Bfield.md +++ b/mcstas-comps/optics/Pol_Bfield.md @@ -78,7 +78,7 @@ Parameters in **boldface** are required; the others are optional. ## Links -- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/optics/Pol_Bfield.comp) for `Pol_Bfield.comp`. +- [Source code](Pol_Bfield.comp) for `Pol_Bfield.comp`. --- diff --git a/mcstas-comps/optics/Pol_Bfield_stop.md b/mcstas-comps/optics/Pol_Bfield_stop.md index 5eade786a..8a9eb6fb8 100644 --- a/mcstas-comps/optics/Pol_Bfield_stop.md +++ b/mcstas-comps/optics/Pol_Bfield_stop.md @@ -54,7 +54,7 @@ Parameters in **boldface** are required; the others are optional. ## Links -- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/optics/Pol_Bfield_stop.comp) for `Pol_Bfield_stop.comp`. +- [Source code](Pol_Bfield_stop.comp) for `Pol_Bfield_stop.comp`. --- diff --git a/mcstas-comps/optics/Pol_FieldBox.md b/mcstas-comps/optics/Pol_FieldBox.md index 72e0b5246..db04e9804 100644 --- a/mcstas-comps/optics/Pol_FieldBox.md +++ b/mcstas-comps/optics/Pol_FieldBox.md @@ -30,7 +30,7 @@ Parameters in **boldface** are required; the others are optional. ## Links -- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/optics/Pol_FieldBox.comp) for `Pol_FieldBox.comp`. +- [Source code](Pol_FieldBox.comp) for `Pol_FieldBox.comp`. --- diff --git a/mcstas-comps/optics/Pol_SF_ideal.md b/mcstas-comps/optics/Pol_SF_ideal.md index 0ed9266ff..a230e66ea 100644 --- a/mcstas-comps/optics/Pol_SF_ideal.md +++ b/mcstas-comps/optics/Pol_SF_ideal.md @@ -33,7 +33,7 @@ Parameters in **boldface** are required; the others are optional. ## Links -- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/optics/Pol_SF_ideal.comp) for `Pol_SF_ideal.comp`. +- [Source code](Pol_SF_ideal.comp) for `Pol_SF_ideal.comp`. --- diff --git a/mcstas-comps/optics/Pol_bender.md b/mcstas-comps/optics/Pol_bender.md index f36c743cd..4f478122d 100644 --- a/mcstas-comps/optics/Pol_bender.md +++ b/mcstas-comps/optics/Pol_bender.md @@ -85,7 +85,7 @@ Parameters in **boldface** are required; the others are optional. ## Links -- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/optics/Pol_bender.comp) for `Pol_bender.comp`. +- [Source code](Pol_bender.comp) for `Pol_bender.comp`. --- diff --git a/mcstas-comps/optics/Pol_constBfield.md b/mcstas-comps/optics/Pol_constBfield.md index 782b67d35..eb4ca2344 100644 --- a/mcstas-comps/optics/Pol_constBfield.md +++ b/mcstas-comps/optics/Pol_constBfield.md @@ -35,7 +35,7 @@ Parameters in **boldface** are required; the others are optional. ## Links -- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/optics/Pol_constBfield.comp) for `Pol_constBfield.comp`. +- [Source code](Pol_constBfield.comp) for `Pol_constBfield.comp`. --- diff --git a/mcstas-comps/optics/Pol_guide_mirror.md b/mcstas-comps/optics/Pol_guide_mirror.md index 37b62d12d..22a1e7f2d 100644 --- a/mcstas-comps/optics/Pol_guide_mirror.md +++ b/mcstas-comps/optics/Pol_guide_mirror.md @@ -58,7 +58,7 @@ Parameters in **boldface** are required; the others are optional. ## Links -- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/optics/Pol_guide_mirror.comp) for `Pol_guide_mirror.comp`. +- [Source code](Pol_guide_mirror.comp) for `Pol_guide_mirror.comp`. --- diff --git a/mcstas-comps/optics/Pol_guide_vmirror.md b/mcstas-comps/optics/Pol_guide_vmirror.md index cc13f98c1..00ace811d 100644 --- a/mcstas-comps/optics/Pol_guide_vmirror.md +++ b/mcstas-comps/optics/Pol_guide_vmirror.md @@ -74,7 +74,7 @@ Parameters in **boldface** are required; the others are optional. ## Links -- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/optics/Pol_guide_vmirror.comp) for `Pol_guide_vmirror.comp`. +- [Source code](Pol_guide_vmirror.comp) for `Pol_guide_vmirror.comp`. --- diff --git a/mcstas-comps/optics/Pol_mirror.md b/mcstas-comps/optics/Pol_mirror.md index cc84c11c5..a8c734f6b 100644 --- a/mcstas-comps/optics/Pol_mirror.md +++ b/mcstas-comps/optics/Pol_mirror.md @@ -69,7 +69,7 @@ Parameters in **boldface** are required; the others are optional. ## Links -- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/optics/Pol_mirror.comp) for `Pol_mirror.comp`. +- [Source code](Pol_mirror.comp) for `Pol_mirror.comp`. --- diff --git a/mcstas-comps/optics/Pol_tabled_field.md b/mcstas-comps/optics/Pol_tabled_field.md index 99a0d2d61..357607db6 100644 --- a/mcstas-comps/optics/Pol_tabled_field.md +++ b/mcstas-comps/optics/Pol_tabled_field.md @@ -38,7 +38,7 @@ Parameters in **boldface** are required; the others are optional. ## Links -- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/optics/Pol_tabled_field.comp) for `Pol_tabled_field.comp`. +- [Source code](Pol_tabled_field.comp) for `Pol_tabled_field.comp`. --- diff --git a/mcstas-comps/optics/Refractor.md b/mcstas-comps/optics/Refractor.md index 5882ddcd6..5fc78da35 100644 --- a/mcstas-comps/optics/Refractor.md +++ b/mcstas-comps/optics/Refractor.md @@ -114,7 +114,7 @@ Parameters in **boldface** are required; the others are optional. ## Links -- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/optics/Refractor.comp) for `Refractor.comp`. +- [Source code](Refractor.comp) for `Refractor.comp`. - M. L. Goldberger et al, Phys. Rev. 71, 294 - 310 (1947) - Sears V.F. Neutron optics. An introduction to the theory of neutron optical phenomena and their applications. Oxford University Press, 1989. - H. Park et al. Measured operational neutron energies of compound refractive lenses. Nuclear Instruments and Methods B, 251:507-511, 2006. diff --git a/mcstas-comps/optics/Rotator.md b/mcstas-comps/optics/Rotator.md index 0b45f8189..8f204a459 100644 --- a/mcstas-comps/optics/Rotator.md +++ b/mcstas-comps/optics/Rotator.md @@ -38,7 +38,7 @@ Parameters in **boldface** are required; the others are optional. ## Links -- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/optics/Rotator.comp) for `Rotator.comp`. +- [Source code](Rotator.comp) for `Rotator.comp`. --- diff --git a/mcstas-comps/optics/Selector.md b/mcstas-comps/optics/Selector.md index 12a07dbc1..d248877da 100644 --- a/mcstas-comps/optics/Selector.md +++ b/mcstas-comps/optics/Selector.md @@ -51,7 +51,7 @@ Parameters in **boldface** are required; the others are optional. ## Links -- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/optics/Selector.comp) for `Selector.comp`. +- [Source code](Selector.comp) for `Selector.comp`. - See also Additional notes March 1999 and Jan 2000. --- diff --git a/mcstas-comps/optics/Set_pol.md b/mcstas-comps/optics/Set_pol.md index 71d033085..53605309c 100644 --- a/mcstas-comps/optics/Set_pol.md +++ b/mcstas-comps/optics/Set_pol.md @@ -35,7 +35,7 @@ Parameters in **boldface** are required; the others are optional. ## Links -- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/optics/Set_pol.comp) for `Set_pol.comp`. +- [Source code](Set_pol.comp) for `Set_pol.comp`. --- diff --git a/mcstas-comps/optics/Slit.md b/mcstas-comps/optics/Slit.md index fc08e0879..9523fdeb7 100644 --- a/mcstas-comps/optics/Slit.md +++ b/mcstas-comps/optics/Slit.md @@ -39,7 +39,7 @@ Parameters in **boldface** are required; the others are optional. ## Links -- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/optics/Slit.comp) for `Slit.comp`. +- [Source code](Slit.comp) for `Slit.comp`. --- diff --git a/mcstas-comps/optics/V_selector.md b/mcstas-comps/optics/V_selector.md index 7fade51b7..c2e922d55 100644 --- a/mcstas-comps/optics/V_selector.md +++ b/mcstas-comps/optics/V_selector.md @@ -44,7 +44,7 @@ Parameters in **boldface** are required; the others are optional. ## Links -- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/optics/V_selector.comp) for `V_selector.comp`. +- [Source code](V_selector.comp) for `V_selector.comp`. --- diff --git a/mcstas-comps/optics/Vitess_ChopperFermi.md b/mcstas-comps/optics/Vitess_ChopperFermi.md index 082402b36..01af65834 100644 --- a/mcstas-comps/optics/Vitess_ChopperFermi.md +++ b/mcstas-comps/optics/Vitess_ChopperFermi.md @@ -87,7 +87,7 @@ Parameters in **boldface** are required; the others are optional. ## Links -- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/optics/Vitess_ChopperFermi.comp) for `Vitess_ChopperFermi.comp`. +- [Source code](Vitess_ChopperFermi.comp) for `Vitess_ChopperFermi.comp`. - straight VITESS Fermi chopper - curved VITESS Fermi chopper diff --git a/mcstas-comps/samples/Incoherent.md b/mcstas-comps/samples/Incoherent.md index 2953d4f5d..3acba0f6b 100644 --- a/mcstas-comps/samples/Incoherent.md +++ b/mcstas-comps/samples/Incoherent.md @@ -86,7 +86,7 @@ Parameters in **boldface** are required; the others are optional. ## Links -- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/samples/Incoherent.comp) for `Incoherent.comp`. +- [Source code](Incoherent.comp) for `Incoherent.comp`. - Cross sections for single elements - Web Elements diff --git a/mcstas-comps/samples/Isotropic_Sqw.md b/mcstas-comps/samples/Isotropic_Sqw.md index 326aea922..23acf459b 100644 --- a/mcstas-comps/samples/Isotropic_Sqw.md +++ b/mcstas-comps/samples/Isotropic_Sqw.md @@ -218,7 +218,7 @@ Parameters in **boldface** are required; the others are optional. ## Links -- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/samples/Isotropic_Sqw.comp) for `Isotropic_Sqw.comp`. +- [Source code](Isotropic_Sqw.comp) for `Isotropic_Sqw.comp`. - E. Farhi, V. Hugouvieux, M.R. Johnson, and W. Kob, Journal of Computational Physics 228 (2009) 5251-5261 "Virtual experiments: Combining realistic neutron scattering instrument and sample simulations" - Hugouvieux V, Farhi E, Johnson MR, Physica B, 350 (2004) 151 "Virtual neutron scattering experiments" - Hugouvieux V, PhD, University of Montpellier II, France (2004). diff --git a/mcstas-comps/samples/Magnon_bcc.md b/mcstas-comps/samples/Magnon_bcc.md index 23ba0c74b..472716ba8 100644 --- a/mcstas-comps/samples/Magnon_bcc.md +++ b/mcstas-comps/samples/Magnon_bcc.md @@ -71,7 +71,7 @@ Parameters in **boldface** are required; the others are optional. ## Links -- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/samples/Magnon_bcc.comp) for `Magnon_bcc.comp`. +- [Source code](Magnon_bcc.comp) for `Magnon_bcc.comp`. - The test/example instrument Test_Magnon.instr. --- diff --git a/mcstas-comps/samples/NCrystal_sample.md b/mcstas-comps/samples/NCrystal_sample.md index 165755af6..3a46d87de 100644 --- a/mcstas-comps/samples/NCrystal_sample.md +++ b/mcstas-comps/samples/NCrystal_sample.md @@ -48,7 +48,7 @@ Parameters in **boldface** are required; the others are optional. ## Links -- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/samples/NCrystal_sample.comp) for `NCrystal_sample.comp`. +- [Source code](NCrystal_sample.comp) for `NCrystal_sample.comp`. - The NCrystal wiki at https://github.com/mctools/ncrystal/wiki. --- diff --git a/mcstas-comps/samples/Phonon_simple.md b/mcstas-comps/samples/Phonon_simple.md index d4dede674..14b4329ab 100644 --- a/mcstas-comps/samples/Phonon_simple.md +++ b/mcstas-comps/samples/Phonon_simple.md @@ -61,7 +61,7 @@ Parameters in **boldface** are required; the others are optional. ## Links -- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/samples/Phonon_simple.comp) for `Phonon_simple.comp`. +- [Source code](Phonon_simple.comp) for `Phonon_simple.comp`. - The test/example instrument Test_Phonon.instr. --- diff --git a/mcstas-comps/samples/Powder1.md b/mcstas-comps/samples/Powder1.md index 1dfbbacce..2600577b7 100644 --- a/mcstas-comps/samples/Powder1.md +++ b/mcstas-comps/samples/Powder1.md @@ -46,7 +46,7 @@ Parameters in **boldface** are required; the others are optional. ## Links -- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/samples/Powder1.comp) for `Powder1.comp`. +- [Source code](Powder1.comp) for `Powder1.comp`. - - Test results (not up-to-date). - See also: Powder1, Powder2 and PowderN diff --git a/mcstas-comps/samples/PowderN.md b/mcstas-comps/samples/PowderN.md index cbbf5cd50..3080212b2 100644 --- a/mcstas-comps/samples/PowderN.md +++ b/mcstas-comps/samples/PowderN.md @@ -163,7 +163,7 @@ Parameters in **boldface** are required; the others are optional. ## Links -- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/samples/PowderN.comp) for `PowderN.comp`. +- [Source code](PowderN.comp) for `PowderN.comp`. - "Validation of a realistic powder sample using data from DMC at PSI" Willendrup P, Filges U, Keller L, Farhi E, Lefmann K, Physica B-Cond Matt 385 (2006) 1032. - See also: Powder1, Single_crystal - See ICSD Inorganic Crystal Structure Database diff --git a/mcstas-comps/samples/Res_sample.md b/mcstas-comps/samples/Res_sample.md index ecd3d6d36..333bcef11 100644 --- a/mcstas-comps/samples/Res_sample.md +++ b/mcstas-comps/samples/Res_sample.md @@ -58,7 +58,7 @@ Parameters in **boldface** are required; the others are optional. ## Links -- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/samples/Res_sample.comp) for `Res_sample.comp`. +- [Source code](Res_sample.comp) for `Res_sample.comp`. --- diff --git a/mcstas-comps/samples/SANS_spheres2.md b/mcstas-comps/samples/SANS_spheres2.md index 350ee07b3..3c7b7e8ad 100644 --- a/mcstas-comps/samples/SANS_spheres2.md +++ b/mcstas-comps/samples/SANS_spheres2.md @@ -48,7 +48,7 @@ Parameters in **boldface** are required; the others are optional. ## Links -- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/samples/SANS_spheres2.comp) for `SANS_spheres2.comp`. +- [Source code](SANS_spheres2.comp) for `SANS_spheres2.comp`. --- diff --git a/mcstas-comps/samples/Sans_spheres.md b/mcstas-comps/samples/Sans_spheres.md index e5553d373..ca33910c9 100644 --- a/mcstas-comps/samples/Sans_spheres.md +++ b/mcstas-comps/samples/Sans_spheres.md @@ -46,7 +46,7 @@ Parameters in **boldface** are required; the others are optional. ## Links -- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/samples/Sans_spheres.comp) for `Sans_spheres.comp`. +- [Source code](Sans_spheres.comp) for `Sans_spheres.comp`. - The test/example instrument SANS.instr. --- diff --git a/mcstas-comps/samples/SasView_model.md b/mcstas-comps/samples/SasView_model.md index 121b4988e..9d7d7e647 100644 --- a/mcstas-comps/samples/SasView_model.md +++ b/mcstas-comps/samples/SasView_model.md @@ -2142,7 +2142,7 @@ Parameters in **boldface** are required; the others are optional. ## Links -- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/samples/SasView_model.comp) for `SasView_model.comp`. +- [Source code](SasView_model.comp) for `SasView_model.comp`. - http://www.sasview.org/sasview/user/models/model_functions.html --- diff --git a/mcstas-comps/samples/Single_crystal.md b/mcstas-comps/samples/Single_crystal.md index 79761fa91..9d0e12806 100644 --- a/mcstas-comps/samples/Single_crystal.md +++ b/mcstas-comps/samples/Single_crystal.md @@ -189,7 +189,7 @@ Parameters in **boldface** are required; the others are optional. ## Links -- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/samples/Single_crystal.comp) for `Single_crystal.comp`. +- [Source code](Single_crystal.comp) for `Single_crystal.comp`. - See ICSD Inorganic Crystal Structure Database - Cross sections for single elements - Test - results (not up-to-date). diff --git a/mcstas-comps/sasmodels/SasView_adsorbed_layer.md b/mcstas-comps/sasmodels/SasView_adsorbed_layer.md index 43d08bb08..3abce1c71 100644 --- a/mcstas-comps/sasmodels/SasView_adsorbed_layer.md +++ b/mcstas-comps/sasmodels/SasView_adsorbed_layer.md @@ -54,7 +54,7 @@ Parameters in **boldface** are required; the others are optional. ## Links -- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/sasmodels/SasView_adsorbed_layer.comp) for `SasView_adsorbed_layer.comp`. +- [Source code](SasView_adsorbed_layer.comp) for `SasView_adsorbed_layer.comp`. --- diff --git a/mcstas-comps/sasmodels/SasView_barbell.md b/mcstas-comps/sasmodels/SasView_barbell.md index 4fb74595f..da1b60f36 100644 --- a/mcstas-comps/sasmodels/SasView_barbell.md +++ b/mcstas-comps/sasmodels/SasView_barbell.md @@ -54,7 +54,7 @@ Parameters in **boldface** are required; the others are optional. ## Links -- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/sasmodels/SasView_barbell.comp) for `SasView_barbell.comp`. +- [Source code](SasView_barbell.comp) for `SasView_barbell.comp`. --- diff --git a/mcstas-comps/sasmodels/SasView_barbell_aniso.md b/mcstas-comps/sasmodels/SasView_barbell_aniso.md index 2b34eb871..3017d4ffb 100644 --- a/mcstas-comps/sasmodels/SasView_barbell_aniso.md +++ b/mcstas-comps/sasmodels/SasView_barbell_aniso.md @@ -58,7 +58,7 @@ Parameters in **boldface** are required; the others are optional. ## Links -- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/sasmodels/SasView_barbell_aniso.comp) for `SasView_barbell_aniso.comp`. +- [Source code](SasView_barbell_aniso.comp) for `SasView_barbell_aniso.comp`. --- diff --git a/mcstas-comps/sasmodels/SasView_bcc_paracrystal.md b/mcstas-comps/sasmodels/SasView_bcc_paracrystal.md index 912e5fde0..604dee11f 100644 --- a/mcstas-comps/sasmodels/SasView_bcc_paracrystal.md +++ b/mcstas-comps/sasmodels/SasView_bcc_paracrystal.md @@ -52,7 +52,7 @@ Parameters in **boldface** are required; the others are optional. ## Links -- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/sasmodels/SasView_bcc_paracrystal.comp) for `SasView_bcc_paracrystal.comp`. +- [Source code](SasView_bcc_paracrystal.comp) for `SasView_bcc_paracrystal.comp`. --- diff --git a/mcstas-comps/sasmodels/SasView_bcc_paracrystal_aniso.md b/mcstas-comps/sasmodels/SasView_bcc_paracrystal_aniso.md index 4cf693c0d..f14500629 100644 --- a/mcstas-comps/sasmodels/SasView_bcc_paracrystal_aniso.md +++ b/mcstas-comps/sasmodels/SasView_bcc_paracrystal_aniso.md @@ -58,7 +58,7 @@ Parameters in **boldface** are required; the others are optional. ## Links -- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/sasmodels/SasView_bcc_paracrystal_aniso.comp) for `SasView_bcc_paracrystal_aniso.comp`. +- [Source code](SasView_bcc_paracrystal_aniso.comp) for `SasView_bcc_paracrystal_aniso.comp`. --- diff --git a/mcstas-comps/sasmodels/SasView_binary_hard_sphere.md b/mcstas-comps/sasmodels/SasView_binary_hard_sphere.md index b4170d2b2..b5980b602 100644 --- a/mcstas-comps/sasmodels/SasView_binary_hard_sphere.md +++ b/mcstas-comps/sasmodels/SasView_binary_hard_sphere.md @@ -55,7 +55,7 @@ Parameters in **boldface** are required; the others are optional. ## Links -- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/sasmodels/SasView_binary_hard_sphere.comp) for `SasView_binary_hard_sphere.comp`. +- [Source code](SasView_binary_hard_sphere.comp) for `SasView_binary_hard_sphere.comp`. --- diff --git a/mcstas-comps/sasmodels/SasView_broad_peak.md b/mcstas-comps/sasmodels/SasView_broad_peak.md index 1d936236a..13e454850 100644 --- a/mcstas-comps/sasmodels/SasView_broad_peak.md +++ b/mcstas-comps/sasmodels/SasView_broad_peak.md @@ -54,7 +54,7 @@ Parameters in **boldface** are required; the others are optional. ## Links -- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/sasmodels/SasView_broad_peak.comp) for `SasView_broad_peak.comp`. +- [Source code](SasView_broad_peak.comp) for `SasView_broad_peak.comp`. --- diff --git a/mcstas-comps/sasmodels/SasView_capped_cylinder.md b/mcstas-comps/sasmodels/SasView_capped_cylinder.md index 1ceaff414..31630cf2f 100644 --- a/mcstas-comps/sasmodels/SasView_capped_cylinder.md +++ b/mcstas-comps/sasmodels/SasView_capped_cylinder.md @@ -54,7 +54,7 @@ Parameters in **boldface** are required; the others are optional. ## Links -- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/sasmodels/SasView_capped_cylinder.comp) for `SasView_capped_cylinder.comp`. +- [Source code](SasView_capped_cylinder.comp) for `SasView_capped_cylinder.comp`. --- diff --git a/mcstas-comps/sasmodels/SasView_capped_cylinder_aniso.md b/mcstas-comps/sasmodels/SasView_capped_cylinder_aniso.md index 6031f6328..3710ecadd 100644 --- a/mcstas-comps/sasmodels/SasView_capped_cylinder_aniso.md +++ b/mcstas-comps/sasmodels/SasView_capped_cylinder_aniso.md @@ -58,7 +58,7 @@ Parameters in **boldface** are required; the others are optional. ## Links -- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/sasmodels/SasView_capped_cylinder_aniso.comp) for `SasView_capped_cylinder_aniso.comp`. +- [Source code](SasView_capped_cylinder_aniso.comp) for `SasView_capped_cylinder_aniso.comp`. --- diff --git a/mcstas-comps/sasmodels/SasView_core_multi_shell.md b/mcstas-comps/sasmodels/SasView_core_multi_shell.md index b463bf83a..cba0fab23 100644 --- a/mcstas-comps/sasmodels/SasView_core_multi_shell.md +++ b/mcstas-comps/sasmodels/SasView_core_multi_shell.md @@ -31,7 +31,7 @@ Parameters in **boldface** are required; the others are optional. ## Links -- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/sasmodels/SasView_core_multi_shell.comp) for `SasView_core_multi_shell.comp`. +- [Source code](SasView_core_multi_shell.comp) for `SasView_core_multi_shell.comp`. --- diff --git a/mcstas-comps/sasmodels/SasView_core_shell_bicelle.md b/mcstas-comps/sasmodels/SasView_core_shell_bicelle.md index 627f6b3a3..0952b8f48 100644 --- a/mcstas-comps/sasmodels/SasView_core_shell_bicelle.md +++ b/mcstas-comps/sasmodels/SasView_core_shell_bicelle.md @@ -58,7 +58,7 @@ Parameters in **boldface** are required; the others are optional. ## Links -- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/sasmodels/SasView_core_shell_bicelle.comp) for `SasView_core_shell_bicelle.comp`. +- [Source code](SasView_core_shell_bicelle.comp) for `SasView_core_shell_bicelle.comp`. --- diff --git a/mcstas-comps/sasmodels/SasView_core_shell_bicelle_aniso.md b/mcstas-comps/sasmodels/SasView_core_shell_bicelle_aniso.md index b86eff05a..82899120c 100644 --- a/mcstas-comps/sasmodels/SasView_core_shell_bicelle_aniso.md +++ b/mcstas-comps/sasmodels/SasView_core_shell_bicelle_aniso.md @@ -62,7 +62,7 @@ Parameters in **boldface** are required; the others are optional. ## Links -- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/sasmodels/SasView_core_shell_bicelle_aniso.comp) for `SasView_core_shell_bicelle_aniso.comp`. +- [Source code](SasView_core_shell_bicelle_aniso.comp) for `SasView_core_shell_bicelle_aniso.comp`. --- diff --git a/mcstas-comps/sasmodels/SasView_core_shell_bicelle_elliptical.md b/mcstas-comps/sasmodels/SasView_core_shell_bicelle_elliptical.md index 78106483d..a7bb26049 100644 --- a/mcstas-comps/sasmodels/SasView_core_shell_bicelle_elliptical.md +++ b/mcstas-comps/sasmodels/SasView_core_shell_bicelle_elliptical.md @@ -59,7 +59,7 @@ Parameters in **boldface** are required; the others are optional. ## Links -- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/sasmodels/SasView_core_shell_bicelle_elliptical.comp) for `SasView_core_shell_bicelle_elliptical.comp`. +- [Source code](SasView_core_shell_bicelle_elliptical.comp) for `SasView_core_shell_bicelle_elliptical.comp`. --- diff --git a/mcstas-comps/sasmodels/SasView_core_shell_bicelle_elliptical_aniso.md b/mcstas-comps/sasmodels/SasView_core_shell_bicelle_elliptical_aniso.md index 743135410..2423fb840 100644 --- a/mcstas-comps/sasmodels/SasView_core_shell_bicelle_elliptical_aniso.md +++ b/mcstas-comps/sasmodels/SasView_core_shell_bicelle_elliptical_aniso.md @@ -65,7 +65,7 @@ Parameters in **boldface** are required; the others are optional. ## Links -- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/sasmodels/SasView_core_shell_bicelle_elliptical_aniso.comp) for `SasView_core_shell_bicelle_elliptical_aniso.comp`. +- [Source code](SasView_core_shell_bicelle_elliptical_aniso.comp) for `SasView_core_shell_bicelle_elliptical_aniso.comp`. --- diff --git a/mcstas-comps/sasmodels/SasView_core_shell_bicelle_elliptical_belt_rough.md b/mcstas-comps/sasmodels/SasView_core_shell_bicelle_elliptical_belt_rough.md index 2e1fbda90..c027da92b 100644 --- a/mcstas-comps/sasmodels/SasView_core_shell_bicelle_elliptical_belt_rough.md +++ b/mcstas-comps/sasmodels/SasView_core_shell_bicelle_elliptical_belt_rough.md @@ -60,7 +60,7 @@ Parameters in **boldface** are required; the others are optional. ## Links -- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/sasmodels/SasView_core_shell_bicelle_elliptical_belt_rough.comp) for `SasView_core_shell_bicelle_elliptical_belt_rough.comp`. +- [Source code](SasView_core_shell_bicelle_elliptical_belt_rough.comp) for `SasView_core_shell_bicelle_elliptical_belt_rough.comp`. --- diff --git a/mcstas-comps/sasmodels/SasView_core_shell_bicelle_elliptical_belt_rough_aniso.md b/mcstas-comps/sasmodels/SasView_core_shell_bicelle_elliptical_belt_rough_aniso.md index 7a747e9a4..ba101119f 100644 --- a/mcstas-comps/sasmodels/SasView_core_shell_bicelle_elliptical_belt_rough_aniso.md +++ b/mcstas-comps/sasmodels/SasView_core_shell_bicelle_elliptical_belt_rough_aniso.md @@ -66,7 +66,7 @@ Parameters in **boldface** are required; the others are optional. ## Links -- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/sasmodels/SasView_core_shell_bicelle_elliptical_belt_rough_aniso.comp) for `SasView_core_shell_bicelle_elliptical_belt_rough_aniso.comp`. +- [Source code](SasView_core_shell_bicelle_elliptical_belt_rough_aniso.comp) for `SasView_core_shell_bicelle_elliptical_belt_rough_aniso.comp`. --- diff --git a/mcstas-comps/sasmodels/SasView_core_shell_cylinder.md b/mcstas-comps/sasmodels/SasView_core_shell_cylinder.md index afe3224b0..f42a09b21 100644 --- a/mcstas-comps/sasmodels/SasView_core_shell_cylinder.md +++ b/mcstas-comps/sasmodels/SasView_core_shell_cylinder.md @@ -55,7 +55,7 @@ Parameters in **boldface** are required; the others are optional. ## Links -- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/sasmodels/SasView_core_shell_cylinder.comp) for `SasView_core_shell_cylinder.comp`. +- [Source code](SasView_core_shell_cylinder.comp) for `SasView_core_shell_cylinder.comp`. --- diff --git a/mcstas-comps/sasmodels/SasView_core_shell_cylinder_aniso.md b/mcstas-comps/sasmodels/SasView_core_shell_cylinder_aniso.md index 875ab091d..3e0530ec1 100644 --- a/mcstas-comps/sasmodels/SasView_core_shell_cylinder_aniso.md +++ b/mcstas-comps/sasmodels/SasView_core_shell_cylinder_aniso.md @@ -59,7 +59,7 @@ Parameters in **boldface** are required; the others are optional. ## Links -- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/sasmodels/SasView_core_shell_cylinder_aniso.comp) for `SasView_core_shell_cylinder_aniso.comp`. +- [Source code](SasView_core_shell_cylinder_aniso.comp) for `SasView_core_shell_cylinder_aniso.comp`. --- diff --git a/mcstas-comps/sasmodels/SasView_core_shell_ellipsoid.md b/mcstas-comps/sasmodels/SasView_core_shell_ellipsoid.md index 137aabfdf..196cab4e7 100644 --- a/mcstas-comps/sasmodels/SasView_core_shell_ellipsoid.md +++ b/mcstas-comps/sasmodels/SasView_core_shell_ellipsoid.md @@ -55,7 +55,7 @@ Parameters in **boldface** are required; the others are optional. ## Links -- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/sasmodels/SasView_core_shell_ellipsoid.comp) for `SasView_core_shell_ellipsoid.comp`. +- [Source code](SasView_core_shell_ellipsoid.comp) for `SasView_core_shell_ellipsoid.comp`. --- diff --git a/mcstas-comps/sasmodels/SasView_core_shell_ellipsoid_aniso.md b/mcstas-comps/sasmodels/SasView_core_shell_ellipsoid_aniso.md index bae8b5bb0..d2027627d 100644 --- a/mcstas-comps/sasmodels/SasView_core_shell_ellipsoid_aniso.md +++ b/mcstas-comps/sasmodels/SasView_core_shell_ellipsoid_aniso.md @@ -59,7 +59,7 @@ Parameters in **boldface** are required; the others are optional. ## Links -- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/sasmodels/SasView_core_shell_ellipsoid_aniso.comp) for `SasView_core_shell_ellipsoid_aniso.comp`. +- [Source code](SasView_core_shell_ellipsoid_aniso.comp) for `SasView_core_shell_ellipsoid_aniso.comp`. --- diff --git a/mcstas-comps/sasmodels/SasView_core_shell_parallelepiped.md b/mcstas-comps/sasmodels/SasView_core_shell_parallelepiped.md index 79e7aa860..5823baaad 100644 --- a/mcstas-comps/sasmodels/SasView_core_shell_parallelepiped.md +++ b/mcstas-comps/sasmodels/SasView_core_shell_parallelepiped.md @@ -63,7 +63,7 @@ Parameters in **boldface** are required; the others are optional. ## Links -- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/sasmodels/SasView_core_shell_parallelepiped.comp) for `SasView_core_shell_parallelepiped.comp`. +- [Source code](SasView_core_shell_parallelepiped.comp) for `SasView_core_shell_parallelepiped.comp`. --- diff --git a/mcstas-comps/sasmodels/SasView_core_shell_parallelepiped_aniso.md b/mcstas-comps/sasmodels/SasView_core_shell_parallelepiped_aniso.md index 35d6a74b3..35d090d50 100644 --- a/mcstas-comps/sasmodels/SasView_core_shell_parallelepiped_aniso.md +++ b/mcstas-comps/sasmodels/SasView_core_shell_parallelepiped_aniso.md @@ -69,7 +69,7 @@ Parameters in **boldface** are required; the others are optional. ## Links -- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/sasmodels/SasView_core_shell_parallelepiped_aniso.comp) for `SasView_core_shell_parallelepiped_aniso.comp`. +- [Source code](SasView_core_shell_parallelepiped_aniso.comp) for `SasView_core_shell_parallelepiped_aniso.comp`. --- diff --git a/mcstas-comps/sasmodels/SasView_core_shell_sphere.md b/mcstas-comps/sasmodels/SasView_core_shell_sphere.md index 1ecfa6936..84a7de148 100644 --- a/mcstas-comps/sasmodels/SasView_core_shell_sphere.md +++ b/mcstas-comps/sasmodels/SasView_core_shell_sphere.md @@ -53,7 +53,7 @@ Parameters in **boldface** are required; the others are optional. ## Links -- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/sasmodels/SasView_core_shell_sphere.comp) for `SasView_core_shell_sphere.comp`. +- [Source code](SasView_core_shell_sphere.comp) for `SasView_core_shell_sphere.comp`. --- diff --git a/mcstas-comps/sasmodels/SasView_correlation_length.md b/mcstas-comps/sasmodels/SasView_correlation_length.md index cf304ce36..3b9383d7d 100644 --- a/mcstas-comps/sasmodels/SasView_correlation_length.md +++ b/mcstas-comps/sasmodels/SasView_correlation_length.md @@ -52,7 +52,7 @@ Parameters in **boldface** are required; the others are optional. ## Links -- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/sasmodels/SasView_correlation_length.comp) for `SasView_correlation_length.comp`. +- [Source code](SasView_correlation_length.comp) for `SasView_correlation_length.comp`. --- diff --git a/mcstas-comps/sasmodels/SasView_cylinder.md b/mcstas-comps/sasmodels/SasView_cylinder.md index aad41ecf8..42747263a 100644 --- a/mcstas-comps/sasmodels/SasView_cylinder.md +++ b/mcstas-comps/sasmodels/SasView_cylinder.md @@ -52,7 +52,7 @@ Parameters in **boldface** are required; the others are optional. ## Links -- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/sasmodels/SasView_cylinder.comp) for `SasView_cylinder.comp`. +- [Source code](SasView_cylinder.comp) for `SasView_cylinder.comp`. --- diff --git a/mcstas-comps/sasmodels/SasView_cylinder_aniso.md b/mcstas-comps/sasmodels/SasView_cylinder_aniso.md index 22685c254..3c31fe2e5 100644 --- a/mcstas-comps/sasmodels/SasView_cylinder_aniso.md +++ b/mcstas-comps/sasmodels/SasView_cylinder_aniso.md @@ -56,7 +56,7 @@ Parameters in **boldface** are required; the others are optional. ## Links -- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/sasmodels/SasView_cylinder_aniso.comp) for `SasView_cylinder_aniso.comp`. +- [Source code](SasView_cylinder_aniso.comp) for `SasView_cylinder_aniso.comp`. --- diff --git a/mcstas-comps/sasmodels/SasView_dab.md b/mcstas-comps/sasmodels/SasView_dab.md index c77f649df..d82580eca 100644 --- a/mcstas-comps/sasmodels/SasView_dab.md +++ b/mcstas-comps/sasmodels/SasView_dab.md @@ -48,7 +48,7 @@ Parameters in **boldface** are required; the others are optional. ## Links -- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/sasmodels/SasView_dab.comp) for `SasView_dab.comp`. +- [Source code](SasView_dab.comp) for `SasView_dab.comp`. --- diff --git a/mcstas-comps/sasmodels/SasView_ellipsoid.md b/mcstas-comps/sasmodels/SasView_ellipsoid.md index 2995e186d..6e9d08dba 100644 --- a/mcstas-comps/sasmodels/SasView_ellipsoid.md +++ b/mcstas-comps/sasmodels/SasView_ellipsoid.md @@ -52,7 +52,7 @@ Parameters in **boldface** are required; the others are optional. ## Links -- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/sasmodels/SasView_ellipsoid.comp) for `SasView_ellipsoid.comp`. +- [Source code](SasView_ellipsoid.comp) for `SasView_ellipsoid.comp`. --- diff --git a/mcstas-comps/sasmodels/SasView_ellipsoid_aniso.md b/mcstas-comps/sasmodels/SasView_ellipsoid_aniso.md index d1665d6c0..f4bfe0e7e 100644 --- a/mcstas-comps/sasmodels/SasView_ellipsoid_aniso.md +++ b/mcstas-comps/sasmodels/SasView_ellipsoid_aniso.md @@ -56,7 +56,7 @@ Parameters in **boldface** are required; the others are optional. ## Links -- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/sasmodels/SasView_ellipsoid_aniso.comp) for `SasView_ellipsoid_aniso.comp`. +- [Source code](SasView_ellipsoid_aniso.comp) for `SasView_ellipsoid_aniso.comp`. --- diff --git a/mcstas-comps/sasmodels/SasView_elliptical_cylinder.md b/mcstas-comps/sasmodels/SasView_elliptical_cylinder.md index ffa4a03b4..c288fe6e6 100644 --- a/mcstas-comps/sasmodels/SasView_elliptical_cylinder.md +++ b/mcstas-comps/sasmodels/SasView_elliptical_cylinder.md @@ -53,7 +53,7 @@ Parameters in **boldface** are required; the others are optional. ## Links -- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/sasmodels/SasView_elliptical_cylinder.comp) for `SasView_elliptical_cylinder.comp`. +- [Source code](SasView_elliptical_cylinder.comp) for `SasView_elliptical_cylinder.comp`. --- diff --git a/mcstas-comps/sasmodels/SasView_elliptical_cylinder_aniso.md b/mcstas-comps/sasmodels/SasView_elliptical_cylinder_aniso.md index 7ec7fbd8b..89e82727c 100644 --- a/mcstas-comps/sasmodels/SasView_elliptical_cylinder_aniso.md +++ b/mcstas-comps/sasmodels/SasView_elliptical_cylinder_aniso.md @@ -59,7 +59,7 @@ Parameters in **boldface** are required; the others are optional. ## Links -- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/sasmodels/SasView_elliptical_cylinder_aniso.comp) for `SasView_elliptical_cylinder_aniso.comp`. +- [Source code](SasView_elliptical_cylinder_aniso.comp) for `SasView_elliptical_cylinder_aniso.comp`. --- diff --git a/mcstas-comps/sasmodels/SasView_fcc_paracrystal.md b/mcstas-comps/sasmodels/SasView_fcc_paracrystal.md index 32e636548..257369125 100644 --- a/mcstas-comps/sasmodels/SasView_fcc_paracrystal.md +++ b/mcstas-comps/sasmodels/SasView_fcc_paracrystal.md @@ -52,7 +52,7 @@ Parameters in **boldface** are required; the others are optional. ## Links -- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/sasmodels/SasView_fcc_paracrystal.comp) for `SasView_fcc_paracrystal.comp`. +- [Source code](SasView_fcc_paracrystal.comp) for `SasView_fcc_paracrystal.comp`. --- diff --git a/mcstas-comps/sasmodels/SasView_fcc_paracrystal_aniso.md b/mcstas-comps/sasmodels/SasView_fcc_paracrystal_aniso.md index 59338c6d8..3579fcdf6 100644 --- a/mcstas-comps/sasmodels/SasView_fcc_paracrystal_aniso.md +++ b/mcstas-comps/sasmodels/SasView_fcc_paracrystal_aniso.md @@ -58,7 +58,7 @@ Parameters in **boldface** are required; the others are optional. ## Links -- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/sasmodels/SasView_fcc_paracrystal_aniso.comp) for `SasView_fcc_paracrystal_aniso.comp`. +- [Source code](SasView_fcc_paracrystal_aniso.comp) for `SasView_fcc_paracrystal_aniso.comp`. --- diff --git a/mcstas-comps/sasmodels/SasView_flexible_cylinder.md b/mcstas-comps/sasmodels/SasView_flexible_cylinder.md index bcf27d59c..2cac2b784 100644 --- a/mcstas-comps/sasmodels/SasView_flexible_cylinder.md +++ b/mcstas-comps/sasmodels/SasView_flexible_cylinder.md @@ -54,7 +54,7 @@ Parameters in **boldface** are required; the others are optional. ## Links -- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/sasmodels/SasView_flexible_cylinder.comp) for `SasView_flexible_cylinder.comp`. +- [Source code](SasView_flexible_cylinder.comp) for `SasView_flexible_cylinder.comp`. --- diff --git a/mcstas-comps/sasmodels/SasView_flexible_cylinder_elliptical.md b/mcstas-comps/sasmodels/SasView_flexible_cylinder_elliptical.md index bd36e57d8..3839e937d 100644 --- a/mcstas-comps/sasmodels/SasView_flexible_cylinder_elliptical.md +++ b/mcstas-comps/sasmodels/SasView_flexible_cylinder_elliptical.md @@ -55,7 +55,7 @@ Parameters in **boldface** are required; the others are optional. ## Links -- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/sasmodels/SasView_flexible_cylinder_elliptical.comp) for `SasView_flexible_cylinder_elliptical.comp`. +- [Source code](SasView_flexible_cylinder_elliptical.comp) for `SasView_flexible_cylinder_elliptical.comp`. --- diff --git a/mcstas-comps/sasmodels/SasView_fractal.md b/mcstas-comps/sasmodels/SasView_fractal.md index 9dbeff4e3..9d939bbf2 100644 --- a/mcstas-comps/sasmodels/SasView_fractal.md +++ b/mcstas-comps/sasmodels/SasView_fractal.md @@ -54,7 +54,7 @@ Parameters in **boldface** are required; the others are optional. ## Links -- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/sasmodels/SasView_fractal.comp) for `SasView_fractal.comp`. +- [Source code](SasView_fractal.comp) for `SasView_fractal.comp`. --- diff --git a/mcstas-comps/sasmodels/SasView_fractal_core_shell.md b/mcstas-comps/sasmodels/SasView_fractal_core_shell.md index 2584cc9c8..07173dc47 100644 --- a/mcstas-comps/sasmodels/SasView_fractal_core_shell.md +++ b/mcstas-comps/sasmodels/SasView_fractal_core_shell.md @@ -57,7 +57,7 @@ Parameters in **boldface** are required; the others are optional. ## Links -- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/sasmodels/SasView_fractal_core_shell.comp) for `SasView_fractal_core_shell.comp`. +- [Source code](SasView_fractal_core_shell.comp) for `SasView_fractal_core_shell.comp`. --- diff --git a/mcstas-comps/sasmodels/SasView_fuzzy_sphere.md b/mcstas-comps/sasmodels/SasView_fuzzy_sphere.md index 015032a5e..9f9565530 100644 --- a/mcstas-comps/sasmodels/SasView_fuzzy_sphere.md +++ b/mcstas-comps/sasmodels/SasView_fuzzy_sphere.md @@ -51,7 +51,7 @@ Parameters in **boldface** are required; the others are optional. ## Links -- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/sasmodels/SasView_fuzzy_sphere.comp) for `SasView_fuzzy_sphere.comp`. +- [Source code](SasView_fuzzy_sphere.comp) for `SasView_fuzzy_sphere.comp`. --- diff --git a/mcstas-comps/sasmodels/SasView_gauss_lorentz_gel.md b/mcstas-comps/sasmodels/SasView_gauss_lorentz_gel.md index 3938d6c0b..6ca0657ad 100644 --- a/mcstas-comps/sasmodels/SasView_gauss_lorentz_gel.md +++ b/mcstas-comps/sasmodels/SasView_gauss_lorentz_gel.md @@ -52,7 +52,7 @@ Parameters in **boldface** are required; the others are optional. ## Links -- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/sasmodels/SasView_gauss_lorentz_gel.comp) for `SasView_gauss_lorentz_gel.comp`. +- [Source code](SasView_gauss_lorentz_gel.comp) for `SasView_gauss_lorentz_gel.comp`. --- diff --git a/mcstas-comps/sasmodels/SasView_gaussian_peak.md b/mcstas-comps/sasmodels/SasView_gaussian_peak.md index 2b3207ce9..f0f3544a6 100644 --- a/mcstas-comps/sasmodels/SasView_gaussian_peak.md +++ b/mcstas-comps/sasmodels/SasView_gaussian_peak.md @@ -48,7 +48,7 @@ Parameters in **boldface** are required; the others are optional. ## Links -- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/sasmodels/SasView_gaussian_peak.comp) for `SasView_gaussian_peak.comp`. +- [Source code](SasView_gaussian_peak.comp) for `SasView_gaussian_peak.comp`. --- diff --git a/mcstas-comps/sasmodels/SasView_gel_fit.md b/mcstas-comps/sasmodels/SasView_gel_fit.md index c9306486e..c2eaa3f17 100644 --- a/mcstas-comps/sasmodels/SasView_gel_fit.md +++ b/mcstas-comps/sasmodels/SasView_gel_fit.md @@ -53,7 +53,7 @@ Parameters in **boldface** are required; the others are optional. ## Links -- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/sasmodels/SasView_gel_fit.comp) for `SasView_gel_fit.comp`. +- [Source code](SasView_gel_fit.comp) for `SasView_gel_fit.comp`. --- diff --git a/mcstas-comps/sasmodels/SasView_guinier.md b/mcstas-comps/sasmodels/SasView_guinier.md index 00c585133..762bcc3bf 100644 --- a/mcstas-comps/sasmodels/SasView_guinier.md +++ b/mcstas-comps/sasmodels/SasView_guinier.md @@ -48,7 +48,7 @@ Parameters in **boldface** are required; the others are optional. ## Links -- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/sasmodels/SasView_guinier.comp) for `SasView_guinier.comp`. +- [Source code](SasView_guinier.comp) for `SasView_guinier.comp`. --- diff --git a/mcstas-comps/sasmodels/SasView_guinier_porod.md b/mcstas-comps/sasmodels/SasView_guinier_porod.md index 689733568..a354c4045 100644 --- a/mcstas-comps/sasmodels/SasView_guinier_porod.md +++ b/mcstas-comps/sasmodels/SasView_guinier_porod.md @@ -50,7 +50,7 @@ Parameters in **boldface** are required; the others are optional. ## Links -- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/sasmodels/SasView_guinier_porod.comp) for `SasView_guinier_porod.comp`. +- [Source code](SasView_guinier_porod.comp) for `SasView_guinier_porod.comp`. --- diff --git a/mcstas-comps/sasmodels/SasView_hardsphere.md b/mcstas-comps/sasmodels/SasView_hardsphere.md index 949eab0f0..985d677af 100644 --- a/mcstas-comps/sasmodels/SasView_hardsphere.md +++ b/mcstas-comps/sasmodels/SasView_hardsphere.md @@ -49,7 +49,7 @@ Parameters in **boldface** are required; the others are optional. ## Links -- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/sasmodels/SasView_hardsphere.comp) for `SasView_hardsphere.comp`. +- [Source code](SasView_hardsphere.comp) for `SasView_hardsphere.comp`. --- diff --git a/mcstas-comps/sasmodels/SasView_hayter_msa.md b/mcstas-comps/sasmodels/SasView_hayter_msa.md index fa20e27aa..9cbb985e8 100644 --- a/mcstas-comps/sasmodels/SasView_hayter_msa.md +++ b/mcstas-comps/sasmodels/SasView_hayter_msa.md @@ -54,7 +54,7 @@ Parameters in **boldface** are required; the others are optional. ## Links -- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/sasmodels/SasView_hayter_msa.comp) for `SasView_hayter_msa.comp`. +- [Source code](SasView_hayter_msa.comp) for `SasView_hayter_msa.comp`. --- diff --git a/mcstas-comps/sasmodels/SasView_hollow_cylinder.md b/mcstas-comps/sasmodels/SasView_hollow_cylinder.md index e58f0c72d..600489a5a 100644 --- a/mcstas-comps/sasmodels/SasView_hollow_cylinder.md +++ b/mcstas-comps/sasmodels/SasView_hollow_cylinder.md @@ -54,7 +54,7 @@ Parameters in **boldface** are required; the others are optional. ## Links -- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/sasmodels/SasView_hollow_cylinder.comp) for `SasView_hollow_cylinder.comp`. +- [Source code](SasView_hollow_cylinder.comp) for `SasView_hollow_cylinder.comp`. --- diff --git a/mcstas-comps/sasmodels/SasView_hollow_cylinder_aniso.md b/mcstas-comps/sasmodels/SasView_hollow_cylinder_aniso.md index 2eff96968..c0e2fc0da 100644 --- a/mcstas-comps/sasmodels/SasView_hollow_cylinder_aniso.md +++ b/mcstas-comps/sasmodels/SasView_hollow_cylinder_aniso.md @@ -58,7 +58,7 @@ Parameters in **boldface** are required; the others are optional. ## Links -- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/sasmodels/SasView_hollow_cylinder_aniso.comp) for `SasView_hollow_cylinder_aniso.comp`. +- [Source code](SasView_hollow_cylinder_aniso.comp) for `SasView_hollow_cylinder_aniso.comp`. --- diff --git a/mcstas-comps/sasmodels/SasView_hollow_rectangular_prism.md b/mcstas-comps/sasmodels/SasView_hollow_rectangular_prism.md index 1ed028320..1ca62baa2 100644 --- a/mcstas-comps/sasmodels/SasView_hollow_rectangular_prism.md +++ b/mcstas-comps/sasmodels/SasView_hollow_rectangular_prism.md @@ -54,7 +54,7 @@ Parameters in **boldface** are required; the others are optional. ## Links -- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/sasmodels/SasView_hollow_rectangular_prism.comp) for `SasView_hollow_rectangular_prism.comp`. +- [Source code](SasView_hollow_rectangular_prism.comp) for `SasView_hollow_rectangular_prism.comp`. --- diff --git a/mcstas-comps/sasmodels/SasView_hollow_rectangular_prism_aniso.md b/mcstas-comps/sasmodels/SasView_hollow_rectangular_prism_aniso.md index 9f0e6612c..27f2be3e0 100644 --- a/mcstas-comps/sasmodels/SasView_hollow_rectangular_prism_aniso.md +++ b/mcstas-comps/sasmodels/SasView_hollow_rectangular_prism_aniso.md @@ -60,7 +60,7 @@ Parameters in **boldface** are required; the others are optional. ## Links -- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/sasmodels/SasView_hollow_rectangular_prism_aniso.comp) for `SasView_hollow_rectangular_prism_aniso.comp`. +- [Source code](SasView_hollow_rectangular_prism_aniso.comp) for `SasView_hollow_rectangular_prism_aniso.comp`. --- diff --git a/mcstas-comps/sasmodels/SasView_hollow_rectangular_prism_thin_walls.md b/mcstas-comps/sasmodels/SasView_hollow_rectangular_prism_thin_walls.md index 7e2718f0b..8a858622b 100644 --- a/mcstas-comps/sasmodels/SasView_hollow_rectangular_prism_thin_walls.md +++ b/mcstas-comps/sasmodels/SasView_hollow_rectangular_prism_thin_walls.md @@ -52,7 +52,7 @@ Parameters in **boldface** are required; the others are optional. ## Links -- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/sasmodels/SasView_hollow_rectangular_prism_thin_walls.comp) for `SasView_hollow_rectangular_prism_thin_walls.comp`. +- [Source code](SasView_hollow_rectangular_prism_thin_walls.comp) for `SasView_hollow_rectangular_prism_thin_walls.comp`. --- diff --git a/mcstas-comps/sasmodels/SasView_lamellar_hg.md b/mcstas-comps/sasmodels/SasView_lamellar_hg.md index 72f5ef0d8..da691b5d8 100644 --- a/mcstas-comps/sasmodels/SasView_lamellar_hg.md +++ b/mcstas-comps/sasmodels/SasView_lamellar_hg.md @@ -53,7 +53,7 @@ Parameters in **boldface** are required; the others are optional. ## Links -- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/sasmodels/SasView_lamellar_hg.comp) for `SasView_lamellar_hg.comp`. +- [Source code](SasView_lamellar_hg.comp) for `SasView_lamellar_hg.comp`. --- diff --git a/mcstas-comps/sasmodels/SasView_lamellar_hg_stack_caille.md b/mcstas-comps/sasmodels/SasView_lamellar_hg_stack_caille.md index d4ad3707c..d05e1b0a3 100644 --- a/mcstas-comps/sasmodels/SasView_lamellar_hg_stack_caille.md +++ b/mcstas-comps/sasmodels/SasView_lamellar_hg_stack_caille.md @@ -56,7 +56,7 @@ Parameters in **boldface** are required; the others are optional. ## Links -- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/sasmodels/SasView_lamellar_hg_stack_caille.comp) for `SasView_lamellar_hg_stack_caille.comp`. +- [Source code](SasView_lamellar_hg_stack_caille.comp) for `SasView_lamellar_hg_stack_caille.comp`. --- diff --git a/mcstas-comps/sasmodels/SasView_lamellar_stack_caille.md b/mcstas-comps/sasmodels/SasView_lamellar_stack_caille.md index b47643700..19b7d739c 100644 --- a/mcstas-comps/sasmodels/SasView_lamellar_stack_caille.md +++ b/mcstas-comps/sasmodels/SasView_lamellar_stack_caille.md @@ -53,7 +53,7 @@ Parameters in **boldface** are required; the others are optional. ## Links -- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/sasmodels/SasView_lamellar_stack_caille.comp) for `SasView_lamellar_stack_caille.comp`. +- [Source code](SasView_lamellar_stack_caille.comp) for `SasView_lamellar_stack_caille.comp`. --- diff --git a/mcstas-comps/sasmodels/SasView_lamellar_stack_paracrystal.md b/mcstas-comps/sasmodels/SasView_lamellar_stack_paracrystal.md index c86cec228..f8320ac5f 100644 --- a/mcstas-comps/sasmodels/SasView_lamellar_stack_paracrystal.md +++ b/mcstas-comps/sasmodels/SasView_lamellar_stack_paracrystal.md @@ -53,7 +53,7 @@ Parameters in **boldface** are required; the others are optional. ## Links -- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/sasmodels/SasView_lamellar_stack_paracrystal.comp) for `SasView_lamellar_stack_paracrystal.comp`. +- [Source code](SasView_lamellar_stack_paracrystal.comp) for `SasView_lamellar_stack_paracrystal.comp`. --- diff --git a/mcstas-comps/sasmodels/SasView_line.md b/mcstas-comps/sasmodels/SasView_line.md index 51971a484..22368f26d 100644 --- a/mcstas-comps/sasmodels/SasView_line.md +++ b/mcstas-comps/sasmodels/SasView_line.md @@ -48,7 +48,7 @@ Parameters in **boldface** are required; the others are optional. ## Links -- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/sasmodels/SasView_line.comp) for `SasView_line.comp`. +- [Source code](SasView_line.comp) for `SasView_line.comp`. --- diff --git a/mcstas-comps/sasmodels/SasView_linear_pearls.md b/mcstas-comps/sasmodels/SasView_linear_pearls.md index 7b687e939..8baefef30 100644 --- a/mcstas-comps/sasmodels/SasView_linear_pearls.md +++ b/mcstas-comps/sasmodels/SasView_linear_pearls.md @@ -52,7 +52,7 @@ Parameters in **boldface** are required; the others are optional. ## Links -- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/sasmodels/SasView_linear_pearls.comp) for `SasView_linear_pearls.comp`. +- [Source code](SasView_linear_pearls.comp) for `SasView_linear_pearls.comp`. --- diff --git a/mcstas-comps/sasmodels/SasView_lorentz.md b/mcstas-comps/sasmodels/SasView_lorentz.md index 3dce5f39f..90e0b65ad 100644 --- a/mcstas-comps/sasmodels/SasView_lorentz.md +++ b/mcstas-comps/sasmodels/SasView_lorentz.md @@ -48,7 +48,7 @@ Parameters in **boldface** are required; the others are optional. ## Links -- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/sasmodels/SasView_lorentz.comp) for `SasView_lorentz.comp`. +- [Source code](SasView_lorentz.comp) for `SasView_lorentz.comp`. --- diff --git a/mcstas-comps/sasmodels/SasView_mass_fractal.md b/mcstas-comps/sasmodels/SasView_mass_fractal.md index 3be443605..c216099e0 100644 --- a/mcstas-comps/sasmodels/SasView_mass_fractal.md +++ b/mcstas-comps/sasmodels/SasView_mass_fractal.md @@ -51,7 +51,7 @@ Parameters in **boldface** are required; the others are optional. ## Links -- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/sasmodels/SasView_mass_fractal.comp) for `SasView_mass_fractal.comp`. +- [Source code](SasView_mass_fractal.comp) for `SasView_mass_fractal.comp`. --- diff --git a/mcstas-comps/sasmodels/SasView_mass_surface_fractal.md b/mcstas-comps/sasmodels/SasView_mass_surface_fractal.md index 090666786..ab0ae7ea6 100644 --- a/mcstas-comps/sasmodels/SasView_mass_surface_fractal.md +++ b/mcstas-comps/sasmodels/SasView_mass_surface_fractal.md @@ -52,7 +52,7 @@ Parameters in **boldface** are required; the others are optional. ## Links -- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/sasmodels/SasView_mass_surface_fractal.comp) for `SasView_mass_surface_fractal.comp`. +- [Source code](SasView_mass_surface_fractal.comp) for `SasView_mass_surface_fractal.comp`. --- diff --git a/mcstas-comps/sasmodels/SasView_mono_gauss_coil.md b/mcstas-comps/sasmodels/SasView_mono_gauss_coil.md index 8fb255f14..8d01c3f20 100644 --- a/mcstas-comps/sasmodels/SasView_mono_gauss_coil.md +++ b/mcstas-comps/sasmodels/SasView_mono_gauss_coil.md @@ -49,7 +49,7 @@ Parameters in **boldface** are required; the others are optional. ## Links -- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/sasmodels/SasView_mono_gauss_coil.comp) for `SasView_mono_gauss_coil.comp`. +- [Source code](SasView_mono_gauss_coil.comp) for `SasView_mono_gauss_coil.comp`. --- diff --git a/mcstas-comps/sasmodels/SasView_multilayer_vesicle.md b/mcstas-comps/sasmodels/SasView_multilayer_vesicle.md index 262696e5f..1cb53ee79 100644 --- a/mcstas-comps/sasmodels/SasView_multilayer_vesicle.md +++ b/mcstas-comps/sasmodels/SasView_multilayer_vesicle.md @@ -56,7 +56,7 @@ Parameters in **boldface** are required; the others are optional. ## Links -- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/sasmodels/SasView_multilayer_vesicle.comp) for `SasView_multilayer_vesicle.comp`. +- [Source code](SasView_multilayer_vesicle.comp) for `SasView_multilayer_vesicle.comp`. --- diff --git a/mcstas-comps/sasmodels/SasView_onion.md b/mcstas-comps/sasmodels/SasView_onion.md index 73029d620..190ddcff0 100644 --- a/mcstas-comps/sasmodels/SasView_onion.md +++ b/mcstas-comps/sasmodels/SasView_onion.md @@ -31,7 +31,7 @@ Parameters in **boldface** are required; the others are optional. ## Links -- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/sasmodels/SasView_onion.comp) for `SasView_onion.comp`. +- [Source code](SasView_onion.comp) for `SasView_onion.comp`. --- diff --git a/mcstas-comps/sasmodels/SasView_parallelepiped.md b/mcstas-comps/sasmodels/SasView_parallelepiped.md index 76c5f1c04..7487a5858 100644 --- a/mcstas-comps/sasmodels/SasView_parallelepiped.md +++ b/mcstas-comps/sasmodels/SasView_parallelepiped.md @@ -54,7 +54,7 @@ Parameters in **boldface** are required; the others are optional. ## Links -- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/sasmodels/SasView_parallelepiped.comp) for `SasView_parallelepiped.comp`. +- [Source code](SasView_parallelepiped.comp) for `SasView_parallelepiped.comp`. --- diff --git a/mcstas-comps/sasmodels/SasView_parallelepiped_aniso.md b/mcstas-comps/sasmodels/SasView_parallelepiped_aniso.md index b5de134ea..59dc60697 100644 --- a/mcstas-comps/sasmodels/SasView_parallelepiped_aniso.md +++ b/mcstas-comps/sasmodels/SasView_parallelepiped_aniso.md @@ -60,7 +60,7 @@ Parameters in **boldface** are required; the others are optional. ## Links -- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/sasmodels/SasView_parallelepiped_aniso.comp) for `SasView_parallelepiped_aniso.comp`. +- [Source code](SasView_parallelepiped_aniso.comp) for `SasView_parallelepiped_aniso.comp`. --- diff --git a/mcstas-comps/sasmodels/SasView_peak_lorentz.md b/mcstas-comps/sasmodels/SasView_peak_lorentz.md index 43b2486ac..04a28469e 100644 --- a/mcstas-comps/sasmodels/SasView_peak_lorentz.md +++ b/mcstas-comps/sasmodels/SasView_peak_lorentz.md @@ -48,7 +48,7 @@ Parameters in **boldface** are required; the others are optional. ## Links -- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/sasmodels/SasView_peak_lorentz.comp) for `SasView_peak_lorentz.comp`. +- [Source code](SasView_peak_lorentz.comp) for `SasView_peak_lorentz.comp`. --- diff --git a/mcstas-comps/sasmodels/SasView_pearl_necklace.md b/mcstas-comps/sasmodels/SasView_pearl_necklace.md index d67fe0011..0bd611c7a 100644 --- a/mcstas-comps/sasmodels/SasView_pearl_necklace.md +++ b/mcstas-comps/sasmodels/SasView_pearl_necklace.md @@ -55,7 +55,7 @@ Parameters in **boldface** are required; the others are optional. ## Links -- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/sasmodels/SasView_pearl_necklace.comp) for `SasView_pearl_necklace.comp`. +- [Source code](SasView_pearl_necklace.comp) for `SasView_pearl_necklace.comp`. --- diff --git a/mcstas-comps/sasmodels/SasView_poly_gauss_coil.md b/mcstas-comps/sasmodels/SasView_poly_gauss_coil.md index 1ed20f268..5b34aba69 100644 --- a/mcstas-comps/sasmodels/SasView_poly_gauss_coil.md +++ b/mcstas-comps/sasmodels/SasView_poly_gauss_coil.md @@ -50,7 +50,7 @@ Parameters in **boldface** are required; the others are optional. ## Links -- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/sasmodels/SasView_poly_gauss_coil.comp) for `SasView_poly_gauss_coil.comp`. +- [Source code](SasView_poly_gauss_coil.comp) for `SasView_poly_gauss_coil.comp`. --- diff --git a/mcstas-comps/sasmodels/SasView_polymer_excl_volume.md b/mcstas-comps/sasmodels/SasView_polymer_excl_volume.md index e4f88eb43..3cf6c9072 100644 --- a/mcstas-comps/sasmodels/SasView_polymer_excl_volume.md +++ b/mcstas-comps/sasmodels/SasView_polymer_excl_volume.md @@ -49,7 +49,7 @@ Parameters in **boldface** are required; the others are optional. ## Links -- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/sasmodels/SasView_polymer_excl_volume.comp) for `SasView_polymer_excl_volume.comp`. +- [Source code](SasView_polymer_excl_volume.comp) for `SasView_polymer_excl_volume.comp`. --- diff --git a/mcstas-comps/sasmodels/SasView_polymer_micelle.md b/mcstas-comps/sasmodels/SasView_polymer_micelle.md index c869d5635..00aefb2ce 100644 --- a/mcstas-comps/sasmodels/SasView_polymer_micelle.md +++ b/mcstas-comps/sasmodels/SasView_polymer_micelle.md @@ -58,7 +58,7 @@ Parameters in **boldface** are required; the others are optional. ## Links -- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/sasmodels/SasView_polymer_micelle.comp) for `SasView_polymer_micelle.comp`. +- [Source code](SasView_polymer_micelle.comp) for `SasView_polymer_micelle.comp`. --- diff --git a/mcstas-comps/sasmodels/SasView_porod.md b/mcstas-comps/sasmodels/SasView_porod.md index b4907dde5..6506a81c5 100644 --- a/mcstas-comps/sasmodels/SasView_porod.md +++ b/mcstas-comps/sasmodels/SasView_porod.md @@ -46,7 +46,7 @@ Parameters in **boldface** are required; the others are optional. ## Links -- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/sasmodels/SasView_porod.comp) for `SasView_porod.comp`. +- [Source code](SasView_porod.comp) for `SasView_porod.comp`. --- diff --git a/mcstas-comps/sasmodels/SasView_power_law.md b/mcstas-comps/sasmodels/SasView_power_law.md index 7f70ad732..341bd595f 100644 --- a/mcstas-comps/sasmodels/SasView_power_law.md +++ b/mcstas-comps/sasmodels/SasView_power_law.md @@ -47,7 +47,7 @@ Parameters in **boldface** are required; the others are optional. ## Links -- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/sasmodels/SasView_power_law.comp) for `SasView_power_law.comp`. +- [Source code](SasView_power_law.comp) for `SasView_power_law.comp`. --- diff --git a/mcstas-comps/sasmodels/SasView_pringle.md b/mcstas-comps/sasmodels/SasView_pringle.md index 6ea0274bd..b9ea376c0 100644 --- a/mcstas-comps/sasmodels/SasView_pringle.md +++ b/mcstas-comps/sasmodels/SasView_pringle.md @@ -54,7 +54,7 @@ Parameters in **boldface** are required; the others are optional. ## Links -- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/sasmodels/SasView_pringle.comp) for `SasView_pringle.comp`. +- [Source code](SasView_pringle.comp) for `SasView_pringle.comp`. --- diff --git a/mcstas-comps/sasmodels/SasView_raspberry.md b/mcstas-comps/sasmodels/SasView_raspberry.md index 720b966b4..1f650dd87 100644 --- a/mcstas-comps/sasmodels/SasView_raspberry.md +++ b/mcstas-comps/sasmodels/SasView_raspberry.md @@ -57,7 +57,7 @@ Parameters in **boldface** are required; the others are optional. ## Links -- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/sasmodels/SasView_raspberry.comp) for `SasView_raspberry.comp`. +- [Source code](SasView_raspberry.comp) for `SasView_raspberry.comp`. --- diff --git a/mcstas-comps/sasmodels/SasView_rectangular_prism.md b/mcstas-comps/sasmodels/SasView_rectangular_prism.md index cbeaa16e0..ade2f4297 100644 --- a/mcstas-comps/sasmodels/SasView_rectangular_prism.md +++ b/mcstas-comps/sasmodels/SasView_rectangular_prism.md @@ -45,7 +45,7 @@ Parameters in **boldface** are required; the others are optional. ## Links -- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/sasmodels/SasView_rectangular_prism.comp) for `SasView_rectangular_prism.comp`. +- [Source code](SasView_rectangular_prism.comp) for `SasView_rectangular_prism.comp`. --- diff --git a/mcstas-comps/sasmodels/SasView_rectangular_prism_aniso.md b/mcstas-comps/sasmodels/SasView_rectangular_prism_aniso.md index daae765f5..2ffe1b1b7 100644 --- a/mcstas-comps/sasmodels/SasView_rectangular_prism_aniso.md +++ b/mcstas-comps/sasmodels/SasView_rectangular_prism_aniso.md @@ -58,7 +58,7 @@ Parameters in **boldface** are required; the others are optional. ## Links -- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/sasmodels/SasView_rectangular_prism_aniso.comp) for `SasView_rectangular_prism_aniso.comp`. +- [Source code](SasView_rectangular_prism_aniso.comp) for `SasView_rectangular_prism_aniso.comp`. --- diff --git a/mcstas-comps/sasmodels/SasView_rpa.md b/mcstas-comps/sasmodels/SasView_rpa.md index 77bf51156..0e12929cc 100644 --- a/mcstas-comps/sasmodels/SasView_rpa.md +++ b/mcstas-comps/sasmodels/SasView_rpa.md @@ -31,7 +31,7 @@ Parameters in **boldface** are required; the others are optional. ## Links -- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/sasmodels/SasView_rpa.comp) for `SasView_rpa.comp`. +- [Source code](SasView_rpa.comp) for `SasView_rpa.comp`. --- diff --git a/mcstas-comps/sasmodels/SasView_sc_paracrystal.md b/mcstas-comps/sasmodels/SasView_sc_paracrystal.md index cc505471a..a7cbb72ef 100644 --- a/mcstas-comps/sasmodels/SasView_sc_paracrystal.md +++ b/mcstas-comps/sasmodels/SasView_sc_paracrystal.md @@ -52,7 +52,7 @@ Parameters in **boldface** are required; the others are optional. ## Links -- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/sasmodels/SasView_sc_paracrystal.comp) for `SasView_sc_paracrystal.comp`. +- [Source code](SasView_sc_paracrystal.comp) for `SasView_sc_paracrystal.comp`. --- diff --git a/mcstas-comps/sasmodels/SasView_sc_paracrystal_aniso.md b/mcstas-comps/sasmodels/SasView_sc_paracrystal_aniso.md index 54e7e30c8..d9ad553ac 100644 --- a/mcstas-comps/sasmodels/SasView_sc_paracrystal_aniso.md +++ b/mcstas-comps/sasmodels/SasView_sc_paracrystal_aniso.md @@ -58,7 +58,7 @@ Parameters in **boldface** are required; the others are optional. ## Links -- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/sasmodels/SasView_sc_paracrystal_aniso.comp) for `SasView_sc_paracrystal_aniso.comp`. +- [Source code](SasView_sc_paracrystal_aniso.comp) for `SasView_sc_paracrystal_aniso.comp`. --- diff --git a/mcstas-comps/sasmodels/SasView_sphere.md b/mcstas-comps/sasmodels/SasView_sphere.md index 27b64439b..eeabe569c 100644 --- a/mcstas-comps/sasmodels/SasView_sphere.md +++ b/mcstas-comps/sasmodels/SasView_sphere.md @@ -50,7 +50,7 @@ Parameters in **boldface** are required; the others are optional. ## Links -- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/sasmodels/SasView_sphere.comp) for `SasView_sphere.comp`. +- [Source code](SasView_sphere.comp) for `SasView_sphere.comp`. --- diff --git a/mcstas-comps/sasmodels/SasView_spinodal.md b/mcstas-comps/sasmodels/SasView_spinodal.md index 3d838ee42..94991f36a 100644 --- a/mcstas-comps/sasmodels/SasView_spinodal.md +++ b/mcstas-comps/sasmodels/SasView_spinodal.md @@ -48,7 +48,7 @@ Parameters in **boldface** are required; the others are optional. ## Links -- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/sasmodels/SasView_spinodal.comp) for `SasView_spinodal.comp`. +- [Source code](SasView_spinodal.comp) for `SasView_spinodal.comp`. --- diff --git a/mcstas-comps/sasmodels/SasView_squarewell.md b/mcstas-comps/sasmodels/SasView_squarewell.md index b22f851e3..611304c87 100644 --- a/mcstas-comps/sasmodels/SasView_squarewell.md +++ b/mcstas-comps/sasmodels/SasView_squarewell.md @@ -51,7 +51,7 @@ Parameters in **boldface** are required; the others are optional. ## Links -- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/sasmodels/SasView_squarewell.comp) for `SasView_squarewell.comp`. +- [Source code](SasView_squarewell.comp) for `SasView_squarewell.comp`. --- diff --git a/mcstas-comps/sasmodels/SasView_stacked_disks.md b/mcstas-comps/sasmodels/SasView_stacked_disks.md index 401946f6a..9cbc5f520 100644 --- a/mcstas-comps/sasmodels/SasView_stacked_disks.md +++ b/mcstas-comps/sasmodels/SasView_stacked_disks.md @@ -57,7 +57,7 @@ Parameters in **boldface** are required; the others are optional. ## Links -- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/sasmodels/SasView_stacked_disks.comp) for `SasView_stacked_disks.comp`. +- [Source code](SasView_stacked_disks.comp) for `SasView_stacked_disks.comp`. --- diff --git a/mcstas-comps/sasmodels/SasView_stacked_disks_aniso.md b/mcstas-comps/sasmodels/SasView_stacked_disks_aniso.md index 567379d5d..3d221ba12 100644 --- a/mcstas-comps/sasmodels/SasView_stacked_disks_aniso.md +++ b/mcstas-comps/sasmodels/SasView_stacked_disks_aniso.md @@ -61,7 +61,7 @@ Parameters in **boldface** are required; the others are optional. ## Links -- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/sasmodels/SasView_stacked_disks_aniso.comp) for `SasView_stacked_disks_aniso.comp`. +- [Source code](SasView_stacked_disks_aniso.comp) for `SasView_stacked_disks_aniso.comp`. --- diff --git a/mcstas-comps/sasmodels/SasView_star_polymer.md b/mcstas-comps/sasmodels/SasView_star_polymer.md index 62b565a5f..cf9ba3c7e 100644 --- a/mcstas-comps/sasmodels/SasView_star_polymer.md +++ b/mcstas-comps/sasmodels/SasView_star_polymer.md @@ -49,7 +49,7 @@ Parameters in **boldface** are required; the others are optional. ## Links -- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/sasmodels/SasView_star_polymer.comp) for `SasView_star_polymer.comp`. +- [Source code](SasView_star_polymer.comp) for `SasView_star_polymer.comp`. --- diff --git a/mcstas-comps/sasmodels/SasView_stickyhardsphere.md b/mcstas-comps/sasmodels/SasView_stickyhardsphere.md index 9e7e2b78a..efae8adf4 100644 --- a/mcstas-comps/sasmodels/SasView_stickyhardsphere.md +++ b/mcstas-comps/sasmodels/SasView_stickyhardsphere.md @@ -51,7 +51,7 @@ Parameters in **boldface** are required; the others are optional. ## Links -- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/sasmodels/SasView_stickyhardsphere.comp) for `SasView_stickyhardsphere.comp`. +- [Source code](SasView_stickyhardsphere.comp) for `SasView_stickyhardsphere.comp`. --- diff --git a/mcstas-comps/sasmodels/SasView_superball.md b/mcstas-comps/sasmodels/SasView_superball.md index ffa3bddb8..f45c29890 100644 --- a/mcstas-comps/sasmodels/SasView_superball.md +++ b/mcstas-comps/sasmodels/SasView_superball.md @@ -51,7 +51,7 @@ Parameters in **boldface** are required; the others are optional. ## Links -- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/sasmodels/SasView_superball.comp) for `SasView_superball.comp`. +- [Source code](SasView_superball.comp) for `SasView_superball.comp`. --- diff --git a/mcstas-comps/sasmodels/SasView_superball_aniso.md b/mcstas-comps/sasmodels/SasView_superball_aniso.md index 12c3b13e0..153ce8bf6 100644 --- a/mcstas-comps/sasmodels/SasView_superball_aniso.md +++ b/mcstas-comps/sasmodels/SasView_superball_aniso.md @@ -57,7 +57,7 @@ Parameters in **boldface** are required; the others are optional. ## Links -- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/sasmodels/SasView_superball_aniso.comp) for `SasView_superball_aniso.comp`. +- [Source code](SasView_superball_aniso.comp) for `SasView_superball_aniso.comp`. --- diff --git a/mcstas-comps/sasmodels/SasView_surface_fractal.md b/mcstas-comps/sasmodels/SasView_surface_fractal.md index 4df496aeb..e1b08f9ad 100644 --- a/mcstas-comps/sasmodels/SasView_surface_fractal.md +++ b/mcstas-comps/sasmodels/SasView_surface_fractal.md @@ -51,7 +51,7 @@ Parameters in **boldface** are required; the others are optional. ## Links -- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/sasmodels/SasView_surface_fractal.comp) for `SasView_surface_fractal.comp`. +- [Source code](SasView_surface_fractal.comp) for `SasView_surface_fractal.comp`. --- diff --git a/mcstas-comps/sasmodels/SasView_teubner_strey.md b/mcstas-comps/sasmodels/SasView_teubner_strey.md index 2a6c44f92..801a17b62 100644 --- a/mcstas-comps/sasmodels/SasView_teubner_strey.md +++ b/mcstas-comps/sasmodels/SasView_teubner_strey.md @@ -51,7 +51,7 @@ Parameters in **boldface** are required; the others are optional. ## Links -- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/sasmodels/SasView_teubner_strey.comp) for `SasView_teubner_strey.comp`. +- [Source code](SasView_teubner_strey.comp) for `SasView_teubner_strey.comp`. --- diff --git a/mcstas-comps/sasmodels/SasView_triaxial_ellipsoid.md b/mcstas-comps/sasmodels/SasView_triaxial_ellipsoid.md index d5f69bd5e..f7dc4cf39 100644 --- a/mcstas-comps/sasmodels/SasView_triaxial_ellipsoid.md +++ b/mcstas-comps/sasmodels/SasView_triaxial_ellipsoid.md @@ -54,7 +54,7 @@ Parameters in **boldface** are required; the others are optional. ## Links -- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/sasmodels/SasView_triaxial_ellipsoid.comp) for `SasView_triaxial_ellipsoid.comp`. +- [Source code](SasView_triaxial_ellipsoid.comp) for `SasView_triaxial_ellipsoid.comp`. --- diff --git a/mcstas-comps/sasmodels/SasView_triaxial_ellipsoid_aniso.md b/mcstas-comps/sasmodels/SasView_triaxial_ellipsoid_aniso.md index a3b178985..4276e876a 100644 --- a/mcstas-comps/sasmodels/SasView_triaxial_ellipsoid_aniso.md +++ b/mcstas-comps/sasmodels/SasView_triaxial_ellipsoid_aniso.md @@ -60,7 +60,7 @@ Parameters in **boldface** are required; the others are optional. ## Links -- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/sasmodels/SasView_triaxial_ellipsoid_aniso.comp) for `SasView_triaxial_ellipsoid_aniso.comp`. +- [Source code](SasView_triaxial_ellipsoid_aniso.comp) for `SasView_triaxial_ellipsoid_aniso.comp`. --- diff --git a/mcstas-comps/sasmodels/SasView_two_lorentzian.md b/mcstas-comps/sasmodels/SasView_two_lorentzian.md index dc8955d3d..401911130 100644 --- a/mcstas-comps/sasmodels/SasView_two_lorentzian.md +++ b/mcstas-comps/sasmodels/SasView_two_lorentzian.md @@ -54,7 +54,7 @@ Parameters in **boldface** are required; the others are optional. ## Links -- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/sasmodels/SasView_two_lorentzian.comp) for `SasView_two_lorentzian.comp`. +- [Source code](SasView_two_lorentzian.comp) for `SasView_two_lorentzian.comp`. --- diff --git a/mcstas-comps/sasmodels/SasView_two_power_law.md b/mcstas-comps/sasmodels/SasView_two_power_law.md index edf85f02b..37e97ea33 100644 --- a/mcstas-comps/sasmodels/SasView_two_power_law.md +++ b/mcstas-comps/sasmodels/SasView_two_power_law.md @@ -50,7 +50,7 @@ Parameters in **boldface** are required; the others are optional. ## Links -- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/sasmodels/SasView_two_power_law.comp) for `SasView_two_power_law.comp`. +- [Source code](SasView_two_power_law.comp) for `SasView_two_power_law.comp`. --- diff --git a/mcstas-comps/sasmodels/SasView_vesicle.md b/mcstas-comps/sasmodels/SasView_vesicle.md index 0607559d3..9d0d09a04 100644 --- a/mcstas-comps/sasmodels/SasView_vesicle.md +++ b/mcstas-comps/sasmodels/SasView_vesicle.md @@ -53,7 +53,7 @@ Parameters in **boldface** are required; the others are optional. ## Links -- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/sasmodels/SasView_vesicle.comp) for `SasView_vesicle.comp`. +- [Source code](SasView_vesicle.comp) for `SasView_vesicle.comp`. --- diff --git a/mcstas-comps/sources/Adapt_check.md b/mcstas-comps/sources/Adapt_check.md index d45d474bb..bb89a325a 100644 --- a/mcstas-comps/sources/Adapt_check.md +++ b/mcstas-comps/sources/Adapt_check.md @@ -33,7 +33,7 @@ Parameters in **boldface** are required; the others are optional. ## Links -- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/sources/Adapt_check.comp) for `Adapt_check.comp`. +- [Source code](Adapt_check.comp) for `Adapt_check.comp`. --- diff --git a/mcstas-comps/sources/ESS_butterfly.md b/mcstas-comps/sources/ESS_butterfly.md index 64518b3aa..94da0b275 100644 --- a/mcstas-comps/sources/ESS_butterfly.md +++ b/mcstas-comps/sources/ESS_butterfly.md @@ -102,7 +102,7 @@ Parameters in **boldface** are required; the others are optional. ## Links -- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/sources/ESS_butterfly.comp) for `ESS_butterfly.comp`. +- [Source code](ESS_butterfly.comp) for `ESS_butterfly.comp`. --- diff --git a/mcstas-comps/sources/ESS_moderator.md b/mcstas-comps/sources/ESS_moderator.md index 70b6fcf9b..d4f0a8484 100644 --- a/mcstas-comps/sources/ESS_moderator.md +++ b/mcstas-comps/sources/ESS_moderator.md @@ -76,7 +76,7 @@ Parameters in **boldface** are required; the others are optional. ## Links -- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/sources/ESS_moderator.comp) for `ESS_moderator.comp`. +- [Source code](ESS_moderator.comp) for `ESS_moderator.comp`. --- diff --git a/mcstas-comps/sources/Moderator.md b/mcstas-comps/sources/Moderator.md index 75fd49c70..9f116bd6b 100644 --- a/mcstas-comps/sources/Moderator.md +++ b/mcstas-comps/sources/Moderator.md @@ -37,7 +37,7 @@ Parameters in **boldface** are required; the others are optional. ## Links -- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/sources/Moderator.comp) for `Moderator.comp`. +- [Source code](Moderator.comp) for `Moderator.comp`. --- diff --git a/mcstas-comps/sources/Monitor_Optimizer.md b/mcstas-comps/sources/Monitor_Optimizer.md index 27a1a3b1f..8d441dd56 100644 --- a/mcstas-comps/sources/Monitor_Optimizer.md +++ b/mcstas-comps/sources/Monitor_Optimizer.md @@ -39,7 +39,7 @@ Parameters in **boldface** are required; the others are optional. ## Links -- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/sources/Monitor_Optimizer.comp) for `Monitor_Optimizer.comp`. +- [Source code](Monitor_Optimizer.comp) for `Monitor_Optimizer.comp`. - Source_Optimizer --- diff --git a/mcstas-comps/sources/Source_4PI.md b/mcstas-comps/sources/Source_4PI.md index 3852997be..9b0f37aa0 100644 --- a/mcstas-comps/sources/Source_4PI.md +++ b/mcstas-comps/sources/Source_4PI.md @@ -31,7 +31,7 @@ Parameters in **boldface** are required; the others are optional. ## Links -- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/sources/Source_4PI.comp) for `Source_4PI.comp`. +- [Source code](Source_4PI.comp) for `Source_4PI.comp`. --- diff --git a/mcstas-comps/sources/Source_Maxwell_3.md b/mcstas-comps/sources/Source_Maxwell_3.md index 079a25188..7b3627bc3 100644 --- a/mcstas-comps/sources/Source_Maxwell_3.md +++ b/mcstas-comps/sources/Source_Maxwell_3.md @@ -51,7 +51,7 @@ Parameters in **boldface** are required; the others are optional. ## Links -- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/sources/Source_Maxwell_3.comp) for `Source_Maxwell_3.comp`. +- [Source code](Source_Maxwell_3.comp) for `Source_Maxwell_3.comp`. --- diff --git a/mcstas-comps/sources/Source_Optimizer.md b/mcstas-comps/sources/Source_Optimizer.md index 940a097a4..a09971f2d 100644 --- a/mcstas-comps/sources/Source_Optimizer.md +++ b/mcstas-comps/sources/Source_Optimizer.md @@ -96,7 +96,7 @@ Parameters in **boldface** are required; the others are optional. ## Links -- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/sources/Source_Optimizer.comp) for `Source_Optimizer.comp`. +- [Source code](Source_Optimizer.comp) for `Source_Optimizer.comp`. --- diff --git a/mcstas-comps/sources/Source_adapt.md b/mcstas-comps/sources/Source_adapt.md index 041371bef..e86b220f7 100644 --- a/mcstas-comps/sources/Source_adapt.md +++ b/mcstas-comps/sources/Source_adapt.md @@ -73,7 +73,7 @@ Parameters in **boldface** are required; the others are optional. ## Links -- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/sources/Source_adapt.comp) for `Source_adapt.comp`. +- [Source code](Source_adapt.comp) for `Source_adapt.comp`. --- diff --git a/mcstas-comps/sources/Source_div.md b/mcstas-comps/sources/Source_div.md index b22adce7d..2da2f2247 100644 --- a/mcstas-comps/sources/Source_div.md +++ b/mcstas-comps/sources/Source_div.md @@ -55,7 +55,7 @@ Parameters in **boldface** are required; the others are optional. ## Links -- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/sources/Source_div.comp) for `Source_div.comp`. +- [Source code](Source_div.comp) for `Source_div.comp`. --- diff --git a/mcstas-comps/sources/Source_div_quasi.md b/mcstas-comps/sources/Source_div_quasi.md index 8d1ce1edd..188858e50 100644 --- a/mcstas-comps/sources/Source_div_quasi.md +++ b/mcstas-comps/sources/Source_div_quasi.md @@ -57,7 +57,7 @@ Parameters in **boldface** are required; the others are optional. ## Links -- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/sources/Source_div_quasi.comp) for `Source_div_quasi.comp`. +- [Source code](Source_div_quasi.comp) for `Source_div_quasi.comp`. --- diff --git a/mcstas-comps/sources/Source_gen.md b/mcstas-comps/sources/Source_gen.md index f3f5d7d46..a17c35333 100644 --- a/mcstas-comps/sources/Source_gen.md +++ b/mcstas-comps/sources/Source_gen.md @@ -115,7 +115,7 @@ Parameters in **boldface** are required; the others are optional. ## Links -- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/sources/Source_gen.comp) for `Source_gen.comp`. +- [Source code](Source_gen.comp) for `Source_gen.comp`. - P. Ageron, Nucl. Inst. Meth. A 284 (1989) 197 --- diff --git a/mcstas-comps/sources/Source_simple.md b/mcstas-comps/sources/Source_simple.md index 9746f9859..907866748 100644 --- a/mcstas-comps/sources/Source_simple.md +++ b/mcstas-comps/sources/Source_simple.md @@ -47,7 +47,7 @@ Parameters in **boldface** are required; the others are optional. ## Links -- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/sources/Source_simple.comp) for `Source_simple.comp`. +- [Source code](Source_simple.comp) for `Source_simple.comp`. --- diff --git a/mcstas-comps/union/AF_HB_1D_process.md b/mcstas-comps/union/AF_HB_1D_process.md index 93fb70de7..daf19048b 100644 --- a/mcstas-comps/union/AF_HB_1D_process.md +++ b/mcstas-comps/union/AF_HB_1D_process.md @@ -50,7 +50,7 @@ Parameters in **boldface** are required; the others are optional. ## Links -- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/union/AF_HB_1D_process.comp) for `AF_HB_1D_process.comp`. +- [Source code](AF_HB_1D_process.comp) for `AF_HB_1D_process.comp`. --- diff --git a/mcstas-comps/union/IncoherentPhonon_process.md b/mcstas-comps/union/IncoherentPhonon_process.md index 565e4a03d..093611229 100644 --- a/mcstas-comps/union/IncoherentPhonon_process.md +++ b/mcstas-comps/union/IncoherentPhonon_process.md @@ -52,7 +52,7 @@ Parameters in **boldface** are required; the others are optional. ## Links -- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/union/IncoherentPhonon_process.comp) for `IncoherentPhonon_process.comp`. +- [Source code](IncoherentPhonon_process.comp) for `IncoherentPhonon_process.comp`. - See https://doi.org/10.3233/JNR-190117 --- diff --git a/mcstas-comps/union/Incoherent_process.md b/mcstas-comps/union/Incoherent_process.md index 2beba07d0..79d08fb3d 100644 --- a/mcstas-comps/union/Incoherent_process.md +++ b/mcstas-comps/union/Incoherent_process.md @@ -49,7 +49,7 @@ Parameters in **boldface** are required; the others are optional. ## Links -- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/union/Incoherent_process.comp) for `Incoherent_process.comp`. +- [Source code](Incoherent_process.comp) for `Incoherent_process.comp`. - The test/example instrument Test_Phonon.instr. --- diff --git a/mcstas-comps/union/Mirror_surface.md b/mcstas-comps/union/Mirror_surface.md index 629213c4f..c2e93334d 100644 --- a/mcstas-comps/union/Mirror_surface.md +++ b/mcstas-comps/union/Mirror_surface.md @@ -54,7 +54,7 @@ Parameters in **boldface** are required; the others are optional. ## Links -- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/union/Mirror_surface.comp) for `Mirror_surface.comp`. +- [Source code](Mirror_surface.comp) for `Mirror_surface.comp`. --- diff --git a/mcstas-comps/union/NCrystal_process.md b/mcstas-comps/union/NCrystal_process.md index 6ab1f1ad9..dfade469c 100644 --- a/mcstas-comps/union/NCrystal_process.md +++ b/mcstas-comps/union/NCrystal_process.md @@ -64,7 +64,7 @@ Parameters in **boldface** are required; the others are optional. ## Links -- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/union/NCrystal_process.comp) for `NCrystal_process.comp`. +- [Source code](NCrystal_process.comp) for `NCrystal_process.comp`. --- diff --git a/mcstas-comps/union/Non_process.md b/mcstas-comps/union/Non_process.md index bd449fb61..e83921748 100644 --- a/mcstas-comps/union/Non_process.md +++ b/mcstas-comps/union/Non_process.md @@ -47,7 +47,7 @@ Parameters in **boldface** are required; the others are optional. ## Links -- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/union/Non_process.comp) for `Non_process.comp`. +- [Source code](Non_process.comp) for `Non_process.comp`. --- diff --git a/mcstas-comps/union/PhononSimple_process.md b/mcstas-comps/union/PhononSimple_process.md index ca2925c39..096485a71 100644 --- a/mcstas-comps/union/PhononSimple_process.md +++ b/mcstas-comps/union/PhononSimple_process.md @@ -55,7 +55,7 @@ Parameters in **boldface** are required; the others are optional. ## Links -- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/union/PhononSimple_process.comp) for `PhononSimple_process.comp`. +- [Source code](PhononSimple_process.comp) for `PhononSimple_process.comp`. --- diff --git a/mcstas-comps/union/Powder_process.md b/mcstas-comps/union/Powder_process.md index 1e7a63344..4d01f5eec 100644 --- a/mcstas-comps/union/Powder_process.md +++ b/mcstas-comps/union/Powder_process.md @@ -55,7 +55,7 @@ Parameters in **boldface** are required; the others are optional. ## Links -- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/union/Powder_process.comp) for `Powder_process.comp`. +- [Source code](Powder_process.comp) for `Powder_process.comp`. --- diff --git a/mcstas-comps/union/Single_crystal_process.md b/mcstas-comps/union/Single_crystal_process.md index e652f9437..a0e2dc50e 100644 --- a/mcstas-comps/union/Single_crystal_process.md +++ b/mcstas-comps/union/Single_crystal_process.md @@ -71,7 +71,7 @@ Parameters in **boldface** are required; the others are optional. ## Links -- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/union/Single_crystal_process.comp) for `Single_crystal_process.comp`. +- [Source code](Single_crystal_process.comp) for `Single_crystal_process.comp`. --- diff --git a/mcstas-comps/union/Template_process.md b/mcstas-comps/union/Template_process.md index e878bb43e..8a72ad1f5 100644 --- a/mcstas-comps/union/Template_process.md +++ b/mcstas-comps/union/Template_process.md @@ -50,7 +50,7 @@ Parameters in **boldface** are required; the others are optional. ## Links -- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/union/Template_process.comp) for `Template_process.comp`. +- [Source code](Template_process.comp) for `Template_process.comp`. --- diff --git a/mcstas-comps/union/Template_surface.md b/mcstas-comps/union/Template_surface.md index 502f8ab99..4715b051a 100644 --- a/mcstas-comps/union/Template_surface.md +++ b/mcstas-comps/union/Template_surface.md @@ -56,7 +56,7 @@ Parameters in **boldface** are required; the others are optional. ## Links -- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/union/Template_surface.comp) for `Template_surface.comp`. +- [Source code](Template_surface.comp) for `Template_surface.comp`. --- diff --git a/mcstas-comps/union/Texture_process.md b/mcstas-comps/union/Texture_process.md index 75714a0ee..42cfc450e 100644 --- a/mcstas-comps/union/Texture_process.md +++ b/mcstas-comps/union/Texture_process.md @@ -45,7 +45,7 @@ Parameters in **boldface** are required; the others are optional. ## Links -- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/union/Texture_process.comp) for `Texture_process.comp`. +- [Source code](Texture_process.comp) for `Texture_process.comp`. - See https://doi.org/10.3233/JNR-190117 --- diff --git a/mcstas-comps/union/Union_abs_logger_1D_space.md b/mcstas-comps/union/Union_abs_logger_1D_space.md index 4e103367d..968f074ce 100644 --- a/mcstas-comps/union/Union_abs_logger_1D_space.md +++ b/mcstas-comps/union/Union_abs_logger_1D_space.md @@ -75,7 +75,7 @@ Parameters in **boldface** are required; the others are optional. ## Links -- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/union/Union_abs_logger_1D_space.comp) for `Union_abs_logger_1D_space.comp`. +- [Source code](Union_abs_logger_1D_space.comp) for `Union_abs_logger_1D_space.comp`. --- diff --git a/mcstas-comps/union/Union_abs_logger_1D_space_event.md b/mcstas-comps/union/Union_abs_logger_1D_space_event.md index fe376feb2..d8714de8e 100644 --- a/mcstas-comps/union/Union_abs_logger_1D_space_event.md +++ b/mcstas-comps/union/Union_abs_logger_1D_space_event.md @@ -85,7 +85,7 @@ Parameters in **boldface** are required; the others are optional. ## Links -- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/union/Union_abs_logger_1D_space_event.comp) for `Union_abs_logger_1D_space_event.comp`. +- [Source code](Union_abs_logger_1D_space_event.comp) for `Union_abs_logger_1D_space_event.comp`. --- diff --git a/mcstas-comps/union/Union_abs_logger_1D_space_tof.md b/mcstas-comps/union/Union_abs_logger_1D_space_tof.md index 9a677809a..912be5d56 100644 --- a/mcstas-comps/union/Union_abs_logger_1D_space_tof.md +++ b/mcstas-comps/union/Union_abs_logger_1D_space_tof.md @@ -78,7 +78,7 @@ Parameters in **boldface** are required; the others are optional. ## Links -- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/union/Union_abs_logger_1D_space_tof.comp) for `Union_abs_logger_1D_space_tof.comp`. +- [Source code](Union_abs_logger_1D_space_tof.comp) for `Union_abs_logger_1D_space_tof.comp`. --- diff --git a/mcstas-comps/union/Union_abs_logger_1D_space_tof_to_lambda.md b/mcstas-comps/union/Union_abs_logger_1D_space_tof_to_lambda.md index b77fcf3dd..ff0890cb5 100644 --- a/mcstas-comps/union/Union_abs_logger_1D_space_tof_to_lambda.md +++ b/mcstas-comps/union/Union_abs_logger_1D_space_tof_to_lambda.md @@ -109,7 +109,7 @@ Parameters in **boldface** are required; the others are optional. ## Links -- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/union/Union_abs_logger_1D_space_tof_to_lambda.comp) for `Union_abs_logger_1D_space_tof_to_lambda.comp`. +- [Source code](Union_abs_logger_1D_space_tof_to_lambda.comp) for `Union_abs_logger_1D_space_tof_to_lambda.comp`. --- diff --git a/mcstas-comps/union/Union_abs_logger_1D_time.md b/mcstas-comps/union/Union_abs_logger_1D_time.md index 86d263ba1..ab698bcaa 100644 --- a/mcstas-comps/union/Union_abs_logger_1D_time.md +++ b/mcstas-comps/union/Union_abs_logger_1D_time.md @@ -76,7 +76,7 @@ Parameters in **boldface** are required; the others are optional. ## Links -- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/union/Union_abs_logger_1D_time.comp) for `Union_abs_logger_1D_time.comp`. +- [Source code](Union_abs_logger_1D_time.comp) for `Union_abs_logger_1D_time.comp`. --- diff --git a/mcstas-comps/union/Union_abs_logger_2D_space.md b/mcstas-comps/union/Union_abs_logger_2D_space.md index 5205af5bb..7b70ae27c 100644 --- a/mcstas-comps/union/Union_abs_logger_2D_space.md +++ b/mcstas-comps/union/Union_abs_logger_2D_space.md @@ -85,7 +85,7 @@ Parameters in **boldface** are required; the others are optional. ## Links -- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/union/Union_abs_logger_2D_space.comp) for `Union_abs_logger_2D_space.comp`. +- [Source code](Union_abs_logger_2D_space.comp) for `Union_abs_logger_2D_space.comp`. --- diff --git a/mcstas-comps/union/Union_abs_logger_event.md b/mcstas-comps/union/Union_abs_logger_event.md index d24c555a2..3e7f13d9e 100644 --- a/mcstas-comps/union/Union_abs_logger_event.md +++ b/mcstas-comps/union/Union_abs_logger_event.md @@ -75,7 +75,7 @@ Parameters in **boldface** are required; the others are optional. ## Links -- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/union/Union_abs_logger_event.comp) for `Union_abs_logger_event.comp`. +- [Source code](Union_abs_logger_event.comp) for `Union_abs_logger_event.comp`. --- diff --git a/mcstas-comps/union/Union_abs_logger_nD.md b/mcstas-comps/union/Union_abs_logger_nD.md index 69cb27461..96abba12e 100644 --- a/mcstas-comps/union/Union_abs_logger_nD.md +++ b/mcstas-comps/union/Union_abs_logger_nD.md @@ -98,7 +98,7 @@ Parameters in **boldface** are required; the others are optional. ## Links -- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/union/Union_abs_logger_nD.comp) for `Union_abs_logger_nD.comp`. +- [Source code](Union_abs_logger_nD.comp) for `Union_abs_logger_nD.comp`. - See also the Monitor_nD mcdoc page" --- diff --git a/mcstas-comps/union/Union_box.md b/mcstas-comps/union/Union_box.md index 4639b0514..4cc898bb2 100644 --- a/mcstas-comps/union/Union_box.md +++ b/mcstas-comps/union/Union_box.md @@ -75,7 +75,7 @@ Parameters in **boldface** are required; the others are optional. ## Links -- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/union/Union_box.comp) for `Union_box.comp`. +- [Source code](Union_box.comp) for `Union_box.comp`. --- diff --git a/mcstas-comps/union/Union_conditional_PSD.md b/mcstas-comps/union/Union_conditional_PSD.md index 0e6c00c30..d96e0cb01 100644 --- a/mcstas-comps/union/Union_conditional_PSD.md +++ b/mcstas-comps/union/Union_conditional_PSD.md @@ -65,7 +65,7 @@ Parameters in **boldface** are required; the others are optional. ## Links -- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/union/Union_conditional_PSD.comp) for `Union_conditional_PSD.comp`. +- [Source code](Union_conditional_PSD.comp) for `Union_conditional_PSD.comp`. --- diff --git a/mcstas-comps/union/Union_conditional_standard.md b/mcstas-comps/union/Union_conditional_standard.md index 25cdfb6fa..5a204d0ff 100644 --- a/mcstas-comps/union/Union_conditional_standard.md +++ b/mcstas-comps/union/Union_conditional_standard.md @@ -65,7 +65,7 @@ Parameters in **boldface** are required; the others are optional. ## Links -- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/union/Union_conditional_standard.comp) for `Union_conditional_standard.comp`. +- [Source code](Union_conditional_standard.comp) for `Union_conditional_standard.comp`. --- diff --git a/mcstas-comps/union/Union_cone.md b/mcstas-comps/union/Union_cone.md index a794d65b9..fe40193ab 100644 --- a/mcstas-comps/union/Union_cone.md +++ b/mcstas-comps/union/Union_cone.md @@ -68,7 +68,7 @@ Parameters in **boldface** are required; the others are optional. ## Links -- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/union/Union_cone.comp) for `Union_cone.comp`. +- [Source code](Union_cone.comp) for `Union_cone.comp`. --- diff --git a/mcstas-comps/union/Union_cylinder.md b/mcstas-comps/union/Union_cylinder.md index 23b6fe1c8..a0996900f 100644 --- a/mcstas-comps/union/Union_cylinder.md +++ b/mcstas-comps/union/Union_cylinder.md @@ -66,7 +66,7 @@ Parameters in **boldface** are required; the others are optional. ## Links -- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/union/Union_cylinder.comp) for `Union_cylinder.comp`. +- [Source code](Union_cylinder.comp) for `Union_cylinder.comp`. --- diff --git a/mcstas-comps/union/Union_init.md b/mcstas-comps/union/Union_init.md index fff85beba..7ed83983d 100644 --- a/mcstas-comps/union/Union_init.md +++ b/mcstas-comps/union/Union_init.md @@ -39,7 +39,7 @@ Parameters in **boldface** are required; the others are optional. ## Links -- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/union/Union_init.comp) for `Union_init.comp`. +- [Source code](Union_init.comp) for `Union_init.comp`. --- diff --git a/mcstas-comps/union/Union_logger_1D.md b/mcstas-comps/union/Union_logger_1D.md index 0415cba15..f224b17ae 100644 --- a/mcstas-comps/union/Union_logger_1D.md +++ b/mcstas-comps/union/Union_logger_1D.md @@ -65,7 +65,7 @@ Parameters in **boldface** are required; the others are optional. ## Links -- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/union/Union_logger_1D.comp) for `Union_logger_1D.comp`. +- [Source code](Union_logger_1D.comp) for `Union_logger_1D.comp`. --- diff --git a/mcstas-comps/union/Union_logger_2DQ.md b/mcstas-comps/union/Union_logger_2DQ.md index 41fbc4416..0cd716130 100644 --- a/mcstas-comps/union/Union_logger_2DQ.md +++ b/mcstas-comps/union/Union_logger_2DQ.md @@ -68,7 +68,7 @@ Parameters in **boldface** are required; the others are optional. ## Links -- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/union/Union_logger_2DQ.comp) for `Union_logger_2DQ.comp`. +- [Source code](Union_logger_2DQ.comp) for `Union_logger_2DQ.comp`. --- diff --git a/mcstas-comps/union/Union_logger_2D_kf.md b/mcstas-comps/union/Union_logger_2D_kf.md index 84c9f2669..5a6377c56 100644 --- a/mcstas-comps/union/Union_logger_2D_kf.md +++ b/mcstas-comps/union/Union_logger_2D_kf.md @@ -69,7 +69,7 @@ Parameters in **boldface** are required; the others are optional. ## Links -- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/union/Union_logger_2D_kf.comp) for `Union_logger_2D_kf.comp`. +- [Source code](Union_logger_2D_kf.comp) for `Union_logger_2D_kf.comp`. --- diff --git a/mcstas-comps/union/Union_logger_2D_kf_time.md b/mcstas-comps/union/Union_logger_2D_kf_time.md index 1d02f2414..ed1feeaeb 100644 --- a/mcstas-comps/union/Union_logger_2D_kf_time.md +++ b/mcstas-comps/union/Union_logger_2D_kf_time.md @@ -73,7 +73,7 @@ Parameters in **boldface** are required; the others are optional. ## Links -- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/union/Union_logger_2D_kf_time.comp) for `Union_logger_2D_kf_time.comp`. +- [Source code](Union_logger_2D_kf_time.comp) for `Union_logger_2D_kf_time.comp`. --- diff --git a/mcstas-comps/union/Union_logger_2D_space.md b/mcstas-comps/union/Union_logger_2D_space.md index e270f492b..6dc1af3ee 100644 --- a/mcstas-comps/union/Union_logger_2D_space.md +++ b/mcstas-comps/union/Union_logger_2D_space.md @@ -70,7 +70,7 @@ Parameters in **boldface** are required; the others are optional. ## Links -- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/union/Union_logger_2D_space.comp) for `Union_logger_2D_space.comp`. +- [Source code](Union_logger_2D_space.comp) for `Union_logger_2D_space.comp`. --- diff --git a/mcstas-comps/union/Union_logger_2D_space_time.md b/mcstas-comps/union/Union_logger_2D_space_time.md index 3472f9d6b..7026ed42b 100644 --- a/mcstas-comps/union/Union_logger_2D_space_time.md +++ b/mcstas-comps/union/Union_logger_2D_space_time.md @@ -73,7 +73,7 @@ Parameters in **boldface** are required; the others are optional. ## Links -- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/union/Union_logger_2D_space_time.comp) for `Union_logger_2D_space_time.comp`. +- [Source code](Union_logger_2D_space_time.comp) for `Union_logger_2D_space_time.comp`. --- diff --git a/mcstas-comps/union/Union_logger_3D_space.md b/mcstas-comps/union/Union_logger_3D_space.md index 269788ad7..5b12fc33f 100644 --- a/mcstas-comps/union/Union_logger_3D_space.md +++ b/mcstas-comps/union/Union_logger_3D_space.md @@ -74,7 +74,7 @@ Parameters in **boldface** are required; the others are optional. ## Links -- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/union/Union_logger_3D_space.comp) for `Union_logger_3D_space.comp`. +- [Source code](Union_logger_3D_space.comp) for `Union_logger_3D_space.comp`. --- diff --git a/mcstas-comps/union/Union_make_material.md b/mcstas-comps/union/Union_make_material.md index 94d3d998e..8df8cb1f3 100644 --- a/mcstas-comps/union/Union_make_material.md +++ b/mcstas-comps/union/Union_make_material.md @@ -47,7 +47,7 @@ Parameters in **boldface** are required; the others are optional. ## Links -- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/union/Union_make_material.comp) for `Union_make_material.comp`. +- [Source code](Union_make_material.comp) for `Union_make_material.comp`. --- diff --git a/mcstas-comps/union/Union_master.md b/mcstas-comps/union/Union_master.md index ed832ea46..dfbf85780 100644 --- a/mcstas-comps/union/Union_master.md +++ b/mcstas-comps/union/Union_master.md @@ -51,7 +51,7 @@ Parameters in **boldface** are required; the others are optional. ## Links -- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/union/Union_master.comp) for `Union_master.comp`. +- [Source code](Union_master.comp) for `Union_master.comp`. --- diff --git a/mcstas-comps/union/Union_master_GPU.md b/mcstas-comps/union/Union_master_GPU.md index 63c9096d1..b2f2a92f0 100644 --- a/mcstas-comps/union/Union_master_GPU.md +++ b/mcstas-comps/union/Union_master_GPU.md @@ -48,7 +48,7 @@ Parameters in **boldface** are required; the others are optional. ## Links -- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/union/Union_master_GPU.comp) for `Union_master_GPU.comp`. +- [Source code](Union_master_GPU.comp) for `Union_master_GPU.comp`. --- diff --git a/mcstas-comps/union/Union_mesh.md b/mcstas-comps/union/Union_mesh.md index 682a970f4..5783ec09d 100644 --- a/mcstas-comps/union/Union_mesh.md +++ b/mcstas-comps/union/Union_mesh.md @@ -72,7 +72,7 @@ Parameters in **boldface** are required; the others are optional. ## Links -- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/union/Union_mesh.comp) for `Union_mesh.comp`. +- [Source code](Union_mesh.comp) for `Union_mesh.comp`. --- diff --git a/mcstas-comps/union/Union_sphere.md b/mcstas-comps/union/Union_sphere.md index 324c87cc9..e05b8dd25 100644 --- a/mcstas-comps/union/Union_sphere.md +++ b/mcstas-comps/union/Union_sphere.md @@ -61,7 +61,7 @@ Parameters in **boldface** are required; the others are optional. ## Links -- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/union/Union_sphere.comp) for `Union_sphere.comp`. +- [Source code](Union_sphere.comp) for `Union_sphere.comp`. --- diff --git a/mcstas-comps/union/Union_stop.md b/mcstas-comps/union/Union_stop.md index 945884cf9..51d2de77c 100644 --- a/mcstas-comps/union/Union_stop.md +++ b/mcstas-comps/union/Union_stop.md @@ -39,7 +39,7 @@ Parameters in **boldface** are required; the others are optional. ## Links -- [Source code](/Users/peterwillendrup/Projects/willend-McCode/mcstas-comps/union/Union_stop.comp) for `Union_stop.comp`. +- [Source code](Union_stop.comp) for `Union_stop.comp`. --- From 7b34bab3762cc224b2d18fa4679348fc481ad53c Mon Sep 17 00:00:00 2001 From: Peter Willendrup Date: Wed, 22 Apr 2026 13:30:31 +0200 Subject: [PATCH 32/43] Remove before name-change to README.md for instruments --- mcstas-comps/examples/BNL/BNL_H8/BNL_H8.md | 38 ----- .../BNL/BNL_H8_simple/BNL_H8_simple.md | 38 ----- .../BNL/h8_test_legacy/h8_test_legacy.md | 44 ----- .../DTU/Test_FZP_simple/Test_FZP_simple.md | 35 ---- .../examples/DTU/Vin_test/Vin_test.md | 33 ---- .../examples/DTU/Vout_test/Vout_test.md | 33 ---- .../ESS/ESS_BEER_MCPL/ESS_BEER_MCPL.md | 82 ---------- .../ESS/ESS_IN5_reprate/ESS_IN5_reprate.md | 80 --------- .../ESS_Testbeamline_HZB_V20.md | 59 ------- .../ESS_butterfly_Guide_curved_test.md | 52 ------ .../ESS_butterfly_MCPL_test.md | 55 ------- .../ESS_butterfly_test/ESS_butterfly_test.md | 46 ------ .../ESS_butterfly_tfocus_NOFOCUS_test.md | 49 ------ .../ESS_butterfly_tfocus_test.md | 49 ------ .../ESS/ESS_mcpl2hist/ESS_mcpl2hist.md | 41 ----- .../FZJ_BenchmarkSfin2/FZJ_BenchmarkSfin2.md | 54 ------- .../FZ_Juelich/FZJ_KWS2_Lens/FZJ_KWS2_Lens.md | 42 ----- .../FZJ_SANS_KWS2_AnySample.md | 39 ----- .../examples/HZB/HZB_FLEX/HZB_FLEX.md | 41 ----- .../examples/HZB/HZB_NEAT/HZB_NEAT.md | 56 ------- .../examples/HighNESS/WOFSANS/WOFSANS.md | 56 ------- .../examples/ILL/ILL_BRISP/ILL_BRISP.md | 94 ----------- mcstas-comps/examples/ILL/ILL_D2B/ILL_D2B.md | 74 --------- .../ILL/ILL_D2B_noenv/ILL_D2B_noenv.md | 74 --------- mcstas-comps/examples/ILL/ILL_D4/ILL_D4.md | 51 ------ .../examples/ILL/ILL_H10_IN8/ILL_H10_IN8.md | 84 ---------- .../examples/ILL/ILL_H113/ILL_H113.md | 36 ----- .../examples/ILL/ILL_H13_IN20/ILL_H13_IN20.md | 83 ---------- .../examples/ILL/ILL_H142/ILL_H142.md | 37 ----- .../examples/ILL/ILL_H142_D33/ILL_H142_D33.md | 48 ------ .../ILL/ILL_H142_IN12/ILL_H142_IN12.md | 51 ------ .../ILL/ILL_H142_simple/ILL_H142_simple.md | 37 ----- .../ILL/ILL_H143_LADI/ILL_H143_LADI.md | 60 ------- mcstas-comps/examples/ILL/ILL_H15/ILL_H15.md | 36 ----- .../examples/ILL/ILL_H15_D11/ILL_H15_D11.md | 58 ------- .../examples/ILL/ILL_H15_IN6/ILL_H15_IN6.md | 68 -------- .../examples/ILL/ILL_H15_SAM/ILL_H15_SAM.md | 71 -------- mcstas-comps/examples/ILL/ILL_H16/ILL_H16.md | 34 ---- .../examples/ILL/ILL_H16_IN5/ILL_H16_IN5.md | 37 ----- mcstas-comps/examples/ILL/ILL_H22/ILL_H22.md | 35 ---- .../examples/ILL/ILL_H22_D1A/ILL_H22_D1A.md | 64 -------- .../ILL_H22_D1A_noenv/ILL_H22_D1A_noenv.md | 64 -------- .../examples/ILL/ILL_H22_D1B/ILL_H22_D1B.md | 74 --------- .../ILL_H22_D1B_noenv/ILL_H22_D1B_noenv.md | 74 --------- .../ILL/ILL_H22_VIVALDI/ILL_H22_VIVALDI.md | 49 ------ mcstas-comps/examples/ILL/ILL_H24/ILL_H24.md | 35 ---- mcstas-comps/examples/ILL/ILL_H25/ILL_H25.md | 35 ---- .../examples/ILL/ILL_H25_IN22/ILL_H25_IN22.md | 56 ------- mcstas-comps/examples/ILL/ILL_H5/ILL_H5.md | 50 ------ .../examples/ILL/ILL_H512_D22/ILL_H512_D22.md | 40 ----- mcstas-comps/examples/ILL/ILL_H53/ILL_H53.md | 35 ---- .../examples/ILL/ILL_H53_D16/ILL_H53_D16.md | 53 ------ .../examples/ILL/ILL_H53_IN14/ILL_H53_IN14.md | 71 -------- .../examples/ILL/ILL_H5_new/ILL_H5_new.md | 75 --------- .../examples/ILL/ILL_H8_IN1/ILL_H8_IN1.md | 87 ---------- .../examples/ILL/ILL_IN13/ILL_IN13.md | 92 ----------- mcstas-comps/examples/ILL/ILL_IN4/ILL_IN4.md | 93 ----------- mcstas-comps/examples/ILL/ILL_IN5/ILL_IN5.md | 46 ------ .../ILL/ILL_IN5_Spots/ILL_IN5_Spots.md | 52 ------ mcstas-comps/examples/ILL/ILL_IN6/ILL_IN6.md | 80 --------- .../examples/ILL/ILL_Lagrange/ILL_Lagrange.md | 56 ------- .../examples/ILL/ILL_SALSA/ILL_SALSA.md | 63 -------- .../examples/ISIS/ISIS_CRISP/ISIS_CRISP.md | 43 ----- .../examples/ISIS/ISIS_GEM/ISIS_GEM.md | 43 ----- .../examples/ISIS/ISIS_HET/ISIS_HET.md | 39 ----- .../examples/ISIS/ISIS_IMAT/ISIS_IMAT.md | 47 ------ .../examples/ISIS/ISIS_LET/ISIS_LET.md | 43 ----- .../examples/ISIS/ISIS_MERLIN/ISIS_MERLIN.md | 48 ------ .../examples/ISIS/ISIS_OSIRIS/ISIS_OSIRIS.md | 45 ------ .../ISIS/ISIS_Prisma2/ISIS_Prisma2.md | 50 ------ .../examples/ISIS/ISIS_SANS2d/ISIS_SANS2d.md | 54 ------- .../ISIS_TOSCA_preupgrade.md | 49 ------ .../ISIS_TS1_Brilliance.md | 36 ----- .../ISIS_TS2_Brilliance.md | 36 ----- .../examples/ISIS/ISIS_test/ISIS_test.md | 34 ---- .../ISIS/ViewModISIStest/ViewModISIStest.md | 35 ---- mcstas-comps/examples/LLB/LLB_6T2/LLB_6T2.md | 44 ----- .../ILL_H16_IN5_Mantid/ILL_H16_IN5_Mantid.md | 56 ------- .../Mantid/ILL_H16_Mantid/ILL_H16_Mantid.md | 37 ----- .../Mantid/ILL_IN5_Mantid/ILL_IN5_Mantid.md | 47 ------ .../ISIS_SANS2d_Mantid/ISIS_SANS2d_Mantid.md | 55 ------- .../ISIS_TOSCA_preupgrade_Mantid.md | 55 ------- .../Mantid/SNS_ARCS_Mantid/SNS_ARCS_Mantid.md | 53 ------ .../Mantid/Tools_ONION/Tools_ONION.md | 44 ----- .../templateSANS2_Mantid.md | 39 ----- .../templateSANS_Mantid.md | 45 ------ .../templateSasView_Mantid.md | 60 ------- .../templateVanadiumMultipleScat_Mantid.md | 34 ---- .../NCrystal_example/NCrystal_example.md | 50 ------ .../Union_NCrystal_example.md | 35 ---- .../Union_NCrystal_mix_example.md | 36 ----- .../Necsa/SAFARI_MPISI/SAFARI_MPISI.md | 64 -------- .../Necsa/SAFARI_PITSI/SAFARI_PITSI.md | 61 ------- mcstas-comps/examples/PSI/PSI_DMC/PSI_DMC.md | 48 ------ .../PSI/PSI_DMC_simple/PSI_DMC_simple.md | 47 ------ .../examples/PSI/PSI_Focus/PSI_Focus.md | 35 ---- .../examples/PSI/PSI_source/PSI_source.md | 47 ------ mcstas-comps/examples/PSI/RITA-II/RITA-II.md | 152 ------------------ .../examples/Risoe/TAS1_C1/TAS1_C1.md | 43 ----- .../Risoe/TAS1_C1_Tilt/TAS1_C1_Tilt.md | 44 ----- .../TAS1_Diff_Powder/TAS1_Diff_Powder.md | 49 ------ .../Risoe/TAS1_Diff_Slit/TAS1_Diff_Slit.md | 48 ------ .../Risoe/TAS1_Diff_Vana/TAS1_Diff_Vana.md | 49 ------ .../examples/Risoe/TAS1_Powder/TAS1_Powder.md | 48 ------ .../examples/Risoe/TAS1_Vana/TAS1_Vana.md | 48 ------ .../McStas_Isotropic_Sqw.md | 61 ------- .../SINE2020/McStas_PowderN/McStas_PowderN.md | 58 ------- .../McStas_Single_crystal.md | 58 ------- .../Gallmeier_SNS_decoupled_poisoned.md | 34 ---- .../Granroth_SNS_decoupled_poisoned.md | 34 ---- .../Mezei_SNS_decoupled_poisoned.md | 35 ---- .../examples/SNS/SNS_ARCS/SNS_ARCS.md | 53 ------ .../examples/SNS/SNS_BASIS/SNS_BASIS.md | 71 -------- .../SNS_analytic_test/SNS_analytic_test.md | 36 ----- .../examples/SNS/SNS_test/SNS_test.md | 36 ----- .../examples/TRIGA/RTP_DIF/RTP_DIF.md | 38 ----- .../examples/TRIGA/RTP_Laue/RTP_Laue.md | 38 ----- .../RTP_NeutronRadiography.md | 37 ----- .../examples/TRIGA/RTP_SANS/RTP_SANS.md | 51 ------ .../TUDelft/SEMSANS_Delft/SEMSANS_Delft.md | 48 ------ .../SEMSANS_instrument/SEMSANS_instrument.md | 69 -------- .../TUDelft/SESANS_Delft/SESANS_Delft.md | 47 ------ .../examples/Templates/BTsimple/BTsimple.md | 42 ----- .../Demo_shape_primitives.md | 32 ---- .../Demo_shape_primitives_simple.md | 32 ---- .../TOF_Reflectometer/TOF_Reflectometer.md | 47 ------ .../Test_SasView_bcc_paracrystal_aniso.md | 59 ------- .../Test_SasView_guinier.md | 49 ------ .../Templates/Tomography/Tomography.md | 51 ------ mcstas-comps/examples/Templates/mini/mini.md | 33 ---- .../examples/Templates/template/template.md | 42 ----- .../Templates/templateDIFF/templateDIFF.md | 65 -------- .../Templates/templateLaue/templateLaue.md | 33 ---- .../Templates/templateNMX/templateNMX.md | 35 ---- .../templateNMX_TOF/templateNMX_TOF.md | 46 ------ .../Templates/templateSANS/templateSANS.md | 38 ----- .../Templates/templateSANS2/templateSANS2.md | 39 ----- .../templateSANS_MCPL/templateSANS_MCPL.md | 41 ----- .../templateSasView/templateSasView.md | 48 ------ .../Templates/templateTAS/templateTAS.md | 136 ---------------- .../Templates/templateTOF/templateTOF.md | 53 ------ .../template_simple/template_simple.md | 35 ---- .../Test_MCPL_input/Test_MCPL_input.md | 36 ----- .../Test_MCPL_input_once.md | 37 ----- .../Test_MCPL_output/Test_MCPL_output.md | 32 ---- .../Test_RNG_rand01/Test_RNG_rand01.md | 40 ----- .../Test_RNG_randnorm/Test_RNG_randnorm.md | 40 ----- .../Test_RNG_randpm1/Test_RNG_randpm1.md | 40 ----- .../Test_RNG_randtriangle.md | 40 ----- .../Test_RNG_randvec_target_circle.md | 41 ----- .../Test_RNG_randvec_target_rect.md | 41 ----- .../Test_RNG_randvec_target_rect_angular.md | 41 ----- .../Tests_grammar/Test_GROUP/Test_GROUP.md | 33 ---- .../Tests_grammar/Test_GROUP_restore.md | 40 ----- .../Test_Jump_Iterate/Test_Jump_Iterate.md | 37 ----- .../Unittest_ALLOW_BACKPROP.md | 39 ----- .../Unittest_JUMP_ITERATE.md | 38 ----- .../Unittest_JUMP_WHEN/Unittest_JUMP_WHEN.md | 38 ----- .../Unittest_SPLIT/Unittest_SPLIT.md | 36 ----- .../Unittest_SPLIT_sample.md | 37 ----- .../Test_Cyl_monitors/Test_Cyl_monitors.md | 43 ----- .../Test_Monitor_nD/Test_Monitor_nD.md | 38 ----- .../Test_TOF_PSDmonitor_toQ.md | 36 ----- .../Test_Al_windows/Test_Al_windows.md | 45 ------ .../Test_Collimator_Radial.md | 36 ----- .../Test_Conics_pairs/Test_Conics_pairs.md | 43 ----- .../Test_DiskChoppers/Test_DiskChoppers.md | 35 ---- .../Test_DiskChoppers2/Test_DiskChoppers2.md | 41 ----- .../Tests_optics/Test_Fermi/Test_Fermi.md | 46 ------ .../Test_FocalisationMirrors.md | 44 ----- .../Tests_optics/Test_Guides/Test_Guides.md | 34 ---- .../Test_Guides_Curved/Test_Guides_Curved.md | 35 ---- .../Tests_optics/Test_Lens/Test_Lens.md | 35 ---- .../Test_Monochromator_bent.md | 33 ---- .../Test_Monochromator_bent_complex.md | 43 ----- .../Test_Monochromators.md | 57 ------- .../Tests_optics/Test_NMO/Test_NMO.md | 55 ------- .../Test_PSD_Detector/Test_PSD_Detector.md | 34 ---- .../Test_Pol_Bender_Vs_Guide_Curved.md | 37 ----- .../Tests_optics/Test_Rotator/Test_Rotator.md | 37 ----- .../Test_Selectors/Test_Selectors.md | 36 ----- .../Test_Source_pulsed/Test_Source_pulsed.md | 34 ---- .../Tests_optics/Test_Sources/Test_Sources.md | 41 ----- .../Test_StatisticalChopper.md | 34 ---- .../Test_Vertical_Bender.md | 40 ----- .../Tests_optics/Test_filters/Test_filters.md | 42 ----- .../Tests_optics/Test_focus/Test_focus.md | 42 ----- .../Tests_other/test_File/test_File.md | 33 ---- .../He3_spin_filter/He3_spin_filter.md | 41 ----- .../SE_example/SE_example.md | 45 ------ .../SE_example2/SE_example2.md | 45 ------ .../Supermirror_thin_substrate.md | 54 ------- .../Test_Magnetic_Constant.md | 38 ----- .../Test_Magnetic_Majorana.md | 41 ----- .../Test_Magnetic_Rotation.md | 37 ----- .../Test_Pol_Bender/Test_Pol_Bender.md | 38 ----- .../Test_Pol_FieldBox/Test_Pol_FieldBox.md | 35 ---- .../Test_Pol_Guide_Vmirror.md | 33 ---- .../Test_Pol_Guide_mirror.md | 34 ---- .../Test_Pol_MSF/Test_Pol_MSF.md | 33 ---- .../Test_Pol_Mirror/Test_Pol_Mirror.md | 38 ----- .../Test_Pol_SF_ideal/Test_Pol_SF_ideal.md | 36 ----- .../Test_Pol_Set/Test_Pol_Set.md | 34 ---- .../Test_Pol_Tabled/Test_Pol_Tabled.md | 37 ----- .../Test_Pol_TripleAxis.md | 43 ----- .../Test_V_cavity_SNAG_double_side.md | 46 ------ .../Test_V_cavity_SNAG_single_side.md | 46 ------ .../Test_pol_ideal/Test_pol_ideal.md | 32 ---- .../GISANS_tests/GISANS_tests.md | 36 ----- .../Samples_Incoherent/Samples_Incoherent.md | 76 --------- .../Samples_Incoherent_off.md | 35 ---- .../Samples_Isotropic_Sqw.md | 37 ----- .../Samples_Phonon/Samples_Phonon.md | 41 ----- .../Samples_vanadium/Samples_vanadium.md | 35 ---- .../Test_Incoherent/Test_Incoherent.md | 33 ---- .../Test_Incoherent_MS/Test_Incoherent_MS.md | 66 -------- .../Test_Magnon_bcc_2D/Test_Magnon_bcc_2D.md | 41 ----- .../Test_Magnon_bcc_TAS.md | 43 ----- .../Test_PowderN/Test_PowderN.md | 40 ----- .../Test_PowderN_Res/Test_PowderN_Res.md | 46 ------ .../Test_PowderN_concentric.md | 36 ----- .../Test_Powders/Test_Powders.md | 40 ----- .../Tests_samples/Test_SANS/Test_SANS.md | 54 ------- .../examples/Tests_samples/Test_SX/Test_SX.md | 42 ----- .../Test_Single_crystal_inelastic.md | 49 ------ .../Tests_samples/Test_Sqw/Test_Sqw.md | 36 ----- .../Test_Sqw_monitor/Test_Sqw_monitor.md | 116 ------------- .../Test_TOFRes_sample/Test_TOFRes_sample.md | 42 ----- .../Test_TasReso/Test_TasReso.md | 59 ------- .../Test_single_magnetic_crystal.md | 44 ----- .../Unittest_SANS_benchmark2.md | 39 ----- .../Test_Source_custom/test_Source_custom.md | 32 ---- .../Test_Source_quasi/Test_Source_quasi.md | 32 ---- .../Conditional_test/Conditional_test.md | 32 ---- .../External_component_test.md | 32 ---- .../Geometry_test/Geometry_test.md | 32 ---- .../Hidden_Cylinder/Hidden_Cylinder.md | 41 ----- .../IncoherentPhonon_test.md | 56 ------- .../Tests_union/Logger_test/Logger_test.md | 33 ---- .../Tests_union/Many_meshes/Many_meshes.md | 40 ----- .../Test_absorption/Test_absorption.md | 33 ---- .../Test_absorption_image.md | 33 ---- .../examples/Tests_union/Test_box/Test_box.md | 34 ---- .../Tests_union/Test_mask/Test_mask.md | 32 ---- .../Tests_union/Test_powder/Test_powder.md | 31 ---- .../Tests_union/Test_texture/Test_texture.md | 37 ----- .../Unit_test_abs_logger_1D_space.md | 33 ---- .../Unit_test_abs_logger_1D_space_event.md | 31 ---- .../Unit_test_abs_logger_1D_space_tof.md | 32 ---- ..._test_abs_logger_1D_space_tof_to_lambda.md | 39 ----- .../Unit_test_abs_logger_2D_space.md | 31 ---- .../Unit_test_abs_logger_event.md | 31 ---- .../Unit_test_abs_logger_nD.md | 33 ---- .../Unit_test_conditional_PSD.md | 33 ---- .../Unit_test_conditional_standard.md | 33 ---- .../Unit_test_logger_1D.md | 31 ---- .../Unit_test_logger_2DQ.md | 31 ---- .../Unit_test_logger_2D_kf.md | 31 ---- .../Unit_test_logger_2D_kf_time.md | 31 ---- .../Unit_test_logger_2D_space.md | 33 ---- .../Unit_test_logger_2D_space_time.md | 31 ---- .../Unit_test_logger_3D_space.md | 31 ---- .../Unit_test_loggers_base.md | 31 ---- .../Tools/Histogrammer/Histogrammer.md | 58 ------- .../MCPL2Mantid_flat/MCPL2Mantid_flat.md | 58 ------- .../examples/Tools/MCPL2hist/MCPL2hist.md | 44 ----- .../MCPL_filter_energy/MCPL_filter_energy.md | 39 ----- .../MCPL_filter_radius/MCPL_filter_radius.md | 36 ----- .../MCPL_filter_wavelength.md | 39 ----- .../examples/Tools/vinput2mcpl/vinput2mcpl.md | 36 ----- .../Union_demos/Bispectral/Bispectral.md | 37 ----- .../Demonstration/Demonstration.md | 39 ----- .../External_component/External_component.md | 35 ---- .../Union_demos/Laue_camera/Laue_camera.md | 45 ------ .../Manual_example/Manual_example.md | 33 ---- .../Sample_picture_replica.md | 33 ---- .../Union_demos/Tagging_demo/Tagging_demo.md | 44 ----- .../Time_of_flight/Time_of_flight.md | 34 ---- .../SE_usage_example/SE_usage_example.md | 34 ---- .../cryostat_example/cryostat_example.md | 40 ----- .../Incoherent_validation.md | 39 ----- .../Mirror_validation/Mirror_validation.md | 49 ------ .../Powder_validation/Powder_validation.md | 45 ------ .../Single_crystal_validation.md | 53 ------ .../Radiography_absorbing_edge.md | 42 ----- .../elearning/Reflectometer/Reflectometer.md | 55 ------- .../elearning/SANSsimple/SANSsimple.md | 48 ------ .../SANSsimpleSpheres/SANSsimpleSpheres.md | 46 ------ .../SimplePowderDiffractometer.md | 41 ----- 289 files changed, 13114 deletions(-) delete mode 100644 mcstas-comps/examples/BNL/BNL_H8/BNL_H8.md delete mode 100644 mcstas-comps/examples/BNL/BNL_H8_simple/BNL_H8_simple.md delete mode 100644 mcstas-comps/examples/BNL/h8_test_legacy/h8_test_legacy.md delete mode 100644 mcstas-comps/examples/DTU/Test_FZP_simple/Test_FZP_simple.md delete mode 100644 mcstas-comps/examples/DTU/Vin_test/Vin_test.md delete mode 100644 mcstas-comps/examples/DTU/Vout_test/Vout_test.md delete mode 100644 mcstas-comps/examples/ESS/ESS_BEER_MCPL/ESS_BEER_MCPL.md delete mode 100644 mcstas-comps/examples/ESS/ESS_IN5_reprate/ESS_IN5_reprate.md delete mode 100644 mcstas-comps/examples/ESS/ESS_Testbeamline_HZB_V20/ESS_Testbeamline_HZB_V20.md delete mode 100644 mcstas-comps/examples/ESS/ESS_butterfly_Guide_curved_test/ESS_butterfly_Guide_curved_test.md delete mode 100644 mcstas-comps/examples/ESS/ESS_butterfly_MCPL_test/ESS_butterfly_MCPL_test.md delete mode 100644 mcstas-comps/examples/ESS/ESS_butterfly_test/ESS_butterfly_test.md delete mode 100644 mcstas-comps/examples/ESS/ESS_butterfly_tfocus_NOFOCUS_test/ESS_butterfly_tfocus_NOFOCUS_test.md delete mode 100644 mcstas-comps/examples/ESS/ESS_butterfly_tfocus_test/ESS_butterfly_tfocus_test.md delete mode 100644 mcstas-comps/examples/ESS/ESS_mcpl2hist/ESS_mcpl2hist.md delete mode 100644 mcstas-comps/examples/FZ_Juelich/FZJ_BenchmarkSfin2/FZJ_BenchmarkSfin2.md delete mode 100644 mcstas-comps/examples/FZ_Juelich/FZJ_KWS2_Lens/FZJ_KWS2_Lens.md delete mode 100644 mcstas-comps/examples/FZ_Juelich/FZJ_SANS_KWS2_AnySample/FZJ_SANS_KWS2_AnySample.md delete mode 100644 mcstas-comps/examples/HZB/HZB_FLEX/HZB_FLEX.md delete mode 100644 mcstas-comps/examples/HZB/HZB_NEAT/HZB_NEAT.md delete mode 100644 mcstas-comps/examples/HighNESS/WOFSANS/WOFSANS.md delete mode 100644 mcstas-comps/examples/ILL/ILL_BRISP/ILL_BRISP.md delete mode 100644 mcstas-comps/examples/ILL/ILL_D2B/ILL_D2B.md delete mode 100644 mcstas-comps/examples/ILL/ILL_D2B_noenv/ILL_D2B_noenv.md delete mode 100644 mcstas-comps/examples/ILL/ILL_D4/ILL_D4.md delete mode 100644 mcstas-comps/examples/ILL/ILL_H10_IN8/ILL_H10_IN8.md delete mode 100644 mcstas-comps/examples/ILL/ILL_H113/ILL_H113.md delete mode 100644 mcstas-comps/examples/ILL/ILL_H13_IN20/ILL_H13_IN20.md delete mode 100644 mcstas-comps/examples/ILL/ILL_H142/ILL_H142.md delete mode 100644 mcstas-comps/examples/ILL/ILL_H142_D33/ILL_H142_D33.md delete mode 100644 mcstas-comps/examples/ILL/ILL_H142_IN12/ILL_H142_IN12.md delete mode 100644 mcstas-comps/examples/ILL/ILL_H142_simple/ILL_H142_simple.md delete mode 100644 mcstas-comps/examples/ILL/ILL_H143_LADI/ILL_H143_LADI.md delete mode 100644 mcstas-comps/examples/ILL/ILL_H15/ILL_H15.md delete mode 100644 mcstas-comps/examples/ILL/ILL_H15_D11/ILL_H15_D11.md delete mode 100644 mcstas-comps/examples/ILL/ILL_H15_IN6/ILL_H15_IN6.md delete mode 100644 mcstas-comps/examples/ILL/ILL_H15_SAM/ILL_H15_SAM.md delete mode 100644 mcstas-comps/examples/ILL/ILL_H16/ILL_H16.md delete mode 100644 mcstas-comps/examples/ILL/ILL_H16_IN5/ILL_H16_IN5.md delete mode 100644 mcstas-comps/examples/ILL/ILL_H22/ILL_H22.md delete mode 100644 mcstas-comps/examples/ILL/ILL_H22_D1A/ILL_H22_D1A.md delete mode 100644 mcstas-comps/examples/ILL/ILL_H22_D1A_noenv/ILL_H22_D1A_noenv.md delete mode 100644 mcstas-comps/examples/ILL/ILL_H22_D1B/ILL_H22_D1B.md delete mode 100644 mcstas-comps/examples/ILL/ILL_H22_D1B_noenv/ILL_H22_D1B_noenv.md delete mode 100644 mcstas-comps/examples/ILL/ILL_H22_VIVALDI/ILL_H22_VIVALDI.md delete mode 100644 mcstas-comps/examples/ILL/ILL_H24/ILL_H24.md delete mode 100644 mcstas-comps/examples/ILL/ILL_H25/ILL_H25.md delete mode 100644 mcstas-comps/examples/ILL/ILL_H25_IN22/ILL_H25_IN22.md delete mode 100644 mcstas-comps/examples/ILL/ILL_H5/ILL_H5.md delete mode 100644 mcstas-comps/examples/ILL/ILL_H512_D22/ILL_H512_D22.md delete mode 100644 mcstas-comps/examples/ILL/ILL_H53/ILL_H53.md delete mode 100644 mcstas-comps/examples/ILL/ILL_H53_D16/ILL_H53_D16.md delete mode 100644 mcstas-comps/examples/ILL/ILL_H53_IN14/ILL_H53_IN14.md delete mode 100644 mcstas-comps/examples/ILL/ILL_H5_new/ILL_H5_new.md delete mode 100644 mcstas-comps/examples/ILL/ILL_H8_IN1/ILL_H8_IN1.md delete mode 100644 mcstas-comps/examples/ILL/ILL_IN13/ILL_IN13.md delete mode 100644 mcstas-comps/examples/ILL/ILL_IN4/ILL_IN4.md delete mode 100644 mcstas-comps/examples/ILL/ILL_IN5/ILL_IN5.md delete mode 100644 mcstas-comps/examples/ILL/ILL_IN5_Spots/ILL_IN5_Spots.md delete mode 100644 mcstas-comps/examples/ILL/ILL_IN6/ILL_IN6.md delete mode 100644 mcstas-comps/examples/ILL/ILL_Lagrange/ILL_Lagrange.md delete mode 100644 mcstas-comps/examples/ILL/ILL_SALSA/ILL_SALSA.md delete mode 100644 mcstas-comps/examples/ISIS/ISIS_CRISP/ISIS_CRISP.md delete mode 100644 mcstas-comps/examples/ISIS/ISIS_GEM/ISIS_GEM.md delete mode 100644 mcstas-comps/examples/ISIS/ISIS_HET/ISIS_HET.md delete mode 100644 mcstas-comps/examples/ISIS/ISIS_IMAT/ISIS_IMAT.md delete mode 100644 mcstas-comps/examples/ISIS/ISIS_LET/ISIS_LET.md delete mode 100644 mcstas-comps/examples/ISIS/ISIS_MERLIN/ISIS_MERLIN.md delete mode 100644 mcstas-comps/examples/ISIS/ISIS_OSIRIS/ISIS_OSIRIS.md delete mode 100644 mcstas-comps/examples/ISIS/ISIS_Prisma2/ISIS_Prisma2.md delete mode 100644 mcstas-comps/examples/ISIS/ISIS_SANS2d/ISIS_SANS2d.md delete mode 100644 mcstas-comps/examples/ISIS/ISIS_TOSCA_preupgrade/ISIS_TOSCA_preupgrade.md delete mode 100644 mcstas-comps/examples/ISIS/ISIS_TS1_Brilliance/ISIS_TS1_Brilliance.md delete mode 100644 mcstas-comps/examples/ISIS/ISIS_TS2_Brilliance/ISIS_TS2_Brilliance.md delete mode 100644 mcstas-comps/examples/ISIS/ISIS_test/ISIS_test.md delete mode 100644 mcstas-comps/examples/ISIS/ViewModISIStest/ViewModISIStest.md delete mode 100644 mcstas-comps/examples/LLB/LLB_6T2/LLB_6T2.md delete mode 100644 mcstas-comps/examples/Mantid/ILL_H16_IN5_Mantid/ILL_H16_IN5_Mantid.md delete mode 100644 mcstas-comps/examples/Mantid/ILL_H16_Mantid/ILL_H16_Mantid.md delete mode 100644 mcstas-comps/examples/Mantid/ILL_IN5_Mantid/ILL_IN5_Mantid.md delete mode 100644 mcstas-comps/examples/Mantid/ISIS_SANS2d_Mantid/ISIS_SANS2d_Mantid.md delete mode 100644 mcstas-comps/examples/Mantid/ISIS_TOSCA_preupgrade_Mantid/ISIS_TOSCA_preupgrade_Mantid.md delete mode 100644 mcstas-comps/examples/Mantid/SNS_ARCS_Mantid/SNS_ARCS_Mantid.md delete mode 100644 mcstas-comps/examples/Mantid/Tools_ONION/Tools_ONION.md delete mode 100644 mcstas-comps/examples/Mantid/templateSANS2_Mantid/templateSANS2_Mantid.md delete mode 100644 mcstas-comps/examples/Mantid/templateSANS_Mantid/templateSANS_Mantid.md delete mode 100644 mcstas-comps/examples/Mantid/templateSasView_Mantid/templateSasView_Mantid.md delete mode 100644 mcstas-comps/examples/Mantid/templateVanadiumMultipleScat_Mantid/templateVanadiumMultipleScat_Mantid.md delete mode 100644 mcstas-comps/examples/NCrystal/NCrystal_example/NCrystal_example.md delete mode 100644 mcstas-comps/examples/NCrystal/Union_NCrystal_example/Union_NCrystal_example.md delete mode 100644 mcstas-comps/examples/NCrystal/Union_NCrystal_mix_example/Union_NCrystal_mix_example.md delete mode 100644 mcstas-comps/examples/Necsa/SAFARI_MPISI/SAFARI_MPISI.md delete mode 100644 mcstas-comps/examples/Necsa/SAFARI_PITSI/SAFARI_PITSI.md delete mode 100644 mcstas-comps/examples/PSI/PSI_DMC/PSI_DMC.md delete mode 100644 mcstas-comps/examples/PSI/PSI_DMC_simple/PSI_DMC_simple.md delete mode 100644 mcstas-comps/examples/PSI/PSI_Focus/PSI_Focus.md delete mode 100644 mcstas-comps/examples/PSI/PSI_source/PSI_source.md delete mode 100644 mcstas-comps/examples/PSI/RITA-II/RITA-II.md delete mode 100644 mcstas-comps/examples/Risoe/TAS1_C1/TAS1_C1.md delete mode 100644 mcstas-comps/examples/Risoe/TAS1_C1_Tilt/TAS1_C1_Tilt.md delete mode 100644 mcstas-comps/examples/Risoe/TAS1_Diff_Powder/TAS1_Diff_Powder.md delete mode 100644 mcstas-comps/examples/Risoe/TAS1_Diff_Slit/TAS1_Diff_Slit.md delete mode 100644 mcstas-comps/examples/Risoe/TAS1_Diff_Vana/TAS1_Diff_Vana.md delete mode 100644 mcstas-comps/examples/Risoe/TAS1_Powder/TAS1_Powder.md delete mode 100644 mcstas-comps/examples/Risoe/TAS1_Vana/TAS1_Vana.md delete mode 100644 mcstas-comps/examples/SINE2020/McStas_Isotropic_Sqw/McStas_Isotropic_Sqw.md delete mode 100644 mcstas-comps/examples/SINE2020/McStas_PowderN/McStas_PowderN.md delete mode 100644 mcstas-comps/examples/SINE2020/McStas_Single_crystal/McStas_Single_crystal.md delete mode 100644 mcstas-comps/examples/SNS/Gallmeier_SNS_decoupled_poisoned/Gallmeier_SNS_decoupled_poisoned.md delete mode 100644 mcstas-comps/examples/SNS/Granroth_SNS_decoupled_poisoned/Granroth_SNS_decoupled_poisoned.md delete mode 100644 mcstas-comps/examples/SNS/Mezei_SNS_decoupled_poisoned/Mezei_SNS_decoupled_poisoned.md delete mode 100644 mcstas-comps/examples/SNS/SNS_ARCS/SNS_ARCS.md delete mode 100644 mcstas-comps/examples/SNS/SNS_BASIS/SNS_BASIS.md delete mode 100644 mcstas-comps/examples/SNS/SNS_analytic_test/SNS_analytic_test.md delete mode 100644 mcstas-comps/examples/SNS/SNS_test/SNS_test.md delete mode 100644 mcstas-comps/examples/TRIGA/RTP_DIF/RTP_DIF.md delete mode 100644 mcstas-comps/examples/TRIGA/RTP_Laue/RTP_Laue.md delete mode 100644 mcstas-comps/examples/TRIGA/RTP_NeutronRadiography/RTP_NeutronRadiography.md delete mode 100644 mcstas-comps/examples/TRIGA/RTP_SANS/RTP_SANS.md delete mode 100644 mcstas-comps/examples/TUDelft/SEMSANS_Delft/SEMSANS_Delft.md delete mode 100644 mcstas-comps/examples/TUDelft/SEMSANS_instrument/SEMSANS_instrument.md delete mode 100644 mcstas-comps/examples/TUDelft/SESANS_Delft/SESANS_Delft.md delete mode 100644 mcstas-comps/examples/Templates/BTsimple/BTsimple.md delete mode 100644 mcstas-comps/examples/Templates/Demo_shape_primitives/Demo_shape_primitives.md delete mode 100644 mcstas-comps/examples/Templates/Demo_shape_primitives_simple/Demo_shape_primitives_simple.md delete mode 100644 mcstas-comps/examples/Templates/TOF_Reflectometer/TOF_Reflectometer.md delete mode 100644 mcstas-comps/examples/Templates/Test_SasView_bcc_paracrystal_aniso/Test_SasView_bcc_paracrystal_aniso.md delete mode 100644 mcstas-comps/examples/Templates/Test_SasView_guinier/Test_SasView_guinier.md delete mode 100644 mcstas-comps/examples/Templates/Tomography/Tomography.md delete mode 100644 mcstas-comps/examples/Templates/mini/mini.md delete mode 100644 mcstas-comps/examples/Templates/template/template.md delete mode 100644 mcstas-comps/examples/Templates/templateDIFF/templateDIFF.md delete mode 100644 mcstas-comps/examples/Templates/templateLaue/templateLaue.md delete mode 100644 mcstas-comps/examples/Templates/templateNMX/templateNMX.md delete mode 100644 mcstas-comps/examples/Templates/templateNMX_TOF/templateNMX_TOF.md delete mode 100644 mcstas-comps/examples/Templates/templateSANS/templateSANS.md delete mode 100644 mcstas-comps/examples/Templates/templateSANS2/templateSANS2.md delete mode 100644 mcstas-comps/examples/Templates/templateSANS_MCPL/templateSANS_MCPL.md delete mode 100644 mcstas-comps/examples/Templates/templateSasView/templateSasView.md delete mode 100644 mcstas-comps/examples/Templates/templateTAS/templateTAS.md delete mode 100644 mcstas-comps/examples/Templates/templateTOF/templateTOF.md delete mode 100644 mcstas-comps/examples/Templates/template_simple/template_simple.md delete mode 100644 mcstas-comps/examples/Tests_MCPL_etc/Test_MCPL_input/Test_MCPL_input.md delete mode 100644 mcstas-comps/examples/Tests_MCPL_etc/Test_MCPL_input_once/Test_MCPL_input_once.md delete mode 100644 mcstas-comps/examples/Tests_MCPL_etc/Test_MCPL_output/Test_MCPL_output.md delete mode 100644 mcstas-comps/examples/Tests_RNG/Test_RNG_rand01/Test_RNG_rand01.md delete mode 100644 mcstas-comps/examples/Tests_RNG/Test_RNG_randnorm/Test_RNG_randnorm.md delete mode 100644 mcstas-comps/examples/Tests_RNG/Test_RNG_randpm1/Test_RNG_randpm1.md delete mode 100644 mcstas-comps/examples/Tests_RNG/Test_RNG_randtriangle/Test_RNG_randtriangle.md delete mode 100644 mcstas-comps/examples/Tests_RNG/Test_RNG_randvec_target_circle/Test_RNG_randvec_target_circle.md delete mode 100644 mcstas-comps/examples/Tests_RNG/Test_RNG_randvec_target_rect/Test_RNG_randvec_target_rect.md delete mode 100644 mcstas-comps/examples/Tests_RNG/Test_RNG_randvec_target_rect_angular/Test_RNG_randvec_target_rect_angular.md delete mode 100644 mcstas-comps/examples/Tests_grammar/Test_GROUP/Test_GROUP.md delete mode 100644 mcstas-comps/examples/Tests_grammar/Test_GROUP_restore.md delete mode 100644 mcstas-comps/examples/Tests_grammar/Test_Jump_Iterate/Test_Jump_Iterate.md delete mode 100644 mcstas-comps/examples/Tests_grammar/Unittest_ALLOW_BACKPROP/Unittest_ALLOW_BACKPROP.md delete mode 100644 mcstas-comps/examples/Tests_grammar/Unittest_JUMP_ITERATE/Unittest_JUMP_ITERATE.md delete mode 100644 mcstas-comps/examples/Tests_grammar/Unittest_JUMP_WHEN/Unittest_JUMP_WHEN.md delete mode 100644 mcstas-comps/examples/Tests_grammar/Unittest_SPLIT/Unittest_SPLIT.md delete mode 100644 mcstas-comps/examples/Tests_grammar/Unittest_SPLIT_sample/Unittest_SPLIT_sample.md delete mode 100644 mcstas-comps/examples/Tests_monitors/Test_Cyl_monitors/Test_Cyl_monitors.md delete mode 100644 mcstas-comps/examples/Tests_monitors/Test_Monitor_nD/Test_Monitor_nD.md delete mode 100644 mcstas-comps/examples/Tests_monitors/Test_TOF_PSDmonitor_toQ/Test_TOF_PSDmonitor_toQ.md delete mode 100644 mcstas-comps/examples/Tests_optics/Test_Al_windows/Test_Al_windows.md delete mode 100644 mcstas-comps/examples/Tests_optics/Test_Collimator_Radial/Test_Collimator_Radial.md delete mode 100644 mcstas-comps/examples/Tests_optics/Test_Conics_pairs/Test_Conics_pairs.md delete mode 100644 mcstas-comps/examples/Tests_optics/Test_DiskChoppers/Test_DiskChoppers.md delete mode 100644 mcstas-comps/examples/Tests_optics/Test_DiskChoppers2/Test_DiskChoppers2.md delete mode 100644 mcstas-comps/examples/Tests_optics/Test_Fermi/Test_Fermi.md delete mode 100644 mcstas-comps/examples/Tests_optics/Test_FocalisationMirrors/Test_FocalisationMirrors.md delete mode 100644 mcstas-comps/examples/Tests_optics/Test_Guides/Test_Guides.md delete mode 100644 mcstas-comps/examples/Tests_optics/Test_Guides_Curved/Test_Guides_Curved.md delete mode 100644 mcstas-comps/examples/Tests_optics/Test_Lens/Test_Lens.md delete mode 100644 mcstas-comps/examples/Tests_optics/Test_Monochromator_bent/Test_Monochromator_bent.md delete mode 100644 mcstas-comps/examples/Tests_optics/Test_Monochromator_bent_complex/Test_Monochromator_bent_complex.md delete mode 100644 mcstas-comps/examples/Tests_optics/Test_Monochromators/Test_Monochromators.md delete mode 100644 mcstas-comps/examples/Tests_optics/Test_NMO/Test_NMO.md delete mode 100644 mcstas-comps/examples/Tests_optics/Test_PSD_Detector/Test_PSD_Detector.md delete mode 100644 mcstas-comps/examples/Tests_optics/Test_Pol_Bender_Vs_Guide_Curved/Test_Pol_Bender_Vs_Guide_Curved.md delete mode 100644 mcstas-comps/examples/Tests_optics/Test_Rotator/Test_Rotator.md delete mode 100644 mcstas-comps/examples/Tests_optics/Test_Selectors/Test_Selectors.md delete mode 100644 mcstas-comps/examples/Tests_optics/Test_Source_pulsed/Test_Source_pulsed.md delete mode 100644 mcstas-comps/examples/Tests_optics/Test_Sources/Test_Sources.md delete mode 100644 mcstas-comps/examples/Tests_optics/Test_StatisticalChopper/Test_StatisticalChopper.md delete mode 100644 mcstas-comps/examples/Tests_optics/Test_Vertical_Bender/Test_Vertical_Bender.md delete mode 100644 mcstas-comps/examples/Tests_optics/Test_filters/Test_filters.md delete mode 100644 mcstas-comps/examples/Tests_optics/Test_focus/Test_focus.md delete mode 100644 mcstas-comps/examples/Tests_other/test_File/test_File.md delete mode 100644 mcstas-comps/examples/Tests_polarization/He3_spin_filter/He3_spin_filter.md delete mode 100644 mcstas-comps/examples/Tests_polarization/SE_example/SE_example.md delete mode 100644 mcstas-comps/examples/Tests_polarization/SE_example2/SE_example2.md delete mode 100644 mcstas-comps/examples/Tests_polarization/Supermirror_thin_substrate/Supermirror_thin_substrate.md delete mode 100644 mcstas-comps/examples/Tests_polarization/Test_Magnetic_Constant/Test_Magnetic_Constant.md delete mode 100644 mcstas-comps/examples/Tests_polarization/Test_Magnetic_Majorana/Test_Magnetic_Majorana.md delete mode 100644 mcstas-comps/examples/Tests_polarization/Test_Magnetic_Rotation/Test_Magnetic_Rotation.md delete mode 100644 mcstas-comps/examples/Tests_polarization/Test_Pol_Bender/Test_Pol_Bender.md delete mode 100644 mcstas-comps/examples/Tests_polarization/Test_Pol_FieldBox/Test_Pol_FieldBox.md delete mode 100644 mcstas-comps/examples/Tests_polarization/Test_Pol_Guide_Vmirror/Test_Pol_Guide_Vmirror.md delete mode 100644 mcstas-comps/examples/Tests_polarization/Test_Pol_Guide_mirror/Test_Pol_Guide_mirror.md delete mode 100644 mcstas-comps/examples/Tests_polarization/Test_Pol_MSF/Test_Pol_MSF.md delete mode 100644 mcstas-comps/examples/Tests_polarization/Test_Pol_Mirror/Test_Pol_Mirror.md delete mode 100644 mcstas-comps/examples/Tests_polarization/Test_Pol_SF_ideal/Test_Pol_SF_ideal.md delete mode 100644 mcstas-comps/examples/Tests_polarization/Test_Pol_Set/Test_Pol_Set.md delete mode 100644 mcstas-comps/examples/Tests_polarization/Test_Pol_Tabled/Test_Pol_Tabled.md delete mode 100644 mcstas-comps/examples/Tests_polarization/Test_Pol_TripleAxis/Test_Pol_TripleAxis.md delete mode 100644 mcstas-comps/examples/Tests_polarization/Test_V_cavity_SNAG_double_side/Test_V_cavity_SNAG_double_side.md delete mode 100644 mcstas-comps/examples/Tests_polarization/Test_V_cavity_SNAG_single_side/Test_V_cavity_SNAG_single_side.md delete mode 100644 mcstas-comps/examples/Tests_polarization/Test_pol_ideal/Test_pol_ideal.md delete mode 100644 mcstas-comps/examples/Tests_samples/GISANS_tests/GISANS_tests.md delete mode 100644 mcstas-comps/examples/Tests_samples/Samples_Incoherent/Samples_Incoherent.md delete mode 100644 mcstas-comps/examples/Tests_samples/Samples_Incoherent_off/Samples_Incoherent_off.md delete mode 100644 mcstas-comps/examples/Tests_samples/Samples_Isotropic_Sqw/Samples_Isotropic_Sqw.md delete mode 100644 mcstas-comps/examples/Tests_samples/Samples_Phonon/Samples_Phonon.md delete mode 100644 mcstas-comps/examples/Tests_samples/Samples_vanadium/Samples_vanadium.md delete mode 100644 mcstas-comps/examples/Tests_samples/Test_Incoherent/Test_Incoherent.md delete mode 100644 mcstas-comps/examples/Tests_samples/Test_Incoherent_MS/Test_Incoherent_MS.md delete mode 100644 mcstas-comps/examples/Tests_samples/Test_Magnon_bcc_2D/Test_Magnon_bcc_2D.md delete mode 100644 mcstas-comps/examples/Tests_samples/Test_Magnon_bcc_TAS/Test_Magnon_bcc_TAS.md delete mode 100644 mcstas-comps/examples/Tests_samples/Test_PowderN/Test_PowderN.md delete mode 100644 mcstas-comps/examples/Tests_samples/Test_PowderN_Res/Test_PowderN_Res.md delete mode 100644 mcstas-comps/examples/Tests_samples/Test_PowderN_concentric/Test_PowderN_concentric.md delete mode 100644 mcstas-comps/examples/Tests_samples/Test_Powders/Test_Powders.md delete mode 100644 mcstas-comps/examples/Tests_samples/Test_SANS/Test_SANS.md delete mode 100644 mcstas-comps/examples/Tests_samples/Test_SX/Test_SX.md delete mode 100644 mcstas-comps/examples/Tests_samples/Test_Single_crystal_inelastic/Test_Single_crystal_inelastic.md delete mode 100644 mcstas-comps/examples/Tests_samples/Test_Sqw/Test_Sqw.md delete mode 100644 mcstas-comps/examples/Tests_samples/Test_Sqw_monitor/Test_Sqw_monitor.md delete mode 100644 mcstas-comps/examples/Tests_samples/Test_TOFRes_sample/Test_TOFRes_sample.md delete mode 100644 mcstas-comps/examples/Tests_samples/Test_TasReso/Test_TasReso.md delete mode 100644 mcstas-comps/examples/Tests_samples/Test_single_magnetic_crystal/Test_single_magnetic_crystal.md delete mode 100644 mcstas-comps/examples/Tests_samples/Unittest_SANS_benchmark2/Unittest_SANS_benchmark2.md delete mode 100644 mcstas-comps/examples/Tests_sources/Test_Source_custom/test_Source_custom.md delete mode 100644 mcstas-comps/examples/Tests_sources/Test_Source_quasi/Test_Source_quasi.md delete mode 100644 mcstas-comps/examples/Tests_union/Conditional_test/Conditional_test.md delete mode 100644 mcstas-comps/examples/Tests_union/External_component_test/External_component_test.md delete mode 100644 mcstas-comps/examples/Tests_union/Geometry_test/Geometry_test.md delete mode 100644 mcstas-comps/examples/Tests_union/Hidden_Cylinder/Hidden_Cylinder.md delete mode 100644 mcstas-comps/examples/Tests_union/IncoherentPhonon_test/IncoherentPhonon_test.md delete mode 100644 mcstas-comps/examples/Tests_union/Logger_test/Logger_test.md delete mode 100644 mcstas-comps/examples/Tests_union/Many_meshes/Many_meshes.md delete mode 100644 mcstas-comps/examples/Tests_union/Test_absorption/Test_absorption.md delete mode 100644 mcstas-comps/examples/Tests_union/Test_absorption_image/Test_absorption_image.md delete mode 100644 mcstas-comps/examples/Tests_union/Test_box/Test_box.md delete mode 100644 mcstas-comps/examples/Tests_union/Test_mask/Test_mask.md delete mode 100644 mcstas-comps/examples/Tests_union/Test_powder/Test_powder.md delete mode 100644 mcstas-comps/examples/Tests_union/Test_texture/Test_texture.md delete mode 100644 mcstas-comps/examples/Tests_union/Unit_test_abs_logger_1D_space/Unit_test_abs_logger_1D_space.md delete mode 100644 mcstas-comps/examples/Tests_union/Unit_test_abs_logger_1D_space_event/Unit_test_abs_logger_1D_space_event.md delete mode 100644 mcstas-comps/examples/Tests_union/Unit_test_abs_logger_1D_space_tof/Unit_test_abs_logger_1D_space_tof.md delete mode 100644 mcstas-comps/examples/Tests_union/Unit_test_abs_logger_1D_space_tof_to_lambda/Unit_test_abs_logger_1D_space_tof_to_lambda.md delete mode 100644 mcstas-comps/examples/Tests_union/Unit_test_abs_logger_2D_space/Unit_test_abs_logger_2D_space.md delete mode 100644 mcstas-comps/examples/Tests_union/Unit_test_abs_logger_event/Unit_test_abs_logger_event.md delete mode 100644 mcstas-comps/examples/Tests_union/Unit_test_abs_logger_nD/Unit_test_abs_logger_nD.md delete mode 100644 mcstas-comps/examples/Tests_union/Unit_test_conditional_PSD/Unit_test_conditional_PSD.md delete mode 100644 mcstas-comps/examples/Tests_union/Unit_test_conditional_standard/Unit_test_conditional_standard.md delete mode 100644 mcstas-comps/examples/Tests_union/Unit_test_logger_1D/Unit_test_logger_1D.md delete mode 100644 mcstas-comps/examples/Tests_union/Unit_test_logger_2DQ/Unit_test_logger_2DQ.md delete mode 100644 mcstas-comps/examples/Tests_union/Unit_test_logger_2D_kf/Unit_test_logger_2D_kf.md delete mode 100644 mcstas-comps/examples/Tests_union/Unit_test_logger_2D_kf_time/Unit_test_logger_2D_kf_time.md delete mode 100644 mcstas-comps/examples/Tests_union/Unit_test_logger_2D_space/Unit_test_logger_2D_space.md delete mode 100644 mcstas-comps/examples/Tests_union/Unit_test_logger_2D_space_time/Unit_test_logger_2D_space_time.md delete mode 100644 mcstas-comps/examples/Tests_union/Unit_test_logger_3D_space/Unit_test_logger_3D_space.md delete mode 100644 mcstas-comps/examples/Tests_union/Unit_test_loggers_base/Unit_test_loggers_base.md delete mode 100644 mcstas-comps/examples/Tools/Histogrammer/Histogrammer.md delete mode 100644 mcstas-comps/examples/Tools/MCPL2Mantid_flat/MCPL2Mantid_flat.md delete mode 100644 mcstas-comps/examples/Tools/MCPL2hist/MCPL2hist.md delete mode 100644 mcstas-comps/examples/Tools/MCPL_filter_energy/MCPL_filter_energy.md delete mode 100644 mcstas-comps/examples/Tools/MCPL_filter_radius/MCPL_filter_radius.md delete mode 100644 mcstas-comps/examples/Tools/MCPL_filter_wavelength/MCPL_filter_wavelength.md delete mode 100644 mcstas-comps/examples/Tools/vinput2mcpl/vinput2mcpl.md delete mode 100644 mcstas-comps/examples/Union_demos/Bispectral/Bispectral.md delete mode 100644 mcstas-comps/examples/Union_demos/Demonstration/Demonstration.md delete mode 100644 mcstas-comps/examples/Union_demos/External_component/External_component.md delete mode 100644 mcstas-comps/examples/Union_demos/Laue_camera/Laue_camera.md delete mode 100644 mcstas-comps/examples/Union_demos/Manual_example/Manual_example.md delete mode 100644 mcstas-comps/examples/Union_demos/Sample_picture_replica/Sample_picture_replica.md delete mode 100644 mcstas-comps/examples/Union_demos/Tagging_demo/Tagging_demo.md delete mode 100644 mcstas-comps/examples/Union_demos/Time_of_flight/Time_of_flight.md delete mode 100644 mcstas-comps/examples/Union_sample_environments/SE_usage_example/SE_usage_example.md delete mode 100644 mcstas-comps/examples/Union_sample_environments/cryostat_example/cryostat_example.md delete mode 100644 mcstas-comps/examples/Union_validation/Incoherent_validation/Incoherent_validation.md delete mode 100644 mcstas-comps/examples/Union_validation/Mirror_validation/Mirror_validation.md delete mode 100644 mcstas-comps/examples/Union_validation/Powder_validation/Powder_validation.md delete mode 100644 mcstas-comps/examples/Union_validation/Single_crystal_validation/Single_crystal_validation.md delete mode 100644 mcstas-comps/examples/elearning/Radiography_absorbing_edge/Radiography_absorbing_edge.md delete mode 100644 mcstas-comps/examples/elearning/Reflectometer/Reflectometer.md delete mode 100644 mcstas-comps/examples/elearning/SANSsimple/SANSsimple.md delete mode 100644 mcstas-comps/examples/elearning/SANSsimpleSpheres/SANSsimpleSpheres.md delete mode 100644 mcstas-comps/examples/elearning/SimplePowderDiffractometer/SimplePowderDiffractometer.md diff --git a/mcstas-comps/examples/BNL/BNL_H8/BNL_H8.md b/mcstas-comps/examples/BNL/BNL_H8/BNL_H8.md deleted file mode 100644 index bd12ebfbd..000000000 --- a/mcstas-comps/examples/BNL/BNL_H8/BNL_H8.md +++ /dev/null @@ -1,38 +0,0 @@ -# The `BNL_H8` Instrument - -*McStas: The former thermal H8 triple-axis spectrometer from Brookhaven reactor* - -## Identification - -- **Site:** BNL -- **Author:** Emmanuel Farhi -- **Origin:** ILL (France) -- **Date:** 1st Feb 2001. - -## Description - -```text -This instrument is a simple model of the thermal H8 triple-axis spectrometer -from former Brookhaven reactor. It is directly illuminated by the moderator, -and has flat monochromator and analyzer. Sample is a vanadium cylinder. -Such an instrument was used for the Monte Carlo neutron simulation package -cross comparison related in paper "A Model Instrument for Monte Carlo Code -Comparisons", Neutron News 13 (No. 4), 24-29 (2002). -``` - -## Input parameters - -Parameters in **boldface** are required; the others are optional. - -| Name | Unit | Description | Default | -|------|------|-------------|---------| -| lambda | Angs | source energy | 2.36 | - -## Links - -- [Source code](BNL_H8.instr) for `BNL_H8.instr`. -- Neutron News 13 (No. 4), 24-29 (2002). - ---- - -*Generated for mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/examples/BNL/BNL_H8_simple/BNL_H8_simple.md b/mcstas-comps/examples/BNL/BNL_H8_simple/BNL_H8_simple.md deleted file mode 100644 index c8b76d0e4..000000000 --- a/mcstas-comps/examples/BNL/BNL_H8_simple/BNL_H8_simple.md +++ /dev/null @@ -1,38 +0,0 @@ -# The `BNL_H8_simple` Instrument - -*McStas: The former thermal H8 triple-axis spectrometer from Brookhaven reactor* - -## Identification - -- **Site:** BNL -- **Author:** Emmanuel Farhi -- **Origin:** ILL (France) -- **Date:** 1st Feb 2001. - -## Description - -```text -This instrument is a simple model of the thermal H8 triple-axis spectrometer -from former Brookhaven reactor. It is directly illuminated by the moderator, -and has flat monochromator and analyzer. Sample is a vanadium cylinder. -Such an instrument was used for the Monte Carlo neutron simulation package -cross comparison related in paper "A Model Instrument for Monte Carlo Code -Comparisons", Neutron News 13 (No. 4), 24-29 (2002). -``` - -## Input parameters - -Parameters in **boldface** are required; the others are optional. - -| Name | Unit | Description | Default | -|------|------|-------------|---------| -| lambda | Angs | source energy | 2.36 | - -## Links - -- [Source code](BNL_H8_simple.instr) for `BNL_H8_simple.instr`. -- Neutron News 13 (No. 4), 24-29 (2002). - ---- - -*Generated for mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/examples/BNL/h8_test_legacy/h8_test_legacy.md b/mcstas-comps/examples/BNL/h8_test_legacy/h8_test_legacy.md deleted file mode 100644 index a882adb11..000000000 --- a/mcstas-comps/examples/BNL/h8_test_legacy/h8_test_legacy.md +++ /dev/null @@ -1,44 +0,0 @@ -# The `h8_test_legacy` Instrument - -*McStas: The former thermal H8 triple-axis spectrometer from Brookhaven reactor, 1.12c-comparable* - -## Identification - -- **Site:** BNL -- **Author:** Emmanuel Farhi -- **Origin:** ILL (France) -- **Date:** 1st Feb 2001. - -## Description - -```text -This instrument is a simple model of the thermal H8 triple-axis spectrometer -from former Brookhaven reactor. It is directly illuminated by the moderator, -and has flat monochromator and analyzer. Sample is a vanadium cylinder. -Such an instrument was used for the Monte Carlo neutron simulation package -cross comparison related in paper "A Model Instrument for Monte Carlo Code -Comparisons", Neutron News 13 (No. 4), 24-29 (2002). - -This version of the instrument does not use the SPLIT keyword and is comparable -to the version provided with McStas 1.12c. Has been added for benchmarking -purposes only. - -Example: mcrun h8_test_legacy.instr Lambda=2.36 -``` - -## Input parameters - -Parameters in **boldface** are required; the others are optional. - -| Name | Unit | Description | Default | -|------|------|-------------|---------| -| Lambda | Angs | source energy | 2.36 | - -## Links - -- [Source code](h8_test_legacy.instr) for `h8_test_legacy.instr`. -- Neutron News 13 (No. 4), 24-29 (2002). - ---- - -*Generated for mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/examples/DTU/Test_FZP_simple/Test_FZP_simple.md b/mcstas-comps/examples/DTU/Test_FZP_simple/Test_FZP_simple.md deleted file mode 100644 index ecbcd997e..000000000 --- a/mcstas-comps/examples/DTU/Test_FZP_simple/Test_FZP_simple.md +++ /dev/null @@ -1,35 +0,0 @@ -# The `Test_FZP_simple` Instrument - -*McStas: Simple test instrument for the FZP_simple component* - -## Identification - -- **Site:** DTU -- **Author:** Peter Willendrup (pkwi@fysik.dtu.dkl) -- **Origin:** DTU -- **Date:** March 2023 - -## Description - -```text -Simple test instrument for the FZP_simple component -``` - -## Input parameters - -Parameters in **boldface** are required; the others are optional. - -| Name | Unit | Description | Default | -|------|------|-------------|---------| -| lambda0 | AA | Centre of wavelength distribution | 10 | -| dlambda | AA | Width of wavelength distribution | 1e-1 | -| l1 | m | Distance source to FZP | 40 | - -## Links - -- [Source code](Test_FZP_simple.instr) for `Test_FZP_simple.instr`. -- - ---- - -*Generated for mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/examples/DTU/Vin_test/Vin_test.md b/mcstas-comps/examples/DTU/Vin_test/Vin_test.md deleted file mode 100644 index e9ef95c09..000000000 --- a/mcstas-comps/examples/DTU/Vin_test/Vin_test.md +++ /dev/null @@ -1,33 +0,0 @@ -# The `Vin_test` Instrument - -*McStas: Simple test instrument for the Virtual_input component* - -## Identification - -- **Site:** DTU -- **Author:** Peter Willendrup (pkwi@fysik.dtu.dk) -- **Origin:** DTU Physics -- **Date:** September 2014 - -## Description - -```text -Simple test instrument for the Virtual_input component -``` - -## Input parameters - -Parameters in **boldface** are required; the others are optional. - -| Name | Unit | Description | Default | -|------|------|-------------|---------| -| Vinfile | string | Filename for Virtual_output-created event file | "Vout_text.dat" | - -## Links - -- [Source code](Vin_test.instr) for `Vin_test.instr`. -- A reference/HTML link for more information - ---- - -*Generated for mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/examples/DTU/Vout_test/Vout_test.md b/mcstas-comps/examples/DTU/Vout_test/Vout_test.md deleted file mode 100644 index 7a17a705b..000000000 --- a/mcstas-comps/examples/DTU/Vout_test/Vout_test.md +++ /dev/null @@ -1,33 +0,0 @@ -# The `Vout_test` Instrument - -*McStas: Simple test instrument for the Virtual_output component* - -## Identification - -- **Site:** DTU -- **Author:** Peter Willendrup (pkwi@fysik.dtu.dk) -- **Origin:** DTU Physics -- **Date:** September 2014 - -## Description - -```text -Simple test instrument for the Virtual_output component -``` - -## Input parameters - -Parameters in **boldface** are required; the others are optional. - -| Name | Unit | Description | Default | -|------|------|-------------|---------| -| Voutfile | string | Output filename for vout file | "Vout_text.dat" | - -## Links - -- [Source code](Vout_test.instr) for `Vout_test.instr`. -- A reference/HTML link for more information - ---- - -*Generated for mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/examples/ESS/ESS_BEER_MCPL/ESS_BEER_MCPL.md b/mcstas-comps/examples/ESS/ESS_BEER_MCPL/ESS_BEER_MCPL.md deleted file mode 100644 index dfbda43b4..000000000 --- a/mcstas-comps/examples/ESS/ESS_BEER_MCPL/ESS_BEER_MCPL.md +++ /dev/null @@ -1,82 +0,0 @@ -# The `ESS_BEER_MCPL` Instrument - -*McStas: Version: 1.1, 27/11/2018 -ToF Diffractometer BEER@ESS with MCPL input at the sample slit.* - -## Identification - -- **Site:** ESS -- **Author:** Jan Saroun, saroun@ujf.cas.cz -- **Origin:** NPI Rez -- **Date:** June 2017 - -## Description - -```text -Secondary part of the ToF diffractometer BEER@ESS. It takes MCPL file at the input as the source -of primary beam in front of the sample. -Results: -1) xy, divergence, lambda and ToF_lambda plots of the primary beam (monitors the MCPL content) -2) projections of the sampling volume defined by the primary slit and secondary radial collimator -3) Intensity vs. dhkl plot, using NPI_tof_dhkl_detector.comp -4) 2D plot (ToF,2theta), using NPI_tof_theta_monitor - -Modulation mode: -If modul=1, a modulation mode of BEER is assumed: the primary beam is modulated by a chopper placed close to the source. -(set the lc distance appropriately). The NPI_tof_dhkl_detector.comp then performs data reduction in event mode, using -the given modulation parameters: lam0, mod_frq, mod_twidth and a table with primary dhkl estimates (dhkl.dat should be -in the current directory). As a result, the diffractogram with recombined peaks is produced, together with a 2D map -of estimated valid, empty and overlap regions on the ToF-2theta diagram. - -If module=0, modulation parameters are ignored and the NPI_tof_dhkl_detector.comp performs a standard event based -data reduction producing a diffractogram on the basis of given nominal values of lam0 and distances. - -(See NPI_tof_dhkl_detector.comp for more details) - -NOTE: some instrument parameters are hard coded and have to be edited in the INITIALIZE and RUN sections. - -To use, please copy the relevant mcpl files from your $MCSTAS/data folder to the curring working folder - -Example 1: -Simulation in medium resolution mode with pulse shaping choppers, wavelength range centred at 2 AA - use: -ESS_BEER_MCPL input=BEER_MR.mcpl repetition=50 pwdfile=duplex.laz lc=6.65 lam0=2 dlam=1.8 omega=45 chi=90 colw=1 modul=0 mod_frq=2240 mod_twidth=0.0029 mod_shift=0 only_event=-1 pinc=0.1 ptra=0 strain=0 ustrain=0 -Detector: psdtof_I=276.842 - -Example 2: -Simulation in the modulation mode, using the modulation chopper MCB with 8 slits (4 deg wide) rotating at 280 Hz. Wavelength range centred at 2 AA - use: -ESS_BEER_MCPL input=BEER_MCB.mcpl repetition=50 pwdfile=duplex.laz lc=9.35 lam0=2 dlam=1.8 omega=45 chi=90 colw=1 modul=1 mod_frq=2240 mod_twidth=0.0029 mod_shift=0 only_event=-1 pinc=0.1 ptra=0 strain=0 ustrain=0 -Detector: psdtof_I=98.3885 -``` - -## Input parameters - -Parameters in **boldface** are required; the others are optional. - -| Name | Unit | Description | Default | -|------|------|-------------|---------| -| input | str | Input MCPL file | "BEER_MR.mcpl" | -| repetition | 1 | Number of loops through the MCPL file | 50 | -| pwdfile | str | Input sample file for PowderN.comp | "duplex.laz" | -| lc | m | distance of the pulse definition chopper | 6.65 | -| lam0 | AA | nominal wavelength (centre of the frame, determines the chopper phase) | 2.0 | -| dlam | AA | wavelength band width (only for filtering MCPL input and plot ranges) | 1.8 | -| omega | deg | sample orientation (y-axis) | 45 | -| chi | deg | sample orientation (z-axis) | 90 | -| colw | mm | collimator width (0.5, 1, 2, 3 or 4) | 1 | -| modul | 0\|1 | modulation mode switch | 0 | -| mod_frq | Hz | modulation frequency (chopper frequency x number of slits) | 2240 | -| mod_twidth | s | modulation frame width (should be ~> ESS pulse width) | 0.0029 | -| mod_shift | | assumed line shift introduced to NPI_tof_dhkl_detector (modulation mode only) | 0 | -| only_event | 1 | if > -1, filters out events with line_info.itype<>only_event after PowderN sample | -1 | -| pinc | | pinc value passed to PowderN.comp | 0.1 | -| ptra | | p_transmit value passed to PowderN.comp | 0.0 | -| strain | ppm | Macro-strain (peak shift) | 0 | -| ustrain | ppm | Micro-strain (peak broadening) | 0 | - -## Links - -- [Source code](ESS_BEER_MCPL.instr) for `ESS_BEER_MCPL.instr`. - ---- - -*Generated for mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/examples/ESS/ESS_IN5_reprate/ESS_IN5_reprate.md b/mcstas-comps/examples/ESS/ESS_IN5_reprate/ESS_IN5_reprate.md deleted file mode 100644 index a0664a84a..000000000 --- a/mcstas-comps/examples/ESS/ESS_IN5_reprate/ESS_IN5_reprate.md +++ /dev/null @@ -1,80 +0,0 @@ -# The `ESS_IN5_reprate` Instrument - -*McStas: An IN5 type (cold chopper) multi-frame spectrometer at ESS LPTS* - -## Identification - -- **Site:** ESS -- **Author:** Kim Lefmann (kim.lefmann@risoe.dk), Helmuth Schober, Feri Mezei -- **Origin:** ESS -- **Date:** September 20, 2006 - -## Description - -```text -McStas instrument for simulating IN5-TYPE (cold chopper) multi-frame spectrometer at ESS LPTS. -The sample is incoherent with an inelastic tunneling line. -``` - -## Input parameters - -Parameters in **boldface** are required; the others are optional. - -| Name | Unit | Description | Default | -|------|------|-------------|---------| -| Lmin | AA | Minimum wavelength emitted by the moderator | 4.9 | -| Lmax | AA | Maximum wavelength emitted by the moderator | 5.1 | -| lambda0 | AA | Target wavelength for the monochromating crystal | 5 | -| Pulse_width | s | Length of the long pulse. Default to 2 ms. | 2.857e-3 | -| Num_pulses | 1 | Number of pulses to simulate. Default 1. | 1 | -| GUI_start | m | Distance from moderator to guide start | 2.0 | -| FO1_DIST | m | Distance from moderator to FO1 chopper | 6 | -| L_ballistic_begin | m | Length of expanding ballistic section in the beginning of the guide | 19.5 | -| L_ballistic_end | m | Length of compressing ballistic section in the end of the guide | 17 | -| Length | m | Total length of spectrometer (moderator to F2) | 100 | -| SAMPLE_DIST | m | Distance from F2 to sample | 1.2 | -| DETECTOR_DIST | m | Length sample-detector | 4 | -| GUI_h | m | Height of guide opening at entry | 0.105 | -| GUI_w | m | Width of guide opening at entry | 0.1 | -| GUI_GAP | m | Gap between guides due to chopper hardware | 0.05 | -| H1 | m | Height of guide elements | 0.167 | -| W1 | m | Width of guide elements | 0.116 | -| H2 | m | Height of guide elements | 0.185 | -| W2 | m | Width of guide elements | 0.15 | -| H3 | m | Height of guide elements | 0.19 | -| W3 | m | Width of guide elements | 0.15 | -| H4 | m | Height of guide elements | 0.213 | -| W4 | m | Width of guide elements | 0.14 | -| H_chop | m | Height at F2 chopper position | 0.075 | -| W_chop | m | Width at F2 chopper position | 0.03 | -| H_end | m | Height of guide opening at exit | 0.042 | -| W_end | m | Width of guide opening at exit | 0.0215 | -| ALPHA | m | Parameter for supermirrors in guides, Swiss Neutronics best at 3.4 | 3.4 | -| M | 1 | Parameter for supermirrors in guides, Swiss Neutronics best at 4 | 3.5 | -| F_slow1 | Hz | Frequency of the FO1 chopper | 16.6667 | -| F_slow2 | Hz | Frequency of the FO2 chopper | 0 | -| F_fast1 | Hz | Frequency of the F1 chopper | 0 | -| F_fast2 | Hz | Frequency of the F2 chopper | 200 | -| N_fast | 1 | Number of symmetric openings in the fast F choppers | 1 | -| SLOW1_THETA | deg | Opening angle of the FO1 chopper | 120 | -| FO3 | 1 | Inverse frequency of FO3 chopper (if 1, same as F2; if 2, half of F2, etc.) | 1 | -| THETA_fast1 | deg | Opening angle of the F1 chopper | 180 | -| FAST_THETA | deg | Opening angle of the F2 chopper | 5 | -| Gamma | meV | Width of sample quasielastic scattering (0=elastic) | 0 | -| Etun | meV | Tunneling energy | 1 | -| V_HOLE | m | Radius of hole in V sample (must be smaller than the outer radius: 0.01) | 0 | -| FRAC_QUASIEL | 1 | Fraction of the sample that scatters quasielastically | 0 | -| FRAC_TUNNEL | | Fraction of the sample that scatters on the tunneling peaks | 0 | -| TT | deg | 2Theta (or a4) scattering angle | 50 | -| RES_DE | meV | Adjustable zoom for energy monitor at detector position | 0.5 | -| cold | | Fraction of neutrons emitted from the cold moderatorx | 0.95 | - -## Links - -- [Source code](ESS_IN5_reprate.instr) for `ESS_IN5_reprate.instr`. -- The ESS-Rencurel website. -- The IN5@ILL Yellow Pages - ---- - -*Generated for mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/examples/ESS/ESS_Testbeamline_HZB_V20/ESS_Testbeamline_HZB_V20.md b/mcstas-comps/examples/ESS/ESS_Testbeamline_HZB_V20/ESS_Testbeamline_HZB_V20.md deleted file mode 100644 index 0603e6881..000000000 --- a/mcstas-comps/examples/ESS/ESS_Testbeamline_HZB_V20/ESS_Testbeamline_HZB_V20.md +++ /dev/null @@ -1,59 +0,0 @@ -# The `ESS_Testbeamline_HZB_V20` Instrument - -*McStas: McStas model of the ESS testbeamline V20 at HZB in Berlin* - -## Identification - -- **Site:** ESS -- **Author:** Ala'a Al-Falahat -- **Origin:** HZB -- **Date:** March 17, 2017 - -## Description - -```text -McStas model of the ESS testbeamline V20 at HZB in Berlin. Please note that not -all geometrical sizes, distances and parameters have been fully validated. -``` - -## Input parameters - -Parameters in **boldface** are required; the others are optional. - -| Name | Unit | Description | Default | -|------|------|-------------|---------| -| lambda_min | AA | Minimum wavelength emitted by the source | 1 | -| lambda_max | AA | Maximum wavelength emitted by the source | 15 | -| frequency | Hz | Frequency of the choppers | 14 | -| Choppers_WFM1_in | 1 | Flag to indicate if WFM1 is active | 1 | -| Choppers_WFM2_in | 1 | Flag to indicate if WFM2 is active | 1 | -| Choppers_FOC1_in | 1 | Flag to indicate if FOC1 is active | 1 | -| Choppers_FOC2_in | 1 | Flag to indicate if FOC2 is active | 1 | -| s1_x | m | slit 1 width | 0.05 | -| s1_y | m | slit 1 height | 0.1 | -| s2_x | m | slit 2 width | 0.02 | -| s2_y | m | slit 2 height | 0.04 | -| s3_x | m | slit 3 width | 0.0138 | -| s3_y | m | slit 3 height | 0.033 | -| Offset_deg_SC1 | deg | Phase source chopper disk 1 | 0 | -| Offset_deg_SC2 | deg | Phase source chopper disk 2 | 0 | -| Offset_deg_BC1 | deg | Phase bandwidth chopper disk 1 | -25 | -| Offset_deg_BC2 | deg | Phase bandwidth chopper disk 2 | 57 | -| Offset_deg_WFM1 | deg | Phase wavelength frame multiplication chopper disk 1 | 47.1 | -| Offset_deg_WFM2 | deg | Phase wavelength frame multiplication chopper disk 2 | 76.76 | -| Offset_deg_FOC1 | deg | Phase frame overlap chopper disk 1 | 62.4 | -| Offset_deg_FOC2 | deg | Phase frame overlap chopper disk 2 | 12.27 | -| Z | m | Distance between Wavelength frame multiplication chopper disks 0.1 - 0.5 | 0.28 | -| sp | m | sample position | 50.6 | -| npulses | 1 | Number of pulses to simulate | 1 | -| emulate_reactor_emmision | 1 | Flag to emulate all emission times from the reactor | 0 | - -## Links - -- [Source code](ESS_Testbeamline_HZB_V20.instr) for `ESS_Testbeamline_HZB_V20.instr`. -- V20 page at the HZB website -- V20 info section at the ESS website - ---- - -*Generated for mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/examples/ESS/ESS_butterfly_Guide_curved_test/ESS_butterfly_Guide_curved_test.md b/mcstas-comps/examples/ESS/ESS_butterfly_Guide_curved_test/ESS_butterfly_Guide_curved_test.md deleted file mode 100644 index f3cc787c0..000000000 --- a/mcstas-comps/examples/ESS/ESS_butterfly_Guide_curved_test/ESS_butterfly_Guide_curved_test.md +++ /dev/null @@ -1,52 +0,0 @@ -# The `ESS_butterfly_Guide_curved_test` Instrument - -*McStas: Test instrument for the updated BF1 butterfly moderator design* - -## Identification - -- **Site:** ESS -- **Author:** Peter Willendrup -- **Origin:** ESS -- **Date:** 2016-09-26 - -## Description - -```text -Test instrument for the updated BF1 butterfly moderator design. - -The below example gives a 50-50 (statistics-wise) cold/thermal beam at beamline N10. -``` - -## Input parameters - -Parameters in **boldface** are required; the others are optional. - -| Name | Unit | Description | Default | -|------|------|-------------|---------| -| sector | str | Defines the 'sector' of your instrument position. Valid values are "N","S","E" and "W" | "N" | -| beamline | 1 | Defines the 'beamline number' of your instrument position. Valid values are 1..10 or 1..11 depending on sector | 1 | -| Lmin | AA | Minimum wavelength simulated | 0.2 | -| Lmax | AA | Maximum wavelength simulated | 20 | -| c_performance | 1 | Cold brilliance scalar performance multiplicator c_performance > 0 | 1 | -| t_performance | 1 | Thermal brilliance scalar performance multiplicator t_performance > 0 | 1 | -| index | 1 | Target index for source focusing. Defaults to illuminate the "cold collimated" brilliance monitor, thereby suppressing "dist" | 25 | -| dist | m | Distance from origin to focusing rectangle; at (0,0,dist) - alternatively use target_index | 0 | -| cold | 1 | Defines the statistical fraction of events emitted from the cold part of the moderator | 1 | -| Yheight | m | Defines the moderator height. Valid values are 0.03 m and 0.06 m | 0.03 | -| delta | m | Parameter that allows to scan "collimator" position | 0 | -| thres | | Weight-threshold, neutrons with higher weight are absorbed | 0.003 | -| repeat | | Number of MCPL file repetitions | 1 | -| v_smear | 1 | When repeating events, make a Gaussian MC choice within v_smear*V around particle velocity V | 0.1 | -| pos_smear | m | When repeating events, make a flat MC choice of position within pos_smear around particle starting position | 0.01 | -| dir_smear | deg | When repeating events, make a Gaussian MC choice of direction within dir_smear around particle direction | 0.01 | -| n_pulses | 1 | Number of pulses to simulate | 1 | - -## Links - -- [Source code](ESS_butterfly_Guide_curved_test.instr) for `ESS_butterfly_Guide_curved_test.instr`. -- -- Benchmarking website available at http://ess_butterfly.mcstas.org - ---- - -*Generated for mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/examples/ESS/ESS_butterfly_MCPL_test/ESS_butterfly_MCPL_test.md b/mcstas-comps/examples/ESS/ESS_butterfly_MCPL_test/ESS_butterfly_MCPL_test.md deleted file mode 100644 index a7a592d6c..000000000 --- a/mcstas-comps/examples/ESS/ESS_butterfly_MCPL_test/ESS_butterfly_MCPL_test.md +++ /dev/null @@ -1,55 +0,0 @@ -# The `ESS_butterfly_MCPL_test` Instrument - -*McStas: Test instrument for the updated BF1 butterfly moderator design using MCPL input* - -## Identification - -- **Site:** ESS -- **Author:** Peter Willendrup -- **Origin:** ESS -- **Date:** 2016-09-26 - -## Description - -```text -Test instrument for the updated BF1 butterfly moderator design using MCPL input files. - -The below example gives a 50-50 (statistics-wise) cold/thermal beam at beamline N10. -Example: sector=N beamline=10 cold=0.5 - -Assumes access to binary MCPL datasets in . named [sector][beamline].mcpl.gz, i.e. W8.mcpl.gz. -``` - -## Input parameters - -Parameters in **boldface** are required; the others are optional. - -| Name | Unit | Description | Default | -|------|------|-------------|---------| -| sector | str | Defines the 'sector' of your instrument position. Valid values are "N","S","E" and "W" | "N" | -| beamline | 1 | Defines the 'beamline number' of your instrument position. Valid values are 1..10 or 1..11 depending on sector | 1 | -| Lmin | AA | Minimum wavelength simulated | 0.2 | -| Lmax | AA | Maximum wavelength simulated | 20 | -| c_performance | 1 | Cold brilliance scalar performance multiplicator c_performance > 0 | 1 | -| t_performance | 1 | Thermal brilliance scalar performance multiplicator t_performance > 0 | 1 | -| index | 1 | Target index for source focusing. Defaults to illuminate the "cold collimated" brilliance monitor, thereby suppressing "dist" | 8 | -| dist | m | Distance from origin to focusing rectangle; at (0,0,dist) - alternatively use target_index | 0 | -| cold | 1 | Defines the statistical fraction of events emitted from the cold part of the moderator | 1 | -| Yheight | m | Defines the moderator height. Valid values are 0.03 m and 0.06 m | 0.03 | -| delta | m | Parameter that allows to scan "collimator" position | 0 | -| thres | | Weight-threshold, neutrons with higher weight are absorbed | 0.003 | -| filter | | | 0 | -| repeat | | Number of MCPL file repetitions | 1 | -| v_smear | 1 | When repeating events, make a Gaussian MC choice within v_smear*V around particle velocity V | 0.1 | -| pos_smear | m | When repeating events, make a flat MC choice of position within pos_smear around particle starting position | 0.01 | -| dir_smear | deg | When repeating events, make a Gaussian MC choice of direction within dir_smear around particle direction | 0.01 | - -## Links - -- [Source code](ESS_butterfly_MCPL_test.instr) for `ESS_butterfly_MCPL_test.instr`. -- -- Benchmarking website available at http://ess_butterfly.mcstas.org - ---- - -*Generated for mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/examples/ESS/ESS_butterfly_test/ESS_butterfly_test.md b/mcstas-comps/examples/ESS/ESS_butterfly_test/ESS_butterfly_test.md deleted file mode 100644 index 36f1c5097..000000000 --- a/mcstas-comps/examples/ESS/ESS_butterfly_test/ESS_butterfly_test.md +++ /dev/null @@ -1,46 +0,0 @@ -# The `ESS_butterfly_test` Instrument - -*McStas: Test instrument for the updated BF1 butterfly moderator design* - -## Identification - -- **Site:** ESS -- **Author:** Peter Willendrup -- **Origin:** ESS -- **Date:** 2016-08-24 - -## Description - -```text -Test instrument for the updated BF1 butterfly moderator design. - -The below example gives a 50-50 (statistics-wise) cold/thermal beam at beamline N10. -``` - -## Input parameters - -Parameters in **boldface** are required; the others are optional. - -| Name | Unit | Description | Default | -|------|------|-------------|---------| -| sector | str | Defines the 'sector' of your instrument position. Valid values are "N","S","E" and "W" | "N" | -| beamline | 1 | Defines the 'beamline number' of your instrument position. Valid values are 1..10 or 1..11 depending on sector | 1 | -| Lmin | AA | Minimum wavelength simulated | 0.2 | -| Lmax | AA | Maximum wavelength simulated | 20 | -| c_performance | 1 | Cold brilliance scalar performance multiplicator c_performance > 0 | 1 | -| t_performance | 1 | Thermal brilliance scalar performance multiplicator t_performance > 0 | 1 | -| index | 1 | Target index for source focusing. Defaults to illuminate the "cold collimated" brilliance monitor, thereby suppressing "dist" | 16 | -| dist | m | Distance from origin to focusing rectangle; at (0,0,dist) - alternatively use target_index | 0 | -| cold | 1 | Defines the statistical fraction of events emitted from the cold part of the moderator | 0.5 | -| Yheight | m | Defines the moderator height. Valid values are 0.03 m and 0.06 m | 0.03 | -| delta | m | Parameter that allows to scan "collimator" position | 0 | - -## Links - -- [Source code](ESS_butterfly_test.instr) for `ESS_butterfly_test.instr`. -- -- Benchmarking website available at http://ess_butterfly.mcstas.org - ---- - -*Generated for mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/examples/ESS/ESS_butterfly_tfocus_NOFOCUS_test/ESS_butterfly_tfocus_NOFOCUS_test.md b/mcstas-comps/examples/ESS/ESS_butterfly_tfocus_NOFOCUS_test/ESS_butterfly_tfocus_NOFOCUS_test.md deleted file mode 100644 index f89b56d93..000000000 --- a/mcstas-comps/examples/ESS/ESS_butterfly_tfocus_NOFOCUS_test/ESS_butterfly_tfocus_NOFOCUS_test.md +++ /dev/null @@ -1,49 +0,0 @@ -# The `ESS_butterfly_tfocus_NOFOCUS_test` Instrument - -*McStas: Test instrument for the updated BF1 butterfly moderator design* - -## Identification - -- **Site:** ESS -- **Author:** Peter Willendrup -- **Origin:** ESS -- **Date:** 2016-08-24 - -## Description - -```text -Test instrument for the updated BF1 butterfly moderator design. - -The below example gives a 50-50 (statistics-wise) cold/thermal beam at beamline N10. -``` - -## Input parameters - -Parameters in **boldface** are required; the others are optional. - -| Name | Unit | Description | Default | -|------|------|-------------|---------| -| sector | str | Defines the 'sector' of your instrument position. Valid values are "N","S","E" and "W" | "N" | -| beamline | 1 | Defines the 'beamline number' of your instrument position. Valid values are 1..10 or 1..11 depending on sector | 1 | -| Lmin | AA | Minimum wavelength simulated | 0.2 | -| Lmax | AA | Maximum wavelength simulated | 20 | -| c_performance | 1 | Cold brilliance scalar performance multiplicator c_performance > 0 | 1 | -| t_performance | 1 | Thermal brilliance scalar performance multiplicator t_performance > 0 | 1 | -| index | 1 | Target index for source focusing. Defaults to illuminate the "cold collimated" brilliance monitor, thereby suppressing "dist" | 0 | -| dist | m | Distance from origin to focusing rectangle; at (0,0,dist) - alternatively use target_index | 100 | -| cold | 1 | Defines the statistical fraction of events emitted from the cold part of the moderator | 0.5 | -| Yheight | m | Defines the moderator height. Valid values are 0.03 m and 0.06 m | 0.03 | -| delta | m | Parameter that allows to scan "collimator" position | 0 | -| tfocus_dist | | | 10 | -| tfocus_time | | | 0.01 | -| tfocus_width | | | 0.001 | - -## Links - -- [Source code](ESS_butterfly_tfocus_NOFOCUS_test.instr) for `ESS_butterfly_tfocus_NOFOCUS_test.instr`. -- -- Benchmarking website available at http://ess_butterfly.mcstas.org - ---- - -*Generated for mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/examples/ESS/ESS_butterfly_tfocus_test/ESS_butterfly_tfocus_test.md b/mcstas-comps/examples/ESS/ESS_butterfly_tfocus_test/ESS_butterfly_tfocus_test.md deleted file mode 100644 index 16a7016a0..000000000 --- a/mcstas-comps/examples/ESS/ESS_butterfly_tfocus_test/ESS_butterfly_tfocus_test.md +++ /dev/null @@ -1,49 +0,0 @@ -# The `ESS_butterfly_tfocus_test` Instrument - -*McStas: Test instrument for the updated BF1 butterfly moderator design* - -## Identification - -- **Site:** ESS -- **Author:** Peter Willendrup -- **Origin:** ESS -- **Date:** 2016-08-24 - -## Description - -```text -Test instrument for the updated BF1 butterfly moderator design. - -The below example gives a 50-50 (statistics-wise) cold/thermal beam at beamline N10. -``` - -## Input parameters - -Parameters in **boldface** are required; the others are optional. - -| Name | Unit | Description | Default | -|------|------|-------------|---------| -| sector | str | Defines the 'sector' of your instrument position. Valid values are "N","S","E" and "W" | "N" | -| beamline | 1 | Defines the 'beamline number' of your instrument position. Valid values are 1..10 or 1..11 depending on sector | 1 | -| Lmin | AA | Minimum wavelength simulated | 0.2 | -| Lmax | AA | Maximum wavelength simulated | 20 | -| c_performance | 1 | Cold brilliance scalar performance multiplicator c_performance > 0 | 1 | -| t_performance | 1 | Thermal brilliance scalar performance multiplicator t_performance > 0 | 1 | -| index | 1 | Target index for source focusing. Defaults to illuminate the "cold collimated" brilliance monitor, thereby suppressing "dist" | 0 | -| dist | m | Distance from origin to focusing rectangle; at (0,0,dist) - alternatively use target_index | 100 | -| cold | 1 | Defines the statistical fraction of events emitted from the cold part of the moderator | 0.5 | -| Yheight | m | Defines the moderator height. Valid values are 0.03 m and 0.06 m | 0.03 | -| delta | m | Parameter that allows to scan "collimator" position | 0 | -| tfocus_dist | | | 10 | -| tfocus_time | | | 0.01 | -| tfocus_width | | | 0.001 | - -## Links - -- [Source code](ESS_butterfly_tfocus_test.instr) for `ESS_butterfly_tfocus_test.instr`. -- -- Benchmarking website available at http://ess_butterfly.mcstas.org - ---- - -*Generated for mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/examples/ESS/ESS_mcpl2hist/ESS_mcpl2hist.md b/mcstas-comps/examples/ESS/ESS_mcpl2hist/ESS_mcpl2hist.md deleted file mode 100644 index 598be94ee..000000000 --- a/mcstas-comps/examples/ESS/ESS_mcpl2hist/ESS_mcpl2hist.md +++ /dev/null @@ -1,41 +0,0 @@ -# The `ESS_mcpl2hist` Instrument - -*McStas: Utility instrument that generates a set of histograms from an MCPL input file* - -## Identification - -- **Site:** ESS -- **Author:** Peter Willendrup -- **Origin:** ESS -- **Date:** 2016-12-02 - -## Description - -```text -Utility instrument that generates a set of histograms from an MCPL input file. - -Generates energy, wavelength, position, veloicty and time histograms via Monitor_nD. - -Assumes access to binary MCPL datasets in . named [sector][beamline].mcpl.gz, i.e. W8.mcpl.gz. -``` - -## Input parameters - -Parameters in **boldface** are required; the others are optional. - -| Name | Unit | Description | Default | -|------|------|-------------|---------| -| sector | str | Defines the 'sector' of your instrument position. Valid values are "N","S","E" and "W" | "N" | -| beamline | 1 | Defines the 'beamline number' of your instrument position. Valid values are 1..10 or 1..11 depending on sector | 1 | -| filter | 1 | Flag to define if the filtered or nonfiltered version of the MCPL file should be used. | 0 | -| thres | 1 | Weight threshold above which neutrons are absorbed | 0.003 | - -## Links - -- [Source code](ESS_mcpl2hist.instr) for `ESS_mcpl2hist.instr`. -- -- Benchmarking website available at http://ess_butterfly.mcstas.org - ---- - -*Generated for mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/examples/FZ_Juelich/FZJ_BenchmarkSfin2/FZJ_BenchmarkSfin2.md b/mcstas-comps/examples/FZ_Juelich/FZJ_BenchmarkSfin2/FZJ_BenchmarkSfin2.md deleted file mode 100644 index 8dce65664..000000000 --- a/mcstas-comps/examples/FZ_Juelich/FZJ_BenchmarkSfin2/FZJ_BenchmarkSfin2.md +++ /dev/null @@ -1,54 +0,0 @@ -# The `FZJ_BenchmarkSfin2` Instrument - -*McStas: Test instrument for the H Frielinghaus SANS_benchmark2 component. - -The below test uses defaults of the instrument (SANS_benchmark2 modnum=11)* - -## Identification - -- **Site:** FZ_Juelich -- **Author:** Henrich Frielinghaus -- **Origin:** FZ Juelich -- **Date:** 2013 - -## Description - -```text - -``` - -## Input parameters - -Parameters in **boldface** are required; the others are optional. - -| Name | Unit | Description | Default | -|------|------|-------------|---------| -| lbdmin | | | 2.00 | -| lbdmax | | | 8.5 | -| NGbend | | | 0.053 | -| NGblen | | | 0.03 | -| Clen | | | 8.0 | -| SampD | | | 0.01 | -| bendL | | | 5.0 | -| bendR | | | 385.0 | -| bendM | | | 7.0 | -| bendiM | | | 7.0 | -| dfltM | | | 1.5 | -| vorPl | | for two cavities | 0.5 | -| PolLen | | for two cavities | 0.492 | -| PolTot | | for two cavities | 2.30 | -| MDOWN | | | 3.6 | -| Min | | | 1.5 | -| cnum | | Set to 0.0 for no polarizer as for benchmarking the normal SANS samples, to 2.0 for two cavities, keep default values as much as possible | 0.00 | -| ROT | | | 0.0 | -| modnum | | | 11.0 | -| sglscatt | | | 1.0 | -| incs | | | 0.0005 | - -## Links - -- [Source code](FZJ_BenchmarkSfin2.instr) for `FZJ_BenchmarkSfin2.instr`. - ---- - -*Generated for mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/examples/FZ_Juelich/FZJ_KWS2_Lens/FZJ_KWS2_Lens.md b/mcstas-comps/examples/FZ_Juelich/FZJ_KWS2_Lens/FZJ_KWS2_Lens.md deleted file mode 100644 index 6f3bf3328..000000000 --- a/mcstas-comps/examples/FZ_Juelich/FZJ_KWS2_Lens/FZJ_KWS2_Lens.md +++ /dev/null @@ -1,42 +0,0 @@ -# The `FZJ_KWS2_Lens` Instrument - -*McStas: FZ Juelich KWS2 SANS, serving as test instrument for the Lens_simple component.* - -## Identification - -- **Site:** FZ_Juelich -- **Author:** Henrich Frielinghaus -- **Origin:** FZ Juelich -- **Date:** June 2010 - -## Description - -```text -This instrument is a test instrument for the Lens_simple component. - -Notice effect of gravitation on the final beam. -``` - -## Input parameters - -Parameters in **boldface** are required; the others are optional. - -| Name | Unit | Description | Default | -|------|------|-------------|---------| -| lambda | AA | Mean wavelength of neutrons | 20.15 | -| dlambda | AA | Wavelength spread of neutrons (fwhm) | 2.015 | -| FLUX | 1 | Source flux normalization constant | 1e8 | -| NGblen | 1 | Defining source radius (is \sqrt(2)*NGblen) | 0.03 | -| Cblen | m | Dimension of rectangular guide | 0.005 | -| Clen | m | Distance source-guide | 20.0 | -| Dlen | m | Placement of final detector | 20.0 | -| Rlense | m | Radius of lens | 0.025 | - -## Links - -- [Source code](FZJ_KWS2_Lens.instr) for `FZJ_KWS2_Lens.instr`. -- The Lens_simple component - ---- - -*Generated for mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/examples/FZ_Juelich/FZJ_SANS_KWS2_AnySample/FZJ_SANS_KWS2_AnySample.md b/mcstas-comps/examples/FZ_Juelich/FZJ_SANS_KWS2_AnySample/FZJ_SANS_KWS2_AnySample.md deleted file mode 100644 index 84dd202e1..000000000 --- a/mcstas-comps/examples/FZ_Juelich/FZJ_SANS_KWS2_AnySample/FZJ_SANS_KWS2_AnySample.md +++ /dev/null @@ -1,39 +0,0 @@ -# The `SANS_KWS2_AnySample` Instrument - -*McStas: KWS2 SANS instrument at FZ-Juelich. 2 detectors. 4 available sample models.* - -## Identification - -- **Site:** FZ_Juelich -- **Author:** Henrich Frielinghaus -- **Origin:** FZ-Juelich/FRJ-2/IFF/KWS-2 -- **Date:** Sept 2004 - -## Description - -```text -KWS2 SANS instrument at FZ-Juelich. Custom sample (None, Guinier, Debye or Any). -Sample is at 40 m from source. 2 detectors. -``` - -## Input parameters - -Parameters in **boldface** are required; the others are optional. - -| Name | Unit | Description | Default | -|------|------|-------------|---------| -| lambda | AA | Mean wavelength of neutrons | 7.0 | -| dlambda | AA | Wavelength spread of neutrons | 0.7 | -| FLUX | n/s/cm2/st | incoming neutron flux | 1e8 | -| NGblen | m | collimation width/height | 0.05 | -| sample | int | type of sample, as 0=None, 1='AnySample', 2='Debye' or 3='Guinier' | 0 | -| Clen | m | distance to collimation in 0-20. Sample is at 40 m from source | 10.0 | -| Dlen | m | distance from sample to detector | 10.0 | - -## Links - -- [Source code](FZJ_SANS_KWS2_AnySample.instr) for `FZJ_SANS_KWS2_AnySample.instr`. - ---- - -*Generated for mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/examples/HZB/HZB_FLEX/HZB_FLEX.md b/mcstas-comps/examples/HZB/HZB_FLEX/HZB_FLEX.md deleted file mode 100644 index 484d4fc6a..000000000 --- a/mcstas-comps/examples/HZB/HZB_FLEX/HZB_FLEX.md +++ /dev/null @@ -1,41 +0,0 @@ -# The `HZB_FLEX` Instrument - -*McStas: Primary and secondary spectrometer for the FLEX upgrade* - -## Identification - -- **Site:** HZB -- **Author:** M. Skoulatos and K. Habicht, port to McStas 2.0 by Mathias Kure KU -- **Origin:** Helmholtz-Zentrum Berlin -- **Date:** 26 October 2010 - -## Description - -```text - -``` - -## Input parameters - -Parameters in **boldface** are required; the others are optional. - -| Name | Unit | Description | Default | -|------|------|-------------|---------| -| kI | inv AA | incident wavevector | 1.55 | -| kF | inv AA | outgoing wavevector | 1.55 | -| wVS | m | Width of virtual source slit | 0.03 | -| tilt | deg | Tilt angle for velocity selector | 0 | -| SA | 1 | Analyzer scattering sense | -1 | -| A3 | deg | Sample omega angle | 0 | -| A4 | deg | Sample 2-theta angle | 70 | -| L3 | m | | 1.00 | -| L4 | m | | 1.00 | -| Mono_flatswitch | 1 | Flag for flat or curved monochromator | 0 | - -## Links - -- [Source code](HZB_FLEX.instr) for `HZB_FLEX.instr`. - ---- - -*Generated for mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/examples/HZB/HZB_NEAT/HZB_NEAT.md b/mcstas-comps/examples/HZB/HZB_NEAT/HZB_NEAT.md deleted file mode 100644 index 9834ba1ef..000000000 --- a/mcstas-comps/examples/HZB/HZB_NEAT/HZB_NEAT.md +++ /dev/null @@ -1,56 +0,0 @@ -# The `HZB_NEAT` Instrument - -*McStas: V3 Time-of-Flight-Spectrometer (NEAT) at BENSC, 1995 version.* - -## Identification - -- **Site:** HZB -- **Author:** Emmanuel Farhi and R. Lechner -- **Origin:** ILL (France)/BENSC (Germany) -- **Date:** 2011 - -## Description - -```text -In time-of-flight spectrometers neutron pulses are created by us- -ing mechanical chopper devices, realised on NEAT by fast rotating -discs with speeds up to 20000 RPM. The discs are coated with neu- -tron absorbing materials except for the narrow windows. Phased to -each other according to the flight time of neutrons between them, -the choppers 'cut out' pulses of neutrons with a desired wave- -length from the white beam. An interaction with moving atoms in -the sample changes the velocities of the scattered neutrons and -this is detected by the secondary part of the spectrometer on the -basis of the time of flight between the sample and the neutron de- -tectors at 2.5 m distance. The secondary spectrometer of NEAT -contains an array of 388 3He 60 cm2 area single counter detectors -(SD) for the large-angle scattering. - -The NL 2 (upper part) guide is modelled. -This model only contains the first and last choppers, and has only a single -pulse (no frame overlap). The sample is a 2mm thick plate rotated by 45 degrees, -which material can be any powder/liquid/amorphous sample. -``` - -## Input parameters - -Parameters in **boldface** are required; the others are optional. - -| Name | Unit | Description | Default | -|------|------|-------------|---------| -| lambda | Angs | incident wavelength on sample | 6 | -| dlambda | Angs | wavelength spread shot from the source | 0.05 | -| rpm | rpm | disk chopper rotation speed, setting the resolution, Hz=rpm/60. | 10000 | -| coh | str | sample coherent S(q,w) file name. Use LAZ/LAU or SQW file | "Rb_liq_coh.sqw" | -| inc | str | sample incoherent S(q,w) file name. Use NULL to scatter incoherently | "Rb_liq_inc.sqw" | -| tmin | s | Minimum ToF measured | 0.01806 | -| tmax | s | Maximum ToF measured | 0.01826 | - -## Links - -- [Source code](HZB_NEAT.instr) for `HZB_NEAT.instr`. -- NEAT at HZB/BENSC - ---- - -*Generated for mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/examples/HighNESS/WOFSANS/WOFSANS.md b/mcstas-comps/examples/HighNESS/WOFSANS/WOFSANS.md deleted file mode 100644 index 0e5740bb7..000000000 --- a/mcstas-comps/examples/HighNESS/WOFSANS/WOFSANS.md +++ /dev/null @@ -1,56 +0,0 @@ -# The `WOFSANS` Instrument - -*McStas: Instrument developed for the HighNESS EU project, describing a Wolter Optics -Focusing SANS (WOFSANS), applied for the study of moderator parameters.* - -## Identification - -- **Site:** HighNESS -- **Author:** Stavros Samothrakis, PSI -- **Origin:** PSI -- **Date:** 2021-2023 - -## Description - -```text -Instrument developed for the HighNESS EU project, describing a Wolter Optics -Focusing SANS (WOFSANS_v2), applied for the study of moderator parameters. -``` - -## Input parameters - -Parameters in **boldface** are required; the others are optional. - -| Name | Unit | Description | Default | -|------|------|-------------|---------| -| focusing_rectangle | m | Dimensions, both width and height of the source focusing area | 0.15 | -| width | m | Width-dimension of the source | 0.15 | -| Emin | meV | Minimum energy of neutron beam simulated from source | 0.2 | -| Emax | meV | Maximum energy of neutron beam simulated from source | 100000.0 | -| l_min | AA | Minimum wavelength allowed through emulated chopper system | 7.2 | -| pulseskip | 1 | Flag to skip one or more pulse frames in bandwidth calculation | 0 | -| npulses | 1 | Number of pulses to simulate | 1 | -| chopper1_flag | 1 | Switch emulated chopper on/off | 0 | -| det | m | Detector position for bandwidth calculation | 41.5 | -| R0 | 1 | R0 low-angle reflectivity of optical coating | 0.99 | -| m | 1 | m-value of optical coating | 3 | -| W | AA-1 | Supermirror cut-off, optical coating | 0.003 | -| alpha | AA | alpha parmeter of optical coating | 6.07 | -| nshells_ph | 1 | Number of conical shells simulated in PH-Wolter optic | 28 | -| fi_ph | m | Focal length for PH-Wolter optic | 5.5 | -| PH_beamstop | 1 | Flag to (de)activate Beamstop post PH-Wolter optic | 1 | -| nshells_eh | 1 | Number of conical shells simulated in EH-Wolter optic | 25 | -| fs_eh | m | Upstream focal length for EH-Wolter optic | 8 | -| fi_eh | m | Downstream focal length for EH-Wolter optic | 6 | -| EH_beamstop | 1 | Flag to (de)activate Beamstop post EH-Wolter optic | 1 | - -## Links - -- [Source code](WOFSANS.instr) for `WOFSANS.instr`. -- V. Santoro et. al. Nuc. Sci. Eng. 2023 https://doi.org/10.1080/00295639.2023.2204184 -- https://highnessproject.eu -- This work was supported by the HighNESS project and is funded by European Commission (H2020-951782). - ---- - -*Generated for mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/examples/ILL/ILL_BRISP/ILL_BRISP.md b/mcstas-comps/examples/ILL/ILL_BRISP/ILL_BRISP.md deleted file mode 100644 index ae85583d0..000000000 --- a/mcstas-comps/examples/ILL/ILL_BRISP/ILL_BRISP.md +++ /dev/null @@ -1,94 +0,0 @@ -# The `ILL_BRISP` Instrument - -*McStas: Time of Flight Neutron Spectrometer for Small Angle Inelastic Scattering BRISP* - -## Identification - -- **Site:** ILL -- **Author:** E. Farhi and N. Formissano [formisan@ill.fr] -- **Origin:** ILL -- **Date:** June 4th, 2009 - -## Description - -```text -BRISP is a new concept thermal neutron Brillouin scattering spectrometer which -exploits the time-of-flight technique and is optimized to operate at small -scattering angles with good energy resolution. - -Keywords in the design of the BRISP spectrometer were : - -Thermal neutron energies: allowing for investigations in systems characterized -by sound velocities up to 3000 m/s (three different incident energies between -20 and 80 meV are presently available). -Easy small-angle access: enabling low-Q spectroscopy with thermal neutrons. -Elastic wavevector transfer values Qel as low as 0.03 Å -1 at 20 meV incident -energy can be reached. The position of the two-dimensional detector can be -adjusted to cover different small-angle ranges between 1° and 15°. -Time-of-Flight technique: for an efficient data collection allowing also for -accurate neutron measurements as a function of external parameters such as -temperature, pressure and magnetic field. -Carefull optimization of monochromator-collimators-Fermi chopper: leading to -0.5 meV energy resolution and 0.02 Å-1 Q resolution in a typical -configuration (20 meV incident energy and 4 m sample-detector distance), -along with acceptable counting rates (flux at the sample 104 n s-1 cm-2). -For this purpose, innovatory solutions were specially developed for some of -the BRISP components. - -Main components: - -a Soller collimator defining the beam impinging on the monochromator, with a -collimation angle of 0.4° -two focusing multi-crystal monochromators, PG and Cu(111), that allow for the -selection of three incident energies in the range from 20 to 80 meV. -Fixed/variable curvatures are adopted in/outside the Brisp vertical scattering plane. -a disk chopper used for background reduction and selection of the desired -monochromator reflection through proper phasing with the Fermi chopper. -three honeycomb converging collimators [1] to define the incident beam on the -sample with a collimation angle of 0.4°, and to optimize convergence at three -detector positions (2, 4, 6 m from the sample). A coarse resolution option -is also available, without honeycomb collimator. -a Fermi chopper producing short neutron pulses which enable the time-of-flight -analysis. -a high-vacuum sample chamber possibly equipped with 1.5-300 K MAXI Orange -cryostat (100 mm) and 300-1900 K furnace -a ~2 m2-area position sensitive gas detector (3He) whose distance from the -sample can be varied between 2 and 6 m in order to access the required Q-range. -A huge vacuum tank hosts the detector. An elastobore – polyethylene shielding -surrounds the vacuum tank to reduce the environmental background. -the long vacuum line ensures an under-vacuum neutron flight path from the -background chopper to the detector. - -Configurations: -crystal d-spacing (Å) lambda0 (Å) E0(meV) -PG(002) 3.355(nominal) 1.977(expt.) 20.9 (expt.) -Cu(111) 2.087 1.28 (expt.) 49.9 (expt.) -PG(004) 1.677(nominal) 0.989(expt.) 83.6 (expt.) - -In this model, the sample is a plate of thickness e=4 mm, surrounded by an -Al or Nb container, inside an Al shield (phi=10 cm). -``` - -## Input parameters - -Parameters in **boldface** are required; the others are optional. - -| Name | Unit | Description | Default | -|------|------|-------------|---------| -| DM | Angs | Monochromator d-spacing. Use 3.355 for PG002, 1.677 for PG004 and 2.087 for Cu111. | 3.355 | -| coh | str | Sample coherent specification (use laz, lau or Sqw file, or NULL to disable). Sample is a 5x5 cm plate, e=4 mm. | "V.lau" | -| inc | str | Sample incoherent specification (use laz, lau or Sqw file, or NULL to scatter isotropically, using cross sections read from the coherent file) | "NULL" | -| container | str | sample container material. Thickness is .2 mm. Use NULL, Al or Nb. | "NULL" | -| LSD | m | Distance sample-detector | 4.5 | -| Frequency | Hz | Disk-chopper frequency | 0 | -| LCC | m | Distance between the Disk-chopper and the Fermi-chopper | 0 | -| DELAY | s | Fermi phase wrt. Disk-chopper opening | 0 | - -## Links - -- [Source code](ILL_BRISP.instr) for `ILL_BRISP.instr`. -- The BRISP spectrometer at the ILL BRISP - ---- - -*Generated for mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/examples/ILL/ILL_D2B/ILL_D2B.md b/mcstas-comps/examples/ILL/ILL_D2B/ILL_D2B.md deleted file mode 100644 index b26503c06..000000000 --- a/mcstas-comps/examples/ILL/ILL_D2B/ILL_D2B.md +++ /dev/null @@ -1,74 +0,0 @@ -# The `ILL_D2B` Instrument - -*McStas: Simple monochromator Diffractometer for powders* - -## Identification - -- **Site:** ILL -- **Author:** C. M. I Enrique, K. Lieutenant, E. Farhi and L. Cussen -- **Origin:** ILL -- **Date:** 13 Apr 2006 - -## Description - -```text -The diffractometer D2B is characterised by the very high take-off angle (135 deg) -for the monochromator, which has a relatively large mosaic spread of 20' to -compensate for the corresponding intensity (dl/l) loss. It is 300 mm high, -focusing vertically onto about 50 mm; this large incident vertical divergence -is matched by 200 mm high detectors and collimators. A complete diffraction -pattern is obtained after about 100 steps of 0.025 deg in 2theta, since the 64 -detectors are spaced at 2.5 deg intervals. Such scans take typically 30 minutes; -they are repeated to improve statistics. - -D2B was designed for work on samples and high resolution of very large -d-spacings using wavelengths of between 2.4 Å and 6 Å. Wavelengths can easily be -changed under computer control, since they are all obtained by a simple rotation -within the Ge[hhl] plane. A large graphite filter can be switched in to provide -a very clean beam at 2.4 Angs, and a cold Be-filter can be used for longer -wavelengths. - -This model implements as well the Caglioti UVW equations, that give estimates -of the instrument resolution. - -Monochromator lattice parameter -Ge 111 DM=3.266 AA -Ge 311 DM=1.714 AA -Ge 511 DM=1.089 AA -Ge 533 DM=0.863 AA -``` - -## Input parameters - -Parameters in **boldface** are required; the others are optional. - -| Name | Unit | Description | Default | -|------|------|-------------|---------| -| lambda | Angs | Wavelength at monochromator, computed from DM and THETA_M if left as 0. | 1.594 | -| DM | Angs | d-spacing of monochromator, computed from lambda and THETA_M if left as 0. | 0 | -| Powder | str | File name for powder description | "Na2Ca3Al2F14.laz" | -| RV | m | Monochromator vertical curvature, 0 for flat, -1 for automatic setting | -1 | -| L1 | m | Source-Monochromator distance | 16.05 | -| L2 | m | Monochromator-Sample distance | 2.645 | -| L3 | m | Sample-Detector distance | 1.3 | -| verbose | 1 | Print DIF configuration. 0 to be quiet | 1 | -| ALPHA1 | min | Horizontal collimator divergence for L1 arm (before monochromator) | 18 | -| ALPHA2 | min | Horizontal collimator divergence for L2 arm (monochromator-sample) | 11 | -| ALPHA3 | min | Horizontal collimator divergence for L3 arm (sample-detector) | 5 | -| ETA | min | Monochromator horizontal mosaic (gaussian) | 12 | -| THETA_M | deg | Monochromator take-off angle, computed from lambda and DM if left as 0. | 67.5 | -| TILT | deg | Monochromator additional tilt, for rocking curves | 0 | -| SM | 1 | Scattering sense of beam from Monochromator. 1:left, -1:right | 1 | -| Dheight | m | Banana detector height | 0.3 | -| coating | 1 | Super-mirror in-beam tube guide coating | 0 | - -## Links - -- [Source code](ILL_D2B.instr) for `ILL_D2B.instr`. -- G. Caglioti, A. Paoletti, F.P. Ricci, Nucl. Instr. and. Meth. 3 (1958) 223 -- L.D. Cussen, Nucl. Instr. and. Meth. A 554 (2005) 406 -- M. Morhac, NIM A 600 (2009) 478 - ---- - -*Generated for mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/examples/ILL/ILL_D2B_noenv/ILL_D2B_noenv.md b/mcstas-comps/examples/ILL/ILL_D2B_noenv/ILL_D2B_noenv.md deleted file mode 100644 index a424bfd01..000000000 --- a/mcstas-comps/examples/ILL/ILL_D2B_noenv/ILL_D2B_noenv.md +++ /dev/null @@ -1,74 +0,0 @@ -# The `ILL_D2B_noenv` Instrument - -*McStas: Simple monochromator Diffractometer for powders* - -## Identification - -- **Site:** ILL -- **Author:** C. M. I Enrique, K. Lieutenant, E. Farhi and L. Cussen -- **Origin:** ILL -- **Date:** 13 Apr 2006 - -## Description - -```text -The diffractometer D2B is characterised by the very high take-off angle (135 deg) -for the monochromator, which has a relatively large mosaic spread of 20' to -compensate for the corresponding intensity (dl/l) loss. It is 300 mm high, -focusing vertically onto about 50 mm; this large incident vertical divergence -is matched by 200 mm high detectors and collimators. A complete diffraction -pattern is obtained after about 100 steps of 0.025 deg in 2theta, since the 64 -detectors are spaced at 2.5 deg intervals. Such scans take typically 30 minutes; -they are repeated to improve statistics. - -D2B was designed for work on samples and high resolution of very large -d-spacings using wavelengths of between 2.4 Å and 6 Å. Wavelengths can easily be -changed under computer control, since they are all obtained by a simple rotation -within the Ge[hhl] plane. A large graphite filter can be switched in to provide -a very clean beam at 2.4 Angs, and a cold Be-filter can be used for longer -wavelengths. - -This model implements as well the Caglioti UVW equations, that give estimates -of the instrument resolution. - -Monochromator lattice parameter -Ge 111 DM=3.266 AA -Ge 311 DM=1.714 AA -Ge 511 DM=1.089 AA -Ge 533 DM=0.863 AA -``` - -## Input parameters - -Parameters in **boldface** are required; the others are optional. - -| Name | Unit | Description | Default | -|------|------|-------------|---------| -| lambda | Angs | Wavelength at monochromator, computed from DM and THETA_M if left as 0. | 1.594 | -| DM | Angs | d-spacing of monochromator, computed from lambda and THETA_M if left as 0. | 0 | -| Powder | str | File name for powder description | "Na2Ca3Al2F14.laz" | -| RV | m | Monochromator vertical curvature, 0 for flat, -1 for automatic setting | -1 | -| L1 | m | Source-Monochromator distance | 16.05 | -| L2 | m | Monochromator-Sample distance | 2.645 | -| L3 | m | Sample-Detector distance | 1.3 | -| verbose | 1 | Print DIF configuration. 0 to be quiet | 1 | -| ALPHA1 | min | Horizontal collimator divergence for L1 arm (before monochromator) | 18 | -| ALPHA2 | min | Horizontal collimator divergence for L2 arm (monochromator-sample) | 11 | -| ALPHA3 | min | Horizontal collimator divergence for L3 arm (sample-detector) | 5 | -| ETA | min | Monochromator horizontal mosaic (gaussian) | 12 | -| THETA_M | deg | Monochromator take-off angle, computed from lambda and DM if left as 0. | 67.5 | -| TILT | deg | Monochromator additional tilt, for rocking curves | 0 | -| SM | 1 | Scattering sense of beam from Monochromator. 1:left, -1:right | 1 | -| Dheight | m | Banana detector height | 0.3 | -| coating | 1 | Super-mirror in-beam tube guide coating | 0 | - -## Links - -- [Source code](ILL_D2B_noenv.instr) for `ILL_D2B_noenv.instr`. -- G. Caglioti, A. Paoletti, F.P. Ricci, Nucl. Instr. and. Meth. 3 (1958) 223 -- L.D. Cussen, Nucl. Instr. and. Meth. A 554 (2005) 406 -- M. Morhac, NIM A 600 (2009) 478 - ---- - -*Generated for mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/examples/ILL/ILL_D4/ILL_D4.md b/mcstas-comps/examples/ILL/ILL_D4/ILL_D4.md deleted file mode 100644 index 269f3761e..000000000 --- a/mcstas-comps/examples/ILL/ILL_D4/ILL_D4.md +++ /dev/null @@ -1,51 +0,0 @@ -# The `ILL_D4` Instrument - -*McStas: D4 Diffractometer for liquids at the ILL.* - -## Identification - -- **Site:** ILL -- **Author:** E. Farhi -- **Origin:** LLB/ILL -- **Date:** 13 Apr 2006 - -## Description - -```text -D4 Diffractometer for liquids at the ILL, installed on the hot source. - -The dedicated liquid and amorphous instrument D4 is a two-axis diffractometer -equipped with nine 1D position sensitive microstrip detectors. In this model, -a PSD banana detector is also present. - -The monochromator take-off angle is 2Theta_M ~ 20-25 deg, variable. The available -monochromators are all vertically focusing, Cu (200) for 0.7 Angs, Cu (220) -for 0.5 Angs. - -Cu 002 DM=1.807 AA -Cu 220 DM=1.278 AA -``` - -## Input parameters - -Parameters in **boldface** are required; the others are optional. - -| Name | Unit | Description | Default | -|------|------|-------------|---------| -| lambda | Angs | Wavelength at monochromator | 0.7 | -| DM | Angs | d-spacing of monochromator | 1.807 | -| sample | str | File name for powder/liquid description LAU/LAZ/qSq/Sqw | "SiO2_liq.qSq" | -| RV | m | Monochromator vertical curvature, 0 for flat, -1 for automatic setting | -1 | -| L1 | m | Source-Monochromator distance | 6.4 | -| L2 | m | Monochromator-Sample distance | 2.61 | -| L3 | m | Sample-Detector distance | 1.148 | -| verbose | 1 | Print DIF configuration. 0 to be quiet | 1 | - -## Links - -- [Source code](ILL_D4.instr) for `ILL_D4.instr`. -- The D4 diffractometer at the ILL - ---- - -*Generated for mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/examples/ILL/ILL_H10_IN8/ILL_H10_IN8.md b/mcstas-comps/examples/ILL/ILL_H10_IN8/ILL_H10_IN8.md deleted file mode 100644 index 2c430d7f1..000000000 --- a/mcstas-comps/examples/ILL/ILL_H10_IN8/ILL_H10_IN8.md +++ /dev/null @@ -1,84 +0,0 @@ -# The `ILL_H10_IN8` Instrument - -*McStas: Thermal neutron three-axis spectrometer IN8@ILL* - -## Identification - -- **Site:** ILL -- **Author:** Emmanuel Farhi -- **Origin:** ILL (France) -- **Date:** 2006 - -## Description - -```text -IN8 is installed on beamtube H10 (diameter F = 200 mm). -The incident wavelength selection is obtained through a double focusing -monochromator , which has three faces equipped with PG002, Cu200 and bent -perfect Si111 crystals, respectively. Horizontal focusing allows increasing the -monochromatic flux at the expense of momentum but not energy resolution when -the horizontal virtual source (an adjustable entrance slit) is introduced at a -distance before the monochromator which matches the monochromator-sample -distance. - -The aperture of the horizontal virtual source can be varied but is typically -kept below 50 mm. This reduces the background level of the instrument. -Converging collimators as well as diaphragms can be placed in the beam path -before and after the monochromator to optimize the beam dimension and -definition. For special high-resolution experiments using a flat monochromator, -Soller collimators are available. - -The shielding drum allows varying the monochromator take-off angle in the range -10 < 2theta_m < 90. The secondary spectrometer has heavy borated polyethylene -shielding installed around the analyzer and detector elements. The scattering -angle at the sample position is in the range 0 < 2theta_s < 130 independent of -the monochromator take-off angle. - -In this TAS configuration, Cu200 is used as monochromator and Cu111 as -analyser, with a single type detector. -``` - -## Input parameters - -Parameters in **boldface** are required; the others are optional. - -| Name | Unit | Description | Default | -|------|------|-------------|---------| -| KF | Angs-1 | Outgoing neutron wavevector | 5 | -| KI | Angs-1 | Incoming neutron wavevector | 0 | -| QM | Angs-1 | Wavevector transfer in crystal | 0.5 | -| EN | meV | Energy transfer in crystal | 0 | -| verbose | 1 | print TAS configuration. 0 to be quiet | 1 | -| WM | m | Width of monochromator | 0.233 | -| HM | m | Height of monochromator | 0.197 | -| RMH | m | Monochromator horizontal curvature, 0 for flat, -1 for automatic setting | -1 | -| RMV | m | Monochromator vertical curvature, 0 for flat, -1 for automatic setting | -1 | -| DM | Angs | Monochromator d-spacing | 1.807 | -| NHM | 1 | Number of horizontal slabs composing the monochromator | 15 | -| NVM | 1 | Number of vertical slabs composing the monochromator | 15 | -| WA | m | Width of analyzer | 0.16 | -| HA | m | Height of analyzer | 0.08 | -| RAH | m | Analyzer horizontal curvature, 0 for flat, -1 for automatic setting | -1 | -| RAV | m | Analyzer vertical curvature, 0 for flat, -1 for automatic setting | -1 | -| DA | Angs | Analyzer d-spacing | 2.087 | -| NHA | 1 | Number of horizontal slabs composing the analyzer | 15 | -| NVA | 1 | Number of vertical slabs composing the analyzer | 15 | -| L1 | m | Source-Monochromator distance. Contains 1st Collimator of length 5.34 | 2.3 | -| ALF1 | arc min | Horizontal collimation from Source to Monochromator | 60 | -| ALF2 | arc min | Horizontal collimation from Monochromator to Sample A | 60 | -| ALF3 | arc min | Horizontal collimation from Sample to Analyzer | 60 | -| ALF4 | arc min | Horizontal collimation from Analyzer to Detector | 60 | -| BET1 | arc min | Vertical collimation from Source to Monochromator | 120 | -| BET2 | arc min | Vertical collimation from Monochromator to Sample A | 120 | -| BET3 | arc min | Vertical collimation from Sample to Analyzer | 120 | -| BET4 | arc min | Vertical collimation from Analyzer to Detector | 120 | - -## Links - -- [Source code](ILL_H10_IN8.instr) for `ILL_H10_IN8.instr`. -- Rescal for Matlab at http://www.ill.eu/instruments-support/computing-for-science/cs-software/all-software/matlab-ill/ -- Restrax at http://omega.ujf.cas.cz/restrax/ - ---- - -*Generated for mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/examples/ILL/ILL_H113/ILL_H113.md b/mcstas-comps/examples/ILL/ILL_H113/ILL_H113.md deleted file mode 100644 index 0f349bab0..000000000 --- a/mcstas-comps/examples/ILL/ILL_H113/ILL_H113.md +++ /dev/null @@ -1,36 +0,0 @@ -# The `ILL_H113` Instrument - -*McStas: The H113 supermirror ballistic curved cold guide at the ILL* - -## Identification - -- **Site:** ILL -- **Author:** FARHI Emmanuel (farhi@ill.fr) -- **Origin:** ILL -- **Date:** April 7, 2004 - -## Description - -```text -The H113 supermirror ballistic curved cold guide at the ILL feeding PF1b -``` - -## Input parameters - -Parameters in **boldface** are required; the others are optional. - -| Name | Unit | Description | Default | -|------|------|-------------|---------| -| m | 1 | m-value of whole guide coating. 0 absorbing, 1 for Ni, 1.2 for Ni58, 2-4 for SM | 2 | -| lambda | AA | central wavelength | 10 | -| dlambda | AA | wavelength half width. Use e.g. 0.8*lambda for white beam. | 9.9 | -| mip | 1 | m-value of in-pile guide coating (3.5 first meters of guide) | 1.2 | - -## Links - -- [Source code](ILL_H113.instr) for `ILL_H113.instr`. -- The PF1b beam line at the ILL - ---- - -*Generated for mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/examples/ILL/ILL_H13_IN20/ILL_H13_IN20.md b/mcstas-comps/examples/ILL/ILL_H13_IN20/ILL_H13_IN20.md deleted file mode 100644 index 22479ec63..000000000 --- a/mcstas-comps/examples/ILL/ILL_H13_IN20/ILL_H13_IN20.md +++ /dev/null @@ -1,83 +0,0 @@ -# The `ILL_H13_IN20` Instrument - -*McStas: Thermal neutron three-axis spectrometer IN20@ILL (unpolarized configuration)* - -## Identification - -- **Site:** ILL -- **Author:** Emmanuel Farhi -- **Origin:** ILL (France) -- **Date:** 2006 - -## Description - -```text -IN20 is installed at the H13 thermal beam tube (Phi 170 mm) in the reactor hall. - -Both the primary and the secondary spectrometer employ a monochromatic -horizontal focusing geometry. A heavy input slit of an adjustable size, placed -in the casemate, serves as a virtual source, providing a large solid angle for -the monochromatic beam, while reducing, together with a sapphire filter window, -the fast neutron background. The neutron energy is selected either by a doubly -focusing polarizing Heusler 111 monochromator (230 x 150 mm2 w x h) or by an -unpolarised Si 111 monochromator (elastically bent crystals, 195 x 200 mm2 w x -h) free of higher-order contamination in the incident beam at wave-numbers ki > -3 Angs-1. The analysis of the energy and polarisation state of the scattered -neutrons is effectuated by a similar horizontally focusing Heusler crystal -analyzer. Further PG 002 and Si 111 analyzers are available for occasional -unpolarised work. - -The energy transfer range accessible in the present configuration of IN20 -extends to 100 meV with maximum incident neutron energies reaching 150 meV. The -typical energy widths (FWHM) measured with a reference vanadium sample at the -graphite filter wave-numbers ki = 2.66 A-1 and 4.1 A-1 are 0.82(3) meV and 3.05 -(15) meV, respectively. - -This model uses two Si111 monochromator and analyzers (unpolarized -configuration). -``` - -## Input parameters - -Parameters in **boldface** are required; the others are optional. - -| Name | Unit | Description | Default | -|------|------|-------------|---------| -| KF | Angs-1 | Outgoing neutron wavevector | 3 | -| KI | Angs-1 | Incoming neutron wavevector | 0 | -| QM | Angs-1 | Wavevector transfer in crystal | 0.5 | -| EN | meV | Energy transfer in crystal | 0 | -| verbose | 1 | print TAS configuration. 0 to be quiet | 1 | -| WM | m | Width of monochromator | 0.20 | -| HM | m | Height of monochromator | 0.19 | -| RMH | m | Monochromator horizontal curvature, 0 for flat, -1 for automatic setting | -1 | -| RMV | m | Monochromator vertical curvature, 0 for flat, -1 for automatic setting | -1 | -| DM | Angs | Monochromator d-spacing | 3.155 | -| NHM | 1 | Number of horizontal slabs composing the monochromator | 15 | -| NVM | 1 | Number of vertical slabs composing the monochromator | 15 | -| WA | m | Width of analyzer | 0.16 | -| HA | m | Height of analyzer | 0.08 | -| RAH | m | Analyzer horizontal curvature, 0 for flat, -1 for automatic setting | -1 | -| RAV | m | Analyzer vertical curvature, 0 for flat, -1 for automatic setting | -1 | -| DA | Angs | Analyzer d-spacing | 3.155 | -| NHA | 1 | Number of horizontal slabs composing the analyzer | 15 | -| NVA | 1 | Number of vertical slabs composing the analyzer | 15 | -| L1 | m | Source-Monochromator distance. Contains 1st Collimator of length 5.34 | 2.33 | -| ALF1 | arc min | Horizontal collimation from Source to Monochromator | 60 | -| ALF2 | arc min | Horizontal collimation from Monochromator to Sample A | 60 | -| ALF3 | arc min | Horizontal collimation from Sample to Analyzer | 60 | -| ALF4 | arc min | Horizontal collimation from Analyzer to Detector | 60 | -| BET1 | arc min | Vertical collimation from Source to Monochromator | 120 | -| BET2 | arc min | Vertical collimation from Monochromator to Sample A | 120 | -| BET3 | arc min | Vertical collimation from Sample to Analyzer | 120 | -| BET4 | arc min | Vertical collimation from Analyzer to Detector | 120 | - -## Links - -- [Source code](ILL_H13_IN20.instr) for `ILL_H13_IN20.instr`. -- Rescal for Matlab at http://www.ill.eu/instruments-support/computing-for-science/cs-software/all-software/matlab-ill/ -- Restrax at http://omega.ujf.cas.cz/restrax/ - ---- - -*Generated for mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/examples/ILL/ILL_H142/ILL_H142.md b/mcstas-comps/examples/ILL/ILL_H142/ILL_H142.md deleted file mode 100644 index 31b94401d..000000000 --- a/mcstas-comps/examples/ILL/ILL_H142/ILL_H142.md +++ /dev/null @@ -1,37 +0,0 @@ -# The `ILL_H142` Instrument - -*McStas: The H142 S-curved cold guide at the ILL* - -## Identification - -- **Site:** ILL -- **Author:** FARHI Emmanuel (farhi@ill.fr) -- **Origin:** ILL -- **Date:** April 7, 2004 - -## Description - -```text -The H142 S-curved cold guide at the ILL feeding IN12 -``` - -## Input parameters - -Parameters in **boldface** are required; the others are optional. - -| Name | Unit | Description | Default | -|------|------|-------------|---------| -| m | 1 | m-value of whole guide coating. 0 absorbing, 1 for Ni, 1.2 for Ni58, 2-4 for SM | 1 | -| lambda | AA | central wavelength | 10 | -| dlambda | AA | wavelength half width. Use e.g. 0.8*lambda for white beam. | 9.9 | -| gH | m | height of 2nd H142 curved section | 0.12 | -| mip | 1 | m-value of in-pile guide coating | 1 | - -## Links - -- [Source code](ILL_H142.instr) for `ILL_H142.instr`. -- The IN12 TAS at the ILL - ---- - -*Generated for mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/examples/ILL/ILL_H142_D33/ILL_H142_D33.md b/mcstas-comps/examples/ILL/ILL_H142_D33/ILL_H142_D33.md deleted file mode 100644 index d40d31782..000000000 --- a/mcstas-comps/examples/ILL/ILL_H142_D33/ILL_H142_D33.md +++ /dev/null @@ -1,48 +0,0 @@ -# The `ILL_H142_D33` Instrument - -*McStas: A simplified H142 cold guide model at the ILL, with a simple D33 model at the end* - -## Identification - -- **Site:** ILL -- **Author:** FARHI Emmanuel (farhi@ill.fr) -- **Origin:** ILL -- **Date:** 2012 - -## Description - -```text -This model decribes a simiplified H142 cold guide at the ILL, with D33. - -The D33 Massive dynamic q-range small-angle diffractometer is a Small-Angle Neutron -Scattering instrument for the characterization of samples with typical sizes -varying from the nanometer scale to few tenth of micrometer. In addition to a -standard monochromatic mode of operation, D33 offers a time of flight mode (TOF) -to cover an enhanced dynamic q-range qmax/qmin in one instrument setting. High -magnetic fields, up to 17 T at the sample position, beam polarization and 3He -spin analysis, facilitate and expand studies of magnetism and allow a more -quantitative analysis of spin incoherent samples. The high flux allows for -kinetic experiments with time resolution of the order of few milliseconds. -``` - -## Input parameters - -Parameters in **boldface** are required; the others are optional. - -| Name | Unit | Description | Default | -|------|------|-------------|---------| -| lambda | | central wavelength band for guide illumination [Angs] | 14 | -| dlambda | | half width of guide wavelength band [Angs] | 1.4 | -| m1 | | m-coating for 1st guide section | 1 | -| m2 | | m-coating for 2nd guide section | 1 | -| m3 | | m-coating for 3th guide section | 1 | -| m4 | | m-coating for 4th guide section | 1 | -| diaphragm | | diaphragm diameter between section 3 and 4; use 0 to remove [cm] | 0 | - -## Links - -- [Source code](ILL_H142_D33.instr) for `ILL_H142_D33.instr`. - ---- - -*Generated for mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/examples/ILL/ILL_H142_IN12/ILL_H142_IN12.md b/mcstas-comps/examples/ILL/ILL_H142_IN12/ILL_H142_IN12.md deleted file mode 100644 index f39efcaec..000000000 --- a/mcstas-comps/examples/ILL/ILL_H142_IN12/ILL_H142_IN12.md +++ /dev/null @@ -1,51 +0,0 @@ -# The `ILL_H142_IN12` Instrument - -*McStas: The H142 S-curved cold guide at the ILL feeding IN12 TAS spectrometer* - -## Identification - -- **Site:** ILL -- **Author:** FARHI Emmanuel (farhi@ill.fr) -- **Origin:** ILL -- **Date:** April 7, 2004 - -## Description - -```text -The H142 beam is the only S-curved guide at the ILL. It is used here to feed -the IN12 TAS spectrometer (classical configuration). -``` - -## Input parameters - -Parameters in **boldface** are required; the others are optional. - -| Name | Unit | Description | Default | -|------|------|-------------|---------| -| m | 1 | m-value of guide coating (H14/H142) | 1 | -| KI | Angs-1 | central wavevector for incoming neutrons | 2.662 | -| QM | Angs-1 | wavevector transfer modulus at the sample | 1.0 | -| EN | meV | energy transfer at the sample | 0.0 | -| verbose | | verbose-mode toggle | 1 | -| WM | m | Width of monochromator | 0.08 | -| HM | m | Height of monochromator | 0.12 | -| NHM | 1 | Number of vertical slabs composing the monochromator | 1 | -| NVM | 1 | Number of horizontal slabs composing the monochromator | 6 | -| RMV | m | Monochromator vertical curvature, 0 for flat, -1 for automatic setting | -1 | -| WA | m | Width of analyzer | 0.121 | -| HA | m | Height of analyzer | 0.118 | -| NHA | 1 | Number of horizontal slabs composing the analyzer | 11 | -| NVA | 1 | Number of vertical slabs composing the analyzer | 1 | -| RAH | m | Analyzer horizontal curvature, 0 for flat, -1 for automatic setting | -1 | -| L2 | m | Monochromator-Sample distance. Contains 2nd Collimator | 1.726 | -| L3 | m | Sample-Analyzer distance. Contains 3rd Collimator | 1.300 | -| L4 | m | Analyzer-detector distance. Contains 4th Collimator | 0.710 | - -## Links - -- [Source code](ILL_H142_IN12.instr) for `ILL_H142_IN12.instr`. -- The IN12 TAS at the ILL - ---- - -*Generated for mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/examples/ILL/ILL_H142_simple/ILL_H142_simple.md b/mcstas-comps/examples/ILL/ILL_H142_simple/ILL_H142_simple.md deleted file mode 100644 index 595ce1212..000000000 --- a/mcstas-comps/examples/ILL/ILL_H142_simple/ILL_H142_simple.md +++ /dev/null @@ -1,37 +0,0 @@ -# The `ILL_H142_simple` Instrument - -*McStas: The H142 S-curved cold guide at the ILL* - -## Identification - -- **Site:** ILL -- **Author:** FARHI Emmanuel (farhi@ill.fr) -- **Origin:** ILL -- **Date:** April 7, 2004 - -## Description - -```text -The H142 S-curved cold guide at the ILL feeding IN12 -``` - -## Input parameters - -Parameters in **boldface** are required; the others are optional. - -| Name | Unit | Description | Default | -|------|------|-------------|---------| -| m | 1 | m-value of whole guide coating. 0 absorbing, 1 for Ni, 1.2 for Ni58, 2-4 for SM | 1 | -| lambda | AA | central wavelength | 10 | -| dlambda | AA | wavelength half width. Use e.g. 0.8*lambda for white beam. | 9.9 | -| gH | m | height of 2nd H142 curved section | 0.12 | -| mip | 1 | m-value of in-pile guide coating | 1 | - -## Links - -- [Source code](ILL_H142_simple.instr) for `ILL_H142_simple.instr`. -- The IN12 TAS at the ILL - ---- - -*Generated for mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/examples/ILL/ILL_H143_LADI/ILL_H143_LADI.md b/mcstas-comps/examples/ILL/ILL_H143_LADI/ILL_H143_LADI.md deleted file mode 100644 index 99a6abf4c..000000000 --- a/mcstas-comps/examples/ILL/ILL_H143_LADI/ILL_H143_LADI.md +++ /dev/null @@ -1,60 +0,0 @@ -# The `ILL_H143_LADI` Instrument - -*McStas: The LADI protein crystallography cold Laue diffractometer* - -## Identification - -- **Site:** ILL -- **Author:** Emmanuel Farhi -- **Origin:** ILL (France) -- **Date:** Sept 2014. - -## Description - -```text -LADI-III is a quasi-Laue neutron diffractometer used for single-crystal studies -of biological macromolecules at high resolution (1.5 - 2.5Å) in order to locate -individual protons or deuterons of special interest, water structures or other -small molecules that can be marked with deuterium to be particularly visible. -Data collection is feasible for samples with unit-cell edges ranging from 50 -to 150Å using crystal volumes from ~0.05 to 0.5mm3, respectively. - -LADI-III uses a large cylindrical area detector composed of neutron-sensitive -image-plates, which completely surround the crystal and allows large numbers -of reflections to be recorded simultaneously. Data are collected using a -quasi-Laue method in order to provide a rapid survey of reciprocal space, while -reducing the background on the detector compared to use of the full white beam. - -LADI: -Guide H143: -H14_1 H14_2 H14_3 [OT1] H143_1 [OT2] H143_2 last -Length [m] 6.8 6 21 30 35 1 -m 2 2 2 1,bot=1.4 1,bot=1.4 idem -Rh [km] - 2.7 4.0 - - - -Rv [km] - - - 2.0 2.0 2.0 -n_elm. 2 5 11 15 14 last=1m -section [mm] 45x220 45x220 45x220-200 45x30+95 30x30+95 [w*h+v.offset] - -Filter: Ni/Ti multilayer band-pass filter, Quasi-Laue (dlambda/lambda<30%) -Collimation: Pinholes 0.5 to 2.9 mm -Detector: image plate 1250 x 450 mm2 -Sample: at 2.710 mm from the end of the guide H143. -``` - -## Input parameters - -Parameters in **boldface** are required; the others are optional. - -| Name | Unit | Description | Default | -|------|------|-------------|---------| -| lambda | Angs | wavelength | 3.2 | -| dlambda | Angs | wavelength HALF spread. | 1 | -| reflections | str | list of reflections describing the sample SX | "leucine.lau" | - -## Links - -- [Source code](ILL_H143_LADI.instr) for `ILL_H143_LADI.instr`. - ---- - -*Generated for mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/examples/ILL/ILL_H15/ILL_H15.md b/mcstas-comps/examples/ILL/ILL_H15/ILL_H15.md deleted file mode 100644 index 983e1a536..000000000 --- a/mcstas-comps/examples/ILL/ILL_H15/ILL_H15.md +++ /dev/null @@ -1,36 +0,0 @@ -# The `ILL_H15` Instrument - -*McStas: The H15@ILL curved cold guide at the ILL (feeding IN6, D7, IN10, D11)* - -## Identification - -- **Site:** ILL -- **Author:** FARHI Emmanuel (farhi@ill.fr) -- **Origin:** ILL -- **Date:** April 7, 2004 - -## Description - -```text -The H15@ILL curved guide sending cold neutrons from the VCS to IN6 -``` - -## Input parameters - -Parameters in **boldface** are required; the others are optional. - -| Name | Unit | Description | Default | -|------|------|-------------|---------| -| m | 1 | m-value of whole guide coating. 0 absorbing, 1 for Ni, 1.2 for Ni58, 2-4 for SM | 1 | -| lambda | AA | central wavelength | 10 | -| dlambda | AA | wavelength half width. Use e.g. 0.8*lambda for white beam. | 9.9 | -| mip | 1 | m-value of in-pile guide coating | 1 | - -## Links - -- [Source code](ILL_H15.instr) for `ILL_H15.instr`. -- The IN6 TOF at the ILL - ---- - -*Generated for mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/examples/ILL/ILL_H15_D11/ILL_H15_D11.md b/mcstas-comps/examples/ILL/ILL_H15_D11/ILL_H15_D11.md deleted file mode 100644 index ceeec955a..000000000 --- a/mcstas-comps/examples/ILL/ILL_H15_D11/ILL_H15_D11.md +++ /dev/null @@ -1,58 +0,0 @@ -# The `ILL_H15_D11` Instrument - -*McStas: D11 at the ILL: Lowest momentum transfer, lowest background small-angle neutron scattering instrument* - -## Identification - -- **Site:** ILL -- **Author:** FARHI Emmanuel (farhi@ill.fr) -- **Origin:** ILL -- **Date:** 2012 - -## Description - -```text -D11 - LOWEST MOMENTUM TRANSFER and LOWEST BACKGROUND SANS - -D11 is the archetype of a long, pinhole geometry instrument for small angle -neutron scattering (SANS), designed for the study of large scale structures in -soft matter systems, chemistry, biology, solid state physics and materials science. - -This model allows to specify the collimation length, i.e. the free path between -the end of the guide and the sample location. When Lc=1.5 m, the intensity is -maximal, but Q-resolution (divergence) is degraded. The Lc=40.5 m configuration -is the low-Q one. -The collimation can also be given as predefined configuration 'iLc' starting from 0 - -iLc ={ 1.5, 2.5, 4, 5.5, 8, 10.5, 13.5, 16.5, 20.5, 28, 34, 40.5} - -so that e.g. iLc=5 corresponds with a 10.5 m collimation - -The quality of the collimation section can be specified among a set of glass -pre-set specifications. The available configurations are: - -| Borkron_1972 Borkron_2003 Borofloat_2001 Borofloat_2003 -Chamfers [mm] | 0.2 0.2 0.8 0.2 -Wavyness [rad]| 2.5e-5 1e-4 8e-4 2e-4 -``` - -## Input parameters - -Parameters in **boldface** are required; the others are optional. - -| Name | Unit | Description | Default | -|------|------|-------------|---------| -| Lambda | Angs | neutron wavelength reaching D11 sample | 4.51 | -| Config | string | guide configuration. Must be one of Borkron_1972 Borkron_2003 Borofloat_2001 Borofloat_2003 | "Borkron_1972" | -| Lc | m | guide collimation, i.e. free path between end of guide and sample location. Must be one of 40.5, 34, 28, 20.5, 16.5 13.5 10.5, 8, 5.5, 4, 2.5, 1.5 | 0 | -| iLc | index | guide collimation predefined length | 5 | -| Chamfers | m | chamfers width (input/output movable guide section+longitudinal top/bottom sides) | 0.0002 | -| Waviness | rad | movable guide Waviness | 2.5e-5 | - -## Links - -- [Source code](ILL_H15_D11.instr) for `ILL_H15_D11.instr`. - ---- - -*Generated for mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/examples/ILL/ILL_H15_IN6/ILL_H15_IN6.md b/mcstas-comps/examples/ILL/ILL_H15_IN6/ILL_H15_IN6.md deleted file mode 100644 index d6c370391..000000000 --- a/mcstas-comps/examples/ILL/ILL_H15_IN6/ILL_H15_IN6.md +++ /dev/null @@ -1,68 +0,0 @@ -# The `ILL_H15_IN6` Instrument - -*McStas: The IN6 Time-of-Flight simulation, positioned as the first instrument in the -cold guide H15 (Nickel coating) at the ILL.* - -## Identification - -- **Site:** ILL -- **Author:** Emmanuel Farhi -- **Origin:** ILL (France) -- **Date:** 17th Jan 2005. - -## Description - -```text -IN6 is a time focussing time-of-flight spectrometer designed for quasielastic and -inelastic scattering for incident wavelengths in the range of 4 to 6 Angs. - -An intense beam is extracted from the H15 guide by a vertically focussing -monochromator array. It consists of three composite pyrolytic graphite -monochromators using the full height (20 cm) of the guide and focussing the beam -at the sample position. In order to minimise the interference with the -subsequent instruments, the monochromator can deliver only four wavelengths: -4.1; 4.6; 5.1; and 5.9 Angs. The second order reflection from the graphite -monochromator is removed by a beryllium-filter cooled at liquid nitrogen -temperature. - -To achieve the time-focussing condition, the beam is pulsed by a Fermi chopper. -It has a small slot length to ensure a good transmission. The normal distance -between the Fermi chopper and the sample is 38 cm. To prevent frame-overlap when -the chopper is rotating faster than 7500 rpm, a suppressor chopper is placed -before the Fermi chopper and rotates in phase with the latter. - -The secondary spectrometer consists first of an evacuated sample area. The -detector bank is entirely covered with detector boxes, thus avoiding the -inconvenience of moving the counters. - -This instrument model contains the complete H15 guide, a triple monochromator -(using the GROUP), two Fermi Choppers (including one background chopper), a -liquid sample handling coherent and incoherent processes (elastic and inelastic) -with multiple scattering, customized monitors, and the SPLIT mechanism to -improve the statistics. - -Example: lambda=4.14 Detector: M_theta_t_all_I=70 -``` - -## Input parameters - -Parameters in **boldface** are required; the others are optional. - -| Name | Unit | Description | Default | -|------|------|-------------|---------| -| lambda | Angs | wavelength within 4.14\|4.6\|5.12\|5.92 | 4.14 | -| dlambda | Angs | wavelength HALF spread. default is 0.075 | 0.075 | - -## Links - -- [Source code](ILL_H15_IN6.instr) for `ILL_H15_IN6.instr`. -- The IN6@ILL Yellow Pages -- R.Scherm et al, "Another Time of Flight Spectrometer", ILL Report 76S235, 1976 -- R.Scherm, "A high-resolution spectrometer ...", report Jul-295-NP, Kernforschungsanlage Julich, 1965 -- Y.Blanc, "Le spectrometre a temps de vol IN6", ILL Report 83BL21G, 1983 -- K.H.Beckurts et al, Neutron physics, Kernforschungsanlage Karlsruhe, 1964 (p317) -- R.Scherm and T.Springer, "Proposal of a multiple Chopper...", Kernforschungsanlage Julich, 19xx - ---- - -*Generated for mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/examples/ILL/ILL_H15_SAM/ILL_H15_SAM.md b/mcstas-comps/examples/ILL/ILL_H15_SAM/ILL_H15_SAM.md deleted file mode 100644 index 4d6fe9e9c..000000000 --- a/mcstas-comps/examples/ILL/ILL_H15_SAM/ILL_H15_SAM.md +++ /dev/null @@ -1,71 +0,0 @@ -# The `ILL_H15_SAM` Instrument - -*McStas: The small-angle diffractometer SAM at the ILL.* - -## Identification - -- **Site:** ILL -- **Author:** Nicolas MARTIN -- **Origin:** LLB -- **Date:** 2026/04/08 - -## Description - -```text -SAM is a CRG instrument built through a collaboration between the LLB & the ILL between -June 2023 and February 2024. After hot commissioning, first user experiments took place -in June 2024. SAM stands for "Small-Angle Modular instrument". It is a compact SANS -devoted to the study of mesostructures found in various contexts (soft matter, biophysics, -material sciences and magnetism), which also features polarized neutrons capabilities -(not included in this model). The beamline is fed by the completely renewed H15 cold -neutrons guide. - -Instrument parameters: - -Typical wavelength range: 3.25-24 AA -Guides cross section: 30 x 30 mm2 (three moveable elements within collimator) -Collimation lengths: [9, 7, 5, 2.5] m -Adjustable 'reflectometer-type' diaphragms located at [9, 5, 2.5] m upstream of sample position. -Sample-to-detector distance: 0.75-6.85 m -Detector: 64 x 64 cm2 monoblock 3He PSD -See the instrument page on the ILL website for more details. - -Example (typical "real-life" measurement sequence): - -mcrun ILL_H15_SAM.instr --gravity -n1e7 -dLargeQ lambda=5.2 -mcrun ILL_H15_SAM.instr --gravity -n1e7 -dSmallQ guide1=0 guide2=0 guide3=0 lsd=6.8 - -(Corresponding test-suite entries:) -``` - -## Input parameters - -Parameters in **boldface** are required; the others are optional. - -| Name | Unit | Description | Default | -|------|------|-------------|---------| -| lambda | AA | Wavelength mean value | 5.2 | -| dlambda | 1 | Wavelength range, full width | 0.2 | -| lambdasel | AA | Mean wavelength selected by the NVS | -1.0 | -| guide1 | 1 | 0 = out, 1 = in | 1 | -| guide2 | 1 | 0 = out, 1 = in | 1 | -| guide3 | 1 | 0 = out, 1 = in | 1 | -| s1w | mm | Width of the 1st adjustable diaphragm | 30 | -| s1h | mm | Height of the 1st adjustable diaphragm | 30 | -| s2w | mm | Width of the 2nd adjustable diaphragm | 30 | -| s2h | mm | Height of the 2nd adjustable diaphragm | 30 | -| s3w | mm | Width of the 3rd adjustable diaphragm | 30 | -| s3h | mm | Height of the 3rd adjustable diaphragm | 30 | -| ssw | mm | Width or diameter of sample slit | 7 | -| ssh | mm | Height of sample slit (0 for circular slit) | 10 | -| sampleno | 1 | Choice of sample: 0 = none, 1 = liquid water, 2 = powder ring, 3 = hard spheres in solution | 3 | -| lsd | m | Sample-to-detector distance | 0.85 | - -## Links - -- [Source code](ILL_H15_SAM.instr) for `ILL_H15_SAM.instr`. -- - ---- - -*Generated for mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/examples/ILL/ILL_H16/ILL_H16.md b/mcstas-comps/examples/ILL/ILL_H16/ILL_H16.md deleted file mode 100644 index cda8c204b..000000000 --- a/mcstas-comps/examples/ILL/ILL_H16/ILL_H16.md +++ /dev/null @@ -1,34 +0,0 @@ -# The `ILL_H16` Instrument - -*McStas: The H16 cold guide (feeding IN5)* - -## Identification - -- **Site:** ILL -- **Author:** E. Farhi, J. Ollivier, Celia Castan Guerrero -- **Origin:** ILL -- **Date:** Jan 2004-2009 - -## Description - -```text -The H16@ILL curved guide sending cold neutrons from the VCS to IN5. -``` - -## Input parameters - -Parameters in **boldface** are required; the others are optional. - -| Name | Unit | Description | Default | -|------|------|-------------|---------| -| lambda | AA | mean incident wavelength. | 10 | -| dlambda | AA | wavelength half width. Use e.g. 0.8*lambda for white beam. | 9.9 | -| m | 1 | m-value of whole guide coating. 0 absorbing, 1 for Ni, 1.2 for Ni58, 2-4 for SM | 1 | - -## Links - -- [Source code](ILL_H16.instr) for `ILL_H16.instr`. - ---- - -*Generated for mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/examples/ILL/ILL_H16_IN5/ILL_H16_IN5.md b/mcstas-comps/examples/ILL/ILL_H16_IN5/ILL_H16_IN5.md deleted file mode 100644 index 3f05bb11f..000000000 --- a/mcstas-comps/examples/ILL/ILL_H16_IN5/ILL_H16_IN5.md +++ /dev/null @@ -1,37 +0,0 @@ -# The `ILL_H16_IN5` Instrument - -*McStas: The full IN5B: H16 guide & chopper system + sample + PSD and tof detector* - -## Identification - -- **Site:** ILL -- **Author:** E. Farhi, J. Ollivier, Celia Castan Guerrero -- **Origin:** ILL -- **Date:** Jan 2004-2009 - -## Description - -```text -The IN5@ILL TOF spectrometer from cold source to final detector, with sample. -The detector model includes Fe housing and tube cross talk absorbing masks -with angle restriction (neutrons that scatter in Fe in front of a tube and -enter a different tube are absorbed). -``` - -## Input parameters - -Parameters in **boldface** are required; the others are optional. - -| Name | Unit | Description | Default | -|------|------|-------------|---------| -| lambda | AA | mean incident wavelength | 4.5 | -| dlambda | AA | wavelength half width. Use e.g. 0.8*lambda for white beam. | 0.09 | - -## Links - -- [Source code](ILL_H16_IN5.instr) for `ILL_H16_IN5.instr`. -- The IN5@ILL cold time of flight instrument - ---- - -*Generated for mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/examples/ILL/ILL_H22/ILL_H22.md b/mcstas-comps/examples/ILL/ILL_H22/ILL_H22.md deleted file mode 100644 index 3760114c5..000000000 --- a/mcstas-comps/examples/ILL/ILL_H22/ILL_H22.md +++ /dev/null @@ -1,35 +0,0 @@ -# The `ILL_H22` Instrument - -*McStas: The H22 curved thermal guide at the ILL* - -## Identification - -- **Site:** ILL -- **Author:** FARHI Emmanuel (farhi@ill.fr) -- **Origin:** ILL -- **Date:** April 7, 2004 - -## Description - -```text -The H22 curved thermal guide at the ILL feeding D1A/D1B, SALSA and VIVALDI -``` - -## Input parameters - -Parameters in **boldface** are required; the others are optional. - -| Name | Unit | Description | Default | -|------|------|-------------|---------| -| m | 1 | m-value of whole guide coating. 0 absorbing, 1 for Ni, 1.2 for Ni58, 2-4 for SM | 2 | -| lambda | AA | central wavelength | 4 | -| dlambda | AA | wavelength half width. Use e.g. 0.8*lambda for white beam. | 3.9 | -| mip | 1 | m-value of in-pile guide coating | 2 | - -## Links - -- [Source code](ILL_H22.instr) for `ILL_H22.instr`. - ---- - -*Generated for mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/examples/ILL/ILL_H22_D1A/ILL_H22_D1A.md b/mcstas-comps/examples/ILL/ILL_H22_D1A/ILL_H22_D1A.md deleted file mode 100644 index 41f58b927..000000000 --- a/mcstas-comps/examples/ILL/ILL_H22_D1A/ILL_H22_D1A.md +++ /dev/null @@ -1,64 +0,0 @@ -# The `ILL_H22_D1A` Instrument - -*McStas: Simple monochromator Diffractometer for powders (D1A) installed on H22, with -container/sample environment and radial collimator.* - -## Identification - -- **Site:** ILL -- **Author:** E. Farhi -- **Origin:** ILL -- **Date:** 13 Apr 2006 - -## Description - -```text -D1A is a reliable diffractometer for standard crystallographic problems. It gives -excellent results with the Rietveld method owing to its near perfect Gaussian -peak-shape in the 2θ-range 30° to 150°. - -Special features include -a high fixed take-off angle of 122 deg, giving high resolution at large -scattering angles (up to 160 deg); -a bank of 25 high efficiency collimators and counters; -an anisotropically squashed germanium monochromator focussing a 250 -mm high beam onto only 30 mm; -a wide choice of wavelengths, from 1.39 Angs to 2.99 Angs, quickly available by -simple rotation of the focussing monochromator; - -The large monochromator take-off angle means that the diffraction pattern is -focussed for the parallel geometry shown (2θ = 122°). The counter can be swept -through 0 deg to 2θ = 160° deg for the highest angle counter, usually in steps -of 0.05 deg. -Monochromator Neutron wavelength -Ge 117 DM=0.7946 AA 1.390 -Ge 335 DM=0.8655 AA 1.514 -Ge 115 DM=1.0925 AA 1.911 (optimal) -Ge 113 DM=1.712 AA 2.994 - -The sample is a powder, in a container can, all positioned in an -Al environment (e.g. cryostat/furnace shield). - -This instrument was installed on the H22 guide. -``` - -## Input parameters - -Parameters in **boldface** are required; the others are optional. - -| Name | Unit | Description | Default | -|------|------|-------------|---------| -| lambda | Angs | Wavelength at monochromator | 1.911 | -| dlambda | Angs | Wavelength-spread around lambda at source | 0.03 | -| DM | Angs | d-spacing of monochromator. Use DM=0 to compute the values from the requested wavelength. | 0 | -| RV | m | Radius of vertical focussing. flat for 0 | -1 | -| powder | str | File name for powder sample description | "Na2Ca3Al2F14.laz" | -| container | str | File name for container decription in Al cryostat/furnace | "V.laz" | - -## Links - -- [Source code](ILL_H22_D1A.instr) for `ILL_H22_D1A.instr`. - ---- - -*Generated for mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/examples/ILL/ILL_H22_D1A_noenv/ILL_H22_D1A_noenv.md b/mcstas-comps/examples/ILL/ILL_H22_D1A_noenv/ILL_H22_D1A_noenv.md deleted file mode 100644 index a1715a3d2..000000000 --- a/mcstas-comps/examples/ILL/ILL_H22_D1A_noenv/ILL_H22_D1A_noenv.md +++ /dev/null @@ -1,64 +0,0 @@ -# The `ILL_H22_D1A` Instrument - -*McStas: Simple monochromator Diffractometer for powders (D1A) installed on H22, with -container/sample environment and radial collimator.* - -## Identification - -- **Site:** ILL -- **Author:** E. Farhi -- **Origin:** ILL -- **Date:** 13 Apr 2006 - -## Description - -```text -D1A is a reliable diffractometer for standard crystallographic problems. It gives -excellent results with the Rietveld method owing to its near perfect Gaussian -peak-shape in the 2θ-range 30° to 150°. - -Special features include -a high fixed take-off angle of 122 deg, giving high resolution at large -scattering angles (up to 160 deg); -a bank of 25 high efficiency collimators and counters; -an anisotropically squashed germanium monochromator focussing a 250 -mm high beam onto only 30 mm; -a wide choice of wavelengths, from 1.39 Angs to 2.99 Angs, quickly available by -simple rotation of the focussing monochromator; - -The large monochromator take-off angle means that the diffraction pattern is -focussed for the parallel geometry shown (2θ = 122°). The counter can be swept -through 0 deg to 2θ = 160° deg for the highest angle counter, usually in steps -of 0.05 deg. -Monochromator Neutron wavelength -Ge 117 DM=0.7946 AA 1.390 -Ge 335 DM=0.8655 AA 1.514 -Ge 115 DM=1.0925 AA 1.911 (optimal) -Ge 113 DM=1.712 AA 2.994 - -The sample is a powder, in a container can, all positioned in an -Al environment (e.g. cryostat/furnace shield). - -This instrument was installed on the H22 guide. -``` - -## Input parameters - -Parameters in **boldface** are required; the others are optional. - -| Name | Unit | Description | Default | -|------|------|-------------|---------| -| lambda | Angs | Wavelength at monochromator | 1.911 | -| dlambda | Angs | Wavelength-spread around lambda at source | 0.03 | -| DM | Angs | d-spacing of monochromator. Use DM=0 to compute the values from the requested wavelength. | 0 | -| RV | m | Radius of vertical focussing. flat for 0 | -1 | -| powder | str | File name for powder sample description | "Na2Ca3Al2F14.laz" | -| container | str | File name for container decription in Al cryostat/furnace | "V.laz" | - -## Links - -- [Source code](ILL_H22_D1A_noenv.instr) for `ILL_H22_D1A_noenv.instr`. - ---- - -*Generated for mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/examples/ILL/ILL_H22_D1B/ILL_H22_D1B.md b/mcstas-comps/examples/ILL/ILL_H22_D1B/ILL_H22_D1B.md deleted file mode 100644 index c79bcb332..000000000 --- a/mcstas-comps/examples/ILL/ILL_H22_D1B/ILL_H22_D1B.md +++ /dev/null @@ -1,74 +0,0 @@ -# The `ILL_H22_D1B` Instrument - -*McStas: The D1B diffractometer on the H22 curved thermal guide at the ILL* - -## Identification - -- **Site:** ILL -- **Author:** FARHI Emmanuel (farhi@ill.fr) and SANCHEZ Javier (sanchez-montero@ill.fr) -- **Origin:** ILL -- **Date:** June, 2008 - -## Description - -```text -The D1B diffractometer on the H22 curved thermal guide at the ILL. - -D1B is a two-axis spectrometer dedicated to diffraction experiments requesting a -high neutron flux. A great number of experiments performed on D1B concern the -determination of magnetic structures. At small angles where the magnetic peaks -are expected, a high spatial resolution can be achieved, the FWHM reaches 0.2° -(for a sample with = 8 mm). Three pyrolitic graphite monochromators focusing -onto the sample position provide a flux of 6.5·106 n cm-2s-1. A second -wavelength with = 1.28 Å is available by using a germanium monochromator. D1B is -equipped with 3He/Xe position-sensitive detector composed of a system of -multi-electrodes with 400 cells, which span a 2 range of 80°. The detector can -be moved so that an angular range of 2°<2<130° can be covered. The specially -designed cryostat is known for its low background crucial for some experiments -with small intensity changes. Because of its high flux at = 2.52 Å together with -the large multi-detector, surface studies such as adsorbed phases as well as -real-time diffraction experiments are possible. Collecting a diffraction pattern -with sufficient statistics in minutes (1-5 min) even seconds allows in situ -studies of reaction kinetics. A fast detection of phase transitions can also be -obtained by scanning the temperature. A complete thermal variation of the -diffraction patterns (1.5 - 300 K) can be achieved in few hours (3-5h). -``` - -## Input parameters - -Parameters in **boldface** are required; the others are optional. - -| Name | Unit | Description | Default | -|------|------|-------------|---------| -| lambda | AA | mean incident wavelength. | 2.52 | -| dlambda | AA | wavelength full width. | 0.03 | -| DM | AA | Mono lattice spacing | 0 | -| Powder | str | File name for powder description, LAZ/LAU/Fullprof | "Na2Ca3Al2F14.laz" | -| RV | m | Monochromator vertical curvature, 0 for flat, -1 for automatic setting | 2.2 | -| L1 | m | Source-Monochromator distance | 0.25 | -| L2 | m | Monochromator-Sample distance | 3.0 | -| L3 | m | Sample-Detector distance | 1.500 | -| TRAS_X | m | Additional monochromator translation along X, left/righ w.r.t beam | -0 | -| TRAS_Z | m | Additional monochromator translation along Z, along guide | 0 | -| TILT | deg | Monochromator additional tilt, for rocking curves | 0 | -| THETA_M | deg | Mono takeoff angle | 22.11 | -| R_pitch | deg | Angular pitch between the absorbing blades | .42 | -| R_ri | m | Inner radius of the collimator | 0.324 | -| R_ro | m | Outer radius of the collimator | 0.419 | -| R_h | m | Height of the collimator | 0.090 | -| R_ttmin | deg | Lower scattering angle limit | -130 | -| R_ttmax | deg | Higher scattering angle limit | -2 | -| R_present | 1 | Presence flag for the radial collimator. 0: inactivate component. | 1 | -| verbose | 1 | Print DIF configuration. 0 to be quiet | 1 | -| Inc_Cryo | 1 | Cryostat incoherent fraction | 0.02 | -| Trans_Cryo | 1 | Cryostat event transmission | 0.85 | -| Trans_Spl | 1 | Sample event transmission | 0.2 | -| Inc_Spl | 1 | Sample incoherent fraction | 0.05 | - -## Links - -- [Source code](ILL_H22_D1B.instr) for `ILL_H22_D1B.instr`. - ---- - -*Generated for mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/examples/ILL/ILL_H22_D1B_noenv/ILL_H22_D1B_noenv.md b/mcstas-comps/examples/ILL/ILL_H22_D1B_noenv/ILL_H22_D1B_noenv.md deleted file mode 100644 index d117c1381..000000000 --- a/mcstas-comps/examples/ILL/ILL_H22_D1B_noenv/ILL_H22_D1B_noenv.md +++ /dev/null @@ -1,74 +0,0 @@ -# The `ILL_H22_D1B_noenv` Instrument - -*McStas: The D1B diffractometer on the H22 curved thermal guide at the ILL* - -## Identification - -- **Site:** ILL -- **Author:** FARHI Emmanuel (farhi@ill.fr) and SANCHEZ Javier (sanchez-montero@ill.fr) -- **Origin:** ILL -- **Date:** June, 2008 - -## Description - -```text -The D1B diffractometer on the H22 curved thermal guide at the ILL. - -D1B is a two-axis spectrometer dedicated to diffraction experiments requesting a -high neutron flux. A great number of experiments performed on D1B concern the -determination of magnetic structures. At small angles where the magnetic peaks -are expected, a high spatial resolution can be achieved, the FWHM reaches 0.2° -(for a sample with = 8 mm). Three pyrolitic graphite monochromators focusing -onto the sample position provide a flux of 6.5·106 n cm-2s-1. A second -wavelength with = 1.28 Å is available by using a germanium monochromator. D1B is -equipped with 3He/Xe position-sensitive detector composed of a system of -multi-electrodes with 400 cells, which span a 2 range of 80°. The detector can -be moved so that an angular range of 2°<2<130° can be covered. The specially -designed cryostat is known for its low background crucial for some experiments -with small intensity changes. Because of its high flux at = 2.52 Å together with -the large multi-detector, surface studies such as adsorbed phases as well as -real-time diffraction experiments are possible. Collecting a diffraction pattern -with sufficient statistics in minutes (1-5 min) even seconds allows in situ -studies of reaction kinetics. A fast detection of phase transitions can also be -obtained by scanning the temperature. A complete thermal variation of the -diffraction patterns (1.5 - 300 K) can be achieved in few hours (3-5h). -``` - -## Input parameters - -Parameters in **boldface** are required; the others are optional. - -| Name | Unit | Description | Default | -|------|------|-------------|---------| -| lambda | AA | mean incident wavelength. | 2.52 | -| dlambda | AA | wavelength full width. | 0.03 | -| DM | AA | Mono lattice spacing | 0 | -| Powder | str | File name for powder description, LAZ/LAU/Fullprof | "Na2Ca3Al2F14.laz" | -| RV | m | Monochromator vertical curvature, 0 for flat, -1 for automatic setting | 2.2 | -| L1 | m | Source-Monochromator distance | 0.25 | -| L2 | m | Monochromator-Sample distance | 3.0 | -| L3 | m | Sample-Detector distance | 1.500 | -| TRAS_X | m | Additional monochromator translation along X, left/righ w.r.t beam | -0 | -| TRAS_Z | m | Additional monochromator translation along Z, along guide | 0 | -| TILT | deg | Monochromator additional tilt, for rocking curves | 0 | -| THETA_M | deg | Mono takeoff angle | 22.11 | -| R_pitch | deg | Angular pitch between the absorbing blades | .42 | -| R_ri | m | Inner radius of the collimator | 0.324 | -| R_ro | m | Outer radius of the collimator | 0.419 | -| R_h | m | Height of the collimator | 0.090 | -| R_ttmin | deg | Lower scattering angle limit | -130 | -| R_ttmax | deg | Higher scattering angle limit | -2 | -| R_present | 1 | Presence flag for the radial collimator. 0: inactivate component. | 1 | -| verbose | 1 | Print DIF configuration. 0 to be quiet | 1 | -| Inc_Cryo | 1 | Cryostat incoherent fraction | 0.02 | -| Trans_Cryo | 1 | Cryostat event transmission | 0.85 | -| Trans_Spl | 1 | Sample event transmission | 0.2 | -| Inc_Spl | 1 | Sample incoherent fraction | 0.05 | - -## Links - -- [Source code](ILL_H22_D1B_noenv.instr) for `ILL_H22_D1B_noenv.instr`. - ---- - -*Generated for mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/examples/ILL/ILL_H22_VIVALDI/ILL_H22_VIVALDI.md b/mcstas-comps/examples/ILL/ILL_H22_VIVALDI/ILL_H22_VIVALDI.md deleted file mode 100644 index 78737659c..000000000 --- a/mcstas-comps/examples/ILL/ILL_H22_VIVALDI/ILL_H22_VIVALDI.md +++ /dev/null @@ -1,49 +0,0 @@ -# The `ILL_H22_VIVALDI` Instrument - -*McStas: The VIVALDI Laue diffractometer on the H22 curved thermal guide at the ILL* - -## Identification - -- **Site:** ILL -- **Author:** FARHI Emmanuel (farhi@ill.fr) -- **Origin:** ILL -- **Date:** June, 2008 - -## Description - -```text -VIVALDI (Very-Intense, Vertical-Axis Laue DIffractometer) provides a tool for -development of new diffraction experiments, and is complementary to other ILL -single-crystal diffractometers. Fields of interest for experiments on VIVALDI -include magnetism, charge density waves, high-pressure studies and structural -phase transitions. VIVALDI allows rapid preliminary investigation of new -materials, even when only small single crystals are available. The detector is -also suitable for some types of diffuse scattering experiments on a -monochromatic beam. - -VIVALDI is located at the end of the thermal guide H22. The full thermal -spectrum can be accepted without detrimental overlap of reflections for -primitive unit cells up to 25 Angs on edge. - -This model include a cryostat and container description, with a crystal sample. -``` - -## Input parameters - -Parameters in **boldface** are required; the others are optional. - -| Name | Unit | Description | Default | -|------|------|-------------|---------| -| lambda | AA | mean incident wavelength. | 3 | -| dlambda | AA | wavelength full width. | 2.2 | -| crystal | str | File name for crystal description (LAU) | "YBaCuO.lau" | -| container | str | File name for sample-container material description | "V.laz" | -| verbose | 1 | Print DIF configuration. 0 to be quiet | 1 | - -## Links - -- [Source code](ILL_H22_VIVALDI.instr) for `ILL_H22_VIVALDI.instr`. - ---- - -*Generated for mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/examples/ILL/ILL_H24/ILL_H24.md b/mcstas-comps/examples/ILL/ILL_H24/ILL_H24.md deleted file mode 100644 index 0f6eb9d57..000000000 --- a/mcstas-comps/examples/ILL/ILL_H24/ILL_H24.md +++ /dev/null @@ -1,35 +0,0 @@ -# The `ILL_H24` Instrument - -*McStas: The H24 curved thermal guide at the ILL* - -## Identification - -- **Site:** ILL -- **Author:** FARHI Emmanuel (farhi@ill.fr) -- **Origin:** ILL -- **Date:** April 7, 2004 - -## Description - -```text -The H24 curved thermal guide at the ILL feeding IN3, IN13, D10 and S42/Orient Express -``` - -## Input parameters - -Parameters in **boldface** are required; the others are optional. - -| Name | Unit | Description | Default | -|------|------|-------------|---------| -| m | 1 | m-value of whole guide coating. 0 absorbing, 1 for Ni, 1.2 for Ni58, 2-4 for SM | 2 | -| lambda | AA | central wavelength | 4 | -| dlambda | AA | wavelength half width. Use e.g. 0.8*lambda for white beam. | 3.9 | -| mip | 1 | m-value of in-pile guide coating | 0 | - -## Links - -- [Source code](ILL_H24.instr) for `ILL_H24.instr`. - ---- - -*Generated for mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/examples/ILL/ILL_H25/ILL_H25.md b/mcstas-comps/examples/ILL/ILL_H25/ILL_H25.md deleted file mode 100644 index 3280c6ab9..000000000 --- a/mcstas-comps/examples/ILL/ILL_H25/ILL_H25.md +++ /dev/null @@ -1,35 +0,0 @@ -# The `ILL_H25` Instrument - -*McStas: The H25 supermirror curved thermal guide at the ILL* - -## Identification - -- **Site:** ILL -- **Author:** Emmanuel Farhi -- **Origin:** ILL (France) -- **Date:** 2006 - -## Description - -```text -The H25 supermirror curved thermal guide at the ILL feeding S18, D23 and IN22 -``` - -## Input parameters - -Parameters in **boldface** are required; the others are optional. - -| Name | Unit | Description | Default | -|------|------|-------------|---------| -| m | 1 | m-value of whole guide coating. 0 absorbing, 1 for Ni, 1.2 for Ni58, 2-4 for SM | 2 | -| lambda | AA | central wavelength | 4 | -| dlambda | AA | wavelength half width. Use e.g. 0.8*lambda for white beam. | 3.9 | -| mip | 1 | m-value of in-pile guide coating | 2 | - -## Links - -- [Source code](ILL_H25.instr) for `ILL_H25.instr`. - ---- - -*Generated for mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/examples/ILL/ILL_H25_IN22/ILL_H25_IN22.md b/mcstas-comps/examples/ILL/ILL_H25_IN22/ILL_H25_IN22.md deleted file mode 100644 index f9811fd4e..000000000 --- a/mcstas-comps/examples/ILL/ILL_H25_IN22/ILL_H25_IN22.md +++ /dev/null @@ -1,56 +0,0 @@ -# The `ILL_H25_IN22` Instrument - -*McStas: IN22 thermal triple-axis machine (TAS) on guide H25 with sample* - -## Identification - -- **Site:** ILL -- **Author:** Emmanuel Farhi -- **Origin:** ILL (France) -- **Date:** 2006 - -## Description - -```text -This instrument is a model of IN22@ILL with PG002 monochromator/analyzer, -installed at the end of the H25 supermirror thermal guide. -``` - -## Input parameters - -Parameters in **boldface** are required; the others are optional. - -| Name | Unit | Description | Default | -|------|------|-------------|---------| -| m | 1 | m-value of guide coating (H14/H142) | 2 | -| KI | Angs-1 | central wavevector for incoming neutrons | 3.84 | -| QM | Angs-1 | wavevector transfer modulus at the sample | 1.0 | -| EN | meV | energy transfer at the sample | 0.0 | -| verbose | | toggle verbose mode | 1 | -| WM | m | Width of monochromator | 0.15 | -| HM | m | Height of monochromator | 0.12 | -| NHM | 1 | Number of vertical slabs composing the monochromator | 1 | -| NVM | 1 | Number of horizontal slabs composing the monochromator | 9 | -| RMV | m | Monochromator vertical curvature, 0 for flat, -1 for automatic setting | -1 | -| WA | m | Width of analyzer | 0.20 | -| HA | m | Height of analyzer | 0.10 | -| NHA | 1 | Number of horizontal slabs composing the analyzer | 11 | -| NVA | 1 | Number of vertical slabs composing the analyzer | 3 | -| RAV | m | Analyzer vertical curvature, 0 for flat, -1 for automatic setting | -1 | -| RAH | m | Analyzer horizontal curvature, 0 for flat, -1 for automatic setting | -1 | -| SM | 1:left, -1:right | Scattering sense of beam from Monochromator | -1 | -| SS | 1:left, -1:right | Scattering sense of beam from Sample | 1 | -| SA | 1:left, -1:right | Scattering sense of beam from Analyzer | -1 | -| L1 | m | Source-Monochromator distance. Contains 1st Collimator | 10.0 | -| L2 | m | Monochromator-Sample distance. Contains 2nd Collimator | 1.7 | -| L3 | m | Sample-Analyzer distance. Contains 3rd Collimator | 1.0 | -| L4 | m | Analyzer-detector distance. Contains 4th Collimator | 0.8 | - -## Links - -- [Source code](ILL_H25_IN22.instr) for `ILL_H25_IN22.instr`. -- The IN22 TAS at the ILL - ---- - -*Generated for mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/examples/ILL/ILL_H5/ILL_H5.md b/mcstas-comps/examples/ILL/ILL_H5/ILL_H5.md deleted file mode 100644 index ad1a7d89c..000000000 --- a/mcstas-comps/examples/ILL/ILL_H5/ILL_H5.md +++ /dev/null @@ -1,50 +0,0 @@ -# The `ILL_H5` Instrument - -*McStas: The full H5 cold guide at the ILL, with IN14, D16, Super-Adam, IN15, D22 -This is the geometry before the major H5 guide hall upgrade (up to 2013).* - -## Identification - -- **Site:** ILL -- **Author:** FARHI Emmanuel (farhi@ill.fr) -- **Origin:** ILL -- **Date:** May, 2011 - -## Description - -```text - -``` - -## Input parameters - -Parameters in **boldface** are required; the others are optional. - -| Name | Unit | Description | Default | -|------|------|-------------|---------| -| lambda | | | 5 | -| dlambda | | | 4.5 | -| IN14_lambda | | | 4.2 | -| IN16_lambda | | | 6.3 | -| D16_lambda | | | 5.6 | -| SADAM_lambda | | | 4.4 | -| IN15_lambda | | | 6.5 | -| D22_lambda | | | 4.5 | -| D22_collimation | | | 2 | -| IN14_sample | | | "Rb_liq_coh.sqw" | -| IN16_sample | | | "Rb_liq_coh.sqw" | -| D16_sample | | | "H2O_liq.qSq" | -| SADAM_sample | | | "SiO2_quartza.laz" | -| D22_sample | | | "H2O_liq.qSq" | -| IN14_RMV | | | -1 | -| IN16_RMV | | | -1 | -| D16_RMV | | | -1 | -| SADAM_RMV | | | -1 | - -## Links - -- [Source code](ILL_H5.instr) for `ILL_H5.instr`. - ---- - -*Generated for mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/examples/ILL/ILL_H512_D22/ILL_H512_D22.md b/mcstas-comps/examples/ILL/ILL_H512_D22/ILL_H512_D22.md deleted file mode 100644 index 44e9c612f..000000000 --- a/mcstas-comps/examples/ILL/ILL_H512_D22/ILL_H512_D22.md +++ /dev/null @@ -1,40 +0,0 @@ -# The `ILL_H512_D22` Instrument - -*McStas: The H512 cold guide at the ILL, with D22* - -## Identification - -- **Site:** ILL -- **Author:** FARHI Emmanuel (farhi@ill.fr) -- **Origin:** ILL -- **Date:** May, 2011 - -## Description - -```text -This model describes the H512 cold guide at the ILL, with D22. - -The D22 Large dynamic range small-angle diffractometer -is fully simulated. A sample can be specified (liquid), -with monitoring of the scattering in angular (diffraction) and energy modes -(for spectroscopy). -``` - -## Input parameters - -Parameters in **boldface** are required; the others are optional. - -| Name | Unit | Description | Default | -|------|------|-------------|---------| -| lambda | Angs | central wavelength band for guide illumination and D22 velocity selector setting wavelength | 4.5 | -| dlambda | Angs | half width of guide wavelength band | .45 | -| D22_collimation | | | 2 | -| D22_sample | string | D22 liquid/powder/amorphous sample | "H2O_liq.qSq" | - -## Links - -- [Source code](ILL_H512_D22.instr) for `ILL_H512_D22.instr`. - ---- - -*Generated for mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/examples/ILL/ILL_H53/ILL_H53.md b/mcstas-comps/examples/ILL/ILL_H53/ILL_H53.md deleted file mode 100644 index ed5b460e0..000000000 --- a/mcstas-comps/examples/ILL/ILL_H53/ILL_H53.md +++ /dev/null @@ -1,35 +0,0 @@ -# The `ILL_H53` Instrument - -*McStas: The H53 curved cold guide at the ILL* - -## Identification - -- **Site:** ILL -- **Author:** FARHI Emmanuel (farhi@ill.fr) -- **Origin:** ILL -- **Date:** April 7, 2004 - -## Description - -```text -The H53 curved cold guide at the ILL feeding IN14, IN16, D16, ADAM, CRYO-EDM -``` - -## Input parameters - -Parameters in **boldface** are required; the others are optional. - -| Name | Unit | Description | Default | -|------|------|-------------|---------| -| m | 1 | m-value of whole guide coating. 0 absorbing, 1 for Ni, 1.2 for Ni58, 2-4 for SM | 1.2 | -| lambda | AA | central wavelength | 10 | -| dlambda | AA | wavelength half width. Use e.g. 0.8*lambda for white beam | 9.9 | -| mip | 1 | m-value of in-pile guide coating | 1.2 | - -## Links - -- [Source code](ILL_H53.instr) for `ILL_H53.instr`. - ---- - -*Generated for mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/examples/ILL/ILL_H53_D16/ILL_H53_D16.md b/mcstas-comps/examples/ILL/ILL_H53_D16/ILL_H53_D16.md deleted file mode 100644 index 7d54a29d7..000000000 --- a/mcstas-comps/examples/ILL/ILL_H53_D16/ILL_H53_D16.md +++ /dev/null @@ -1,53 +0,0 @@ -# The `ILL_H53_D16` Instrument - -*McStas: The D16 diffractometer/reflectometer on the H53 curved cold guide at the ILL* - -## Identification - -- **Site:** ILL -- **Author:** FARHI Emmanuel (farhi@ill.fr) -- **Origin:** ILL -- **Date:** Oct 7, 2008 - -## Description - -```text -The H53 (120 x 60 mm2) curved cold guide feeds D16 (after IN14, and IN16). -D16 is a two-circle diffractometer. The primary white beam is reflected by a -focussing pyrolytic graphite monochromator (122 x 60 mm2 with mosaicity 0.7 -deg) providing an important flux at the sample. The monochromator housing has -two beam holes at take-off angles of 90 deg and 115 deg, corresponding to 4.7 -Angs and 5.6 Angs beams and incorporates the slit systems. -``` - -## Input parameters - -Parameters in **boldface** are required; the others are optional. - -| Name | Unit | Description | Default | -|------|------|-------------|---------| -| lambda | Angs | Wavelength at monochromator, computed from DM and THETA_M if left as 0. | 4.7 | -| DM | Angs | d-spacing of monochromator, computed from lambda and THETA_M if left as 0. | 3.355 | -| dlambda | AA | wavelength half width. | 0.05 | -| Powder | str | File name for powder description. | "Na2Ca3Al2F14.laz" | -| RV | m | Monochromator vertical curvature, 0 for flat, -1 for automatic setting | -1 | -| L1 | m | Guide-Monochromator distance | 0.1 | -| L2 | m | Monochromator-Sample distance | 2.8 | -| L3 | m | Sample-Detector distance | 1.0 | -| THETA_M | deg | Monochromator take-off angle, computed from lambda and DM if left as 0. | 44.46 | -| TwoTheta | deg | Detector rotation (in plane) | 0 | -| RadiusDet | m | Detector entrance window radius | 0.36 | -| DetEthick | m | Detector entrance window thickness | .01 | -| DetEgap | m | Detector entrance window gap to flat detector inner window | 0.08 | -| DetVthick | m | Detector active volume thickness | 5e-3 | -| verbose | 1 | Print DIF configuration. 0 to be quiet | 1 | -| TILT | deg | Monochromator additional tilt, for rocking curves | 0 | - -## Links - -- [Source code](ILL_H53_D16.instr) for `ILL_H53_D16.instr`. -- The D16 diffractometer at the ILL - ---- - -*Generated for mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/examples/ILL/ILL_H53_IN14/ILL_H53_IN14.md b/mcstas-comps/examples/ILL/ILL_H53_IN14/ILL_H53_IN14.md deleted file mode 100644 index 1c109fed8..000000000 --- a/mcstas-comps/examples/ILL/ILL_H53_IN14/ILL_H53_IN14.md +++ /dev/null @@ -1,71 +0,0 @@ -# The `ILL_H53_IN14` Instrument - -*McStas: IN14 cold triple-axis machine (TAS) on guide H53 with sample* - -## Identification - -- **Site:** ILL -- **Author:** Emmanuel Farhi -- **Origin:** ILL (France) -- **Date:** 2006 - -## Description - -```text -IN14 is a high flux cold neutron three-axis spectrometer situated on a straight -58Ni coated guide looking at the horizontal cold source. IN14 is equipped with -a vertically curved (002) pyrolytic graphite monochromator. A polarising bender -can be inserted after the monochromator, for polarised neutron work. - -The sample, analyser and detector units are mounted on standard Tanzboden -modules and the distance between these units may be changed if necessary. For -sample positioning, two motorized arcs (+/- 20deg), and two horizontal -translation tables (+/- 10 mm) are available. Soller collimators can be easily -inserted before and after the sample, and before the detector. - -Three horizontally focusing analysers are available: (002) pyrolytic graphite, -bent Si(111), and Heusler (111) for polarised neutrons. - -In this TAS configuration, PG002 is used as monochromator analyser, -with a single type detector. -``` - -## Input parameters - -Parameters in **boldface** are required; the others are optional. - -| Name | Unit | Description | Default | -|------|------|-------------|---------| -| KI | Angs-1 | central wavevector for incoming neutrons | 1.55 | -| QM | Angs-1 | wavevector transfer modulus at the sample | 1.0 | -| EN | meV | energy transfer at the sample | 0.0 | -| verbose | | toggle verbose mode | 1 | -| WM | m | Width of monochromator | 0.15 | -| HM | m | Height of monochromator | 0.12 | -| NHM | 1 | Number of vertical slabs composing the monochromator | 1 | -| NVM | 1 | Number of horizontal slabs composing the monochromator | 9 | -| RMV | m | Monochromator vertical curvature, 0 for flat, -1 for automatic setting | -1 | -| DM | | | 3.355 | -| WA | m | Width of analyzer | 0.20 | -| HA | m | Height of analyzer | 0.10 | -| NHA | 1 | Number of horizontal slabs composing the analyzer | 11 | -| NVA | 1 | Number of vertical slabs composing the analyzer | 1 | -| RAV | m | Analyzer vertical curvature, 0 for flat, -1 for automatic setting | 0 | -| RAH | m | Analyzer horizontal curvature, 0 for flat, -1 for automatic setting | -1 | -| DA | AA | Analyzer lattice spacing | 3.355 | -| SM | 1:left, -1:right | Scattering sense of beam from Monochromator | 1 | -| SS | 1:left, -1:right | Scattering sense of beam from Sample | -1 | -| SA | 1:left, -1:right | Scattering sense of beam from Analyzer | 1 | -| L1 | m | Source-Monochromator distance. Contains 1st Collimator | 7.0 | -| L2 | m | Monochromator-Sample distance. Contains 2nd Collimator | 2.12 | -| L3 | m | Sample-Analyzer distance. Contains 3rd Collimator | 1.37 | -| L4 | m | Analyzer-detector distance. Contains 4th Collimator | 0.7 | - -## Links - -- [Source code](ILL_H53_IN14.instr) for `ILL_H53_IN14.instr`. -- The IN14 TAS at the ILL - ---- - -*Generated for mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/examples/ILL/ILL_H5_new/ILL_H5_new.md b/mcstas-comps/examples/ILL/ILL_H5_new/ILL_H5_new.md deleted file mode 100644 index 70906a06e..000000000 --- a/mcstas-comps/examples/ILL/ILL_H5_new/ILL_H5_new.md +++ /dev/null @@ -1,75 +0,0 @@ -# The `ILL_H5_new` Instrument - -*McStas: The full H5 new cold guide at the ILL, with ThALES, D16, Super-Adam, IN15 -(sample only), D22WASP and CryoEDM -This is a proposed geometry for major H5 guide hall upgrade (since 2013). -The exact adopted H5 geometry may be actually different.* - -## Identification - -- **Site:** ILL -- **Author:** FARHI Emmanuel (farhi@ill.fr) -- **Origin:** ILL -- **Date:** May, 2011 - -## Description - -```text -This model decribes the full new H5 cold guide at the ILL, with ThALES, WASP, D16, -Super-Adam, IN15, D22. - -H511:The IN15 Spin-echo spectrometer -is simulated with an incoming polarized beam, but not with a full spin-echo -description. Sample is Vanadium -H512:The D22 Large dynamic range small-angle diffractometer -is fully simulated -H521:The D16 Small momentum transfer diffractometer D16 is realistic -H521:The SuperADAM reflectometer is used in low angle diffraction mode. -H522: The WASP Spin-echo spectrometer -is simulated with an incoming polarized beam, but not with a full spin-echo -description. Sample is Vanadium -H523:The CryoEDM with its polarized beam -H53: The ThALES Cold neutron three-axis spectrometer IN14 - -For each instrument, a sample can be specified (liquid/powder/amorphous), -with monitoring of the scattering in angular (diffraction) and energy modes -(for spectroscopy). -``` - -## Input parameters - -Parameters in **boldface** are required; the others are optional. - -| Name | Unit | Description | Default | -|------|------|-------------|---------| -| lambda | | central wavelength band for guide illumination [Angs] | 5 | -| dlambda | | half width of guide wavelength band [Angs] | 4.5 | -| ThALES_lambda | | ThALES monochromator setting wavelength. Usual 2.4 and 4.2 [Angs] | 4.2 | -| WASP_lambda | | IN16 monochromator setting wavelength. Usual 3.3 and 6.3 [Angs] | 6.3 | -| D16_lambda | | D16 monochromator setting wavelength. Usual 4.7 and 5.6 [Angs] | 5.6 | -| SADAM_lambda | | SuperADAM monochromator setting wavelength. Usual 4.4 [Angs] | 4.4 | -| IN15_lambda | | IN15 velocity selector setting wavelength [Angs] | 6.5 | -| D22_lambda | | D22 velocity selector setting wavelength [Angs] | 4.5 | -| D22_collimation | | D22 collimation length and sample-detector distance [m] | 2 | -| ThALES_sample | | ThALES liquid/powder/amorphous sample [string] | "Rb_liq_coh.sqw" | -| WASP_sample | | | "Rb_liq_coh.sqw" | -| D16_sample | | D16 liquid/powder/amorphous sample [string] | "H2O_liq.qSq" | -| SADAM_sample | | SuperADAM liquid/powder/amorphous sample [string] | "SiO2_quartza.laz" | -| D22_sample | | D22 liquid/powder/amorphous sample [string] | "H2O_liq.qSq" | -| ThALES_RMV | | | -1 | -| D16_RMV | | | -1 | -| SADAM_RMV | | | -1 | -| ThALES_RMH | | | -1 | - -## Links - -- [Source code](ILL_H5_new.instr) for `ILL_H5_new.instr`. -- The NoteDPT11 at the ILL -- The DPT/SMAE 11/070 WASP design report -- The DPT/SMAE 10/271 H5 design report -- Daily notes from K. Andersen about the H5 project -- Mirotron drawing MR-0656-000 for the IN15 V-mirror geometry - ---- - -*Generated for mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/examples/ILL/ILL_H8_IN1/ILL_H8_IN1.md b/mcstas-comps/examples/ILL/ILL_H8_IN1/ILL_H8_IN1.md deleted file mode 100644 index ee00c16f8..000000000 --- a/mcstas-comps/examples/ILL/ILL_H8_IN1/ILL_H8_IN1.md +++ /dev/null @@ -1,87 +0,0 @@ -# The `ILL_H8_IN1` Instrument - -*McStas: Hot neutron three-axis spectrometer IN1@ILL* - -## Identification - -- **Site:** ILL -- **Author:** Emmanuel Farhi -- **Origin:** ILL (France) -- **Date:** 2006 - -## Description - -```text -IN8 is installed on beamtube H10 (diameter F = 200 mm). - -IN1 works in a time-sharing mode. This means that the same monochromator is -also used by the Be-filter spectrometer IN1-BeF and by the liquids -diffractometer D4. Changing over between the three different instruments can be -done without difficulty in about two hours. - -The monochromator unit carries three different vertically focussing -monochromators built from copper single crystals (available reflecting planes -Cu(200), Cu(220) and Cu(331)). The exchange of the monochromator planes is -controlled by the instrument computer. The radius of curvature can be -automatically adjusted as function of reflected energy in order to maintain -maximal flux at the sample position in the course of energy scans. The -scattering angles on the monochromator cover a range of 10<2theta_m <90 -allowing for scanning neutron energies from 13 meV to more than 1 eV.. - -The IN1-TAS spectrometer: the scattering angles at the sample and the analyser -can be changed in the intervals -115<2theta_S<115 and -120<2theta_S<120. Three -different analysers (PG(002), Cu(200), Cu(220)) can be installed in order to -optimise intensity and resolution for a given experiment. Various resonance -absorption filters (e.g. Er, Sm, Hf ...) can be used to suppress higher order -contaminations from the incident beam or in the scattered beam. An oriented -Pyrolytic Graphite filter is designed for experiments eventually demanding -thermal neutron energy range. - -In this TAS configuration, Cu220 are used as monochromator and analyser, -with a single type detector. -``` - -## Input parameters - -Parameters in **boldface** are required; the others are optional. - -| Name | Unit | Description | Default | -|------|------|-------------|---------| -| KF | Angs-1 | Outgoing neutron wavevector | 10 | -| KI | Angs-1 | Incoming neutron wavevector | 0 | -| QM | Angs-1 | Wavevector transfer in crystal | 0.5 | -| EN | meV | Energy transfer in crystal | 0 | -| verbose | 1 | print TAS configuration. 0 to be quiet | 1 | -| WM | m | Width of monochromator | 0.18 | -| HM | m | Height of monochromator | 0.20 | -| RMH | m | Monochromator horizontal curvature, 0 for flat, -1 for automatic setting | -1 | -| RMV | m | Monochromator vertical curvature, 0 for flat, -1 for automatic setting | -1 | -| DM | Angs | Monochromator d-spacing | 1.278 | -| NHM | 1 | Number of horizontal slabs composing the monochromator | 15 | -| NVM | 1 | Number of vertical slabs composing the monochromator | 15 | -| WA | m | Width of analyzer | 0.16 | -| HA | m | Height of analyzer | 0.12 | -| RAH | m | Analyzer horizontal curvature, 0 for flat, -1 for automatic setting | -1 | -| RAV | m | Analyzer vertical curvature, 0 for flat, -1 for automatic setting | -1 | -| DA | Angs | Analyzer d-spacing | 1.278 | -| NHA | 1 | Number of horizontal slabs composing the analyzer | 15 | -| NVA | 1 | Number of vertical slabs composing the analyzer | 15 | -| L1 | m | Source-Monochromator distance. Contains 1st Collimator of length 5.34 | 7 | -| ALF1 | arc min | Horizontal collimation from Source to Monochromator | 120 | -| ALF2 | arc min | Horizontal collimation from Monochromator to Sample A | 120 | -| ALF3 | arc min | Horizontal collimation from Sample to Analyzer | 120 | -| ALF4 | arc min | Horizontal collimation from Analyzer to Detector | 120 | -| BET1 | arc min | Vertical collimation from Source to Monochromator | 120 | -| BET2 | arc min | Vertical collimation from Monochromator to Sample A | 120 | -| BET3 | arc min | Vertical collimation from Sample to Analyzer | 120 | -| BET4 | arc min | Vertical collimation from Analyzer to Detector | 120 | - -## Links - -- [Source code](ILL_H8_IN1.instr) for `ILL_H8_IN1.instr`. -- Rescal for Matlab at http://www.ill.eu/instruments-support/computing-for-science/cs-software/all-software/matlab-ill/ -- Restrax at http://omega.ujf.cas.cz/restrax/ - ---- - -*Generated for mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/examples/ILL/ILL_IN13/ILL_IN13.md b/mcstas-comps/examples/ILL/ILL_IN13/ILL_IN13.md deleted file mode 100644 index adc3bd1a9..000000000 --- a/mcstas-comps/examples/ILL/ILL_IN13/ILL_IN13.md +++ /dev/null @@ -1,92 +0,0 @@ -# The `ILL_IN13` Instrument - -*McStas: IN13 Thermal neutron backscattering spectrometer (without guide)* - -## Identification - -- **Site:** ILL -- **Author:** E. Farhi and A. Dennison -- **Origin:** ILL -- **Date:** March 25, 2015 - -## Description - -```text -IN13 Thermal neutron backscattering spectrometer (without guide) - -Because of its high energy resolution and high momentum transfer the -backscattering spectrometer IN13 is particularly useful for the microscopic -study of single particle motions (jump reorientation, rotational and -translational diffusion, tunnelling) observed by incoherent neutron scattering. - -The high energy resolution of the order of a few μeV together with the -availability of high momentum transfer (Q<4.9 Å-1) makes the spectrometer IN13 -particularly useful for the microscopic study of single particle motions (jump -reorientation, rotational and translational diffusion, tunnelling) observed by -incoherent neutron scattering. The instrument partly fills the gap of (Q, ω) -space between IN10 and IN5. - -Temperature gradient monochromator -The monochromator and analyser CaF2(422) crystals are oriented in near -backscattering geometry thereby achieving an energy resolution of a few μeV. The -energy of the incident neutrons is scanned by variation of the temperature of -the monochromator at a fixed Bragg-angle. In an optional mode the 10 mm thick -monochromator crystals are kept at a fixed temperature gradient and energy -variation is performed by scanning the monochromator Bragg-angle. This achieves -an increased flux at the sample position and slightly increases the energy -resolution width. - -A vertically curved Graphite deflector focusses the beam onto -the sample. The scattered neutrons are energy analysed by a set of seven -spherically curved composite crystal analysers, each covering a large solid -angle of 0.18 sr. An additional three circular analysers centred around the -transmitted beam cover the small-angle region. - -The neutron time-of-flight is used to suppress (i) the background of neutrons -scattered directly from the sample into the detectors and (ii) second order -contamination. The neutrons are counted with a cylindrical multidetector -consisting of 35 3He detector tubes, arranged in staggered circular rows. The -small Q range from 0.2 to 0.8 Å-1 is covered by a 3He Position Sensitive -Detector (PSD) arranged to see the circular analysers in exact backscattering. - -Monochromator: CaF2(422) -temperature range: -125 < ΔE/µeV < 150 -angular range: 81° < θM < 89° -incident energy: 16.45 meV (TM≥25°C) -incident wavelength: 2.23 Å -energy resolution: 8 µeV - -Deflector: PG(002) - -Sample: here incoherent elastic scatterer (Vanadium) -sample size 3.5 x 3.5 cm2 -flux at sample 2e4 n cm-2 s-1 (when fed from H24, NOT in this model) - -Analyser: CaF2(422) -Q-range: 0.2 < Q/Å-1 < 4.9 -Q-resolution: ΔQ/Å-1 < 0.1 -``` - -## Input parameters - -Parameters in **boldface** are required; the others are optional. - -| Name | Unit | Description | Default | -|------|------|-------------|---------| -| RMV | m | monochromator vertical curvature. Use 0=flat, -1=auto. | 0 | -| RDV | m | deflector vertical curvature. Use 0=flat, -1=auto. | 4.6 | -| RDH | m | deflector horizontal curvature. Use 0=flat, -1=auto. | 0 | -| TM | K | monochromator temperature, from 77 to 500 K | 301 | -| LMD | m | monochromator-deflector distance | 1.8 | -| mos_ana | arcmin | analyser mosaic | 2 | -| CaF2mos | arcmin | monochromator mosaic | 10 | -| gW | | | 0.030 | - -## Links - -- [Source code](ILL_IN13.instr) for `ILL_IN13.instr`. -- The IN3 TAS at the ILL - ---- - -*Generated for mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/examples/ILL/ILL_IN4/ILL_IN4.md b/mcstas-comps/examples/ILL/ILL_IN4/ILL_IN4.md deleted file mode 100644 index 907dbc657..000000000 --- a/mcstas-comps/examples/ILL/ILL_IN4/ILL_IN4.md +++ /dev/null @@ -1,93 +0,0 @@ -# The `ILL_IN4` Instrument - -*McStas: The IN4 thermal Time-of-Flight spectrometer at the ILL (H12 tube).* - -## Identification - -- **Site:** ILL -- **Author:** Emmanuel Farhi -- **Origin:** ILL (France) -- **Date:** March 5th 2015. - -## Description - -```text -IN4C is a high-flux time-of-flight spectrometer used for the study of excitations -in condensed matter. It works in the thermal neutron energy range (10-100 meV). - -Primary spectrometer - -The main components of the beam conditioning part are the two background -choppers, the double curvature mono-chromator with four faces and the Fermi -chopper. The background choppers are rapidly pulsating beam shutters which act -as a low-pass filter. Thus they eliminate from the beam most of the fast -neutrons and gamma rays that would give background noise in the spectra. The -modular shielding encloses the background choppers in separate compartments in -order to cut off these undesired neutrons as early as possible. A suitable -energy is selected from the thermal neutron spectrum with the crystal -monochromator. The monochromator, an assembly of 55 crystal pieces, -concentrates the divergent incident beam onto a small area at the sample -position. The full use of the available solid angle gives a high incident -flux. The vertical curvature is fixed, and the horizontal -variable curvature of the monochromator is essential in controlling -the time and space focussing conditions for optimal performance (see H. Mutka, -Nucl. Instr. and Meth. A 338 (1994) 144). The Fermi chopper rotates at speeds -of up to 40000 rpm. It transmits short neutron pulses (10 ... 50 µs) to the -sample. The time-of-flight of neutrons between the chopper and the sample (1 -... 5 ms) can be measured by using precise electronic circuitry. -A sapphire (Al2O3) filter can be inserted in the beam to remove the fast neutrons -background. - -Monochromators: -PG 002 DM=3.355 AA (Highly Oriented Pyrolythic Graphite) -PG 004 DM=1.677 AA (used for lambda=1.1) -PG 006 DM=1.118 AA -Cu 220 DM=1.278 AA -Cu 111 DM=2.095 AA -Take-off: 39-65 deg -flux at sample: 5e5 n/s/cm2 (at 1.1 Angs) - -Secondary spectrometer - -The sample environment is designed to accommodate standard -cryostats and furnaces. A radial collimator around the sample position is used -to cut the scattering from the sample environment. The secondary flight-path -is in vacuum to avoid parasitic scattering of the transmitted neutrons. The -detector bank covers scattering angles of up to 120°. In addition to the 3He -detector tubes (length 300 mm, width 30 mm, elliptical section, pressure 6 -bar) a 3He filled multidetector (eight sectors with 12 radial cells each; -outer diameter Phi 60 cm) will allow us to observe forward scattering. The -time-of-flight spectra measured at various angles are further treated in order -to obtain the scattering function S(Q,w) using e.g. LAMP. - -In this model, the sample is a cylindrical liquid/powder/glass scatterer -surrounded by a container and an Al cryostat. -``` - -## Input parameters - -Parameters in **boldface** are required; the others are optional. - -| Name | Unit | Description | Default | -|------|------|-------------|---------| -| lambda | Angs | wavelength | 2.2 | -| dlambda | Angs | wavelength HALF spread at source | 0.1 | -| DM | Angs | monochromator d-spacing | 3.355 | -| ETAM | arcmin | monochromator mosaic FWHM | 35 | -| RMH | m | Monochromator horizontal curvature. Use -1 for auto. | -1 | -| ratio | 1 | Disk Chopper ratio (nu=nu_FC/ratio) | 4 | -| dE | meV | Inelastic energy for time focusing | 0 | -| Sapphire_present | 1 | Flag, when 1 the Al2O3 filter is active | 1 | -| sample_coh | str | Sample coherent dynamic structure factor (.sqw) or NULL | "Dirac2D.sqw" | -| sample_inc | str | Sample incoherent dynamic structure factor (.sqw) or NULL | "NULL" | -| order | 1 | The number of multiple orders at the monochromator | 1 | - -## Links - -- [Source code](ILL_IN4.instr) for `ILL_IN4.instr`. -- H. Mutka, Nucl. Instr. and Meth. A 338 (1994) 144 -- http://www.ill.eu/fr/instruments-support/instruments-groups/instruments/in4c - ---- - -*Generated for mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/examples/ILL/ILL_IN5/ILL_IN5.md b/mcstas-comps/examples/ILL/ILL_IN5/ILL_IN5.md deleted file mode 100644 index a45c891b6..000000000 --- a/mcstas-comps/examples/ILL/ILL_IN5/ILL_IN5.md +++ /dev/null @@ -1,46 +0,0 @@ -# The `ILL_IN5` Instrument - -*McStas: The IN5B instrument: chopper system + sample + PSD and tof detector* - -## Identification - -- **Site:** ILL -- **Author:** E. Farhi, J. Ollivier, Celia Castan Guerrero -- **Origin:** ILL -- **Date:** Jan 2004-2009 - -## Description - -```text -The IN5@ILL TOF spectrometer from chopper system to final detector, with sample. -The detector model includes Fe housing and tube cross talk absorbing masks -with angle restriction (neutrons that scatter in Fe in front of a tube and -enter a different tube are absorbed). This model does not include the H16 guide. -``` - -## Input parameters - -Parameters in **boldface** are required; the others are optional. - -| Name | Unit | Description | Default | -|------|------|-------------|---------| -| lambda | AA | mean incident wavelength | 4.5 | -| dlambda | AA | wavelength half width. | 0.05 | -| speed | rpm | chopper speed (60*frequency) | 8500 | -| ratio | 1 | velocity of chopper3 = velocity of chopper1 * ratio | 0.5 | -| housing | string | material used as detector housing. Use 0 or NULL for none. | "Fe.laz" | -| coh | string | sample coherent data file or NULL. Use powder LAZ/LAU or SQW file. | "Y3Fe5O12_YIG.laz" | -| inc | string | sample incoherent Sqw data file or NULL | "NULL" | -| thickness | m | thickness of sample. 0=filled | 0 | -| height | m | height of sample. 0=sphere | 0.025 | -| radius | m | radius of sample (outer). | 0.005 | -| order | 1 | order for scattering in sample. O=all, 1=single | 0 | - -## Links - -- [Source code](ILL_IN5.instr) for `ILL_IN5.instr`. -- The IN5@ILL cold time of flight instrument - ---- - -*Generated for mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/examples/ILL/ILL_IN5_Spots/ILL_IN5_Spots.md b/mcstas-comps/examples/ILL/ILL_IN5_Spots/ILL_IN5_Spots.md deleted file mode 100644 index fe86da848..000000000 --- a/mcstas-comps/examples/ILL/ILL_IN5_Spots/ILL_IN5_Spots.md +++ /dev/null @@ -1,52 +0,0 @@ -# The `ILL_IN5_Spots` Instrument - -*McStas: The IN5B instrument: chopper system + sample + PSD and tof detector, with special resolution options. -In this version equipped with the Spot_sample from SNS, useful for resolution considerations.* - -## Identification - -- **Site:** ILL -- **Author:** E. Farhi, J. Ollivier, Celia Castan Guerrero, edits by P. Willendrup -- **Origin:** ILL -- **Date:** September 2018 - -## Description - -```text -The IN5@ILL TOF spectrometer from chopper system to final detector, with sample. -The detector model includes Fe housing and tube cross talk absorbing masks -with angle restriction (neutrons that scatter in Fe in front of a tube and -enter a different tube are absorbed). This model does not include the H16 guide. -``` - -## Input parameters - -Parameters in **boldface** are required; the others are optional. - -| Name | Unit | Description | Default | -|------|------|-------------|---------| -| lambda | AA | mean incident wavelength | 4.5 | -| dlambda | AA | wavelength half width. | 0.05 | -| speed | rpm | chopper speed (60*frequency) | 8500 | -| ratio | 1 | velocity of chopper3 = velocity of chopper1 * ratio | 0.5 | -| housing | string | material used as detector housing. Use 0 or NULL for none. | "Fe.laz" | -| coh | string | sample coherent data file or NULL. Use powder LAZ/LAU or SQW file. | "Y3Fe5O12_YIG.laz" | -| inc | string | sample incoherent Sqw data file or NULL | "NULL" | -| thickness | m | thickness of sample. 0=filled | 0 | -| height | m | height of sample. 0=sphere | 0.025 | -| radius | m | radius of sample (outer). | 0.005 | -| order | 1 | order for scattering in sample. O=all, 1=single | 0 | -| wspot | meV | energy of dirac resolution spots | 1 | -| ttspot | deg | direction of dirac resolution spots | 45 | -| nspots | 1 | number of direc resolution spots | 0 | -| RESO | 1 | flag to indicate constant Q-e dirac grid ala IN4 model | 1 | -| RECALC | 1 | flag to indicate if RESO table needs to be re-caclulated | 0 | - -## Links - -- [Source code](ILL_IN5_Spots.instr) for `ILL_IN5_Spots.instr`. -- The IN5@ILL cold time of flight instrument - ---- - -*Generated for mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/examples/ILL/ILL_IN6/ILL_IN6.md b/mcstas-comps/examples/ILL/ILL_IN6/ILL_IN6.md deleted file mode 100644 index f5a9e991d..000000000 --- a/mcstas-comps/examples/ILL/ILL_IN6/ILL_IN6.md +++ /dev/null @@ -1,80 +0,0 @@ -# The `ILL_IN6` Instrument - -*McStas: The IN6 Time-of-Flight simulation at the ILL (instrument only).* - -## Identification - -- **Site:** ILL -- **Author:** Emmanuel Farhi -- **Origin:** ILL (France) -- **Date:** 17th Jan 2005. - -## Description - -```text -IN6 is a time focussing time-of-flight spectrometer designed for quasielastic and -inelastic scattering for incident wavelengths in the range of 4 to 6 Angs. - -An intense beam is extracted from the H15 guide by a vertically focussing -monochromator array. It consists of three composite pyrolytic graphite -monochromators using the full height (20 cm) of the guide and focussing the beam -at the sample position. In order to minimise the interference with the -subsequent instruments, the monochromator can deliver only four wavelengths: -4.1; 4.6; 5.1; and 5.9 Angs. The second order reflection from the graphite -monochromator is removed by a beryllium-filter cooled at liquid nitrogen -temperature. -To achieve the time-focussing condition, the beam is pulsed by a Fermi chopper. -It has a small slot length to ensure a good transmission. The normal distance -between the Fermi chopper and the sample is 38 cm. To prevent frame-overlap when -the chopper is rotating faster than 7500 rpm, a suppressor chopper is placed -before the Fermi chopper and rotates in phase with the latter. - -The secondary spectrometer consists first of an evacuated sample area. The -detector bank is entirely covered with detector boxes, thus avoiding the -inconvenience of moving the counters. - -This instrument model contains a cold source a triple monochromator -(using the GROUP), two Fermi Choppers (including one background chopper), a -liquid sample handling coherent and incoherent processes (elastic and inelastic) -with multiple scattering, customized monitors, and the SPLIT mechanism to -improve the statistics. The H15 guide is not described in this model. -``` - -## Input parameters - -Parameters in **boldface** are required; the others are optional. - -| Name | Unit | Description | Default | -|------|------|-------------|---------| -| lambda | Angs | wavelength within 4.14\|4.6\|5.12\|5.92 | 4.14 | -| dlambda | Angs | wavelength HALF spread. default is 0.075 | 0.075 | -| SPEED | rpm | Fermi chopper speed. -1=auto, 0=stopped in open pos. | -1 | -| M1 | coder values | monochromator motor 1 position. -1=auto | -1 | -| M2 | coder values | monochromator motor 2 positinn. -1=auto | -1 | -| M3 | coder values | monochromator motor 3 position. -1=auto | -1 | -| MONITOR | something like time in s | monitor preset | 1 | -| CHA_WIDTH | us | channel width. -1=auto | -1 | -| TOF_DELAY | us | TOF delay. -1=auto | -1 | -| TOF_CHA_RESOL | 1 | number of channels. | 128 | -| ELPEAK | 1 | elastic peak channel. -1=auto | -1 | -| RATIO | 1 | Suppressor speed ratio. -1=no suppressor. | 1 | -| mFC | 1 | super mirror FermiChopper coating m-value | 0 | -| PHASE | deg | Fermi phase w/r/ to Suppressor. -360=auto | -360 | -| Sqw_coh | str | sample coherent S(q,w) file name | "Rb_liq_coh.sqw" | -| Sqw_inc | str | sample incoherent S(q,w) file name | "Rb_liq_inc.sqw" | -| radius | m | outer radius of sample hollow cylinder | 0.01 | -| thickness | m | thickness of sample hollow cylinder | 0.005 | - -## Links - -- [Source code](ILL_IN6.instr) for `ILL_IN6.instr`. -- The IN6@ILL Yellow Pages -- R.Scherm et al, "Another Time of Flight Spectrometer", ILL Report 76S235, 1976 -- R.Scherm, "A high-resolution spectrometer ...", report Jul-295-NP, Kernforschungsanlage Julich, 1965 -- Y.Blanc, "Le spectrometre a temps de vol IN6", ILL Report 83BL21G, 1983 -- K.H.Beckurts et al, Neutron physics, Kernforschungsanlage Karlsruhe, 1964 (p317) -- R.Scherm and T.Springer, "Proposal of a multiple Chopper...", Kernforschungsanlage Julich, 19xx - ---- - -*Generated for mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/examples/ILL/ILL_Lagrange/ILL_Lagrange.md b/mcstas-comps/examples/ILL/ILL_Lagrange/ILL_Lagrange.md deleted file mode 100644 index c5d25c41c..000000000 --- a/mcstas-comps/examples/ILL/ILL_Lagrange/ILL_Lagrange.md +++ /dev/null @@ -1,56 +0,0 @@ -# The `ILL_Lagrange` Instrument - -*McStas: IN1-Lagrange hot neutrons spectrometer for liquids at the ILL.* - -## Identification - -- **Site:** ILL -- **Author:** E. Farhi -- **Origin:** LLB/ILL -- **Date:** 13 Apr 2006 - -## Description - -```text -IN1-Lagrange hot neutrons spectrometer for liquids at the ILL. - -The dedicated liquid and amorphous instrument Lagrange is a spectrometer with -constant final neutron energy, and variable incoming neutron energy. -The analyser is a focusing barrel covered with PG analyser, all focusing to -the detector. The flux is thus very high, and the resolution is that given -buy the PG crystal mocaicity. - -The monochromator take-off angle is 2Theta_M ~ 20-25 deg, variable. The available -monochromators are all vertically focusing, Cu (200) for 0.7 Angs, Cu (220) -for 0.5 Angs. - -Cu 002 DM=1.807 AA -Cu 220 DM=1.278 AA -PG 002 DM=3.355 AA --------------------------- -``` - -## Input parameters - -Parameters in **boldface** are required; the others are optional. - -| Name | Unit | Description | Default | -|------|------|-------------|---------| -| lambda | Angs | Wavelength at monochromator | 0.897 | -| DM | Angs | d-spacing of monochromator | 1.807 | -| RV | m | Monochromator vertical curvature, 0=flat, -1=automatic | -1 | -| coh | str | File name for sample coherent scattering contribution | "Rb_liq_coh.sqw" | -| inc | str | File name for sample incoherent scattering contribution | "Rb_liq_inc.sqw" | -| L1 | m | Source-Monochromator distance | 6.35 | -| L2 | m | Monochromator-Sample distance | 2.55 | -| L3 | m | Sample-Detector distance | 0.901 | -| verbose | 1 | Print spectrometer configuration. 0 to be quiet | 1 | - -## Links - -- [Source code](ILL_Lagrange.instr) for `ILL_Lagrange.instr`. -- The D4 diffractometer at the ILL - ---- - -*Generated for mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/examples/ILL/ILL_SALSA/ILL_SALSA.md b/mcstas-comps/examples/ILL/ILL_SALSA/ILL_SALSA.md deleted file mode 100644 index ff239259d..000000000 --- a/mcstas-comps/examples/ILL/ILL_SALSA/ILL_SALSA.md +++ /dev/null @@ -1,63 +0,0 @@ -# The `ILL_SALSA` Instrument - -*McStas: ILL_SALSA instrument* - -## Identification - -- **Site:** ILL -- **Author:** Daniel Lomholt Christensen -- **Origin:** ILL, Grenoble, France -- **Date:** 14:28:08 on January 23, 2024 - -## Description - -```text -ESCRIPTION -SALSA is a instrument developed mainly for measuring residual stress -in a gauge volume defined by its collimators. -The instrument has three possible collimator positions, with three available collimators at each position. -This allows the gauge volumed to be defined in height, width and depth. -The size of the gauge volume is chosen in the collimator parameters. The following values correspond to sizes -in a dictionary format. -The vertical collimator {0: 2mm, 1: 4mm, 2: 10mm} -The horizontal collimator {0: 0.6mm, 1: 2mm, 2: 4mm} -The depth collimator {0: 0.6mm, 1: 2mm, 2: 4mm} - -The instument showcases the Monochromator_bent component, -and the focusing use of the Collimator_radial component. - -Some of the monitors used in this instrument are not actually present in the real instrument. -The only detector that is actually there, is the final monitor. -Furthermore the sample environment is of course variable depending on the sample -in question. -``` - -## Input parameters - -Parameters in **boldface** are required; the others are optional. - -| Name | Unit | Description | Default | -|------|------|-------------|---------| -| lambda_mean | Å | Desired wavelength of neutrons coming off of the monochromator. | 1.66795 | -| lambda_spread | Å | Range over which the neutrons are produced. lambda_mean +- lambda_spread. | 0.0224372 | -| m | 1 | m-value of whole guide coating. 0 absorbing, 1 for Ni, 1.2 for Ni58, 2-4 for SM | 2 | -| mip | 1 | m-value of in-pile guide coating | 2 | -| monochromator_horizontal_radius | m | Radius of the horizontal cylinder the monochromator is bent on. | 2.6 | -| takeoff_angle | deg | Takeoff angle of the instrument | 75.8 | -| mono_rotation | deg | Rotation of monochromator in the horizontal plane. Omega angle in SALSA | 37.9 | -| lamellas | 1 | Number of lamellas in the monochromator array | 16 | -| monochromator_slabs | 1 | Number of slabs of lamellas placed on top of each other in the monochromator array | 39 | -| vertical_mono_radius | m | Radius of the cylinder the monochromator is bent on vertically | 2.2 | -| vertical_focus | mm | Choice of collimator focus in mm. Choose either 2, 4, or 10. | 2 | -| horizontal_focus | mm | Choice of collimator focus in mm. Choose either 0.6, 2, or 4. | 0.6 | -| outgoing_focus | mm | Choice of collimator focus in mm. Choose either 0.6, 2, or 4. | 0.6 | -| measuring_angle | deg | Angle between the outgoing collimator and sample. Rotates in the negative direction of revolution. I.E with the clock. | 50 | -| Debug | | | 0 | - -## Links - -- [Source code](ILL_SALSA.instr) for `ILL_SALSA.instr`. - ---- - -*Generated for mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/examples/ISIS/ISIS_CRISP/ISIS_CRISP.md b/mcstas-comps/examples/ISIS/ISIS_CRISP/ISIS_CRISP.md deleted file mode 100644 index 661ba81a7..000000000 --- a/mcstas-comps/examples/ISIS/ISIS_CRISP/ISIS_CRISP.md +++ /dev/null @@ -1,43 +0,0 @@ -# The `ISIS_CRISP` Instrument - -*McStas: Model of the ISIS CRISP reflectometer, including the Multilayer_Sample reflectivity sample.* - -## Identification - -- **Site:** ISIS -- **Author:** Robert Dalgliesh -- **Origin:** ISIS (UK) -- **Date:** 2010 - -## Description - -```text -This model of the ISIS CRISP reflectometer demonstrates the use of the Multilayer_Sample component. - -The algorithm of the component requires complex numbers, facilitated by the -GNU Scientific Library (GSL). To link -your the instrument with an installed GSL, you should use MCSTAS_CFLAGS like - -MCSTAS_CFLAGS = -g -O2 -lm -lgsl -lgslcblas -``` - -## Input parameters - -Parameters in **boldface** are required; the others are optional. - -| Name | Unit | Description | Default | -|------|------|-------------|---------| -| glen | | | 1.4 | -| flen | | | 0.4 | -| w1 | | | 0.05 | -| vm | | | 3.0 | -| FRAC | | | 0 | -| sampleconf | | | 0 | - -## Links - -- [Source code](ISIS_CRISP.instr) for `ISIS_CRISP.instr`. - ---- - -*Generated for mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/examples/ISIS/ISIS_GEM/ISIS_GEM.md b/mcstas-comps/examples/ISIS/ISIS_GEM/ISIS_GEM.md deleted file mode 100644 index 52ec8c8b7..000000000 --- a/mcstas-comps/examples/ISIS/ISIS_GEM/ISIS_GEM.md +++ /dev/null @@ -1,43 +0,0 @@ -# The `ISIS_GEM` Instrument - -*McStas: McStas instrument for simulating the GEM diffractometer at ISIS TS1.* - -## Identification - -- **Site:** ISIS -- **Author:** E. Farhi, G. Cuello, M. Tucker -- **Origin:** ISIS -- **Date:** September 20, 2006 - -## Description - -```text -McStas instrument for simulating GEM at ISIS TS1. -The sample is a powder. The detector is simplified as a banana shaped one. - -The General Materials Diffractometer is a new generation neutron diffractometer -recently constructed at the ISIS pulsed neutron source. GEM can be used to -perform high intensity, high resolution experiments to study the structure of -disordered materials and crystalline powders. -``` - -## Input parameters - -Parameters in **boldface** are required; the others are optional. - -| Name | Unit | Description | Default | -|------|------|-------------|---------| -| l_min | AA | Minimum wavelength produced at source | 0.1 | -| l_max | AA | Maximum wavelength produced at source | 4.2 | -| dist | m | Sample-detector distance (detector radius) | 1.3795 | -| sample | string | Reflection list for powder sample | "Y2O3.laz" | - -## Links - -- [Source code](ISIS_GEM.instr) for `ISIS_GEM.instr`. -- The ESS Instrument workshops website. -- The GEM instrument at ISIS - ---- - -*Generated for mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/examples/ISIS/ISIS_HET/ISIS_HET.md b/mcstas-comps/examples/ISIS/ISIS_HET/ISIS_HET.md deleted file mode 100644 index f33d1d70c..000000000 --- a/mcstas-comps/examples/ISIS/ISIS_HET/ISIS_HET.md +++ /dev/null @@ -1,39 +0,0 @@ -# The `ISIS_HET` Instrument - -*McStas: HET: High Energy Transfer Chopper Spectrometer* - -## Identification - -- **Site:** ISIS -- **Author:** Dickon Champion -- **Origin:** ISIS (UK) -- **Date:** 22nd Jan 2004. - -## Description - -```text -This instrument is a simple model of the HET spectrometer at the ISIS neutron -facility. The input arguments are hardwired so that the Fermi chopper position -is 10 metres from the moderator. This instrument uses the FC module written by -Andrew Garret which comes with no guarantees as to its accuracy in modelling the -Fermi Chopper. -``` - -## Input parameters - -Parameters in **boldface** are required; the others are optional. - -| Name | Unit | Description | Default | -|------|------|-------------|---------| -| Emin | meV | lowest energy sampled | 443.0 | -| Emax | meV | highest energy sampled | 470.0 | -| nu_chop | Hz | frequency of chopper rotation | 600.0 | -| type | | chopper package - sloppy chopper = 1, B chopper = 2 | 2 | - -## Links - -- [Source code](ISIS_HET.instr) for `ISIS_HET.instr`. - ---- - -*Generated for mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/examples/ISIS/ISIS_IMAT/ISIS_IMAT.md b/mcstas-comps/examples/ISIS/ISIS_IMAT/ISIS_IMAT.md deleted file mode 100644 index ba5426da7..000000000 --- a/mcstas-comps/examples/ISIS/ISIS_IMAT/ISIS_IMAT.md +++ /dev/null @@ -1,47 +0,0 @@ -# The `ISIS_IMAT` Instrument - -*McStas: IMAT: McStas instrument file of the imaging and diffraction parts of the IMAT instrument.* - -## Identification - -- **Site:** ISIS -- **Author:** Genoveva Burca (Genoveva.Burca@stfc.ac.uk) -- **Origin:** ISIS -- **Date:** October 2017 - -## Description - -```text -McStas instrument for simulating the IMAT - imaging and diffraction -New McStas moderator file (G. Skoro, ISIS Facility) was added -\\ISIS\Shares\NeutronicsTeam\TS-2\HydroMod_Upgrade\McStas_TS2_HydroMod_Base_newVirtMod_350mm\Let_Base.mcstas -Components positions were extracted from IMAT final design (March 2016) -Choppers were not added to this model -Diffraction detectors are - -IMPORTANT NOTES: -1. For reference use G. Burca et al., Modelling of an imaging beamline at the ISIS pulsed neutron source, -Journal of Instrumentation, 8 (2013), no 10, http://dx.doi.org/10.1088/1748-0221/8/10/P10001 -2. Results from calculations published in the previous paper were obtained using McStas ISIS_moderator component (Face="W5") -``` - -## Input parameters - -Parameters in **boldface** are required; the others are optional. - -| Name | Unit | Description | Default | -|------|------|-------------|---------| -| l_min | AA | Low wavelength sampled. | 1 | -| l_max | AA | High wavelength sampled. | 10 | -| t_min | t | Low detector time limit. | 0 | -| t_max | t | High detector time limit. | 0.2 | -| theta | deg | Angle that the detector banks are set at. | 90 | - -## Links - -- [Source code](ISIS_IMAT.instr) for `ISIS_IMAT.instr`. -- - ---- - -*Generated for mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/examples/ISIS/ISIS_LET/ISIS_LET.md b/mcstas-comps/examples/ISIS/ISIS_LET/ISIS_LET.md deleted file mode 100644 index 175f33e5a..000000000 --- a/mcstas-comps/examples/ISIS/ISIS_LET/ISIS_LET.md +++ /dev/null @@ -1,43 +0,0 @@ -# The `ISIS_LET` Instrument - -*McStas: LET instrument on ISIS TS2 - -Instrument: ISIS_LET* - -## Identification - -- **Site:** ISIS -- **Author:** Ross Stewart -- **Origin:** ISIS -- **Date:** September 2025 - -## Description - -```text -This is a simulation of LET on ISIS TS2. -``` - -## Input parameters - -Parameters in **boldface** are required; the others are optional. - -| Name | Unit | Description | Default | -|------|------|-------------|---------| -| Ei | meV | Centre energy for moderator | 3.7 | -| dE | | Multiplier for energy spread: Emin = Ei/dE, Emax = Ei*dE | 1.1 | -| Ch3_speed | Hz | Chopper 3 frequency | 100 | -| Ch5_speed | Hz | Chopper 5 frequency | 200 | -| Ch2_phase | mus | Chopper 2 phase setting | 95000 | -| pha_offset | mus | Offset in time for moderator focus | 80e-6 | -| res | string | "HF" - High Flux, "HR" - High Resolution, "I" - Intermediate | "HF" | -| snout | string | "in" or "out" | "out" | -| monitors_on | 1 | Flag to enable/disable TOF monitors in primary optics | 0 | -| movable_monitors | 1 | Flag to enable/disable PSDs and Div monitors in primary optics | 0 | - -## Links - -- [Source code](ISIS_LET.instr) for `ISIS_LET.instr`. - ---- - -*Generated for mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/examples/ISIS/ISIS_MERLIN/ISIS_MERLIN.md b/mcstas-comps/examples/ISIS/ISIS_MERLIN/ISIS_MERLIN.md deleted file mode 100644 index 8e2f4b0d5..000000000 --- a/mcstas-comps/examples/ISIS/ISIS_MERLIN/ISIS_MERLIN.md +++ /dev/null @@ -1,48 +0,0 @@ -# The `ISIS_MERLIN` Instrument - -*McStas: MERLIN: High count rate, medium energy resolution, direct geometry chopper spectrometer.* - -## Identification - -- **Site:** ISIS -- **Author:** Rob Bewley -- **Origin:** ISIS (UK) -- **Date:** May 2017. - -## Description - -```text -Merlin has been in user operation since 2008. It was designed to be a high intensity, medium energy -resolution spectrometer that would complement the high-resolution MAPS spectrometer, and replace -the HET spectrometer. Merlin's design exploited recent advances in technology with a supermirror -guide to enhance flux, as well as 3 m long position-sensitive detectors in a vacuum, making it -ideal for the study of single crystals. The detector bank covers a massive \pi steradians of solid -angle with an angular range from -45 to 135 degrees in the horizontal plane, and \pm 30 degrees in -the vertical plane. This allows large swathes of Q,\omega space to be accessed in a single run. - -Since 2014, Merlin has been running in event mode, and by using the new Gd chopper combined with a -disk chopper, it is able to run in repetition-rate multiplication (RRM) mode, allowing users to -simultaneously measure with several incident energies. -``` - -## Input parameters - -Parameters in **boldface** are required; the others are optional. - -| Name | Unit | Description | Default | -|------|------|-------------|---------| -| E_min | meV | lowest energy sampled [meV] | 1.0 | -| E_max | meV | highest energy sampled [meV] | 2000.0 | -| m | float | m value of guides | 3.0 | -| E_foc | meV | energy selected by chopper [meV] | 80.0 | -| nu_hz | Hz | frequency of chopper rotation [Hz] | 200.0 | -| type | int | chopper package selected sloppy chopper = 1, B chopper = 2, Gd chopper = 3 | 3 | - -## Links - -- [Source code](ISIS_MERLIN.instr) for `ISIS_MERLIN.instr`. -- http://www.isis.stfc.ac.uk/instruments/merlin - ---- - -*Generated for mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/examples/ISIS/ISIS_OSIRIS/ISIS_OSIRIS.md b/mcstas-comps/examples/ISIS/ISIS_OSIRIS/ISIS_OSIRIS.md deleted file mode 100644 index e73dd0340..000000000 --- a/mcstas-comps/examples/ISIS/ISIS_OSIRIS/ISIS_OSIRIS.md +++ /dev/null @@ -1,45 +0,0 @@ -# The `ISIS_OSIRIS` Instrument - -*McStas: A simulation of the indirect TOF geometry part of the OSIRIS instrument.* - -## Identification - -- **Site:** ISIS -- **Author:** Peter Christiansen with input from Mark Telling, updates by P Willendrup -- **Origin:** DTU Fysik, RISOE and ISIS -- **Date:** November 2015 - -## Description - -```text -If LAMBDA = 0, the choppers are disabled, else the choppers are -centered to chop around this wavelength and the source is studied in the -interval LAMBDA +- DLAMBDA. - -IMPORTANT NOTES: - -1) Monchromator is not realistic in the sense that it does NOT -smear the beam out according to the mosaicity, only does the N=1 -reflection, and the d-spread is handled in a simple way - -2) The instrument is not validated or certified by ISIS. Is only put in -McStas for completeness. -``` - -## Input parameters - -Parameters in **boldface** are required; the others are optional. - -| Name | Unit | Description | Default | -|------|------|-------------|---------| -| LAMBDA | AA | Mean wavelength at source | 6.66 | -| DLAMBDA | AA | Wavelength spread at source | 0.1 | -| GUIDEREFLECTIVITY | 1 | R0-reflectivity of guide | 1.0 | - -## Links - -- [Source code](ISIS_OSIRIS.instr) for `ISIS_OSIRIS.instr`. - ---- - -*Generated for mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/examples/ISIS/ISIS_Prisma2/ISIS_Prisma2.md b/mcstas-comps/examples/ISIS/ISIS_Prisma2/ISIS_Prisma2.md deleted file mode 100644 index 1d003f39e..000000000 --- a/mcstas-comps/examples/ISIS/ISIS_Prisma2/ISIS_Prisma2.md +++ /dev/null @@ -1,50 +0,0 @@ -# The `ISIS_Prisma2` Instrument - -*McStas: Simple simulation of PRISMA2 with RITA-style analyser backend.* - -## Identification - -- **Site:** ISIS -- **Author:** Kristian Nielsen and Mark Hagen -- **Origin:** ISIS/Risoe -- **Date:** August 1998. - -## Description - -```text -Demonstrates how the standard components from the component library -may be easily modified for special purposes; in this case to have -the individual analyser blades paint a "color" on the neutrons to -differentiate them in the detector. - -Output is in the file "prisma2.tof". The format is ASCII; each -line consists of the time-of-flight in microseconds followed by seven -intensities of neutrons from each individual analyser blade. -``` - -## Input parameters - -Parameters in **boldface** are required; the others are optional. - -| Name | Unit | Description | Default | -|------|------|-------------|---------| -| TT | deg | Take-off angle at the sample position, aka A4 | -30 | -| PHA | deg | Analyzer group rotation angle, aka A5 | 22 | -| PHA1 | deg | Analyzer 1 tilt angle | -3 | -| PHA2 | deg | Analyzer 2 tilt angle | -2 | -| PHA3 | deg | Analyzer 3 tilt angle | -1 | -| PHA4 | deg | Analyzer 4 tilt angle | 0 | -| PHA5 | deg | Analyzer 5 tilt angle | 1 | -| PHA6 | deg | Analyzer 6 tilt angle | 2 | -| PHA7 | deg | Analyzer 7 tilt angle | 3 | -| TTA | deg | Take-off angle at the analyzer position, aka A6 | 4 | - -## Links - -- [Source code](ISIS_Prisma2.instr) for `ISIS_Prisma2.instr`. -- The McStas User manual -- PRISMA - ---- - -*Generated for mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/examples/ISIS/ISIS_SANS2d/ISIS_SANS2d.md b/mcstas-comps/examples/ISIS/ISIS_SANS2d/ISIS_SANS2d.md deleted file mode 100644 index 81195444b..000000000 --- a/mcstas-comps/examples/ISIS/ISIS_SANS2d/ISIS_SANS2d.md +++ /dev/null @@ -1,54 +0,0 @@ -# The `ISIS_SANS2d` Instrument - -*McStas: This instrument models the ISIS TS2 SANS2d instrument.* - -## Identification - -- **Site:** ISIS -- **Author:** Richard Heenan with edits by Peter Willendrup -- **Origin:** ISIS, DTU Fysik -- **Date:** 2014 - -## Description - -```text -This instrument models the ISIS TS2 SANS2d instrument up to the sample position. - -From the author: -

    IMPORTANT: The instrument model does not currently include a correct moderator description -- and the results it produces have not been validated against experimental results. -

    The actual bender is continuously curved, here use straight segments approx.with gravity. -1/7/10 L1=4m increased gap between bender exit and S1 slit from .247 to .286m -At 4m we actually use 1.75 to 16.5 angstrom. -

    Note "2m guides" are actually 1.985m long (new ones will be 1.981m) so "real gaps" are included below, losses are pro-rata the gap/guide lengths. -

    Both rear & front detectors are 980mm square and offset 150 above beam (would only use 100mm with hindsight) -

    Rear detector can be offset -300mm or +269mm sideways. -

    Front detector is closest at approx 1.4m, furthest at approx((read det position) - 1.6m) , offset up to -1200mm sideways -there are 2 baffles between front & rear detector -

    NIMROD (W5) spectrum might better than SANS2d (E2) spectrum for liquid H2 face incurent use. -Stu Ansell's McStas spectra for TS-2 actually have no angle variation included. -In reality spectra and backgrounds will vary, fast background is likely much higher on ZOOM(E1) than SANS2d (E2) -

    RKH 2014 -``` - -## Input parameters - -Parameters in **boldface** are required; the others are optional. - -| Name | Unit | Description | Default | -|------|------|-------------|---------| -| L1 | m | Variable distance from 1st to 2nd variable slit | 3.926 | -| A1w | m | Width of first collimation slit, rectangular slit | 0.030 | -| A1h | m | Height of first collimation slit, rectangular slit | 0.02 | -| S6 | m | Radius of slit S6 (last of the optis slits) | 0.006 | -| A2 | m | Radius of second collimation slit, circular slit | 0.006 | -| Lmin | AA | Minimum wavelength to produce at the source | 1 | -| Lmax | AA | Maximum wavelength to produce at the source | 14 | - -## Links - -- [Source code](ISIS_SANS2d.instr) for `ISIS_SANS2d.instr`. - ---- - -*Generated for mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/examples/ISIS/ISIS_TOSCA_preupgrade/ISIS_TOSCA_preupgrade.md b/mcstas-comps/examples/ISIS/ISIS_TOSCA_preupgrade/ISIS_TOSCA_preupgrade.md deleted file mode 100644 index bb064d510..000000000 --- a/mcstas-comps/examples/ISIS/ISIS_TOSCA_preupgrade/ISIS_TOSCA_preupgrade.md +++ /dev/null @@ -1,49 +0,0 @@ -# The `ISIS_TOSCA_preupgrade` Instrument - -*McStas: TOSCA (pre-upgrade) at ISIS* - -## Identification - -- **Site:** ISIS -- **Author:** Peter Willendrup (DTU/ESS), Sanghamitra Mukhopadhyay (ISIS STFC) -- **Origin:** DTU/ESS/ISIS -- **Date:** September 2018 - -## Description - -```text -The model at hand is adapted from an earlier model by M.Zanetti and represents the -TOSCA instrument as it looked prior to the recent upgrade. The model at hand was -adapted during the MDANSE2018 workshop (http://mdanse2018.essworkshop.org) and by -default uses a model of the incoherent scattering from Benzene, created using -CASTEP (http://www.castep.org ) and converted to Sqw format iFit (http://ifit.mcode.org) - -The model is naturally very challenging to run because of the indirect TOF geometry -and would benefit from an adaptive sampling approach. - -Please use the version with name ISIS_TOSCA_preupgrade_Mantid to generate Mantid-oriented -output. - -Example: ISIS_TOSCA_preupgrade.instr inc=Benzene_inc_CASTEP_MDANSE2018.sqw -n1e7 -``` - -## Input parameters - -Parameters in **boldface** are required; the others are optional. - -| Name | Unit | Description | Default | -|------|------|-------------|---------| -| inc | filename | Incoherent scattering model to use | "Benzene_inc_CASTEP_MDANSE2018.sqw" | -| zdepth | m | Thickness of sample | 0.002 | -| Emin | meV | Minimum energy to generate at the source | 0.01 | -| Emax | meV | Maximum energy to generate at the source | 500 | - -## Links - -- [Source code](ISIS_TOSCA_preupgrade.instr) for `ISIS_TOSCA_preupgrade.instr`. -- TOSCA instrument webpage -- MDANSE 2018 school webpage - ---- - -*Generated for mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/examples/ISIS/ISIS_TS1_Brilliance/ISIS_TS1_Brilliance.md b/mcstas-comps/examples/ISIS/ISIS_TS1_Brilliance/ISIS_TS1_Brilliance.md deleted file mode 100644 index 748c17d48..000000000 --- a/mcstas-comps/examples/ISIS/ISIS_TS1_Brilliance/ISIS_TS1_Brilliance.md +++ /dev/null @@ -1,36 +0,0 @@ -# The `ISIS_TS1_Brilliance` Instrument - -*McStas: This instrument produces brilliance curves from the ISIS TS1 facility.* - -## Identification - -- **Site:** ISIS -- **Author:** Peter Willendrup -- **Origin:** DTU Fysik -- **Date:** 20130425 - -## Description - -```text -This instrument produces brilliance curves from the ISIS TS1 facility. - -The Brilliance_monitor is used to determine both the mean and peak brilliances, plus pulse-shapes for different wavelengths. - -Example: ISIS_brilliance Detector: Brillmon_I=3.80e+15 (First detector output) -``` - -## Input parameters - -Parameters in **boldface** are required; the others are optional. - -| Name | Unit | Description | Default | -|------|------|-------------|---------| -| modfile | string | Name of moderator face - TS1=water, ch4, h2, merlin or instrument name eg maps, crisp etc. | "ch4" | - -## Links - -- [Source code](ISIS_TS1_Brilliance.instr) for `ISIS_TS1_Brilliance.instr`. - ---- - -*Generated for mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/examples/ISIS/ISIS_TS2_Brilliance/ISIS_TS2_Brilliance.md b/mcstas-comps/examples/ISIS/ISIS_TS2_Brilliance/ISIS_TS2_Brilliance.md deleted file mode 100644 index 8d22a1b8a..000000000 --- a/mcstas-comps/examples/ISIS/ISIS_TS2_Brilliance/ISIS_TS2_Brilliance.md +++ /dev/null @@ -1,36 +0,0 @@ -# The `ISIS_TS2_Brilliance` Instrument - -*McStas: This instrument produces brilliance curves from the ISIS TS2 facility.* - -## Identification - -- **Site:** ISIS -- **Author:** Peter Willendrup -- **Origin:** DTU Fysik -- **Date:** 20130425 - -## Description - -```text -This instrument produces brilliance curves from the ISIS TS2 facility. - -The Brilliance_monitor is used to determine both the mean and peak brilliances, plus pulse-shapes for different wavelengths. - -Example: ISIS_brilliance Detector: Brillmon_I=3.80e+15 (First detector output) -``` - -## Input parameters - -Parameters in **boldface** are required; the others are optional. - -| Name | Unit | Description | Default | -|------|------|-------------|---------| -| modfile | string | Name of moderator face - TS2=groove,hydrogen,narrow,broad - - TS1=Water,ch4,h2,merlin or instrument name eg maps, crisp etc. | "hydrogen" | - -## Links - -- [Source code](ISIS_TS2_Brilliance.instr) for `ISIS_TS2_Brilliance.instr`. - ---- - -*Generated for mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/examples/ISIS/ISIS_test/ISIS_test.md b/mcstas-comps/examples/ISIS/ISIS_test/ISIS_test.md deleted file mode 100644 index 2ca769872..000000000 --- a/mcstas-comps/examples/ISIS/ISIS_test/ISIS_test.md +++ /dev/null @@ -1,34 +0,0 @@ -# The `ISIS_test` Instrument - -*McStas: Simple test instrument for the ISIS_moderator component* - -## Identification - -- **Site:** ISIS -- **Author:** Dickon Champion -- **Origin:** ISIS -- **Date:** Aug 2004 - -## Description - -```text -Simple test instrument for the ISIS_moderator component. -Refer to the documentation in MCSTAS/contrib/doc/ISISdoc.pdf (.ps) -for further instructions on using the ISIS_moderator component -``` - -## Input parameters - -Parameters in **boldface** are required; the others are optional. - -| Name | Unit | Description | Default | -|------|------|-------------|---------| - -## Links - -- [Source code](ISIS_test.instr) for `ISIS_test.instr`. -- Written by D. Champion ISIS, Feb 2004 - ---- - -*Generated for mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/examples/ISIS/ViewModISIStest/ViewModISIStest.md b/mcstas-comps/examples/ISIS/ViewModISIStest/ViewModISIStest.md deleted file mode 100644 index 37438f65d..000000000 --- a/mcstas-comps/examples/ISIS/ViewModISIStest/ViewModISIStest.md +++ /dev/null @@ -1,35 +0,0 @@ -# The `ViewModISIS_test` Instrument - -*McStas: Simple test instrument for the ISIS_moderator component* - -## Identification - -- **Site:** ISIS -- **Author:** Dickon Champion -- **Origin:** ISIS -- **Date:** Aug 2004 - -## Description - -```text -Simple test instrument for the ISIS_moderator component. -Refer to the documentation in MCSTAS/contrib/doc/ISISdoc.pdf (.ps) -for further instructions on using the ISIS_moderator component -``` - -## Input parameters - -Parameters in **boldface** are required; the others are optional. - -| Name | Unit | Description | Default | -|------|------|-------------|---------| -| dummy | | Dummy input parameter | 1 | - -## Links - -- [Source code](ViewModISIStest.instr) for `ViewModISIStest.instr`. -- Written by D. Champion ISIS, Feb 2004 - ---- - -*Generated for mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/examples/LLB/LLB_6T2/LLB_6T2.md b/mcstas-comps/examples/LLB/LLB_6T2/LLB_6T2.md deleted file mode 100644 index ebb11692f..000000000 --- a/mcstas-comps/examples/LLB/LLB_6T2/LLB_6T2.md +++ /dev/null @@ -1,44 +0,0 @@ -# The `LLB_6T2` Instrument - -*McStas: The 6T2 thermal single crystal diffractometer at the LLB.* - -## Identification - -- **Site:** LLB -- **Author:** Xavier Fabrèges -- **Origin:** LLB (France) -- **Date:** November 5th 2015. - -## Description - -```text -6T2 is a high flux thermal single crystal diffractometer dedicated to the study of -complex magnetic structures in condensed matter. Two monochromators are available. -It works at 0.9 and 2.4AA without polarization and at 1.4AA with incident polarization -(optional FeCo supermirror) and polarization analysis (P//z). - -Monochromators: -PG 002 DM=3.355 AA (Highly Oriented Pyrolythic Graphite) -Cu 220 DM=1.278 AA -``` - -## Input parameters - -Parameters in **boldface** are required; the others are optional. - -| Name | Unit | Description | Default | -|------|------|-------------|---------| -| lambda | Angs | wavelength | 1.0 | -| phi | Deg | sample rotation along the vertical axis | 0 | -| gamma | Deg | in plane detector position | 0 | -| nu | Deg | out of plane detector position | 0 | -| monok | 1 | monochromator to use (0: PG, 1: Cu, 5: test mode) | 0 | -| samp_f | str | LAU file describing sample | "C60.lau" | - -## Links - -- [Source code](LLB_6T2.instr) for `LLB_6T2.instr`. - ---- - -*Generated for mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/examples/Mantid/ILL_H16_IN5_Mantid/ILL_H16_IN5_Mantid.md b/mcstas-comps/examples/Mantid/ILL_H16_IN5_Mantid/ILL_H16_IN5_Mantid.md deleted file mode 100644 index c8349d96d..000000000 --- a/mcstas-comps/examples/Mantid/ILL_H16_IN5_Mantid/ILL_H16_IN5_Mantid.md +++ /dev/null @@ -1,56 +0,0 @@ -# The `ILL_H16_IN5_Mantid` Instrument - -*McStas: The full ILL IN5B ToF spectrometer adapted for use with Mantid-friendly NeXus output.* - -## Identification - -- **Site:** Mantid -- **Author:** E. Farhi, J. Ollivier, Celia Castan Guerrero -- **Origin:** Mantid -- **Date:** Jan 2004-2009 - -## Description - -```text -The full ILL IN5B: H16 guide & chopper system + sample + PSD and tof detector, adapted for -use with Mantid-friendly NeXus output. To compile and run, use these steps: - -

      -
    1. Compile the instrument with NeXus support - zero neutrons: -
        -
      • export MCSTAS_CFLAGS="-g -lm -O2 -DUSE_NEXUS -lNeXus" -
      • mcrun -c -n0 --format=NeXus ILL_H16_IN5_Mantid.instr --no-output-files -
      -
    2. Generate the IDF in XML format using the (Perl) mcdisplay tool: -
        -
      • mcdisplay ILL_H16_IN5_Mantid.instr -n0 --format=Mantid -
      -
    3. Run a simulation with NeXus output -
        -
      • mcrun ILL_H16_IN5_Mantid.instr --format=NeXus -
      -
    - -The IN5@ILL TOF spectrometer from cold source to final detector, with sample. -The detector model includes Fe housing and tube cross talk absorbing masks -with angle restriction (neutrons that scatter in Fe in front of a tube and -enter a different tube are absorbed). -``` - -## Input parameters - -Parameters in **boldface** are required; the others are optional. - -| Name | Unit | Description | Default | -|------|------|-------------|---------| -| lambda | AA | mean incident wavelength | 4.5 | -| dlambda | AA | wavelength half width. Use e.g. 0.8*lambda for white beam. | 0.09 | - -## Links - -- [Source code](ILL_H16_IN5_Mantid.instr) for `ILL_H16_IN5_Mantid.instr`. -- The IN5@ILL cold time of flight instrument - ---- - -*Generated for mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/examples/Mantid/ILL_H16_Mantid/ILL_H16_Mantid.md b/mcstas-comps/examples/Mantid/ILL_H16_Mantid/ILL_H16_Mantid.md deleted file mode 100644 index de30e4853..000000000 --- a/mcstas-comps/examples/Mantid/ILL_H16_Mantid/ILL_H16_Mantid.md +++ /dev/null @@ -1,37 +0,0 @@ -# The `ILL_H16_Mantid` Instrument - -*McStas: The ILL H16 cold guide (feeding IN5) for use with mantid* - -## Identification - -- **Site:** Mantid -- **Author:** E. Farhi, J. Ollivier, Celia Castan Guerrero -- **Origin:** ILL -- **Date:** Jan 2004-2009 - -## Description - -```text -The H16@ILL curved guide sending cold neutrons from the VCS to IN5, adapted for -use with Mantid-friendly NeXus output. (See ILL_H16_IN5_Mantid or ILL_IN5_Mantid for details.) - -Example: m=1 Detector: GuideOut_Phic_I=1.85e+10 -``` - -## Input parameters - -Parameters in **boldface** are required; the others are optional. - -| Name | Unit | Description | Default | -|------|------|-------------|---------| -| lambda | AA | mean incident wavelength. | 10 | -| dlambda | AA | wavelength half width. Use e.g. 0.8*lambda for white beam. | 9.9 | -| m | 1 | m-value of whole guide coating. 0 absorbing, 1 for Ni, 1.2 for Ni58, 2-4 for SM | 1 | - -## Links - -- [Source code](ILL_H16_Mantid.instr) for `ILL_H16_Mantid.instr`. - ---- - -*Generated for mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/examples/Mantid/ILL_IN5_Mantid/ILL_IN5_Mantid.md b/mcstas-comps/examples/Mantid/ILL_IN5_Mantid/ILL_IN5_Mantid.md deleted file mode 100644 index 14fb0c29b..000000000 --- a/mcstas-comps/examples/Mantid/ILL_IN5_Mantid/ILL_IN5_Mantid.md +++ /dev/null @@ -1,47 +0,0 @@ -# The `ILL_IN5_Mantid` Instrument - -*McStas: The IN5B instrument: chopper system + sample + PSD and tof detector, adapted for -use with Mantid-friendly NeXus output.* - -## Identification - -- **Site:** Mantid -- **Author:** E. Farhi, J. Ollivier, Celia Castan Guerrero -- **Origin:** ILL -- **Date:** Jan 2004-2009 - -## Description - -```text -The ILL IN5@ILL TOF spectrometer from chopper system to final detector, with sample. -The detector model includes Fe housing and tube cross talk absorbing masks -with angle restriction (neutrons that scatter in Fe in front of a tube and -enter a different tube are absorbed). This model does not include the H16 guide. -``` - -## Input parameters - -Parameters in **boldface** are required; the others are optional. - -| Name | Unit | Description | Default | -|------|------|-------------|---------| -| lambda | AA | mean incident wavelength | 4.5 | -| dlambda | AA | wavelength half width. | 0.05 | -| speed | rpm | chopper speed (60*frequency) | 8500 | -| ratio | 1 | velocity of chopper3 = velocity of chopper1 * ratio | 0.5 | -| housing | string | material used as detector housing. Use 0 or NULL for none. | "Fe.laz" | -| coh | string | sample coherent data file or NULL. Use powder LAZ/LAU or SQW file. | "Y3Fe5O12_YIG.laz" | -| inc | string | sample incoherent Sqw data file or NULL | "NULL" | -| thickness | m | thickness of sample. 0=filled | 0 | -| height | m | height of sample. 0=sphere | 0.025 | -| radius | m | radius of sample (outer). | 0.005 | -| order | 1 | order for scattering in sample. O=all, 1=single | 0 | - -## Links - -- [Source code](ILL_IN5_Mantid.instr) for `ILL_IN5_Mantid.instr`. -- The IN5@ILL cold time of flight instrument - ---- - -*Generated for mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/examples/Mantid/ISIS_SANS2d_Mantid/ISIS_SANS2d_Mantid.md b/mcstas-comps/examples/Mantid/ISIS_SANS2d_Mantid/ISIS_SANS2d_Mantid.md deleted file mode 100644 index 159ebbe16..000000000 --- a/mcstas-comps/examples/Mantid/ISIS_SANS2d_Mantid/ISIS_SANS2d_Mantid.md +++ /dev/null @@ -1,55 +0,0 @@ -# The `ISIS_SANS2d_Mantid` Instrument - -*McStas: This instrument models the ISIS TS2 SANS2d instrument.* - -## Identification - -- **Site:** Mantid -- **Author:** Richard Heenan with edits by Peter Willendrup -- **Origin:** ISIS, DTU Fysik -- **Date:** 2014 - -## Description - -```text -This instrument models the ISIS TS2 SANS2d instrument up to the sample position. - -From the author: -

    IMPORTANT: The instrument model does not currently include a correct moderator description -- and the results it produces have not been validated against experimental results. -

    The actual bender is continuously curved, here use straight segments approx.with gravity. -1/7/10 L1=4m increased gap between bender exit and S1 slit from .247 to .286m -At 4m we actually use 1.75 to 16.5 angstrom. -

    Note "2m guides" are actually 1.985m long (new ones will be 1.981m) so "real gaps" are included below, losses are pro-rata the gap/guide lengths. -

    Both rear & front detectors are 980mm square and offset 150 above beam (would only use 100mm with hindsight) -

    Rear detector can be offset -300mm or +269mm sideways. -

    Front detector is closest at approx 1.4m, furthest at approx((read det position) - 1.6m) , offset up to -1200mm sideways -there are 2 baffles between front & rear detector -

    NIMROD (W5) spectrum might better than SANS2d (E2) spectrum for liquid H2 face incurent use. -Stu Ansell's McStas spectra for TS-2 actually have no angle variation included. -In reality spectra and backgrounds will vary, fast background is likely much higher on ZOOM(E1) than SANS2d (E2) -

    RKH 2014 -``` - -## Input parameters - -Parameters in **boldface** are required; the others are optional. - -| Name | Unit | Description | Default | -|------|------|-------------|---------| -| L1 | m | Variable distance from 1st to 2nd variable slit | 3.926 | -| A1w | m | Width of first collimation slit, rectangular slit | 0.030 | -| A1h | m | Height of first collimation slit, rectangular slit | 0.02 | -| S6 | m | Radius of slit S6 (last of the optis slits) | 0.006 | -| A2 | m | Radius of second collimation slit, circular slit | 0.006 | -| Lmin | AA | Minimum wavelength to produce at the source | 1 | -| Lmax | AA | Maximum wavelength to produce at the source | 14 | -| model_nr | | SANS_benchmark2 SANS sample nr. E.g. 5: sphere(r=50AA), 15: sphere(r=150AA) | 15.0 | - -## Links - -- [Source code](ISIS_SANS2d_Mantid.instr) for `ISIS_SANS2d_Mantid.instr`. - ---- - -*Generated for mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/examples/Mantid/ISIS_TOSCA_preupgrade_Mantid/ISIS_TOSCA_preupgrade_Mantid.md b/mcstas-comps/examples/Mantid/ISIS_TOSCA_preupgrade_Mantid/ISIS_TOSCA_preupgrade_Mantid.md deleted file mode 100644 index 233c59789..000000000 --- a/mcstas-comps/examples/Mantid/ISIS_TOSCA_preupgrade_Mantid/ISIS_TOSCA_preupgrade_Mantid.md +++ /dev/null @@ -1,55 +0,0 @@ -# The `ISIS_TOSCA_preupgrade_Mantid` Instrument - -*McStas: TOSCA (pre-upgrade) at ISIS with Mantid support.* - -## Identification - -- **Site:** Mantid -- **Author:** Peter Willendrup (DTU/ESS), Sanghamitra Mukhopadhyay (ISIS STFC) -- **Origin:** DTU/ESS/ISIS -- **Date:** September 2018 - -## Description - -```text -The model at hand is adapted from an earlier model by M.Zanetti and represents the -TOSCA instrument as it looked prior to the recent upgrade. The model at hand was -adapted during the MDANSE2018 workshop (http://mdanse2018.essworkshop.org) and by -default uses a model of the incoherent scattering from Benzene, created using -CASTEP (http://www.castep.org ) and converted to Sqw format iFit (http://ifit.mcode.org) - -The model is naturally very challenging to run because of the indirect TOF geometry -and would benefit from an adaptive sampling approach. - -Please follow instructions at https://github.com/mccode-dev/McCode/wiki/McStas-and-Mantid -to compile with NeXus and generate a Mantid-IDF before attempting to use with Mantid. - -To generate the right flightpath length in Mantid, this version of the instrument has -been created with transmitting rather than reflecting analysers, and the detectors are hence -also positioned differently than in the physical instrument. - -Example: ISIS_TOSCA_preupgrade_Mantid.instr inc=Benzene_inc_CASTEP_MDANSE2018.sqw eventmode=1 Detector: Sphere_I=0.686792 -Example: ISIS_TOSCA_preupgrade_Mantid.instr inc=Benzene_inc_CASTEP_MDANSE2018.sqw eventmode=1 --format=NeXus Detector: Sphere_I=0.686792 -``` - -## Input parameters - -Parameters in **boldface** are required; the others are optional. - -| Name | Unit | Description | Default | -|------|------|-------------|---------| -| inc | filename | Incoherent scattering model to use | "Benzene_inc_CASTEP_MDANSE2018.sqw" | -| zdepth | m | Thickness of sample | 0.002 | -| Emin | meV | Minimum energy to generate at the source | 0.01 | -| Emax | meV | Maximum energy to generate at the source | 500 | -| eventmode | boolean | Flag to enable event monitors | 0 | - -## Links - -- [Source code](ISIS_TOSCA_preupgrade_Mantid.instr) for `ISIS_TOSCA_preupgrade_Mantid.instr`. -- TOSCA instrument webpage -- MDANSE 2018 school webpage - ---- - -*Generated for mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/examples/Mantid/SNS_ARCS_Mantid/SNS_ARCS_Mantid.md b/mcstas-comps/examples/Mantid/SNS_ARCS_Mantid/SNS_ARCS_Mantid.md deleted file mode 100644 index 73240fe55..000000000 --- a/mcstas-comps/examples/Mantid/SNS_ARCS_Mantid/SNS_ARCS_Mantid.md +++ /dev/null @@ -1,53 +0,0 @@ -# The `SNS_ARCS_Mantid` Instrument - -*McStas: Model of the ARCS spectrometer from SNS with Mantid support.* - -## Identification - -- **Site:** Mantid -- **Author:** G. Granroth -- **Origin:** SNS -- **Date:** Nov 2014 - -## Description - -```text -When using this ARCS instrument model, please reference -

      -
    • Granroth, G. E. and Abernathy, D. L., "Performance Comparisons of Four Direct Geometry -Spectrometers Planned for Spallation Neutron Source", Proceedings of ICANS-XVI, 289 (2003). -
    • D. L. Abernathy, M. B. Stone, M. J. Loguillo, M. S. Lucas, O. Delaire, X.Tang, J. Y. Y. Lin, and -B. Fultz,"Design and operation of the wide angular-range chopper spectrometer ARCS at the -Spallation Neutron Source", Review of Scientific Instruments, 83 , 015114 (2012)
    -``` - -## Input parameters - -Parameters in **boldface** are required; the others are optional. - -| Name | Unit | Description | Default | -|------|------|-------------|---------| -| filename | | | "source_sct521_bu_17_1.dat" | -| Fermi_nu | Hz | Frequency of the Fermi chopper | 420 | -| T0_nu | Hz | Frequency of the T0 chopper | 90 | -| nrad | m | Radius of the Fermi chopper blades | 0.58 | -| nchans | 1 | Number of channels in the Fermi chopper | 40 | -| Edes | meV | Desired/target energy | 50 | -| Et | meV | Energy transfer of the Spot_sample | 25 | -| ttheta | deg | Scattering angle of the Spot_sample | 25 | -| T0_off | | | 0 | -| sxmin | m | Sample slit horz min value | -0.04 | -| sxmax | m | Sample slit horz max value | 0.04 | -| symin | m | Sample slit vert min value | -0.04 | -| symax | m | Sample slit vert max value | 0.04 | -| run_num | 1 | Virtual source run number (unused at present) | 1 | - -## Links - -- [Source code](SNS_ARCS_Mantid.instr) for `SNS_ARCS_Mantid.instr`. --
    Granroth, G. E. and Abernathy, D. L., "Performance Comparisons of Four Direct Geometry Spectrometers Planned for Spallation Neutron Source", Proceedings of ICANS-XVI, 289 (2003). --
    D. L. Abernathy, M. B. Stone, M. J. Loguillo, M. S. Lucas, O. Delaire, X.Tang, J. Y. Y. Lin, and B. Fultz,"Design and operation of the wide angular-range chopper spectrometer ARCS at the Spallation Neutron Source", Review of Scientific Instruments, 83 , 015114 (2012) - ---- - -*Generated for mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/examples/Mantid/Tools_ONION/Tools_ONION.md b/mcstas-comps/examples/Mantid/Tools_ONION/Tools_ONION.md deleted file mode 100644 index 17ad62058..000000000 --- a/mcstas-comps/examples/Mantid/Tools_ONION/Tools_ONION.md +++ /dev/null @@ -1,44 +0,0 @@ -# The `Tools_ONION` Instrument - -*McStas: Test case for an layered detector shell instrument to provide quick overview of resolution per pixel.* - -## Identification - -- **Site:** Mantid -- **Author:** Thomas Huegle -- **Origin:** ORNL -- **Date:** July 2019 - -## Description - -```text -Test case for an layered detector shell instrument to provide quick overview of resolution per pixel. -Set up to be run in McStas -> Mantid mode, refer to manual for details on execution. -Simulates desired divergence by adjusting moderator size. -Considers only in-plane (xwidth) factors, sets yheight as 1 cm. -For an example on how to analyze the data, see the 'Onion_analyzerScript.py' available at -https://github.com/mccode-dev/McCode-contribution-support-docs/tree/master/McStas/2.6_Onion_tool_T_Huegle - -Acceptable statistics can be achieved by running the simulation with 1E7 neutrons (output file: ~400MB) -``` - -## Input parameters - -Parameters in **boldface** are required; the others are optional. - -| Name | Unit | Description | Default | -|------|------|-------------|---------| -| divergence | degrees | angular divergence of neutrons reaching the sample | 0.4 | -| distance | m | distance between source and sample | 32 | -| filename | | | "source_sct521_bu_08_1.dat" | - -## Links - -- [Source code](Tools_ONION.instr) for `Tools_ONION.instr`. -- "Using an onion like neutron scattering instrument model to quickly optimize design parameters" -- T. Huegle, Nuclear Instruments and Methods in Physics Research Section A, 2019 -- Python script available at https://github.com/mccode-dev/McCode-contribution-support-docs/tree/master/McStas/2.6_Onion_tool_T_Huegle - ---- - -*Generated for mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/examples/Mantid/templateSANS2_Mantid/templateSANS2_Mantid.md b/mcstas-comps/examples/Mantid/templateSANS2_Mantid/templateSANS2_Mantid.md deleted file mode 100644 index 343d81b85..000000000 --- a/mcstas-comps/examples/Mantid/templateSANS2_Mantid/templateSANS2_Mantid.md +++ /dev/null @@ -1,39 +0,0 @@ -# The `templateSANS2_Mantid` Instrument - -*McStas: Test instrument for the SANS_spheres2 component. No guide / velocity selector.* - -## Identification - -- **Site:** Mantid -- **Author:** Peter Willendrup, Wim G. Bouwman -- **Origin:** DTU -- **Date:** Dec 20190 - -## Description - -```text -Very simple test instrument for the SANS_spheres2 component, derived / simplified from -H. Frielinghaus SANS_benchmark2 -``` - -## Input parameters - -Parameters in **boldface** are required; the others are optional. - -| Name | Unit | Description | Default | -|------|------|-------------|---------| -| lambda | AA | Mean wavelength of neutrons | 6 | -| dlambda | AA | Wavelength spread of neutrons | 0.05 | -| r | AA | Radius of scattering hard spheres | 150 | -| PHI | 1 | Particle volume fraction | 1e-3 | -| Delta_Rho | cm^-2 | Scattering length density | 6e10 | -| frac_dir | 1 | Fraction of statistics for direct beam | 0.03 | -| frac_inc | 1 | Fraction of statistics for incoherent scattering in scattered beam | 0.01 | - -## Links - -- [Source code](templateSANS2_Mantid.instr) for `templateSANS2_Mantid.instr`. - ---- - -*Generated for mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/examples/Mantid/templateSANS_Mantid/templateSANS_Mantid.md b/mcstas-comps/examples/Mantid/templateSANS_Mantid/templateSANS_Mantid.md deleted file mode 100644 index a258d69ed..000000000 --- a/mcstas-comps/examples/Mantid/templateSANS_Mantid/templateSANS_Mantid.md +++ /dev/null @@ -1,45 +0,0 @@ -# The `templateSANS_Mantid` Instrument - -*McStas: Test instrument for the Sans_spheres component. No guide / velocity selector -etc. Will be developed further at later time.* - -## Identification - -- **Site:** Mantid -- **Author:** Kim Lefmann -- **Origin:** Risoe -- **Date:** 19th Dec 2003. - -## Description - -```text -Very simple test instrument for the Sans_spheres componen - -Modified to show a proof of concept method for storing a 'Mantid friendly' type of NeXus file. - -Needed steps: -1) Compile your instrument with NeXus library support -2) Generate an IDF using mcdisplay templateSANS_Mantid --format=Mantid -n0 -3) mcrun templateSANS_Mantid -n1e6 --format=NeXus -``` - -## Input parameters - -Parameters in **boldface** are required; the others are optional. - -| Name | Unit | Description | Default | -|------|------|-------------|---------| -| lambda | AA | Mean wavelength of neutrons | 6 | -| dlambda | AA | Wavelength spread of neutrons | 0.05 | -| r | AA | Radius of scattering hard spheres | 150 | -| PHI | 1 | Particle volume fraction | 1e-3 | -| Delta_Rho | fm/AA^3 | Excess scattering length density | 0.6 | -| sigma_abs | barns | Absorption cross section at 2200 m/s | 0.0 | - -## Links - -- [Source code](templateSANS_Mantid.instr) for `templateSANS_Mantid.instr`. - ---- - -*Generated for mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/examples/Mantid/templateSasView_Mantid/templateSasView_Mantid.md b/mcstas-comps/examples/Mantid/templateSasView_Mantid/templateSasView_Mantid.md deleted file mode 100644 index 4378991bb..000000000 --- a/mcstas-comps/examples/Mantid/templateSasView_Mantid/templateSasView_Mantid.md +++ /dev/null @@ -1,60 +0,0 @@ -# The `templateSasView_Mantid` Instrument - -*McStas: Test instrument for the SasView_model component generating event data for Mantid. No guide / velocity selector -etc.* - -## Identification - -- **Site:** Mantid -- **Author:** Peter Willendrup and Torben Nielsen -- **Origin:** DTU, European Spallation Source ERIC -- **Date:** 25 Jan 2016 - -## Description - -```text -Very simple test instrument for the SasView_model component. - -Modified to show a proof of concept method for storing a 'Mantid friendly' type of NeXus file. - -Example: model_index=1 Ncount=1e6 par1=4 par2=1 par3=40 par4=20 par5=400 Detector: detector_I=5e6 -Example: model_index=3 Ncount=1e6 par1=220 par2=0.06 par3=40 par4=4 par5=1 Detector: detector_I=3.3e4 -Example: model_index=47 Ncount=1e6 par1=4 par2=2 par3=35 par4=75 par5=400 Detector: detector_I=2.5e6 - -Needed steps (McStas): -1) Compile your instrument with NeXus library and ISO c99 support -2) Generate an IDF using mcdisplay templateSANS_Mantid --format=Mantid -n0 -3) mcrun templateSasView_Mantid -n1e6 --format=NeXus - -Needed steps (Mantid): -a) Load McStas NeXus file -b) Run Mantid algorithm: 'ConvertUnits' using the 'wavelenth' and 'elastic' options -c) Run Mantid algorithm: 'Qxy' using the options 'MaxQxy=0.6', 'DeltaQ=0.003', 'SolidAngleWeighting=False' -``` - -## Input parameters - -Parameters in **boldface** are required; the others are optional. - -| Name | Unit | Description | Default | -|------|------|-------------|---------| -| lambda | AA | Mean wavelength of neutrons | 6 | -| dlambda | AA | Wavelength spread of neutrons | 0.05 | -| model_index | | SASmodels model index (see SasView_model.comp mcdoc page) | 47 | -| par1 | | Slot 1 in SASmodel parameter vector | 0 | -| par2 | | Slot 2 in SASmodel parameter vector | 0 | -| par3 | | Slot 3 in SASmodel parameter vector | 0 | -| par4 | | Slot 4 in SASmodel parameter vector | 0 | -| par5 | | Slot 5 in SASmodel parameter vector | 0 | -| par6 | | Slot 6 in SASmodel parameter vector | 0 | -| par7 | | Slot 7 in SASmodel parameter vector | 0 | -| par8 | | Slot 8 in SASmodel parameter vector | 0 | -| Ncount | | | 0 | - -## Links - -- [Source code](templateSasView_Mantid.instr) for `templateSasView_Mantid.instr`. - ---- - -*Generated for mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/examples/Mantid/templateVanadiumMultipleScat_Mantid/templateVanadiumMultipleScat_Mantid.md b/mcstas-comps/examples/Mantid/templateVanadiumMultipleScat_Mantid/templateVanadiumMultipleScat_Mantid.md deleted file mode 100644 index 2563c4b9b..000000000 --- a/mcstas-comps/examples/Mantid/templateVanadiumMultipleScat_Mantid/templateVanadiumMultipleScat_Mantid.md +++ /dev/null @@ -1,34 +0,0 @@ -# The `templateVanadiumMultipleScat_Mantid` Instrument - -*McStas: Instrument demonstrating how to bring multiple scattering information from -a McStas simulation to Mantid (using NeXus output).* - -## Identification - -- **Site:** Mantid -- **Author:** Anders Markvardsen and Peter Willendrup -- **Origin:** ISIS -- **Date:** 201x - -## Description - -```text -Instrument demonstrating how to bring multiple scattering information from -a McStas simulation to Mantid (using NeXus output). -``` - -## Input parameters - -Parameters in **boldface** are required; the others are optional. - -| Name | Unit | Description | Default | -|------|------|-------------|---------| - -## Links - -- [Source code](templateVanadiumMultipleScat_Mantid.instr) for `templateVanadiumMultipleScat_Mantid.instr`. -- A reference/HTML link for more information - ---- - -*Generated for mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/examples/NCrystal/NCrystal_example/NCrystal_example.md b/mcstas-comps/examples/NCrystal/NCrystal_example/NCrystal_example.md deleted file mode 100644 index 53ea54b7b..000000000 --- a/mcstas-comps/examples/NCrystal/NCrystal_example/NCrystal_example.md +++ /dev/null @@ -1,50 +0,0 @@ -# The `NCrystal_example` Instrument - -*McStas: Example instrument for NCrystal_sample use* - -## Identification - -- **Site:** NCrystal -- **Author:** T. Kittelmann, X. X. Cai -- **Origin:** ESS -- **Date:** 2015 - -## Description - -```text -Steady-state source diffractometer with (Ge-511) monochromator and powder-sample via NCrystal - - -This file is originally part of NCrystal (see https://mctools.github.io/ncrystal/) - -Copyright 2015-2022 NCrystal developers - -Licensed under the Apache License, Version 2.0 (the "License"); -you may not use this file except in compliance with the License. -You may obtain a copy of the License at - -http://www.apache.org/licenses/LICENSE-2.0 - -Unless required by applicable law or agreed to in writing, software -distributed under the License is distributed on an "AS IS" BASIS, -WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -See the License for the specific language governing permissions and -limitations under the License. -``` - -## Input parameters - -Parameters in **boldface** are required; the others are optional. - -| Name | Unit | Description | Default | -|------|------|-------------|---------| -| sample_cfg | string | Material string for the sample. | "Y2O3_sg206_Yttrium_Oxide.ncmat;density=0.9x" | - -## Links - -- [Source code](NCrystal_example.instr) for `NCrystal_example.instr`. -- https://github.com/mctools/ncrystal/wiki/ - ---- - -*Generated for mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/examples/NCrystal/Union_NCrystal_example/Union_NCrystal_example.md b/mcstas-comps/examples/NCrystal/Union_NCrystal_example/Union_NCrystal_example.md deleted file mode 100644 index c662e68d6..000000000 --- a/mcstas-comps/examples/NCrystal/Union_NCrystal_example/Union_NCrystal_example.md +++ /dev/null @@ -1,35 +0,0 @@ -# The `Union_NCrystal_example` Instrument - -*McStas: Example instrument for use of NCrystal in Union.* - -## Identification - -- **Site:** NCrystal -- **Author:** T. Kittelmann, X. X. Cai, Mads Bertelsen -- **Origin:** ESS -- **Date:** 2020 - -## Description - -```text -This instrument examplifies how NCrystal may be used in Union -constructions. It is adopted from NCrystal_example.instr where both -monochromator and samples are described via NCrystal_sample components. Here, -they are both described via Union components. -``` - -## Input parameters - -Parameters in **boldface** are required; the others are optional. - -| Name | Unit | Description | Default | -|------|------|-------------|---------| - -## Links - -- [Source code](Union_NCrystal_example.instr) for `Union_NCrystal_example.instr`. -- https://github.com/mctools/ncrystal/wiki/ - ---- - -*Generated for mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/examples/NCrystal/Union_NCrystal_mix_example/Union_NCrystal_mix_example.md b/mcstas-comps/examples/NCrystal/Union_NCrystal_mix_example/Union_NCrystal_mix_example.md deleted file mode 100644 index 4949079cc..000000000 --- a/mcstas-comps/examples/NCrystal/Union_NCrystal_mix_example/Union_NCrystal_mix_example.md +++ /dev/null @@ -1,36 +0,0 @@ -# The `Union_NCrystal_mix_example` Instrument - -*McStas: Example instrument for use of NCrystal_sample as well as NCrystal in Union* - -## Identification - -- **Site:** NCrystal -- **Author:** T. Kittelmann, X. X. Cai, Mads Bertelsen -- **Origin:** ESS -- **Date:** 2020 - -## Description - -```text -This instrument examplifies how NCrystal may be used in Union -constructions. It is adopted from NCrystal_example.instr where both -monochromator and samples are described via NCrystal_sample components. Here, -the monochromator is described via a Union components, but the sample is still -an NCrystal_sample component. -``` - -## Input parameters - -Parameters in **boldface** are required; the others are optional. - -| Name | Unit | Description | Default | -|------|------|-------------|---------| - -## Links - -- [Source code](Union_NCrystal_mix_example.instr) for `Union_NCrystal_mix_example.instr`. -- https://github.com/mctools/ncrystal/wiki/ - ---- - -*Generated for mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/examples/Necsa/SAFARI_MPISI/SAFARI_MPISI.md b/mcstas-comps/examples/Necsa/SAFARI_MPISI/SAFARI_MPISI.md deleted file mode 100644 index d7aa1a082..000000000 --- a/mcstas-comps/examples/Necsa/SAFARI_MPISI/SAFARI_MPISI.md +++ /dev/null @@ -1,64 +0,0 @@ -# The `SAFARI_MPISI` Instrument - -*McStas: Materials Probe for Internal Strain Investigations* - -## Identification - -- **Site:** Necsa -- **Author:** Deon Marais (deon.marais@necsa.co.za) -- **Origin:** Necsa -- **Date:** September 2013 - -## Description - -```text -Necsa Neutron Strain Scanner located at beam port 5 of the SAFARI-1 research reactor, South Africa -``` - -## Input parameters - -Parameters in **boldface** are required; the others are optional. - -| Name | Unit | Description | Default | -|------|------|-------------|---------| -| source_lam_min | Angs | Minimum wavelenth of source | 0.5 | -| source_lam_max | Angs | Maximum wavelenth of source | 2.0 | -| hi_res | | Selects hi-resolution(1) or hi-intensity(0) reactor beam through primary shutter | 0 | -| mono_Si_type | | Monochromator Silicon type options: 422 400 311 511 111 331 | 311 | -| mono_mosh | arc min | Monochromator horizontal mosaicity | 30 | -| mono_mosv | arc min | Monochromator vertical mosaicity | 30 | -| mono_dx | m | Monochromator delta x - positive to left of reactor beam | 0 | -| mono_dy | m | Monochromator delta y - positive upward of reactor beam | 0 | -| mono_dz | m | Monochromator delta z - positive along reactor beam | 0 | -| mono_takeoff | deg | Monochromator takeoff angle - positive anti-clockwise from reactor beam | -83.5 | -| mono_dtilt | deg | Monochromator tilt angle - not implemented yet | 0 | -| mono_Rh | m | Monochromator horizontal focus radius | 3.572 | -| port_takeoff | deg | Port takeoff angle - positive anti clockwise from reactor beam | -83.5 | -| chamber_window_rad | m | Chamber window radius. If this is 0, there is no window | 0.05534 | -| inc_slit_rot | deg | Incident slit delta rotation - not implemented yet | 0 | -| inc_slit_dx | m | Incident slit delta x position - positive to left of incident beam | 0 | -| inc_slit_to_cor | m | Incident slit to sample stage center of rotation | 0.005 | -| inc_slit_width | m | Incident slit width 0.00013m to 0.005m | 0.005 | -| inc_slit_height | m | Incident slit height 0m to 0.02m | 0.02 | -| inc_slit_sep | | Incident slit separation between width and height. <0:use emperical calc, >=0:distance in m | -1 | -| mono_to_cor | m | Distance between monochromator and center of rotation | 2.5 | -| sample_dx | m | Sample delta x - positive to left of incident beam if sample_dom=0 | 0 | -| sample_dy | m | Sample delta y - positive upword of incident beam | 0 | -| sample_dz | m | Sample delta x - positive along of incident beam if sample_dom=0 | 0 | -| sample_dom | deg | Sample delta omega - positive anti-clockwise from incident beam | 0 | -| det_takeoff | deg | Detector takeoff angle - positive anti-clockwise from incident beam | 90 | -| cor_to_det | m | Distance between sample centre of rotation and detector | 1.148 | -| diff_slit_dx | m | Diffracted slit delta x position - positive to left of diffracted beam | 0 | -| diff_slit_to_cor | deg | Distance between centre of rotation and diffracted slit | 0.005 | -| diff_slit_width | m | Diffracted slit width | 0.005 | -| diff_slit_height | m | Diffracted slit height | 0.02 | -| full_instrument | | When 1, simulates the complete instrument. When 0, only simulate from the outlet collimator | 1 | - -## Links - -- [Source code](SAFARI_MPISI.instr) for `SAFARI_MPISI.instr`. -- The South African Nuclear Energy Corporation website - ---- - -*Generated for mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/examples/Necsa/SAFARI_PITSI/SAFARI_PITSI.md b/mcstas-comps/examples/Necsa/SAFARI_PITSI/SAFARI_PITSI.md deleted file mode 100644 index bde200ac5..000000000 --- a/mcstas-comps/examples/Necsa/SAFARI_PITSI/SAFARI_PITSI.md +++ /dev/null @@ -1,61 +0,0 @@ -# The `SAFARI_PITSI` Instrument - -*McStas: Powder Instrument for Transition in Structure Investigations* - -## Identification - -- **Site:** Necsa -- **Author:** Deon Marais (deon.marais@necsa.co.za) -- **Origin:** Necsa -- **Date:** September 2013 - -## Description - -```text -Necsa Neutron Powder Diffractometer located at beam port 5 of the SAFARI-1 research reactor, South Africa -``` - -## Input parameters - -Parameters in **boldface** are required; the others are optional. - -| Name | Unit | Description | Default | -|------|------|-------------|---------| -| source_lam_min | Angs | Minimum wavelenth of source | 0.5 | -| source_lam_max | Angs | Maximum wavelenth of source | 2.0 | -| hi_res | | Selects hi-resolution(1) or hi-intensity(0) reactor beam through primary shutter | 0 | -| mono_Si_type | | Monochromator Silicon type options: 422 400 311 511 111 331 (Mostly used: 331 and 551) | 551 | -| mono_mosh | arc min | Monochromator horizontal mosaicity | 30 | -| mono_mosv | arc min | Monochromator vertical mosaicity | 30 | -| mono_dx | m | Monochromator delta x - positive to left of reactor beam | 0 | -| mono_dy | m | Monochromator delta y - positive upward of reactor beam | 0 | -| mono_dz | m | Monochromator delta z - positive along reactor beam | 0 | -| mono_takeoff | deg | Monochromator takeoff angle - positive anti-clockwise from reactor beam | 90.0 | -| mono_dtilt | deg | Monochromator tilt angle - not implemented yet | 0 | -| mono_r_h | m | Monochromator horizontal focus radius (min 5.0 m) | 5.0 | -| mono_r_v | m | Monochromator vertical focus radius (min 0.9 m) | 3.572 | -| port_takeoff | deg | Port takeoff angle - positive anti clockwise from reactor beam (70 or 90 deg) | 90.0 | -| inc_slit_rot | deg | Incident slit delta rotation - not implemented yet | 0 | -| inc_slit_dx | m | Incident slit delta x position - positive to left of incident beam | 0 | -| inc_slit_to_cor | m | Incident slit to sample stage center of rotation | 0.01 | -| inc_slit_width | m | Incident slit width 0.00013m to 0.006m | 0.006 | -| inc_slit_height | m | Incident slit height 0m to 0.05m | 0.05 | -| inc_slit_sep | | Incident slit separation between width and height. <0:use emperical calc, >=0:distance in m | 0 | -| mono_to_cor | m | Distance between monochromator and center of rotation | 2.5 | -| sample_dx | m | Sample delta x - positive to left of incident beam if sample_dom=0 | 0 | -| sample_dy | m | Sample delta y - positive upword of incident beam | 0 | -| sample_dz | m | Sample delta x - positive along of incident beam if sample_dom=0 | 0 | -| sample_dom | deg | Sample delta omega - positive anti-clockwise from incident beam | 0 | -| det_takeoff | deg | Detector takeoff angle - positive anti-clockwise from incident beam | -114.375 | -| cor_to_det | m | Distance between sample centre of rotation and detector | 1.179 | -| dangle_interest | deg | Delta angle of interenterest. | 125 | -| full_instrument | | | 1 | - -## Links - -- [Source code](SAFARI_PITSI.instr) for `SAFARI_PITSI.instr`. -- The South African Nuclear Energy Corporation website - ---- - -*Generated for mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/examples/PSI/PSI_DMC/PSI_DMC.md b/mcstas-comps/examples/PSI/PSI_DMC/PSI_DMC.md deleted file mode 100644 index 845b3be0a..000000000 --- a/mcstas-comps/examples/PSI/PSI_DMC/PSI_DMC.md +++ /dev/null @@ -1,48 +0,0 @@ -# The `PSI_DMC` Instrument - -*McStas: McStas model of the DMC powder diffractometer at PSI, CH.* - -## Identification - -- **Site:** PSI -- **Author:** Peter Willendrup (Risoe), Uwe Filges (PSI), Lukas Keller (PSI) -- **Origin:** PSI -- **Date:** May 7th, 2008 - -## Description - -```text -McStas model of the DMC powder diffractometer at PSI, CH. - -Please note that this instrument file does not include the radial collimator of DMC. -To generate the full 800-bin angle coverage at DMC, you should combine two simulations -using this instrumentfile, with SHIFT=0 and 0.1. This will displace the detector by half -a bin-width, which is a standard procedure at the DMC diffractometer -``` - -## Input parameters - -Parameters in **boldface** are required; the others are optional. - -| Name | Unit | Description | Default | -|------|------|-------------|---------| -| lambda | AA | Choice of wavelength, affects both monochromator and source component | 2.5666 | -| R | 1 | Reflectivity of non-curved guides | 0.87 | -| R_curve | 1 | Reflectivity of curved guides | 0.87 | -| filename | str | Choice of reflection list file, e.g. from McStas data dir | "Na2Ca3Al2F14.laz" | -| D_PHI | deg | Focusing 'd_phi' for PowderN, see mcdoc page | 6 | -| SHIFT | deg | Rotation of detector, set to 0.1 to displace by half a bin | 0 | -| PACK | 1 | Powder packing factor | 0.7 | -| Dw | 1 | Powder Debye-Waller factor | 0.8 | -| BARNS | 1 | Flag to define if powder reflection file \|F2\| is in Barns or fm | 1 | -| SPLITS | | | 58 | - -## Links - -- [Source code](PSI_DMC.instr) for `PSI_DMC.instr`. -- The PSI Monte-Carlo website. -- P Willendrup, U Filges, L Keller, E Farhi, K Lefmann: Validation of a realistic powder sample using data from DMC at PSI, ICNS 2005 (Physica B, 386, (2006), 1032.) - ---- - -*Generated for mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/examples/PSI/PSI_DMC_simple/PSI_DMC_simple.md b/mcstas-comps/examples/PSI/PSI_DMC_simple/PSI_DMC_simple.md deleted file mode 100644 index 0fdb2086b..000000000 --- a/mcstas-comps/examples/PSI/PSI_DMC_simple/PSI_DMC_simple.md +++ /dev/null @@ -1,47 +0,0 @@ -# The `PSI_DMC_simple` Instrument - -*McStas: McStas model of the DMC powder diffractometer at PSI, CH.* - -## Identification - -- **Site:** PSI -- **Author:** Peter Willendrup (Risoe), Uwe Filges (PSI), Lukas Keller (PSI) -- **Origin:** PSI -- **Date:** May 7th, 2008 - -## Description - -```text -McStas model of the DMC powder diffractometer at PSI, CH. - -Please note that this instrument file does not include the radial collimator of DMC. -To generate the full 800-bin angle coverage at DMC, you should combine two simulations -using this instrumentfile, with SHIFT=0 and 0.1. This will displace the detector by half -a bin-width, which is a standard procedure at the DMC diffractometer -``` - -## Input parameters - -Parameters in **boldface** are required; the others are optional. - -| Name | Unit | Description | Default | -|------|------|-------------|---------| -| lambda | AA | Choice of wavelength, affects both monochromator and source component | 2.5666 | -| R | 1 | Reflectivity of non-curved guides | 0.87 | -| R_curve | 1 | Reflectivity of curved guides | 0.87 | -| filename | str | Choice of reflection list file, e.g. from McStas data dir | "Na2Ca3Al2F14.laz" | -| D_PHI | deg | Focusing 'd_phi' for PowderN, see mcdoc page | 6 | -| SHIFT | deg | Rotation of detector, set to 0.1 to displace by half a bin | 0 | -| PACK | 1 | Powder packing factor | 0.7 | -| Dw | 1 | Powder Debye-Waller factor | 0.8 | -| BARNS | 1 | Flag to define if powder reflection file \|F2\| is in Barns or fm | 1 | - -## Links - -- [Source code](PSI_DMC_simple.instr) for `PSI_DMC_simple.instr`. -- The PSI Monte-Carlo website. -- P Willendrup, U Filges, L Keller, E Farhi, K Lefmann: Validation of a realistic powder sample using data from DMC at PSI, ICNS 2005 (Physica B, 386, (2006), 1032.) - ---- - -*Generated for mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/examples/PSI/PSI_Focus/PSI_Focus.md b/mcstas-comps/examples/PSI/PSI_Focus/PSI_Focus.md deleted file mode 100644 index 5d8790a68..000000000 --- a/mcstas-comps/examples/PSI/PSI_Focus/PSI_Focus.md +++ /dev/null @@ -1,35 +0,0 @@ -# The `PSI_Focus` Instrument - -*McStas: The FOCUS Spectrometer at PSI (Paul Scherrer Institute,Switzerland)* - -## Identification - -- **Site:** PSI -- **Author:** Uwe Filges -- **Origin:** PSI -- **Date:** Jan 2004 - -## Description - -```text -This instrument is a model of the FOCUS Spectrometer at PSI, Villigen, CH. -``` - -## Input parameters - -Parameters in **boldface** are required; the others are optional. - -| Name | Unit | Description | Default | -|------|------|-------------|---------| -| lambda | Angs | source energy | 3.4 | -| chopp_ratio | 1 | Chopper radio Fermi Chopper to Disk Chopper | 1 | -| DET | deg | Detector angle | -69.9 | - -## Links - -- [Source code](PSI_Focus.instr) for `PSI_Focus.instr`. -- Written by U.Filges PSI, Jan 2004 - ---- - -*Generated for mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/examples/PSI/PSI_source/PSI_source.md b/mcstas-comps/examples/PSI/PSI_source/PSI_source.md deleted file mode 100644 index ded35588d..000000000 --- a/mcstas-comps/examples/PSI/PSI_source/PSI_source.md +++ /dev/null @@ -1,47 +0,0 @@ -# The `PSI_source` Instrument - -*McStas: McStas model of the DMC powder diffractometer at PSI, CH.* - -## Identification - -- **Site:** PSI -- **Author:** Peter Willendrup (Risoe), Uwe Filges (PSI), Lukas Keller (PSI) -- **Origin:** PSI -- **Date:** May 7th, 2008 - -## Description - -```text -McStas model of the DMC powder diffractometer at PSI, CH. - -Please note that this instrument file does not include the radial collimator of DMC. -To generate the full 800-bin angle coverage at DMC, you should combine two simulations -using this instrumentfile, with SHIFT=0 and 0.1. This will displace the detector by half -a bin-width, which is a standard procedure at the DMC diffractometer -``` - -## Input parameters - -Parameters in **boldface** are required; the others are optional. - -| Name | Unit | Description | Default | -|------|------|-------------|---------| -| lambda | AA | Choice of wavelength, affects both monochromator and source component | 2.5666 | -| R | 1 | Reflectivity of non-curved guides | 0.87 | -| R_curve | 1 | Reflectivity of curved guides | 0.87 | -| filename | str | Choice of reflection list file, e.g. from McStas data dir | "Na2Ca3Al2F14.laz" | -| D_PHI | deg | Focusing 'd_phi' for PowderN, see mcdoc page | 6 | -| SHIFT | deg | Rotation of detector, set to 0.1 to displace by half a bin | 0 | -| PACK | 1 | Powder packing factor | 0.7 | -| Dw | 1 | Powder Debye-Waller factor | 0.8 | -| BARNS | 1 | Flag to define if powder reflection file \|F2\| is in Barns or fm | 1 | - -## Links - -- [Source code](PSI_source.instr) for `PSI_source.instr`. -- The PSI Monte-Carlo website. -- P Willendrup, U Filges, L Keller, E Farhi, K Lefmann: Validation of a realistic powder sample using data from DMC at PSI, ICNS 2005 (Physica B, 386, (2006), 1032.) - ---- - -*Generated for mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/examples/PSI/RITA-II/RITA-II.md b/mcstas-comps/examples/PSI/RITA-II/RITA-II.md deleted file mode 100644 index ed521a2ad..000000000 --- a/mcstas-comps/examples/PSI/RITA-II/RITA-II.md +++ /dev/null @@ -1,152 +0,0 @@ -# The `RITA_II` Instrument - -*McStas: RITA type triple-axis spectrometer (TAS)* - -## Identification - -- **Site:** PSI -- **Author:** Linda Udby and Peter Willendrup -- **Origin:** Risø (Denmark) -- **Date:** 2012 - -## Description - -```text -This instrument is model of RITA-II at the RNR13 guide at SINQ, PSI as of 2009. The energy and q-resolution as been verified against measured data in 2- and 3-axis modes. See Udby et al., Nuclear Instruments and Methods 634 (2011) s138-.
    -The model is based on the following components in downstream order -
      -
    • The SINQ source in 2009 - tested up to Ei=15 meV versus measurements. The spectrum of genereated rays is controlled by the BPL and BPH parameters.
    • -
    • The RNR13 guide with average m-value based on color-codes on guide pieces and gaps as measured/from technical drawings.
    • -
    • The Druckal monochromator: 5 slabs of PG(002) with vertically focusing option. The horizontal rotation angle (A1) and scattering angle (A2) can either be set by user input or calculated automatically from EI/KI.
    • -
    • Optional filter after the monochromator, before the sample.
    • -
    • Variable linear collimator after the monochromator, before the sample.
    • -
    • Optional perspex attenuation.
    • -
    • Inbound Diaphagm slit.
    • -
    • Sample: Incoherent scatterer, powder or single crystal from reflection list.
    • -
    • Outbound Diaphragm slit.
    • -
    • Optional filter after the sample, with radial collimator.
    • -
    • 9 - blade analyser: Base-rotation (AA5) and individual blade angles (C1-C9) can either be set by user or calculated automatically from EF/KF.
    • -
    • Coarse collimator: Removes cross-talk by allowing only passage of scattered neutrons from specified blade in each channel.
    • -
    • Detector: PSD detector with 100% efficiency and specified point-spread function from measurements.
    • -
    • Windows: Monitors the neutrons in each electronically specified window [XWinMin,XWinMax;YWinMin,YWinMax].
    • -
    -EXAMPLES -
      -
    • Generating a virtual source
    • -mcrun RITA-II.instr -n3e6 BPL=0.97 BPH=1.03 EI=5 EF=5 COLL_MS=40 SAMPLE=1 OUTFILTER=0 REP=10 VIRTUALOUT=1 -d RITA-II_Vsource40
      -
    • Vanadium sample, no filters, seeing 1st-3rd order neutrons
    • -mcrun RITA-II.instr -n3e6 BPL=0.30 BPH=1.03 EI=5 EF=5 SAMPLE=1 INFILTER=0 OUTFILTER=0 REP=10 -d RITA-II_Vanadium
      -
    • Powder sample (default sapphire), simulation 1) through entire instrument or 2)from virtual source 3) in 2-axis mode, with particular slit settings scaling the source yield to 2008 values
    • -1) mcrun RITA-II.instr -n3e6 EF=5 EN=0 SAMPLE=2 COLL_MS=40 SAMPLEFILE="Al2O3_sapphire.lau" BARNS=0 SOURCEFILE="RITA-II_Vsource40/Vin_default.dat" REP=10 -d RITA-II_40_powder
      -2) mcrun RITA-II.instr EI=5 EF=5 SAMPLE=2 SAMPLEFILE="Al2O3_sapphire.lau" BARNS=0 SOURCEFILE="RITA-II_Vsource40/Vin_default.dat" VIRTUALIN=1 REP=3 -d RITA-II_VINsource40_powder
      -3) mcrun RITA-II.instr -n 1e7 ITAR=0.71 COLL_MS=19.6 BPL=0.97 BPH=1.03 EI=5 EF=5 QH=0 QK=0 QL=0 QM=1 A3=0.001 A4=-71 AA5=-90 A6=1e-3 MST=25 MSB=25 MSL=10 MSR=10 SAMPLE=2 SAMPLEFILE="Al2O3_sapphire.lau" SST=25 SSB=25 SSL=10 SSR=10 OUTFILTER=0 OUTFILTERFILE=Be.trm COARSE=1 REP=5 LC=6 RC=4 REP=1 BARNS=0 ANAFORCE=1 -d RITA-II_Al2O3_2axis
      -
    • Single crystal sample. Define first lattice vector (a) along -x (to the right) , second lattice vector (b) along z (forward), third lattice vector (c) along y (up).
    • -mcrun RITA-II.instr -n1e6 BPL=0.97 BPH=1.03 EI=5 EF=5 SAMPLE=3 REP=10 QH=2 QM=0 AS=4.95 BS=4.95 CS=4.95 AAX=-4.95 BBZ=4.95 CCY=4.95 AH=0 AK=1 AL=0 BH=1 BK=0 BL=0 SAMPLEFILE="Pb.laz" -d RITA-II_SXPb200
      -
    • Phonon sample, inelastic scattering, no Bragg peaks in sample
    • -mcrun RITA-II.instr -n1e6 L0=3.418 BPL=0.97 BPH=1.03 EI=7 EF=5 SAMPLE=4 REP=10 QH=2 QK=0.16 QM=0 AS=4.95 BS=4.95 CS=4.95 AAX=-4.95 BBZ=4.95 CCY=4.95 AH=0 AK=1 AL=0 BH=1 BK=0 BL=0 SAMPLEFILE="Pb.laz" -d RITA-II_SXPb200_2meV
      -
    - -Example: BPL=0.97 BPH=1.03 EI=5 EN=0 COLL_MS=40 SAMPLE=1 OUTFILTER=0 REP=10 Detector: psd_detector_I=216.427 -``` - -## Input parameters - -Parameters in **boldface** are required; the others are optional. - -| Name | Unit | Description | Default | -|------|------|-------------|---------| -| ITAR | mA | Relative neutron yield from the spallation target. Value relative to 2009 | 1.0 | -| L0 | Angs | Centre of generated wavelength distribution from source | 4.045 | -| BPL | | Band Pass Low factor, multiplied on source wavelength L0 to allow neutrons with wavelengths with lambda {BPL*L0,BPH*L0} to be traced from the source. | 0.97 | -| BPH | | Band Pass High factor, multiplied on source wavelength L0 to allow neutrons with wavelengths with lambda {BPL*L0,BPH*L0} to be traced from the source. | 1.03 | -| MONO_N | 1 | Order of reflection used on mono | 1 | -| MONOFORCE | 1 | If set, monochromator is flat | 0 | -| MONO_MOS_H | min | Monochromator, horizontal mosaicity | 37 | -| MONO_MOS_V | min | Monochromator, vertical mosaicity | 37 | -| EI | meV | Incoming neutron energy. Also used to set range of energy monitors | 0 | -| EF | meV | Outgoing neutron energy. Also used to set range of energy monitors | 0 | -| EN | meV | Energy transferred in crystal | 0 | -| SM | 1 | | 1 | -| SS | 1 | Scattering configuration signs. 'W' is SM=1,SS=-1,SA=1 | -1 | -| SA | 1 | | 1 | -| QH | rlu | Measurement QH position in crystal | 0 | -| QK | rlu | Measurement QK position in crystal | 0 | -| QL | rlu | Measurement QL position in crystal | 0 | -| QM | Angs-1 | Wavevector transferred in sample, use QM=0 if (QH,QK,QL) is specified | 1.8051 | -| AS | Angs | Sample lattice parameter A | 4.95 | -| BS | Angs | Sample lattice parameter B | 4.95 | -| CS | Angs | Sample lattice parameter C | 4.95 | -| AA | deg | Angle between lattice vectors B,C | 90 | -| BB | deg | Angle between lattice vectors C,A | 90 | -| CC | deg | Angle between lattice vectors A,B | 90 | -| AH | rlu | First reciprocal lattice vector in scattering plane, X | 0 | -| AK | rlu | First reciprocal lattice vector in scattering plane, Y | 1 | -| AL | rlu | First reciprocal lattice vector in scattering plane, Z | 0 | -| BH | rlu | Second reciprocal lattice vector in scattering plane, X | 1 | -| BK | rlu | Second reciprocal lattice vector in scattering plane, Y | 0 | -| BL | rlu | Second reciprocal lattice vector in scattering plane, Z | 0 | -| INFILTER | 1 | Flag to indicate if mono-block filter is in or out | 0 | -| INFILTERFILE | string | An input file of wavevector vs transmission to use with incoming filter | "Be.trm" | -| COLL_MS | deg | Primary collimator max divergence | 80 | -| MST | m | Monochromator TOP slit | 40 | -| MSB | m | Monochromator BOTTOM slit | 40 | -| MSL | m | Monochromator LEFT slit | 40 | -| MSR | m | Monochromator RIGHT slit | 40 | -| PTHICK | m | Thickness of perspex attenuator | 1e-3 | -| PERSPEX | 1 | Flag to indicate if perspex attenuator is in or out | 0 | -| SAMPLE | 1 | 1 is incoherent scatterer, 2 is powder, 3 is single crystal. | 1 | -| SAMPLEFILE | string | Name of samplefile (with reflectionlist etc) | "default" | -| MOS | | Isotropic 'mosaicity' of single crystal | 100 | -| DD_D | | spead of lattice parameter | 1e-3 | -| SAMPLESIZE | m | Length, height and width of single crystal sample, or radius and height of phonon sample | 0.01 | -| BARNS | 1 | If set the flag indicates that reflection list structure factors are in units of barns, otherwise fm^2 | 1 | -| AAX | | | -4.95 | -| AAY | | Orientation vector of unit cell, single_crystal | 0 | -| AAZ | | | 0 | -| BBX | | | 0 | -| BBY | | Orientation vector of unit cell, single_crystal | 0 | -| BBZ | | | 4.95 | -| CCX | | | 0 | -| CCY | | Orientation vector of unit cell, single_crystal | 4.95 | -| CCZ | | | 0 | -| A1 | deg | Monohromator rotation angle | 0 | -| A2 | deg | Monohromator take-off angle | 0 | -| A3 | deg | Sample rotation angle | 0 | -| A4 | deg | Sample take-off angle | 0 | -| A6 | deg | Analyzer take-off angle | 0 | -| TILT | deg | Tilt angle out of plane of the sample scattering vector out of plane (rotation around z of the A3 arm) | 0 | -| SST | m | Sample TOP slit | 100 | -| SSB | m | Sample BOTTOM slit | 100 | -| SSL | m | Sample LEFT slit | 100 | -| SSR | m | Sample RIGHT slit | 100 | -| OUTFILTER | 1 | Flag to indicate if the outbound filter is in or out | 1 | -| OUTFILTERFILE | string | An input file of wavevector vs transmission to use with outgoing filter | "Be.trm" | -| ANAFORCE | 1 | If set the analyzer is forced flat | 0 | -| AA5 | deg | Analyzer rack rotation angle | 0 | -| C1 | deg | Analyzer blade 1 position | 0 | -| C2 | deg | Analyzer blade 2 position | 0 | -| C3 | deg | Analyzer blade 3 position | 0 | -| C4 | deg | Analyzer blade 4 position | 0 | -| C5 | deg | Analyzer blade 5 position | 0 | -| C6 | deg | Analyzer blade 6 position | 0 | -| C7 | deg | Analyzer blade 7 position | 0 | -| C8 | deg | Analyzer blade 8 position | 0 | -| C9 | deg | Analyzer blade 9 position | 0 | -| COARSE | 1 | Flag to indicate if Detector collimator is in or out | 1 | -| LC | deg | Detector-collimator angle of the leftmost blade | 4 | -| RC | deg | Detector-collimator angle of the rightmost blade | 3 | -| REP | 1 | Repetition factor of virtual_input or Monochromator/Sample/Analyzer SPLITs | 1 | -| VIRTUALOUT | 1 | If set, flag indicates that a Virtual source is created after the monochromator collimator | 0 | -| VIRTUALIN | 1 | If set, flag to indicates that Virtual source is used after the monochromator collimator | 0 | -| SOURCEFILE | string | Name of file to be used/genereated as virtual input/output | "Vin_default.dat" | -| verbose | 1 | print TAS configuration. 0 to be quiet | 1 | - -## Links - -- [Source code](RITA-II.instr) for `RITA-II.instr`. -- Rescal for Matlab at http://www.ill.fr/tas/matlab -- Restrax at http://omega.ujf.cas.cz/restrax/ - ---- - -*Generated for mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/examples/Risoe/TAS1_C1/TAS1_C1.md b/mcstas-comps/examples/Risoe/TAS1_C1/TAS1_C1.md deleted file mode 100644 index 86d32edf7..000000000 --- a/mcstas-comps/examples/Risoe/TAS1_C1/TAS1_C1.md +++ /dev/null @@ -1,43 +0,0 @@ -# The `TAS1_C1` Instrument - -*McStas: Example formerly known as linup-1.instr - -The conventional cold-source triple-axis spectrometer TAS1 at Risoe National -Laboratory used as a diffractometer for monochromator rocking curves* - -## Identification - -- **Site:** Risoe -- **Author:** A. Abrahamsen, N. B. Christensen, and E. Lauridsen -- **Origin:** Risoe -- **Date:** 1998 - -## Description - -```text -This instrument is the conventional cold-source triple-axis spectrometer TAS1 -at Risoe National Laboratory. It does not exist anymore, but was used as the -first detailed work performed with the McStas package. -Here it is used as a diffractometer for monochromator rocking curves. The -detector is at the sample position. -``` - -## Input parameters - -Parameters in **boldface** are required; the others are optional. - -| Name | Unit | Description | Default | -|------|------|-------------|---------| -| PHM | deg | Monochromator arm angle, aka A1 | -37.077 | -| TTM | deg | Monochromator take-off angle, aka A2 | -74 | -| C1 | arcmin | C1 collimation | 30 | - -## Links - -- [Source code](TAS1_C1.instr) for `TAS1_C1.instr`. -- The McStas User manual -- A. Abrahamsen, N. B. Christensen, and E. Lauridsen. McStas simulations of the TAS1 spectrometer. Student's report, Niels Bohr Institute, University of Copenhagen, 1998. - ---- - -*Generated for mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/examples/Risoe/TAS1_C1_Tilt/TAS1_C1_Tilt.md b/mcstas-comps/examples/Risoe/TAS1_C1_Tilt/TAS1_C1_Tilt.md deleted file mode 100644 index b519e8392..000000000 --- a/mcstas-comps/examples/Risoe/TAS1_C1_Tilt/TAS1_C1_Tilt.md +++ /dev/null @@ -1,44 +0,0 @@ -# The `TAS1_C1_Tilt` Instrument - -*McStas: Example formerly known as linup-2.instr - -The conventional cold-source triple-axis spectrometer TAS1 at Risoe National -Laboratory used as a diffractometer for a collimator tilt alignment.* - -## Identification - -- **Site:** Risoe -- **Author:** A. Abrahamsen, N. B. Christensen, and E. Lauridsen -- **Origin:** Risoe -- **Date:** 1998 - -## Description - -```text -This instrument is the conventional cold-source triple-axis spectrometer TAS1 -at Risoe National Laboratory. It does not exist anymore, but was used as the -first detailed work performed with the McStas package. -Here it is used as a diffractometer for a collimator tilt alignment. The -detector is at the sample position and there is no analyzer. -``` - -## Input parameters - -Parameters in **boldface** are required; the others are optional. - -| Name | Unit | Description | Default | -|------|------|-------------|---------| -| PHM | deg | Monochromator arm angle, aka A1 | -37.077 | -| TTM | deg | Monochromator take-off angle, aka A2 | -74 | -| C1 | min | Collimator 1 aperture (mono-sample arm) | 30 | -| OMC1 | deg | Tilt angle of the Collimator 1 | 5.5 | - -## Links - -- [Source code](TAS1_C1_Tilt.instr) for `TAS1_C1_Tilt.instr`. -- The McStas User manual -- A. Abrahamsen, N. B. Christensen, and E. Lauridsen. McStas simulations of the TAS1 spectrometer. Student's report, Niels Bohr Institute, University of Copenhagen, 1998. - ---- - -*Generated for mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/examples/Risoe/TAS1_Diff_Powder/TAS1_Diff_Powder.md b/mcstas-comps/examples/Risoe/TAS1_Diff_Powder/TAS1_Diff_Powder.md deleted file mode 100644 index 1e74c1c44..000000000 --- a/mcstas-comps/examples/Risoe/TAS1_Diff_Powder/TAS1_Diff_Powder.md +++ /dev/null @@ -1,49 +0,0 @@ -# The `TAS1_Diff_Powder` Instrument - -*McStas: Example formerly known as linup-5.instr - -The conventional cold-source triple-axis spectrometer TAS1 at Risoe National -Laboratory used as a diffractometer for an alignment study with a -powder sample.* - -## Identification - -- **Site:** Risoe -- **Author:** A. Abrahamsen, N. B. Christensen, and E. Lauridsen -- **Origin:** Risoe -- **Date:** 1998 - -## Description - -```text -This instrument is the conventional cold-source triple-axis spectrometer TAS1 -at Risoe National Laboratory. It does not exist anymore, but was used as the -first detailed work performed with the McStas package. -Here it is used as a diffractometer for an alignment study. The -sample is a powder and there is no analyzer. -``` - -## Input parameters - -Parameters in **boldface** are required; the others are optional. - -| Name | Unit | Description | Default | -|------|------|-------------|---------| -| PHM | deg | Monochromator arm angle, aka A1 | -37.077 | -| TTM | deg | Monochromator take-off angle, aka A2 | -74 | -| TT | deg | Take-off angle at the sample position, aka A4 | 33.52 | -| TTA | deg | Take-off angle at the analyzer position, aka A6 | 0 | -| C1 | min | Collimator 1 aperture (mono-sample arm) | 30 | -| OMC1 | deg | Tilt angle of the Collimator 1 | 5.5 | -| C2 | min | Collimator 2 aperture (sample-ana arm) | 28 | -| C3 | min | Collimator 3 aperture (ana-detector arm) | 67 | - -## Links - -- [Source code](TAS1_Diff_Powder.instr) for `TAS1_Diff_Powder.instr`. -- The McStas User manual -- A. Abrahamsen, N. B. Christensen, and E. Lauridsen. McStas simulations of the TAS1 spectrometer. Student's report, Niels Bohr Institute, University of Copenhagen, 1998. - ---- - -*Generated for mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/examples/Risoe/TAS1_Diff_Slit/TAS1_Diff_Slit.md b/mcstas-comps/examples/Risoe/TAS1_Diff_Slit/TAS1_Diff_Slit.md deleted file mode 100644 index 042466f78..000000000 --- a/mcstas-comps/examples/Risoe/TAS1_Diff_Slit/TAS1_Diff_Slit.md +++ /dev/null @@ -1,48 +0,0 @@ -# The `TAS1_Diff_Slit` Instrument - -*McStas: Example formerly known as linup-3.instr - -The conventional cold-source triple-axis spectrometer TAS1 at Risoe National -Laboratory used as a diffractometer for a collimation alignment study with a -slit sample.* - -## Identification - -- **Site:** Risoe -- **Author:** A. Abrahamsen, N. B. Christensen, and E. Lauridsen -- **Origin:** Risoe -- **Date:** 1998 - -## Description - -```text -This instrument is the conventional cold-source triple-axis spectrometer TAS1 -at Risoe National Laboratory. It does not exist anymore, but was used as the -first detailed work performed with the McStas package. -Here it is used as a diffractometer for a collimation alignment study. The -sample is a slit and there is no analyzer. -``` - -## Input parameters - -Parameters in **boldface** are required; the others are optional. - -| Name | Unit | Description | Default | -|------|------|-------------|---------| -| PHM | deg | Monochromator arm angle, aka A1 | -37.077 | -| TTM | deg | Monochromator take-off angle, aka A2 | -74 | -| TT | deg | Take-off angle at the sample position, aka A4 | 33.52 | -| C1 | min | Collimator 1 aperture (mono-sample arm) | 30 | -| OMC1 | deg | Tilt angle of the Collimator 1 | 5.5 | -| C2 | min | Collimator 2 aperture (sample-ana arm) | 28 | -| C3 | min | Collimator 3 aperture (ana-detector arm) | 67 | - -## Links - -- [Source code](TAS1_Diff_Slit.instr) for `TAS1_Diff_Slit.instr`. -- The McStas User manual -- A. Abrahamsen, N. B. Christensen, and E. Lauridsen. McStas simulations of the TAS1 spectrometer. Student's report, Niels Bohr Institute, University of Copenhagen, 1998. - ---- - -*Generated for mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/examples/Risoe/TAS1_Diff_Vana/TAS1_Diff_Vana.md b/mcstas-comps/examples/Risoe/TAS1_Diff_Vana/TAS1_Diff_Vana.md deleted file mode 100644 index cc2b9182b..000000000 --- a/mcstas-comps/examples/Risoe/TAS1_Diff_Vana/TAS1_Diff_Vana.md +++ /dev/null @@ -1,49 +0,0 @@ -# The `TAS1_Diff_Vana` Instrument - -*McStas: Example formerly known as linup-4.instr - -The conventional cold-source triple-axis spectrometer TAS1 at Risoe National -Laboratory used as a diffractometer for an alignment study with a -vanadium sample.* - -## Identification - -- **Site:** Risoe -- **Author:** A. Abrahamsen, N. B. Christensen, and E. Lauridsen -- **Origin:** Risoe -- **Date:** 1998 - -## Description - -```text -This instrument is the conventional cold-source triple-axis spectrometer TAS1 -at Risoe National Laboratory. It does not exist anymore, but was used as the -first detailed work performed with the McStas package. -Here it is used as a diffractometer for an alignment study. The -sample is a vanadium cylinder and there is no analyzer. -``` - -## Input parameters - -Parameters in **boldface** are required; the others are optional. - -| Name | Unit | Description | Default | -|------|------|-------------|---------| -| PHM | deg | Monochromator arm angle, aka A1 | -37.077 | -| TTM | deg | Monochromator take-off angle, aka A2 | -74 | -| TT | deg | Take-off angle at the sample position, aka A4 | 33.52 | -| TTA | deg | Take-off angle at the analyzer position, aka A6 | 0 | -| C1 | min | Collimator 1 aperture (mono-sample arm) | 30 | -| OMC1 | deg | Tilt angle of the Collimator 1 | 5.5 | -| C2 | min | Collimator 2 aperture (sample-ana arm) | 28 | -| C3 | min | Collimator 3 aperture (ana-detector arm) | 67 | - -## Links - -- [Source code](TAS1_Diff_Vana.instr) for `TAS1_Diff_Vana.instr`. -- The McStas User manual -- A. Abrahamsen, N. B. Christensen, and E. Lauridsen. McStas simulations of the TAS1 spectrometer. Student's report, Niels Bohr Institute, University of Copenhagen, 1998. - ---- - -*Generated for mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/examples/Risoe/TAS1_Powder/TAS1_Powder.md b/mcstas-comps/examples/Risoe/TAS1_Powder/TAS1_Powder.md deleted file mode 100644 index b06a22a99..000000000 --- a/mcstas-comps/examples/Risoe/TAS1_Powder/TAS1_Powder.md +++ /dev/null @@ -1,48 +0,0 @@ -# The `TAS1_Powder` Instrument - -*McStas: Example formerly known as linup-7.instr - -The conventional cold-source triple-axis spectrometer TAS1 at Risoe National -Laboratory used with a powder sample.* - -## Identification - -- **Site:** Risoe -- **Author:** A. Abrahamsen, N. B. Christensen, and E. Lauridsen -- **Origin:** Risoe -- **Date:** 1998 - -## Description - -```text -This instrument is the conventional cold-source triple-axis spectrometer TAS1 -at Risoe National Laboratory. It does not exist anymore, but was used as the -first detailed work performed with the McStas package. -The sample is a powder and the analyzer is a single plate. -``` - -## Input parameters - -Parameters in **boldface** are required; the others are optional. - -| Name | Unit | Description | Default | -|------|------|-------------|---------| -| PHM | deg | Monochromator rotation angle, aka A1 | -37.077 | -| TTM | deg | Monochromator take-off angle, aka A2 | -74 | -| TT | deg | Take-off angle at the sample position, aka A4 | 33.52 | -| TTA | deg | Take-off angle at the analyzer position, aka A6 | 0 | -| C1 | min | Collimator 1 aperture (mono-sample arm) | 30 | -| OMC1 | deg | Tilt angle of the Collimator 1 | 5.5 | -| C2 | min | Collimator 2 aperture (sample-ana arm) | 28 | -| C3 | min | Collimator 3 aperture (ana-detector arm) | 67 | -| OMA | deg | Analyzer rotation angle, aka A5 | -17.45 | - -## Links - -- [Source code](TAS1_Powder.instr) for `TAS1_Powder.instr`. -- The McStas User manual -- A. Abrahamsen, N. B. Christensen, and E. Lauridsen. McStas simulations of the TAS1 spectrometer. Student's report, Niels Bohr Institute, University of Copenhagen, 1998. - ---- - -*Generated for mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/examples/Risoe/TAS1_Vana/TAS1_Vana.md b/mcstas-comps/examples/Risoe/TAS1_Vana/TAS1_Vana.md deleted file mode 100644 index 64628e5c9..000000000 --- a/mcstas-comps/examples/Risoe/TAS1_Vana/TAS1_Vana.md +++ /dev/null @@ -1,48 +0,0 @@ -# The `TAS1_Vana` Instrument - -*McStas: Example formerly known as linup-6.instr - -The conventional cold-source triple-axis spectrometer TAS1 at Risoe National -Laboratory used with a vanadium sample.* - -## Identification - -- **Site:** Risoe -- **Author:** A. Abrahamsen, N. B. Christensen, and E. Lauridsen -- **Origin:** Risoe -- **Date:** 1998 - -## Description - -```text -This instrument is the conventional cold-source triple-axis spectrometer TAS1 -at Risoe National Laboratory. It does not exist anymore, but was used as the -first detailed work performed with the McStas package. -The sample is a vanadium and the analyzer is a single plate. -``` - -## Input parameters - -Parameters in **boldface** are required; the others are optional. - -| Name | Unit | Description | Default | -|------|------|-------------|---------| -| PHM | deg | Monochromator rotation angle, aka A1 | -37.077 | -| TTM | deg | Monochromator take-off angle, aka A2 | -74 | -| TT | deg | Take-off angle at the sample position, aka A4 | 33.52 | -| TTA | deg | Take-off angle at the analyzer position, aka A6 | 0 | -| C1 | min | Collimator 1 aperture (mono-sample arm) | 30 | -| OMC1 | deg | Tilt angle of the Collimator 1 | 5.5 | -| C2 | min | Collimator 2 aperture (sample-ana arm) | 28 | -| C3 | min | Collimator 3 aperture (ana-detector arm) | 67 | -| OMA | deg | Analyzer rotation angle, aka A5 | -17.45 | - -## Links - -- [Source code](TAS1_Vana.instr) for `TAS1_Vana.instr`. -- The McStas User manual -- A. Abrahamsen, N. B. Christensen, and E. Lauridsen. McStas simulations of the TAS1 spectrometer. Student's report, Niels Bohr Institute, University of Copenhagen, 1998. - ---- - -*Generated for mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/examples/SINE2020/McStas_Isotropic_Sqw/McStas_Isotropic_Sqw.md b/mcstas-comps/examples/SINE2020/McStas_Isotropic_Sqw/McStas_Isotropic_Sqw.md deleted file mode 100644 index f8affa992..000000000 --- a/mcstas-comps/examples/SINE2020/McStas_Isotropic_Sqw/McStas_Isotropic_Sqw.md +++ /dev/null @@ -1,61 +0,0 @@ -# The `McStas_Isotropic_Sqw` Instrument - -*McStas: Wrapper instrument for use of Isotropic_Sqw in SIMRES* - -## Identification - -- **Site:** SINE2020 -- **Author:** Peter Willendrup -- **Origin:** DTU -- **Date:** December 2018 - -## Description - -```text -This instrument provides an MCPL-based interface for the use of Isotropic_Sqw in the SIMRES package. -The instrument has been developed in the context of WP8 in the SINE2020 project and is part of -deliverable D8.8. - -(EU Horizon 2020 research and innovation programme under grant agreement No 654000). - -The default material is liquid Rb as a cylinder of radius 0.01 m x height 0.07 m - -Example: McStas_Isotropic_Sqw Sqw_coh=Rb_liq_coh.sqw Sqw_inc=Rb_liq_inc.sqw radius=0.01 yheight=0.07 -``` - -## Input parameters - -Parameters in **boldface** are required; the others are optional. - -| Name | Unit | Description | Default | -|------|------|-------------|---------| -| Sqw_coh | string | Name of the file containing the values of Q, w and S(Q,w) Coherent part; Q in Angs-1, E in meV, S(q,w) in meV-1. Use 0, NULL or "" to disable. | "Rb_liq_coh.sqw" | -| Sqw_inc | string | Name of the file containing the values of Q, w and S(Q,w). Incoherent (self) part. Use 0, NULL or "" to scatter isotropically (V-like). | "Rb_liq_inc.sqw" | -| geometry | string | Name of an Object File Format (OFF) or PLY file for complex geometry. | "" | -| radius | m | Sample radius | 0.01 | -| xwidth | m | Sample width along x | 0 | -| yheight | m | Sample height along y | 0.07 | -| zdepth | m | Sample depth along z | 0 | -| thickness | m | Thickness of hollow sample Negative value extends the hollow volume outside of the box/cylinder. | 0 | -| threshold | m | Value under which S(Q,w) is not accounted for. to set according to the S(Q,w) values, i.e. not too low. | 1e-20 | -| T | K | Temperature of sample, detailed balance. Use T=0 to disable it. and T=-1 to automatically set it from non-classical S(q,w). | 0 | -| d_phi | deg | Vertical focusing limit [deg] | 0 | -| verbose | 1 | Verbosity level (0:silent, 1:normal, 2:verbose, 3:debug). A verbosity>1 also computes dispersions and S(q,w) analysis. | 1 | -| classical | 1 | Assumes the S(q,w) data from the files is a classical S(q,w), and multiply that data by exp(hw/2kT) on up/down energy sides. Use 0 when obtained from raw experiments, 1 from molecular dynamics. Use -1 to guess from a data set including both energy sides. | -1 | -| powder_barns | 1 | 0 when \|F2\| data in powder file are fm^2, 1 when in barns (barns=1 for laz, barns=0 for lau type files). | 1 | -| quantum_correction | str | Specify the type of quantum correction to use "Boltzmann"/"Schofield","harmonic"/"Bader" or "standard"/"Frommhold" (default) | "standard" | -| norm | 1 | Normalize S(q,w) when -1 (default). Use raw data when 0, multiply S(q,w) when norm>0. | -1 | -| rot_x | deg | Sample rotation around x | 0 | -| rot_y | deg | Sample rotation around y | 0 | -| rot_z | deg | Sample rotation around z | 0 | - -## Links - -- [Source code](McStas_Isotropic_Sqw.instr) for `McStas_Isotropic_Sqw.instr`. -- Website for the MCPL particle exchange format -- Website for the SIMRES package -- Website for WP8 in EU-SINE2020 - ---- - -*Generated for mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/examples/SINE2020/McStas_PowderN/McStas_PowderN.md b/mcstas-comps/examples/SINE2020/McStas_PowderN/McStas_PowderN.md deleted file mode 100644 index 39e3812ce..000000000 --- a/mcstas-comps/examples/SINE2020/McStas_PowderN/McStas_PowderN.md +++ /dev/null @@ -1,58 +0,0 @@ -# The `McStas_PowderN` Instrument - -*McStas: Wrapper instrument for use of PowderN in SIMRES* - -## Identification - -- **Site:** SINE2020 -- **Author:** Peter Willendrup -- **Origin:** DTU -- **Date:** December 2018 - -## Description - -```text -This instrument provides an MCPL-based interface for the use of PowderN in the SIMRES package. -The instrument has been developed in the context of WP8 in the SINE2020 project and is part of -deliverable D8.8. - -(EU Horizon 2020 research and innovation programme under grant agreement No 654000). - -The default material is Al as a cylinder of radius 0.01 m x height 0.07 m - -Example: McStas_PowderN reflections=Al.lau radius=0.01 yheight=0.07 -``` - -## Input parameters - -Parameters in **boldface** are required; the others are optional. - -| Name | Unit | Description | Default | -|------|------|-------------|---------| -| reflections | string | Input file for reflections, laz and lau formats from McStas accepted | "Al.lau" | -| geometry | string | Name of an Object File Format (OFF) or PLY file for complex geometry. | "" | -| radius | m | Sample radius | 0.01 | -| xwidth | m | Sample width along x | 0 | -| yheight | m | Sample height along y | 0.07 | -| zdepth | m | Sample depth along z | 0 | -| thickness | m | Thickness of hollow sample | 0 | -| pack | m | Packing factor. | 1 | -| d_omega | deg | Horizontal (incoherent only) focusing limit [deg] | 0 | -| d_phi | deg | Vertical focusing limit [deg] | 0 | -| focus_flip | 1 | Controls the sense of d_phi. If 0 d_phi is measured against the xz-plane. If nonzero, d_phi is measured against zy-plane. | 0 | -| tth_sign | 1 | Sign of the scattering angle. If 0, the sign is chosen randomly | 0 | -| barns | 1 | Flag to indicate if \|F 2\| from "reflections" is in barns or fm2 (barns = 1 for laz, barns = 0 for lau type files). | 0 | -| rot_x | deg | Sample rotation around x | 0 | -| rot_y | deg | Sample rotation around y | 0 | -| rot_z | deg | Sample rotation around z | 0 | - -## Links - -- [Source code](McStas_PowderN.instr) for `McStas_PowderN.instr`. -- Website for the MCPL particle exchange format -- Website for the SIMRES package -- Website for WP8 in EU-SINE2020 - ---- - -*Generated for mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/examples/SINE2020/McStas_Single_crystal/McStas_Single_crystal.md b/mcstas-comps/examples/SINE2020/McStas_Single_crystal/McStas_Single_crystal.md deleted file mode 100644 index 8f4ebcad2..000000000 --- a/mcstas-comps/examples/SINE2020/McStas_Single_crystal/McStas_Single_crystal.md +++ /dev/null @@ -1,58 +0,0 @@ -# The `McStas_Single_crystal` Instrument - -*McStas: Wrapper for use of Single_crystal in SIMRES* - -## Identification - -- **Site:** SINE2020 -- **Author:** Erik B Knudsen erkn@fysik.dtu.dk -- **Origin:** DTU Physics -- **Date:** Dec. 2018 - -## Description - -```text -This instrument provides an MCPL-based interface for the use of Single_crystal in the SIMRES package. -The instrument has been developed in the context of WP8 in the SINE2020 project and is part of -deliverable D8.8. - -(EU Horizon 2020 research and innovation programme under grant agreement No 654000). - -The default material is Al as a cylinder of radius 0.01 m x height 0.02 m - -Example: McStas_Single_crystal reflections=Al.lau radius=0.01 yheight=0.02 -``` - -## Input parameters - -Parameters in **boldface** are required; the others are optional. - -| Name | Unit | Description | Default | -|------|------|-------------|---------| -| reflections | string | Input file for reflections, laz and lau formats from McStas accepted | "Al.lau" | -| geometry | string | Name of an Object File Format (OFF) or PLY file for complex geometry. | "" | -| radius | m | Sample radius | 1e-2 | -| xwidth | m | Sample width along x | 0 | -| yheight | m | Sample height along y | 2e-2 | -| zdepth | m | Sample depth along z | 0 | -| delta_d_d | 1 | Lattice spacing variance, gaussian RMS | 1e-3 | -| mosaic | arc minutes | Crystal mosaic (isotropic), gaussian RMS. Puts the crystal in the isotropic mosaic model state, thus disregarding other mosaicity parameters. | 1 | -| mosaic_a | arc minutes | Horizontal (rotation around lattice vector a) mosaic (anisotropic), gaussian RMS. Put the crystal in the anisotropic crystal vector state. I.e. model mosaicity through rotation around the crystal lattice vectors. Has precedence over in-plane mosaic model. | 0 | -| mosaic_b | arc minutes | Vertical (rotation around lattice vector b) mosaic (anisotropic), gaussian RMS. | 0 | -| mosaic_c | arc minutes | Out-of-plane (Rotation around lattice vector c) mosaic (anisotropic), gaussian RMS | 0 | -| barns | 1 | Flag to indicate if \|F 2\| from "reflections" is in barns or fm2 (barns = 1 for laz, barns = 0 for lau type files). | 0 | -| order | 1 | Limit multiple scattering up to given order (0: all, 1: first, 2: second, ...) | 0 | -| rot_x | deg | Sample rotation around x | 0 | -| rot_y | deg | Sample rotation around y | 0 | -| rot_z | deg | Sample rotation around z | 0 | - -## Links - -- [Source code](McStas_Single_crystal.instr) for `McStas_Single_crystal.instr`. -- Website for the MCPL particle exchange format -- Website for the SIMRES package -- Website for WP8 in EU-SINE2020 - ---- - -*Generated for mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/examples/SNS/Gallmeier_SNS_decoupled_poisoned/Gallmeier_SNS_decoupled_poisoned.md b/mcstas-comps/examples/SNS/Gallmeier_SNS_decoupled_poisoned/Gallmeier_SNS_decoupled_poisoned.md deleted file mode 100644 index e4809e74c..000000000 --- a/mcstas-comps/examples/SNS/Gallmeier_SNS_decoupled_poisoned/Gallmeier_SNS_decoupled_poisoned.md +++ /dev/null @@ -1,34 +0,0 @@ -# The `Gallmeier_SNS_decoupled_poisoned` Instrument - -*McStas: Simple instrumentfile for estimating SNS brilliance, moderator is a the Gallmeier SNS_source_analytic applying Ikeda-Carpenter vs. Pade function fits to MCNPX tables.* - -## Identification - -- **Site:** SNS -- **Author:** Peter Willendrup -- **Origin:** DTU Physics -- **Date:** May 29,2013 - -## Description - -```text -Simple instrumentfile for estimating SNS brilliance, moderator is a the Gallmeier SNS_source_analytic applying Ikeda-Carpenter vs. Pade function fits to MCNPX tables. -``` - -## Input parameters - -Parameters in **boldface** are required; the others are optional. - -| Name | Unit | Description | Default | -|------|------|-------------|---------| -| Lambda_min | AA | Minimum wavelength produced at source | 0.5 | -| Lambda_max | AA | Maximum wavelength produced at source | 20 | -| filename | str | Source input file from $MCSTAS/data | "a1Gw2-2-f5_fit_fit.dat" | - -## Links - -- [Source code](Gallmeier_SNS_decoupled_poisoned.instr) for `Gallmeier_SNS_decoupled_poisoned.instr`. - ---- - -*Generated for mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/examples/SNS/Granroth_SNS_decoupled_poisoned/Granroth_SNS_decoupled_poisoned.md b/mcstas-comps/examples/SNS/Granroth_SNS_decoupled_poisoned/Granroth_SNS_decoupled_poisoned.md deleted file mode 100644 index 3463cfb31..000000000 --- a/mcstas-comps/examples/SNS/Granroth_SNS_decoupled_poisoned/Granroth_SNS_decoupled_poisoned.md +++ /dev/null @@ -1,34 +0,0 @@ -# The `Granroth_SNS_decoupled_poisoned` Instrument - -*McStas: Simple instrumentfile for estimating SNS brilliance, moderator is a the Granroth SNS_source applying linear interpolation in MCNPX tables.* - -## Identification - -- **Site:** SNS -- **Author:** Peter Willendrup -- **Origin:** DTU Physics -- **Date:** May 29,2013 - -## Description - -```text -Simple instrumentfile for estimating SNS brilliance, moderator is a the Granroth SNS_source applying linear interpolation in MCNPX tables. -``` - -## Input parameters - -Parameters in **boldface** are required; the others are optional. - -| Name | Unit | Description | Default | -|------|------|-------------|---------| -| Lambda_min | AA | Minimum wavelength produced at source | 0.5 | -| Lambda_max | AA | Maximum wavelength produced at source | 20 | -| filename | str | Source input file from $MCSTAS/data | "source_sct091_tu_02_1.dat" | - -## Links - -- [Source code](Granroth_SNS_decoupled_poisoned.instr) for `Granroth_SNS_decoupled_poisoned.instr`. - ---- - -*Generated for mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/examples/SNS/Mezei_SNS_decoupled_poisoned/Mezei_SNS_decoupled_poisoned.md b/mcstas-comps/examples/SNS/Mezei_SNS_decoupled_poisoned/Mezei_SNS_decoupled_poisoned.md deleted file mode 100644 index b77158b52..000000000 --- a/mcstas-comps/examples/SNS/Mezei_SNS_decoupled_poisoned/Mezei_SNS_decoupled_poisoned.md +++ /dev/null @@ -1,35 +0,0 @@ -# The `Mezei_SNS_decoupled_poisoned` Instrument - -*McStas: Simple instrumentfile for estimating SNS brilliance, moderator is a rescaled ESS short-pulsed Mezei description.* - -## Identification - -- **Site:** SNS -- **Author:** Peter Willendrup -- **Origin:** DTU Physics -- **Date:** May 2913 - -## Description - -```text -ESCRIPTION - -Simple instrumentfile for estimating SNS brilliance, moderator is a rescaled ESS short-pulsed Mezei description. -``` - -## Input parameters - -Parameters in **boldface** are required; the others are optional. - -| Name | Unit | Description | Default | -|------|------|-------------|---------| -| Lambda_min | AA | Minimum wavelength produced at source | 0.5 | -| Lambda_max | AA | Maximum wavelength produced at source | 20 | - -## Links - -- [Source code](Mezei_SNS_decoupled_poisoned.instr) for `Mezei_SNS_decoupled_poisoned.instr`. - ---- - -*Generated for mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/examples/SNS/SNS_ARCS/SNS_ARCS.md b/mcstas-comps/examples/SNS/SNS_ARCS/SNS_ARCS.md deleted file mode 100644 index c325daf02..000000000 --- a/mcstas-comps/examples/SNS/SNS_ARCS/SNS_ARCS.md +++ /dev/null @@ -1,53 +0,0 @@ -# The `SNS_ARCS` Instrument - -*McStas: Model of the ARCS spectrometer from SNS.* - -## Identification - -- **Site:** SNS -- **Author:** G. Granroth -- **Origin:** SNS -- **Date:** Nov 2014 - -## Description - -```text -When using this ARCS instrument model, please reference -
      -
    • Granroth, G. E. and Abernathy, D. L., "Performance Comparisons of Four Direct Geometry -Spectrometers Planned for Spallation Neutron Source", Proceedings of ICANS-XVI, 289 (2003). -
    • D. L. Abernathy, M. B. Stone, M. J. Loguillo, M. S. Lucas, O. Delaire, X.Tang, J. Y. Y. Lin, and -B. Fultz,"Design and operation of the wide angular-range chopper spectrometer ARCS at the -Spallation Neutron Source", Review of Scientific Instruments, 83 , 015114 (2012)
    -``` - -## Input parameters - -Parameters in **boldface** are required; the others are optional. - -| Name | Unit | Description | Default | -|------|------|-------------|---------| -| filename | | | "source_sct521_bu_17_1.dat" | -| Fermi_nu | Hz | Frequency of the Fermi chopper | 420 | -| T0_nu | Hz | Frequency of the T0 chopper | 90 | -| nrad | m | Radius of the Fermi chopper blades | 0.58 | -| nchans | 1 | Number of channels in the Fermi chopper | 40 | -| Edes | meV | Desired/target energy | 50 | -| Et | meV | Energy transfer of the Spot_sample | 25 | -| ttheta | deg | Scattering angle of the Spot_sample | 25 | -| T0_off | | | 0 | -| sxmin | m | Sample slit horz min value | -0.04 | -| sxmax | m | Sample slit horz max value | 0.04 | -| symin | m | Sample slit vert min value | -0.04 | -| symax | m | Sample slit vert max value | 0.04 | -| run_num | 1 | Virtual source run number (unused at present) | 1 | - -## Links - -- [Source code](SNS_ARCS.instr) for `SNS_ARCS.instr`. --
    Granroth, G. E. and Abernathy, D. L., "Performance Comparisons of Four Direct Geometry Spectrometers Planned for Spallation Neutron Source", Proceedings of ICANS-XVI, 289 (2003). --
    D. L. Abernathy, M. B. Stone, M. J. Loguillo, M. S. Lucas, O. Delaire, X.Tang, J. Y. Y. Lin, and B. Fultz,"Design and operation of the wide angular-range chopper spectrometer ARCS at the Spallation Neutron Source", Review of Scientific Instruments, 83 , 015114 (2012) - ---- - -*Generated for mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/examples/SNS/SNS_BASIS/SNS_BASIS.md b/mcstas-comps/examples/SNS/SNS_BASIS/SNS_BASIS.md deleted file mode 100644 index efa45bef1..000000000 --- a/mcstas-comps/examples/SNS/SNS_BASIS/SNS_BASIS.md +++ /dev/null @@ -1,71 +0,0 @@ -# The `SNS_BASIS` Instrument - -*McStas: Written by: N.Tsapatsaris (nikolaos.tsapatsaris@esss.se) and Peter K. Wilendrup (pkwi@fysik.dtu.dk)* - -## Identification - -- **Site:** SNS -- **Author:** N.Tsapatsaris (nikolaos.tsapatsaris@esss.se) and Peter K. Wilendrup (pkwi@fysik.dtu.dk) -- **Origin:** NBI -- **Date:** 2013-2015 - -## Description - -```text -ESCRIPTION -The approximative, analytic SNS Source description of this instrument is realised -by use of the ESS_moderator_short model, but weighted due to the opposite moderator -arrangement at the SNS and at the once-planned ESS short pluse facility. The correct -SNS Source File to use with SNS_Source is source_sct091_tu_02_1.dat. - -The instrument serves as a test instrument for the components -Spherical_Backscattering_Analyser, also written by by Niko Tsapatsaris with help from -Peter Willendrup and Guide_m by Niko Tsapatsaris. - -The instrument is based on models initially written by -A) REL (ruep.lechner@gmail.com) and HNB (bordallo@nbi.ku.dk) with contributions -from Johan Jacobsen (johan.fett@gmail.com) -B) G. Granroth - -A virtual experiment on BASIS i.e. a comparison with real and simulation results were -published in AIP conference,DOI: 10.1051/epjconf/20158303015 and RSI, DOI: 10.1063/1.4961569 - -Instrument geometry parameters etc. were taken from the publication: -"A time-of-flight backscattering spectrometer at the Spallation Neutron Source, BASIS" by -Mamontov, E.; Herwig, K. W.; Neutron Scattering Science Division, Oak Ridge National Laboratory, -Oak Ridge, Tennessee 37831, USA, in Review of Scientific Instruments,82(8),085109 - 085109-10, 2011 - -This simulation uses the sample component Isotropic_Sqw. We are using the description for a Vanadium -hollow cylindrical sample. One Arm Component is used to place the Analyser Component at an angle -defined as ROT1. -``` - -## Input parameters - -Parameters in **boldface** are required; the others are optional. - -| Name | Unit | Description | Default | -|------|------|-------------|---------| -| Lam | AA | Wavelength selected by the chopper system | 6.4 | -| Lambda_min | AA | Minimum wavelength produced at the source | 5 | -| Lambda_max | AA | Maximum wavelength produced at the source | 7 | -| RadCurv | m | Radius of Curvature of the guide system | 1000 | -| omega1 | Hz | Frequency of the first DiskChopper | 60 | -| omega2 | Hz | Frequency of the second DiskChopper | 60 | -| omega3 | Hz | Frequency of the third DiskChopper | 60 | -| ch1_open | deg | Angular opening of the first Diskchopper | 51.4 | -| ch2_open | deg | Angular opening of the second Diskchopper | 57.6 | -| ch3_open | deg | Angular opening of the third Diskchopper | 171.1 | -| ROT1 | deg | Positioning of central analyser wrt. the incoming beam, in the scattering plane | 90 | -| AN_ROT | deg | Out-of-plane rotation of analysers wrt. scattering plane | 2 | -| TOTAL_LENGTH | m | Total length of the guide system | 84 | -| dROT | deg | Positioning of neighbouring analysers wrt. central analyser | 11 | - -## Links - -- [Source code](SNS_BASIS.instr) for `SNS_BASIS.instr`. -- A reference/HTML link for more information - ---- - -*Generated for mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/examples/SNS/SNS_analytic_test/SNS_analytic_test.md b/mcstas-comps/examples/SNS/SNS_analytic_test/SNS_analytic_test.md deleted file mode 100644 index 437112d09..000000000 --- a/mcstas-comps/examples/SNS/SNS_analytic_test/SNS_analytic_test.md +++ /dev/null @@ -1,36 +0,0 @@ -# The `SNS_analytic_test` Instrument - -*McStas: Simple test instrument for the SNS_source component.* - -## Identification - -- **Site:** SNS -- **Author:** G. Granroth -- **Origin:** SNS Project Oak Ridge National Laboratory -- **Date:** July 2004 - -## Description - -```text -Simple test instrument for the SNS_source component. -Refer to SNS Source files. -``` - -## Input parameters - -Parameters in **boldface** are required; the others are optional. - -| Name | Unit | Description | Default | -|------|------|-------------|---------| -| filename | string | Source file | "a1Gw2-5-f5_fit_fit.dat" | - -## Links - -- [Source code](SNS_analytic_test.instr) for `SNS_analytic_test.instr`. -- Written by G. Granroth -- SNS_source component -- Source files - ---- - -*Generated for mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/examples/SNS/SNS_test/SNS_test.md b/mcstas-comps/examples/SNS/SNS_test/SNS_test.md deleted file mode 100644 index 9ff2523f3..000000000 --- a/mcstas-comps/examples/SNS/SNS_test/SNS_test.md +++ /dev/null @@ -1,36 +0,0 @@ -# The `SNS_test` Instrument - -*McStas: Simple test instrument for the SNS_source component.* - -## Identification - -- **Site:** SNS -- **Author:** G. Granroth -- **Origin:** SNS Project Oak Ridge National Laboratory -- **Date:** July 2004 - -## Description - -```text -Simple test instrument for the SNS_source component. -Refer to SNS Source files. -``` - -## Input parameters - -Parameters in **boldface** are required; the others are optional. - -| Name | Unit | Description | Default | -|------|------|-------------|---------| -| filename | string | Source input file | "source_sct091_tu_02_1.dat" | - -## Links - -- [Source code](SNS_test.instr) for `SNS_test.instr`. -- Written by G. Granroth -- SNS_source component -- Source files - ---- - -*Generated for mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/examples/TRIGA/RTP_DIF/RTP_DIF.md b/mcstas-comps/examples/TRIGA/RTP_DIF/RTP_DIF.md deleted file mode 100644 index 93a2abfa0..000000000 --- a/mcstas-comps/examples/TRIGA/RTP_DIF/RTP_DIF.md +++ /dev/null @@ -1,38 +0,0 @@ -# The `RTP_DIF` Instrument - -*McStas: A powder diffractometer at Reactor TRIGA PUSPATI (Malaysia)* - -## Identification - -- **Site:** TRIGA -- **Author:** E. Farhi and Megat Harun Al-Rashid -- **Origin:** ILL/RTP -- **Date:** June 2014 - -## Description - -```text - -``` - -## Input parameters - -Parameters in **boldface** are required; the others are optional. - -| Name | Unit | Description | Default | -|------|------|-------------|---------| -| lambda | Angs | Monochromator selected wavelength | 2.36 | -| DM | Angs | d-spacing for the monochromator reflection | 3.355 | -| Mono_tilt | deg | Tilt angle magnitude for the inner/outer mono slabs | 0 | -| powder | str | Filename of the powder sample | "Na2Ca3Al2F14.laz" | -| det_rotation | deg | Rotation of the portable detector | 45 | - -## Links - -- [Source code](RTP_DIF.instr) for `RTP_DIF.instr`. -- Nuclear Malaysia -- M. Sufi et al., J. AppL Cryst. (1997). 30, 884-888 [doi:10.1107/S0021889897001738] - ---- - -*Generated for mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/examples/TRIGA/RTP_Laue/RTP_Laue.md b/mcstas-comps/examples/TRIGA/RTP_Laue/RTP_Laue.md deleted file mode 100644 index e8b867ea7..000000000 --- a/mcstas-comps/examples/TRIGA/RTP_Laue/RTP_Laue.md +++ /dev/null @@ -1,38 +0,0 @@ -# The `RTP_Laue` Instrument - -*McStas: The NR instrument installed at Reactor TRIGA PUSPATI (Malaysia)* - -## Identification - -- **Site:** TRIGA -- **Author:** E. Farhi and Megat Harun Al-Rashid -- **Origin:** ILL/RTP -- **Date:** June 2014 - -## Description - -```text -This is a radiography installed on a radial beam port 3 at the Reactor TRIGA -PUSPATI (RTP). It uses a thermal beam port. -``` - -## Input parameters - -Parameters in **boldface** are required; the others are optional. - -| Name | Unit | Description | Default | -|------|------|-------------|---------| -| theta | deg | horizontal rotation of the object | 0 | -| phi | deg | vertical rotation of the object | 0 | -| det_rotation | deg | detector rotation around the sample | 0 | -| reflections | str | sample configuration | "leucine.lau" | - -## Links - -- [Source code](RTP_Laue.instr) for `RTP_Laue.instr`. -- Nuclear Malaysia -- M. Sufi et al., J. AppL Cryst. (1997). 30, 884-888 [doi:10.1107/S0021889897001738] - ---- - -*Generated for mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/examples/TRIGA/RTP_NeutronRadiography/RTP_NeutronRadiography.md b/mcstas-comps/examples/TRIGA/RTP_NeutronRadiography/RTP_NeutronRadiography.md deleted file mode 100644 index b2770692c..000000000 --- a/mcstas-comps/examples/TRIGA/RTP_NeutronRadiography/RTP_NeutronRadiography.md +++ /dev/null @@ -1,37 +0,0 @@ -# The `RTP_NeutronRadiography` Instrument - -*McStas: The radiography instrument installed at Reactor TRIGA PUSPATI (Malaysia)* - -## Identification - -- **Site:** TRIGA -- **Author:** E. Farhi and Megat Harun Al-Rashid -- **Origin:** ILL/RTP -- **Date:** June 2014 - -## Description - -```text -This is a radiography station installed on a radial beam port 3 at the Reactor TRIGA -PUSPATI (RTP). It uses the thermal beam port 3. -The sample is made of 2 concentric cylinders made of Cu and Fe. -``` - -## Input parameters - -Parameters in **boldface** are required; the others are optional. - -| Name | Unit | Description | Default | -|------|------|-------------|---------| -| theta | deg | horizontal rotation of the object | 0 | -| phi | deg | vertical rotation of the object | 0 | - -## Links - -- [Source code](RTP_NeutronRadiography.instr) for `RTP_NeutronRadiography.instr`. -- Nuclear Malaysia -- M. Sufi et al., J. AppL Cryst. (1997). 30, 884-888 [doi:10.1107/S0021889897001738] - ---- - -*Generated for mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/examples/TRIGA/RTP_SANS/RTP_SANS.md b/mcstas-comps/examples/TRIGA/RTP_SANS/RTP_SANS.md deleted file mode 100644 index 268a2a0ab..000000000 --- a/mcstas-comps/examples/TRIGA/RTP_SANS/RTP_SANS.md +++ /dev/null @@ -1,51 +0,0 @@ -# The `RTP_SANS` Instrument - -*McStas: The SANS instrument installed at Reactor TRIGA PUSPATI (Malaysia)* - -## Identification - -- **Site:** TRIGA -- **Author:** E. Farhi and Megat Harun Al-Rashid -- **Origin:** ILL/RTP -- **Date:** June 2014 - -## Description - -```text -This is a 4m long SANS installed on a radial beam port 4 at the Reactor TRIGA -PUSPATI (RTP). Te beam port 4 is a radial tube that originates from the core, -through the graphite reflector. A thick Be filter selects the cold tail of the -thermal spectrum, and removes higher order PG reflections. -A PG(002) monochromator selects the 5A neutrons that are sent into a 4m - 4m -SANS with a 60 cm PSD detector 128x128 pixels. -The monochromator is here used in fixed double focusing geometry. -The accessible Q range is then 0.01-0.1 Angs-1. - -This model contains a detailed description of the Be filter, monochromator -and SANS set-up. The Be filter is in the monochromator block. - -Example: mcrun RTP_SANS.instr lambda=5 -``` - -## Input parameters - -Parameters in **boldface** are required; the others are optional. - -| Name | Unit | Description | Default | -|------|------|-------------|---------| -| lambda | Angs | monochromator selected wavelength | 5 | -| DM | Angs | d-spacing for the monochromator reflection | 3.355 | -| dlambda | Angs | monochromator wavelength spread | .2 | -| Be_Filter_depth | m | Depth of Be filter | .15 | -| Mono_tilt | deg | angle tilt between the 3 monochromator layers | -1 | -| mono_rotation | deg | additional monochromator offset rotation for e.g rocking curves | 0 | - -## Links - -- [Source code](RTP_SANS.instr) for `RTP_SANS.instr`. -- Nuclear Malaysia -- M. Sufi et al., J. AppL Cryst. (1997). 30, 884-888 [doi:10.1107/S0021889897001738] - ---- - -*Generated for mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/examples/TUDelft/SEMSANS_Delft/SEMSANS_Delft.md b/mcstas-comps/examples/TUDelft/SEMSANS_Delft/SEMSANS_Delft.md deleted file mode 100644 index f1f0cef0a..000000000 --- a/mcstas-comps/examples/TUDelft/SEMSANS_Delft/SEMSANS_Delft.md +++ /dev/null @@ -1,48 +0,0 @@ -# The `SEMSANS_Delft` Instrument - -*McStas: Idealised SESANS instrument using magnetised foil flippers with realistic sample* - -## Identification - -- **Site:** TUDelft -- **Author:** Wim Bouwman (w.g.bouwman@tudelft.nl), Peter Willendrup and Erik Knudsen -- **Origin:** Delft University of Technology -- **Date:** December 2019 - -## Description - -```text -A full description of the instrument can be found in J. Appl. Cryst. (2021) V. 54 https://doi.org/10.1107/S1600576720015496 -The instrument has the bare essentials to simulate the Larmor precession of the neutron spins in the foil flippers and the -geometry and wavelength distribution of a version of SEMSANS that can be made from the SESANS in Delft as described in -Physica B 406(2011)2357–2360 https://doi.org/10.1016/j.physb.2010.11.069 -An essential component is the realistic SANS sample, describing both the scattered and transmitted neutron, including multiple scattering. -For a full SEMSANS scan the applied magnetic field By has to be scanned. -It is best to run it twice with the analyser in up and down orientation. -In principle the sample can be removed to study the empty beam instrument, which with this idealised setup have perfect polarisation. -It is possible to monitor the evolution of the polarisation with several polarisation monitors that have beeen commented in this version. -The foil-angle, thickness and wavelength yield now matched parameters to have the SESANS working. -These parameter and the sphere radius match now with the magnetic fields below to get a good measurement range. -A pretty high number of neutrons is needed to get good statistics in the fine position sensitive detector. -``` - -## Input parameters - -Parameters in **boldface** are required; the others are optional. - -| Name | Unit | Description | Default | -|------|------|-------------|---------| -| L0 | AA | nominal wavelength | 2.165 | -| DL | AA | wavelength band width | 0.02 | -| By | T | Applied magnetic field in foil flippers | 4.68e-3 | -| AnaSign | | Direction of analyser (-1 or 1) | 1 | - -## Links - -- [Source code](SEMSANS_Delft.instr) for `SEMSANS_Delft.instr`. -- -- https://doi.org/10.1107/S1600576720015496 - ---- - -*Generated for mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/examples/TUDelft/SEMSANS_instrument/SEMSANS_instrument.md b/mcstas-comps/examples/TUDelft/SEMSANS_instrument/SEMSANS_instrument.md deleted file mode 100644 index 766543574..000000000 --- a/mcstas-comps/examples/TUDelft/SEMSANS_instrument/SEMSANS_instrument.md +++ /dev/null @@ -1,69 +0,0 @@ -# The `SEMSANS_instrument` Instrument - -*McStas: SEMSANS-instrument* - -## Identification - -- **Site:** TUDelft -- **Author:** Morten Sales -- **Origin:** Copenhagen, Berlin, Delft -- **Date:** 2014 - -## Description - -```text -SEMSANS instrument with 2 isosceles triangular field coils -``` - -## Input parameters - -Parameters in **boldface** are required; the others are optional. - -| Name | Unit | Description | Default | -|------|------|-------------|---------| -| triacoil_depth | m | Half of the triangular coil depth in z-direction (one right triangle) | 1.935000e-01 | -| triacoil_width | m | xwidth of triangular coil | 7.042824e-02 | -| triacoil_height | m | yheight of triangular coil | 3.000000e-01 | -| pol_zdepth | m | Depth of the polariser along z | 9.300000e-01 | -| vcoil_zdepth | m | Depth along z of the v-coil flipper | 1.500000e-01 | -| Guide1_depth | m | Depth of first guide/precession field section | 1.650000e-02 | -| Guide2_depth | m | Depth of second guide/precession field section | 3.315000e-01 | -| Guide3_depth | m | Depth of third guide/precession field section | 3.315000e-01 | -| Guide4_depth | m | Depth of fourth guide/precession field section | 5.650000e-02 | -| Bguide | T | Field strength of guide/precession field | -5.000000e-04 | -| Bextra | T | Field strength of extra field in guide field 1 to acheive echo | -2.120000e-02 | -| Bt2 | T | Field in first triangular coil | -4.440000e-03 | -| Bt1 | T | Field in second triangular coil | -2.560000e-03 | -| DLambda | AA | Wavelength spread from source (half of it) | 4.166366e+00 | -| Lambda | AA | Mean wavelength | 4.559500e+00 | -| flippos | m | Position (away from position set by vcoil_34_pos) of pi-flipper | 3.100000e-02 | -| FLIP | 1 | Choose polarisation direction using v-coil pi/2-flipper (1 is down, -1 is up) | 1.000000e+00 | -| chop1_pos | m | Position of first chopper | 5.000000e-01 | -| chop2_pos | m | Position of second chopper | 9.740000e-01 | -| pol_pos | m | Position of polariser | 1.907000e+00 | -| analyser_pos | m | Position of analyser | 6.072000e+00 | -| grating_w | m | Width of transmitting part of grating | 1.570000e-03 | -| grating_a | m | Width of absorbing part of grating | 2.930000e-03 | -| slit_1_pos | m | Position of first slit | 2.957000e+00 | -| slit_2_pos | m | Position of second slit | 5.437000e+00 | -| Guide1_pos | m | Position of first guide/precession field | 3.307000e+00 | -| Guide2_pos | m | Position of second guide/precession field | 3.710500e+00 | -| Guide3_pos | m | Position of third guide/precession field | 4.342000e+00 | -| Guide4_pos | m | Position of fourth guide/precession field | 5.060500e+00 | -| vcoil_12_pos | m | Position of first v-coil pair | 3.157000e+00 | -| vcoil_34_pos | m | Position of second v-coil pair | 4.192000e+00 | -| vcoil_56_pos | m | Position of third v-coil pair | 5.267000e+00 | -| triacoil_1_pos | m | Position of first triangular coil (centre) | 3.517000e+00 | -| triacoil_2_pos | m | Position of second triangular coil (centre) | 4.867000e+00 | -| grating_pos | m | Position of grating | 6.757000e+00 | -| detector_pos | m | Position of detector | 6.957000e+00 | -| tlow | mu-s | tmin of detector | 2.190523040779461e+03 | -| thigh | mu-s | tmax of detector | 1.214744595341338e+04 | - -## Links - -- [Source code](SEMSANS_instrument.instr) for `SEMSANS_instrument.instr`. - ---- - -*Generated for mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/examples/TUDelft/SESANS_Delft/SESANS_Delft.md b/mcstas-comps/examples/TUDelft/SESANS_Delft/SESANS_Delft.md deleted file mode 100644 index 1b51e55d6..000000000 --- a/mcstas-comps/examples/TUDelft/SESANS_Delft/SESANS_Delft.md +++ /dev/null @@ -1,47 +0,0 @@ -# The `SESANS_Delft` Instrument - -*McStas: Idealised SESANS instrument using magnetised foil flippers with realistic sample* - -## Identification - -- **Site:** TUDelft -- **Author:** Wim Bouwman (w.g.bouwman@tudelft.nl), Peter Willendrup and Erik Knudsen -- **Origin:** Delft University of Technology -- **Date:** December 2019 - -## Description - -```text - -A full description of the instrument can be found in J. Appl. Cryst. (2021) V. 54 https://doi.org/10.1107/S1600576720015496 -The instrument has the bare essentials to simulate the Larmor precession of the neutron spins in the foil flippers and the -geometry and wavelength distribution of the SESANS in Delft as described in -Rev. Sci. Instrum. 76, 033901 (2005) https://doi.org/10.1063/1.1858579 -An essential component is the realistic SANS sample, describing both the scattered and transmitted neutron, including multiple scattering. -In one scattering simulation both the up- and down intensities are simulated. -For a full SESANS scan the applied magnetic field By has to be scanned. -In principle the sample can be removed to study the empty beam instrument, which with this idealised setup have perfect polarisation. -It is possible to monitor the evolution of the polarisation with several polarisation monitors that have beeen commented in this version. -The foil-angle, thickness and wavelength yield now matched parameters to have the SESANS working. -These parameter and the sphere radius match now with the magnetic fields below to get a good measurement range. -``` - -## Input parameters - -Parameters in **boldface** are required; the others are optional. - -| Name | Unit | Description | Default | -|------|------|-------------|---------| -| L0 | AA | nominal wavelength | 2.165 | -| DL | AA | wavelength band width | 0.02 | -| By | T | Applied magnetic field in foil flippers | 4.68e-3 | - -## Links - -- [Source code](SESANS_Delft.instr) for `SESANS_Delft.instr`. -- -- https://doi.org/10.1107/S1600576720015496 - ---- - -*Generated for mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/examples/Templates/BTsimple/BTsimple.md b/mcstas-comps/examples/Templates/BTsimple/BTsimple.md deleted file mode 100644 index 56cb5e26c..000000000 --- a/mcstas-comps/examples/Templates/BTsimple/BTsimple.md +++ /dev/null @@ -1,42 +0,0 @@ -# The `BTsimple` Instrument - -*McStas: Example instrument showing how to calculate brilliance transfer using L_monitor's and WHEN statements* - -## Identification - -- **Site:** Templates -- **Author:** Peter Willendrup -- **Origin:** DTU -- **Date:** 2018/03/21 - -## Description - -```text -Example instrument showing how to calculate brilliance transfer using L_monitor's and WHEN statements -``` - -## Input parameters - -Parameters in **boldface** are required; the others are optional. - -| Name | Unit | Description | Default | -|------|------|-------------|---------| -| lambda | AA | Central wavelength produced at the source | 10 | -| dlambda | AA | Halfwidth of wavelength band produced at the source | 9.9 | -| maxhd | deg | Maxiamal horzizontal divergence accepted | 3 | -| maxvd | deg | Maxiamal vertical divergence accepted | 3 | -| gw | m | Opening-width of ellipitic guide | 0.1 | -| gh | m | Opening-height of ellipitic guide | 0.1 | -| gL | m | Length of ellipitic guide | 50 | -| gm | 1 | M-value of the guide coating | 6 | -| delta1 | m | Optional focal displacement of guide wrt source | 0 | -| delta2 | m | Optional focal displacement of guide wrt sample position | 0 | -| Nbins | 1 | Number of bins on Wavelength / Brilliance transfer monitors | 101 | - -## Links - -- [Source code](BTsimple.instr) for `BTsimple.instr`. - ---- - -*Generated for mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/examples/Templates/Demo_shape_primitives/Demo_shape_primitives.md b/mcstas-comps/examples/Templates/Demo_shape_primitives/Demo_shape_primitives.md deleted file mode 100644 index 44f96da0e..000000000 --- a/mcstas-comps/examples/Templates/Demo_shape_primitives/Demo_shape_primitives.md +++ /dev/null @@ -1,32 +0,0 @@ -# The `Demo_shape_primitives_simple` Instrument - -*McStas: Demonstration instrument of some shapes used for mcdisplay* - -## Identification - -- **Site:** Templates -- **Author:** Erik B Knudsen -- **Origin:** DTU Physics -- **Date:** Feb 2018 - -## Description - -```text -This instrument will display a cylinder, a sphere, and a box, -when run with mcdisplay. Otherwise does nothing. -``` - -## Input parameters - -Parameters in **boldface** are required; the others are optional. - -| Name | Unit | Description | Default | -|------|------|-------------|---------| - -## Links - -- [Source code](Demo_shape_primitives.instr) for `Demo_shape_primitives.instr`. - ---- - -*Generated for mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/examples/Templates/Demo_shape_primitives_simple/Demo_shape_primitives_simple.md b/mcstas-comps/examples/Templates/Demo_shape_primitives_simple/Demo_shape_primitives_simple.md deleted file mode 100644 index e1fa45253..000000000 --- a/mcstas-comps/examples/Templates/Demo_shape_primitives_simple/Demo_shape_primitives_simple.md +++ /dev/null @@ -1,32 +0,0 @@ -# The `Demo_shape_primitives_simple` Instrument - -*McStas: Demonstration instrument of some shapes used for mcdisplay* - -## Identification - -- **Site:** Templates -- **Author:** Erik B Knudsen -- **Origin:** DTU Physics -- **Date:** Feb 2018 - -## Description - -```text -This instrument will display a cylinder, a sphere, and a box, -when run with mcdisplay. Otherwise does nothing. -``` - -## Input parameters - -Parameters in **boldface** are required; the others are optional. - -| Name | Unit | Description | Default | -|------|------|-------------|---------| - -## Links - -- [Source code](Demo_shape_primitives_simple.instr) for `Demo_shape_primitives_simple.instr`. - ---- - -*Generated for mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/examples/Templates/TOF_Reflectometer/TOF_Reflectometer.md b/mcstas-comps/examples/Templates/TOF_Reflectometer/TOF_Reflectometer.md deleted file mode 100644 index efbdd504d..000000000 --- a/mcstas-comps/examples/Templates/TOF_Reflectometer/TOF_Reflectometer.md +++ /dev/null @@ -1,47 +0,0 @@ -# The `Reflectometer` Instrument - -*McStas: Horizontal reflectometer, multi-angle of incidence* - -## Identification - -- **Site:** Templates -- **Author:** Anette Vickery, contact: anette.vickery@fys.ku.dk -- **Origin:** KU -- **Date:** November 2011 - -## Description - -```text -A horizontal reflectometer. The instrument is built of a 2.5 m long mirror and an inclined elliptical guide. The grazing angle is defined by a set of -slits. The sample size is 4cm x 4cm (horizontal sample). -The role of the mirror is to provide an angle of incidence of up to 4 deg and at the same time avoid a direct line of sight to the source. -The reflectivity is the ratio between the direct beam reflected beam intensities. Therefore two simulations are needed to get the reflectivity curve: - -Example: mcrun Reflectometer.instr -n1e10 directbeam=1,thetasample=0.4,Qmin=0,Qmax=0.15 -d directbeam -Example: mcrun Reflectometer.instr -n1e10 directbeam=0,thetasample=0.4,Qmin=0,Qmax=0.15 -d reflectedbeam -``` - -## Input parameters - -Parameters in **boldface** are required; the others are optional. - -| Name | Unit | Description | Default | -|------|------|-------------|---------| -| directbeam | | If 1, the sample is a mirror with reflectivity 1. If 0, the mirror reflects like a D2O surface with zero roughness | 1 | -| Lam_min | AA | Minimum wavelength emitted by the cold moderator | 2.0 | -| Lam_max | AA | Maximum wavelength emitted by the cold moderator | 10 | -| deltatheta | % | The angular resolution | 2 | -| theta_sample | deg | The grazing angle | 1 | -| defineAngle | | If 0, the angle defining slits are wide open. If 1 the angular resolution is deltatheta | 1 | -| Qmin | AA^-1 | The minimum value of the interesting Qrange | 0 | -| Qmax | AA^-1 | The maximum value of the interesting Qrange | 0.5 | -| straight | | If 1, the guide walls are straight | 1 | -| width | m | The width of the guide in the case of straight guide walls | 0.05 | - -## Links - -- [Source code](TOF_Reflectometer.instr) for `TOF_Reflectometer.instr`. - ---- - -*Generated for mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/examples/Templates/Test_SasView_bcc_paracrystal_aniso/Test_SasView_bcc_paracrystal_aniso.md b/mcstas-comps/examples/Templates/Test_SasView_bcc_paracrystal_aniso/Test_SasView_bcc_paracrystal_aniso.md deleted file mode 100644 index be8410228..000000000 --- a/mcstas-comps/examples/Templates/Test_SasView_bcc_paracrystal_aniso/Test_SasView_bcc_paracrystal_aniso.md +++ /dev/null @@ -1,59 +0,0 @@ -# The `test_SasView_bcc_paracrystal` Instrument - -*McStas: Test instrument for the SasView bcc_paracrystal model component as sample description.* - -## Identification - -- **Site:** Templates -- **Author:** Jose Robledo -- **Origin:** FZJ / DTU / ESS DMSC -- **Date:** - -## Description - -```text -Very simple test instrument for the SasView_bcc_paracrystal component - - -Example: model_scale=1 Detector: detector_I=83.8252 -``` - -## Input parameters - -Parameters in **boldface** are required; the others are optional. - -| Name | Unit | Description | Default | -|------|------|-------------|---------| -| lambda | AA | Mean wavelength of neutrons. | 6 | -| dlambda | AA | Wavelength spread of neutrons. | 0.05 | -| dnn | | ([-inf, inf]) Nearest neighbour distance. | 220 | -| d_factor | | ([-inf, inf]) Paracrystal distortion factor. | 0.06 | -| radius | | ([0, inf]) Particle radius. | 40 | -| sld | | ([-inf, inf]) Particle scattering length density. | 4 | -| sld_solvent | | ([-inf, inf]) Solvent scattering length density. | 1 | -| theta | | | 60 | -| phi | | | 60 | -| Psi | | | 60 | -| model_scale | | Global scale factor for scattering kernel. For systems without inter-particle interference, the form factors can be related to the scattering intensity by the particle volume fraction. | 1.0 | -| model_abs | | Absorption cross section density at 2200 m/s. | 0.0 | -| xwidth | m | ([-inf, inf]) Horiz. dimension of sample, as a width. | 0.01 | -| yheight | m | ([-inf, inf]) vert . dimension of sample, as a height for cylinder/box | 0.01 | -| zdepth | m | ([-inf, inf]) depth of sample | 0.005 | -| R | m | Outer radius of sample in (x,z) plane for cylinder/sphere. | 0 | -| target_index | | Relative index of component to focus at, e.g. next is +1. | 1 | -| target_x | m | relative focus target position. | 0 | -| target_y | m | relative focus target position. | 0 | -| target_z | m | relative focus target position. | 1 | -| focus_xw | m | horiz. dimension of a rectangular area. | 0.5 | -| focus_yh | m | , vert. dimension of a rectangular area. | 0.5 | -| focus_aw | deg | , horiz. angular dimension of a rectangular area. | 0 | -| focus_ah | deg | , vert. angular dimension of a rectangular area. | 0 | -| focus_r | | | 0 | - -## Links - -- [Source code](Test_SasView_bcc_paracrystal_aniso.instr) for `Test_SasView_bcc_paracrystal_aniso.instr`. - ---- - -*Generated for mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/examples/Templates/Test_SasView_guinier/Test_SasView_guinier.md b/mcstas-comps/examples/Templates/Test_SasView_guinier/Test_SasView_guinier.md deleted file mode 100644 index cae320db2..000000000 --- a/mcstas-comps/examples/Templates/Test_SasView_guinier/Test_SasView_guinier.md +++ /dev/null @@ -1,49 +0,0 @@ -# The `test_SasView_guinier` Instrument - -*McStas: Test instrument for the SasView guinier model component as sample description.* - -## Identification - -- **Site:** Templates -- **Author:** Jose Robledo -- **Origin:** FZJ / DTU / ESS DMSC -- **Date:** - -## Description - -```text -Very simple test instrument for the SasView_guinier component -``` - -## Input parameters - -Parameters in **boldface** are required; the others are optional. - -| Name | Unit | Description | Default | -|------|------|-------------|---------| -| lambda | AA | Mean wavelength of neutrons. | 6 | -| dlambda | AA | Wavelength spread of neutrons. | 0.05 | -| rg | | ([-inf, inf]) Radius of Gyration. | 60.0 | -| model_scale | | Global scale factor for scattering kernel. For systems without inter-particle interference, the form factors can be related to the scattering intensity by the particle volume fraction. | 1.0 | -| model_abs | | Absorption cross section density at 2200 m/s. | 0.0 | -| xwidth | m | ([-inf, inf]) Horiz. dimension of sample, as a width. | 0.01 | -| yheight | m | ([-inf, inf]) vert . dimension of sample, as a height for cylinder/box | 0.01 | -| zdepth | m | ([-inf, inf]) depth of sample | 0.005 | -| R | m | Outer radius of sample in (x,z) plane for cylinder/sphere. | 0 | -| target_index | | Relative index of component to focus at, e.g. next is +1. | 1 | -| target_x | m | relative focus target position. | 0 | -| target_y | m | relative focus target position. | 0 | -| target_z | m | relative focus target position. | 1 | -| focus_xw | m | horiz. dimension of a rectangular area. | 0.5 | -| focus_yh | m | , vert. dimension of a rectangular area. | 0.5 | -| focus_aw | deg | , horiz. angular dimension of a rectangular area. | 0 | -| focus_ah | deg | , vert. angular dimension of a rectangular area. | 0 | -| focus_r | | | 0 | - -## Links - -- [Source code](Test_SasView_guinier.instr) for `Test_SasView_guinier.instr`. - ---- - -*Generated for mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/examples/Templates/Tomography/Tomography.md b/mcstas-comps/examples/Templates/Tomography/Tomography.md deleted file mode 100644 index e8f82d861..000000000 --- a/mcstas-comps/examples/Templates/Tomography/Tomography.md +++ /dev/null @@ -1,51 +0,0 @@ -# The `Tomography` Instrument - -*McStas: Instrument to study tomographic imaging by means of the feature of OFF shape samples.* - -## Identification - -- **Site:** Templates -- **Author:** Peter Willendrup, based on work by Reynald ARNERIN -- **Origin:** Risoe -- **Date:** June 20th, 2008 - -## Description - -```text -Instrument to study tomographic imaging by means of the feature of OFF shape samples. - -Example: mcrun Tomography.instr offfile=bunny.off -n1e4 -N18 omega=0,340 -d TomoScan -(Note that to achieve proper statistics for tomographic reconstruction, MUCH higher ncounts -are needed) - -Use the provided Matlab tomo_recon.m function (requires imaging toolbox, PGPLOT output data -and a Unix/Mac) in the tools/matlab folder to reconstruct a 3D volume of the object. Use e.g. -isosurface to do thresholding for extraction of the object surface. -``` - -## Input parameters - -Parameters in **boldface** are required; the others are optional. - -| Name | Unit | Description | Default | -|------|------|-------------|---------| -| geometry | string | Name of the OFF file describing the sample shape | "socket.off" | -| omega | deg | Sample rotation around y | 0 | -| sigma_abs | barn | Sample absorption xs | 100 | -| frac_scatt | 1 | Fraction of neutrons to scatter in the sample | 0 | -| div_v | deg | Source vertical divergence (angular height) | 1e-4 | -| div_h | deg | Source horisontal divergence (angular width) | 1e-4 | -| source_w | m | Source width | 0.4 | -| source_h | m | Source height | 0.2 | -| det_w | m | Detector width | 0.4 | -| det_h | m | Detector height | 0.2 | -| opts | string | Monitor_nD options string | "x bins=80 y bins=40" | - -## Links - -- [Source code](Tomography.instr) for `Tomography.instr`. -- http://shape.cs.princeton.edu/benchmark/documentation/off_format.html - ---- - -*Generated for mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/examples/Templates/mini/mini.md b/mcstas-comps/examples/Templates/mini/mini.md deleted file mode 100644 index f65752ff4..000000000 --- a/mcstas-comps/examples/Templates/mini/mini.md +++ /dev/null @@ -1,33 +0,0 @@ -# The `mini` Instrument - -*McStas: Minimalistic instrument for testing GPU implementation* - -## Identification - -- **Site:** Templates -- **Author:** Jakob Garde -- **Origin:** DTU -- **Date:** 2017 - -## Description - -```text -Minimalistic instrument for testing GPU implementation -``` - -## Input parameters - -Parameters in **boldface** are required; the others are optional. - -| Name | Unit | Description | Default | -|------|------|-------------|---------| -| dummy | | Dummy input parameter | 0 | - -## Links - -- [Source code](mini.instr) for `mini.instr`. -- A reference/HTML link for more information - ---- - -*Generated for mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/examples/Templates/template/template.md b/mcstas-comps/examples/Templates/template/template.md deleted file mode 100644 index 376bd600f..000000000 --- a/mcstas-comps/examples/Templates/template/template.md +++ /dev/null @@ -1,42 +0,0 @@ -# The `template` Instrument - -*McStas: !!Please write a short instrument (1 line) here!!* - -## Identification - -- **Site:** Templates -- **Author:** Your name (email) -- **Origin:** Your institution -- **Date:** Current Date - -## Description - -```text -Instrument longer description (type, elements, usage...) - -Example: mcrun template.instr - -once your instrument is written and functional: -- replace INSTRUMENT_SITE entry above with your Institution name as a single word -- rename the instrument name after DEFINE INSTRUMENT below -- update the parameter help in the following Parameters section -- update the instrument description, and better add a usage example with a -sensible parameter set. -``` - -## Input parameters - -Parameters in **boldface** are required; the others are optional. - -| Name | Unit | Description | Default | -|------|------|-------------|---------| -| Par1 | | | 1 | - -## Links - -- [Source code](template.instr) for `template.instr`. -- A reference/HTML link for more information - ---- - -*Generated for mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/examples/Templates/templateDIFF/templateDIFF.md b/mcstas-comps/examples/Templates/templateDIFF/templateDIFF.md deleted file mode 100644 index bcd9bf077..000000000 --- a/mcstas-comps/examples/Templates/templateDIFF/templateDIFF.md +++ /dev/null @@ -1,65 +0,0 @@ -# The `templateDIFF` Instrument - -*McStas: Simple monochromator Diffractometer for powders* - -## Identification - -- **Site:** Templates -- **Author:** E. Farhi -- **Origin:** LLB/ILL -- **Date:** 13 Apr 2006 - -## Description - -```text -A template powder diffractometer used as a tutorial at LLB. -Default geometry is from D20@ILL. - -If included after a guide, use ALPHA1=0 and L1=0 (the first collimator is then -the guide with effective ALPHA1=m*0.1*lambda). If you prefer to include -explicitely a collimator before the monochromator, use L1=1.2. - -Monochromator lattice parameter -PG 002 DM=3.355 AA (Highly Oriented Pyrolythic Graphite) -PG 004 DM=1.607 AA -Heusler 111 DM=3.362 AA (Cu2MnAl) -CoFe DM=1.771 AA (Co0.92Fe0.08) -Ge 111 DM=3.266 AA -Ge 311 DM=1.714 AA -Ge 511 DM=1.089 AA -Ge 533 DM=0.863 AA -Si 111 DM=3.135 AA -Cu 111 DM=2.087 AA -Cu 002 DM=1.807 AA -Cu 220 DM=1.278 AA -Cu 111 DM=2.095 AA -``` - -## Input parameters - -Parameters in **boldface** are required; the others are optional. - -| Name | Unit | Description | Default | -|------|------|-------------|---------| -| lambda | Angs | Wavelength at monochromator, computed from DM and THETA_M if left as 0. | 1 | -| DM | Angs | d-spacing of monochromator, computed from lambda and THETA_M if left as 0. | 3.355 | -| Powder | str | File name for powder description | "Na2Ca3Al2F14.laz" | -| RV | m | Monochromator vertical curvature, 0 for flat, -1 for automatic setting | -1 | -| L1 | m | Source-Monochromator distance | 17 | -| L2 | m | Monochromator-Sample distance | 3.2 | -| L3 | m | Sample-Detector distance | 1.471 | -| ALPHA1 | min | Horizontal collimator divergence for L1 arm (before monochromator) | 5 | -| ALPHA2 | min | Horizontal collimator divergence for L2 arm (monochromator-sample) | 60 | -| ALPHA3 | min | Horizontal collimator divergence for L3 arm (sample-detector) | 5 | -| ETA | min | Monochromator horizontal mosaic (gaussian) | 12 | -| verbose | int | Print DIF configuration. 0 to be quiet | 1 | -| THETA_M | deg | Monochromator take-off angle, computed from lambda and DM if left as 0. | 0 | -| SM | int | Scattering sense of beam from Monochromator. 1:left, -1:right | 1 | - -## Links - -- [Source code](templateDIFF.instr) for `templateDIFF.instr`. - ---- - -*Generated for mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/examples/Templates/templateLaue/templateLaue.md b/mcstas-comps/examples/Templates/templateLaue/templateLaue.md deleted file mode 100644 index 5d20f5ee4..000000000 --- a/mcstas-comps/examples/Templates/templateLaue/templateLaue.md +++ /dev/null @@ -1,33 +0,0 @@ -# The `templateLaue` Instrument - -*McStas: A simple Laue diffractometer* - -## Identification - -- **Site:** Templates -- **Author:** K. Nielsen -- **Origin:** ILL -- **Date:** June 2nd, 2010 - -## Description - -```text -A single crystal sample is illuminated with a white cold beam. -Based on a Laue tutorial written by K. Nielsen, Feb 7, 2000. -``` - -## Input parameters - -Parameters in **boldface** are required; the others are optional. - -| Name | Unit | Description | Default | -|------|------|-------------|---------| -| reflections | string | Single crystal reflection list | "leucine.lau" | - -## Links - -- [Source code](templateLaue.instr) for `templateLaue.instr`. - ---- - -*Generated for mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/examples/Templates/templateNMX/templateNMX.md b/mcstas-comps/examples/Templates/templateNMX/templateNMX.md deleted file mode 100644 index b061264f6..000000000 --- a/mcstas-comps/examples/Templates/templateNMX/templateNMX.md +++ /dev/null @@ -1,35 +0,0 @@ -# The `templateNMX` Instrument - -*McStas: A simple Laue NMX diffractometer for macromolecules, adapted from the classic -templateLaue instrument.* - -## Identification - -- **Site:** Templates -- **Author:** K. Nielsen -- **Origin:** ILL -- **Date:** June 2nd, 2010 - -## Description - -```text -A single crystal sample is illuminated with a white cold beam. -Based on a Laue tutorial written by K. Nielsen, Feb 7, 2000. -``` - -## Input parameters - -Parameters in **boldface** are required; the others are optional. - -| Name | Unit | Description | Default | -|------|------|-------------|---------| -| REPS | | Number of SPLIT repetitions | 1 | -| reflections | string | MX crystal reflection list | "Rubredoxin.lau" | - -## Links - -- [Source code](templateNMX.instr) for `templateNMX.instr`. - ---- - -*Generated for mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/examples/Templates/templateNMX_TOF/templateNMX_TOF.md b/mcstas-comps/examples/Templates/templateNMX_TOF/templateNMX_TOF.md deleted file mode 100644 index 1a9e494a6..000000000 --- a/mcstas-comps/examples/Templates/templateNMX_TOF/templateNMX_TOF.md +++ /dev/null @@ -1,46 +0,0 @@ -# The `templateNMX_TOF` Instrument - -*McStas: A simple Laue NMX TOF diffractometer for macromolecules, adapted from templateNMX -and templateLaue instruments. - -Demonstrates use of PSD_monitor_TOF. - -Example: templateNMX_TOF.instr REPS=53 reflections=Rubredoxin.lau theta=-40.85 phi=15.188 xw=0.012 yh=0.012 tmin=13000 tmax=15000 Detector: det_I=78816.1 -Example: templateNMX_TOF.instr REPS=5 reflections=YBaCuO.lau theta=-91.1 phi=0 xw=0.012 yh=0.012 tmax=7000 tmin=5000 Detector: det_I=6277.74* - -## Identification - -- **Site:** Templates -- **Author:** K. Nielsen -- **Origin:** DTU -- **Date:** June 2nd, 2010 - -## Description - -```text -A single crystal sample is illuminated with a white cold beam. -Based on a Laue tutorial written by K. Nielsen, Feb 7, 2000. -``` - -## Input parameters - -Parameters in **boldface** are required; the others are optional. - -| Name | Unit | Description | Default | -|------|------|-------------|---------| -| REPS | | Number of SPLIT repetitions | 53 | -| reflections | string | MX crystal reflection list | "Rubredoxin.lau" | -| theta | deg | Rotation of sample around y (1st rotation) | -40.85 | -| phi | deg | Rotation of sample around x (2nd rotation) | 15.188 | -| xw | m | Width of final monitors | 0.012 | -| yh | m | Height of final monitors | 0.012 | -| tmin | mu-s | Minimum ToF to record | 0 | -| tmax | mu-s | Maximum ToF to record | 2e5 | - -## Links - -- [Source code](templateNMX_TOF.instr) for `templateNMX_TOF.instr`. - ---- - -*Generated for mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/examples/Templates/templateSANS/templateSANS.md b/mcstas-comps/examples/Templates/templateSANS/templateSANS.md deleted file mode 100644 index 078909ba2..000000000 --- a/mcstas-comps/examples/Templates/templateSANS/templateSANS.md +++ /dev/null @@ -1,38 +0,0 @@ -# The `templateSANS` Instrument - -*McStas: Test instrument for the Sans_spheres component. No guide / velocity selector -etc. Will be developed further at later time.* - -## Identification - -- **Site:** Templates -- **Author:** Kim Lefmann -- **Origin:** Risoe -- **Date:** 19th Dec 2003. - -## Description - -```text -Very simple test instrument for the Sans_spheres component -``` - -## Input parameters - -Parameters in **boldface** are required; the others are optional. - -| Name | Unit | Description | Default | -|------|------|-------------|---------| -| lambda | AA | Mean wavelength of neutrons | 6 | -| dlambda | AA | Wavelength spread of neutrons | 0.05 | -| r | AA | Radius of scattering hard spheres | 100 | -| PHI | 1 | Particle volume fraction | 1e-3 | -| Delta_Rho | fm/AA^3 | Excess scattering length density | 0.6 | -| sigma_abs | barns | Absorption cross section at 2200 m/s | 0.5 | - -## Links - -- [Source code](templateSANS.instr) for `templateSANS.instr`. - ---- - -*Generated for mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/examples/Templates/templateSANS2/templateSANS2.md b/mcstas-comps/examples/Templates/templateSANS2/templateSANS2.md deleted file mode 100644 index 7e518ee64..000000000 --- a/mcstas-comps/examples/Templates/templateSANS2/templateSANS2.md +++ /dev/null @@ -1,39 +0,0 @@ -# The `templateSANS2` Instrument - -*McStas: Test instrument for the SANS_spheres2 component. No guide / velocity selector.* - -## Identification - -- **Site:** Templates -- **Author:** Peter Willendrup, Wim G. Bouwman -- **Origin:** DTU -- **Date:** Dec 20190 - -## Description - -```text -Very simple test instrument for the SANS_spheres2 component, derived / simplified from -H. Frielinghaus SANS_benchmark2 -``` - -## Input parameters - -Parameters in **boldface** are required; the others are optional. - -| Name | Unit | Description | Default | -|------|------|-------------|---------| -| lambda | AA | Mean wavelength of neutrons | 6 | -| dlambda | AA | Wavelength spread of neutrons | 0.05 | -| r | AA | Radius of scattering hard spheres | 150 | -| PHI | 1 | Particle volume fraction | 1e-3 | -| Delta_Rho | cm^-2 | Scattering length density | 6e10 | -| frac_dir | 1 | Fraction of statistics for direct beam | 0.03 | -| frac_inc | 1 | Fraction of statistics for incoherent scattering in scattered beam | 0.01 | - -## Links - -- [Source code](templateSANS2.instr) for `templateSANS2.instr`. - ---- - -*Generated for mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/examples/Templates/templateSANS_MCPL/templateSANS_MCPL.md b/mcstas-comps/examples/Templates/templateSANS_MCPL/templateSANS_MCPL.md deleted file mode 100644 index 6f87c95e5..000000000 --- a/mcstas-comps/examples/Templates/templateSANS_MCPL/templateSANS_MCPL.md +++ /dev/null @@ -1,41 +0,0 @@ -# The `templateSANS_MCPL` Instrument - -*McStas: Test instrument for the Sans_spheres component. No guide / velocity selector -etc. Will be developed further at later time. Behaves like the normal templateSANS -but dumps all events in an MCPL file.* - -## Identification - -- **Site:** Templates -- **Author:** Kim Lefmann -- **Origin:** Risoe -- **Date:** 19th Dec 2003. - -## Description - -```text -Very simple test instrument for the Sans_spheres component - -Example: lambda=6 Detector: detector_I=6.56942e-17 -``` - -## Input parameters - -Parameters in **boldface** are required; the others are optional. - -| Name | Unit | Description | Default | -|------|------|-------------|---------| -| lambda | AA | Mean wavelength of neutrons | 6 | -| dlambda | AA | Wavelength spread of neutrons | 0.05 | -| r | AA | Radius of scattering hard spheres | 100 | -| PHI | 1 | Particle volume fraction | 1e-3 | -| Delta_Rho | fm/AA^3 | Excess scattering length density | 0.6 | -| sigma_abs | barns | Absorption cross section at 2200 m/s | 0.5 | - -## Links - -- [Source code](templateSANS_MCPL.instr) for `templateSANS_MCPL.instr`. - ---- - -*Generated for mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/examples/Templates/templateSasView/templateSasView.md b/mcstas-comps/examples/Templates/templateSasView/templateSasView.md deleted file mode 100644 index 0e08b5738..000000000 --- a/mcstas-comps/examples/Templates/templateSasView/templateSasView.md +++ /dev/null @@ -1,48 +0,0 @@ -# The `templateSasView` Instrument - -*McStas: Test instrument for some SasView_model components. No guide / velocity selector -etc.* - -## Identification - -- **Site:** Templates -- **Author:** Torben Nielsen -- **Origin:** DTU Physics / ESS DMSC -- **Date:** - -## Description - -```text -Very simple test instrument for 3 examples from the suite of SasView_ components. -Select sample model with 'model_index': -1= SasView_barbell -3= SasView_bcc_paracrystal -47= SasView_parallelepiped -``` - -## Input parameters - -Parameters in **boldface** are required; the others are optional. - -| Name | Unit | Description | Default | -|------|------|-------------|---------| -| lambda | AA | Mean wavelength of neutrons | 6 | -| dlambda | AA | Wavelength spread of neutrons | 0.05 | -| model_index | | SASmodels model index (see SasView_model.comp mcdoc page) | 47 | -| par1 | | Slot 1 in SASmodel parameter vector | 0 | -| par2 | | Slot 2 in SASmodel parameter vector | 0 | -| par3 | | Slot 3 in SASmodel parameter vector | 0 | -| par4 | | Slot 4 in SASmodel parameter vector | 0 | -| par5 | | Slot 5 in SASmodel parameter vector | 0 | -| par6 | | Slot 6 in SASmodel parameter vector | 0 | -| par7 | | Slot 7 in SASmodel parameter vector | 0 | -| par8 | | Slot 8 in SASmodel parameter vector | 0 | -| Ncount | | | 0 | - -## Links - -- [Source code](templateSasView.instr) for `templateSasView.instr`. - ---- - -*Generated for mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/examples/Templates/templateTAS/templateTAS.md b/mcstas-comps/examples/Templates/templateTAS/templateTAS.md deleted file mode 100644 index 43f18d7ab..000000000 --- a/mcstas-comps/examples/Templates/templateTAS/templateTAS.md +++ /dev/null @@ -1,136 +0,0 @@ -# The `templateTAS` Instrument - -*McStas: Template RESCAL type triple-axis machine (TAS)* - -## Identification - -- **Site:** Templates -- **Author:** Emmanuel Farhi -- **Origin:** ILL (France) -- **Date:** 2006 - -## Description - -```text -This instrument is a simple model of triple-axis spectrometer. -It is directly illuminated by the moderator, -and has curved monochromator and analyzer. -Sample can be specified as a powder, liquid/amorphous or a pure incoherent -scatterer (e.g. vanadium, which is the default). -Sample geometry can be spherical or cylindrical. -For PG002 monochromator/analyzer setting, a reflectivity curve vs. wavelength -is used, else reflectivity is set to 70 %. To suppress collimators, set their -divergence to 0 (ALFn BETn). -Default instrument geometry is from IN20@ILL with PG monochromator/analyzer. - -Monochromator lattice parameter -PG 002 DM=3.355 AA (Highly Oriented Pyrolythic Graphite) -PG 004 DM=1.607 AA -Heusler 111 DM=3.362 AA (Cu2MnAl) -CoFe DM=1.771 AA (Co0.92Fe0.08) -Ge 111 DM=3.266 AA -Ge 311 DM=1.714 AA -Ge 511 DM=1.089 AA -Ge 533 DM=0.863 AA -Si 111 DM=3.135 AA -Cu 111 DM=2.087 AA -Cu 002 DM=1.807 AA -Cu 220 DM=1.278 AA -Cu 111 DM=2.095 AA - -IN22 configuration (at H25 thermal m=2 guide end): -KI=3.84, QM=1.0, EN=0.0, verbose=1, -WM=0.15, HM=0.12, NHM=1, NVM=9, RMV=-1, -WA=0.20, HA=0.10, NHA=11, NVA=3, RAV=-1, RAH=-1, -SM=-1, SS=1, SA=-1, -L1=10.0, L2=1.7, L3=1.0, L4=0.8 - -IN8 Configuration: with Copper optics -KF=5, KI=0, QM=0.5, EN=5, verbose=1 -WM=0.23, HM=0.19, RMH=-1, RMV=-1, DM=1.807, NHM=15, NVM=15, -WA=0.16, HA=0.08, RAH=-1, RAV=-1, DA=2.087, NHA=15, NVA=15, -L1=2.33 -``` - -## Input parameters - -Parameters in **boldface** are required; the others are optional. - -| Name | Unit | Description | Default | -|------|------|-------------|---------| -| KI | Angs-1 | Incoming neutron wavevector | 2.662 | -| KF | Angs-1 | Outgoing neutron wavevector | 0 | -| EI | meV | Incoming neutron energy | 0 | -| EF | meV | Outgoing neutron energy | 0 | -| QH | rlu | Measurement QH position in crystal | 0 | -| QK | rlu | Measurement QK position in crystal | 0 | -| QL | rlu | Measurement QL position in crystal | 0 | -| EN | meV | Energy transfer in crystal | 0 | -| QM | Angs-1 | Wavevector transfer in crystal | 0 | -| KFIX | Angs-1 | Fixed KI or KF value for Rescal compatibility | 0 | -| FX | 1:KI,2:KF | Fixed KI or KF type for Rescal compatibility | 0 | -| L1 | m | Source-Monochromator distance. Contains 1st Collimator of length 5.34 | 9 | -| L2 | m | Monochromator-Sample distance. Contains 2nd Collimator of length 0.35 | 2.1 | -| L3 | m | Sample-Analyzer distance. Contains 3rd Collimator of length 0.40 | 1.5 | -| L4 | m | Analyzer-detector distance. Contains 4th Collimator of length 0.24 | 0.7 | -| SM | 1:left, -1:right | Scattering sense of beam from Monochromator | 1 | -| SS | 1:left, -1:right | Scattering sense of beam from Sample | -1 | -| SA | 1:left, -1:right | Scattering sense of beam from Analyzer | 1 | -| DM | Angs | Monochromator d-spacing | 3.3539 | -| DA | Angs | Analyzer d-spacing | 3.3539 | -| RMV | m | Monochromator vertical curvature, 0 for flat, -1 for automatic setting | -1 | -| RMH | m | Monochromator horizontal curvature, 0 for flat, -1 for automatic setting | 0 | -| RAV | m | Analyzer vertical curvature, 0 for flat, -1 for automatic setting | 0 | -| RAH | m | Analyzer horizontal curvature, 0 for flat, -1 for automatic setting | -1 | -| ETAM | arc min | Monochromator mosaic | 30 | -| ETAA | arc min | Analyzer mosaic | 30 | -| ALF1 | arc min | Horizontal collimation from Source to Monochromator | 60 | -| ALF2 | arc min | Horizontal collimation from Monochromator to Sample A | 60 | -| ALF3 | arc min | Horizontal collimation from Sample to Analyzer | 60 | -| ALF4 | arc min | Horizontal collimation from Analyzer to Detector | 60 | -| BET1 | arc min | Vertical collimation from Source to Monochromator | 120 | -| BET2 | arc min | Vertical collimation from Monochromator to Sample A | 120 | -| BET3 | arc min | Vertical collimation from Sample to Analyzer | 120 | -| BET4 | arc min | Vertical collimation from Analyzer to Detector | 120 | -| AS | Angs | Sample lattice parameter A | 6.28 | -| BS | Angs | Sample lattice parameter B | 6.28 | -| CS | Angs | Sample lattice parameter C | 6.28 | -| AA | deg | Angle between lattice vectors B,C | 90 | -| BB | deg | Angle between lattice vectors C,A | 90 | -| CC | deg | Angle between lattice vectors A,B | 90 | -| AX | rlu | First reciprocal lattice vector in scattering plane, X | 1 | -| AY | rlu | First reciprocal lattice vector in scattering plane, Y | 0 | -| AZ | rlu | First reciprocal lattice vector in scattering plane, Z | 0 | -| BX | rlu | Second reciprocal lattice vector in scattering plane, X | 0 | -| BY | rlu | Second reciprocal lattice vector in scattering plane, Y | 1 | -| BZ | rlu | Second reciprocal lattice vector in scattering plane, Z | 0 | -| verbose | 1 | print TAS configuration. 0 to be quiet | 1 | -| A1 | deg | Monohromator rotation angle | 0 | -| A2 | deg | Monohromator take-off angle | 0 | -| A3 | deg | Sample rotation angle | 0 | -| A4 | deg | Sample take-off angle | 0 | -| A5 | deg | Analyzer rotation angle | 0 | -| A6 | deg | Analyzer take-off angle | 0 | -| NHM | 1 | Number of horizontal slabs composing the monochromator | 1 | -| NVM | 1 | Number of vertical slabs composing the monochromator | 9 | -| WM | m | Width of monochromator | 0.10 | -| HM | m | Height of monochromator | 0.12 | -| NHA | 1 | Number of horizontal slabs composing the analyzer | 9 | -| NVA | 1 | Number of vertical slabs composing the analyzer | 1 | -| WA | m | Width of analyzer | 0.10 | -| HA | m | Height of analyzer | 0.12 | -| Sqw_coh | str | sample coherent S(q,w) file name. Use LAZ/LAU or SQW file | "NULL" | -| Sqw_inc | str | sample incoherent S(q,w) file name. Use NULL to scatter incoherently | "NULL" | -| radius | m | outer radius of sample hollow cylinder/sphere | 0.01 | -| thickness | m | thickness of sample hollow cylinder. 0 for bulk | 0.005 | -| height | m | sample height. Use 0 for a spherical shape | 0.05 | - -## Links - -- [Source code](templateTAS.instr) for `templateTAS.instr`. -- Rescal for Matlab at http://www.ill.eu/instruments-support/computing-for-science/cs-software/all-software/matlab-ill/ -- Restrax at http://omega.ujf.cas.cz/restrax/ - ---- - -*Generated for mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/examples/Templates/templateTOF/templateTOF.md b/mcstas-comps/examples/Templates/templateTOF/templateTOF.md deleted file mode 100644 index f95e093f0..000000000 --- a/mcstas-comps/examples/Templates/templateTOF/templateTOF.md +++ /dev/null @@ -1,53 +0,0 @@ -# The `templateTOF` Instrument - -*McStas: A test instrument for the S(q,w) sample, with furnace/container* - -## Identification - -- **Site:** Templates -- **Author:** E. Farhi -- **Origin:** ILL -- **Date:** Jan 2004 - -## Description - -```text -This instrument is a test instrument for the S(q,w) sample. -It produces a tof-angle and q-energy detectors and also exports the -S(q,w) and S(q) data. -The sample environment is a single cylinder. -The sample container has the same shape as the sample itself, but is not -active when using a spherical sample shape (height=0). -detector is 2.5 m diameter, with 40 cm heigh, 1 inch diameter detector tubes. -``` - -## Input parameters - -Parameters in **boldface** are required; the others are optional. - -| Name | Unit | Description | Default | -|------|------|-------------|---------| -| E0 | meV | incident neutron beam energy | 4.94 | -| dE | meV | incident neutron beam energy spread | 0.24 | -| dt | s | time spread from chopper distribution | 6.4e-6 | -| coh | str | sample coherent Sqw data file or NULL | "Rb_liq_coh.sqw" | -| inc | str | sample incoherent Sqw data file or NULL | "Rb_liq_inc.sqw" | -| thickness | m | thickness of sample. 0=filled | 1e-4 | -| yheight | m | height of sample. 0=sphere | 0.0168 | -| radius | m | radius of sample (outer) | 0.005 | -| container | str | container material or NULL | "Nb.laz" | -| container_thickness | m | container thickness | 50e-6 | -| environment | str | sample environment material or NULL | "Al.laz" | -| environment_radius | m | sample environment outer radius | 0.025 | -| environment_thickness | m | sample environment thickness | 2e-3 | -| dt0 | | | 0 | - -## Links - -- [Source code](templateTOF.instr) for `templateTOF.instr`. -- The Isotropic_Sqw sample -- The Samples_Isotropic_Sqw example instrument - ---- - -*Generated for mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/examples/Templates/template_simple/template_simple.md b/mcstas-comps/examples/Templates/template_simple/template_simple.md deleted file mode 100644 index 9d92c248d..000000000 --- a/mcstas-comps/examples/Templates/template_simple/template_simple.md +++ /dev/null @@ -1,35 +0,0 @@ -# The `template_simple` Instrument - -*McStas: instrument short description* - -## Identification - -- **Site:** Templates -- **Author:** your name (email) -- **Origin:** your institution -- **Date:** current date - -## Description - -```text -instrument description - -Example: parameters=values -``` - -## Input parameters - -Parameters in **boldface** are required; the others are optional. - -| Name | Unit | Description | Default | -|------|------|-------------|---------| -| Par1 | unit | Parameter1 description | 1 | - -## Links - -- [Source code](template_simple.instr) for `template_simple.instr`. -- - ---- - -*Generated for mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/examples/Tests_MCPL_etc/Test_MCPL_input/Test_MCPL_input.md b/mcstas-comps/examples/Tests_MCPL_etc/Test_MCPL_input/Test_MCPL_input.md deleted file mode 100644 index e8747d000..000000000 --- a/mcstas-comps/examples/Tests_MCPL_etc/Test_MCPL_input/Test_MCPL_input.md +++ /dev/null @@ -1,36 +0,0 @@ -# The `Test_MCPL_input` Instrument - -*McStas: A test instrument for MCPL_input* - -## Identification - -- **Site:** Tests_MCPL_etc -- **Author:** Erik B Knudsen -- **Origin:** DTU -- **Date:** Mar 2016 - -## Description - -```text -This is a unit test for the MCPL_input component. -``` - -## Input parameters - -Parameters in **boldface** are required; the others are optional. - -| Name | Unit | Description | Default | -|------|------|-------------|---------| -| repeat | 1 | Repeat the contents of the inputfile this many times. NB: When using MPI you implicitly repeat by #mpi processes | 1 | -| v_smear | 1 | When repeating, make Gaussian MC choice on particle velocity with spread v_smear * particle velocity | 0.1 | -| pos_smear | m | When repeating, make uniform MC choice on sphere of radius pos_spear around particle position | 0.001 | -| dir_smear | deg | When repeating, make Gaussian MC choice in cone of opening dir_smear around particle direction | 0.01 | -| MCPLFILE | str | Input MCPL file. | "voutput.mcpl" | - -## Links - -- [Source code](Test_MCPL_input.instr) for `Test_MCPL_input.instr`. - ---- - -*Generated for mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/examples/Tests_MCPL_etc/Test_MCPL_input_once/Test_MCPL_input_once.md b/mcstas-comps/examples/Tests_MCPL_etc/Test_MCPL_input_once/Test_MCPL_input_once.md deleted file mode 100644 index a91768859..000000000 --- a/mcstas-comps/examples/Tests_MCPL_etc/Test_MCPL_input_once/Test_MCPL_input_once.md +++ /dev/null @@ -1,37 +0,0 @@ -# The `Test_MCPL_input_once` Instrument - -*McStas: A test instrument for MCPL_input_once* - -## Identification - -- **Site:** Tests_MCPL_etc -- **Author:** Peter Willendrup -- **Origin:** DTU -- **Date:** Mar 2024 - -## Description - -```text -This is a unit test for the MCPL_input_once component, which differs from the original MCPL_input by: -1) Being MPI-parallelized (no implicit "repeat" of the particles in the file, file content is shared among processes -2) No implementation of "repetition", if further stats is needed downstream, SPLIT should be applied -``` - -## Input parameters - -Parameters in **boldface** are required; the others are optional. - -| Name | Unit | Description | Default | -|------|------|-------------|---------| -| v_smear | 1 | Mmake Gaussian MC choice on particle velocity with spread v_smear * particle velocity | 0.1 | -| pos_smear | m | Make uniform MC choice on sphere of radius pos_spear around particle position | 0.001 | -| dir_smear | deg | Make Gaussian MC choice in cone of opening dir_smear around particle direction | 0.01 | -| MCPLFILE | str | Input MCPL file. | "voutput.mcpl" | - -## Links - -- [Source code](Test_MCPL_input_once.instr) for `Test_MCPL_input_once.instr`. - ---- - -*Generated for mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/examples/Tests_MCPL_etc/Test_MCPL_output/Test_MCPL_output.md b/mcstas-comps/examples/Tests_MCPL_etc/Test_MCPL_output/Test_MCPL_output.md deleted file mode 100644 index 0db40056c..000000000 --- a/mcstas-comps/examples/Tests_MCPL_etc/Test_MCPL_output/Test_MCPL_output.md +++ /dev/null @@ -1,32 +0,0 @@ -# The `Test_MCPL_output` Instrument - -*McStas: A test instrument for MCPL_output* - -## Identification - -- **Site:** Tests_MCPL_etc -- **Author:** Erik B Knudsen -- **Origin:** DTU -- **Date:** Mar 2016 - -## Description - -```text -This is a unit test for the MCPL_output component. -``` - -## Input parameters - -Parameters in **boldface** are required; the others are optional. - -| Name | Unit | Description | Default | -|------|------|-------------|---------| -| Ncount | 1 | Ncount defined via input parameter | 1e3 | - -## Links - -- [Source code](Test_MCPL_output.instr) for `Test_MCPL_output.instr`. - ---- - -*Generated for mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/examples/Tests_RNG/Test_RNG_rand01/Test_RNG_rand01.md b/mcstas-comps/examples/Tests_RNG/Test_RNG_rand01/Test_RNG_rand01.md deleted file mode 100644 index b93382b21..000000000 --- a/mcstas-comps/examples/Tests_RNG/Test_RNG_rand01/Test_RNG_rand01.md +++ /dev/null @@ -1,40 +0,0 @@ -# The `Test_RNG_rand01` Instrument - -*McStas: Instrument to get basic test output from random number generator.* - -## Identification - -- **Site:** Tests_RNG -- **Author:** Peter Willendrup -- **Origin:** DTU -- **Date:** Oct 2nd, 2020 - -## Description - -```text -Instrument to get basic test output from random number generator. - -The instrument generates 2 randon numbers pr. particle using randpm1(), -encoded into the particle x and y coordinates. - -For a low statistics, one may e.g. check that setting the seed gives -varied output or fixing the seed gives fixed output· -``` - -## Input parameters - -Parameters in **boldface** are required; the others are optional. - -| Name | Unit | Description | Default | -|------|------|-------------|---------| -| Ncount | 1 | Specify statistics | 1000 | -| seed | 1 | Specify RNG seed | 0 | - -## Links - -- [Source code](Test_RNG_rand01.instr) for `Test_RNG_rand01.instr`. -- - ---- - -*Generated for mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/examples/Tests_RNG/Test_RNG_randnorm/Test_RNG_randnorm.md b/mcstas-comps/examples/Tests_RNG/Test_RNG_randnorm/Test_RNG_randnorm.md deleted file mode 100644 index 5a2d5c50b..000000000 --- a/mcstas-comps/examples/Tests_RNG/Test_RNG_randnorm/Test_RNG_randnorm.md +++ /dev/null @@ -1,40 +0,0 @@ -# The `Test_RNG_randnorm` Instrument - -*McStas: Instrument to get basic test output from random number generator.* - -## Identification - -- **Site:** Tests_RNG -- **Author:** Peter Willendrup -- **Origin:** DTU -- **Date:** Oct 2nd, 2020 - -## Description - -```text -Instrument to get basic test output from random number generator. - -The instrument generates 2 randon numbers pr. particle using randpm1(), -encoded into the particle x and y coordinates. - -For a low statistics, one may e.g. check that setting the seed gives -varied output or fixing the seed gives fixed output· -``` - -## Input parameters - -Parameters in **boldface** are required; the others are optional. - -| Name | Unit | Description | Default | -|------|------|-------------|---------| -| Ncount | 1 | Specify statistics | 1000000 | -| seed | 1 | Specify RNG seed | 0 | - -## Links - -- [Source code](Test_RNG_randnorm.instr) for `Test_RNG_randnorm.instr`. -- - ---- - -*Generated for mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/examples/Tests_RNG/Test_RNG_randpm1/Test_RNG_randpm1.md b/mcstas-comps/examples/Tests_RNG/Test_RNG_randpm1/Test_RNG_randpm1.md deleted file mode 100644 index f26c345cf..000000000 --- a/mcstas-comps/examples/Tests_RNG/Test_RNG_randpm1/Test_RNG_randpm1.md +++ /dev/null @@ -1,40 +0,0 @@ -# The `Test_RNG_randpm1` Instrument - -*McStas: Instrument to get basic test output from random number generator.* - -## Identification - -- **Site:** Tests_RNG -- **Author:** Peter Willendrup -- **Origin:** DTU -- **Date:** Oct 2nd, 2020 - -## Description - -```text -Instrument to get basic test output from random number generator. - -The instrument generates 2 randon numbers pr. particle using randpm1(), -encoded into the particle x and y coordinates. - -For a low statistics, one may e.g. check that setting the seed gives -varied output or fixing the seed gives fixed output· -``` - -## Input parameters - -Parameters in **boldface** are required; the others are optional. - -| Name | Unit | Description | Default | -|------|------|-------------|---------| -| Ncount | 1 | Specify statistics | 1000 | -| seed | 1 | Specify RNG seed | 0 | - -## Links - -- [Source code](Test_RNG_randpm1.instr) for `Test_RNG_randpm1.instr`. -- - ---- - -*Generated for mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/examples/Tests_RNG/Test_RNG_randtriangle/Test_RNG_randtriangle.md b/mcstas-comps/examples/Tests_RNG/Test_RNG_randtriangle/Test_RNG_randtriangle.md deleted file mode 100644 index b49265cb8..000000000 --- a/mcstas-comps/examples/Tests_RNG/Test_RNG_randtriangle/Test_RNG_randtriangle.md +++ /dev/null @@ -1,40 +0,0 @@ -# The `Test_RNG_randtriangle` Instrument - -*McStas: Instrument to get basic test output from random number generator.* - -## Identification - -- **Site:** Tests_RNG -- **Author:** Peter Willendrup -- **Origin:** DTU -- **Date:** Oct 2nd, 2020 - -## Description - -```text -Instrument to get basic test output from random number generator. - -The instrument generates 2 randon numbers pr. particle using randpm1(), -encoded into the particle x and y coordinates. - -For a low statistics, one may e.g. check that setting the seed gives -varied output or fixing the seed gives fixed output· -``` - -## Input parameters - -Parameters in **boldface** are required; the others are optional. - -| Name | Unit | Description | Default | -|------|------|-------------|---------| -| Ncount | 1 | Specify statistics | 1000000 | -| seed | 1 | Specify RNG seed | 0 | - -## Links - -- [Source code](Test_RNG_randtriangle.instr) for `Test_RNG_randtriangle.instr`. -- - ---- - -*Generated for mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/examples/Tests_RNG/Test_RNG_randvec_target_circle/Test_RNG_randvec_target_circle.md b/mcstas-comps/examples/Tests_RNG/Test_RNG_randvec_target_circle/Test_RNG_randvec_target_circle.md deleted file mode 100644 index d3903cc38..000000000 --- a/mcstas-comps/examples/Tests_RNG/Test_RNG_randvec_target_circle/Test_RNG_randvec_target_circle.md +++ /dev/null @@ -1,41 +0,0 @@ -# The `Test_RNG_randvec_target_circle` Instrument - -*McStas: Instrument to get basic test output from random number generator.* - -## Identification - -- **Site:** Tests_RNG -- **Author:** Peter Willendrup -- **Origin:** DTU -- **Date:** Oct 2nd, 2020 - -## Description - -```text -Instrument to get basic test output from random number generator. - -The instrument generates 2 randon numbers pr. particle using randpm1(), -encoded into the particle x and y coordinates. - -For a low statistics, one may e.g. check that setting the seed gives -varied output or fixing the seed gives fixed output· -``` - -## Input parameters - -Parameters in **boldface** are required; the others are optional. - -| Name | Unit | Description | Default | -|------|------|-------------|---------| -| Ncount | 1 | Specify statistics | 1000000 | -| seed | 1 | Specify RNG seed | 0 | -| dist | m | Distance between synthetic point-source and monitor | 1 | - -## Links - -- [Source code](Test_RNG_randvec_target_circle.instr) for `Test_RNG_randvec_target_circle.instr`. -- - ---- - -*Generated for mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/examples/Tests_RNG/Test_RNG_randvec_target_rect/Test_RNG_randvec_target_rect.md b/mcstas-comps/examples/Tests_RNG/Test_RNG_randvec_target_rect/Test_RNG_randvec_target_rect.md deleted file mode 100644 index 6edb85c91..000000000 --- a/mcstas-comps/examples/Tests_RNG/Test_RNG_randvec_target_rect/Test_RNG_randvec_target_rect.md +++ /dev/null @@ -1,41 +0,0 @@ -# The `Test_RNG_randvec_target_rect` Instrument - -*McStas: Instrument to get basic test output from random number generator.* - -## Identification - -- **Site:** Tests_RNG -- **Author:** Peter Willendrup -- **Origin:** DTU -- **Date:** Oct 2nd, 2020 - -## Description - -```text -Instrument to get basic test output from random number generator. - -The instrument generates 2 randon numbers pr. particle using randpm1(), -encoded into the particle x and y coordinates. - -For a low statistics, one may e.g. check that setting the seed gives -varied output or fixing the seed gives fixed output· -``` - -## Input parameters - -Parameters in **boldface** are required; the others are optional. - -| Name | Unit | Description | Default | -|------|------|-------------|---------| -| Ncount | 1 | Specify statistics | 1000000 | -| seed | 1 | Specify RNG seed | 0 | -| dist | m | Distance between synthetic point-source and monitor | 1 | - -## Links - -- [Source code](Test_RNG_randvec_target_rect.instr) for `Test_RNG_randvec_target_rect.instr`. -- - ---- - -*Generated for mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/examples/Tests_RNG/Test_RNG_randvec_target_rect_angular/Test_RNG_randvec_target_rect_angular.md b/mcstas-comps/examples/Tests_RNG/Test_RNG_randvec_target_rect_angular/Test_RNG_randvec_target_rect_angular.md deleted file mode 100644 index fa99f0f4d..000000000 --- a/mcstas-comps/examples/Tests_RNG/Test_RNG_randvec_target_rect_angular/Test_RNG_randvec_target_rect_angular.md +++ /dev/null @@ -1,41 +0,0 @@ -# The `Test_RNG_randvec_target_rect_angular` Instrument - -*McStas: Instrument to get basic test output from random number generator.* - -## Identification - -- **Site:** Tests_RNG -- **Author:** Peter Willendrup -- **Origin:** DTU -- **Date:** Oct 2nd, 2020 - -## Description - -```text -Instrument to get basic test output from random number generator. - -The instrument generates 2 randon numbers pr. particle using randpm1(), -encoded into the particle x and y coordinates. - -For a low statistics, one may e.g. check that setting the seed gives -varied output or fixing the seed gives fixed output· -``` - -## Input parameters - -Parameters in **boldface** are required; the others are optional. - -| Name | Unit | Description | Default | -|------|------|-------------|---------| -| Ncount | 1 | Specify statistics | 1000000 | -| seed | 1 | Specify RNG seed | 0 | -| angle | deg | Angular focusing settin | 45 | - -## Links - -- [Source code](Test_RNG_randvec_target_rect_angular.instr) for `Test_RNG_randvec_target_rect_angular.instr`. -- - ---- - -*Generated for mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/examples/Tests_grammar/Test_GROUP/Test_GROUP.md b/mcstas-comps/examples/Tests_grammar/Test_GROUP/Test_GROUP.md deleted file mode 100644 index 9fa39d40b..000000000 --- a/mcstas-comps/examples/Tests_grammar/Test_GROUP/Test_GROUP.md +++ /dev/null @@ -1,33 +0,0 @@ -# The `Test_GROUP` Instrument - -*McStas: Tests that GROUP logic works as expected* - -## Identification - -- **Site:** Tests_grammar -- **Author:** Erik Knudsen, Peter Willendrup -- **Origin:** DTU -- **Date:** 2021/09/30 - -## Description - -```text -Unit test for the GROUP logic -``` - -## Input parameters - -Parameters in **boldface** are required; the others are optional. - -| Name | Unit | Description | Default | -|------|------|-------------|---------| -| SLITW | m | Width of the GROUP'ed slits | 1e-6 | -| SIGNI | 1 | Which slit should be hit (left or right) | 1 | - -## Links - -- [Source code](Test_GROUP.instr) for `Test_GROUP.instr`. - ---- - -*Generated for mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/examples/Tests_grammar/Test_GROUP_restore.md b/mcstas-comps/examples/Tests_grammar/Test_GROUP_restore.md deleted file mode 100644 index 3226e25c4..000000000 --- a/mcstas-comps/examples/Tests_grammar/Test_GROUP_restore.md +++ /dev/null @@ -1,40 +0,0 @@ -# The `Test_GROUP_restore` Instrument - -*McStas: Test instrument for GROUP of monitors using restore_neutron* - -## Identification - -- **Site:** Tests_grammar -- **Author:** Peter Willendrup -- **Origin:** DTU/ESS -- **Date:** June 2024 - -## Description - -```text -Test instrument for GROUP of monitors using restore_neutron. - -1st test: Source emits intensity of 6e6 - "cube" positioned monitors each catch 1/6 of that. -2nd test: Reduced dimension of monitors mean a fraction is lost in the GROUP -3rd test: Adding a "catchall" arm recovers the intensity -``` - -## Input parameters - -Parameters in **boldface** are required; the others are optional. - -| Name | Unit | Description | Default | -|------|------|-------------|---------| -| dim | m | Width/height of monitors in "cubic" GROUP arrangement | 4 | -| catchall | 1 | Flag to indicate if "catchall"-Arm is included in GROUP | 0 | -| restore | | | 1 | -| src_dim | m | radius of 4PI-emitting source | 0.01 | - -## Links - -- [Source code](Test_GROUP_restore.instr) for `Test_GROUP_restore.instr`. -- A reference/HTML link for more information - ---- - -*Generated for mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/examples/Tests_grammar/Test_Jump_Iterate/Test_Jump_Iterate.md b/mcstas-comps/examples/Tests_grammar/Test_Jump_Iterate/Test_Jump_Iterate.md deleted file mode 100644 index 168e699a3..000000000 --- a/mcstas-comps/examples/Tests_grammar/Test_Jump_Iterate/Test_Jump_Iterate.md +++ /dev/null @@ -1,37 +0,0 @@ -# The `Test_Jump_Iterate` Instrument - -*McStas: A test of the JUMP ITERATE keyword to describe a long curved guide in a concise way.* - -## Identification - -- **Site:** Tests_grammar -- **Author:** E. Farhi -- **Origin:** ILL -- **Date:** March 30, 2015 - -## Description - -```text -A curved guide made of only two guide elements which are iterated with slight -rotation in between, to describe a long curved guide. -``` - -## Input parameters - -Parameters in **boldface** are required; the others are optional. - -| Name | Unit | Description | Default | -|------|------|-------------|---------| -| L | m | total length of curved section | 60 | -| numel | 1 | number of guide elements, each of length L/numel | 30 | -| R | m | curvature radius | 1500 | -| width | m | width of guide element | 0.03 | -| m | 1 | super-mirror coating wrt Ni, e.g. m=2 | 2 | - -## Links - -- [Source code](Test_Jump_Iterate.instr) for `Test_Jump_Iterate.instr`. - ---- - -*Generated for mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/examples/Tests_grammar/Unittest_ALLOW_BACKPROP/Unittest_ALLOW_BACKPROP.md b/mcstas-comps/examples/Tests_grammar/Unittest_ALLOW_BACKPROP/Unittest_ALLOW_BACKPROP.md deleted file mode 100644 index b030e2000..000000000 --- a/mcstas-comps/examples/Tests_grammar/Unittest_ALLOW_BACKPROP/Unittest_ALLOW_BACKPROP.md +++ /dev/null @@ -1,39 +0,0 @@ -# The `Unittest_ALLOW_BACKPROP` Instrument - -*McStas: Unittest for ALLOW_BACKPROP macro* - -## Identification - -- **Site:** Tests_grammar -- **Author:** Peter Willendrup -- **Origin:** ESS -- **Date:** February 2026 - -## Description - -```text -Unittest to ensure that the macro ALLOW_BACKPROP works correctly. - -The test instrument includes two monitors, with a selectable ALLOW_BACKPROP in between. -The second monitor is placed physically "earlier" than the first, but logically after. - -1) With Backprop=0 the second monitor (closer to the source) should yield a signal of 0 -2) With Backprop=1 the second monitor should measure a signal since backpropagation is allowed -``` - -## Input parameters - -Parameters in **boldface** are required; the others are optional. - -| Name | Unit | Description | Default | -|------|------|-------------|---------| -| Backprop | 1 | Flag to enable the ALLOW_BACKPROP macro | 0 | - -## Links - -- [Source code](Unittest_ALLOW_BACKPROP.instr) for `Unittest_ALLOW_BACKPROP.instr`. -- A reference/HTML link for more information - ---- - -*Generated for mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/examples/Tests_grammar/Unittest_JUMP_ITERATE/Unittest_JUMP_ITERATE.md b/mcstas-comps/examples/Tests_grammar/Unittest_JUMP_ITERATE/Unittest_JUMP_ITERATE.md deleted file mode 100644 index 1c1f795fe..000000000 --- a/mcstas-comps/examples/Tests_grammar/Unittest_JUMP_ITERATE/Unittest_JUMP_ITERATE.md +++ /dev/null @@ -1,38 +0,0 @@ -# The `Unittest_JUMP_ITERATE` Instrument - -*McStas: JUMP ITERATE unittest* - -## Identification - -- **Site:** Tests_grammar -- **Author:** Peter Willendrup -- **Origin:** DTU -- **Date:** Oct 28th, 2021 - -## Description - -```text -JUMP ITERATE unittest - -The instrument uses JUMP ITERATE to let each particle make n='jumps' returns -to the monitor. The particles have unit weight and hence the intensity scales -with the simulated statistics. (Use input parameter Ncount for setting the stats). -``` - -## Input parameters - -Parameters in **boldface** are required; the others are optional. - -| Name | Unit | Description | Default | -|------|------|-------------|---------| -| Ncount | 1 | Specify statistics | 1000 | -| jumps | 1 | Number of jumps | 10 | - -## Links - -- [Source code](Unittest_JUMP_ITERATE.instr) for `Unittest_JUMP_ITERATE.instr`. -- - ---- - -*Generated for mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/examples/Tests_grammar/Unittest_JUMP_WHEN/Unittest_JUMP_WHEN.md b/mcstas-comps/examples/Tests_grammar/Unittest_JUMP_WHEN/Unittest_JUMP_WHEN.md deleted file mode 100644 index 47c1bac7b..000000000 --- a/mcstas-comps/examples/Tests_grammar/Unittest_JUMP_WHEN/Unittest_JUMP_WHEN.md +++ /dev/null @@ -1,38 +0,0 @@ -# The `Unittest_JUMP_WHEN` Instrument - -*McStas: JUMP WHEN unittest* - -## Identification - -- **Site:** Tests_grammar -- **Author:** Peter Willendrup -- **Origin:** DTU -- **Date:** Oct 28th, 2021 - -## Description - -```text -JUMP WHEN unittest. - -One unit of intensity is emitted from a 1x1 m. The particles generated in -one source quadrant is repteated 'jumps' times. Resulting intensity should be: -1 + 0.25*jumps; -``` - -## Input parameters - -Parameters in **boldface** are required; the others are optional. - -| Name | Unit | Description | Default | -|------|------|-------------|---------| -| jumps | 1 | Number of jumps to do | 10 | -| Pp0 | 1 | Dummy input parameter used internally | 0 | - -## Links - -- [Source code](Unittest_JUMP_WHEN.instr) for `Unittest_JUMP_WHEN.instr`. -- - ---- - -*Generated for mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/examples/Tests_grammar/Unittest_SPLIT/Unittest_SPLIT.md b/mcstas-comps/examples/Tests_grammar/Unittest_SPLIT/Unittest_SPLIT.md deleted file mode 100644 index 9c98da649..000000000 --- a/mcstas-comps/examples/Tests_grammar/Unittest_SPLIT/Unittest_SPLIT.md +++ /dev/null @@ -1,36 +0,0 @@ -# The `Unittest_SPLIT` Instrument - -*McStas: SPLIT unittest* - -## Identification - -- **Site:** Tests_grammar -- **Author:** Peter Willendrup -- **Origin:** DTU -- **Date:** Oct 28th, 2021 - -## Description - -```text -SPLIT unittest. - -One unit of intensity is emitted from a 1x1 m. -``` - -## Input parameters - -Parameters in **boldface** are required; the others are optional. - -| Name | Unit | Description | Default | -|------|------|-------------|---------| -| SPLITS | 1 | Number of SPLIT to do | 10 | -| Pp0 | 1 | Dummy input parameter used internally | 1 | - -## Links - -- [Source code](Unittest_SPLIT.instr) for `Unittest_SPLIT.instr`. -- - ---- - -*Generated for mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/examples/Tests_grammar/Unittest_SPLIT_sample/Unittest_SPLIT_sample.md b/mcstas-comps/examples/Tests_grammar/Unittest_SPLIT_sample/Unittest_SPLIT_sample.md deleted file mode 100644 index 6ee6cb49a..000000000 --- a/mcstas-comps/examples/Tests_grammar/Unittest_SPLIT_sample/Unittest_SPLIT_sample.md +++ /dev/null @@ -1,37 +0,0 @@ -# The `Unittest_SPLIT_sample` Instrument - -*McStas: SPLIT unittest including samples* - -## Identification - -- **Site:** Tests_grammar -- **Author:** Peter Willendrup -- **Origin:** DTU -- **Date:** Oct 28th, 2021 - -## Description - -```text -SPLIT unittest. - -One unit of intensity is emitted from a 1x1 m. -``` - -## Input parameters - -Parameters in **boldface** are required; the others are optional. - -| Name | Unit | Description | Default | -|------|------|-------------|---------| -| SAMPLE | | | 1 | -| SPLITS | 1 | Number of SPLIT to do | 10 | -| Pp0 | 1 | Dummy input parameter used internally | 1 | - -## Links - -- [Source code](Unittest_SPLIT_sample.instr) for `Unittest_SPLIT_sample.instr`. -- - ---- - -*Generated for mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/examples/Tests_monitors/Test_Cyl_monitors/Test_Cyl_monitors.md b/mcstas-comps/examples/Tests_monitors/Test_Cyl_monitors/Test_Cyl_monitors.md deleted file mode 100644 index 372dfd55d..000000000 --- a/mcstas-comps/examples/Tests_monitors/Test_Cyl_monitors/Test_Cyl_monitors.md +++ /dev/null @@ -1,43 +0,0 @@ -# The `Test_Cyl_monitors` Instrument - -*McStas: Test Monitor_nD against basic monitor* - -## Identification - -- **Site:** Tests_monitors -- **Author:** P. Willendrup -- **Origin:** DTU -- **Date:** 30. September 2020 - -## Description - -```text -A test instrument to compare Monitor_nD output against basic 1D and 2D monitors. -``` - -## Input parameters - -Parameters in **boldface** are required; the others are optional. - -| Name | Unit | Description | Default | -|------|------|-------------|---------| -| lambda | Angs | Wavelength at monochromator, computed from DM and THETA_M if left as 0. | 5 | -| L1 | m | Source-sample distance | 10 | -| bins | | Number of bins on monitors | 100 | -| omega | deg | Focusing angle wrt. sample | 90 | -| thmin | deg | Minimum angle mesured | -180 | -| thmax | deg | Maximum angle mesured | 180 | -| focus_aw | deg | Angular width of focusing from sample | 10 | -| focus_ah | deg | Angular height of focusing from sample | 2 | -| focus_xw | m | Width of focusing from sample | 0 | -| focus_yh | m | Height of focusing from sample | 0 | -| tx | | | 0 | -| tz | | | 0 | - -## Links - -- [Source code](Test_Cyl_monitors.instr) for `Test_Cyl_monitors.instr`. - ---- - -*Generated for mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/examples/Tests_monitors/Test_Monitor_nD/Test_Monitor_nD.md b/mcstas-comps/examples/Tests_monitors/Test_Monitor_nD/Test_Monitor_nD.md deleted file mode 100644 index 367ebf87d..000000000 --- a/mcstas-comps/examples/Tests_monitors/Test_Monitor_nD/Test_Monitor_nD.md +++ /dev/null @@ -1,38 +0,0 @@ -# The `Test_Monitor_nD` Instrument - -*McStas: Test Monitor_nD against basic monitor* - -## Identification - -- **Site:** Tests_monitors -- **Author:** P. Willendrup -- **Origin:** DTU -- **Date:** 30. September 2020 - -## Description - -```text -A test instrument to compare Monitor_nD output against basic 1D and 2D monitors. -``` - -## Input parameters - -Parameters in **boldface** are required; the others are optional. - -| Name | Unit | Description | Default | -|------|------|-------------|---------| -| lambda | Angs | Wavelength at monochromator, computed from DM and THETA_M if left as 0. | 1 | -| L1 | m | Source-sample distance | 10 | -| bins | | Number of bins on monitors | 100 | -| xw | m | Width of detector | 0.11 | -| yh | m | Height of detector | 0.16 | -| hdiv | deg | Horizontal divergence measured by detector | 2 | -| vdiv | deg | Vertical divergence measured by detector | 2 | - -## Links - -- [Source code](Test_Monitor_nD.instr) for `Test_Monitor_nD.instr`. - ---- - -*Generated for mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/examples/Tests_monitors/Test_TOF_PSDmonitor_toQ/Test_TOF_PSDmonitor_toQ.md b/mcstas-comps/examples/Tests_monitors/Test_TOF_PSDmonitor_toQ/Test_TOF_PSDmonitor_toQ.md deleted file mode 100644 index ad2cf4803..000000000 --- a/mcstas-comps/examples/Tests_monitors/Test_TOF_PSDmonitor_toQ/Test_TOF_PSDmonitor_toQ.md +++ /dev/null @@ -1,36 +0,0 @@ -# The `Test_TOF_PSDmonitor_toQ` Instrument - -*McStas: Test instrument for monitor TOF_PSDmonitor_toQ (Rob Dalgliesh)* - -## Identification - -- **Site:** Tests_monitors -- **Author:** Peter Willendrup -- **Origin:** ESS -- **Date:** 20251207 - -## Description - -```text -Rudimentary test-instrument for monitor TOF_PSDmonitor_toQ developed by Rob Dalgliesh, ISIS. - -The tested monitor is a 1-dimensional Q-monitor that calculates Q from "measured" time-of-flight, -i.e. not from particle velocity parameters. -``` - -## Input parameters - -Parameters in **boldface** are required; the others are optional. - -| Name | Unit | Description | Default | -|------|------|-------------|---------| -| theta | degs | Scattering angle | 0.91 | - -## Links - -- [Source code](Test_TOF_PSDmonitor_toQ.instr) for `Test_TOF_PSDmonitor_toQ.instr`. -- - ---- - -*Generated for mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/examples/Tests_optics/Test_Al_windows/Test_Al_windows.md b/mcstas-comps/examples/Tests_optics/Test_Al_windows/Test_Al_windows.md deleted file mode 100644 index e6973964f..000000000 --- a/mcstas-comps/examples/Tests_optics/Test_Al_windows/Test_Al_windows.md +++ /dev/null @@ -1,45 +0,0 @@ -# The `Test_Al_windows` Instrument - -*McStas: Small test instrument for studying Al-window performance* - -## Identification - -- **Site:** Tests_optics -- **Author:** Peter Willendrup -- **Origin:** ESS -- **Date:** 20260316 - -## Description - -```text -Test instrument for studying transmission through Al-windows. - -Includes 3 models of increasing complexity / sophistication: -1) Al_window(),: -- simple linear absorption + 4th order scattering model -- infinite-plane geometry -2) PowderN() -- Material specified from Al.laz input-file -- Parametrized for 80% statistics -> transmission -3) NCrystal() -- Material specified from local Al as .ncmat format input -(generated from CIF file COD / 1502689) -``` - -## Input parameters - -Parameters in **boldface** are required; the others are optional. - -| Name | Unit | Description | Default | -|------|------|-------------|---------| -| Window | 1 | Choice of Al_Window (1), PowderN (2) or NCrystal (3) model | 1 | -| thickness | m | Thickness of Al window | 0.005 | - -## Links - -- [Source code](Test_Al_windows.instr) for `Test_Al_windows.instr`. -- - ---- - -*Generated for mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/examples/Tests_optics/Test_Collimator_Radial/Test_Collimator_Radial.md b/mcstas-comps/examples/Tests_optics/Test_Collimator_Radial/Test_Collimator_Radial.md deleted file mode 100644 index 6c8557cb1..000000000 --- a/mcstas-comps/examples/Tests_optics/Test_Collimator_Radial/Test_Collimator_Radial.md +++ /dev/null @@ -1,36 +0,0 @@ -# The `Test_Collimator_Radial` Instrument - -*McStas: Cross comparison of radial collimator components* - -## Identification - -- **Site:** Tests_optics -- **Author:** E. Farhi [farhi@ill.fr] -- **Origin:** ILL -- **Date:** Sept 1st, 2008 - -## Description - -```text -Cross comparison of radial collimator components, using McStas and -contributed components. It shows that all implementations are equivalent. -The Exact_radial_coll contributed component also takes into account the absorbing -blade thickness between slits, which decreases slightly intensity. -``` - -## Input parameters - -Parameters in **boldface** are required; the others are optional. - -| Name | Unit | Description | Default | -|------|------|-------------|---------| -| Collimator | 1 | Choice of radial collimator component to test, with 1=Collimator_Radial, 2=Collimator_ROC, 3=Exact_radial_coll. | 1 | -| Powder | string | Reflection list for powder-sample | "Na2Ca3Al2F14.laz" | - -## Links - -- [Source code](Test_Collimator_Radial.instr) for `Test_Collimator_Radial.instr`. - ---- - -*Generated for mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/examples/Tests_optics/Test_Conics_pairs/Test_Conics_pairs.md b/mcstas-comps/examples/Tests_optics/Test_Conics_pairs/Test_Conics_pairs.md deleted file mode 100644 index 453ae6f53..000000000 --- a/mcstas-comps/examples/Tests_optics/Test_Conics_pairs/Test_Conics_pairs.md +++ /dev/null @@ -1,43 +0,0 @@ -# The `Test_Conics_pairs` Instrument - -*McStas: Unit test instrument for Conics Pairs components* - -## Identification - -- **Site:** Tests_optics -- **Author:** Erik B Knudsen (erkn@fysik.dtu.dk) -- **Origin:** DTU Physics -- **Date:** Dec '21 - -## Description - -```text -Example instrument that shows some ways of using Conics_Ph and Conics_EH -``` - -## Input parameters - -Parameters in **boldface** are required; the others are optional. - -| Name | Unit | Description | Default | -|------|------|-------------|---------| -| OPTIC | | Flag to choose between 0: no optic, 1: EH pair, 2: PH pair | 1 | -| ssize | m | Source radius | 1e-6 | -| fs | m | Distance betwee nsource and optic mid plane | 10 | -| fi | m | Distance between optics mid plane and focal point. | 10 | -| R0 | 1 | Mirror substrate reflectivity | 0.99 | -| m | 1 | m-value of supermirrors | 3 | -| W | AA-1 | Width of supermirror cut-off | 0.003 | -| alpha | AA | Slope of reflectivity for reflectivity curve approximation | 6.07 | -| nshells | 1 | Number of Wolter-optic shells | 4 | -| rmin | | | 0.0031416 | -| rmax | | | 0.05236 | - -## Links - -- [Source code](Test_Conics_pairs.instr) for `Test_Conics_pairs.instr`. -- - ---- - -*Generated for mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/examples/Tests_optics/Test_DiskChoppers/Test_DiskChoppers.md b/mcstas-comps/examples/Tests_optics/Test_DiskChoppers/Test_DiskChoppers.md deleted file mode 100644 index 926c78647..000000000 --- a/mcstas-comps/examples/Tests_optics/Test_DiskChoppers/Test_DiskChoppers.md +++ /dev/null @@ -1,35 +0,0 @@ -# The `Test_DiskChoppers` Instrument - -*McStas: Simple test instrument that compares the use of 2 DiskChoppers with one MultiDiskChopper* - -## Identification - -- **Site:** Tests_optics -- **Author:** Peter Willendrup -- **Origin:** DTU -- **Date:** September 2018 - -## Description - -```text -Simple test instrument that compares the use of 2 DiskChoppers with one MultiDiskChopper -``` - -## Input parameters - -Parameters in **boldface** are required; the others are optional. - -| Name | Unit | Description | Default | -|------|------|-------------|---------| -| chopper | int | chopper=0 selects two DiskChoppers, chopper=1 selects one MultiDiskChopper | 0 | -| lambda | AA | Mean wavelength produced from the source | 10 | -| dlambda | AA | Halfwidth of wavelenghts produced from the source | 9.9 | -| deltay | m | Vertical displacement of MultiDiskChopper vertical centre of rotation (default is to be positioned like DiskChopper) | -0.19 | - -## Links - -- [Source code](Test_DiskChoppers.instr) for `Test_DiskChoppers.instr`. - ---- - -*Generated for mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/examples/Tests_optics/Test_DiskChoppers2/Test_DiskChoppers2.md b/mcstas-comps/examples/Tests_optics/Test_DiskChoppers2/Test_DiskChoppers2.md deleted file mode 100644 index 95e42ff36..000000000 --- a/mcstas-comps/examples/Tests_optics/Test_DiskChoppers2/Test_DiskChoppers2.md +++ /dev/null @@ -1,41 +0,0 @@ -# The `Test_DiskChoppers2` Instrument - -*McStas: Simple test instrument that compares DiskChoppers with a simple, rotating Slit.* - -## Identification - -- **Site:** Tests_optics -- **Author:** Peter Willendrup -- **Origin:** DTU -- **Date:** September 2018 - -## Description - -```text -Simple test instrument that compares DiskChoppers with a simple, rotating Slit. -When ABSORBER is set, a slab of B4C is acts as absorbing medium. -``` - -## Input parameters - -Parameters in **boldface** are required; the others are optional. - -| Name | Unit | Description | Default | -|------|------|-------------|---------| -| chopper | int | chopper=0 selects DiskChopper, chopper=1 selects a rotating Slit | 0 | -| lambda | AA | Mean wavelength produced from the source | 10 | -| dlambda | AA | Halfwidth of wavelenghts produced from the source | 9.9 | -| deltay | m | Position of centre of rotation vs. beam in slit case | 0.19 | -| dx | | | 0.016 | -| nu | Hz | Chopper frequency | 10 | -| phase | deg | Chopper phase | 0 | -| ABSORBER | 1 | Flag to indicate if slab is B4C(=1) or perfect(=0) | 0 | -| tz | m | Thickness of B4C slab | 0.001 | - -## Links - -- [Source code](Test_DiskChoppers2.instr) for `Test_DiskChoppers2.instr`. - ---- - -*Generated for mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/examples/Tests_optics/Test_Fermi/Test_Fermi.md b/mcstas-comps/examples/Tests_optics/Test_Fermi/Test_Fermi.md deleted file mode 100644 index 06bd93b82..000000000 --- a/mcstas-comps/examples/Tests_optics/Test_Fermi/Test_Fermi.md +++ /dev/null @@ -1,46 +0,0 @@ -# The `Test_Fermi` Instrument - -*McStas: Cross comparison of Fermi Chopper components* - -## Identification - -- **Site:** Tests_optics -- **Author:** E. Farhi [farhi@ill.fr] -- **Origin:** ILL -- **Date:** Sept 1st, 2008 - -## Description - -```text -Cross comparison of Fermi Chopper components, using McStas and -contributed components, as well as rotating collimator approximations. It -shows that all implementations are equivalent. However, approximating rotating -guide are 30% faster than McStas Fermi chopper. -``` - -## Input parameters - -Parameters in **boldface** are required; the others are optional. - -| Name | Unit | Description | Default | -|------|------|-------------|---------| -| Fermi | 1 | Choice of Fermi chopper component to test, with 1=FermiChopper, 3=FermiChopper_ILL, 4=rotating Guide_gravity, 5=rotating Guide_channeled | 1 | -| lambda | AA | Mean wavelength from source | 3.39 | -| width_FC | m | total slit pack width | 0.044 | -| height_FC | m | height of FC slit pack | 0.064 | -| length_FC | m | length of FC slit pack | 0.012 | -| FC_Hz | Hz | rotation speed. Omega=2*PI*nu in rad/s, nu*60 in rpm | 100 | -| Nslit_FC | | Number of slits in FC slit package | 120 | -| d_SF | m | distance from Source to FC center | 3 | -| d_FD | m | distance from FC center to Detector | 3 | -| phase | deg | FC phase. Use -0 for automatic | 271.92 | -| time_to_arrival | | | 0 | -| time_window_width | | | 0 | - -## Links - -- [Source code](Test_Fermi.instr) for `Test_Fermi.instr`. - ---- - -*Generated for mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/examples/Tests_optics/Test_FocalisationMirrors/Test_FocalisationMirrors.md b/mcstas-comps/examples/Tests_optics/Test_FocalisationMirrors/Test_FocalisationMirrors.md deleted file mode 100644 index c9e2e34da..000000000 --- a/mcstas-comps/examples/Tests_optics/Test_FocalisationMirrors/Test_FocalisationMirrors.md +++ /dev/null @@ -1,44 +0,0 @@ -# The `Test_FocalisationMirrors` Instrument - -*McStas: Test instrument for neutron focalisation with a set of supermirrors. -No guide / velocity selector -One parabolic SM converges the incoming beam to its focal point, then one -elliptic SM (with primary focal point at same location as parabolic SM focal point) -images the focal point onto the detector.* - -## Identification - -- **Site:** Tests_optics -- **Author:** Sylvain Desert -- **Origin:** LLB -- **Date:** 2007. - -## Description - -```text -Test instrument for the MirrorElli and MirrorPara components -``` - -## Input parameters - -Parameters in **boldface** are required; the others are optional. - -| Name | Unit | Description | Default | -|------|------|-------------|---------| -| Qmin | AA^-1 | Minimum momentum transfer on the detector | .0001 | -| G | 1 | Ratio of the mirror focal length = increase in accepted divergence angle | 1 | -| H | m | Height of mirrors | .0001 | -| F | m | Parabolic focal | .00066 | -| DET | m | Distance between the two elliptic focal points | 8.2 | -| lambda | AA | Mean wavelength of neutrons | 14 | -| divergence | deg | Source divergence | .1 | -| BeamWidth | m | Length of the source to focalize | .05 | -| TetaMin | deg | Minimum angle that must be reflected by the device assuming m=3 SM (TetaMin=3 for 5A and above neutron) | 3 | - -## Links - -- [Source code](Test_FocalisationMirrors.instr) for `Test_FocalisationMirrors.instr`. - ---- - -*Generated for mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/examples/Tests_optics/Test_Guides/Test_Guides.md b/mcstas-comps/examples/Tests_optics/Test_Guides/Test_Guides.md deleted file mode 100644 index 1a1b538df..000000000 --- a/mcstas-comps/examples/Tests_optics/Test_Guides/Test_Guides.md +++ /dev/null @@ -1,34 +0,0 @@ -# The `Test_Guides` Instrument - -*McStas: Cross comparison of Guide components* - -## Identification - -- **Site:** Tests_optics -- **Author:** E. Farhi [farhi@ill.fr] -- **Origin:** ILL -- **Date:** Sept 1st, 2008 - -## Description - -```text -Cross comparison of Guide components, using McStas and -contributed components. It shows that all implementations are equivalent, -except the Guide_honeycomb which has a different geometry. -``` - -## Input parameters - -Parameters in **boldface** are required; the others are optional. - -| Name | Unit | Description | Default | -|------|------|-------------|---------| -| Guide | 1 | Choice of Guide component to test, with 1=Guide, 2=Guide_channeled, 3=Guide_gravity, 4=Guide_wavy, 5=Guide_curved 6=Elliptic_guide_gravity 7=Guide_honeycomb | 1 | - -## Links - -- [Source code](Test_Guides.instr) for `Test_Guides.instr`. - ---- - -*Generated for mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/examples/Tests_optics/Test_Guides_Curved/Test_Guides_Curved.md b/mcstas-comps/examples/Tests_optics/Test_Guides_Curved/Test_Guides_Curved.md deleted file mode 100644 index c8a1d830d..000000000 --- a/mcstas-comps/examples/Tests_optics/Test_Guides_Curved/Test_Guides_Curved.md +++ /dev/null @@ -1,35 +0,0 @@ -# The `Test_Guides_Curved` Instrument - -*McStas: Cross comparison of curved Guide components* - -## Identification - -- **Site:** Tests_optics -- **Author:** P. Willendrup, DTU Fysik -- **Origin:** DTU Fysik -- **Date:** Nov 1st, 2013 - -## Description - -```text -Cross comparison of curved Guide components, using McStas and -contributed components. It shows that all implementations are to good approximation equivalent. -``` - -## Input parameters - -Parameters in **boldface** are required; the others are optional. - -| Name | Unit | Description | Default | -|------|------|-------------|---------| -| Guide | 1 | Choice of Guide component to test, with 1=Guide_curved 2=Elliptic_guide_gravity, 3=Pol_bender, 4=Bender. | 1 | -| curvature | m | Radius of curvature | 1000 | -| length | m | Length of the guide | 100 | - -## Links - -- [Source code](Test_Guides_Curved.instr) for `Test_Guides_Curved.instr`. - ---- - -*Generated for mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/examples/Tests_optics/Test_Lens/Test_Lens.md b/mcstas-comps/examples/Tests_optics/Test_Lens/Test_Lens.md deleted file mode 100644 index 30dad4c56..000000000 --- a/mcstas-comps/examples/Tests_optics/Test_Lens/Test_Lens.md +++ /dev/null @@ -1,35 +0,0 @@ -# The `Test_Lens` Instrument - -*McStas: Demonstrate focusing effect of refractive lenses - -%Example: lambda=10 position_PSD=8.2 Detector: Last_PSD_I=2.6829e-19* - -## Identification - -- **Site:** Tests_optics -- **Author:** E. Farhi/C. Monzat -- **Origin:** ILL -- **Date:** Dec 2009. - -## Description - -```text - -``` - -## Input parameters - -Parameters in **boldface** are required; the others are optional. - -| Name | Unit | Description | Default | -|------|------|-------------|---------| -| lambda | Angs | Source wavelength | 10 | -| position_PSD | m | Distance from last lens to first monitor | 8.2 | - -## Links - -- [Source code](Test_Lens.instr) for `Test_Lens.instr`. - ---- - -*Generated for mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/examples/Tests_optics/Test_Monochromator_bent/Test_Monochromator_bent.md b/mcstas-comps/examples/Tests_optics/Test_Monochromator_bent/Test_Monochromator_bent.md deleted file mode 100644 index 1bd4aa2ab..000000000 --- a/mcstas-comps/examples/Tests_optics/Test_Monochromator_bent/Test_Monochromator_bent.md +++ /dev/null @@ -1,33 +0,0 @@ -# The `Test_Monochromator_bent` Instrument - -*McStas: Basic test instrument for the Monochromator_bent component* - -## Identification - -- **Site:** Tests_optics -- **Author:** Daniel Lomholt Christensen -- **Origin:** ILL -- **Date:** 14:13:59 on January 23, 2024 - -## Description - -```text -Basic test instrument for the Monochromator_bent component -``` - -## Input parameters - -Parameters in **boldface** are required; the others are optional. - -| Name | Unit | Description | Default | -|------|------|-------------|---------| -| mono_rotation | deg | Rotation of the monochromator, relative to the z axis | 43.5337 | -| mono_mos | arcmin | Monochromator mosaicity | 0 | - -## Links - -- [Source code](Test_Monochromator_bent.instr) for `Test_Monochromator_bent.instr`. - ---- - -*Generated for mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/examples/Tests_optics/Test_Monochromator_bent_complex/Test_Monochromator_bent_complex.md b/mcstas-comps/examples/Tests_optics/Test_Monochromator_bent_complex/Test_Monochromator_bent_complex.md deleted file mode 100644 index ade1988c4..000000000 --- a/mcstas-comps/examples/Tests_optics/Test_Monochromator_bent_complex/Test_Monochromator_bent_complex.md +++ /dev/null @@ -1,43 +0,0 @@ -# The `Test_Monochromator_bent_complex` Instrument - -*McStas: A test instrument that highlights Monochromator Bent complex's capabilities* - -## Identification - -- **Site:** Tests_optics -- **Author:** Jakob Lass (jakob.lass@psi.ch) and modified by Daniel Lomholt Christensen (daniel.lomholt.2000@gmail.com) -- **Origin:** PSI/LSN -- **Date:** 20250702 - -## Description - -```text -This is a first draft for the WARP instrument proposal, as created by -Daniel Gabriel Mazzone (daniel.mazzone@psi.ch) and Jakob Lass -(jakob.lass@psi.ch). This instrument introduces how to use the Monochromator_bent_complex -component in an instrument draft. -``` - -## Input parameters - -Parameters in **boldface** are required; the others are optional. - -| Name | Unit | Description | Default | -|------|------|-------------|---------| -| sample_x | m | Source horz illumination | 0.005 | -| sample_y | m | Source vert illumination | 0.015 | -| L0 | m | Z-displacement of detector wrt. rotation point | 1.38000 | -| L1 | m | Y-displacement of detector wrt. rotation point | 2.47143 | -| Ld | m | Detector width | 2 | -| det_rot | m | Detector rotation | -6.00000 | -| mos | arcmin | Monochromator mosaicity | 60 | -| extra | deg | Perturbation rotation angle | 0 | -| use_single_plane | flag | Flag indicating whether the crystal should be instantiated with a single plane of reflection, instead of 92 planes | 0 | - -## Links - -- [Source code](Test_Monochromator_bent_complex.instr) for `Test_Monochromator_bent_complex.instr`. - ---- - -*Generated for mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/examples/Tests_optics/Test_Monochromators/Test_Monochromators.md b/mcstas-comps/examples/Tests_optics/Test_Monochromators/Test_Monochromators.md deleted file mode 100644 index 3608ab0ac..000000000 --- a/mcstas-comps/examples/Tests_optics/Test_Monochromators/Test_Monochromators.md +++ /dev/null @@ -1,57 +0,0 @@ -# The `Test_Monochromators` Instrument - -*McStas: Compares intensities of Monochromator components.* - -## Identification - -- **Site:** Tests_optics -- **Author:** Peter Christiansen -- **Origin:** RISOE. -- **Date:** July 2006. - -## Description - -```text -Very simple setup to compare intensities diffracted by Monochromators. -It shows that implementations are equivalent. - -PG 002 oriented examples: -``` - -## Input parameters - -Parameters in **boldface** are required; the others are optional. - -| Name | Unit | Description | Default | -|------|------|-------------|---------| -| Mono | 1 | Choice of Monochromator component to use, with 1=Monochromator_flat 2=Monochromator_pol 3=Monochromator_pol (forcing 1% events to be reflected) 4=Monochromator_curved (in flat mode) 5=Monochromator_2foc (contrib, flat mode) 6=Single_crystal 7=NCrystal | 1 | -| lmin | Angs | Minimum wavelength produced from source | 1.6 | -| lmax | Angs | Maximum wavelength produced from source | 2.4 | -| Moz | arcmin | Mosaicity | 40 | -| reflections | str | input-file for Single_crystal (Mono=6) | "C_graphite.lau" | -| NXrefs | str | input-file for NCrystal (Mono=7) | "C_sg194_pyrolytic_graphite.ncmat" | -| DM | Angs | Mono lattice spacing (should be chosen compatible with file-unput when Mono=6/7 | 3.3539 | -| PG | 1 | PG-mode for Single_crystal (range 0-1) | 0 | -| powder | 1 | Powder-mode for Single_crystal | 0 | -| order | 1 | Maximum order of scattering in Single_crystal | 0 | -| ax | Angs or 1/Angs | x-coordinate of 1st direct/recip lattice unit cell vector (depends on recip setting) | 0 | -| ay | Angs or 1/Angs | y-coordinate of 1st direct/recip lattice unit cell vector (depends on recip setting) | 0 | -| az | Angs or 1/Angs | z-coordinate of 1st direct/recip lattice unit cell vector (depends on recip setting) | 0 | -| bx | Angs or 1/Angs | x-coordinate of 2nd direct/recip lattice unit cell vector (depends on recip setting) | 0 | -| by | Angs or 1/Angs | y-coordinate of 2nd direct/recip lattice unit cell vector (depends on recip setting) | 0 | -| bz | Angs or 1/Angs | z-coordinate of 2nd direct/recip lattice unit cell vector (depends on recip setting) | 0 | -| cx | Angs or 1/Angs | x-coordinate of 3rd direct/recip lattice unit cell vector (depends on recip setting) | 0 | -| cy | Angs or 1/Angs | y-coordinate of 3rd direct/recip lattice unit cell vector (depends on recip setting) | 0 | -| cz | Angs or 1/Angs | x-coordinate of 3rd direct/recip lattice unit cell vector (depends on recip setting) | 0 | -| recip | 1 | Flag to indicate if ax/y/z, bx/y/z, cx/y/z lattice corrdinates are in direct (=0) or reciprocal space units | 0 | -| dthick | m | Thickness of mono slab in Mono=6/7 cases | 0.0015 | -| p_transmit | 1 | Probability of transmission in Single_crystal Mono=6 case | 0.001 | -| lambda | Angs | Target mochromator wavelength | 2.0 | - -## Links - -- [Source code](Test_Monochromators.instr) for `Test_Monochromators.instr`. - ---- - -*Generated for mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/examples/Tests_optics/Test_NMO/Test_NMO.md b/mcstas-comps/examples/Tests_optics/Test_NMO/Test_NMO.md deleted file mode 100644 index daf9dcfc1..000000000 --- a/mcstas-comps/examples/Tests_optics/Test_NMO/Test_NMO.md +++ /dev/null @@ -1,55 +0,0 @@ -# The `Test_NMO` Instrument - -*McStas: Implements a test instrument for the component FlatEllipse_finite_mirror.* - -## Identification - -- **Site:** Tests_optics -- **Author:** Christoph Herb, TUM -- **Origin:** TUM -- **Date:** 2022-2023 - -## Description - -```text -Implements a test instrument for the component FlatEllipse_finite_mirror, -implementing Nested Mirror Optic (NMO) as suggested by Böni et al. -``` - -## Input parameters - -Parameters in **boldface** are required; the others are optional. - -| Name | Unit | Description | Default | -|------|------|-------------|---------| -| det_width | m | Detector width | 0.218 | -| source_width | m | Source width | 0.03 | -| source_height | m | Source height | 0.00000001 | -| lam_source | AA | Central source wavelength | 5 | -| dL | AA | Source wavelength spread | 0.5 | -| v_divergence | deg | Source vertical divergence | 2.5 | -| h_divergence | deg | Source horizontal divergence | 0.000001 | -| b0 | m | Parameter r0 of mirrors (distance to the mirror at lStart) | 0.2076 | -| mf | 1 | M-value of the inner side of the coating | 100 | -| mb | 1 | M-value of the outer side of the coating | 0 | -| mirror_width | m | Width of mirrors | 0 | -| focal_length | m | Mirror focal-length | 6 | -| mirrors | 1 | Number of NMO mirrors | 29 | -| mirror_sidelength | m | Side-length of mirrors | 0.1 | -| lStart | m | Parameter lStart of the mirrors | -0.6 | -| lEnd | m | Parameter lEnd of the mirrors | 0.6 | -| pixels | 1 | Number of detector pixels | 100 | -| flux | n/s/cm^2/st/AA | Source flux | 1 | -| det_width_focus | m | Detector width at focusing pt. | 0.03 | -| rs_at_zero_str | str | Filename to specify mirror rfront_inner_file (e.g. "rs_at_lstart.txt") | "NULL" | -| activate_mirror | 1 | Flag to activate mirror | 1 | - -## Links - -- [Source code](Test_NMO.instr) for `Test_NMO.instr`. -- P Böni presentation at PSI NFO workshop -- Christoph Herb et al., Nucl. Instrum. Meth. A 1040, 1671564 (1-18) 2022. - ---- - -*Generated for mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/examples/Tests_optics/Test_PSD_Detector/Test_PSD_Detector.md b/mcstas-comps/examples/Tests_optics/Test_PSD_Detector/Test_PSD_Detector.md deleted file mode 100644 index cfcb41133..000000000 --- a/mcstas-comps/examples/Tests_optics/Test_PSD_Detector/Test_PSD_Detector.md +++ /dev/null @@ -1,34 +0,0 @@ -# The `Test_PSD_Detector` Instrument - -*McStas: Test for PSD_Detector component* - -## Identification - -- **Site:** Tests_optics -- **Author:** Thorwald van Vuure -- **Origin:** ILL -- **Date:** Thorwald van Vuure - -## Description - -```text -Test for PSD_Detector component showing charge drift -and parallax effect when rotating detector with e.g. 'rot=10' -``` - -## Input parameters - -Parameters in **boldface** are required; the others are optional. - -| Name | Unit | Description | Default | -|------|------|-------------|---------| -| rot | deg | rotation angle of detector | 0 | - -## Links - -- [Source code](Test_PSD_Detector.instr) for `Test_PSD_Detector.instr`. -- The PSD_Detector component - ---- - -*Generated for mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/examples/Tests_optics/Test_Pol_Bender_Vs_Guide_Curved/Test_Pol_Bender_Vs_Guide_Curved.md b/mcstas-comps/examples/Tests_optics/Test_Pol_Bender_Vs_Guide_Curved/Test_Pol_Bender_Vs_Guide_Curved.md deleted file mode 100644 index a78bd102d..000000000 --- a/mcstas-comps/examples/Tests_optics/Test_Pol_Bender_Vs_Guide_Curved/Test_Pol_Bender_Vs_Guide_Curved.md +++ /dev/null @@ -1,37 +0,0 @@ -# The `Test_Pol_Bender_Vs_Guide_Curved` Instrument - -*McStas: Test that Pol_bender and Guide_curved intensities are the same.* - -## Identification - -- **Site:** Tests_optics -- **Author:** Peter Christiansen (peter.christiansen@risoe.dk) -- **Origin:** RISOE -- **Date:** July 2006 - -## Description - -```text -Using the WHEN keyword 2 Pol_bender (pos and neg radius) are -compared to a Pol_guide. -The intensity on the monitor should be roughly 0.000228 -with mean 8.65+-0.62 AA. -``` - -## Input parameters - -Parameters in **boldface** are required; the others are optional. - -| Name | Unit | Description | Default | -|------|------|-------------|---------| -| guideLength | m | Bender/Guide length | 10.0 | -| guideRadius | m | Bender/Guide radius | 100.0 | - -## Links - -- [Source code](Test_Pol_Bender_Vs_Guide_Curved.instr) for `Test_Pol_Bender_Vs_Guide_Curved.instr`. -- A reference/HTML link for more information - ---- - -*Generated for mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/examples/Tests_optics/Test_Rotator/Test_Rotator.md b/mcstas-comps/examples/Tests_optics/Test_Rotator/Test_Rotator.md deleted file mode 100644 index 4279345bf..000000000 --- a/mcstas-comps/examples/Tests_optics/Test_Rotator/Test_Rotator.md +++ /dev/null @@ -1,37 +0,0 @@ -# The `Test_Rotator` Instrument - -*McStas: Unittest for Rotator/Derotator* - -## Identification - -- **Site:** Tests_optics -- **Author:** Peter Willendrup -- **Origin:** ESS -- **Date:** October 2023 - -## Description - -```text -Unittest for Rotator/Derotator - -Example: mcrun test.instr -``` - -## Input parameters - -Parameters in **boldface** are required; the others are optional. - -| Name | Unit | Description | Default | -|------|------|-------------|---------| -| nu | Hz | Rotation frequency | 10 | -| phase | deg | Rotatoion phase | 5 | -| dir | int | Rotation axis direction x=1, y=2, z=3 | 2 | - -## Links - -- [Source code](Test_Rotator.instr) for `Test_Rotator.instr`. -- A reference/HTML link for more information - ---- - -*Generated for mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/examples/Tests_optics/Test_Selectors/Test_Selectors.md b/mcstas-comps/examples/Tests_optics/Test_Selectors/Test_Selectors.md deleted file mode 100644 index 872828475..000000000 --- a/mcstas-comps/examples/Tests_optics/Test_Selectors/Test_Selectors.md +++ /dev/null @@ -1,36 +0,0 @@ -# The `Test_Selectors` Instrument - -*McStas: Cross comparison of velocity selector components* - -## Identification - -- **Site:** Tests_optics -- **Author:** E. Farhi [farhi@ill.fr] -- **Origin:** ILL -- **Date:** Sept 28th, 2010 - -## Description - -```text -Cross comparison of Selector components, using McStas and -contributed components. It shows that all implementations are equivalent. -``` - -## Input parameters - -Parameters in **boldface** are required; the others are optional. - -| Name | Unit | Description | Default | -|------|------|-------------|---------| -| selector | 1 | Choice of the velocity selector to test, with | 1 | -| lambda | Angs | neutron wavelength selected by the velocity selector | 4 | -| phi | deg | velocity selector twist angle | 48.3 | -| d_vs | m | velocity selector rotating drum length | 0.25 | - -## Links - -- [Source code](Test_Selectors.instr) for `Test_Selectors.instr`. - ---- - -*Generated for mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/examples/Tests_optics/Test_Source_pulsed/Test_Source_pulsed.md b/mcstas-comps/examples/Tests_optics/Test_Source_pulsed/Test_Source_pulsed.md deleted file mode 100644 index 8607c8cb3..000000000 --- a/mcstas-comps/examples/Tests_optics/Test_Source_pulsed/Test_Source_pulsed.md +++ /dev/null @@ -1,34 +0,0 @@ -# The `Test_Source_pulsed` Instrument - -*McStas: A test instrument to check the component 'Source_pulsed'* - -## Identification - -- **Site:** Tests_optics -- **Author:** Klaus LIEUTENANT (k.lieutenant@fz-juelich.de) based on 'Test_9-Sources' by Emmanuel FARHI (farhi@ill.fr) -- **Origin:** FZJ -- **Date:** Mar 17, 2021 - -## Description - -```text -A test instrument to check if the component 'Source_pulsed' provides valid spectra and intensities. -``` - -## Input parameters - -Parameters in **boldface** are required; the others are optional. - -| Name | Unit | Description | Default | -|------|------|-------------|---------| -| source | 1 | selection of the source to use in 1=Source_pulsed for HBS thermal, 2=Source_pulsed for HBS cold, 3=Source_pulsed for HBS bispectral | 1 | -| Lmin | Ang | Minimum wavelength produced at source | 0.1 | -| Lmax | Ang | Maximum wavelength produced at source | 10.1 | - -## Links - -- [Source code](Test_Source_pulsed.instr) for `Test_Source_pulsed.instr`. - ---- - -*Generated for mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/examples/Tests_optics/Test_Sources/Test_Sources.md b/mcstas-comps/examples/Tests_optics/Test_Sources/Test_Sources.md deleted file mode 100644 index 2819738fc..000000000 --- a/mcstas-comps/examples/Tests_optics/Test_Sources/Test_Sources.md +++ /dev/null @@ -1,41 +0,0 @@ -# The `Test_Sources` Instrument - -*McStas: A test instrument to compare sources* - -## Identification - -- **Site:** Tests_optics -- **Author:** FARHI Emmanuel (farhi@ill.fr) -- **Origin:** ILL -- **Date:** Aug 3, 2008 - -## Description - -```text -A test instrument to compare sources and check they provide the valid -sprectrum and intensity. It shows that the first 4 flat sources are equivalent, -the 2 Maxwellian sources as well. - -WARNING: Result of test no. 1 for Source_adapt.comp is not correct if MPI is used, as -that source component does not support MPI. - -Example: source=1 Detector: m1_I=9.97273e+11 -``` - -## Input parameters - -Parameters in **boldface** are required; the others are optional. - -| Name | Unit | Description | Default | -|------|------|-------------|---------| -| source | 1 | selection of the source to use in 1=Source_adapt, 2=Source_div, 3=Source_simple, 4=Source_gen (simple), 5=Source_gen, 6=Source_Maxwell_3, 7=ESS_butterfly, 8=Moderator | 0 | -| Lmin | AA | Minimum wavelength produced at source | 1 | -| Lmax | AA | Maximum wavelength produced at source | 11 | - -## Links - -- [Source code](Test_Sources.instr) for `Test_Sources.instr`. - ---- - -*Generated for mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/examples/Tests_optics/Test_StatisticalChopper/Test_StatisticalChopper.md b/mcstas-comps/examples/Tests_optics/Test_StatisticalChopper/Test_StatisticalChopper.md deleted file mode 100644 index 8c40999e4..000000000 --- a/mcstas-comps/examples/Tests_optics/Test_StatisticalChopper/Test_StatisticalChopper.md +++ /dev/null @@ -1,34 +0,0 @@ -# The `Test_StatisticalChopper` Instrument - -*McStas: An example using a statistical/correlation chopper and its de-correlation monitor* - -## Identification - -- **Site:** Tests_optics -- **Author:** Emmanuel Farhi -- **Origin:** ILL (France) -- **Date:** 1st Dec 2009. - -## Description - -```text -This instrument is a simple model of a kind of TOF instrument, with powder sample -and statistical chopper. The de-correlation is also performed in a dedicated monitor. -``` - -## Input parameters - -Parameters in **boldface** are required; the others are optional. - -| Name | Unit | Description | Default | -|------|------|-------------|---------| -| lambda | Angs | source wavelength | 1 | - -## Links - -- [Source code](Test_StatisticalChopper.instr) for `Test_StatisticalChopper.instr`. -- R. Von Jan and R. Scherm. The statistical chopper for neutron time-of-flight spectroscopy. Nuclear Instruments and Methods, 80 (1970) 69-76. - ---- - -*Generated for mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/examples/Tests_optics/Test_Vertical_Bender/Test_Vertical_Bender.md b/mcstas-comps/examples/Tests_optics/Test_Vertical_Bender/Test_Vertical_Bender.md deleted file mode 100644 index 2263e0a15..000000000 --- a/mcstas-comps/examples/Tests_optics/Test_Vertical_Bender/Test_Vertical_Bender.md +++ /dev/null @@ -1,40 +0,0 @@ -# The `Test_Vertical_Bender` Instrument - -*McStas: Quick and dirty test instrument write-up for Vertical_Bender.* - -## Identification - -- **Site:** Tests_optics -- **Author:** Peter Willendrup -- **Origin:** DTU -- **Date:** January 2023 - -## Description - -```text -Quick and dirty test instrument write-up for Vertical_Bender. -``` - -## Input parameters - -Parameters in **boldface** are required; the others are optional. - -| Name | Unit | Description | Default | -|------|------|-------------|---------| -| Lmin | AA | Minimum wavelength from source | 9.9 | -| Lmax | AA | Maximum wavelength from source | 10.1 | -| curvature | m | Radius of curvature of vertical bender | 10000 | -| length | m | Length of vertical bender | 10 | -| xwidth | m | Width of vertical bender | 0.1 | -| yheight | m | Height of vertical bender | 0.1 | -| nchan | 1 | Number of channels in vertical bender | 1 | -| d | m | Channel-spacer width | 0 | - -## Links - -- [Source code](Test_Vertical_Bender.instr) for `Test_Vertical_Bender.instr`. -- - ---- - -*Generated for mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/examples/Tests_optics/Test_filters/Test_filters.md b/mcstas-comps/examples/Tests_optics/Test_filters/Test_filters.md deleted file mode 100644 index ea2653464..000000000 --- a/mcstas-comps/examples/Tests_optics/Test_filters/Test_filters.md +++ /dev/null @@ -1,42 +0,0 @@ -# The `Test_filters` Instrument - -*McStas: Test instrument for McStas components as Be-filters* - -## Identification - -- **Site:** PSI -- **Author:** Peter Willendrup -- **Origin:** ESS -- **Date:** March 2026 - -## Description - -```text -Test instrument for cross-checking McStas components for use as Be-filters. -Where applicable, the temperature is set to 80K (corresponding to the header -of the Be.trm file used in Filter_gen -``` - -## Input parameters - -Parameters in **boldface** are required; the others are optional. - -| Name | Unit | Description | Default | -|------|------|-------------|---------| -| Lmin | Angs | Lowest wavelength from source | 0.5 | -| Lmax | Angs | Highest wavelength from source | 10 | -| Filter | 1 | Choice of filter 0: Filter_gen, 1: NCrystal, 2: PowderN, 3: Isotropic_Sqw | 0 | -| nL | 1 | Number of wavelength bins in [Lmin Lmax] interval | 101 | -| zdepth | m | Depth of Be-filter | 0.15 | -| T | K | Filter temperature (NCrystal only) | 80 | - -## Links - -- [Source code](Test_filters.instr) for `Test_filters.instr`. -- Acta Cryst. (1978). A34, 61-65 -- Rev. Sci. Instrum. 59, 380-381 (1988) -- Test instrument written by P Willendrup ESS, March 2026 - ---- - -*Generated for mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/examples/Tests_optics/Test_focus/Test_focus.md b/mcstas-comps/examples/Tests_optics/Test_focus/Test_focus.md deleted file mode 100644 index 574885af2..000000000 --- a/mcstas-comps/examples/Tests_optics/Test_focus/Test_focus.md +++ /dev/null @@ -1,42 +0,0 @@ -# The `Test_focus` Instrument - -*McStas: Focus testing, comparing Single_crystal and Monochromator_curved* - -## Identification - -- **Site:** Tests_optics -- **Author:** Tobias Weber (tweber@ill.fr) -- **Origin:** ILL -- **Date:** 3-Feb-2018 - -## Description - -```text -For mono_ideal=0 the Single_crystal component is used as monochromator, -for mono_ideal=1 Monochromator_curved is used with the same settings. - -The curvature of the monochromator can be set using mono_curvh and mono_curvv -for horizontal and vertical focusing, respectively. -For mono_curvh=0, mono_curvv=0 the monochromator is flat. -For mono_curvh=-1, mono_curvv=-1 optimal horizontal and vertical focusing is chosen. -``` - -## Input parameters - -Parameters in **boldface** are required; the others are optional. - -| Name | Unit | Description | Default | -|------|------|-------------|---------| -| src_lam | AA | Source mean wavelength | 4.5 | -| src_dlam | AA | Source wavelength spread | 1.0 | -| mono_ideal | | Selection of mono-model 0=Single_crystal, 1=Monochromator_curved | 0 | -| mono_curvh | m | Monochromator horizontal curvature. -1: optimal, 0: flat | -1 | -| mono_curvv | m | Monochromator vertical curvature -1: optimal, 0: flat | -1 | - -## Links - -- [Source code](Test_focus.instr) for `Test_focus.instr`. - ---- - -*Generated for mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/examples/Tests_other/test_File/test_File.md b/mcstas-comps/examples/Tests_other/test_File/test_File.md deleted file mode 100644 index 0f41b9b92..000000000 --- a/mcstas-comps/examples/Tests_other/test_File/test_File.md +++ /dev/null @@ -1,33 +0,0 @@ -# The `test_File` Instrument - -*McStas: Demonstrates how to use the File.comp component for storing instrument -input-files as METADATA blocks* - -## Identification - -- **Site:** Tests_other -- **Author:** Greg Tucker -- **Origin:** ESS -- **Date:** 2024 - -## Description - -```text - -``` - -## Input parameters - -Parameters in **boldface** are required; the others are optional. - -| Name | Unit | Description | Default | -|------|------|-------------|---------| - -## Links - -- [Source code](test_File.instr) for `test_File.instr`. -- From https://github.com/g5t/mccode-file - ---- - -*Generated for mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/examples/Tests_polarization/He3_spin_filter/He3_spin_filter.md b/mcstas-comps/examples/Tests_polarization/He3_spin_filter/He3_spin_filter.md deleted file mode 100644 index 5a980fc86..000000000 --- a/mcstas-comps/examples/Tests_polarization/He3_spin_filter/He3_spin_filter.md +++ /dev/null @@ -1,41 +0,0 @@ -# The `He3_spin_filter` Instrument - -*McStas: Test instrument for He3_cell* - -## Identification - -- **Site:** Tests_polarization -- **Author:** Pietro Tozzi and Erik B Knudsen -- **Origin:** DTU Physics et. -- **Date:** Nov 20 - -## Description - -```text -Simple instrument model serving as an example and unit tyest of the He3-cell model. -For the values POLHE=.8 and .5 results comply with "Batz, M et al. “(3) He Spin Filter for Neutrons.” -Journal of research of the National Institute of Standards and Technology vol. 110,3 293-8. 1 Jun. 2005, doi:10.6028/jres.110.042" -``` - -## Input parameters - -Parameters in **boldface** are required; the others are optional. - -| Name | Unit | Description | Default | -|------|------|-------------|---------| -| pol | | If "x","y", or "z" set polarization along that axis. If "0" use a zero polarization. | "y" | -| lamb_1 | AA | Lower wavelength limit to simulate | 1 | -| lamb_2 | AA | Upper wavelegnth limit to simulate | 10 | -| RANDOM | | Randomize polarization vector in the (ideal) polariser | 0 | -| polval | | Set polarization to (polval,polval,polval). Gets overridden by pol | 1 | -| POLHE | | Polarization of the 3He-gas in the cell. | 0.7 | -| box | | Flag to indicate if cell geometry is cylindrical (0) or box-shaped (1) | 0 | - -## Links - -- [Source code](He3_spin_filter.instr) for `He3_spin_filter.instr`. -- - ---- - -*Generated for mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/examples/Tests_polarization/SE_example/SE_example.md b/mcstas-comps/examples/Tests_polarization/SE_example/SE_example.md deleted file mode 100644 index 5fe3883db..000000000 --- a/mcstas-comps/examples/Tests_polarization/SE_example/SE_example.md +++ /dev/null @@ -1,45 +0,0 @@ -# The `SE_example` Instrument - -*McStas: Mockup of transmission Spin-Echo, written for PNCMI 2010 school in Delft.* - -## Identification - -- **Site:** Tests_polarization -- **Author:** Erik Knudsen, Peter Willendrup -- **Origin:** Risoe -- **Date:** June 2010 - -## Description - -```text -This instrument shows the use of essential McStas polarisation components, including Pol_mirror, Pol_Bfield and MeanPolLambda_monitor. - -Pol_mirror is used to polarize and analyze the incoming and scattered beams. -Pol_Bfield is used to define guidefields and flippers. -MeanPolLambda_montior is used to monitor beam polarisation. - -Example: mcrun SE_example.instr dBz=-0.0001,0.0001 -N41 -n1e5 -``` - -## Input parameters - -Parameters in **boldface** are required; the others are optional. - -| Name | Unit | Description | Default | -|------|------|-------------|---------| -| POL_ANGLE | deg | Reflection angle of polarizer/analyzer | 2 | -| SAMPLE | 1 | Flag to include (0) or exclude incoherent scatterer | 0 | -| Bguide | T | Field magnitude in guide fields | 0.1 | -| Bflip | T | Magnitude of flipper fields, | 3e-4 | -| dBz | T | Magnitude field perturbation in first guide field | 0 | -| Lam | Angstrom | Mean wavelength of neutrons emitted from source | 8 | -| dLam | Angstrom | Wavelength spread of neutrons emitted from source | 0.8 | - -## Links - -- [Source code](SE_example.instr) for `SE_example.instr`. -- Requires mcstas 1.12b (or beta). PolLambda_monitor has been modified to work (nL->nlam) - ---- - -*Generated for mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/examples/Tests_polarization/SE_example2/SE_example2.md b/mcstas-comps/examples/Tests_polarization/SE_example2/SE_example2.md deleted file mode 100644 index f6ff5b8fd..000000000 --- a/mcstas-comps/examples/Tests_polarization/SE_example2/SE_example2.md +++ /dev/null @@ -1,45 +0,0 @@ -# The `SE_example2` Instrument - -*McStas: Mockup of transmission Spin-Echo, written for PNCMI 2010 school in Delft. This version uses Pol_FieldBox for description of the fields.* - -## Identification - -- **Site:** Tests_polarization -- **Author:** Erik Knudsen, Peter Willendrup -- **Origin:** Risoe -- **Date:** June 2010 - -## Description - -```text -This instrument shows the use of essential McStas polarisation components, including Pol_mirror, Pol_FieldBox and MeanPolLambda_monitor. - -Pol_mirror is used to polarize and analyze the incoming and scattered beams. -Pol_FieldBox is used to define guidefields and flippers. -MeanPolLambda_montior is used to monitor beam polarisation. - -Example: mcrun SE_example2.instr dBz=-0.0001,0.0001 -N41 -n1e5 -``` - -## Input parameters - -Parameters in **boldface** are required; the others are optional. - -| Name | Unit | Description | Default | -|------|------|-------------|---------| -| POL_ANGLE | deg | Reflection angle of polarizer/analyzer | 2 | -| SAMPLE | 1 | Flag to include (0) or exclude incoherent scatterer | 0 | -| Bguide | T | Field magnitude in guide fields | 0.1 | -| Bflip | T | Magnitude of flipper fields, | 3e-4 | -| dBz | T | Magnitude field perturbation in first guide field | 0 | -| Lam | Angstrom | Mean wavelength of neutrons emitted from source | 8 | -| dLam | Angstrom | Wavelength spread of neutrons emitted from source | 0.8 | - -## Links - -- [Source code](SE_example2.instr) for `SE_example2.instr`. -- Requires mcstas 1.12b (or beta). PolLambda_monitor has been modified to work (nL->nlam) - ---- - -*Generated for mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/examples/Tests_polarization/Supermirror_thin_substrate/Supermirror_thin_substrate.md b/mcstas-comps/examples/Tests_polarization/Supermirror_thin_substrate/Supermirror_thin_substrate.md deleted file mode 100644 index 25b71bb83..000000000 --- a/mcstas-comps/examples/Tests_polarization/Supermirror_thin_substrate/Supermirror_thin_substrate.md +++ /dev/null @@ -1,54 +0,0 @@ -# The `Supermirror_thin_substrate` Instrument - -*McStas: Test instrument for a thin-substrate supermirrror (component SupermirrorFlat)* - -## Identification - -- **Site:** Tests_polarization -- **Author:** Hal Lee -- **Origin:** ESS -- **Date:** 2024 - -## Description - -```text -Test instrument for a thin-substrate supermirrror (component SupermirrorFlat) -``` - -## Input parameters - -Parameters in **boldface** are required; the others are optional. - -| Name | Unit | Description | Default | -|------|------|-------------|---------| -| src_x | m | Width of source | 0.01 | -| src_y | m | Height of source | 0.09 | -| W_Centre | AA | Central wavelength from source spectrum | 5 | -| W_Half_Width | AA | Source spectrum wavelength half-width | 3 | -| A_FWHM | deg | Angular divergence from source | 0.05 | -| Detector_Distance | m | End-of-supermirror to detector distance | 1 | -| Length | m | Supermirrror length,projection along z-axis | 4 | -| Thickness_In_mm | mm | Supermirror thickness in mm | 0.5 | -| Mirror_Coated_Side | str | Specification of coating type | "BothCoated" | -| Mirror_Plus | str | Specification of coating on positive mirror side | "FeSiPlus" | -| Mirror_Plus_m | 1 | Specification m value, positive mirror side | 3.5 | -| Mirror_Minus | str | Specification of coating on negative mirror side | "FeSiMinus" | -| Absorber_Coated_Side | str | Specification of coating type, absorber coated side | "BothNotCoated" | -| Absorber | str | Specification of absorber material | "Empty" | -| Absorber_Thickness_In_Micron | mu-m | Absorber thickness in mu-m | 0 | -| Substrate | str | Specification of substrate material | "GlassNoAttenuation" | -| Initial_Placement_At_Origin | str | Mirror orientation specifier ("TopFrontEdgeCentre","FrontSubstrateCentre","BottomFrontEdgeCentre") | "TopFrontEdgeCentre" | -| Tilt_Axis_Location | str | Mirror axis location specifier ("TopFrontEdge","TopMirrorCentre","TopBackEdge","FrontSubstrateCentre","SubstrateCentre","BackSubstrateCentre","BottomFrontEdge","BottomMirrorCentre","BottomBackEdge") | "TopMirrorCentre" | -| Tilt_Angle_First_In_Degree | deg | Mirror tilt angle (around global y) | 0.64 | -| Translation_Second_Y | m | Mirror translation (along global y) | 0 | -| Rot_Angle_Third_In_Degree | deg | Mirror rotation angle (around global z) | 0 | -| Tracking | str | Mirror event-tracking option specifier ("NoTracking", "DetailTracking") | "DetailTracking" | - -## Links - -- [Source code](Supermirror_thin_substrate.instr) for `Supermirror_thin_substrate.instr`. -- A reference/HTML link for more information - ---- - -*Generated for mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/examples/Tests_polarization/Test_Magnetic_Constant/Test_Magnetic_Constant.md b/mcstas-comps/examples/Tests_polarization/Test_Magnetic_Constant/Test_Magnetic_Constant.md deleted file mode 100644 index 0f00806f3..000000000 --- a/mcstas-comps/examples/Tests_polarization/Test_Magnetic_Constant/Test_Magnetic_Constant.md +++ /dev/null @@ -1,38 +0,0 @@ -# The `Test_Magnetic_Constant` Instrument - -*McStas: This instrument demonstrates how to use the Pol_Bfield -component with a constant field.* - -## Identification - -- **Site:** Tests_polarization -- **Author:** Peter Christiansen and Peter Willendrup -- **Origin:** RISOE -- **Date:** August 2006 - -## Description - -```text -This instrument demonstrates how to use the component -Pol_Bfield with a constant field to make a Mezei Spin flipper. - -This instrument matches the example: Test_Pol_MSF (under tests) -made with the old component: Pol_constBfield -``` - -## Input parameters - -Parameters in **boldface** are required; the others are optional. - -| Name | Unit | Description | Default | -|------|------|-------------|---------| -| ROT_ANGLE | deg | Angle that the spin of a 5AA neutron rotates in the 0.2 m magnet | 180 | -| ONOFF | | Should we use a window description (with a _stop comp) to turn the field on and off. | 0 | - -## Links - -- [Source code](Test_Magnetic_Constant.instr) for `Test_Magnetic_Constant.instr`. - ---- - -*Generated for mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/examples/Tests_polarization/Test_Magnetic_Majorana/Test_Magnetic_Majorana.md b/mcstas-comps/examples/Tests_polarization/Test_Magnetic_Majorana/Test_Magnetic_Majorana.md deleted file mode 100644 index 44a7e6f67..000000000 --- a/mcstas-comps/examples/Tests_polarization/Test_Magnetic_Majorana/Test_Magnetic_Majorana.md +++ /dev/null @@ -1,41 +0,0 @@ -# The `Test_Magnetic_Majorana` Instrument - -*McStas: This instrument demonstrates how to use the Pol_Bfield -component with a Majorana field.* - -## Identification - -- **Site:** Tests_polarization -- **Author:** Peter Christiansen and Peter Willendrup -- **Origin:** RISOE -- **Date:** August 2006 - -## Description - -```text -This instrument demonstrates how to use the component -Pol_Bfield with a so called Majorana field. - -See: -Seeger et al. NIM A: Volume 457, Issues 1-2 , 11 January 2001, Pages 338-346 - -Note that there are some sytematic fluctuation with the current solution. -``` - -## Input parameters - -Parameters in **boldface** are required; the others are optional. - -| Name | Unit | Description | Default | -|------|------|-------------|---------| -| Blarge | T | Large linear decreasing field along x axis (+Blarge to -Blarge). | 1.0 | -| Bsmall | T | Constant small component of field along y axis. | 0.003 | -| magnetLength | m | Magnet length. | 1.0 | - -## Links - -- [Source code](Test_Magnetic_Majorana.instr) for `Test_Magnetic_Majorana.instr`. - ---- - -*Generated for mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/examples/Tests_polarization/Test_Magnetic_Rotation/Test_Magnetic_Rotation.md b/mcstas-comps/examples/Tests_polarization/Test_Magnetic_Rotation/Test_Magnetic_Rotation.md deleted file mode 100644 index e5796041c..000000000 --- a/mcstas-comps/examples/Tests_polarization/Test_Magnetic_Rotation/Test_Magnetic_Rotation.md +++ /dev/null @@ -1,37 +0,0 @@ -# The `Test_Magnetic_Rotation` Instrument - -*McStas: This instrument demonstrates how to use the Pol_constBfield -component.* - -## Identification - -- **Site:** Tests_polarization -- **Author:** Peter Christiansen and Peter Willendrup -- **Origin:** RISOE -- **Date:** August 2006 - -## Description - -```text -This instrument demonstrates how to use the component -Pol_constBfield to make a Mezei Spin flipper. - -See: -Seeger et al. NIM A: Volume 457, Issues 1-2 , 11 January 2001, Pages 338-346 -``` - -## Input parameters - -Parameters in **boldface** are required; the others are optional. - -| Name | Unit | Description | Default | -|------|------|-------------|---------| -| RESTORENEUT | | RESTORE_NEUTRON flag for last monitor within field region. | 1 | - -## Links - -- [Source code](Test_Magnetic_Rotation.instr) for `Test_Magnetic_Rotation.instr`. - ---- - -*Generated for mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/examples/Tests_polarization/Test_Pol_Bender/Test_Pol_Bender.md b/mcstas-comps/examples/Tests_polarization/Test_Pol_Bender/Test_Pol_Bender.md deleted file mode 100644 index 2942f7b04..000000000 --- a/mcstas-comps/examples/Tests_polarization/Test_Pol_Bender/Test_Pol_Bender.md +++ /dev/null @@ -1,38 +0,0 @@ -# The `Test_Pol_Bender` Instrument - -*McStas: Test Pol_bender.* - -## Identification - -- **Site:** Tests_polarization -- **Author:** Peter Christiansen -- **Origin:** RISOE -- **Date:** July 2006 - -## Description - -```text -Test that Pol_bender polarizes an unpolarized beam, and allows one -to test the different options. -``` - -## Input parameters - -Parameters in **boldface** are required; the others are optional. - -| Name | Unit | Description | Default | -|------|------|-------------|---------| -| GUIDELENGTH | m | Length of bender | 1.0 | -| GUIDERADIUS | m | Radius of curvature of bender | 10.0 | -| ENDOPTION | | Setting for parallel start/end planes of bender | 0 | -| NSLITS | | Number of channels in bender | 5 | -| WSPACER | m | Spacer dimension | 0.005 | -| DRAWOPTION | | Bender drawing option 1: fine(all slits/90 points per arc), 2: normal (max 20/40), 3: rough (max 5/10) | 1 | - -## Links - -- [Source code](Test_Pol_Bender.instr) for `Test_Pol_Bender.instr`. - ---- - -*Generated for mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/examples/Tests_polarization/Test_Pol_FieldBox/Test_Pol_FieldBox.md b/mcstas-comps/examples/Tests_polarization/Test_Pol_FieldBox/Test_Pol_FieldBox.md deleted file mode 100644 index f21b59895..000000000 --- a/mcstas-comps/examples/Tests_polarization/Test_Pol_FieldBox/Test_Pol_FieldBox.md +++ /dev/null @@ -1,35 +0,0 @@ -# The `Test_Pol_FieldBox` Instrument - -*McStas: Unit test instrument for Pol_FieldBox* - -## Identification - -- **Site:** Tests_polarization -- **Author:** Erik B Knudsen -- **Origin:** DTU Physics -- **Date:** Jan 20 - -## Description - -```text -An instrument with a single field box with a 1 mT magnetic field along the y-axis. -A neutron beam polarized aling the x-axis is emitted with central wavelength such -that the polarization is rotated pihalfturns radians in the field. -``` - -## Input parameters - -Parameters in **boldface** are required; the others are optional. - -| Name | Unit | Description | Default | -|------|------|-------------|---------| -| pihalfturns | | beam polarization (for the cetral wavelength) is rotated pihalfturns by the field | 1 | -| BOX | | flag to select between 0:Pol_FieldBox and 1:Pol_constBfield | 0 | - -## Links - -- [Source code](Test_Pol_FieldBox.instr) for `Test_Pol_FieldBox.instr`. - ---- - -*Generated for mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/examples/Tests_polarization/Test_Pol_Guide_Vmirror/Test_Pol_Guide_Vmirror.md b/mcstas-comps/examples/Tests_polarization/Test_Pol_Guide_Vmirror/Test_Pol_Guide_Vmirror.md deleted file mode 100644 index a58f6b3be..000000000 --- a/mcstas-comps/examples/Tests_polarization/Test_Pol_Guide_Vmirror/Test_Pol_Guide_Vmirror.md +++ /dev/null @@ -1,33 +0,0 @@ -# The `Test_Pol_Guide_Vmirror` Instrument - -*McStas: Test Pol_guide_Vmirror.* - -## Identification - -- **Site:** Tests_polarization -- **Author:** Peter Christiansen -- **Origin:** RISOE -- **Date:** July 2006 - -## Description - -```text -A simple description of the V4 instrument in Berlin as explained in: -NIM A 451 (2000) 474-479 -``` - -## Input parameters - -Parameters in **boldface** are required; the others are optional. - -| Name | Unit | Description | Default | -|------|------|-------------|---------| -| polariserIn | | Flag to select between 1:POLguidevmirror and 2:POLguidemirror | 1 | - -## Links - -- [Source code](Test_Pol_Guide_Vmirror.instr) for `Test_Pol_Guide_Vmirror.instr`. - ---- - -*Generated for mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/examples/Tests_polarization/Test_Pol_Guide_mirror/Test_Pol_Guide_mirror.md b/mcstas-comps/examples/Tests_polarization/Test_Pol_Guide_mirror/Test_Pol_Guide_mirror.md deleted file mode 100644 index 75372c95f..000000000 --- a/mcstas-comps/examples/Tests_polarization/Test_Pol_Guide_mirror/Test_Pol_Guide_mirror.md +++ /dev/null @@ -1,34 +0,0 @@ -# The `Test_Pol_Guide_mirror` Instrument - -*McStas: Test Pol_guide_mirror.* - -## Identification - -- **Site:** Tests_polarization -- **Author:** Peter Christiansen -- **Origin:** RISOE -- **Date:** July 2006 - -## Description - -```text -Unit test for Pol_guide_mirror. In this unit test we use the Pol_guide_mirror -in a non-polarizing setting, with absorbing walls. This is how it would be set to be used -as a frame-overlap mirror. -``` - -## Input parameters - -Parameters in **boldface** are required; the others are optional. - -| Name | Unit | Description | Default | -|------|------|-------------|---------| -| mirrorIn | | If zero the in-guide mirror is disabled | 1 | - -## Links - -- [Source code](Test_Pol_Guide_mirror.instr) for `Test_Pol_Guide_mirror.instr`. - ---- - -*Generated for mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/examples/Tests_polarization/Test_Pol_MSF/Test_Pol_MSF.md b/mcstas-comps/examples/Tests_polarization/Test_Pol_MSF/Test_Pol_MSF.md deleted file mode 100644 index 253a7593a..000000000 --- a/mcstas-comps/examples/Tests_polarization/Test_Pol_MSF/Test_Pol_MSF.md +++ /dev/null @@ -1,33 +0,0 @@ -# The `Test_Pol_MSF` Instrument - -*McStas: This instrument demonstrates how to use the Pol_constBfield -component.* - -## Identification - -- **Site:** Tests_polarization -- **Author:** Peter Christiansen -- **Origin:** RISOE -- **Date:** July 2006 - -## Description - -```text -This instrument demonstrates how to use the component -Pol_constBfield to make a Mezei Spin flipper. -``` - -## Input parameters - -Parameters in **boldface** are required; the others are optional. - -| Name | Unit | Description | Default | -|------|------|-------------|---------| - -## Links - -- [Source code](Test_Pol_MSF.instr) for `Test_Pol_MSF.instr`. - ---- - -*Generated for mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/examples/Tests_polarization/Test_Pol_Mirror/Test_Pol_Mirror.md b/mcstas-comps/examples/Tests_polarization/Test_Pol_Mirror/Test_Pol_Mirror.md deleted file mode 100644 index 484ffaefe..000000000 --- a/mcstas-comps/examples/Tests_polarization/Test_Pol_Mirror/Test_Pol_Mirror.md +++ /dev/null @@ -1,38 +0,0 @@ -# The `Test_Pol_Mirror` Instrument - -*McStas: Test that Pol_mirror reflects, transmits, and polarizes.* - -## Identification - -- **Site:** Tests_polarization -- **Author:** Peter Christiansen -- **Origin:** RISOE -- **Date:** July 2006 - -## Description - -```text -An unpolarized beam is shot into a polarizing mirror and the -intensity and polarization of the transmitted and reflected beam -is measured. - -The intensity on the first monitor should be the same as the sum -of the two polarization monitors. -``` - -## Input parameters - -Parameters in **boldface** are required; the others are optional. - -| Name | Unit | Description | Default | -|------|------|-------------|---------| -| mirrorOption | 1 | Fraction of neutrons to reflect | 0.5 | -| polarize | | | 0 | - -## Links - -- [Source code](Test_Pol_Mirror.instr) for `Test_Pol_Mirror.instr`. - ---- - -*Generated for mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/examples/Tests_polarization/Test_Pol_SF_ideal/Test_Pol_SF_ideal.md b/mcstas-comps/examples/Tests_polarization/Test_Pol_SF_ideal/Test_Pol_SF_ideal.md deleted file mode 100644 index 7fd4baabc..000000000 --- a/mcstas-comps/examples/Tests_polarization/Test_Pol_SF_ideal/Test_Pol_SF_ideal.md +++ /dev/null @@ -1,36 +0,0 @@ -# The `Test_Pol_SF_ideal` Instrument - -*McStas: Unit test of the Pol_SF_ideal component* - -## Identification - -- **Site:** Tests_polarization -- **Author:** Erik B Knudsen (erkn@fysik.dtu.dk) -- **Origin:** DTU Physics -- **Date:** Current Date - -## Description - -```text -Simply test the ideal spin flippers function - -Example: mcrun test.instr -``` - -## Input parameters - -Parameters in **boldface** are required; the others are optional. - -| Name | Unit | Description | Default | -|------|------|-------------|---------| -| SX | | x-component of initial polarization | 0 | -| SY | | y-component of initial polarization | 1 | -| SZ | | z-component of initial polarization | 0 | - -## Links - -- [Source code](Test_Pol_SF_ideal.instr) for `Test_Pol_SF_ideal.instr`. - ---- - -*Generated for mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/examples/Tests_polarization/Test_Pol_Set/Test_Pol_Set.md b/mcstas-comps/examples/Tests_polarization/Test_Pol_Set/Test_Pol_Set.md deleted file mode 100644 index d1a6ebdff..000000000 --- a/mcstas-comps/examples/Tests_polarization/Test_Pol_Set/Test_Pol_Set.md +++ /dev/null @@ -1,34 +0,0 @@ -# The `Test_Pol_Set` Instrument - -*McStas: Tests Set_pol, Incoherent, and pol monitors.* - -## Identification - -- **Site:** Tests_polarization -- **Author:** Peter Christiansen -- **Origin:** RISOE -- **Date:** July 2006 - -## Description - -```text -First check is that the randmly generated spin gives uniform (flat) -distributions on all 3 pol monitor. -Second check is that when the polarisation is hardcoded to (0, 1, 0) -after Incoherent it is (0, -1/3, 0). -``` - -## Input parameters - -Parameters in **boldface** are required; the others are optional. - -| Name | Unit | Description | Default | -|------|------|-------------|---------| - -## Links - -- [Source code](Test_Pol_Set.instr) for `Test_Pol_Set.instr`. - ---- - -*Generated for mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/examples/Tests_polarization/Test_Pol_Tabled/Test_Pol_Tabled.md b/mcstas-comps/examples/Tests_polarization/Test_Pol_Tabled/Test_Pol_Tabled.md deleted file mode 100644 index 1127522e3..000000000 --- a/mcstas-comps/examples/Tests_polarization/Test_Pol_Tabled/Test_Pol_Tabled.md +++ /dev/null @@ -1,37 +0,0 @@ -# The `Test_Pol_Tabled` Instrument - -*McStas: Test the tabled magnetic field option* - -## Identification - -- **Site:** Tests_polarization -- **Author:** Your name (email) -- **Origin:** Your institution -- **Date:** Current Date - -## Description - -```text -A test instrument to check that supplying a magnetic field as a vector field point cloud -is working. The field referred to by the default input parameter MF is 10 \mu T along the z-axis -at entry and flips to l0 \mu T along the negative z-axis halfway through -``` - -## Input parameters - -Parameters in **boldface** are required; the others are optional. - -| Name | Unit | Description | Default | -|------|------|-------------|---------| -| MF | string | Field definition file | "flipfield.dat" | -| zdepth | m | Z-dimension of field | 1 | -| interpol_method | string | Choice of interpolation method "kdtree" (default on CPU) / "regular" (default on GPU) | "default" | - -## Links - -- [Source code](Test_Pol_Tabled.instr) for `Test_Pol_Tabled.instr`. -- A reference/HTML link for more information - ---- - -*Generated for mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/examples/Tests_polarization/Test_Pol_TripleAxis/Test_Pol_TripleAxis.md b/mcstas-comps/examples/Tests_polarization/Test_Pol_TripleAxis/Test_Pol_TripleAxis.md deleted file mode 100644 index d50c285da..000000000 --- a/mcstas-comps/examples/Tests_polarization/Test_Pol_TripleAxis/Test_Pol_TripleAxis.md +++ /dev/null @@ -1,43 +0,0 @@ -# The `Test_Pol_TripleAxis` Instrument - -*McStas: Based on Emmanuel Farhi's thermal H8 triple-axis spectrometer from -Brookhaven reactor* - -## Identification - -- **Site:** Tests_polarization -- **Author:** Peter Christiansen -- **Origin:** RISOE -- **Date:** July 2006. - -## Description - -```text -This instrument is a simple model of the thermal H8 triple-axis -spectrometer from former Brookhaven reactor. It has an (polarizing) -monochromator and a (polarizaing) analyzer. The sample is a vanadium -cylinder. -Three cases can be done: --1) Spin flip (flipper is inserted): Up->Down -0) No polarization: Up/Down->Up/Down -1) No spin flip: Up->Up -The Vanadium sample should give I(0)=2*(I(-1)+I(1)) and I(-1)=2*I(1). -``` - -## Input parameters - -Parameters in **boldface** are required; the others are optional. - -| Name | Unit | Description | Default | -|------|------|-------------|---------| -| OPTION | 1 | See above | 0 | -| LAMBDA | Angs | Source wavelength | 2.0 | -| MOZ | Arc minutes | Mosaicity | 40 | - -## Links - -- [Source code](Test_Pol_TripleAxis.instr) for `Test_Pol_TripleAxis.instr`. - ---- - -*Generated for mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/examples/Tests_polarization/Test_V_cavity_SNAG_double_side/Test_V_cavity_SNAG_double_side.md b/mcstas-comps/examples/Tests_polarization/Test_V_cavity_SNAG_double_side/Test_V_cavity_SNAG_double_side.md deleted file mode 100644 index 3b82aed68..000000000 --- a/mcstas-comps/examples/Tests_polarization/Test_V_cavity_SNAG_double_side/Test_V_cavity_SNAG_double_side.md +++ /dev/null @@ -1,46 +0,0 @@ -# The `Test_V_cavity_SNAG_double_side` Instrument - -*McStas: Test instrument for Transmission_V_polarisator, double layer reflectivity.* - -## Identification - -- **Site:** Tests_polarization -- **Author:** Michael Schneider (SNAG) -- **Origin:** SNAG -- **Date:** 2024 - -## Description - -```text -Test instrument for Transmission_V_polarisator, double layer reflectivity. -``` - -## Input parameters - -Parameters in **boldface** are required; the others are optional. - -| Name | Unit | Description | Default | -|------|------|-------------|---------| -| Lam | AA | Central wavelength produced at source | 7.0 | -| dLam | AA | Wavelength spread produced at source | 6.0 | -| l_guide0 | | | 2 | -| m_hori | 1 | m-value of feeding guide, horizontal mirrors | 1.0 | -| m_vert | 1 | m-value of feeding guide, vertical mirrors | 3.0 | -| m_pol_h | 1 | m-value of guide body, horizontal (m of FeSi is defined by data files) | 1.0 | -| m_pol_v | 1 | m-value of guide body, vertical (m of FeSi is defined by data files) | 3.0 | -| W | m | Width of guide and cavity | 0.024 | -| H | m | Height of guide and cavity | 0.058 | -| Length_C | m | Length of guide body | 1.300 | -| tap_ang | deg | Taper angle with respect to optical axis of V-cavity | 0.55 | -| distK | m | Distance between V-cavities (applicable, if 2 cavities are installed) | 1.23864 | -| d_Fe | m | Thickness of Fe in one supermirror coating | 6.95e-6 | -| d | m | Distance from source to guide entrance | 2.0 | - -## Links - -- [Source code](Test_V_cavity_SNAG_double_side.instr) for `Test_V_cavity_SNAG_double_side.instr`. -- P. Böni, W. Münzer and A. Ostermann: Physica B: Condensed Matter Volume 404, Issue 17, 1 September 2009, Pages 2620-2623 - ---- - -*Generated for mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/examples/Tests_polarization/Test_V_cavity_SNAG_single_side/Test_V_cavity_SNAG_single_side.md b/mcstas-comps/examples/Tests_polarization/Test_V_cavity_SNAG_single_side/Test_V_cavity_SNAG_single_side.md deleted file mode 100644 index 8c76b13dc..000000000 --- a/mcstas-comps/examples/Tests_polarization/Test_V_cavity_SNAG_single_side/Test_V_cavity_SNAG_single_side.md +++ /dev/null @@ -1,46 +0,0 @@ -# The `Test_V_cavity_SNAG_single_side` Instrument - -*McStas: Test instrument for Transmission_V_polarisator, single layer reflectivity.* - -## Identification - -- **Site:** Tests_polarization -- **Author:** Michael Schneider (SNAG) -- **Origin:** SNAG -- **Date:** 2024 - -## Description - -```text -Test instrument for Transmission_V_polarisator, single layer reflectivity. -``` - -## Input parameters - -Parameters in **boldface** are required; the others are optional. - -| Name | Unit | Description | Default | -|------|------|-------------|---------| -| Lam | AA | Central wavelength produced at source | 7.0 | -| dLam | AA | Wavelength spread produced at source | 6.0 | -| l_guide0 | | | 2 | -| m_hori | 1 | m-value of feeding guide, horizontal mirrors | 1.0 | -| m_vert | 1 | m-value of feeding guide, vertical mirrors | 3.0 | -| m_pol_h | 1 | m-value of guide body, horizontal (m of FeSi is defined by data files) | 1.0 | -| m_pol_v | 1 | m-value of guide body, vertical (m of FeSi is defined by data files) | 3.0 | -| W | m | Width of guide and cavity | 0.024 | -| H | m | Height of guide and cavity | 0.058 | -| Length_C | m | Length of guide body | 1.300 | -| tap_ang | deg | Taper angle with respect to optical axis of V-cavity | 0.55 | -| distK | m | Distance between V-cavities (applicable, if 2 cavities are installed) | 1.23864 | -| d_Fe | m | Thickness of Fe in one supermirror coating | 6.95e-6 | -| d | m | Distance from source to guide entrance | 2.0 | - -## Links - -- [Source code](Test_V_cavity_SNAG_single_side.instr) for `Test_V_cavity_SNAG_single_side.instr`. -- P. Böni, W. Münzer and A. Ostermann: Physica B: Condensed Matter Volume 404, Issue 17, 1 September 2009, Pages 2620-2623 - ---- - -*Generated for mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/examples/Tests_polarization/Test_pol_ideal/Test_pol_ideal.md b/mcstas-comps/examples/Tests_polarization/Test_pol_ideal/Test_pol_ideal.md deleted file mode 100644 index 4ee1fb43f..000000000 --- a/mcstas-comps/examples/Tests_polarization/Test_pol_ideal/Test_pol_ideal.md +++ /dev/null @@ -1,32 +0,0 @@ -# The `Test_pol_ideal` Instrument - -*McStas: Unit test instrument for Set_pol, PolAnalyser_ideal, and Pol_monitor* - -## Identification - -- **Site:** Tests_polarization -- **Author:** Erik B Knudsen (erkn@fysik.dtu.dk) -- **Origin:** DTU Physics -- **Date:** Nov 20 - -## Description - -```text -Simply runs a short test to check that Set_pol, Pol_analyser_ideal, and Pol_monitor really do work -``` - -## Input parameters - -Parameters in **boldface** are required; the others are optional. - -| Name | Unit | Description | Default | -|------|------|-------------|---------| -| xory | | 1:check polarisatoin along x, 0:check polarisation along y | 1 | - -## Links - -- [Source code](Test_pol_ideal.instr) for `Test_pol_ideal.instr`. - ---- - -*Generated for mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/examples/Tests_samples/GISANS_tests/GISANS_tests.md b/mcstas-comps/examples/Tests_samples/GISANS_tests/GISANS_tests.md deleted file mode 100644 index 39eb428ec..000000000 --- a/mcstas-comps/examples/Tests_samples/GISANS_tests/GISANS_tests.md +++ /dev/null @@ -1,36 +0,0 @@ -# The `GISANS_tests` Instrument - -*McStas: Instrument to test features of newly developed sample model for GISANS from H. Frielinghaus.* - -## Identification - -- **Site:** Tests_samples -- **Author:** Peter Willendrup (DTU/ESS) and Henrich Frielinghaus (MLZ) -- **Origin:** MLZ -- **Date:** 2023-2024 - -## Description - -```text -Instrument to test features of newly developed sample model for GISANS from H. Frielinghaus, -developed to model the GISANS features described in M. S. Hellsing et. al [1] - -Test case 1, grazing incidence from front -``` - -## Input parameters - -Parameters in **boldface** are required; the others are optional. - -| Name | Unit | Description | Default | -|------|------|-------------|---------| -| mode | | | 1 | -| BEAMSTOP | | | 0 | - -## Links - -- [Source code](GISANS_tests.instr) for `GISANS_tests.instr`. - ---- - -*Generated for mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/examples/Tests_samples/Samples_Incoherent/Samples_Incoherent.md b/mcstas-comps/examples/Tests_samples/Samples_Incoherent/Samples_Incoherent.md deleted file mode 100644 index 6f420acd4..000000000 --- a/mcstas-comps/examples/Tests_samples/Samples_Incoherent/Samples_Incoherent.md +++ /dev/null @@ -1,76 +0,0 @@ -# The `Samples_Incoherent` Instrument - -*McStas: This instrument allows to compare incoherent scattering from different McStas -sample components.* - -## Identification - -- **Site:** Tests_samples -- **Author:** Peter Willendrup, Erik Knudsen, Aziz Aziz Daoud-aladine -- **Origin:** RISOE -- **Date:** August 14th, 2007 - -## Description - -```text -This instrument allows to compare incoherent scattering from different McStas -sample components: - -* PowderN -Single_crystal -Isotropic_sqw -Incoherent - -Examples: - -Compare incoherent scattering from all sample comps, beamstop in place. - -mcrun Samples_Incoherent -d Some_directory -N5 SAMPLE=1,5 STOP=1 - -Compare incoherent scattering and direct beam attenuation for PowderN, Single_crystal -and Isotroic_sqw: - -mcrun Samples_Incoherent -d Some_other_directory -N4 SAMPLE=2,5 STOP=0 - -Have a closer look of direct beam attentuation for PowderN, Single_crystal -and Isotroic_sqw (has the side-effect that back-scattered neutrons are absorbed): - -mcrun Samples_Incoherent -d Some_third_directory -N4 SAMPLE=2,5 STOP=0 DB=1 - -The sample type selection is: -box: 1=Vanadium -2=PowderN -3=Single_Crystal -4=Isotropic_Sqw -5=Incoherent -10=Isotropic_Sqw with V.lau -cube.off: 6=PowderN, -7=Single_Crystal -8=Isotropic_Sqw -9=Incoherent -``` - -## Input parameters - -Parameters in **boldface** are required; the others are optional. - -| Name | Unit | Description | Default | -|------|------|-------------|---------| -| L_min | AA | Minimum wavelength of neutrons | 0.5 | -| L_max | AA | Maximum wavelength of neutrons | 7 | -| SAMPLE | | Sample choice, 1:Incoherent, 2:PowderN, 3:Single_crystal, 4:Isotropic_Sqw, 5:Incoherent with multiple scattering, 6:PowderN with OFF geometry, 7:Single_crystal with OFF geometry, 8:Isotropic_Sqw with OFF geometry, 9:Incoherent with OFF geometry, 10:Isotropic_Sqw with .laz input | 1 | -| STOP | 1 | Beamstop inserted? (Needed in case of comparison between V and SX/sqw). | 0 | -| Order | 1 | Maximum order of multiple scattering in SX/sqw | 0 | -| INC | barns | Incoherent scattering cross section | 5.08 | -| ABS | barns | Absorption cross section | 5.08 | -| DB | 1 | Direct Beam monitor inserted? (Side-effect: absorbs 'backscattered' neutrons). | 0 | -| ISISFACE | string | ISIS moderator face to look at | "hydrogen" | - -## Links - -- [Source code](Samples_Incoherent.instr) for `Samples_Incoherent.instr`. -- Validation of Single_crystal is now in progress! - ---- - -*Generated for mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/examples/Tests_samples/Samples_Incoherent_off/Samples_Incoherent_off.md b/mcstas-comps/examples/Tests_samples/Samples_Incoherent_off/Samples_Incoherent_off.md deleted file mode 100644 index e1e4f8d15..000000000 --- a/mcstas-comps/examples/Tests_samples/Samples_Incoherent_off/Samples_Incoherent_off.md +++ /dev/null @@ -1,35 +0,0 @@ -# The `Samples_Incoherent_off` Instrument - -*McStas: Instrument to demonstrate the usage of OFF shape samples with totally absorbing material.* - -## Identification - -- **Site:** Tests_samples -- **Author:** Reynald ARNERIN -- **Origin:** ILL -- **Date:** June 12th, 2008 - -## Description - -```text -Instrument to demonstrate the usage of OFF shape samples with totally absorbing material. -The Incoherent component is here used with a description file. The shape may be scaled -forcing the size of the bounding box. -``` - -## Input parameters - -Parameters in **boldface** are required; the others are optional. - -| Name | Unit | Description | Default | -|------|------|-------------|---------| -| geometry | string | Name of the OFF file describing the sample shape | "socket.off" | - -## Links - -- [Source code](Samples_Incoherent_off.instr) for `Samples_Incoherent_off.instr`. -- http://shape.cs.princeton.edu/benchmark/documentation/off_format.html - ---- - -*Generated for mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/examples/Tests_samples/Samples_Isotropic_Sqw/Samples_Isotropic_Sqw.md b/mcstas-comps/examples/Tests_samples/Samples_Isotropic_Sqw/Samples_Isotropic_Sqw.md deleted file mode 100644 index 71dc433b2..000000000 --- a/mcstas-comps/examples/Tests_samples/Samples_Isotropic_Sqw/Samples_Isotropic_Sqw.md +++ /dev/null @@ -1,37 +0,0 @@ -# The `Samples_Isotropic_Sqw` Instrument - -*McStas: A test instrument for the S(q,w) sample* - -## Identification - -- **Site:** Tests_samples -- **Author:** E. Farhi -- **Origin:** ILL -- **Date:** Jan 2004 - -## Description - -```text -This instrument is a test instrument for the S(q,w) sample. -It produces a tof-angle and angle-energy detectors and also exports the -S(q,w) and S(q) data. -``` - -## Input parameters - -Parameters in **boldface** are required; the others are optional. - -| Name | Unit | Description | Default | -|------|------|-------------|---------| -| lambda | Angs | source energy | 3.4 | -| sample_coh | str | name of coherent Sqw data file | "Rb_liq_coh.sqw" | -| sample_inc | str | name of incoherent Sqw data file | "Rb_liq_inc.sqw" | - -## Links - -- [Source code](Samples_Isotropic_Sqw.instr) for `Samples_Isotropic_Sqw.instr`. -- The Isotropic_Sqw sample - ---- - -*Generated for mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/examples/Tests_samples/Samples_Phonon/Samples_Phonon.md b/mcstas-comps/examples/Tests_samples/Samples_Phonon/Samples_Phonon.md deleted file mode 100644 index 9d0687a27..000000000 --- a/mcstas-comps/examples/Tests_samples/Samples_Phonon/Samples_Phonon.md +++ /dev/null @@ -1,41 +0,0 @@ -# The `Samples_Phonon` Instrument - -*McStas: Simple test instrument for the Phonon_simple component* - -## Identification - -- **Site:** Tests_samples -- **Author:** Kim Lefmann -- **Origin:** RISOE -- **Date:** Feb 2004 - -## Description - -```text -Simple test instrument for the Phonon_simple component. -Refer to the component documentation for further instructions. -``` - -## Input parameters - -Parameters in **boldface** are required; the others are optional. - -| Name | Unit | Description | Default | -|------|------|-------------|---------| -| E | meV | Mean energy at source | 10 | -| DE | meV | Energy spread at source | 0 | -| HDIV | deg | Horizontal divergence produced from source | 1e-4 | -| VDIV | deg | Vertical divergence produced from source | 1e-4 | -| TT | deg | Two-theta detetector-angle | 72.69 | -| OM | deg | Sample rotation angle | -43.3 | -| C | meV/AA^(-1) | Sample velocity of sound | 8 | -| focus_r | | | 0 | -| focus_a | | | 0 | - -## Links - -- [Source code](Samples_Phonon.instr) for `Samples_Phonon.instr`. - ---- - -*Generated for mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/examples/Tests_samples/Samples_vanadium/Samples_vanadium.md b/mcstas-comps/examples/Tests_samples/Samples_vanadium/Samples_vanadium.md deleted file mode 100644 index a128efe78..000000000 --- a/mcstas-comps/examples/Tests_samples/Samples_vanadium/Samples_vanadium.md +++ /dev/null @@ -1,35 +0,0 @@ -# The `Samples_vanadium` Instrument - -*McStas: A test instrument using a vanadium cylinder* - -## Identification - -- **Site:** Tests_samples -- **Author:** Kristian Nielsen and Kim Lefmann -- **Origin:** Risoe -- **Date:** 1998 - -## Description - -```text -This instrument shows the vanadium sample scattering anisotropy. -This is an effect of attenuation of the beam in the cylindrical sample. -``` - -## Input parameters - -Parameters in **boldface** are required; the others are optional. - -| Name | Unit | Description | Default | -|------|------|-------------|---------| -| ROT | deg | Rotation angle of the PSD monitor | 0 | - -## Links - -- [Source code](Samples_vanadium.instr) for `Samples_vanadium.instr`. -- The McStas User manual -- The McStas tutorial - ---- - -*Generated for mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/examples/Tests_samples/Test_Incoherent/Test_Incoherent.md b/mcstas-comps/examples/Tests_samples/Test_Incoherent/Test_Incoherent.md deleted file mode 100644 index 89d198d41..000000000 --- a/mcstas-comps/examples/Tests_samples/Test_Incoherent/Test_Incoherent.md +++ /dev/null @@ -1,33 +0,0 @@ -# The `Test_Incoherent` Instrument - -*McStas: Test output of Incoherent on two spherical monitor.* - -## Identification - -- **Site:** Tests_samples -- **Author:** P. Willendrup -- **Origin:** DTU -- **Date:** October 1st 2020 - -## Description - -```text -A test instrument for Incoherent output on spherical monitor. -``` - -## Input parameters - -Parameters in **boldface** are required; the others are optional. - -| Name | Unit | Description | Default | -|------|------|-------------|---------| -| lambda | Angs | Wavelength emitted from source, 1% wl-interval around. | 1 | -| L1 | m | Source-sample distance | 10 | - -## Links - -- [Source code](Test_Incoherent.instr) for `Test_Incoherent.instr`. - ---- - -*Generated for mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/examples/Tests_samples/Test_Incoherent_MS/Test_Incoherent_MS.md b/mcstas-comps/examples/Tests_samples/Test_Incoherent_MS/Test_Incoherent_MS.md deleted file mode 100644 index e3c95eeb7..000000000 --- a/mcstas-comps/examples/Tests_samples/Test_Incoherent_MS/Test_Incoherent_MS.md +++ /dev/null @@ -1,66 +0,0 @@ -# The `Test_Incoherent_MS` Instrument - -*McStas: Test instrument for validation of magnitude of multiple scattering in Incoherent.comp.* - -## Identification - -- **Site:** Tests_samples -- **Author:** Daniel Lomholt Christensen and Peter Willendrup -- **Origin:** NBI -- **Date:** 20250603 - -## Description - -```text -Test instrument for validation of magnitude of multiple scattering in Incoherent.comp. -The instrument considers "thin" and "thick" sample conditions. - - -For the thin sample conditions, the following analytical calulations find the -Neutron intensity at the detector to be 27.12: -
    -$$ -\frac{dN_{\rm real}}{dt}= \Psi A \rho_{\rm c}\sigma_{\rm inc} -\frac{\Delta \Omega}{4 \pi} a_{\rm lin} l_{unscattered}. -$$ -Where $\Psi=1e7$, $A=1$, $\rho=0.0723$, $\sigma_{\rm inc}=\sigma_{\rm abs} = 5.08$, $\frac{\Delta \Omega}{4 \pi} = 10/99.95^2$ -and $a_{\rm lin}= \exp(-(\sigma_{\rm inc} + \sigma_{\rm abs}\lambda/1.7982)\rho l_{avg})$. -$l_{unscattered}=0.1cm$ and is the path through the sample eg. unscattered path length. -
    - - -For the thick sample condition, the general formula is the same, -But the attenuation is calculated using the effective length, instead of the actual -length: -
    -\begin{equation} \label{eq:inc_layer_l} -l_{\rm app} = \int _{0}^{l_{\rm max}} a_{\rm lin}(z) dz -= \int _{0}^{l_{\rm max}} e^{-2\mu z}dz -= \frac{1-e^{-2\mu l_{\rm max}}}{2\mu }, -\end{equation} -
    - -By scanning across thickness values, one then finds a curve, that should fit the -analytical calculations. -``` - -## Input parameters - -Parameters in **boldface** are required; the others are optional. - -| Name | Unit | Description | Default | -|------|------|-------------|---------| -| flux_mult | 1/(s*cm**2*st*meV) | Source flux x 1e14 multiplier for source | 0.5512 | -| thick | m | Sample thickness | 0.001 | -| total_scattering | 1 | Flag to indicate if sample focuses (=0) or not (=1) | 0 | -| sample | str | Sample state "thick", "thin", "none" supported | "thin" | -| order | 1 | Maximal order of multiple scattering | 1 | - -## Links - -- [Source code](Test_Incoherent_MS.instr) for `Test_Incoherent_MS.instr`. -- A reference/HTML link for more information - ---- - -*Generated for mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/examples/Tests_samples/Test_Magnon_bcc_2D/Test_Magnon_bcc_2D.md b/mcstas-comps/examples/Tests_samples/Test_Magnon_bcc_2D/Test_Magnon_bcc_2D.md deleted file mode 100644 index acfb2e170..000000000 --- a/mcstas-comps/examples/Tests_samples/Test_Magnon_bcc_2D/Test_Magnon_bcc_2D.md +++ /dev/null @@ -1,41 +0,0 @@ -# The `Test_Magnon_bcc_2D` Instrument - -*McStas: Test instrument for the Sqq_w_monitor and Magnon_bcc components, derived from template_Laue* - -## Identification - -- **Site:** Tests_samples -- **Author:** P. Willendrup -- **Origin:** DTU -- **Date:** June, 2018 - -## Description - -```text - -``` - -## Input parameters - -Parameters in **boldface** are required; the others are optional. - -| Name | Unit | Description | Default | -|------|------|-------------|---------| -| lambda | AA | Central wavelength of wavelength distribution | 10 | -| dlambda | AA | Width of wavelength distribution | 9.9 | -| Rotation | deg | Sample orientation | 0 | -| inelastic | in 0:1 | Fraction of statistics to scatter inelastically | 1 | -| aa | AA | BCC lattice constant | 6.283185307179586 | -| sample_J | meV | Magnitude of sample nearest-neighbour interaction | 2 | -| TT | K | Sample temperature | 300 | -| FerroMagnet | boolean | Flag to choose if sample is FM or AFM | 0 | -| Verbose | | | 0 | -| imultiplier | 1 | Parameter to rescale intensity-output from Magnon comp | 1 | - -## Links - -- [Source code](Test_Magnon_bcc_2D.instr) for `Test_Magnon_bcc_2D.instr`. - ---- - -*Generated for mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/examples/Tests_samples/Test_Magnon_bcc_TAS/Test_Magnon_bcc_TAS.md b/mcstas-comps/examples/Tests_samples/Test_Magnon_bcc_TAS/Test_Magnon_bcc_TAS.md deleted file mode 100644 index 2f2e2eb8e..000000000 --- a/mcstas-comps/examples/Tests_samples/Test_Magnon_bcc_TAS/Test_Magnon_bcc_TAS.md +++ /dev/null @@ -1,43 +0,0 @@ -# The `Test_Magnon_bcc_TAS` Instrument - -*McStas: Generic TAS instrument for test of samples with dispersions.* - -## Identification - -- **Site:** Tests_samples -- **Author:** Kim Lefmann (lefmann@nbi.ku.dk) -- **Origin:** UCPH -- **Date:** 22.07.2018 - -## Description - -```text -Generic TAS instrument for test of samples with dispersions. Modeled over the RITA-2 instrument at PSI (one analyzer only). The instrument is able to position in q-space at q=(h 0 0) and fixed Ei and Ef. This can be used to longitudinal constant-E scans or constant-q scans. In addition, transverse constant-E scans can be made by scanning the sample orientation A3. -``` - -## Input parameters - -Parameters in **boldface** are required; the others are optional. - -| Name | Unit | Description | Default | -|------|------|-------------|---------| -| hw | meV | Neutron energy transfer | 0.5 | -| Ef | meV | Final neutron energy | 5 | -| A3offset | deg | sample rotation around a vertical axis | 0 | -| A3auto | 1 | Flag for selecting automatic setting of A3 to have q-vector along [h 0 0] (0=manual; 1=auto) | 1 | -| aa | AA | lattice parameter for cubic system (passed on to the sample component) | 4.5 | -| qh | 1 | Length of the q-vector in r.l.u., sets the value of scattering angle A4. If A3auto=1, then A3 is set to q=[qh 0 0] | 1.1 | -| highres | 1 | Flag for setting unrealistic high resolution (used for fine testing) (0=standard TAS / RITA2; 1=high resolution TAS) | 0 | -| sample_J | meV | Nearest Neighbor magnetic interaction in sample | 0.2 | -| TT | K | temperature | 300 | -| FerroMagnet | | Flag: 1 if ferromagnet, 0 if AFM | 0 | -| Verbose | 1 | Flag for printing of test statements from magnon component (0=silent, 1=print) | 0 | - -## Links - -- [Source code](Test_Magnon_bcc_TAS.instr) for `Test_Magnon_bcc_TAS.instr`. -- - ---- - -*Generated for mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/examples/Tests_samples/Test_PowderN/Test_PowderN.md b/mcstas-comps/examples/Tests_samples/Test_PowderN/Test_PowderN.md deleted file mode 100644 index 15bae57e2..000000000 --- a/mcstas-comps/examples/Tests_samples/Test_PowderN/Test_PowderN.md +++ /dev/null @@ -1,40 +0,0 @@ -# The `Test_PowderN` Instrument - -*McStas: Test output of PowderN on a spherical monitor.* - -## Identification - -- **Site:** Tests_samples -- **Author:** P. Willendrup -- **Origin:** DTU -- **Date:** October 1st 2020 - -## Description - -```text -A test instrument for PowderN output on a spherical monitor. -``` - -## Input parameters - -Parameters in **boldface** are required; the others are optional. - -| Name | Unit | Description | Default | -|------|------|-------------|---------| -| lambda | Angs | Wavelength emitted from source, 1% wl-interval around. | 1 | -| L1 | m | Source-sample distance | 10 | -| directbeam | 1 | Suppress direct beam or not | 0 | -| reflections | str | List of powder reflections | "Fe.laz" | -| SPLITS | 1 | Number of SPLIT's before sample | 1 | -| frac_c | 1 | Fraction of stats assigned to coherent scattering | 0.8 | -| frac_i | 1 | Fraction of stats assigned to incoherent scattering | 0.1 | -| frac_t | 1 | Fraction of stats assigned to unscattered, "direct beam" | 0.1 | -| d_phi | deg | d_phi focusing setting in PowderN | 0 | - -## Links - -- [Source code](Test_PowderN.instr) for `Test_PowderN.instr`. - ---- - -*Generated for mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/examples/Tests_samples/Test_PowderN_Res/Test_PowderN_Res.md b/mcstas-comps/examples/Tests_samples/Test_PowderN_Res/Test_PowderN_Res.md deleted file mode 100644 index 92655ca2b..000000000 --- a/mcstas-comps/examples/Tests_samples/Test_PowderN_Res/Test_PowderN_Res.md +++ /dev/null @@ -1,46 +0,0 @@ -# The `Test_PowderN_Res` Instrument - -*McStas: Idealized powder diffractometer, to illustrate the difference between 'banana,theta' and 'banana,divergence' in Monitor_nD.* - -## Identification - -- **Site:** Tests_samples -- **Author:** Peter Willendrup -- **Origin:** DTU -- **Date:** 20160309 - -## Description - -```text -Idealized powder diffractometer, to illustrate the difference between 'banana,theta' and 'banana,divergence' in Monitor_nD. Includes a Na2Ca3Al2F14 powder sample. - -The beam from the source is very low-divergent, to allow studying effects at the sample "only". - -By default, absorption in the sample is effectively suppressed. - -Example: Lambda0=2.5667 dLambda=0.01 radius=0.001,0.021 TT=71.8 D_PHI=6 SPLITS=117 Distance=30 sig_abs=1e-09 -N21 -``` - -## Input parameters - -Parameters in **boldface** are required; the others are optional. - -| Name | Unit | Description | Default | -|------|------|-------------|---------| -| Lambda0 | AA | Central wavelength of the source | 2.5667 | -| dLambda | AA | Width of wavelength band from the source | 0.01 | -| radius | m | Radius of cylindrical powder sample | 0.01 | -| TT | deg | Two-theta (scattering angle) of small banana detectors | 72 | -| D_PHI | deg | d_phi focusing around detector "plane" in degrees | 6 | -| SPLITS | 1 | SPLIT statistics booster at sample position | 117 | -| Distance | m | Distance between source and sample | 30 | -| sig_abs | barns | Absorption cross-section in the sample | 1e-9 | - -## Links - -- [Source code](Test_PowderN_Res.instr) for `Test_PowderN_Res.instr`. -- A reference/HTML link for more information - ---- - -*Generated for mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/examples/Tests_samples/Test_PowderN_concentric/Test_PowderN_concentric.md b/mcstas-comps/examples/Tests_samples/Test_PowderN_concentric/Test_PowderN_concentric.md deleted file mode 100644 index 3abcaf199..000000000 --- a/mcstas-comps/examples/Tests_samples/Test_PowderN_concentric/Test_PowderN_concentric.md +++ /dev/null @@ -1,36 +0,0 @@ -# The `Test_PowderN_concentric` Instrument - -*McStas: Test output of PowderN on a spherical monitor.* - -## Identification - -- **Site:** Tests_samples -- **Author:** P. Willendrup -- **Origin:** DTU -- **Date:** October 1st 2020 - -## Description - -```text -A test instrument for PowderN output on a spherical monitor. -``` - -## Input parameters - -Parameters in **boldface** are required; the others are optional. - -| Name | Unit | Description | Default | -|------|------|-------------|---------| -| lambda | Angs | Wavelength emitted from source, 1% wl-interval around. | 1 | -| L1 | m | Source-sample distance | 10 | -| directbeam | 1 | Suppress direct beam or not | 1 | -| reflections | str | List of powder reflections | "Fe.laz" | -| SPLITS | 1 | Number of SPLIT's before sample | 1 | - -## Links - -- [Source code](Test_PowderN_concentric.instr) for `Test_PowderN_concentric.instr`. - ---- - -*Generated for mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/examples/Tests_samples/Test_Powders/Test_Powders.md b/mcstas-comps/examples/Tests_samples/Test_Powders/Test_Powders.md deleted file mode 100644 index bf48023d4..000000000 --- a/mcstas-comps/examples/Tests_samples/Test_Powders/Test_Powders.md +++ /dev/null @@ -1,40 +0,0 @@ -# The `Test_PowderN` Instrument - -*McStas: Test output of PowderN, NCrystal and Single_crystal on a spherical monitor / PSD.* - -## Identification - -- **Site:** Tests_samples -- **Author:** M. Bertelsen and P. Willendrup -- **Origin:** ESS DMSC -- **Date:** November 2024 - -## Description - -```text -A test instrument for Powder output from different sample components. -``` - -## Input parameters - -Parameters in **boldface** are required; the others are optional. - -| Name | Unit | Description | Default | -|------|------|-------------|---------| -| comp | 1 | 1=PowderN, 2=Single_crystal, 3=NCrystal | 1 | -| lambda | Angs | Wavelength emitted from source, 1% wl-interval around. | 2.5 | -| L1 | m | Source-sample distance | 10 | -| directbeam | 1 | Suppress direct beam or not | 0 | -| material | str | Material string for picking up CIF (PowderN/Single_Crystal) and ncmat (NCrystal) | "Ge" | -| SPLITS | 1 | Number of SPLIT's before sample | 1 | -| frac_t | 1 | Fraction of stats assigned to unscattered, "direct beam" | 0.1 | -| sxmos | arcmin | Mosaicity to use in Single_crystal case | 60 | -| twotheta | deg | Angle for 2\theta detector for detailed view | 94 | - -## Links - -- [Source code](Test_Powders.instr) for `Test_Powders.instr`. - ---- - -*Generated for mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/examples/Tests_samples/Test_SANS/Test_SANS.md b/mcstas-comps/examples/Tests_samples/Test_SANS/Test_SANS.md deleted file mode 100644 index 36e74e8f1..000000000 --- a/mcstas-comps/examples/Tests_samples/Test_SANS/Test_SANS.md +++ /dev/null @@ -1,54 +0,0 @@ -# The `Test_SANS` Instrument - -*McStas: Toy model used for testing various sample components for solution-SANS.* - -## Identification - -- **Site:** Tests_samples -- **Author:** Martin Cramer Pedersen (mcpe@nbi.dk) and Søren Kynde (kynde@nbi.dk) -- **Origin:** KU-Science -- **Date:** October 29th, 2012 - -## Description - -```text -Toy model used for testing various sample components for solution-SANS. - -The following SANS samples are handled: -SANSSpheres SAMPLE=0 -SANSShells SAMPLE=1 -SANSCylinders SAMPLE=2 -SANSEllipticCylinders SAMPLE=3 -SANSLiposomes SAMPLE=4 -SANSNanodiscs SAMPLE=5 -SANSNanodiscsWithTags SAMPLE=6 -SANSPDB SAMPLE=7 (very slow, rather use SANSPDBFast) -SANSCurve SAMPLE=8 (inactivated) -SANSNanodiscsFast SAMPLE=9 -SANSNanodiscsWithTagsFast SAMPLE=10 -SANSPDBFast SAMPLE=11 -``` - -## Input parameters - -Parameters in **boldface** are required; the others are optional. - -| Name | Unit | Description | Default | -|------|------|-------------|---------| -| DistanceFromSourceToFirstPinhole | m | Distance to first pinhole from source. | 1.0 | -| DistanceFromSourceToSecondPinhole | m | Distance to second pinhole - used for focusing rays. | 10.0 | -| DistanceFromSecondPinholeToSample | m | Collimation length. | 1.0 | -| DistanceFromSampleToDetector | m | Sample-detector-distance. | 10.0 | -| RadiusOfDetector | m | Radius of the circular detector. | 4.0 | -| Lambda | AA | Wavelength of the rays emitted from source. | 4.5 | -| DLambda | | Relative deviation of wavelength of the rays emitted from source. | 0.1 | -| SAMPLE | | Index of sample model, see above. | 0 | -| Ncount | 1 | Override the number of rays to simulate. | 0 | - -## Links - -- [Source code](Test_SANS.instr) for `Test_SANS.instr`. - ---- - -*Generated for mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/examples/Tests_samples/Test_SX/Test_SX.md b/mcstas-comps/examples/Tests_samples/Test_SX/Test_SX.md deleted file mode 100644 index 3e29fa426..000000000 --- a/mcstas-comps/examples/Tests_samples/Test_SX/Test_SX.md +++ /dev/null @@ -1,42 +0,0 @@ -# The `Test_SX` Instrument - -*McStas: Test output of Single Crystal on a spherical monitor.* - -## Identification - -- **Site:** Tests_samples -- **Author:** P. Willendrup -- **Origin:** DTU -- **Date:** October 1st 2020 - -## Description - -```text -A test instrument to compare Monitor_nD output against basic 1D and 2D monitors. -``` - -## Input parameters - -Parameters in **boldface** are required; the others are optional. - -| Name | Unit | Description | Default | -|------|------|-------------|---------| -| lambda | Angs | Central wavelength emitted from source | 5 | -| dlambda | Angs | Witdth of wavelength spectrom emitted from source | 9.8 | -| L1 | m | Source-sample distance | 30 | -| directbeam | 1 | Suppress direct beam or not | 0 | -| beamstop | | Toggle beamstop | 0 | -| reflections | str | File name for reflection list | "YBaCuO.lau" | -| SPLITS | 1 | Number of SPLIT's before sample | 1 | -| order | | Maximum order of multiple scattering, Single_crystal | 0 | -| inc | barns | Incoherent cross-section | 0 | -| trans | | Fraction of statistics assigned to transmitted beam | 0.001 | -| omega | deg | Rotation angle of sample | 0 | - -## Links - -- [Source code](Test_SX.instr) for `Test_SX.instr`. - ---- - -*Generated for mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/examples/Tests_samples/Test_Single_crystal_inelastic/Test_Single_crystal_inelastic.md b/mcstas-comps/examples/Tests_samples/Test_Single_crystal_inelastic/Test_Single_crystal_inelastic.md deleted file mode 100644 index 097b575be..000000000 --- a/mcstas-comps/examples/Tests_samples/Test_Single_crystal_inelastic/Test_Single_crystal_inelastic.md +++ /dev/null @@ -1,49 +0,0 @@ -# The `Test_Single_crystal_inelastic` Instrument - -*McStas: Test instrument for the Single_crystal_inelastic component.* - -## Identification - -- **Site:** Tests_samples -- **Author:** Duc Le -- **Origin:** ISIS -- **Date:** Feb 2015 - -## Description - -```text -Simple test instrument for Single_crystal_inelastic in Horace mode - -Example: mcrun Test_Single_crystal_inelastic.instr - -once your instrument is written and functional: -- replace INSTRUMENT_SITE entry above with your Institution name as a single word -- rename the instrument name after DEFINE INSTRUMENT below -- update the parameter help in the following Parameters section -- update the instrument description, and better add a usage example with a -sensible parameter set. -``` - -## Input parameters - -Parameters in **boldface** are required; the others are optional. - -| Name | Unit | Description | Default | -|------|------|-------------|---------| -| E | meV | Mean energy produced at the source | 10 | -| DE | meV | Energy spread produced at the source | 0.1 | -| HDIV | deg | Horizontal divergence from the source | 0.5 | -| VDIV | deg | Vertical divergence from the source | 0.5 | -| OM | deg | Sample orientation around y | 0 | -| TH | deg | Sample orientation around x | 0 | -| FI | deg | Sample orientation around z | 0 | -| SQW | str | 4D Sqw input file | "example.sqw4" | - -## Links - -- [Source code](Test_Single_crystal_inelastic.instr) for `Test_Single_crystal_inelastic.instr`. -- Duc Le (2015) - duc.le@stfc.ac.uk - ---- - -*Generated for mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/examples/Tests_samples/Test_Sqw/Test_Sqw.md b/mcstas-comps/examples/Tests_samples/Test_Sqw/Test_Sqw.md deleted file mode 100644 index 593be6166..000000000 --- a/mcstas-comps/examples/Tests_samples/Test_Sqw/Test_Sqw.md +++ /dev/null @@ -1,36 +0,0 @@ -# The `Test_Sqw` Instrument - -*McStas: Test output of Isotropic_Sqw on a spherical monitor.* - -## Identification - -- **Site:** Tests_samples -- **Author:** P. Willendrup -- **Origin:** DTU -- **Date:** October 1st 2020 - -## Description - -```text -A test instrument for testing Isotropic_Sqw output on a spherical monitor. -``` - -## Input parameters - -Parameters in **boldface** are required; the others are optional. - -| Name | Unit | Description | Default | -|------|------|-------------|---------| -| lambda | Angs | Wavelength emitted from source, 1% wl-interval around. | 1 | -| L1 | m | Source-sample distance | 10 | -| directbeam | 1 | Suppress direct beam or not | 0 | -| sqw_coh | str | Sqw material definition | "Rb_liq_tot.sqw" | -| SPLITS | 1 | Number of SPLIT's before sample | 1 | - -## Links - -- [Source code](Test_Sqw.instr) for `Test_Sqw.instr`. - ---- - -*Generated for mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/examples/Tests_samples/Test_Sqw_monitor/Test_Sqw_monitor.md b/mcstas-comps/examples/Tests_samples/Test_Sqw_monitor/Test_Sqw_monitor.md deleted file mode 100644 index b3c1931d9..000000000 --- a/mcstas-comps/examples/Tests_samples/Test_Sqw_monitor/Test_Sqw_monitor.md +++ /dev/null @@ -1,116 +0,0 @@ -# The `Test_Sqw_monitor` Instrument - -*McStas: A simple ToF with cylindrical/spherical sample, and furnace/cryostat/container. The sample can be hollow.* - -## Identification - -- **Site:** Tests_samples -- **Author:** E. Farhi -- **Origin:** ILL -- **Date:** Feb 2014 - -## Description - -```text -This instrument models a generic, tunable, neutron time-of-flight spectrometer. - -The incoming flux at the sample brings neutrons with 'beam_wavelength_Angs' wavelength. -The energy resolution at the sample is given as 'beam_resolution_meV'. -The beam size at the sample is set to the sample cross section (e.g. ~2 x 5 cm). - -The sample geometry is either cylindrical ('sample_radius_m' and 'sample_height_m') -or spherical ('sample_height_m=0'). The sample can be hollow when given a thickness -'sample_thickness_m', or filled ('sample_thickness_m=0'). When in cylindrical geometry, -it is surrounded by a container with thickness 'container_thickness_m'. The container -material is specified as a powder file name 'container' in the McStas Sqw or PowderN format, -e.g. 'Al.laz' or 'Nb.laz'. Setting 'container=0' removes the container. - -The sample scattering is characterised by its coherent and incoherent contributions -given as 'sample_coh' and 'sample_inc' file names in McStas Sqw or PowderN format. -Setting the 'sample_coh=sample_inc=0' removes the sample, e.g. to study the container or -environment only contribution. - -The sample and its container are located inside a cylindrical shield with radius -'environment_radius_m' and thickness 'environment_thickness_m'. The material is set from -the 'environment' file name in the McStas Sqw or PowderN format (e.g. 'Al.laz'). -This way, it is possible to estimate the contribution of a cryostat or furnace. -Setting 'environment=0' removes the environment. - -The detector has a cylindrical geometry, with a radius 'sample_detector_distance_m' -and tubes with height 'detector_height_m'. The detector covers a -30 to 140 deg angular range -with 2.54 cm diameter tubes (the number of tubes is computed from the distance). -The direct beam (non scattered neutrons) is discarded. - -The detector produces both (angle,tof) and (q,w) data sets, for: -total scattering -coherent single scattering from sample -incoherent single scattering from sample -multiple scattering from sample -scattering from the container and sample environment -The (angle,tof) results are corrected for the parallax effect from the detector height. - -Known configurations: -ILL_IN4: -beam_wavelength_Angs=2, beam_resolution_meV=0.5, -sample_detector_distance_m=2.0, detector_height_m=0.3 -ILL_IN5: -beam_wavelength_Angs=5, beam_resolution_meV=0.1, -sample_detector_distance_m=4.0, detector_height_m=3.0 -ILL_IN6: -beam_wavelength_Angs=4.1, beam_resolution_meV=0.1, -sample_detector_distance_m=2.48, detector_height_m=1.2 -PSI_Focus: -beam_wavelength_Angs=4.1, beam_resolution_meV=0.1, -sample_detector_distance_m=2.5, detector_height_m=1.2 -FRM2_TOFTOF: -beam_wavelength_Angs=3.0, beam_resolution_meV=0.3, -sample_detector_distance_m=4.0, detector_height_m=2.0 -SNS_SEQUOIA: -beam_wavelength_Angs=1.0, beam_resolution_meV=3.0, -sample_detector_distance_m=5.5, detector_height_m=1.2 -SNS_ARCS: -beam_wavelength_Angs=0.3, beam_resolution_meV=20.0, -sample_detector_distance_m=3.0, detector_height_m=1.46 -NIST_DCS: -beam_wavelength_Angs=3.0, beam_resolution_meV=0.2, -sample_detector_distance_m=4.0, detector_height_m=1.2 -ISIS_MERLIN: -beam_wavelength_Angs=1.0, beam_resolution_meV=2.4, -sample_detector_distance_m=2.5, detector_height_m=3.0 -ISIS_LET: -beam_wavelength_Angs=4.0, beam_resolution_meV=0.1, -sample_detector_distance_m=3.5, detector_height_m=4.0 -``` - -## Input parameters - -Parameters in **boldface** are required; the others are optional. - -| Name | Unit | Description | Default | -|------|------|-------------|---------| -| beam_wavelength_Angs | Angs | incident neutron beam wavelength | 2 | -| beam_resolution_meV | meV | incident energy range full width | 0.1 | -| sample_coh | str | sample coherent Sqw data file or NULL | "Rb_liq_coh.sqw" | -| sample_inc | str | sample incoherent Sqw data file or NULL | "Rb_liq_inc.sqw" | -| sample_thickness_m | m | thickness of sample. 0=filled | 1e-3 | -| sample_height_m | m | height of sample. 0=sphere | 0.03 | -| sample_radius_m | m | radius of sample (outer) | 0.005 | -| container | str | container material or NULL | "Al.laz" | -| container_thickness_m | m | container thickness | 50e-6 | -| environment | str | sample environment material or NULL | "Al.laz" | -| environment_radius_m | m | sample environment outer radius | 0.025 | -| environment_thickness_m | m | sample environment thickness | 2e-3 | -| detector_height_m | m | detector tubes height | 3 | -| sample_detector_distance_m | m | distance from sample to detector | 4.0 | - -## Links - -- [Source code](Test_Sqw_monitor.instr) for `Test_Sqw_monitor.instr`. -- The Isotropic_Sqw sample -- The PowderN sample -- The Samples_Isotropic_Sqw example instrument -- The nMoldyn package to create Sqw data sets from MD trajectories - ---- - -*Generated for mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/examples/Tests_samples/Test_TOFRes_sample/Test_TOFRes_sample.md b/mcstas-comps/examples/Tests_samples/Test_TOFRes_sample/Test_TOFRes_sample.md deleted file mode 100644 index d259c3840..000000000 --- a/mcstas-comps/examples/Tests_samples/Test_TOFRes_sample/Test_TOFRes_sample.md +++ /dev/null @@ -1,42 +0,0 @@ -# The `Test_TOFRes_sample` Instrument - -*McStas: Testing resolution of a TOF spectrometer, use "reso.dat" output with mcresplot.py* - -## Identification - -- **Site:** Tests_samples -- **Author:** Peter Willendrup (adapted from ancient Kim Lefmann instrument) -- **Origin:** DTU -- **Date:** 25-Oct-2023 - -## Description - -```text -Testing resolution of a TOF spectrometer, use "reso.dat" output with mcresplot.py - -TOF resolution test instrument. -``` - -## Input parameters - -Parameters in **boldface** are required; the others are optional. - -| Name | Unit | Description | Default | -|------|------|-------------|---------| -| Chop_W1 | m | Width of 1st chopper slit | 0.1 | -| Chop_ph1 | s | Temporal phase of 1st chopper | 0.0009 | -| Chop_W2 | m | Width of 2nd chopper slit | 0.2 | -| Chop_ph2 | s | Temporal phase of 2nd chopper | 0.003 | -| Chop_W3 | m | Width of 3rd chopper slit | 0.1 | -| Chop_ph3 | s | Temporal phase of 3rd chopper | 0.006 | -| TIME_BIN | us | Target detection time | 10000 | -| BIN_WIDTH | us | Width of detection times | 10 | -| TWOTHETA | deg | Scattering angle | 60 | - -## Links - -- [Source code](Test_TOFRes_sample.instr) for `Test_TOFRes_sample.instr`. - ---- - -*Generated for mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/examples/Tests_samples/Test_TasReso/Test_TasReso.md b/mcstas-comps/examples/Tests_samples/Test_TasReso/Test_TasReso.md deleted file mode 100644 index 97062b22b..000000000 --- a/mcstas-comps/examples/Tests_samples/Test_TasReso/Test_TasReso.md +++ /dev/null @@ -1,59 +0,0 @@ -# The `Test_TasReso` Instrument - -*McStas: Testing the triple-axis resolution, use "reso.dat" output with mcresplot.py* - -## Identification - -- **Site:** Tests_samples -- **Author:** Tobias Weber (tweber@ill.fr) -- **Origin:** ILL -- **Date:** 30-Mar-2019 - -## Description - -```text -Testing the triple-axis resolution, use "reso.dat" output with mcresplot.py - -Triple-axis resolution test instrument, -forked from the Hercules McStas course: -https://code.ill.fr/tweber/hercules - -This program is free software: you can redistribute it and/or modify -it under the terms of the GNU General Public License as published by -the Free Software Foundation, version 3 of the License. - -This program is distributed in the hope that it will be useful, -but WITHOUT ANY WARRANTY; without even the implied warranty of -MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -GNU General Public License for more details. - -You should have received a copy of the GNU General Public License -along with this program. If not, see http://www.gnu.org/licenses/. -``` - -## Input parameters - -Parameters in **boldface** are required; the others are optional. - -| Name | Unit | Description | Default | -|------|------|-------------|---------| -| src_lam | AA | Source mean wavelength | 4.5 | -| src_dlam | AA | Source wavelength spread | 1.0 | -| ki | AA^-1 | Monochromator ki | -1 | -| kf | AA^-1 | Analyser kf | -1 | -| sample_num | | Selection of sample-model 0=vanadium, 1=single crystal, 2=resolution | 2 | -| mono_curvh | m | Monochromator horizontal curvature. -1: optimal, 0: flat | -1 | -| mono_curvv | m | Monochromator vertical curvature -1: optimal, 0: flat | -1 | -| ana_curvh | m | Analyzer horizontal curvature. -1: optimal, 0: flat | -1 | -| ana_curvv | m | Analyzer vertical curvature -1: optimal, 0: flat | -1 | -| coll_presample_div | arcmin | Collimation before sample | 30.0 | -| coll_postsample_div | arcmin | Collimation after sample | 30.0 | -| k_filter_cutoff | AA^-1 | Filter cutoff | 1.6 | - -## Links - -- [Source code](Test_TasReso.instr) for `Test_TasReso.instr`. - ---- - -*Generated for mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/examples/Tests_samples/Test_single_magnetic_crystal/Test_single_magnetic_crystal.md b/mcstas-comps/examples/Tests_samples/Test_single_magnetic_crystal/Test_single_magnetic_crystal.md deleted file mode 100644 index a99524fe1..000000000 --- a/mcstas-comps/examples/Tests_samples/Test_single_magnetic_crystal/Test_single_magnetic_crystal.md +++ /dev/null @@ -1,44 +0,0 @@ -# The `Test_single_magnetic_crystal` Instrument - -*McStas: Unit test instrument for magnetic single crystal* - -## Identification - -- **Site:** Tests_samples -- **Author:** Erik B Knudsen (erkn@fysik.dtu.dk) -- **Origin:** DTU Physics -- **Date:** Jan 2020 - -## Description - -```text -A very simple unit test/example instrument for the experimental Single_magnetic_crystal -component. It is a very simple implementation of a Laue camera using 4PI spherical -monitors. -``` - -## Input parameters - -Parameters in **boldface** are required; the others are optional. - -| Name | Unit | Description | Default | -|------|------|-------------|---------| -| L0 | AA | Centre wavelength to simulate | 4 | -| dL | AA | Half wavelength spread to sample | 3.91 | -| OM | deg | Sample rotation | 0 | -| TT | deg | Rotation of detector arm | 0 | -| PX | | x-component of initial polarization | 0 | -| PY | | y-component of initial polarization | 1 | -| PZ | | z-component of initial polarization | 0 | -| MOS | arcmin | Isotropic mosaic of the crystal. | 100 | -| QMIN | AA^-1 | lower boundary of momentum transfer range to generate hkls in | 0.1 | -| QMAX | AA^-1 | upper boundary of momentum transfer range to generate hkls in | 5 | - -## Links - -- [Source code](Test_single_magnetic_crystal.instr) for `Test_single_magnetic_crystal.instr`. -- A reference/HTML link for more information - ---- - -*Generated for mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/examples/Tests_samples/Unittest_SANS_benchmark2/Unittest_SANS_benchmark2.md b/mcstas-comps/examples/Tests_samples/Unittest_SANS_benchmark2/Unittest_SANS_benchmark2.md deleted file mode 100644 index e972b4d67..000000000 --- a/mcstas-comps/examples/Tests_samples/Unittest_SANS_benchmark2/Unittest_SANS_benchmark2.md +++ /dev/null @@ -1,39 +0,0 @@ -# The `Unittest_SANS_benchmark2` Instrument - -*McStas: Test instrument for the SANS_benchmark2 component. No guide / velocity selector.* - -## Identification - -- **Site:** Tests_samples -- **Author:** Peter Willendrup -- **Origin:** ESS -- **Date:** April 2023 - -## Description - -```text -Very simple test instrument for the SANS_benchmark2 component from H. Frielinghaus. -``` - -## Input parameters - -Parameters in **boldface** are required; the others are optional. - -| Name | Unit | Description | Default | -|------|------|-------------|---------| -| lambda | AA | Mean wavelength of neutrons | 6 | -| dlambda | AA | Wavelength spread of neutrons | 0.05 | -| r | AA | Radius of scattering hard spheres | 150 | -| PHI | 1 | Particle volume fraction | 1e-3 | -| Delta_Rho | cm^-2 | Scattering length density | 6e10 | -| frac_dir | 1 | Fraction of statistics for direct beam | 0.03 | -| frac_inc | 1 | Fraction of statistics for incoherent scattering in scattered beam | 0.01 | -| modnum | int | Sample "modle number" from SANS_benchmark2 | 1 | - -## Links - -- [Source code](Unittest_SANS_benchmark2.instr) for `Unittest_SANS_benchmark2.instr`. - ---- - -*Generated for mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/examples/Tests_sources/Test_Source_custom/test_Source_custom.md b/mcstas-comps/examples/Tests_sources/Test_Source_custom/test_Source_custom.md deleted file mode 100644 index 5392524dd..000000000 --- a/mcstas-comps/examples/Tests_sources/Test_Source_custom/test_Source_custom.md +++ /dev/null @@ -1,32 +0,0 @@ -# The `test_Source_custom` Instrument - -*McStas: Test instrument for the Source_custom component* - -## Identification - -- **Site:** Tests_sources -- **Author:** Pablo Gila-Herranz -- **Origin:** Materials Physics Center (CFM-MPC), CSIC-UPV/EHU -- **Date:** 15:36:54 on April 04, 2025 - -## Description - -```text -This is a test file for the Source_custom component -Using the parameters for the HBS bi-spectral source -``` - -## Input parameters - -Parameters in **boldface** are required; the others are optional. - -| Name | Unit | Description | Default | -|------|------|-------------|---------| - -## Links - -- [Source code](test_Source_custom.instr) for `test_Source_custom.instr`. - ---- - -*Generated for mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/examples/Tests_sources/Test_Source_quasi/Test_Source_quasi.md b/mcstas-comps/examples/Tests_sources/Test_Source_quasi/Test_Source_quasi.md deleted file mode 100644 index 3a81b2c00..000000000 --- a/mcstas-comps/examples/Tests_sources/Test_Source_quasi/Test_Source_quasi.md +++ /dev/null @@ -1,32 +0,0 @@ -# The `Test_Source_quasi` Instrument - -*McStas: Test instrument to show that the quasi-stcohastic source component works* - -## Identification - -- **Site:** Tests_sources -- **Author:** Erik B Knudsen (erkn@fysik.dtu.dk) -- **Origin:** DTU Fysik -- **Date:** Feb 1st 2013 - -## Description - -```text -This instrument is a unit test for the quasi-stochastic source component. -``` - -## Input parameters - -Parameters in **boldface** are required; the others are optional. - -| Name | Unit | Description | Default | -|------|------|-------------|---------| -| SRC | | Integer parameter picks a source model. 0 normal Source_div, Quasi-stochastic | 1 | - -## Links - -- [Source code](Test_Source_quasi.instr) for `Test_Source_quasi.instr`. - ---- - -*Generated for mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/examples/Tests_union/Conditional_test/Conditional_test.md b/mcstas-comps/examples/Tests_union/Conditional_test/Conditional_test.md deleted file mode 100644 index f1fb24572..000000000 --- a/mcstas-comps/examples/Tests_union/Conditional_test/Conditional_test.md +++ /dev/null @@ -1,32 +0,0 @@ -# The `Conditional_test` Instrument - -*McStas: Test of all Union conditional components* - -## Identification - -- **Site:** Tests_union -- **Author:** Mads Bertelsen -- **Origin:** University of Copenhagen -- **Date:** September 2015 - -## Description - -```text -Use of all conditional components in one instrument file -``` - -## Input parameters - -Parameters in **boldface** are required; the others are optional. - -| Name | Unit | Description | Default | -|------|------|-------------|---------| -| dummy | | Dummy input parameter | 1 | - -## Links - -- [Source code](Conditional_test.instr) for `Conditional_test.instr`. - ---- - -*Generated for mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/examples/Tests_union/External_component_test/External_component_test.md b/mcstas-comps/examples/Tests_union/External_component_test/External_component_test.md deleted file mode 100644 index 3da314401..000000000 --- a/mcstas-comps/examples/Tests_union/External_component_test/External_component_test.md +++ /dev/null @@ -1,32 +0,0 @@ -# The `External_component_test` Instrument - -*McStas: Inserts external component in Union system with exit volumes and number_of_activations* - -## Identification - -- **Site:** Tests_union -- **Author:** Mads Bertelsen -- **Origin:** University of Copenhagen -- **Date:** September 2015 - -## Description - -```text -Demonstration of the use of "number_of_activations" and exit volumes to -include a regular McStas component in an ensemble of Union components. -``` - -## Input parameters - -Parameters in **boldface** are required; the others are optional. - -| Name | Unit | Description | Default | -|------|------|-------------|---------| - -## Links - -- [Source code](External_component_test.instr) for `External_component_test.instr`. - ---- - -*Generated for mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/examples/Tests_union/Geometry_test/Geometry_test.md b/mcstas-comps/examples/Tests_union/Geometry_test/Geometry_test.md deleted file mode 100644 index 60192c4a5..000000000 --- a/mcstas-comps/examples/Tests_union/Geometry_test/Geometry_test.md +++ /dev/null @@ -1,32 +0,0 @@ -# The `Geometry_test` Instrument - -*McStas: Test of all Union geometry components in one file* - -## Identification - -- **Site:** Tests_union -- **Author:** Mads Bertelsen -- **Origin:** University of Copenhagen -- **Date:** September 2015 - -## Description - -```text -Use of all basic geometries, mesh(as a torus), sphere, cylinder, cone and box -``` - -## Input parameters - -Parameters in **boldface** are required; the others are optional. - -| Name | Unit | Description | Default | -|------|------|-------------|---------| -| meshfile | | | "torus.STL" | - -## Links - -- [Source code](Geometry_test.instr) for `Geometry_test.instr`. - ---- - -*Generated for mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/examples/Tests_union/Hidden_Cylinder/Hidden_Cylinder.md b/mcstas-comps/examples/Tests_union/Hidden_Cylinder/Hidden_Cylinder.md deleted file mode 100644 index f11893d0c..000000000 --- a/mcstas-comps/examples/Tests_union/Hidden_Cylinder/Hidden_Cylinder.md +++ /dev/null @@ -1,41 +0,0 @@ -# The `Hidden_Cylinder` Instrument - -*McStas: Small test instrument testing placement of low-priority Union cylinder within higher-priority Union cylinder.* - -## Identification - -- **Site:** Tests_union -- **Author:** Daniel Lomholt Christensen -- **Origin:** UCPH@NBI, Funded by ACTNXT -- **Date:** 15:54:48 on January 20, 2026 - -## Description - -```text -A small test instrument testing the placement of one cylinder with a low priority -fully inside another cylinder with a higher priority. This was added to test -for an mcdisplay error that used to occur, when a cylinder is completely -enclosed in another cylinder. -To test this simply do -a "mcdisplay Hidden_Cylinder.instr -c -y" -``` - -## Input parameters - -Parameters in **boldface** are required; the others are optional. - -| Name | Unit | Description | Default | -|------|------|-------------|---------| -| pin_rad | m | Radius of source | 0.0025 | -| d | m | Distance between source and sample center | 10 | -| detector_x | m | Detector Width | 0.01 | -| detector_y | m | Detector Height | 0.04 | -| det_dist | m | Distance between detector and sample center | 0.005 | - -## Links - -- [Source code](Hidden_Cylinder.instr) for `Hidden_Cylinder.instr`. - ---- - -*Generated for mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/examples/Tests_union/IncoherentPhonon_test/IncoherentPhonon_test.md b/mcstas-comps/examples/Tests_union/IncoherentPhonon_test/IncoherentPhonon_test.md deleted file mode 100644 index a6e84bd32..000000000 --- a/mcstas-comps/examples/Tests_union/IncoherentPhonon_test/IncoherentPhonon_test.md +++ /dev/null @@ -1,56 +0,0 @@ -# The `IncoherentPhonon_test` Instrument - -*McStas: Test of IncoherentPhonon_process* - -## Identification - -- **Site:** Tests_union -- **Author:** Mads Bertelsen -- **Origin:** Johns Hopkins University, Baltimore -- **Date:** May 2016 - -## Description - -```text -Test instrument for the IncoherentPhonon_process physics process from -V. Laliena, Uni Zaragoza. - -Example: comp_select=1 Detector: energy_mon_2_I=1156.84 -``` - -## Input parameters - -Parameters in **boldface** are required; the others are optional. - -| Name | Unit | Description | Default | -|------|------|-------------|---------| -| comp_select | | 1: Union components, 2: Incoherent | 1 | -| sample_radius | m | Radius of sample | 0.01 | -| sample_height | m | Height of sample | 0.03 | -| pack | | Packing factor | 1 | -| sigma_inc_vanadium | barns | Incoherent cross-section | 5.08 | -| sigma_abs_vanadium | barns | Absorption cross-section | 5.08 | -| Vc_vanadium | AA^3 | Unit cell volume | 13.827 | -| geometry_interact | | p_interact for the Union sample | 0.5 | -| nphe_exact | | | 1 | -| nphe_approx | | | 0 | -| approx | | | 0 | -| mph_resum | | | 0 | -| T | | | 294 | -| density | | | 6.0 | -| M | | | 50.94 | -| sigmaCoh | | | 0.0184 | -| sigmaInc | | | 5.08 | -| dosfn | | | "dos_meV.txt" | -| nxs | | | 1000 | -| kabsmin | | | 0.1 | -| kabsmax | | | 25 | -| interact_fraction | | | -1 | - -## Links - -- [Source code](IncoherentPhonon_test.instr) for `IncoherentPhonon_test.instr`. - ---- - -*Generated for mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/examples/Tests_union/Logger_test/Logger_test.md b/mcstas-comps/examples/Tests_union/Logger_test/Logger_test.md deleted file mode 100644 index fdb24189a..000000000 --- a/mcstas-comps/examples/Tests_union/Logger_test/Logger_test.md +++ /dev/null @@ -1,33 +0,0 @@ -# The `Logger_test` Instrument - -*McStas: Test of all Union loggers* - -## Identification - -- **Site:** Tests_union -- **Author:** Mads Bertelsen -- **Origin:** University of Copenhagen -- **Date:** September 2015 - -## Description - -```text -Reconstruction of a sample holder from picture. -All arms are 30 cm below the actual center point in order to avoid arms -in the mcdisplay picture. Uses all Union loggers. -``` - -## Input parameters - -Parameters in **boldface** are required; the others are optional. - -| Name | Unit | Description | Default | -|------|------|-------------|---------| - -## Links - -- [Source code](Logger_test.instr) for `Logger_test.instr`. - ---- - -*Generated for mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/examples/Tests_union/Many_meshes/Many_meshes.md b/mcstas-comps/examples/Tests_union/Many_meshes/Many_meshes.md deleted file mode 100644 index f6482fc43..000000000 --- a/mcstas-comps/examples/Tests_union/Many_meshes/Many_meshes.md +++ /dev/null @@ -1,40 +0,0 @@ -# The `Many_meshes` Instrument - -*McStas: Instrument testing placement of overlapping mesh components.* - -## Identification - -- **Site:** Tests_union -- **Author:** Daniel Lomholt Christensen -- **Origin:** UCPH@NBI, Funded by ACTNXT -- **Date:** 15:54:48 on January 20, 2026 - -## Description - -```text -A small test instrument testing the placement of many overlapping -mesh components. -Test with: -mcdisplay -y -c -``` - -## Input parameters - -Parameters in **boldface** are required; the others are optional. - -| Name | Unit | Description | Default | -|------|------|-------------|---------| -| pin_rad | m | Radius of source | 0.0025 | -| d | m | Distance between source and sample center | 10 | -| detector_x | m | Detector Width | 0.01 | -| detector_y | m | Detector Height | 0.04 | -| det_dist | m | Distance between detector and sample center | 0.005 | -| crack_width | m | Height masking crack should be raised from the original crack | 0.003 | - -## Links - -- [Source code](Many_meshes.instr) for `Many_meshes.instr`. - ---- - -*Generated for mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/examples/Tests_union/Test_absorption/Test_absorption.md b/mcstas-comps/examples/Tests_union/Test_absorption/Test_absorption.md deleted file mode 100644 index 411c587c5..000000000 --- a/mcstas-comps/examples/Tests_union/Test_absorption/Test_absorption.md +++ /dev/null @@ -1,33 +0,0 @@ -# The `Test_absorption` Instrument - -*McStas: Test of Union material with only absorption* - -## Identification - -- **Site:** Tests_union -- **Author:** Mads Bertelsen -- **Origin:** University of Copenhagen -- **Date:** September 2015 - -## Description - -```text -Testing an absorber made using the Union components. An absorber is made -without processes and just the make_material component, and requires -a few special cases. -``` - -## Input parameters - -Parameters in **boldface** are required; the others are optional. - -| Name | Unit | Description | Default | -|------|------|-------------|---------| - -## Links - -- [Source code](Test_absorption.instr) for `Test_absorption.instr`. - ---- - -*Generated for mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/examples/Tests_union/Test_absorption_image/Test_absorption_image.md b/mcstas-comps/examples/Tests_union/Test_absorption_image/Test_absorption_image.md deleted file mode 100644 index a37d714f6..000000000 --- a/mcstas-comps/examples/Tests_union/Test_absorption_image/Test_absorption_image.md +++ /dev/null @@ -1,33 +0,0 @@ -# The `Test_absorption_image` Instrument - -*McStas: Image of cryostat with sample* - -## Identification - -- **Site:** Tests_union -- **Author:** Mads Bertelsen -- **Origin:** University of Copenhagen -- **Date:** September 2015 - -## Description - -```text -Simple test instrument showing absorption image of a cryostat with vanadium -sample using the Union components. -``` - -## Input parameters - -Parameters in **boldface** are required; the others are optional. - -| Name | Unit | Description | Default | -|------|------|-------------|---------| -| stick_displacement | m | Displacement of sample stick | 0 | - -## Links - -- [Source code](Test_absorption_image.instr) for `Test_absorption_image.instr`. - ---- - -*Generated for mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/examples/Tests_union/Test_box/Test_box.md b/mcstas-comps/examples/Tests_union/Test_box/Test_box.md deleted file mode 100644 index 2bf8ae91d..000000000 --- a/mcstas-comps/examples/Tests_union/Test_box/Test_box.md +++ /dev/null @@ -1,34 +0,0 @@ -# The `Test_box` Instrument - -*McStas: Simple test instrument for Union box component.* - -## Identification - -- **Site:** Tests_union -- **Author:** Mads Bertelsen -- **Origin:** University of Copenhagen -- **Date:** September 2015 - -## Description - -```text -One of the union geometries that can be used in conjuction -with the others to create a complex geometry. The priority needs to -be set, and when two or more geometries overlap, the one with highest -priority determines what material is simulated in that region. -``` - -## Input parameters - -Parameters in **boldface** are required; the others are optional. - -| Name | Unit | Description | Default | -|------|------|-------------|---------| - -## Links - -- [Source code](Test_box.instr) for `Test_box.instr`. - ---- - -*Generated for mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/examples/Tests_union/Test_mask/Test_mask.md b/mcstas-comps/examples/Tests_union/Test_mask/Test_mask.md deleted file mode 100644 index 1d30c5476..000000000 --- a/mcstas-comps/examples/Tests_union/Test_mask/Test_mask.md +++ /dev/null @@ -1,32 +0,0 @@ -# The `Test_mask` Instrument - -*McStas: Simple test instrument for mask functionality in Union framework.* - -## Identification - -- **Site:** Tests_union -- **Author:** Mads Bertelsen -- **Origin:** University of Copenhagen -- **Date:** September 2015 - -## Description - -```text -Masks allow restricing some geometry to the internal part of a mask -geometry. All Union geometry components can be used as masks. -``` - -## Input parameters - -Parameters in **boldface** are required; the others are optional. - -| Name | Unit | Description | Default | -|------|------|-------------|---------| - -## Links - -- [Source code](Test_mask.instr) for `Test_mask.instr`. - ---- - -*Generated for mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/examples/Tests_union/Test_powder/Test_powder.md b/mcstas-comps/examples/Tests_union/Test_powder/Test_powder.md deleted file mode 100644 index 7bf269abf..000000000 --- a/mcstas-comps/examples/Tests_union/Test_powder/Test_powder.md +++ /dev/null @@ -1,31 +0,0 @@ -# The `Test_powder` Instrument - -*McStas: Simple test instrument for powder process in Union framework.* - -## Identification - -- **Site:** Tests_union -- **Author:** Mads Bertelsen -- **Origin:** University of Copenhagen -- **Date:** September 2015 - -## Description - -```text -Simple test instrument for powder sample simulated using Union components. -``` - -## Input parameters - -Parameters in **boldface** are required; the others are optional. - -| Name | Unit | Description | Default | -|------|------|-------------|---------| - -## Links - -- [Source code](Test_powder.instr) for `Test_powder.instr`. - ---- - -*Generated for mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/examples/Tests_union/Test_texture/Test_texture.md b/mcstas-comps/examples/Tests_union/Test_texture/Test_texture.md deleted file mode 100644 index b71f61e48..000000000 --- a/mcstas-comps/examples/Tests_union/Test_texture/Test_texture.md +++ /dev/null @@ -1,37 +0,0 @@ -# The `Test_texture` Instrument - -*McStas: Simple test instrument for Texture functionality in Union framework.* - -## Identification - -- **Site:** Tests_union -- **Author:** -- **Origin:** -- **Date:** - -## Description - -```text -Simple test instrument for texture sample component. - -Example: lmax=0 Detector: monitor_I=8.08899e-05 -``` - -## Input parameters - -Parameters in **boldface** are required; the others are optional. - -| Name | Unit | Description | Default | -|------|------|-------------|---------| -| lmax | AA | Maximum wavelength treated by texture process | 0 | -| crystal_fn | string | Crystal structure file name | "Zr.laz" | -| fcoef_fn | string | Fourier component file name | "coef_Four_L2.txt" | -| barns | | Flag to indicate if \|F 2\| from "crystal_fn" is in barns or fm2 (barns = 1 for laz, barns = 0 for lau type files). | 1 | - -## Links - -- [Source code](Test_texture.instr) for `Test_texture.instr`. - ---- - -*Generated for mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/examples/Tests_union/Unit_test_abs_logger_1D_space/Unit_test_abs_logger_1D_space.md b/mcstas-comps/examples/Tests_union/Unit_test_abs_logger_1D_space/Unit_test_abs_logger_1D_space.md deleted file mode 100644 index 76c6ac155..000000000 --- a/mcstas-comps/examples/Tests_union/Unit_test_abs_logger_1D_space/Unit_test_abs_logger_1D_space.md +++ /dev/null @@ -1,33 +0,0 @@ -# The `Unit_test_abs_logger_1D_space` Instrument - -*McStas: Test of the 1 dimensional spatial absorption logger* - -## Identification - -- **Site:** Tests_union -- **Author:** Mads Bertelsen -- **Origin:** ESS -- **Date:** June 2020 - -## Description - -```text -Test of the 1 dimensional spatial absorption logger that investigates -the amount of absorbed intensity projected onto a axis along its y coordinate. -Often used for detectors. -``` - -## Input parameters - -Parameters in **boldface** are required; the others are optional. - -| Name | Unit | Description | Default | -|------|------|-------------|---------| - -## Links - -- [Source code](Unit_test_abs_logger_1D_space.instr) for `Unit_test_abs_logger_1D_space.instr`. - ---- - -*Generated for mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/examples/Tests_union/Unit_test_abs_logger_1D_space_event/Unit_test_abs_logger_1D_space_event.md b/mcstas-comps/examples/Tests_union/Unit_test_abs_logger_1D_space_event/Unit_test_abs_logger_1D_space_event.md deleted file mode 100644 index 686a4c10f..000000000 --- a/mcstas-comps/examples/Tests_union/Unit_test_abs_logger_1D_space_event/Unit_test_abs_logger_1D_space_event.md +++ /dev/null @@ -1,31 +0,0 @@ -# The `Unit_test_abs_logger_1D_space_event` Instrument - -*McStas: Test of Union_abs_logger_1D_space_event* - -## Identification - -- **Site:** Tests_union -- **Author:** Mads Bertelsen -- **Origin:** ESS -- **Date:** June 2020 - -## Description - -```text - -``` - -## Input parameters - -Parameters in **boldface** are required; the others are optional. - -| Name | Unit | Description | Default | -|------|------|-------------|---------| - -## Links - -- [Source code](Unit_test_abs_logger_1D_space_event.instr) for `Unit_test_abs_logger_1D_space_event.instr`. - ---- - -*Generated for mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/examples/Tests_union/Unit_test_abs_logger_1D_space_tof/Unit_test_abs_logger_1D_space_tof.md b/mcstas-comps/examples/Tests_union/Unit_test_abs_logger_1D_space_tof/Unit_test_abs_logger_1D_space_tof.md deleted file mode 100644 index 7bdafead1..000000000 --- a/mcstas-comps/examples/Tests_union/Unit_test_abs_logger_1D_space_tof/Unit_test_abs_logger_1D_space_tof.md +++ /dev/null @@ -1,32 +0,0 @@ -# The `Unit_test_abs_logger_1D_space_tof` Instrument - -*McStas: Test of abs_logger_1D_space_tof* - -## Identification - -- **Site:** Tests_union -- **Author:** Mads Bertelsen -- **Origin:** ESS -- **Date:** June 2020 - -## Description - -```text -Tests absorption logger measuring position projected onto a line and the -time of absorption in a histogram. -``` - -## Input parameters - -Parameters in **boldface** are required; the others are optional. - -| Name | Unit | Description | Default | -|------|------|-------------|---------| - -## Links - -- [Source code](Unit_test_abs_logger_1D_space_tof.instr) for `Unit_test_abs_logger_1D_space_tof.instr`. - ---- - -*Generated for mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/examples/Tests_union/Unit_test_abs_logger_1D_space_tof_to_lambda/Unit_test_abs_logger_1D_space_tof_to_lambda.md b/mcstas-comps/examples/Tests_union/Unit_test_abs_logger_1D_space_tof_to_lambda/Unit_test_abs_logger_1D_space_tof_to_lambda.md deleted file mode 100644 index f9e9a4edf..000000000 --- a/mcstas-comps/examples/Tests_union/Unit_test_abs_logger_1D_space_tof_to_lambda/Unit_test_abs_logger_1D_space_tof_to_lambda.md +++ /dev/null @@ -1,39 +0,0 @@ -# The `Unit_test_abs_logger_1D_space_tof_to_lambda` Instrument - -*McStas: Test of abs_logger_1D_space_tof_to_lambda that calculates wavelength from tof* - -## Identification - -- **Site:** Tests_union -- **Author:** Mads Bertelsen -- **Origin:** ESS -- **Date:** June 2020 - -## Description - -```text -This component works as other absorption loggers, but converts the tof and -position data to wavelength, which is then compared to the actual wavelength -calculated from the neutron state. The neutron position used to calculate -the wavelength is pixelated while the time of flight is continous. The -distance from source to sample is an input parameter, and the distance from -sample to a detector pixel is calculated using the reference component position -which should be specified with a relative component index. This test checks -both the standard view with measured and true wavelength on each axis, and the -relative where they have been normalized and a value of 1 is expected. -``` - -## Input parameters - -Parameters in **boldface** are required; the others are optional. - -| Name | Unit | Description | Default | -|------|------|-------------|---------| - -## Links - -- [Source code](Unit_test_abs_logger_1D_space_tof_to_lambda.instr) for `Unit_test_abs_logger_1D_space_tof_to_lambda.instr`. - ---- - -*Generated for mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/examples/Tests_union/Unit_test_abs_logger_2D_space/Unit_test_abs_logger_2D_space.md b/mcstas-comps/examples/Tests_union/Unit_test_abs_logger_2D_space/Unit_test_abs_logger_2D_space.md deleted file mode 100644 index 80c637ae3..000000000 --- a/mcstas-comps/examples/Tests_union/Unit_test_abs_logger_2D_space/Unit_test_abs_logger_2D_space.md +++ /dev/null @@ -1,31 +0,0 @@ -# The `Unit_test_abs_logger_2D_space` Instrument - -*McStas: Test for Union_abs_logger_2D_space* - -## Identification - -- **Site:** Tests_union -- **Author:** Mads Bertelsen -- **Origin:** ESS -- **Date:** June 2020 - -## Description - -```text -Test of absorption logger with basic geometry from Unit_test_loggers_base. -``` - -## Input parameters - -Parameters in **boldface** are required; the others are optional. - -| Name | Unit | Description | Default | -|------|------|-------------|---------| - -## Links - -- [Source code](Unit_test_abs_logger_2D_space.instr) for `Unit_test_abs_logger_2D_space.instr`. - ---- - -*Generated for mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/examples/Tests_union/Unit_test_abs_logger_event/Unit_test_abs_logger_event.md b/mcstas-comps/examples/Tests_union/Unit_test_abs_logger_event/Unit_test_abs_logger_event.md deleted file mode 100644 index c1cf097cf..000000000 --- a/mcstas-comps/examples/Tests_union/Unit_test_abs_logger_event/Unit_test_abs_logger_event.md +++ /dev/null @@ -1,31 +0,0 @@ -# The `Unit_test_abs_logger_event` Instrument - -*McStas: Test of Union_abs_logger_event* - -## Identification - -- **Site:** Tests_union -- **Author:** Mads Bertelsen -- **Origin:** ESS -- **Date:** June 2020 - -## Description - -```text - -``` - -## Input parameters - -Parameters in **boldface** are required; the others are optional. - -| Name | Unit | Description | Default | -|------|------|-------------|---------| - -## Links - -- [Source code](Unit_test_abs_logger_event.instr) for `Unit_test_abs_logger_event.instr`. - ---- - -*Generated for mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/examples/Tests_union/Unit_test_abs_logger_nD/Unit_test_abs_logger_nD.md b/mcstas-comps/examples/Tests_union/Unit_test_abs_logger_nD/Unit_test_abs_logger_nD.md deleted file mode 100644 index 04b2d20af..000000000 --- a/mcstas-comps/examples/Tests_union/Unit_test_abs_logger_nD/Unit_test_abs_logger_nD.md +++ /dev/null @@ -1,33 +0,0 @@ -# The `Unit_test_abs_logger_1D_space` Instrument - -*McStas: Test of the monitor_nD like absorption logger* - -## Identification - -- **Site:** Tests_union -- **Author:** Mads Bertelsen -- **Origin:** ESS -- **Date:** November 2025 - -## Description - -```text -Test of the monitor_nD like absorption logger that investigates the amount -of absorbed intensity as with a monitor_nD that use the previous keyword for -geometry, leaving the ray positions where they were. -``` - -## Input parameters - -Parameters in **boldface** are required; the others are optional. - -| Name | Unit | Description | Default | -|------|------|-------------|---------| - -## Links - -- [Source code](Unit_test_abs_logger_nD.instr) for `Unit_test_abs_logger_nD.instr`. - ---- - -*Generated for mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/examples/Tests_union/Unit_test_conditional_PSD/Unit_test_conditional_PSD.md b/mcstas-comps/examples/Tests_union/Unit_test_conditional_PSD/Unit_test_conditional_PSD.md deleted file mode 100644 index c8f5117d0..000000000 --- a/mcstas-comps/examples/Tests_union/Unit_test_conditional_PSD/Unit_test_conditional_PSD.md +++ /dev/null @@ -1,33 +0,0 @@ -# The `Unit_test_conditional_PSD` Instrument - -*McStas: Test of conditional_PSD* - -## Identification - -- **Site:** Tests_union -- **Author:** Mads Bertelsen -- **Origin:** ESS -- **Date:** June 2020 - -## Description - -```text -Test of conditional_PSD component that attaches to a logger and reduces -its output to neutrons that reached the conditional_PSD area in specified -time interval. This is used to investigate origin of interesting signals. -``` - -## Input parameters - -Parameters in **boldface** are required; the others are optional. - -| Name | Unit | Description | Default | -|------|------|-------------|---------| - -## Links - -- [Source code](Unit_test_conditional_PSD.instr) for `Unit_test_conditional_PSD.instr`. - ---- - -*Generated for mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/examples/Tests_union/Unit_test_conditional_standard/Unit_test_conditional_standard.md b/mcstas-comps/examples/Tests_union/Unit_test_conditional_standard/Unit_test_conditional_standard.md deleted file mode 100644 index 4dd80ea4c..000000000 --- a/mcstas-comps/examples/Tests_union/Unit_test_conditional_standard/Unit_test_conditional_standard.md +++ /dev/null @@ -1,33 +0,0 @@ -# The `Unit_test_conditional_standard` Instrument - -*McStas: Test of Union_conditional_standard* - -## Identification - -- **Site:** Tests_union -- **Author:** Mads Bertelsen -- **Origin:** ESS -- **Date:** June 2020 - -## Description - -```text -Union_conditional_standard can limit loggers to only record rays that end -their trace in Union_master within certain set limits. Here two loggers -are modified by a single conditional component that requires a final time. -``` - -## Input parameters - -Parameters in **boldface** are required; the others are optional. - -| Name | Unit | Description | Default | -|------|------|-------------|---------| - -## Links - -- [Source code](Unit_test_conditional_standard.instr) for `Unit_test_conditional_standard.instr`. - ---- - -*Generated for mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/examples/Tests_union/Unit_test_logger_1D/Unit_test_logger_1D.md b/mcstas-comps/examples/Tests_union/Unit_test_logger_1D/Unit_test_logger_1D.md deleted file mode 100644 index 5aaf9c2ff..000000000 --- a/mcstas-comps/examples/Tests_union/Unit_test_logger_1D/Unit_test_logger_1D.md +++ /dev/null @@ -1,31 +0,0 @@ -# The `Unit_test_logger_1D` Instrument - -*McStas: Test of Union 1D logger* - -## Identification - -- **Site:** Tests_union -- **Author:** Mads Bertelsen -- **Origin:** ESS -- **Date:** June 2020 - -## Description - -```text - -``` - -## Input parameters - -Parameters in **boldface** are required; the others are optional. - -| Name | Unit | Description | Default | -|------|------|-------------|---------| - -## Links - -- [Source code](Unit_test_logger_1D.instr) for `Unit_test_logger_1D.instr`. - ---- - -*Generated for mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/examples/Tests_union/Unit_test_logger_2DQ/Unit_test_logger_2DQ.md b/mcstas-comps/examples/Tests_union/Unit_test_logger_2DQ/Unit_test_logger_2DQ.md deleted file mode 100644 index 43e8173a7..000000000 --- a/mcstas-comps/examples/Tests_union/Unit_test_logger_2DQ/Unit_test_logger_2DQ.md +++ /dev/null @@ -1,31 +0,0 @@ -# The `Unit_test_logger_2DQ` Instrument - -*McStas: Test of the Union 2DQ logger that shows scattering vector projected onto 2D plane* - -## Identification - -- **Site:** Tests_union -- **Author:** Mads Bertelsen -- **Origin:** ESS -- **Date:** June 2020 - -## Description - -```text - -``` - -## Input parameters - -Parameters in **boldface** are required; the others are optional. - -| Name | Unit | Description | Default | -|------|------|-------------|---------| - -## Links - -- [Source code](Unit_test_logger_2DQ.instr) for `Unit_test_logger_2DQ.instr`. - ---- - -*Generated for mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/examples/Tests_union/Unit_test_logger_2D_kf/Unit_test_logger_2D_kf.md b/mcstas-comps/examples/Tests_union/Unit_test_logger_2D_kf/Unit_test_logger_2D_kf.md deleted file mode 100644 index 9e23fa128..000000000 --- a/mcstas-comps/examples/Tests_union/Unit_test_logger_2D_kf/Unit_test_logger_2D_kf.md +++ /dev/null @@ -1,31 +0,0 @@ -# The `Unit_test_logger_2D_kf` Instrument - -*McStas: Test of Union logger 2D kf that records the final wavevector* - -## Identification - -- **Site:** Tests_union -- **Author:** Mads Bertelsen -- **Origin:** ESS -- **Date:** June 2020 - -## Description - -```text - -``` - -## Input parameters - -Parameters in **boldface** are required; the others are optional. - -| Name | Unit | Description | Default | -|------|------|-------------|---------| - -## Links - -- [Source code](Unit_test_logger_2D_kf.instr) for `Unit_test_logger_2D_kf.instr`. - ---- - -*Generated for mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/examples/Tests_union/Unit_test_logger_2D_kf_time/Unit_test_logger_2D_kf_time.md b/mcstas-comps/examples/Tests_union/Unit_test_logger_2D_kf_time/Unit_test_logger_2D_kf_time.md deleted file mode 100644 index 6b3aa68af..000000000 --- a/mcstas-comps/examples/Tests_union/Unit_test_logger_2D_kf_time/Unit_test_logger_2D_kf_time.md +++ /dev/null @@ -1,31 +0,0 @@ -# The `Unit_test_logger_2D_kf_time` Instrument - -*McStas: Tests Logger_2D_kf_time that records final wavevector in several time steps* - -## Identification - -- **Site:** Tests_union -- **Author:** Mads Bertelsen -- **Origin:** ESS -- **Date:** June 2020 - -## Description - -```text - -``` - -## Input parameters - -Parameters in **boldface** are required; the others are optional. - -| Name | Unit | Description | Default | -|------|------|-------------|---------| - -## Links - -- [Source code](Unit_test_logger_2D_kf_time.instr) for `Unit_test_logger_2D_kf_time.instr`. - ---- - -*Generated for mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/examples/Tests_union/Unit_test_logger_2D_space/Unit_test_logger_2D_space.md b/mcstas-comps/examples/Tests_union/Unit_test_logger_2D_space/Unit_test_logger_2D_space.md deleted file mode 100644 index 4728d3abe..000000000 --- a/mcstas-comps/examples/Tests_union/Unit_test_logger_2D_space/Unit_test_logger_2D_space.md +++ /dev/null @@ -1,33 +0,0 @@ -# The `Unit_test_logger_2D_space` Instrument - -*McStas: Test of 2 dimensional spatial logger* - -## Identification - -- **Site:** Tests_union -- **Author:** Mads Bertelsen -- **Origin:** ESS -- **Date:** June 2020 - -## Description - -```text -Test of 2 dimensional spatial logger that shows scattered intensity -projected onto a plane spanned by two of the coordinate axis, for -example z and x. -``` - -## Input parameters - -Parameters in **boldface** are required; the others are optional. - -| Name | Unit | Description | Default | -|------|------|-------------|---------| - -## Links - -- [Source code](Unit_test_logger_2D_space.instr) for `Unit_test_logger_2D_space.instr`. - ---- - -*Generated for mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/examples/Tests_union/Unit_test_logger_2D_space_time/Unit_test_logger_2D_space_time.md b/mcstas-comps/examples/Tests_union/Unit_test_logger_2D_space_time/Unit_test_logger_2D_space_time.md deleted file mode 100644 index 753726802..000000000 --- a/mcstas-comps/examples/Tests_union/Unit_test_logger_2D_space_time/Unit_test_logger_2D_space_time.md +++ /dev/null @@ -1,31 +0,0 @@ -# The `Unit_test_logger_2D_space_time` Instrument - -*McStas: Test of Union logger 2D space time that records spatial distribution of scattering in time steps* - -## Identification - -- **Site:** Tests_union -- **Author:** Mads Bertelsen -- **Origin:** ESS -- **Date:** June 2020 - -## Description - -```text - -``` - -## Input parameters - -Parameters in **boldface** are required; the others are optional. - -| Name | Unit | Description | Default | -|------|------|-------------|---------| - -## Links - -- [Source code](Unit_test_logger_2D_space_time.instr) for `Unit_test_logger_2D_space_time.instr`. - ---- - -*Generated for mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/examples/Tests_union/Unit_test_logger_3D_space/Unit_test_logger_3D_space.md b/mcstas-comps/examples/Tests_union/Unit_test_logger_3D_space/Unit_test_logger_3D_space.md deleted file mode 100644 index 8ccabc6e8..000000000 --- a/mcstas-comps/examples/Tests_union/Unit_test_logger_3D_space/Unit_test_logger_3D_space.md +++ /dev/null @@ -1,31 +0,0 @@ -# The `Unit_test_logger_3D_space` Instrument - -*McStas: Test of the Union_logger_3D_space* - -## Identification - -- **Site:** Tests_union -- **Author:** Mads Bertelsen -- **Origin:** ESS -- **Date:** June 2020 - -## Description - -```text - -``` - -## Input parameters - -Parameters in **boldface** are required; the others are optional. - -| Name | Unit | Description | Default | -|------|------|-------------|---------| - -## Links - -- [Source code](Unit_test_logger_3D_space.instr) for `Unit_test_logger_3D_space.instr`. - ---- - -*Generated for mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/examples/Tests_union/Unit_test_loggers_base/Unit_test_loggers_base.md b/mcstas-comps/examples/Tests_union/Unit_test_loggers_base/Unit_test_loggers_base.md deleted file mode 100644 index 090e57240..000000000 --- a/mcstas-comps/examples/Tests_union/Unit_test_loggers_base/Unit_test_loggers_base.md +++ /dev/null @@ -1,31 +0,0 @@ -# The `Unit_test_loggers_base` Instrument - -*McStas: Base instrument for logger unit tests* - -## Identification - -- **Site:** Tests_union -- **Author:** Mads Bertelsen -- **Origin:** ESS -- **Date:** June 2020 - -## Description - -```text - -``` - -## Input parameters - -Parameters in **boldface** are required; the others are optional. - -| Name | Unit | Description | Default | -|------|------|-------------|---------| - -## Links - -- [Source code](Unit_test_loggers_base.instr) for `Unit_test_loggers_base.instr`. - ---- - -*Generated for mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/examples/Tools/Histogrammer/Histogrammer.md b/mcstas-comps/examples/Tools/Histogrammer/Histogrammer.md deleted file mode 100644 index 1484e5c64..000000000 --- a/mcstas-comps/examples/Tools/Histogrammer/Histogrammer.md +++ /dev/null @@ -1,58 +0,0 @@ -# The `Histogrammer` Instrument - -*McStas: Takes eventfile input (Virtual_input/Vitess/MCNP/Tripoli4/MCPL formats) and applies Monitor_nD to generate -histograms. Histograms can be chosen freely using the options string, see mcdoc Monitor_nD.comp* - -## Identification - -- **Site:** Tools -- **Author:** Peter Willendrup (peter.willendrup@risoe.dk) -- **Origin:** Risoe -- **Date:** 2007-03-19 - -## Description - -```text -Takes any possible McStas eventfile inputs (Virtual_input/Vitess/MCNP/Tripoli4 formats) and applies -Monitor_nD to generate user-selectable neutron histograms. - -The 'options' parameter allows to customize the type of histogram to generate. -We suggest: -"sphere theta phi outgoing previous" (this is the default) -"previous, multiple, auto, x, y, z, vx, vy, vz, hdiv, vdiv, tof, lambda" -"previous, auto, x, y" -"previous, auto, tof, lambda" - -Example: mcrun Histogrammer.instr MODE=0 -- Gives information on the input parameters - -Example: mcrun Histogrammer.instr filename="events.dat" MODE=1 options="sphere theta phi outgoing previous" -- Reads a Virtual_output generated event file and applies a spherical PSD -``` - -## Input parameters - -Parameters in **boldface** are required; the others are optional. - -| Name | Unit | Description | Default | -|------|------|-------------|---------| -| filename | string | Specifies input event file | 0 | -| MODE | int | Input file mode/format - 0 for help on usage 1=McStas,2=Vitess,3=MCNP,4=Tripoli4,5=MCPL | 0 | -| options | string | Specifies the histogramming rules used by Monitor_nD. | "sphere theta phi outgoing previous" | -| bufsize | int | Vitess_input 'buffersize' parameter - see mcdoc Vitess_input | 10000 | -| xwidth | m | Horizontal width of detector, or diameter for banana,cylinder and shpere geometry | 0.1 | -| yheight | m | Vertical height of detector, for plate, cylinder, banana shape | 0.1 | - -## Links - -- [Source code](Histogrammer.instr) for `Histogrammer.instr`. -- Virtual_input component (McStas event file) -- Vitess_input component (Vitess event file) -- Virtual_mcnp_input component (MCNP PTRAC event file) -- Virtual_tripoli4_input component (Tripoli4 BATCH event file) -- Monitor_nD component (detector/histogrammer) -- MCPL_input component (MCPL event file) - ---- - -*Generated for mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/examples/Tools/MCPL2Mantid_flat/MCPL2Mantid_flat.md b/mcstas-comps/examples/Tools/MCPL2Mantid_flat/MCPL2Mantid_flat.md deleted file mode 100644 index 6d2d56a8b..000000000 --- a/mcstas-comps/examples/Tools/MCPL2Mantid_flat/MCPL2Mantid_flat.md +++ /dev/null @@ -1,58 +0,0 @@ -# The `MCPL2Mantid_flat` Instrument - -*McStas: Instrument taking MCPL input giving Mantid-compatible NeXus output.* - -## Identification - -- **Site:** Tools -- **Author:** Peter Willendrup -- **Origin:** DTU -- **Date:** 2019-03 - -## Description - -```text -Instrument taking MCPL input giving Mantid-compatible NeXus output. - -1) The instrument coordintate system coincides with the MCPL-file coordinates. -2) The sourceMantid position is freely positionable in that space -3) The sampleMantid position is freely positionable in that space -4) The detector is a single, flat pixellated panel freely positionable in that space - -An example mcpl input file corresponding to the default geometry can be generated using -templateSANS_MCPL -``` - -## Input parameters - -Parameters in **boldface** are required; the others are optional. - -| Name | Unit | Description | Default | -|------|------|-------------|---------| -| MCPLfile | str | Defines the MCPL input file to process | "my.mcpl.gz" | -| sourceX | m | sourceMantid x-position wrt. MCPL coords | 0 | -| sourceY | m | sourceMantid y-position wrt. MCPL coords | 0 | -| sourceZ | m | sourceMantid z-position wrt. MCPL coords | -10 | -| sampleX | m | sampleMantid x-position wrt. MCPL coords | 0 | -| sampleY | m | sampleMantid y-position wrt. MCPL coords | 0 | -| sampleZ | m | sampleMantid z-position wrt. MCPL coords | 0 | -| detectorX | m | nD_Mantid_0 x-position wrt. MCPL coords | 0 | -| detectorY | m | nD_Mantid_0 y-position wrt. MCPL coords | 0 | -| detectorZ | m | nD_Mantid_0 z-position wrt. MCPL coords | 6 | -| detrotX | m | nD_Mantid_0 x-rotation wrt. MCPL coords | 0 | -| detrotY | m | nD_Mantid_0 y-rotation wrt. MCPL coords | 0 | -| detrotZ | m | nD_Mantid_0 z-rotation wrt. MCPL coords | 0 | -| xwidth | m | nD_Mantid_0 xwidth | 0.6 | -| yheight | m | nD_Mantid_0 yheight | 0.6 | -| xbins | 1 | nD_Mantid_0 x-bins | 128 | -| ybins | 1 | nD_Mantid_0 y-bins | 128 | - -## Links - -- [Source code](MCPL2Mantid_flat.instr) for `MCPL2Mantid_flat.instr`. -- -- MCPL website at https://mctools.github.io/mcpl/ - ---- - -*Generated for mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/examples/Tools/MCPL2hist/MCPL2hist.md b/mcstas-comps/examples/Tools/MCPL2hist/MCPL2hist.md deleted file mode 100644 index a86ce4faa..000000000 --- a/mcstas-comps/examples/Tools/MCPL2hist/MCPL2hist.md +++ /dev/null @@ -1,44 +0,0 @@ -# The `MCPL2hist` Instrument - -*McStas: Flexible histogramming instrument file for processing MCPL input files using Monitor_nD* - -## Identification - -- **Site:** Tools -- **Author:** Peter Willendrup -- **Origin:** DTU -- **Date:** 2017-04 - -## Description - -```text -Flexible histogramming instrument file for processing MCPL input files using Monitor_nD. - -Example1: Multiple 1D histograms of position, velocity, divergence, time and wavelength, use -NDoptions=1 defines options="previous, multiple, auto, x, y, z, vx, vy, vz, hdiv, vdiv, tof, lambda" - -Example2: 2D x-y plot of beam cross section: -NDoptions=2 defines options="previous, auto, x, y" - -Example3: 2D TOF-lambda plot of beam: -NDoptions=3 defines options="previous, auto, tof, lambda" -``` - -## Input parameters - -Parameters in **boldface** are required; the others are optional. - -| Name | Unit | Description | Default | -|------|------|-------------|---------| -| MCPLfile | str | Defines the MCPL input file to process | "my.mcpl.gz" | -| NDoptions | int | Defines what Monitor_nD measures, see example list | 1 | - -## Links - -- [Source code](MCPL2hist.instr) for `MCPL2hist.instr`. -- -- MCPL website at https://mctools.github.io/mcpl/ - ---- - -*Generated for mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/examples/Tools/MCPL_filter_energy/MCPL_filter_energy.md b/mcstas-comps/examples/Tools/MCPL_filter_energy/MCPL_filter_energy.md deleted file mode 100644 index f9bc6b5a0..000000000 --- a/mcstas-comps/examples/Tools/MCPL_filter_energy/MCPL_filter_energy.md +++ /dev/null @@ -1,39 +0,0 @@ -# The `MCPL_filter_energy` Instrument - -*McStas: Filtering-by-energy instrument file for processing MCPL input files* - -## Identification - -- **Site:** Tools -- **Author:** Peter Willendrup -- **Origin:** DTU -- **Date:** 2019-03 - -## Description - -```text -Example: Split an MCPL file at an energy of 0.5 meV -mcrun MCPL_filter_energy MCPLfile=my.mcpl.gz energy=0.5 -``` - -## Input parameters - -Parameters in **boldface** are required; the others are optional. - -| Name | Unit | Description | Default | -|------|------|-------------|---------| -| MCPLfile | str | Defines the MCPL input file to process | "my.mcpl.gz" | -| energy | meV | Defines a threshold energy to split the MCPLfile at | 40 | -| max | meV | Maximum energy in Monitor_nD plots | 100 | -| min | meV | Minimum energy in Monitor_nD plots | 0 | -| bins | 1 | Number of bins in Monitor_nD plots | 100 | - -## Links - -- [Source code](MCPL_filter_energy.instr) for `MCPL_filter_energy.instr`. -- -- MCPL website at https://mctools.github.io/mcpl/ - ---- - -*Generated for mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/examples/Tools/MCPL_filter_radius/MCPL_filter_radius.md b/mcstas-comps/examples/Tools/MCPL_filter_radius/MCPL_filter_radius.md deleted file mode 100644 index c929f3d9a..000000000 --- a/mcstas-comps/examples/Tools/MCPL_filter_radius/MCPL_filter_radius.md +++ /dev/null @@ -1,36 +0,0 @@ -# The `MCPL_filter_radius` Instrument - -*McStas: Filtering-by-radius instrument file for processing MCPL input files* - -## Identification - -- **Site:** Tools -- **Author:** Peter Willendrup -- **Origin:** DTU -- **Date:** 2019-03 - -## Description - -```text -Example: Split an MCPL file at a radius of 2.5 m from the origin -mcrun MCPL_filter_radius MCPLfile=my.mcpl.gz radius=2.5 -``` - -## Input parameters - -Parameters in **boldface** are required; the others are optional. - -| Name | Unit | Description | Default | -|------|------|-------------|---------| -| MCPLfile | str | Defines the MCPL input file to process | "my.mcpl.gz" | -| radius | m | Defines a threshold distance to split the MCPLfile at | 2.5 | - -## Links - -- [Source code](MCPL_filter_radius.instr) for `MCPL_filter_radius.instr`. -- -- MCPL website at https://mctools.github.io/mcpl/ - ---- - -*Generated for mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/examples/Tools/MCPL_filter_wavelength/MCPL_filter_wavelength.md b/mcstas-comps/examples/Tools/MCPL_filter_wavelength/MCPL_filter_wavelength.md deleted file mode 100644 index dc3fd73ca..000000000 --- a/mcstas-comps/examples/Tools/MCPL_filter_wavelength/MCPL_filter_wavelength.md +++ /dev/null @@ -1,39 +0,0 @@ -# The `MCPL_filter_wavelength` Instrument - -*McStas: Filtering-by-wavelength instrument file for processing MCPL input files* - -## Identification - -- **Site:** Tools -- **Author:** Peter Willendrup -- **Origin:** DTU -- **Date:** 2019-03 - -## Description - -```text -Example: Split an MCPL file at a wavelength of 0.5 AA -mcrun MCPL_filter_wavelength MCPLfile=my.mcpl.gz wavelength=0.5 -``` - -## Input parameters - -Parameters in **boldface** are required; the others are optional. - -| Name | Unit | Description | Default | -|------|------|-------------|---------| -| MCPLfile | str | Defines the MCPL input file to process | "my.mcpl.gz" | -| wavelength | AA | Defines a threshold wavelength to split the MCPLfile at | 0.5 | -| max | AA | Maximum wavelength in Monitor_nD plots | 20 | -| min | AA | Minimum wavelength in Monitor_nD plots | 0 | -| bins | 1 | Number of bins in Monitor_nD plots | 100 | - -## Links - -- [Source code](MCPL_filter_wavelength.instr) for `MCPL_filter_wavelength.instr`. -- -- MCPL website at https://mctools.github.io/mcpl/ - ---- - -*Generated for mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/examples/Tools/vinput2mcpl/vinput2mcpl.md b/mcstas-comps/examples/Tools/vinput2mcpl/vinput2mcpl.md deleted file mode 100644 index 89d381a78..000000000 --- a/mcstas-comps/examples/Tools/vinput2mcpl/vinput2mcpl.md +++ /dev/null @@ -1,36 +0,0 @@ -# The `vinput2mcpl` Instrument - -*McStas: Instrument for conversion of Virtual input files to MCPL.* - -## Identification - -- **Site:** Tools -- **Author:** Peter Willendrup -- **Origin:** DTU -- **Date:** Jan 7th 2023 - -## Description - -```text -Instrument for conversion of Virtual input files to MCPL. - -Example: vinput2mcpl inputfile=C8_L214.dat outputfile=C8_L214.mcpl,gz -``` - -## Input parameters - -Parameters in **boldface** are required; the others are optional. - -| Name | Unit | Description | Default | -|------|------|-------------|---------| -| inputfile | | | "input" | -| outputfile | | | "output" | - -## Links - -- [Source code](vinput2mcpl.instr) for `vinput2mcpl.instr`. -- - ---- - -*Generated for mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/examples/Union_demos/Bispectral/Bispectral.md b/mcstas-comps/examples/Union_demos/Bispectral/Bispectral.md deleted file mode 100644 index 6b2c54aa2..000000000 --- a/mcstas-comps/examples/Union_demos/Bispectral/Bispectral.md +++ /dev/null @@ -1,37 +0,0 @@ -# The `Bispectral` Instrument - -*McStas: Example of bispectral extraction on ESS Butterfly moderator using Union components* - -## Identification - -- **Site:** ESS -- **Author:** Mads Bertelsen (mads.bertelsen@ess.eu) -- **Origin:** ESS -- **Date:** October 2025 - -## Description - -```text -Bispectral switch conisting of Si blades with supermirror coating and Cu walls, -with different coatings. Materials are simulated using NCrystal. - -Example: mcrun Bispectral.instr l_min=0.5 l_max=6.0 -``` - -## Input parameters - -Parameters in **boldface** are required; the others are optional. - -| Name | Unit | Description | Default | -|------|------|-------------|---------| -| l_min | AA | Shortest simulated wavelength | 0.5 | -| l_max | AA | Longest simulated wavelength | 6.0 | - -## Links - -- [Source code](Bispectral.instr) for `Bispectral.instr`. -- A reference/HTML link for more information - ---- - -*Generated for mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/examples/Union_demos/Demonstration/Demonstration.md b/mcstas-comps/examples/Union_demos/Demonstration/Demonstration.md deleted file mode 100644 index ed22cf9f5..000000000 --- a/mcstas-comps/examples/Union_demos/Demonstration/Demonstration.md +++ /dev/null @@ -1,39 +0,0 @@ -# The `Demonstration` Instrument - -*McStas: General demonstration of Union* - -## Identification - -- **Site:** Union_demos -- **Author:** Mads Bertelsen -- **Origin:** University of Copenhagen -- **Date:** September 2015 - -## Description - -```text -Demonstration of Union components. Here four different powder samples are -placed in a can each connected to a weird sample holder and contained in -a cryostat. This unrealistic example is meant to show the syntax and the -new possibilities when using the Union components. -With the standard source only two of the samples are illuminated, yet -multiple scattering occur and events are thus taking place in the last -two samples. -``` - -## Input parameters - -Parameters in **boldface** are required; the others are optional. - -| Name | Unit | Description | Default | -|------|------|-------------|---------| -| stick_displacement | m | height displacement of sample stick | 0 | -| transmission_picture | 1 | if 1, a transmission image of the entire cryostat is made instead of a scattering experiment | 0 | - -## Links - -- [Source code](Demonstration.instr) for `Demonstration.instr`. - ---- - -*Generated for mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/examples/Union_demos/External_component/External_component.md b/mcstas-comps/examples/Union_demos/External_component/External_component.md deleted file mode 100644 index 99b074f65..000000000 --- a/mcstas-comps/examples/Union_demos/External_component/External_component.md +++ /dev/null @@ -1,35 +0,0 @@ -# The `External_component` Instrument - -*McStas: Union example: External_component* - -## Identification - -- **Site:** Union_demos -- **Author:** Mads Bertelsen -- **Origin:** University of Copenhagen -- **Date:** September 2015 - -## Description - -```text -Example showing the use of the "number_of_activations" parameter to include -an external component into an ensamle of Union components - -Example: stick_displacement=0 Detector: detector_I=189.144 -``` - -## Input parameters - -Parameters in **boldface** are required; the others are optional. - -| Name | Unit | Description | Default | -|------|------|-------------|---------| -| stick_displacement | m | height displacement of sample stick | 0 | - -## Links - -- [Source code](External_component.instr) for `External_component.instr`. - ---- - -*Generated for mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/examples/Union_demos/Laue_camera/Laue_camera.md b/mcstas-comps/examples/Union_demos/Laue_camera/Laue_camera.md deleted file mode 100644 index 4bd7607bc..000000000 --- a/mcstas-comps/examples/Union_demos/Laue_camera/Laue_camera.md +++ /dev/null @@ -1,45 +0,0 @@ -# The `Laue_camera` Instrument - -*McStas: Union example: Laue camera* - -## Identification - -- **Site:** Union_demos -- **Author:** Mads Bertelsen -- **Origin:** University of Copenhagen -- **Date:** September 2015 - -## Description - -```text -Laue camera using Union components for the sample -``` - -## Input parameters - -Parameters in **boldface** are required; the others are optional. - -| Name | Unit | Description | Default | -|------|------|-------------|---------| -| delta_d_d | | Lattice spacing variation in sample | 1e-4 | -| mosaic | arcmin | Sample mosaicity | 5 | -| lam0 | AA | Source mean wavelength | 7 | -| dlam | AA | Source wavelength spread | 5 | -| radius | m | Sample radius | 0.01 | -| height | m | Sample height | 0.01 | -| x_rotation_geometry | deg | Rotates union geometry component around x | 0 | -| y_rotation_geometry | deg | Rotates union geometry component around y | 0 | -| x_rotation_geometry_ref | deg | Rotates reference component around x | 0 | -| y_rotation_geometry_ref | deg | Rotates reference component around y | 0 | -| x_rotation_process | deg | Rotates crystal process (crystal orientation), x | 0 | -| y_rotation_process | deg | Rotates crystal process (crystal orientation), y | 0 | -| z_rotation_process | deg | Rotates crystal process (crystal orientation), z | 0 | -| geometry_interact | | p_interact of Union sample | 0 | - -## Links - -- [Source code](Laue_camera.instr) for `Laue_camera.instr`. - ---- - -*Generated for mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/examples/Union_demos/Manual_example/Manual_example.md b/mcstas-comps/examples/Union_demos/Manual_example/Manual_example.md deleted file mode 100644 index 8856c9165..000000000 --- a/mcstas-comps/examples/Union_demos/Manual_example/Manual_example.md +++ /dev/null @@ -1,33 +0,0 @@ -# The `Manual_example` Instrument - -*McStas: Union example from Union project manual* - -## Identification - -- **Site:** Union_demos -- **Author:** Mads Bertelsen -- **Origin:** University of Copenhagen -- **Date:** September 2015 - -## Description - -```text -Example on using Union components from the Union project manual - -Example: Detector: Banana_monitor_I=3.823e-05 -``` - -## Input parameters - -Parameters in **boldface** are required; the others are optional. - -| Name | Unit | Description | Default | -|------|------|-------------|---------| - -## Links - -- [Source code](Manual_example.instr) for `Manual_example.instr`. - ---- - -*Generated for mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/examples/Union_demos/Sample_picture_replica/Sample_picture_replica.md b/mcstas-comps/examples/Union_demos/Sample_picture_replica/Sample_picture_replica.md deleted file mode 100644 index 06f3bd12b..000000000 --- a/mcstas-comps/examples/Union_demos/Sample_picture_replica/Sample_picture_replica.md +++ /dev/null @@ -1,33 +0,0 @@ -# The `Sample_picture_replica` Instrument - -*McStas: Union demo: Reconstruction of a sample holder from picture.* - -## Identification - -- **Site:** Union_demos -- **Author:** Mads Bertelsen -- **Origin:** University of Copenhagen -- **Date:** September 2015 - -## Description - -```text -Reconstruction of a sample holder from picture. -All arms are 30 cm below the actual center point in order to avoid arms -in the mcdisplay picture. -``` - -## Input parameters - -Parameters in **boldface** are required; the others are optional. - -| Name | Unit | Description | Default | -|------|------|-------------|---------| - -## Links - -- [Source code](Sample_picture_replica.instr) for `Sample_picture_replica.instr`. - ---- - -*Generated for mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/examples/Union_demos/Tagging_demo/Tagging_demo.md b/mcstas-comps/examples/Union_demos/Tagging_demo/Tagging_demo.md deleted file mode 100644 index e1fdd329d..000000000 --- a/mcstas-comps/examples/Union_demos/Tagging_demo/Tagging_demo.md +++ /dev/null @@ -1,44 +0,0 @@ -# The `Tagging_demo` Instrument - -*McStas: Union demo: How to use tagging* - -## Identification - -- **Site:** Union_demos -- **Author:** Mads Bertelsen -- **Origin:** Johns Hopkins University, Baltimore -- **Date:** May 2016 - -## Description - -```text -Powder in Al can - -Example: Detector: Banana_monitor_I=9.84391e-09 -``` - -## Input parameters - -Parameters in **boldface** are required; the others are optional. - -| Name | Unit | Description | Default | -|------|------|-------------|---------| -| material_data_file | string | Name of data file for powder sample | "Cu.laz" | -| E0 | meV | Source mean energy | 100 | -| dE | meV | Source energy spread | 2 | -| sample_radius | m | Sample radius | 0.01 | -| sample_height | m | Sample height | 0.01 | -| pack | 1 | Packing factor, 1 is full density | 1 | -| sigma_inc | barns | Incoherent cross section for powder sample | 2.2 | -| sigma_abs | barns | Absorption cross section for powder sample | 15.12 | -| Vc | AA | Unit cell volume for powder sample | 47.22 | -| geometry_interact | 1 | Fraction of beam to interact with geometry | 0.5 | -| incoherent_fraction | 1 | Fraction of scattered events that select the powder process | 0.2 | - -## Links - -- [Source code](Tagging_demo.instr) for `Tagging_demo.instr`. - ---- - -*Generated for mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/examples/Union_demos/Time_of_flight/Time_of_flight.md b/mcstas-comps/examples/Union_demos/Time_of_flight/Time_of_flight.md deleted file mode 100644 index 13019920d..000000000 --- a/mcstas-comps/examples/Union_demos/Time_of_flight/Time_of_flight.md +++ /dev/null @@ -1,34 +0,0 @@ -# The `Time_of_flight` Instrument - -*McStas: Simple test instrument for sample component.* - -## Identification - -- **Site:** Union_demos -- **Author:** Mads Bertelsen -- **Origin:** University of Copenhagen -- **Date:** September 2015 - -## Description - -```text -simple test instrument for sample component. - -Example: stick_displacement=0 Detector: banana_detector_tof_I=566.295 -``` - -## Input parameters - -Parameters in **boldface** are required; the others are optional. - -| Name | Unit | Description | Default | -|------|------|-------------|---------| -| stick_displacement | m | Displacement of sample stick | 0 | - -## Links - -- [Source code](Time_of_flight.instr) for `Time_of_flight.instr`. - ---- - -*Generated for mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/examples/Union_sample_environments/SE_usage_example/SE_usage_example.md b/mcstas-comps/examples/Union_sample_environments/SE_usage_example/SE_usage_example.md deleted file mode 100644 index 93320f917..000000000 --- a/mcstas-comps/examples/Union_sample_environments/SE_usage_example/SE_usage_example.md +++ /dev/null @@ -1,34 +0,0 @@ -# The `SE_usage_example` Instrument - -*McStas: Sample in cryostat included from other instrument file* - -## Identification - -- **Site:** Union_sample_environments -- **Author:** Mads Bertelsen -- **Origin:** ESS DMSC -- **Date:** July 2024 - -## Description - -```text -This instrument demonstrates how to include a sample environment -from another instrument file and add a sample to the Union system. -See the cryostat_example.instr file for details on the used sample -environment. -``` - -## Input parameters - -Parameters in **boldface** are required; the others are optional. - -| Name | Unit | Description | Default | -|------|------|-------------|---------| - -## Links - -- [Source code](SE_usage_example.instr) for `SE_usage_example.instr`. - ---- - -*Generated for mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/examples/Union_sample_environments/cryostat_example/cryostat_example.md b/mcstas-comps/examples/Union_sample_environments/cryostat_example/cryostat_example.md deleted file mode 100644 index 4867101b4..000000000 --- a/mcstas-comps/examples/Union_sample_environments/cryostat_example/cryostat_example.md +++ /dev/null @@ -1,40 +0,0 @@ -# The `Cryostat_example` Instrument - -*McStas: Cryostat model made with Union components that can be included in other instruments* - -## Identification - -- **Site:** Union_sample_environments -- **Author:** Mads Bertelsen -- **Origin:** ESS DMSC -- **Date:** July 2024 - -## Description - -```text -Model of a cryostat made using Union components that can be included in another -instrument or executed on its own. Several components are marked with the -removable keyword, meaning these are not included when this instrument is included -in another McStas instrument. This includes the source, but also the Union components -init, master and stop, which the instrument including this sample environment will need -to supply. This is done such that a sample can easily be added. -Only a simple model of Al is used for this cryostat, and it has been named Al_cryostat -to avoid conflicting with existing models of Al in the instrument file that includes this -sample environment. -``` - -## Input parameters - -Parameters in **boldface** are required; the others are optional. - -| Name | Unit | Description | Default | -|------|------|-------------|---------| -| stick_displacement | m | height displacement of sample stick | 0 | - -## Links - -- [Source code](cryostat_example.instr) for `cryostat_example.instr`. - ---- - -*Generated for mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/examples/Union_validation/Incoherent_validation/Incoherent_validation.md b/mcstas-comps/examples/Union_validation/Incoherent_validation/Incoherent_validation.md deleted file mode 100644 index ca6eb1e04..000000000 --- a/mcstas-comps/examples/Union_validation/Incoherent_validation/Incoherent_validation.md +++ /dev/null @@ -1,39 +0,0 @@ -# The `Incoherent_validation` Instrument - -*McStas: Validation of Union components against incoherent scattering component* - -## Identification - -- **Site:** Union_validation -- **Author:** Mads Bertelsen -- **Origin:** Johns Hopkins University, Baltimore -- **Date:** May 2016 - -## Description - -```text -Validation of Union components against incoherent scattering component -``` - -## Input parameters - -Parameters in **boldface** are required; the others are optional. - -| Name | Unit | Description | Default | -|------|------|-------------|---------| -| comp_select | | 1: Union components, 2: Incoherent | 1 | -| sample_radius | m | Radius of sample | 0.01 | -| sample_height | m | Height of sample | 0.01 | -| pack | | Packing factor | 1 | -| sigma_inc_vanadium | barns | Incoherent cross-section | 5.08 | -| sigma_abs_vanadium | barns | Absorption cross-section | 5.08 | -| Vc_vanadium | AA^3 | Unit cell volume | 13.827 | -| geometry_interact | | p_interact for the Union sample | 0.5 | - -## Links - -- [Source code](Incoherent_validation.instr) for `Incoherent_validation.instr`. - ---- - -*Generated for mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/examples/Union_validation/Mirror_validation/Mirror_validation.md b/mcstas-comps/examples/Union_validation/Mirror_validation/Mirror_validation.md deleted file mode 100644 index 56e277f97..000000000 --- a/mcstas-comps/examples/Union_validation/Mirror_validation/Mirror_validation.md +++ /dev/null @@ -1,49 +0,0 @@ -# The `Mirror_validation` Instrument - -*McStas: Comparison of Mirror component and Union version* - -## Identification - -- **Site:** ESS -- **Author:** Mads Bertelsen (mads.bertelsen@ess.eu) -- **Origin:** ESS -- **Date:** October 2025 - -## Description - -```text -Comparison of Mirror component and a similar system made with Union components -though with a key difference that a substrate is simulated which results in two -effects: At large angles where no reflection occur, there will be some intensity -from the scattering in the substrate. At very small angles, the reflectivity can -exceed the R0 of the mirror coating, as the ray can be reflected by the Ni -substrate. NCrystal is used to simulate the Ni substrate. -The instrument includes a detector that ignores scattered rays, which should -produce identical results for large angles, though there can still be a tiny -discrepancy at small angles especially if R0 of the mirror coating is lowered. - -Example: mcrun Mirror_validation.instr angle=0.7 -``` - -## Input parameters - -Parameters in **boldface** are required; the others are optional. - -| Name | Unit | Description | Default | -|------|------|-------------|---------| -| angle | deg | Rotation of sample | 0.4 | -| ref_component | 1 | 0 to use Union components, 1 for reference Mirror component | 0 | -| R0_value | 1 | Low-angle reflectivity | 0.99 | -| m_value | 1 | m-value of material | 3 | -| Qc_value | AA-1 | Critical scattering vector | 0.0219 | -| alpha_value | AA | Slope of reflectivity | 6.07 | -| W_value | AA-1 | Width of supermirror cut-off | 0.003 | - -## Links - -- [Source code](Mirror_validation.instr) for `Mirror_validation.instr`. -- A reference/HTML link for more information - ---- - -*Generated for mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/examples/Union_validation/Powder_validation/Powder_validation.md b/mcstas-comps/examples/Union_validation/Powder_validation/Powder_validation.md deleted file mode 100644 index 89f99cd44..000000000 --- a/mcstas-comps/examples/Union_validation/Powder_validation/Powder_validation.md +++ /dev/null @@ -1,45 +0,0 @@ -# The `Powder_validation` Instrument - -*McStas: Validation of Union powder against standard PowderN component.* - -## Identification - -- **Site:** Union_validation -- **Author:** Mads Bertelsen -- **Origin:** Johns Hopkins University, Baltimore -- **Date:** May 2016 - -## Description - -```text -Validation of Union powder against standard PowderN component. -``` - -## Input parameters - -Parameters in **boldface** are required; the others are optional. - -| Name | Unit | Description | Default | -|------|------|-------------|---------| -| comp_select | 1 | 1=Union components, 2=PowderN | 1 | -| material_data_file | string | Powder sample definition | "Al.laz" | -| E0 | meV | Source mean energy | 100 | -| dE | meV | Source energy spread | 2 | -| sample_radius | m | Sample radius | 0.01 | -| sample_height | m | Sample height | 0.01 | -| pack | | Sample packing factor | 1 | -| sigma_inc | barns | Sample incoherent cross-section | 0.0328 | -| sigma_abs | barns | Sample absorption cross-section | 0.924 | -| Vc | AA | Sample unit cell volume | 66.4 | -| geometry_interact | | p_interact for the sample | 0.5 | -| incoherent_fraction | | Fraction of statistics assigned for incoherent scattering | 0.2 | -| div | deg | Source divergence (angular w and h) | 1.5 | -| d_phi | deg | Restriction of Debye-Scherrer cones around scattering plane 0=full illumination | 30 | - -## Links - -- [Source code](Powder_validation.instr) for `Powder_validation.instr`. - ---- - -*Generated for mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/examples/Union_validation/Single_crystal_validation/Single_crystal_validation.md b/mcstas-comps/examples/Union_validation/Single_crystal_validation/Single_crystal_validation.md deleted file mode 100644 index 6a8575be2..000000000 --- a/mcstas-comps/examples/Union_validation/Single_crystal_validation/Single_crystal_validation.md +++ /dev/null @@ -1,53 +0,0 @@ -# The `Single_crystal_validation` Instrument - -*McStas: Validation of Union single crystal against standard single_crystal.* - -## Identification - -- **Site:** Union_validation -- **Author:** Mads Bertelsen -- **Origin:** Johns Hopkins University, Baltimore -- **Date:** May 2016 - -## Description - -```text -Validation of Union single crystal against standard single_crystal. -``` - -## Input parameters - -Parameters in **boldface** are required; the others are optional. - -| Name | Unit | Description | Default | -|------|------|-------------|---------| -| comp_select | 1 | 1: Union components, 2: Single crystal | 1 | -| material_data_file | string | Sample material defintion | "YBaCuO.lau" | -| sigma_inc | barns | Sample incoherent cross-section | 2.105 | -| my_absorption_union | m^-1 | Sample mass-absorption coefficient | 8.55 | -| sigma_abs_sc | banrs | Sample absorption cross-section | 0 | -| delta_d_d | | Sample latttice spacing variation | 1e-4 | -| mosaic | arcmin | Sample mosaicity | 5 | -| unit_cell_volume | AA | Sample unit cell volume | 173.28 | -| lam0 | AA | Source mean wavelength | 7 | -| dlam | AA | Source wavelength spread | 5 | -| xwidth | m | Sample x-dimension | 0.01 | -| yheight | m | Sample y-dimension | 0.01 | -| zdepth | m | Sample z-dimension | 0.01 | -| x_rotation_geometry | deg | Rotates union geometry component around x | 0 | -| y_rotation_geometry | deg | Rotates union geometry component around y | 0 | -| x_rotation_geometry_ref | deg | Rotates reference component around x | 0 | -| y_rotation_geometry_ref | deg | Rotates reference component around y | 0 | -| x_rotation_process | deg | Rotates crystal process (crystal orientation), x | 0 | -| y_rotation_process | deg | Rotates crystal process (crystal orientation), y | 0 | -| geometry_interact | deg | Rotates crystal process (crystal orientation), z | 0 | -| PG | | Sample PG-mode | 0 | -| powder | | Sample powder-mode | 0 | - -## Links - -- [Source code](Single_crystal_validation.instr) for `Single_crystal_validation.instr`. - ---- - -*Generated for mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/examples/elearning/Radiography_absorbing_edge/Radiography_absorbing_edge.md b/mcstas-comps/examples/elearning/Radiography_absorbing_edge/Radiography_absorbing_edge.md deleted file mode 100644 index 779bea2ba..000000000 --- a/mcstas-comps/examples/elearning/Radiography_absorbing_edge/Radiography_absorbing_edge.md +++ /dev/null @@ -1,42 +0,0 @@ -# The `Radiography_absorbing_edge` Instrument - -*McStas: Instrument to study radiographic imaging of an absobing edge sample used for "Spacial resolution in neutron imaging" Moodle quiz in the Virtual Neutrons for Teaching project -http://vnt.nmi3.org/moodle/mod/quiz/view.php?id=56* - -## Identification - -- **Site:** elearning -- **Author:** Linda Udby and Peter Willendrup -- **Origin:** University of Copenhagen -- **Date:** July 4th, 2014 - -## Description - -```text -Instrument to study radiographic imaging of an absobing edge sample used for "Spacial resolution in neutron imaging" Moodle quiz in the Virtual Neutrons for Teaching project -http://vnt.nmi3.org/moodle/mod/quiz/view.php?id=56 - -Example: mcrun Radiography_absorbing_edge.instr -n5e8 l=0.2 -d EdgeImaging -``` - -## Input parameters - -Parameters in **boldface** are required; the others are optional. - -| Name | Unit | Description | Default | -|------|------|-------------|---------| -| D | m | Diameter of pinhole before sample | 0.01 | -| L | m | Distance between pinhole and sample | 5 | -| l | m | Distance between sample and detector | 0.10 | -| sigma_abs | barns | Absorption cross-section of the sample | 5.08 | -| Vc | AA^3 | Unit cell volume in the sample | 13.827 | -| sample_z | | | 0.01 | - -## Links - -- [Source code](Radiography_absorbing_edge.instr) for `Radiography_absorbing_edge.instr`. -- http://vnt.nmi3.org/mcstas-web - ---- - -*Generated for mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/examples/elearning/Reflectometer/Reflectometer.md b/mcstas-comps/examples/elearning/Reflectometer/Reflectometer.md deleted file mode 100644 index c6ab79333..000000000 --- a/mcstas-comps/examples/elearning/Reflectometer/Reflectometer.md +++ /dev/null @@ -1,55 +0,0 @@ -# The `Reflectometer` Instrument - -*McStas: Simple reflectometer with two slits, a sample (either none, mirror or multilayer), -and a detector. For use in the OMIC summer school 2012.* - -## Identification - -- **Site:** elearning -- **Author:** Pia Jensen (bozack@bozack.dk) -- **Origin:** Niels Bohr Instute, University of Copenhagen -- **Date:** 13.08.2012 - -## Description - -```text -This simple reflectometer consists of a source (using the standard PSI parameters -for three Maxwellian distributions), on which the user can control the bandwidth -by simply choosing a minumum and maximum value. Two slits handle the divergence -distribution on the sample. The sample itself can either be an empty spot, a simple -mirror, or a multilayer. A simple PSD detector is used for detecting the scattered -beam. The scattering is in the horizontal plane. - -Example: mcrun reflectometer.instr -``` - -## Input parameters - -Parameters in **boldface** are required; the others are optional. - -| Name | Unit | Description | Default | -|------|------|-------------|---------| -| lambda_min | AA | Minimum wavelength from source | 5.3 | -| lambda_max | AA | Maximum wavelength from source | 5.45 | -| slittranslation | m | Translation of slit (horizontal) | 0 | -| sampletranslation | m | Sample translation (horizontal) | 0 | -| slitwidth | m | Width of slit pinholes | 0.001 | -| slitheight | m | Height of slit pinholes | 0.002 | -| dist_source2slit | m | Distance between source and first slit | 1 | -| dist_slit2slit | m | Distance between slits | 3.2 | -| dist_slit2sample | m | Distance between second slit and sample | 0.18 | -| dist_sample2detector | m | Distance between sample and detector | 2 | -| sampletype | 1 | Sample type: 0 none, 1 mirror, 2+ multilayer | 1 | -| samplesize | m | Side-length of the (quadratic) sample plate | 0.15 | -| substratethickness | m | Thickness of the substrate | 0.003 | -| MR_Qc | AA | Critical Q-vector length of mirror sample | 0.15 | -| sampleangle | deg | Rotation angle of sample (theta) | 2.5 | -| detectorangle | deg | Rotation angle of detector (2 theta) | 5 | - -## Links - -- [Source code](Reflectometer.instr) for `Reflectometer.instr`. - ---- - -*Generated for mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/examples/elearning/SANSsimple/SANSsimple.md b/mcstas-comps/examples/elearning/SANSsimple/SANSsimple.md deleted file mode 100644 index 98b30dd55..000000000 --- a/mcstas-comps/examples/elearning/SANSsimple/SANSsimple.md +++ /dev/null @@ -1,48 +0,0 @@ -# The `SANS2_liposomes` Instrument - -*McStas: SANSsimple from e-neutrons.org* - -## Identification - -- **Site:** elearning -- **Author:** Linda -- **Origin:** Copenhagen -- **Date:** 05.09.10 - -## Description - -```text -Instrument longer description (type, elements, usage...) - -Example: mcrun SANSsimple.instr -``` - -## Input parameters - -Parameters in **boldface** are required; the others are optional. - -| Name | Unit | Description | Default | -|------|------|-------------|---------| -| pinhole_rad | m | radius of the collimating pinholes | 0.004 | -| LC | m | length of the collimator - distance between pinholes | 3 | -| LD | m | distance between the last pinhole slit and detector | 3 | -| Lambda | AA | Average wavelength traced from source | 6 | -| DLambda | AA | Wavelength band +/- traced from source | 0.6 | -| R | AA | radius of the hard, monodisperse spheres in the sample | 400 | -| dR | AA | Normal variance of Radius | 0 | -| dbilayer | AA | Thickness of spherical shell, only relevant when SAMPLE==2 | 35 | -| PHI | 1 | Volumefraction of the hard, monodisperse spheres in the sample | 1e-2 | -| Delta_Rho | fm/AA^3 | Volume specific scattering length density contrast of the hard, monodisperse spheres in the sample as compared to the solution | 0.6 | -| Qmax | AA^-1 | Maximum scattering vector allowed by geometry to hit the detector area | 0.3 | -| BEAMSTOP | 0/1 | If set, the beamstop is inserted in front of the detector in order to block the transmitted beam | 1 | -| SAMPLE | 0/1/2 | When SAMPLE==0, no sample is used, SAMPLE==1 sample is composed of hard spheres, if SAMPLE==2 sample is composed ofspherical shells. | 1 | -| Sigma_a | barn | Absorption crossection of the sample | 0 | - -## Links - -- [Source code](SANSsimple.instr) for `SANSsimple.instr`. -- A reference/HTML link for more information - ---- - -*Generated for mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/examples/elearning/SANSsimpleSpheres/SANSsimpleSpheres.md b/mcstas-comps/examples/elearning/SANSsimpleSpheres/SANSsimpleSpheres.md deleted file mode 100644 index 0ac0140cf..000000000 --- a/mcstas-comps/examples/elearning/SANSsimpleSpheres/SANSsimpleSpheres.md +++ /dev/null @@ -1,46 +0,0 @@ -# The `SANSsimpleSpheres` Instrument - -*McStas: SANS_simple from e-neutrons.org, including polydisperse hard spheres.* - -## Identification - -- **Site:** elearning -- **Author:** Linda Udby (udby@nbi.dk) -- **Origin:** Niels Bohr Institute -- **Date:** 20.09.2016 - -## Description - -```text -Instrument longer description (type, elements, usage...) -This simple SANS instrument is used for the SANS simulation quiz on th e-learning platform www.e-neutrons.org - -Example: mcrun SANSsimple.instr Lambda=10 DLambda=0 -``` - -## Input parameters - -Parameters in **boldface** are required; the others are optional. - -| Name | Unit | Description | Default | -|------|------|-------------|---------| -| pinhole_rad | m | radius of the collimating pinholes. Also used to optimise the sample size. | 0.004 | -| LC | m | length of the collimator - distance between pinholes | 3 | -| LD | m | distance between the last pinhole slit and detector | 3 | -| Lambda | Angs | Average wavelength traced from source | 6 | -| DLambda | Angs | Wavelength band +/- traced from source | 0.001 | -| R | m | average radius of the monodisperse spheres in the sample | 400 | -| dR | AA | Normal variance of the radius of spheres in the sample. If zero the sample is monodisperse. | 0 | -| PHI | 1 | Volumefraction of the hard spheres in the sample | 1e-2 | -| Delta_Rho | fm/Angs^3 | Volume specific scattering length density contrast of the hard, monodisperse spheres in the sample as compared to the solution | 0.6 | -| BEAMSTOP | 0/1 | If set, the beamstop is inserted in front of the detector in order to block the transmitted beam | 1 | -| SAMPLE | 0/1 | If set, a sample of spheres or spherical shells is inserted | 1 | - -## Links - -- [Source code](SANSsimpleSpheres.instr) for `SANSsimpleSpheres.instr`. -- https://sim.e-neutrons.org/instrument/intro-ns/SANSsimple - ---- - -*Generated for mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/examples/elearning/SimplePowderDiffractometer/SimplePowderDiffractometer.md b/mcstas-comps/examples/elearning/SimplePowderDiffractometer/SimplePowderDiffractometer.md deleted file mode 100644 index 00d70deb4..000000000 --- a/mcstas-comps/examples/elearning/SimplePowderDiffractometer/SimplePowderDiffractometer.md +++ /dev/null @@ -1,41 +0,0 @@ -# The `SimplePowderDIffractometer` Instrument - -*McStas: SimplePowderDIffractometer from e-neutrons.org: A simple monochromatic powder diffractometer with variable bandwidth, aluminium sample container with powder sample (default nickel powder).* - -## Identification - -- **Site:** elearning -- **Author:** Linda Udby -- **Origin:** Your institution -- **Date:** 26/02/2015 - -## Description - -```text -A simple monochromatic powder diffractometer with variable bandwidth, collimation, aluminium sample container and powder sample. -The sample container (Al can) is optional. -A banana detector records scattering agles [20,100] - -Example: mcrun SimplePowderDIffractometer.instr coll=40, container=1 -``` - -## Input parameters - -Parameters in **boldface** are required; the others are optional. - -| Name | Unit | Description | Default | -|------|------|-------------|---------| -| lambda0 | AA | The mean value of incoming wavelegths (Gaussian distribution) | 1 | -| dlambda | AA | Gaussian sigma of incoming wavelength distribution | 0.005 | -| coll | arcmin | horizontal collimation | 120 | -| container | 1 | When >0 a 2mm thick Al pressed powder can is inserted around the sample | 0 | -| sample | 1 | 0=Ni, 1=Fe, 2=SiO2, 3=C_diamond, otherwise empty | 0 | - -## Links - -- [Source code](SimplePowderDiffractometer.instr) for `SimplePowderDiffractometer.instr`. -- http://vnt.nmi3.org/mcstas-web - ---- - -*Generated for mcstas 3.99.99.* \ No newline at end of file From 4fd76344551719cc14379292e4cb30e6a279550a Mon Sep 17 00:00:00 2001 From: Peter Willendrup Date: Wed, 22 Apr 2026 13:31:15 +0200 Subject: [PATCH 33/43] Prepare for incoming README.md's that will include instr-named md's with link --- .../Test_Pol_Tabled/{Test_Pol_Tabled.instr => Test_Pol_Tabled.md} | 0 1 file changed, 0 insertions(+), 0 deletions(-) rename mcstas-comps/examples/Tests_polarization/Test_Pol_Tabled/{Test_Pol_Tabled.instr => Test_Pol_Tabled.md} (100%) diff --git a/mcstas-comps/examples/Tests_polarization/Test_Pol_Tabled/Test_Pol_Tabled.instr b/mcstas-comps/examples/Tests_polarization/Test_Pol_Tabled/Test_Pol_Tabled.md similarity index 100% rename from mcstas-comps/examples/Tests_polarization/Test_Pol_Tabled/Test_Pol_Tabled.instr rename to mcstas-comps/examples/Tests_polarization/Test_Pol_Tabled/Test_Pol_Tabled.md From ff6d039132d3e16904b5c54995d39296c2b1f389 Mon Sep 17 00:00:00 2001 From: Peter Willendrup Date: Wed, 22 Apr 2026 13:35:07 +0200 Subject: [PATCH 34/43] Add README.md's per instrument --- mcstas-comps/examples/BNL/BNL_H8/README.md | 39 +++++ .../examples/BNL/BNL_H8_simple/README.md | 39 +++++ .../examples/BNL/h8_test_legacy/README.md | 45 ++++++ .../examples/DTU/Test_FZP_simple/README.md | 36 +++++ mcstas-comps/examples/DTU/Vin_test/README.md | 34 ++++ mcstas-comps/examples/DTU/Vout_test/README.md | 34 ++++ .../examples/ESS/ESS_BEER_MCPL/README.md | 83 ++++++++++ .../examples/ESS/ESS_IN5_reprate/README.md | 81 ++++++++++ .../ESS/ESS_Testbeamline_HZB_V20/README.md | 60 +++++++ .../ESS_butterfly_Guide_curved_test/README.md | 53 ++++++ .../ESS/ESS_butterfly_MCPL_test/README.md | 56 +++++++ .../examples/ESS/ESS_butterfly_test/README.md | 47 ++++++ .../README.md | 50 ++++++ .../ESS/ESS_butterfly_tfocus_test/README.md | 50 ++++++ .../examples/ESS/ESS_mcpl2hist/README.md | 42 +++++ .../FZ_Juelich/FZJ_BenchmarkSfin2/README.md | 55 +++++++ .../FZ_Juelich/FZJ_KWS2_Lens/README.md | 43 +++++ .../FZJ_SANS_KWS2_AnySample/README.md | 40 +++++ mcstas-comps/examples/HZB/HZB_FLEX/README.md | 42 +++++ mcstas-comps/examples/HZB/HZB_NEAT/README.md | 57 +++++++ .../examples/HighNESS/WOFSANS/README.md | 57 +++++++ mcstas-comps/examples/ILL/ILL_BRISP/README.md | 95 +++++++++++ mcstas-comps/examples/ILL/ILL_D2B/README.md | 75 +++++++++ .../examples/ILL/ILL_D2B_noenv/README.md | 75 +++++++++ mcstas-comps/examples/ILL/ILL_D4/README.md | 52 ++++++ .../examples/ILL/ILL_H10_IN8/README.md | 85 ++++++++++ mcstas-comps/examples/ILL/ILL_H113/README.md | 37 +++++ .../examples/ILL/ILL_H13_IN20/README.md | 84 ++++++++++ mcstas-comps/examples/ILL/ILL_H142/README.md | 38 +++++ .../examples/ILL/ILL_H142_D33/README.md | 49 ++++++ .../examples/ILL/ILL_H142_IN12/README.md | 52 ++++++ .../examples/ILL/ILL_H142_simple/README.md | 38 +++++ .../examples/ILL/ILL_H143_LADI/README.md | 61 +++++++ mcstas-comps/examples/ILL/ILL_H15/README.md | 37 +++++ .../examples/ILL/ILL_H15_D11/README.md | 59 +++++++ .../examples/ILL/ILL_H15_IN6/README.md | 69 ++++++++ .../examples/ILL/ILL_H15_SAM/README.md | 72 +++++++++ mcstas-comps/examples/ILL/ILL_H16/README.md | 35 ++++ .../examples/ILL/ILL_H16_IN5/README.md | 38 +++++ mcstas-comps/examples/ILL/ILL_H22/README.md | 36 +++++ .../examples/ILL/ILL_H22_D1A/README.md | 65 ++++++++ .../examples/ILL/ILL_H22_D1A_noenv/README.md | 65 ++++++++ .../examples/ILL/ILL_H22_D1B/README.md | 75 +++++++++ .../examples/ILL/ILL_H22_D1B_noenv/README.md | 75 +++++++++ .../examples/ILL/ILL_H22_VIVALDI/README.md | 50 ++++++ mcstas-comps/examples/ILL/ILL_H24/README.md | 36 +++++ mcstas-comps/examples/ILL/ILL_H25/README.md | 36 +++++ .../examples/ILL/ILL_H25_IN22/README.md | 57 +++++++ mcstas-comps/examples/ILL/ILL_H5/README.md | 51 ++++++ .../examples/ILL/ILL_H512_D22/README.md | 41 +++++ mcstas-comps/examples/ILL/ILL_H53/README.md | 36 +++++ .../examples/ILL/ILL_H53_D16/README.md | 54 +++++++ .../examples/ILL/ILL_H53_IN14/README.md | 72 +++++++++ .../examples/ILL/ILL_H5_new/README.md | 76 +++++++++ .../examples/ILL/ILL_H8_IN1/README.md | 88 ++++++++++ mcstas-comps/examples/ILL/ILL_IN13/README.md | 93 +++++++++++ mcstas-comps/examples/ILL/ILL_IN4/README.md | 94 +++++++++++ mcstas-comps/examples/ILL/ILL_IN5/README.md | 47 ++++++ .../examples/ILL/ILL_IN5_Spots/README.md | 53 ++++++ mcstas-comps/examples/ILL/ILL_IN6/README.md | 81 ++++++++++ .../examples/ILL/ILL_Lagrange/README.md | 57 +++++++ mcstas-comps/examples/ILL/ILL_SALSA/README.md | 64 ++++++++ .../examples/ISIS/ISIS_CRISP/README.md | 44 +++++ mcstas-comps/examples/ISIS/ISIS_GEM/README.md | 44 +++++ mcstas-comps/examples/ISIS/ISIS_HET/README.md | 40 +++++ .../examples/ISIS/ISIS_IMAT/README.md | 48 ++++++ mcstas-comps/examples/ISIS/ISIS_LET/README.md | 44 +++++ .../examples/ISIS/ISIS_MERLIN/README.md | 49 ++++++ .../examples/ISIS/ISIS_OSIRIS/README.md | 46 ++++++ .../examples/ISIS/ISIS_Prisma2/README.md | 51 ++++++ .../examples/ISIS/ISIS_SANS2d/README.md | 55 +++++++ .../ISIS/ISIS_TOSCA_preupgrade/README.md | 50 ++++++ .../ISIS/ISIS_TS1_Brilliance/README.md | 37 +++++ .../ISIS/ISIS_TS2_Brilliance/README.md | 37 +++++ .../examples/ISIS/ISIS_test/README.md | 35 ++++ .../examples/ISIS/ViewModISIStest/README.md | 36 +++++ mcstas-comps/examples/LLB/LLB_6T2/README.md | 45 ++++++ .../Mantid/ILL_H16_IN5_Mantid/README.md | 57 +++++++ .../examples/Mantid/ILL_H16_Mantid/README.md | 38 +++++ .../examples/Mantid/ILL_IN5_Mantid/README.md | 48 ++++++ .../Mantid/ISIS_SANS2d_Mantid/README.md | 56 +++++++ .../ISIS_TOSCA_preupgrade_Mantid/README.md | 56 +++++++ .../examples/Mantid/SNS_ARCS_Mantid/README.md | 54 +++++++ .../examples/Mantid/Tools_ONION/README.md | 45 ++++++ .../Mantid/templateSANS2_Mantid/README.md | 40 +++++ .../Mantid/templateSANS_Mantid/README.md | 46 ++++++ .../Mantid/templateSasView_Mantid/README.md | 61 +++++++ .../README.md | 35 ++++ .../NCrystal/NCrystal_example/README.md | 51 ++++++ .../NCrystal/Union_NCrystal_example/README.md | 36 +++++ .../Union_NCrystal_mix_example/README.md | 37 +++++ .../examples/Necsa/SAFARI_MPISI/README.md | 65 ++++++++ .../examples/Necsa/SAFARI_PITSI/README.md | 62 +++++++ mcstas-comps/examples/PSI/PSI_DMC/README.md | 49 ++++++ .../examples/PSI/PSI_DMC_simple/README.md | 48 ++++++ mcstas-comps/examples/PSI/PSI_Focus/README.md | 36 +++++ .../examples/PSI/PSI_source/README.md | 48 ++++++ mcstas-comps/examples/PSI/RITA-II/README.md | 153 ++++++++++++++++++ mcstas-comps/examples/Risoe/TAS1_C1/README.md | 44 +++++ .../examples/Risoe/TAS1_C1_Tilt/README.md | 45 ++++++ .../examples/Risoe/TAS1_Diff_Powder/README.md | 50 ++++++ .../examples/Risoe/TAS1_Diff_Slit/README.md | 49 ++++++ .../examples/Risoe/TAS1_Diff_Vana/README.md | 50 ++++++ .../examples/Risoe/TAS1_Powder/README.md | 49 ++++++ .../examples/Risoe/TAS1_Vana/README.md | 49 ++++++ .../SINE2020/McStas_Isotropic_Sqw/README.md | 62 +++++++ .../SINE2020/McStas_PowderN/README.md | 59 +++++++ .../SINE2020/McStas_Single_crystal/README.md | 59 +++++++ .../README.md | 35 ++++ .../Granroth_SNS_decoupled_poisoned/README.md | 35 ++++ .../Mezei_SNS_decoupled_poisoned/README.md | 36 +++++ mcstas-comps/examples/SNS/SNS_ARCS/README.md | 54 +++++++ mcstas-comps/examples/SNS/SNS_BASIS/README.md | 72 +++++++++ .../examples/SNS/SNS_analytic_test/README.md | 37 +++++ mcstas-comps/examples/SNS/SNS_test/README.md | 37 +++++ mcstas-comps/examples/TRIGA/RTP_DIF/README.md | 39 +++++ .../examples/TRIGA/RTP_Laue/README.md | 39 +++++ .../TRIGA/RTP_NeutronRadiography/README.md | 38 +++++ .../examples/TRIGA/RTP_SANS/README.md | 52 ++++++ .../examples/TUDelft/SEMSANS_Delft/README.md | 49 ++++++ .../TUDelft/SEMSANS_instrument/README.md | 70 ++++++++ .../examples/TUDelft/SESANS_Delft/README.md | 48 ++++++ .../examples/Templates/BTsimple/README.md | 43 +++++ .../Templates/Demo_shape_primitives/README.md | 33 ++++ .../Demo_shape_primitives_simple/README.md | 33 ++++ .../Templates/TOF_Reflectometer/README.md | 48 ++++++ .../README.md | 60 +++++++ .../Templates/Test_SasView_guinier/README.md | 50 ++++++ .../examples/Templates/Tomography/README.md | 52 ++++++ .../examples/Templates/mini/README.md | 34 ++++ .../examples/Templates/template/README.md | 43 +++++ .../examples/Templates/templateDIFF/README.md | 66 ++++++++ .../examples/Templates/templateLaue/README.md | 34 ++++ .../examples/Templates/templateNMX/README.md | 36 +++++ .../Templates/templateNMX_TOF/README.md | 47 ++++++ .../examples/Templates/templateSANS/README.md | 39 +++++ .../Templates/templateSANS2/README.md | 40 +++++ .../Templates/templateSANS_MCPL/README.md | 42 +++++ .../Templates/templateSasView/README.md | 49 ++++++ .../examples/Templates/templateTAS/README.md | 137 ++++++++++++++++ .../examples/Templates/templateTOF/README.md | 54 +++++++ .../Templates/template_simple/README.md | 36 +++++ .../Tests_MCPL_etc/Test_MCPL_input/README.md | 37 +++++ .../Test_MCPL_input_once/README.md | 38 +++++ .../Tests_MCPL_etc/Test_MCPL_output/README.md | 33 ++++ .../Tests_RNG/Test_RNG_rand01/README.md | 41 +++++ .../Tests_RNG/Test_RNG_randnorm/README.md | 41 +++++ .../Tests_RNG/Test_RNG_randpm1/README.md | 41 +++++ .../Tests_RNG/Test_RNG_randtriangle/README.md | 41 +++++ .../Test_RNG_randvec_target_circle/README.md | 42 +++++ .../Test_RNG_randvec_target_rect/README.md | 42 +++++ .../README.md | 42 +++++ mcstas-comps/examples/Tests_grammar/README.md | 41 +++++ .../Tests_grammar/Test_GROUP/README.md | 34 ++++ .../Tests_grammar/Test_Jump_Iterate/README.md | 38 +++++ .../Unittest_ALLOW_BACKPROP/README.md | 40 +++++ .../Unittest_JUMP_ITERATE/README.md | 39 +++++ .../Unittest_JUMP_WHEN/README.md | 39 +++++ .../Tests_grammar/Unittest_SPLIT/README.md | 37 +++++ .../Unittest_SPLIT_sample/README.md | 38 +++++ .../Test_Cyl_monitors/README.md | 44 +++++ .../Tests_monitors/Test_Monitor_nD/README.md | 39 +++++ .../Test_TOF_PSDmonitor_toQ/README.md | 37 +++++ .../Tests_optics/Test_Al_windows/README.md | 46 ++++++ .../Test_Collimator_Radial/README.md | 37 +++++ .../Tests_optics/Test_Conics_pairs/README.md | 44 +++++ .../Tests_optics/Test_DiskChoppers/README.md | 36 +++++ .../Tests_optics/Test_DiskChoppers2/README.md | 42 +++++ .../Tests_optics/Test_Fermi/README.md | 47 ++++++ .../Test_FocalisationMirrors/README.md | 45 ++++++ .../Tests_optics/Test_Guides/README.md | 35 ++++ .../Tests_optics/Test_Guides_Curved/README.md | 36 +++++ .../examples/Tests_optics/Test_Lens/README.md | 36 +++++ .../Test_Monochromator_bent/README.md | 34 ++++ .../Test_Monochromator_bent_complex/README.md | 44 +++++ .../Test_Monochromators/README.md | 58 +++++++ .../examples/Tests_optics/Test_NMO/README.md | 56 +++++++ .../Tests_optics/Test_PSD_Detector/README.md | 35 ++++ .../Test_Pol_Bender_Vs_Guide_Curved/README.md | 38 +++++ .../Tests_optics/Test_Rotator/README.md | 38 +++++ .../Tests_optics/Test_Selectors/README.md | 37 +++++ .../Tests_optics/Test_Source_pulsed/README.md | 35 ++++ .../Tests_optics/Test_Sources/README.md | 42 +++++ .../Test_StatisticalChopper/README.md | 35 ++++ .../Test_Vertical_Bender/README.md | 41 +++++ .../Tests_optics/Test_filters/README.md | 43 +++++ .../Tests_optics/Test_focus/README.md | 43 +++++ .../examples/Tests_other/test_File/README.md | 34 ++++ .../He3_spin_filter/README.md | 42 +++++ .../Tests_polarization/SE_example/README.md | 46 ++++++ .../Tests_polarization/SE_example2/README.md | 46 ++++++ .../Supermirror_thin_substrate/README.md | 55 +++++++ .../Test_Magnetic_Constant/README.md | 39 +++++ .../Test_Magnetic_Majorana/README.md | 42 +++++ .../Test_Magnetic_Rotation/README.md | 38 +++++ .../Test_Pol_Bender/README.md | 39 +++++ .../Test_Pol_FieldBox/README.md | 36 +++++ .../Test_Pol_Guide_Vmirror/README.md | 34 ++++ .../Test_Pol_Guide_mirror/README.md | 35 ++++ .../Tests_polarization/Test_Pol_MSF/README.md | 34 ++++ .../Test_Pol_Mirror/README.md | 39 +++++ .../Test_Pol_SF_ideal/README.md | 37 +++++ .../Tests_polarization/Test_Pol_Set/README.md | 35 ++++ .../Test_Pol_TripleAxis/README.md | 44 +++++ .../Test_V_cavity_SNAG_double_side/README.md | 47 ++++++ .../Test_V_cavity_SNAG_single_side/README.md | 47 ++++++ .../Test_pol_ideal/README.md | 33 ++++ .../Tests_samples/GISANS_tests/README.md | 37 +++++ .../Samples_Incoherent/README.md | 77 +++++++++ .../Samples_Incoherent_off/README.md | 36 +++++ .../Samples_Isotropic_Sqw/README.md | 38 +++++ .../Tests_samples/Samples_Phonon/README.md | 42 +++++ .../Tests_samples/Samples_vanadium/README.md | 36 +++++ .../Tests_samples/Test_Incoherent/README.md | 34 ++++ .../Test_Incoherent_MS/README.md | 67 ++++++++ .../Test_Magnon_bcc_2D/README.md | 42 +++++ .../Test_Magnon_bcc_TAS/README.md | 44 +++++ .../Tests_samples/Test_PowderN/README.md | 41 +++++ .../Tests_samples/Test_PowderN_Res/README.md | 47 ++++++ .../Test_PowderN_concentric/README.md | 37 +++++ .../Tests_samples/Test_Powders/README.md | 41 +++++ .../Tests_samples/Test_SANS/README.md | 55 +++++++ .../examples/Tests_samples/Test_SX/README.md | 43 +++++ .../Test_Single_crystal_inelastic/README.md | 50 ++++++ .../examples/Tests_samples/Test_Sqw/README.md | 37 +++++ .../Tests_samples/Test_Sqw_monitor/README.md | 117 ++++++++++++++ .../Test_TOFRes_sample/README.md | 43 +++++ .../Tests_samples/Test_TasReso/README.md | 60 +++++++ .../Test_single_magnetic_crystal/README.md | 45 ++++++ .../Unittest_SANS_benchmark2/README.md | 40 +++++ .../Test_Source_custom/README.md | 33 ++++ .../Tests_sources/Test_Source_quasi/README.md | 33 ++++ .../Tests_union/Conditional_test/README.md | 33 ++++ .../External_component_test/README.md | 33 ++++ .../Tests_union/Geometry_test/README.md | 33 ++++ .../Tests_union/Hidden_Cylinder/README.md | 42 +++++ .../IncoherentPhonon_test/README.md | 57 +++++++ .../Tests_union/Logger_test/README.md | 34 ++++ .../Tests_union/Many_meshes/README.md | 41 +++++ .../Tests_union/Test_absorption/README.md | 34 ++++ .../Test_absorption_image/README.md | 34 ++++ .../examples/Tests_union/Test_box/README.md | 35 ++++ .../examples/Tests_union/Test_mask/README.md | 33 ++++ .../Tests_union/Test_powder/README.md | 32 ++++ .../Tests_union/Test_texture/README.md | 38 +++++ .../Unit_test_abs_logger_1D_space/README.md | 34 ++++ .../README.md | 32 ++++ .../README.md | 33 ++++ .../README.md | 40 +++++ .../Unit_test_abs_logger_2D_space/README.md | 32 ++++ .../Unit_test_abs_logger_event/README.md | 32 ++++ .../Unit_test_abs_logger_nD/README.md | 34 ++++ .../Unit_test_conditional_PSD/README.md | 34 ++++ .../Unit_test_conditional_standard/README.md | 34 ++++ .../Tests_union/Unit_test_logger_1D/README.md | 32 ++++ .../Unit_test_logger_2DQ/README.md | 32 ++++ .../Unit_test_logger_2D_kf/README.md | 32 ++++ .../Unit_test_logger_2D_kf_time/README.md | 32 ++++ .../Unit_test_logger_2D_space/README.md | 34 ++++ .../Unit_test_logger_2D_space_time/README.md | 32 ++++ .../Unit_test_logger_3D_space/README.md | 32 ++++ .../Unit_test_loggers_base/README.md | 32 ++++ .../examples/Tools/Histogrammer/README.md | 59 +++++++ .../examples/Tools/MCPL2Mantid_flat/README.md | 59 +++++++ .../examples/Tools/MCPL2hist/README.md | 45 ++++++ .../Tools/MCPL_filter_energy/README.md | 40 +++++ .../Tools/MCPL_filter_radius/README.md | 37 +++++ .../Tools/MCPL_filter_wavelength/README.md | 40 +++++ .../examples/Tools/vinput2mcpl/README.md | 37 +++++ .../examples/Union_demos/Bispectral/README.md | 38 +++++ .../Union_demos/Demonstration/README.md | 40 +++++ .../Union_demos/External_component/README.md | 36 +++++ .../Union_demos/Laue_camera/README.md | 46 ++++++ .../Union_demos/Manual_example/README.md | 34 ++++ .../Sample_picture_replica/README.md | 34 ++++ .../Union_demos/Tagging_demo/README.md | 45 ++++++ .../Union_demos/Time_of_flight/README.md | 35 ++++ .../SE_usage_example/README.md | 35 ++++ .../cryostat_example/README.md | 41 +++++ .../Incoherent_validation/README.md | 40 +++++ .../Mirror_validation/README.md | 50 ++++++ .../Powder_validation/README.md | 46 ++++++ .../Single_crystal_validation/README.md | 54 +++++++ .../Radiography_absorbing_edge/README.md | 43 +++++ .../elearning/Reflectometer/README.md | 56 +++++++ .../examples/elearning/SANSsimple/README.md | 49 ++++++ .../elearning/SANSsimpleSpheres/README.md | 47 ++++++ .../SimplePowderDiffractometer/README.md | 42 +++++ 288 files changed, 13365 insertions(+) create mode 100644 mcstas-comps/examples/BNL/BNL_H8/README.md create mode 100644 mcstas-comps/examples/BNL/BNL_H8_simple/README.md create mode 100644 mcstas-comps/examples/BNL/h8_test_legacy/README.md create mode 100644 mcstas-comps/examples/DTU/Test_FZP_simple/README.md create mode 100644 mcstas-comps/examples/DTU/Vin_test/README.md create mode 100644 mcstas-comps/examples/DTU/Vout_test/README.md create mode 100644 mcstas-comps/examples/ESS/ESS_BEER_MCPL/README.md create mode 100644 mcstas-comps/examples/ESS/ESS_IN5_reprate/README.md create mode 100644 mcstas-comps/examples/ESS/ESS_Testbeamline_HZB_V20/README.md create mode 100644 mcstas-comps/examples/ESS/ESS_butterfly_Guide_curved_test/README.md create mode 100644 mcstas-comps/examples/ESS/ESS_butterfly_MCPL_test/README.md create mode 100644 mcstas-comps/examples/ESS/ESS_butterfly_test/README.md create mode 100644 mcstas-comps/examples/ESS/ESS_butterfly_tfocus_NOFOCUS_test/README.md create mode 100644 mcstas-comps/examples/ESS/ESS_butterfly_tfocus_test/README.md create mode 100644 mcstas-comps/examples/ESS/ESS_mcpl2hist/README.md create mode 100644 mcstas-comps/examples/FZ_Juelich/FZJ_BenchmarkSfin2/README.md create mode 100644 mcstas-comps/examples/FZ_Juelich/FZJ_KWS2_Lens/README.md create mode 100644 mcstas-comps/examples/FZ_Juelich/FZJ_SANS_KWS2_AnySample/README.md create mode 100644 mcstas-comps/examples/HZB/HZB_FLEX/README.md create mode 100644 mcstas-comps/examples/HZB/HZB_NEAT/README.md create mode 100644 mcstas-comps/examples/HighNESS/WOFSANS/README.md create mode 100644 mcstas-comps/examples/ILL/ILL_BRISP/README.md create mode 100644 mcstas-comps/examples/ILL/ILL_D2B/README.md create mode 100644 mcstas-comps/examples/ILL/ILL_D2B_noenv/README.md create mode 100644 mcstas-comps/examples/ILL/ILL_D4/README.md create mode 100644 mcstas-comps/examples/ILL/ILL_H10_IN8/README.md create mode 100644 mcstas-comps/examples/ILL/ILL_H113/README.md create mode 100644 mcstas-comps/examples/ILL/ILL_H13_IN20/README.md create mode 100644 mcstas-comps/examples/ILL/ILL_H142/README.md create mode 100644 mcstas-comps/examples/ILL/ILL_H142_D33/README.md create mode 100644 mcstas-comps/examples/ILL/ILL_H142_IN12/README.md create mode 100644 mcstas-comps/examples/ILL/ILL_H142_simple/README.md create mode 100644 mcstas-comps/examples/ILL/ILL_H143_LADI/README.md create mode 100644 mcstas-comps/examples/ILL/ILL_H15/README.md create mode 100644 mcstas-comps/examples/ILL/ILL_H15_D11/README.md create mode 100644 mcstas-comps/examples/ILL/ILL_H15_IN6/README.md create mode 100644 mcstas-comps/examples/ILL/ILL_H15_SAM/README.md create mode 100644 mcstas-comps/examples/ILL/ILL_H16/README.md create mode 100644 mcstas-comps/examples/ILL/ILL_H16_IN5/README.md create mode 100644 mcstas-comps/examples/ILL/ILL_H22/README.md create mode 100644 mcstas-comps/examples/ILL/ILL_H22_D1A/README.md create mode 100644 mcstas-comps/examples/ILL/ILL_H22_D1A_noenv/README.md create mode 100644 mcstas-comps/examples/ILL/ILL_H22_D1B/README.md create mode 100644 mcstas-comps/examples/ILL/ILL_H22_D1B_noenv/README.md create mode 100644 mcstas-comps/examples/ILL/ILL_H22_VIVALDI/README.md create mode 100644 mcstas-comps/examples/ILL/ILL_H24/README.md create mode 100644 mcstas-comps/examples/ILL/ILL_H25/README.md create mode 100644 mcstas-comps/examples/ILL/ILL_H25_IN22/README.md create mode 100644 mcstas-comps/examples/ILL/ILL_H5/README.md create mode 100644 mcstas-comps/examples/ILL/ILL_H512_D22/README.md create mode 100644 mcstas-comps/examples/ILL/ILL_H53/README.md create mode 100644 mcstas-comps/examples/ILL/ILL_H53_D16/README.md create mode 100644 mcstas-comps/examples/ILL/ILL_H53_IN14/README.md create mode 100644 mcstas-comps/examples/ILL/ILL_H5_new/README.md create mode 100644 mcstas-comps/examples/ILL/ILL_H8_IN1/README.md create mode 100644 mcstas-comps/examples/ILL/ILL_IN13/README.md create mode 100644 mcstas-comps/examples/ILL/ILL_IN4/README.md create mode 100644 mcstas-comps/examples/ILL/ILL_IN5/README.md create mode 100644 mcstas-comps/examples/ILL/ILL_IN5_Spots/README.md create mode 100644 mcstas-comps/examples/ILL/ILL_IN6/README.md create mode 100644 mcstas-comps/examples/ILL/ILL_Lagrange/README.md create mode 100644 mcstas-comps/examples/ILL/ILL_SALSA/README.md create mode 100644 mcstas-comps/examples/ISIS/ISIS_CRISP/README.md create mode 100644 mcstas-comps/examples/ISIS/ISIS_GEM/README.md create mode 100644 mcstas-comps/examples/ISIS/ISIS_HET/README.md create mode 100644 mcstas-comps/examples/ISIS/ISIS_IMAT/README.md create mode 100644 mcstas-comps/examples/ISIS/ISIS_LET/README.md create mode 100644 mcstas-comps/examples/ISIS/ISIS_MERLIN/README.md create mode 100644 mcstas-comps/examples/ISIS/ISIS_OSIRIS/README.md create mode 100644 mcstas-comps/examples/ISIS/ISIS_Prisma2/README.md create mode 100644 mcstas-comps/examples/ISIS/ISIS_SANS2d/README.md create mode 100644 mcstas-comps/examples/ISIS/ISIS_TOSCA_preupgrade/README.md create mode 100644 mcstas-comps/examples/ISIS/ISIS_TS1_Brilliance/README.md create mode 100644 mcstas-comps/examples/ISIS/ISIS_TS2_Brilliance/README.md create mode 100644 mcstas-comps/examples/ISIS/ISIS_test/README.md create mode 100644 mcstas-comps/examples/ISIS/ViewModISIStest/README.md create mode 100644 mcstas-comps/examples/LLB/LLB_6T2/README.md create mode 100644 mcstas-comps/examples/Mantid/ILL_H16_IN5_Mantid/README.md create mode 100644 mcstas-comps/examples/Mantid/ILL_H16_Mantid/README.md create mode 100644 mcstas-comps/examples/Mantid/ILL_IN5_Mantid/README.md create mode 100644 mcstas-comps/examples/Mantid/ISIS_SANS2d_Mantid/README.md create mode 100644 mcstas-comps/examples/Mantid/ISIS_TOSCA_preupgrade_Mantid/README.md create mode 100644 mcstas-comps/examples/Mantid/SNS_ARCS_Mantid/README.md create mode 100644 mcstas-comps/examples/Mantid/Tools_ONION/README.md create mode 100644 mcstas-comps/examples/Mantid/templateSANS2_Mantid/README.md create mode 100644 mcstas-comps/examples/Mantid/templateSANS_Mantid/README.md create mode 100644 mcstas-comps/examples/Mantid/templateSasView_Mantid/README.md create mode 100644 mcstas-comps/examples/Mantid/templateVanadiumMultipleScat_Mantid/README.md create mode 100644 mcstas-comps/examples/NCrystal/NCrystal_example/README.md create mode 100644 mcstas-comps/examples/NCrystal/Union_NCrystal_example/README.md create mode 100644 mcstas-comps/examples/NCrystal/Union_NCrystal_mix_example/README.md create mode 100644 mcstas-comps/examples/Necsa/SAFARI_MPISI/README.md create mode 100644 mcstas-comps/examples/Necsa/SAFARI_PITSI/README.md create mode 100644 mcstas-comps/examples/PSI/PSI_DMC/README.md create mode 100644 mcstas-comps/examples/PSI/PSI_DMC_simple/README.md create mode 100644 mcstas-comps/examples/PSI/PSI_Focus/README.md create mode 100644 mcstas-comps/examples/PSI/PSI_source/README.md create mode 100644 mcstas-comps/examples/PSI/RITA-II/README.md create mode 100644 mcstas-comps/examples/Risoe/TAS1_C1/README.md create mode 100644 mcstas-comps/examples/Risoe/TAS1_C1_Tilt/README.md create mode 100644 mcstas-comps/examples/Risoe/TAS1_Diff_Powder/README.md create mode 100644 mcstas-comps/examples/Risoe/TAS1_Diff_Slit/README.md create mode 100644 mcstas-comps/examples/Risoe/TAS1_Diff_Vana/README.md create mode 100644 mcstas-comps/examples/Risoe/TAS1_Powder/README.md create mode 100644 mcstas-comps/examples/Risoe/TAS1_Vana/README.md create mode 100644 mcstas-comps/examples/SINE2020/McStas_Isotropic_Sqw/README.md create mode 100644 mcstas-comps/examples/SINE2020/McStas_PowderN/README.md create mode 100644 mcstas-comps/examples/SINE2020/McStas_Single_crystal/README.md create mode 100644 mcstas-comps/examples/SNS/Gallmeier_SNS_decoupled_poisoned/README.md create mode 100644 mcstas-comps/examples/SNS/Granroth_SNS_decoupled_poisoned/README.md create mode 100644 mcstas-comps/examples/SNS/Mezei_SNS_decoupled_poisoned/README.md create mode 100644 mcstas-comps/examples/SNS/SNS_ARCS/README.md create mode 100644 mcstas-comps/examples/SNS/SNS_BASIS/README.md create mode 100644 mcstas-comps/examples/SNS/SNS_analytic_test/README.md create mode 100644 mcstas-comps/examples/SNS/SNS_test/README.md create mode 100644 mcstas-comps/examples/TRIGA/RTP_DIF/README.md create mode 100644 mcstas-comps/examples/TRIGA/RTP_Laue/README.md create mode 100644 mcstas-comps/examples/TRIGA/RTP_NeutronRadiography/README.md create mode 100644 mcstas-comps/examples/TRIGA/RTP_SANS/README.md create mode 100644 mcstas-comps/examples/TUDelft/SEMSANS_Delft/README.md create mode 100644 mcstas-comps/examples/TUDelft/SEMSANS_instrument/README.md create mode 100644 mcstas-comps/examples/TUDelft/SESANS_Delft/README.md create mode 100644 mcstas-comps/examples/Templates/BTsimple/README.md create mode 100644 mcstas-comps/examples/Templates/Demo_shape_primitives/README.md create mode 100644 mcstas-comps/examples/Templates/Demo_shape_primitives_simple/README.md create mode 100644 mcstas-comps/examples/Templates/TOF_Reflectometer/README.md create mode 100644 mcstas-comps/examples/Templates/Test_SasView_bcc_paracrystal_aniso/README.md create mode 100644 mcstas-comps/examples/Templates/Test_SasView_guinier/README.md create mode 100644 mcstas-comps/examples/Templates/Tomography/README.md create mode 100644 mcstas-comps/examples/Templates/mini/README.md create mode 100644 mcstas-comps/examples/Templates/template/README.md create mode 100644 mcstas-comps/examples/Templates/templateDIFF/README.md create mode 100644 mcstas-comps/examples/Templates/templateLaue/README.md create mode 100644 mcstas-comps/examples/Templates/templateNMX/README.md create mode 100644 mcstas-comps/examples/Templates/templateNMX_TOF/README.md create mode 100644 mcstas-comps/examples/Templates/templateSANS/README.md create mode 100644 mcstas-comps/examples/Templates/templateSANS2/README.md create mode 100644 mcstas-comps/examples/Templates/templateSANS_MCPL/README.md create mode 100644 mcstas-comps/examples/Templates/templateSasView/README.md create mode 100644 mcstas-comps/examples/Templates/templateTAS/README.md create mode 100644 mcstas-comps/examples/Templates/templateTOF/README.md create mode 100644 mcstas-comps/examples/Templates/template_simple/README.md create mode 100644 mcstas-comps/examples/Tests_MCPL_etc/Test_MCPL_input/README.md create mode 100644 mcstas-comps/examples/Tests_MCPL_etc/Test_MCPL_input_once/README.md create mode 100644 mcstas-comps/examples/Tests_MCPL_etc/Test_MCPL_output/README.md create mode 100644 mcstas-comps/examples/Tests_RNG/Test_RNG_rand01/README.md create mode 100644 mcstas-comps/examples/Tests_RNG/Test_RNG_randnorm/README.md create mode 100644 mcstas-comps/examples/Tests_RNG/Test_RNG_randpm1/README.md create mode 100644 mcstas-comps/examples/Tests_RNG/Test_RNG_randtriangle/README.md create mode 100644 mcstas-comps/examples/Tests_RNG/Test_RNG_randvec_target_circle/README.md create mode 100644 mcstas-comps/examples/Tests_RNG/Test_RNG_randvec_target_rect/README.md create mode 100644 mcstas-comps/examples/Tests_RNG/Test_RNG_randvec_target_rect_angular/README.md create mode 100644 mcstas-comps/examples/Tests_grammar/README.md create mode 100644 mcstas-comps/examples/Tests_grammar/Test_GROUP/README.md create mode 100644 mcstas-comps/examples/Tests_grammar/Test_Jump_Iterate/README.md create mode 100644 mcstas-comps/examples/Tests_grammar/Unittest_ALLOW_BACKPROP/README.md create mode 100644 mcstas-comps/examples/Tests_grammar/Unittest_JUMP_ITERATE/README.md create mode 100644 mcstas-comps/examples/Tests_grammar/Unittest_JUMP_WHEN/README.md create mode 100644 mcstas-comps/examples/Tests_grammar/Unittest_SPLIT/README.md create mode 100644 mcstas-comps/examples/Tests_grammar/Unittest_SPLIT_sample/README.md create mode 100644 mcstas-comps/examples/Tests_monitors/Test_Cyl_monitors/README.md create mode 100644 mcstas-comps/examples/Tests_monitors/Test_Monitor_nD/README.md create mode 100644 mcstas-comps/examples/Tests_monitors/Test_TOF_PSDmonitor_toQ/README.md create mode 100644 mcstas-comps/examples/Tests_optics/Test_Al_windows/README.md create mode 100644 mcstas-comps/examples/Tests_optics/Test_Collimator_Radial/README.md create mode 100644 mcstas-comps/examples/Tests_optics/Test_Conics_pairs/README.md create mode 100644 mcstas-comps/examples/Tests_optics/Test_DiskChoppers/README.md create mode 100644 mcstas-comps/examples/Tests_optics/Test_DiskChoppers2/README.md create mode 100644 mcstas-comps/examples/Tests_optics/Test_Fermi/README.md create mode 100644 mcstas-comps/examples/Tests_optics/Test_FocalisationMirrors/README.md create mode 100644 mcstas-comps/examples/Tests_optics/Test_Guides/README.md create mode 100644 mcstas-comps/examples/Tests_optics/Test_Guides_Curved/README.md create mode 100644 mcstas-comps/examples/Tests_optics/Test_Lens/README.md create mode 100644 mcstas-comps/examples/Tests_optics/Test_Monochromator_bent/README.md create mode 100644 mcstas-comps/examples/Tests_optics/Test_Monochromator_bent_complex/README.md create mode 100644 mcstas-comps/examples/Tests_optics/Test_Monochromators/README.md create mode 100644 mcstas-comps/examples/Tests_optics/Test_NMO/README.md create mode 100644 mcstas-comps/examples/Tests_optics/Test_PSD_Detector/README.md create mode 100644 mcstas-comps/examples/Tests_optics/Test_Pol_Bender_Vs_Guide_Curved/README.md create mode 100644 mcstas-comps/examples/Tests_optics/Test_Rotator/README.md create mode 100644 mcstas-comps/examples/Tests_optics/Test_Selectors/README.md create mode 100644 mcstas-comps/examples/Tests_optics/Test_Source_pulsed/README.md create mode 100644 mcstas-comps/examples/Tests_optics/Test_Sources/README.md create mode 100644 mcstas-comps/examples/Tests_optics/Test_StatisticalChopper/README.md create mode 100644 mcstas-comps/examples/Tests_optics/Test_Vertical_Bender/README.md create mode 100644 mcstas-comps/examples/Tests_optics/Test_filters/README.md create mode 100644 mcstas-comps/examples/Tests_optics/Test_focus/README.md create mode 100644 mcstas-comps/examples/Tests_other/test_File/README.md create mode 100644 mcstas-comps/examples/Tests_polarization/He3_spin_filter/README.md create mode 100644 mcstas-comps/examples/Tests_polarization/SE_example/README.md create mode 100644 mcstas-comps/examples/Tests_polarization/SE_example2/README.md create mode 100644 mcstas-comps/examples/Tests_polarization/Supermirror_thin_substrate/README.md create mode 100644 mcstas-comps/examples/Tests_polarization/Test_Magnetic_Constant/README.md create mode 100644 mcstas-comps/examples/Tests_polarization/Test_Magnetic_Majorana/README.md create mode 100644 mcstas-comps/examples/Tests_polarization/Test_Magnetic_Rotation/README.md create mode 100644 mcstas-comps/examples/Tests_polarization/Test_Pol_Bender/README.md create mode 100644 mcstas-comps/examples/Tests_polarization/Test_Pol_FieldBox/README.md create mode 100644 mcstas-comps/examples/Tests_polarization/Test_Pol_Guide_Vmirror/README.md create mode 100644 mcstas-comps/examples/Tests_polarization/Test_Pol_Guide_mirror/README.md create mode 100644 mcstas-comps/examples/Tests_polarization/Test_Pol_MSF/README.md create mode 100644 mcstas-comps/examples/Tests_polarization/Test_Pol_Mirror/README.md create mode 100644 mcstas-comps/examples/Tests_polarization/Test_Pol_SF_ideal/README.md create mode 100644 mcstas-comps/examples/Tests_polarization/Test_Pol_Set/README.md create mode 100644 mcstas-comps/examples/Tests_polarization/Test_Pol_TripleAxis/README.md create mode 100644 mcstas-comps/examples/Tests_polarization/Test_V_cavity_SNAG_double_side/README.md create mode 100644 mcstas-comps/examples/Tests_polarization/Test_V_cavity_SNAG_single_side/README.md create mode 100644 mcstas-comps/examples/Tests_polarization/Test_pol_ideal/README.md create mode 100644 mcstas-comps/examples/Tests_samples/GISANS_tests/README.md create mode 100644 mcstas-comps/examples/Tests_samples/Samples_Incoherent/README.md create mode 100644 mcstas-comps/examples/Tests_samples/Samples_Incoherent_off/README.md create mode 100644 mcstas-comps/examples/Tests_samples/Samples_Isotropic_Sqw/README.md create mode 100644 mcstas-comps/examples/Tests_samples/Samples_Phonon/README.md create mode 100644 mcstas-comps/examples/Tests_samples/Samples_vanadium/README.md create mode 100644 mcstas-comps/examples/Tests_samples/Test_Incoherent/README.md create mode 100644 mcstas-comps/examples/Tests_samples/Test_Incoherent_MS/README.md create mode 100644 mcstas-comps/examples/Tests_samples/Test_Magnon_bcc_2D/README.md create mode 100644 mcstas-comps/examples/Tests_samples/Test_Magnon_bcc_TAS/README.md create mode 100644 mcstas-comps/examples/Tests_samples/Test_PowderN/README.md create mode 100644 mcstas-comps/examples/Tests_samples/Test_PowderN_Res/README.md create mode 100644 mcstas-comps/examples/Tests_samples/Test_PowderN_concentric/README.md create mode 100644 mcstas-comps/examples/Tests_samples/Test_Powders/README.md create mode 100644 mcstas-comps/examples/Tests_samples/Test_SANS/README.md create mode 100644 mcstas-comps/examples/Tests_samples/Test_SX/README.md create mode 100644 mcstas-comps/examples/Tests_samples/Test_Single_crystal_inelastic/README.md create mode 100644 mcstas-comps/examples/Tests_samples/Test_Sqw/README.md create mode 100644 mcstas-comps/examples/Tests_samples/Test_Sqw_monitor/README.md create mode 100644 mcstas-comps/examples/Tests_samples/Test_TOFRes_sample/README.md create mode 100644 mcstas-comps/examples/Tests_samples/Test_TasReso/README.md create mode 100644 mcstas-comps/examples/Tests_samples/Test_single_magnetic_crystal/README.md create mode 100644 mcstas-comps/examples/Tests_samples/Unittest_SANS_benchmark2/README.md create mode 100644 mcstas-comps/examples/Tests_sources/Test_Source_custom/README.md create mode 100644 mcstas-comps/examples/Tests_sources/Test_Source_quasi/README.md create mode 100644 mcstas-comps/examples/Tests_union/Conditional_test/README.md create mode 100644 mcstas-comps/examples/Tests_union/External_component_test/README.md create mode 100644 mcstas-comps/examples/Tests_union/Geometry_test/README.md create mode 100644 mcstas-comps/examples/Tests_union/Hidden_Cylinder/README.md create mode 100644 mcstas-comps/examples/Tests_union/IncoherentPhonon_test/README.md create mode 100644 mcstas-comps/examples/Tests_union/Logger_test/README.md create mode 100644 mcstas-comps/examples/Tests_union/Many_meshes/README.md create mode 100644 mcstas-comps/examples/Tests_union/Test_absorption/README.md create mode 100644 mcstas-comps/examples/Tests_union/Test_absorption_image/README.md create mode 100644 mcstas-comps/examples/Tests_union/Test_box/README.md create mode 100644 mcstas-comps/examples/Tests_union/Test_mask/README.md create mode 100644 mcstas-comps/examples/Tests_union/Test_powder/README.md create mode 100644 mcstas-comps/examples/Tests_union/Test_texture/README.md create mode 100644 mcstas-comps/examples/Tests_union/Unit_test_abs_logger_1D_space/README.md create mode 100644 mcstas-comps/examples/Tests_union/Unit_test_abs_logger_1D_space_event/README.md create mode 100644 mcstas-comps/examples/Tests_union/Unit_test_abs_logger_1D_space_tof/README.md create mode 100644 mcstas-comps/examples/Tests_union/Unit_test_abs_logger_1D_space_tof_to_lambda/README.md create mode 100644 mcstas-comps/examples/Tests_union/Unit_test_abs_logger_2D_space/README.md create mode 100644 mcstas-comps/examples/Tests_union/Unit_test_abs_logger_event/README.md create mode 100644 mcstas-comps/examples/Tests_union/Unit_test_abs_logger_nD/README.md create mode 100644 mcstas-comps/examples/Tests_union/Unit_test_conditional_PSD/README.md create mode 100644 mcstas-comps/examples/Tests_union/Unit_test_conditional_standard/README.md create mode 100644 mcstas-comps/examples/Tests_union/Unit_test_logger_1D/README.md create mode 100644 mcstas-comps/examples/Tests_union/Unit_test_logger_2DQ/README.md create mode 100644 mcstas-comps/examples/Tests_union/Unit_test_logger_2D_kf/README.md create mode 100644 mcstas-comps/examples/Tests_union/Unit_test_logger_2D_kf_time/README.md create mode 100644 mcstas-comps/examples/Tests_union/Unit_test_logger_2D_space/README.md create mode 100644 mcstas-comps/examples/Tests_union/Unit_test_logger_2D_space_time/README.md create mode 100644 mcstas-comps/examples/Tests_union/Unit_test_logger_3D_space/README.md create mode 100644 mcstas-comps/examples/Tests_union/Unit_test_loggers_base/README.md create mode 100644 mcstas-comps/examples/Tools/Histogrammer/README.md create mode 100644 mcstas-comps/examples/Tools/MCPL2Mantid_flat/README.md create mode 100644 mcstas-comps/examples/Tools/MCPL2hist/README.md create mode 100644 mcstas-comps/examples/Tools/MCPL_filter_energy/README.md create mode 100644 mcstas-comps/examples/Tools/MCPL_filter_radius/README.md create mode 100644 mcstas-comps/examples/Tools/MCPL_filter_wavelength/README.md create mode 100644 mcstas-comps/examples/Tools/vinput2mcpl/README.md create mode 100644 mcstas-comps/examples/Union_demos/Bispectral/README.md create mode 100644 mcstas-comps/examples/Union_demos/Demonstration/README.md create mode 100644 mcstas-comps/examples/Union_demos/External_component/README.md create mode 100644 mcstas-comps/examples/Union_demos/Laue_camera/README.md create mode 100644 mcstas-comps/examples/Union_demos/Manual_example/README.md create mode 100644 mcstas-comps/examples/Union_demos/Sample_picture_replica/README.md create mode 100644 mcstas-comps/examples/Union_demos/Tagging_demo/README.md create mode 100644 mcstas-comps/examples/Union_demos/Time_of_flight/README.md create mode 100644 mcstas-comps/examples/Union_sample_environments/SE_usage_example/README.md create mode 100644 mcstas-comps/examples/Union_sample_environments/cryostat_example/README.md create mode 100644 mcstas-comps/examples/Union_validation/Incoherent_validation/README.md create mode 100644 mcstas-comps/examples/Union_validation/Mirror_validation/README.md create mode 100644 mcstas-comps/examples/Union_validation/Powder_validation/README.md create mode 100644 mcstas-comps/examples/Union_validation/Single_crystal_validation/README.md create mode 100644 mcstas-comps/examples/elearning/Radiography_absorbing_edge/README.md create mode 100644 mcstas-comps/examples/elearning/Reflectometer/README.md create mode 100644 mcstas-comps/examples/elearning/SANSsimple/README.md create mode 100644 mcstas-comps/examples/elearning/SANSsimpleSpheres/README.md create mode 100644 mcstas-comps/examples/elearning/SimplePowderDiffractometer/README.md diff --git a/mcstas-comps/examples/BNL/BNL_H8/README.md b/mcstas-comps/examples/BNL/BNL_H8/README.md new file mode 100644 index 000000000..452e6de40 --- /dev/null +++ b/mcstas-comps/examples/BNL/BNL_H8/README.md @@ -0,0 +1,39 @@ +# The `BNL_H8` Instrument + +*McStas: The former thermal H8 triple-axis spectrometer from Brookhaven reactor* + +## Identification + +- **Site:** BNL +- **Author:** Emmanuel Farhi +- **Origin:** ILL (France) +- **Date:** 1st Feb 2001. + +## Description + +```text +This instrument is a simple model of the thermal H8 triple-axis spectrometer +from former Brookhaven reactor. It is directly illuminated by the moderator, +and has flat monochromator and analyzer. Sample is a vanadium cylinder. +Such an instrument was used for the Monte Carlo neutron simulation package +cross comparison related in paper "A Model Instrument for Monte Carlo Code +Comparisons", Neutron News 13 (No. 4), 24-29 (2002). +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| lambda | Angs | source energy | 2.36 | + +## Links + +- [Source code](BNL_H8.instr) for `BNL_H8.instr`. +- [Additional information](BNL_H8.instr.md) +- Neutron News 13 (No. 4), 24-29 (2002). + +--- + +*Generated for mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/examples/BNL/BNL_H8_simple/README.md b/mcstas-comps/examples/BNL/BNL_H8_simple/README.md new file mode 100644 index 000000000..7cbad8d48 --- /dev/null +++ b/mcstas-comps/examples/BNL/BNL_H8_simple/README.md @@ -0,0 +1,39 @@ +# The `BNL_H8_simple` Instrument + +*McStas: The former thermal H8 triple-axis spectrometer from Brookhaven reactor* + +## Identification + +- **Site:** BNL +- **Author:** Emmanuel Farhi +- **Origin:** ILL (France) +- **Date:** 1st Feb 2001. + +## Description + +```text +This instrument is a simple model of the thermal H8 triple-axis spectrometer +from former Brookhaven reactor. It is directly illuminated by the moderator, +and has flat monochromator and analyzer. Sample is a vanadium cylinder. +Such an instrument was used for the Monte Carlo neutron simulation package +cross comparison related in paper "A Model Instrument for Monte Carlo Code +Comparisons", Neutron News 13 (No. 4), 24-29 (2002). +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| lambda | Angs | source energy | 2.36 | + +## Links + +- [Source code](BNL_H8_simple.instr) for `BNL_H8_simple.instr`. +- [Additional information](BNL_H8_simple.instr.md) +- Neutron News 13 (No. 4), 24-29 (2002). + +--- + +*Generated for mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/examples/BNL/h8_test_legacy/README.md b/mcstas-comps/examples/BNL/h8_test_legacy/README.md new file mode 100644 index 000000000..8b00cfb56 --- /dev/null +++ b/mcstas-comps/examples/BNL/h8_test_legacy/README.md @@ -0,0 +1,45 @@ +# The `h8_test_legacy` Instrument + +*McStas: The former thermal H8 triple-axis spectrometer from Brookhaven reactor, 1.12c-comparable* + +## Identification + +- **Site:** BNL +- **Author:** Emmanuel Farhi +- **Origin:** ILL (France) +- **Date:** 1st Feb 2001. + +## Description + +```text +This instrument is a simple model of the thermal H8 triple-axis spectrometer +from former Brookhaven reactor. It is directly illuminated by the moderator, +and has flat monochromator and analyzer. Sample is a vanadium cylinder. +Such an instrument was used for the Monte Carlo neutron simulation package +cross comparison related in paper "A Model Instrument for Monte Carlo Code +Comparisons", Neutron News 13 (No. 4), 24-29 (2002). + +This version of the instrument does not use the SPLIT keyword and is comparable +to the version provided with McStas 1.12c. Has been added for benchmarking +purposes only. + +Example: mcrun h8_test_legacy.instr Lambda=2.36 +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| Lambda | Angs | source energy | 2.36 | + +## Links + +- [Source code](h8_test_legacy.instr) for `h8_test_legacy.instr`. +- [Additional information](h8_test_legacy.instr.md) +- Neutron News 13 (No. 4), 24-29 (2002). + +--- + +*Generated for mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/examples/DTU/Test_FZP_simple/README.md b/mcstas-comps/examples/DTU/Test_FZP_simple/README.md new file mode 100644 index 000000000..ab5bb7b7d --- /dev/null +++ b/mcstas-comps/examples/DTU/Test_FZP_simple/README.md @@ -0,0 +1,36 @@ +# The `Test_FZP_simple` Instrument + +*McStas: Simple test instrument for the FZP_simple component* + +## Identification + +- **Site:** DTU +- **Author:** Peter Willendrup (pkwi@fysik.dtu.dkl) +- **Origin:** DTU +- **Date:** March 2023 + +## Description + +```text +Simple test instrument for the FZP_simple component +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| lambda0 | AA | Centre of wavelength distribution | 10 | +| dlambda | AA | Width of wavelength distribution | 1e-1 | +| l1 | m | Distance source to FZP | 40 | + +## Links + +- [Source code](Test_FZP_simple.instr) for `Test_FZP_simple.instr`. +- [Additional information](Test_FZP_simple.instr.md) +- + +--- + +*Generated for mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/examples/DTU/Vin_test/README.md b/mcstas-comps/examples/DTU/Vin_test/README.md new file mode 100644 index 000000000..84fe39a7b --- /dev/null +++ b/mcstas-comps/examples/DTU/Vin_test/README.md @@ -0,0 +1,34 @@ +# The `Vin_test` Instrument + +*McStas: Simple test instrument for the Virtual_input component* + +## Identification + +- **Site:** DTU +- **Author:** Peter Willendrup (pkwi@fysik.dtu.dk) +- **Origin:** DTU Physics +- **Date:** September 2014 + +## Description + +```text +Simple test instrument for the Virtual_input component +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| Vinfile | string | Filename for Virtual_output-created event file | "Vout_text.dat" | + +## Links + +- [Source code](Vin_test.instr) for `Vin_test.instr`. +- [Additional information](Vin_test.instr.md) +- A reference/HTML link for more information + +--- + +*Generated for mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/examples/DTU/Vout_test/README.md b/mcstas-comps/examples/DTU/Vout_test/README.md new file mode 100644 index 000000000..f46aa48eb --- /dev/null +++ b/mcstas-comps/examples/DTU/Vout_test/README.md @@ -0,0 +1,34 @@ +# The `Vout_test` Instrument + +*McStas: Simple test instrument for the Virtual_output component* + +## Identification + +- **Site:** DTU +- **Author:** Peter Willendrup (pkwi@fysik.dtu.dk) +- **Origin:** DTU Physics +- **Date:** September 2014 + +## Description + +```text +Simple test instrument for the Virtual_output component +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| Voutfile | string | Output filename for vout file | "Vout_text.dat" | + +## Links + +- [Source code](Vout_test.instr) for `Vout_test.instr`. +- [Additional information](Vout_test.instr.md) +- A reference/HTML link for more information + +--- + +*Generated for mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/examples/ESS/ESS_BEER_MCPL/README.md b/mcstas-comps/examples/ESS/ESS_BEER_MCPL/README.md new file mode 100644 index 000000000..a3e5bba7c --- /dev/null +++ b/mcstas-comps/examples/ESS/ESS_BEER_MCPL/README.md @@ -0,0 +1,83 @@ +# The `ESS_BEER_MCPL` Instrument + +*McStas: Version: 1.1, 27/11/2018 +ToF Diffractometer BEER@ESS with MCPL input at the sample slit.* + +## Identification + +- **Site:** ESS +- **Author:** Jan Saroun, saroun@ujf.cas.cz +- **Origin:** NPI Rez +- **Date:** June 2017 + +## Description + +```text +Secondary part of the ToF diffractometer BEER@ESS. It takes MCPL file at the input as the source +of primary beam in front of the sample. +Results: +1) xy, divergence, lambda and ToF_lambda plots of the primary beam (monitors the MCPL content) +2) projections of the sampling volume defined by the primary slit and secondary radial collimator +3) Intensity vs. dhkl plot, using NPI_tof_dhkl_detector.comp +4) 2D plot (ToF,2theta), using NPI_tof_theta_monitor + +Modulation mode: +If modul=1, a modulation mode of BEER is assumed: the primary beam is modulated by a chopper placed close to the source. +(set the lc distance appropriately). The NPI_tof_dhkl_detector.comp then performs data reduction in event mode, using +the given modulation parameters: lam0, mod_frq, mod_twidth and a table with primary dhkl estimates (dhkl.dat should be +in the current directory). As a result, the diffractogram with recombined peaks is produced, together with a 2D map +of estimated valid, empty and overlap regions on the ToF-2theta diagram. + +If module=0, modulation parameters are ignored and the NPI_tof_dhkl_detector.comp performs a standard event based +data reduction producing a diffractogram on the basis of given nominal values of lam0 and distances. + +(See NPI_tof_dhkl_detector.comp for more details) + +NOTE: some instrument parameters are hard coded and have to be edited in the INITIALIZE and RUN sections. + +To use, please copy the relevant mcpl files from your $MCSTAS/data folder to the curring working folder + +Example 1: +Simulation in medium resolution mode with pulse shaping choppers, wavelength range centred at 2 AA - use: +ESS_BEER_MCPL input=BEER_MR.mcpl repetition=50 pwdfile=duplex.laz lc=6.65 lam0=2 dlam=1.8 omega=45 chi=90 colw=1 modul=0 mod_frq=2240 mod_twidth=0.0029 mod_shift=0 only_event=-1 pinc=0.1 ptra=0 strain=0 ustrain=0 +Detector: psdtof_I=276.842 + +Example 2: +Simulation in the modulation mode, using the modulation chopper MCB with 8 slits (4 deg wide) rotating at 280 Hz. Wavelength range centred at 2 AA - use: +ESS_BEER_MCPL input=BEER_MCB.mcpl repetition=50 pwdfile=duplex.laz lc=9.35 lam0=2 dlam=1.8 omega=45 chi=90 colw=1 modul=1 mod_frq=2240 mod_twidth=0.0029 mod_shift=0 only_event=-1 pinc=0.1 ptra=0 strain=0 ustrain=0 +Detector: psdtof_I=98.3885 +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| input | str | Input MCPL file | "BEER_MR.mcpl" | +| repetition | 1 | Number of loops through the MCPL file | 50 | +| pwdfile | str | Input sample file for PowderN.comp | "duplex.laz" | +| lc | m | distance of the pulse definition chopper | 6.65 | +| lam0 | AA | nominal wavelength (centre of the frame, determines the chopper phase) | 2.0 | +| dlam | AA | wavelength band width (only for filtering MCPL input and plot ranges) | 1.8 | +| omega | deg | sample orientation (y-axis) | 45 | +| chi | deg | sample orientation (z-axis) | 90 | +| colw | mm | collimator width (0.5, 1, 2, 3 or 4) | 1 | +| modul | 0\|1 | modulation mode switch | 0 | +| mod_frq | Hz | modulation frequency (chopper frequency x number of slits) | 2240 | +| mod_twidth | s | modulation frame width (should be ~> ESS pulse width) | 0.0029 | +| mod_shift | | assumed line shift introduced to NPI_tof_dhkl_detector (modulation mode only) | 0 | +| only_event | 1 | if > -1, filters out events with line_info.itype<>only_event after PowderN sample | -1 | +| pinc | | pinc value passed to PowderN.comp | 0.1 | +| ptra | | p_transmit value passed to PowderN.comp | 0.0 | +| strain | ppm | Macro-strain (peak shift) | 0 | +| ustrain | ppm | Micro-strain (peak broadening) | 0 | + +## Links + +- [Source code](ESS_BEER_MCPL.instr) for `ESS_BEER_MCPL.instr`. +- [Additional information](ESS_BEER_MCPL.instr.md) + +--- + +*Generated for mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/examples/ESS/ESS_IN5_reprate/README.md b/mcstas-comps/examples/ESS/ESS_IN5_reprate/README.md new file mode 100644 index 000000000..998d5c427 --- /dev/null +++ b/mcstas-comps/examples/ESS/ESS_IN5_reprate/README.md @@ -0,0 +1,81 @@ +# The `ESS_IN5_reprate` Instrument + +*McStas: An IN5 type (cold chopper) multi-frame spectrometer at ESS LPTS* + +## Identification + +- **Site:** ESS +- **Author:** Kim Lefmann (kim.lefmann@risoe.dk), Helmuth Schober, Feri Mezei +- **Origin:** ESS +- **Date:** September 20, 2006 + +## Description + +```text +McStas instrument for simulating IN5-TYPE (cold chopper) multi-frame spectrometer at ESS LPTS. +The sample is incoherent with an inelastic tunneling line. +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| Lmin | AA | Minimum wavelength emitted by the moderator | 4.9 | +| Lmax | AA | Maximum wavelength emitted by the moderator | 5.1 | +| lambda0 | AA | Target wavelength for the monochromating crystal | 5 | +| Pulse_width | s | Length of the long pulse. Default to 2 ms. | 2.857e-3 | +| Num_pulses | 1 | Number of pulses to simulate. Default 1. | 1 | +| GUI_start | m | Distance from moderator to guide start | 2.0 | +| FO1_DIST | m | Distance from moderator to FO1 chopper | 6 | +| L_ballistic_begin | m | Length of expanding ballistic section in the beginning of the guide | 19.5 | +| L_ballistic_end | m | Length of compressing ballistic section in the end of the guide | 17 | +| Length | m | Total length of spectrometer (moderator to F2) | 100 | +| SAMPLE_DIST | m | Distance from F2 to sample | 1.2 | +| DETECTOR_DIST | m | Length sample-detector | 4 | +| GUI_h | m | Height of guide opening at entry | 0.105 | +| GUI_w | m | Width of guide opening at entry | 0.1 | +| GUI_GAP | m | Gap between guides due to chopper hardware | 0.05 | +| H1 | m | Height of guide elements | 0.167 | +| W1 | m | Width of guide elements | 0.116 | +| H2 | m | Height of guide elements | 0.185 | +| W2 | m | Width of guide elements | 0.15 | +| H3 | m | Height of guide elements | 0.19 | +| W3 | m | Width of guide elements | 0.15 | +| H4 | m | Height of guide elements | 0.213 | +| W4 | m | Width of guide elements | 0.14 | +| H_chop | m | Height at F2 chopper position | 0.075 | +| W_chop | m | Width at F2 chopper position | 0.03 | +| H_end | m | Height of guide opening at exit | 0.042 | +| W_end | m | Width of guide opening at exit | 0.0215 | +| ALPHA | m | Parameter for supermirrors in guides, Swiss Neutronics best at 3.4 | 3.4 | +| M | 1 | Parameter for supermirrors in guides, Swiss Neutronics best at 4 | 3.5 | +| F_slow1 | Hz | Frequency of the FO1 chopper | 16.6667 | +| F_slow2 | Hz | Frequency of the FO2 chopper | 0 | +| F_fast1 | Hz | Frequency of the F1 chopper | 0 | +| F_fast2 | Hz | Frequency of the F2 chopper | 200 | +| N_fast | 1 | Number of symmetric openings in the fast F choppers | 1 | +| SLOW1_THETA | deg | Opening angle of the FO1 chopper | 120 | +| FO3 | 1 | Inverse frequency of FO3 chopper (if 1, same as F2; if 2, half of F2, etc.) | 1 | +| THETA_fast1 | deg | Opening angle of the F1 chopper | 180 | +| FAST_THETA | deg | Opening angle of the F2 chopper | 5 | +| Gamma | meV | Width of sample quasielastic scattering (0=elastic) | 0 | +| Etun | meV | Tunneling energy | 1 | +| V_HOLE | m | Radius of hole in V sample (must be smaller than the outer radius: 0.01) | 0 | +| FRAC_QUASIEL | 1 | Fraction of the sample that scatters quasielastically | 0 | +| FRAC_TUNNEL | | Fraction of the sample that scatters on the tunneling peaks | 0 | +| TT | deg | 2Theta (or a4) scattering angle | 50 | +| RES_DE | meV | Adjustable zoom for energy monitor at detector position | 0.5 | +| cold | | Fraction of neutrons emitted from the cold moderatorx | 0.95 | + +## Links + +- [Source code](ESS_IN5_reprate.instr) for `ESS_IN5_reprate.instr`. +- [Additional information](ESS_IN5_reprate.instr.md) +- The ESS-Rencurel website. +- The IN5@ILL Yellow Pages + +--- + +*Generated for mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/examples/ESS/ESS_Testbeamline_HZB_V20/README.md b/mcstas-comps/examples/ESS/ESS_Testbeamline_HZB_V20/README.md new file mode 100644 index 000000000..e85431d61 --- /dev/null +++ b/mcstas-comps/examples/ESS/ESS_Testbeamline_HZB_V20/README.md @@ -0,0 +1,60 @@ +# The `ESS_Testbeamline_HZB_V20` Instrument + +*McStas: McStas model of the ESS testbeamline V20 at HZB in Berlin* + +## Identification + +- **Site:** ESS +- **Author:** Ala'a Al-Falahat +- **Origin:** HZB +- **Date:** March 17, 2017 + +## Description + +```text +McStas model of the ESS testbeamline V20 at HZB in Berlin. Please note that not +all geometrical sizes, distances and parameters have been fully validated. +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| lambda_min | AA | Minimum wavelength emitted by the source | 1 | +| lambda_max | AA | Maximum wavelength emitted by the source | 15 | +| frequency | Hz | Frequency of the choppers | 14 | +| Choppers_WFM1_in | 1 | Flag to indicate if WFM1 is active | 1 | +| Choppers_WFM2_in | 1 | Flag to indicate if WFM2 is active | 1 | +| Choppers_FOC1_in | 1 | Flag to indicate if FOC1 is active | 1 | +| Choppers_FOC2_in | 1 | Flag to indicate if FOC2 is active | 1 | +| s1_x | m | slit 1 width | 0.05 | +| s1_y | m | slit 1 height | 0.1 | +| s2_x | m | slit 2 width | 0.02 | +| s2_y | m | slit 2 height | 0.04 | +| s3_x | m | slit 3 width | 0.0138 | +| s3_y | m | slit 3 height | 0.033 | +| Offset_deg_SC1 | deg | Phase source chopper disk 1 | 0 | +| Offset_deg_SC2 | deg | Phase source chopper disk 2 | 0 | +| Offset_deg_BC1 | deg | Phase bandwidth chopper disk 1 | -25 | +| Offset_deg_BC2 | deg | Phase bandwidth chopper disk 2 | 57 | +| Offset_deg_WFM1 | deg | Phase wavelength frame multiplication chopper disk 1 | 47.1 | +| Offset_deg_WFM2 | deg | Phase wavelength frame multiplication chopper disk 2 | 76.76 | +| Offset_deg_FOC1 | deg | Phase frame overlap chopper disk 1 | 62.4 | +| Offset_deg_FOC2 | deg | Phase frame overlap chopper disk 2 | 12.27 | +| Z | m | Distance between Wavelength frame multiplication chopper disks 0.1 - 0.5 | 0.28 | +| sp | m | sample position | 50.6 | +| npulses | 1 | Number of pulses to simulate | 1 | +| emulate_reactor_emmision | 1 | Flag to emulate all emission times from the reactor | 0 | + +## Links + +- [Source code](ESS_Testbeamline_HZB_V20.instr) for `ESS_Testbeamline_HZB_V20.instr`. +- [Additional information](ESS_Testbeamline_HZB_V20.instr.md) +- V20 page at the HZB website +- V20 info section at the ESS website + +--- + +*Generated for mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/examples/ESS/ESS_butterfly_Guide_curved_test/README.md b/mcstas-comps/examples/ESS/ESS_butterfly_Guide_curved_test/README.md new file mode 100644 index 000000000..4205918a3 --- /dev/null +++ b/mcstas-comps/examples/ESS/ESS_butterfly_Guide_curved_test/README.md @@ -0,0 +1,53 @@ +# The `ESS_butterfly_Guide_curved_test` Instrument + +*McStas: Test instrument for the updated BF1 butterfly moderator design* + +## Identification + +- **Site:** ESS +- **Author:** Peter Willendrup +- **Origin:** ESS +- **Date:** 2016-09-26 + +## Description + +```text +Test instrument for the updated BF1 butterfly moderator design. + +The below example gives a 50-50 (statistics-wise) cold/thermal beam at beamline N10. +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| sector | str | Defines the 'sector' of your instrument position. Valid values are "N","S","E" and "W" | "N" | +| beamline | 1 | Defines the 'beamline number' of your instrument position. Valid values are 1..10 or 1..11 depending on sector | 1 | +| Lmin | AA | Minimum wavelength simulated | 0.2 | +| Lmax | AA | Maximum wavelength simulated | 20 | +| c_performance | 1 | Cold brilliance scalar performance multiplicator c_performance > 0 | 1 | +| t_performance | 1 | Thermal brilliance scalar performance multiplicator t_performance > 0 | 1 | +| index | 1 | Target index for source focusing. Defaults to illuminate the "cold collimated" brilliance monitor, thereby suppressing "dist" | 25 | +| dist | m | Distance from origin to focusing rectangle; at (0,0,dist) - alternatively use target_index | 0 | +| cold | 1 | Defines the statistical fraction of events emitted from the cold part of the moderator | 1 | +| Yheight | m | Defines the moderator height. Valid values are 0.03 m and 0.06 m | 0.03 | +| delta | m | Parameter that allows to scan "collimator" position | 0 | +| thres | | Weight-threshold, neutrons with higher weight are absorbed | 0.003 | +| repeat | | Number of MCPL file repetitions | 1 | +| v_smear | 1 | When repeating events, make a Gaussian MC choice within v_smear*V around particle velocity V | 0.1 | +| pos_smear | m | When repeating events, make a flat MC choice of position within pos_smear around particle starting position | 0.01 | +| dir_smear | deg | When repeating events, make a Gaussian MC choice of direction within dir_smear around particle direction | 0.01 | +| n_pulses | 1 | Number of pulses to simulate | 1 | + +## Links + +- [Source code](ESS_butterfly_Guide_curved_test.instr) for `ESS_butterfly_Guide_curved_test.instr`. +- [Additional information](ESS_butterfly_Guide_curved_test.instr.md) +- +- Benchmarking website available at http://ess_butterfly.mcstas.org + +--- + +*Generated for mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/examples/ESS/ESS_butterfly_MCPL_test/README.md b/mcstas-comps/examples/ESS/ESS_butterfly_MCPL_test/README.md new file mode 100644 index 000000000..85bf28b42 --- /dev/null +++ b/mcstas-comps/examples/ESS/ESS_butterfly_MCPL_test/README.md @@ -0,0 +1,56 @@ +# The `ESS_butterfly_MCPL_test` Instrument + +*McStas: Test instrument for the updated BF1 butterfly moderator design using MCPL input* + +## Identification + +- **Site:** ESS +- **Author:** Peter Willendrup +- **Origin:** ESS +- **Date:** 2016-09-26 + +## Description + +```text +Test instrument for the updated BF1 butterfly moderator design using MCPL input files. + +The below example gives a 50-50 (statistics-wise) cold/thermal beam at beamline N10. +Example: sector=N beamline=10 cold=0.5 + +Assumes access to binary MCPL datasets in . named [sector][beamline].mcpl.gz, i.e. W8.mcpl.gz. +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| sector | str | Defines the 'sector' of your instrument position. Valid values are "N","S","E" and "W" | "N" | +| beamline | 1 | Defines the 'beamline number' of your instrument position. Valid values are 1..10 or 1..11 depending on sector | 1 | +| Lmin | AA | Minimum wavelength simulated | 0.2 | +| Lmax | AA | Maximum wavelength simulated | 20 | +| c_performance | 1 | Cold brilliance scalar performance multiplicator c_performance > 0 | 1 | +| t_performance | 1 | Thermal brilliance scalar performance multiplicator t_performance > 0 | 1 | +| index | 1 | Target index for source focusing. Defaults to illuminate the "cold collimated" brilliance monitor, thereby suppressing "dist" | 8 | +| dist | m | Distance from origin to focusing rectangle; at (0,0,dist) - alternatively use target_index | 0 | +| cold | 1 | Defines the statistical fraction of events emitted from the cold part of the moderator | 1 | +| Yheight | m | Defines the moderator height. Valid values are 0.03 m and 0.06 m | 0.03 | +| delta | m | Parameter that allows to scan "collimator" position | 0 | +| thres | | Weight-threshold, neutrons with higher weight are absorbed | 0.003 | +| filter | | | 0 | +| repeat | | Number of MCPL file repetitions | 1 | +| v_smear | 1 | When repeating events, make a Gaussian MC choice within v_smear*V around particle velocity V | 0.1 | +| pos_smear | m | When repeating events, make a flat MC choice of position within pos_smear around particle starting position | 0.01 | +| dir_smear | deg | When repeating events, make a Gaussian MC choice of direction within dir_smear around particle direction | 0.01 | + +## Links + +- [Source code](ESS_butterfly_MCPL_test.instr) for `ESS_butterfly_MCPL_test.instr`. +- [Additional information](ESS_butterfly_MCPL_test.instr.md) +- +- Benchmarking website available at http://ess_butterfly.mcstas.org + +--- + +*Generated for mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/examples/ESS/ESS_butterfly_test/README.md b/mcstas-comps/examples/ESS/ESS_butterfly_test/README.md new file mode 100644 index 000000000..d00ee8fb9 --- /dev/null +++ b/mcstas-comps/examples/ESS/ESS_butterfly_test/README.md @@ -0,0 +1,47 @@ +# The `ESS_butterfly_test` Instrument + +*McStas: Test instrument for the updated BF1 butterfly moderator design* + +## Identification + +- **Site:** ESS +- **Author:** Peter Willendrup +- **Origin:** ESS +- **Date:** 2016-08-24 + +## Description + +```text +Test instrument for the updated BF1 butterfly moderator design. + +The below example gives a 50-50 (statistics-wise) cold/thermal beam at beamline N10. +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| sector | str | Defines the 'sector' of your instrument position. Valid values are "N","S","E" and "W" | "N" | +| beamline | 1 | Defines the 'beamline number' of your instrument position. Valid values are 1..10 or 1..11 depending on sector | 1 | +| Lmin | AA | Minimum wavelength simulated | 0.2 | +| Lmax | AA | Maximum wavelength simulated | 20 | +| c_performance | 1 | Cold brilliance scalar performance multiplicator c_performance > 0 | 1 | +| t_performance | 1 | Thermal brilliance scalar performance multiplicator t_performance > 0 | 1 | +| index | 1 | Target index for source focusing. Defaults to illuminate the "cold collimated" brilliance monitor, thereby suppressing "dist" | 16 | +| dist | m | Distance from origin to focusing rectangle; at (0,0,dist) - alternatively use target_index | 0 | +| cold | 1 | Defines the statistical fraction of events emitted from the cold part of the moderator | 0.5 | +| Yheight | m | Defines the moderator height. Valid values are 0.03 m and 0.06 m | 0.03 | +| delta | m | Parameter that allows to scan "collimator" position | 0 | + +## Links + +- [Source code](ESS_butterfly_test.instr) for `ESS_butterfly_test.instr`. +- [Additional information](ESS_butterfly_test.instr.md) +- +- Benchmarking website available at http://ess_butterfly.mcstas.org + +--- + +*Generated for mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/examples/ESS/ESS_butterfly_tfocus_NOFOCUS_test/README.md b/mcstas-comps/examples/ESS/ESS_butterfly_tfocus_NOFOCUS_test/README.md new file mode 100644 index 000000000..cf172356d --- /dev/null +++ b/mcstas-comps/examples/ESS/ESS_butterfly_tfocus_NOFOCUS_test/README.md @@ -0,0 +1,50 @@ +# The `ESS_butterfly_tfocus_NOFOCUS_test` Instrument + +*McStas: Test instrument for the updated BF1 butterfly moderator design* + +## Identification + +- **Site:** ESS +- **Author:** Peter Willendrup +- **Origin:** ESS +- **Date:** 2016-08-24 + +## Description + +```text +Test instrument for the updated BF1 butterfly moderator design. + +The below example gives a 50-50 (statistics-wise) cold/thermal beam at beamline N10. +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| sector | str | Defines the 'sector' of your instrument position. Valid values are "N","S","E" and "W" | "N" | +| beamline | 1 | Defines the 'beamline number' of your instrument position. Valid values are 1..10 or 1..11 depending on sector | 1 | +| Lmin | AA | Minimum wavelength simulated | 0.2 | +| Lmax | AA | Maximum wavelength simulated | 20 | +| c_performance | 1 | Cold brilliance scalar performance multiplicator c_performance > 0 | 1 | +| t_performance | 1 | Thermal brilliance scalar performance multiplicator t_performance > 0 | 1 | +| index | 1 | Target index for source focusing. Defaults to illuminate the "cold collimated" brilliance monitor, thereby suppressing "dist" | 0 | +| dist | m | Distance from origin to focusing rectangle; at (0,0,dist) - alternatively use target_index | 100 | +| cold | 1 | Defines the statistical fraction of events emitted from the cold part of the moderator | 0.5 | +| Yheight | m | Defines the moderator height. Valid values are 0.03 m and 0.06 m | 0.03 | +| delta | m | Parameter that allows to scan "collimator" position | 0 | +| tfocus_dist | | | 10 | +| tfocus_time | | | 0.01 | +| tfocus_width | | | 0.001 | + +## Links + +- [Source code](ESS_butterfly_tfocus_NOFOCUS_test.instr) for `ESS_butterfly_tfocus_NOFOCUS_test.instr`. +- [Additional information](ESS_butterfly_tfocus_NOFOCUS_test.instr.md) +- +- Benchmarking website available at http://ess_butterfly.mcstas.org + +--- + +*Generated for mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/examples/ESS/ESS_butterfly_tfocus_test/README.md b/mcstas-comps/examples/ESS/ESS_butterfly_tfocus_test/README.md new file mode 100644 index 000000000..fb88fa5a3 --- /dev/null +++ b/mcstas-comps/examples/ESS/ESS_butterfly_tfocus_test/README.md @@ -0,0 +1,50 @@ +# The `ESS_butterfly_tfocus_test` Instrument + +*McStas: Test instrument for the updated BF1 butterfly moderator design* + +## Identification + +- **Site:** ESS +- **Author:** Peter Willendrup +- **Origin:** ESS +- **Date:** 2016-08-24 + +## Description + +```text +Test instrument for the updated BF1 butterfly moderator design. + +The below example gives a 50-50 (statistics-wise) cold/thermal beam at beamline N10. +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| sector | str | Defines the 'sector' of your instrument position. Valid values are "N","S","E" and "W" | "N" | +| beamline | 1 | Defines the 'beamline number' of your instrument position. Valid values are 1..10 or 1..11 depending on sector | 1 | +| Lmin | AA | Minimum wavelength simulated | 0.2 | +| Lmax | AA | Maximum wavelength simulated | 20 | +| c_performance | 1 | Cold brilliance scalar performance multiplicator c_performance > 0 | 1 | +| t_performance | 1 | Thermal brilliance scalar performance multiplicator t_performance > 0 | 1 | +| index | 1 | Target index for source focusing. Defaults to illuminate the "cold collimated" brilliance monitor, thereby suppressing "dist" | 0 | +| dist | m | Distance from origin to focusing rectangle; at (0,0,dist) - alternatively use target_index | 100 | +| cold | 1 | Defines the statistical fraction of events emitted from the cold part of the moderator | 0.5 | +| Yheight | m | Defines the moderator height. Valid values are 0.03 m and 0.06 m | 0.03 | +| delta | m | Parameter that allows to scan "collimator" position | 0 | +| tfocus_dist | | | 10 | +| tfocus_time | | | 0.01 | +| tfocus_width | | | 0.001 | + +## Links + +- [Source code](ESS_butterfly_tfocus_test.instr) for `ESS_butterfly_tfocus_test.instr`. +- [Additional information](ESS_butterfly_tfocus_test.instr.md) +- +- Benchmarking website available at http://ess_butterfly.mcstas.org + +--- + +*Generated for mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/examples/ESS/ESS_mcpl2hist/README.md b/mcstas-comps/examples/ESS/ESS_mcpl2hist/README.md new file mode 100644 index 000000000..464011f39 --- /dev/null +++ b/mcstas-comps/examples/ESS/ESS_mcpl2hist/README.md @@ -0,0 +1,42 @@ +# The `ESS_mcpl2hist` Instrument + +*McStas: Utility instrument that generates a set of histograms from an MCPL input file* + +## Identification + +- **Site:** ESS +- **Author:** Peter Willendrup +- **Origin:** ESS +- **Date:** 2016-12-02 + +## Description + +```text +Utility instrument that generates a set of histograms from an MCPL input file. + +Generates energy, wavelength, position, veloicty and time histograms via Monitor_nD. + +Assumes access to binary MCPL datasets in . named [sector][beamline].mcpl.gz, i.e. W8.mcpl.gz. +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| sector | str | Defines the 'sector' of your instrument position. Valid values are "N","S","E" and "W" | "N" | +| beamline | 1 | Defines the 'beamline number' of your instrument position. Valid values are 1..10 or 1..11 depending on sector | 1 | +| filter | 1 | Flag to define if the filtered or nonfiltered version of the MCPL file should be used. | 0 | +| thres | 1 | Weight threshold above which neutrons are absorbed | 0.003 | + +## Links + +- [Source code](ESS_mcpl2hist.instr) for `ESS_mcpl2hist.instr`. +- [Additional information](ESS_mcpl2hist.instr.md) +- +- Benchmarking website available at http://ess_butterfly.mcstas.org + +--- + +*Generated for mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/examples/FZ_Juelich/FZJ_BenchmarkSfin2/README.md b/mcstas-comps/examples/FZ_Juelich/FZJ_BenchmarkSfin2/README.md new file mode 100644 index 000000000..1c3a4a787 --- /dev/null +++ b/mcstas-comps/examples/FZ_Juelich/FZJ_BenchmarkSfin2/README.md @@ -0,0 +1,55 @@ +# The `FZJ_BenchmarkSfin2` Instrument + +*McStas: Test instrument for the H Frielinghaus SANS_benchmark2 component. + +The below test uses defaults of the instrument (SANS_benchmark2 modnum=11)* + +## Identification + +- **Site:** FZ_Juelich +- **Author:** Henrich Frielinghaus +- **Origin:** FZ Juelich +- **Date:** 2013 + +## Description + +```text + +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| lbdmin | | | 2.00 | +| lbdmax | | | 8.5 | +| NGbend | | | 0.053 | +| NGblen | | | 0.03 | +| Clen | | | 8.0 | +| SampD | | | 0.01 | +| bendL | | | 5.0 | +| bendR | | | 385.0 | +| bendM | | | 7.0 | +| bendiM | | | 7.0 | +| dfltM | | | 1.5 | +| vorPl | | for two cavities | 0.5 | +| PolLen | | for two cavities | 0.492 | +| PolTot | | for two cavities | 2.30 | +| MDOWN | | | 3.6 | +| Min | | | 1.5 | +| cnum | | Set to 0.0 for no polarizer as for benchmarking the normal SANS samples, to 2.0 for two cavities, keep default values as much as possible | 0.00 | +| ROT | | | 0.0 | +| modnum | | | 11.0 | +| sglscatt | | | 1.0 | +| incs | | | 0.0005 | + +## Links + +- [Source code](FZJ_BenchmarkSfin2.instr) for `FZJ_BenchmarkSfin2.instr`. +- [Additional information](FZJ_BenchmarkSfin2.instr.md) + +--- + +*Generated for mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/examples/FZ_Juelich/FZJ_KWS2_Lens/README.md b/mcstas-comps/examples/FZ_Juelich/FZJ_KWS2_Lens/README.md new file mode 100644 index 000000000..cc0c3ed01 --- /dev/null +++ b/mcstas-comps/examples/FZ_Juelich/FZJ_KWS2_Lens/README.md @@ -0,0 +1,43 @@ +# The `FZJ_KWS2_Lens` Instrument + +*McStas: FZ Juelich KWS2 SANS, serving as test instrument for the Lens_simple component.* + +## Identification + +- **Site:** FZ_Juelich +- **Author:** Henrich Frielinghaus +- **Origin:** FZ Juelich +- **Date:** June 2010 + +## Description + +```text +This instrument is a test instrument for the Lens_simple component. + +Notice effect of gravitation on the final beam. +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| lambda | AA | Mean wavelength of neutrons | 20.15 | +| dlambda | AA | Wavelength spread of neutrons (fwhm) | 2.015 | +| FLUX | 1 | Source flux normalization constant | 1e8 | +| NGblen | 1 | Defining source radius (is \sqrt(2)*NGblen) | 0.03 | +| Cblen | m | Dimension of rectangular guide | 0.005 | +| Clen | m | Distance source-guide | 20.0 | +| Dlen | m | Placement of final detector | 20.0 | +| Rlense | m | Radius of lens | 0.025 | + +## Links + +- [Source code](FZJ_KWS2_Lens.instr) for `FZJ_KWS2_Lens.instr`. +- [Additional information](FZJ_KWS2_Lens.instr.md) +- The Lens_simple component + +--- + +*Generated for mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/examples/FZ_Juelich/FZJ_SANS_KWS2_AnySample/README.md b/mcstas-comps/examples/FZ_Juelich/FZJ_SANS_KWS2_AnySample/README.md new file mode 100644 index 000000000..1c6674119 --- /dev/null +++ b/mcstas-comps/examples/FZ_Juelich/FZJ_SANS_KWS2_AnySample/README.md @@ -0,0 +1,40 @@ +# The `SANS_KWS2_AnySample` Instrument + +*McStas: KWS2 SANS instrument at FZ-Juelich. 2 detectors. 4 available sample models.* + +## Identification + +- **Site:** FZ_Juelich +- **Author:** Henrich Frielinghaus +- **Origin:** FZ-Juelich/FRJ-2/IFF/KWS-2 +- **Date:** Sept 2004 + +## Description + +```text +KWS2 SANS instrument at FZ-Juelich. Custom sample (None, Guinier, Debye or Any). +Sample is at 40 m from source. 2 detectors. +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| lambda | AA | Mean wavelength of neutrons | 7.0 | +| dlambda | AA | Wavelength spread of neutrons | 0.7 | +| FLUX | n/s/cm2/st | incoming neutron flux | 1e8 | +| NGblen | m | collimation width/height | 0.05 | +| sample | int | type of sample, as 0=None, 1='AnySample', 2='Debye' or 3='Guinier' | 0 | +| Clen | m | distance to collimation in 0-20. Sample is at 40 m from source | 10.0 | +| Dlen | m | distance from sample to detector | 10.0 | + +## Links + +- [Source code](FZJ_SANS_KWS2_AnySample.instr) for `FZJ_SANS_KWS2_AnySample.instr`. +- [Additional information](FZJ_SANS_KWS2_AnySample.instr.md) + +--- + +*Generated for mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/examples/HZB/HZB_FLEX/README.md b/mcstas-comps/examples/HZB/HZB_FLEX/README.md new file mode 100644 index 000000000..076e6ef88 --- /dev/null +++ b/mcstas-comps/examples/HZB/HZB_FLEX/README.md @@ -0,0 +1,42 @@ +# The `HZB_FLEX` Instrument + +*McStas: Primary and secondary spectrometer for the FLEX upgrade* + +## Identification + +- **Site:** HZB +- **Author:** M. Skoulatos and K. Habicht, port to McStas 2.0 by Mathias Kure KU +- **Origin:** Helmholtz-Zentrum Berlin +- **Date:** 26 October 2010 + +## Description + +```text + +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| kI | inv AA | incident wavevector | 1.55 | +| kF | inv AA | outgoing wavevector | 1.55 | +| wVS | m | Width of virtual source slit | 0.03 | +| tilt | deg | Tilt angle for velocity selector | 0 | +| SA | 1 | Analyzer scattering sense | -1 | +| A3 | deg | Sample omega angle | 0 | +| A4 | deg | Sample 2-theta angle | 70 | +| L3 | m | | 1.00 | +| L4 | m | | 1.00 | +| Mono_flatswitch | 1 | Flag for flat or curved monochromator | 0 | + +## Links + +- [Source code](HZB_FLEX.instr) for `HZB_FLEX.instr`. +- [Additional information](HZB_FLEX.instr.md) + +--- + +*Generated for mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/examples/HZB/HZB_NEAT/README.md b/mcstas-comps/examples/HZB/HZB_NEAT/README.md new file mode 100644 index 000000000..204b8e848 --- /dev/null +++ b/mcstas-comps/examples/HZB/HZB_NEAT/README.md @@ -0,0 +1,57 @@ +# The `HZB_NEAT` Instrument + +*McStas: V3 Time-of-Flight-Spectrometer (NEAT) at BENSC, 1995 version.* + +## Identification + +- **Site:** HZB +- **Author:** Emmanuel Farhi and R. Lechner +- **Origin:** ILL (France)/BENSC (Germany) +- **Date:** 2011 + +## Description + +```text +In time-of-flight spectrometers neutron pulses are created by us- +ing mechanical chopper devices, realised on NEAT by fast rotating +discs with speeds up to 20000 RPM. The discs are coated with neu- +tron absorbing materials except for the narrow windows. Phased to +each other according to the flight time of neutrons between them, +the choppers 'cut out' pulses of neutrons with a desired wave- +length from the white beam. An interaction with moving atoms in +the sample changes the velocities of the scattered neutrons and +this is detected by the secondary part of the spectrometer on the +basis of the time of flight between the sample and the neutron de- +tectors at 2.5 m distance. The secondary spectrometer of NEAT +contains an array of 388 3He 60 cm2 area single counter detectors +(SD) for the large-angle scattering. + +The NL 2 (upper part) guide is modelled. +This model only contains the first and last choppers, and has only a single +pulse (no frame overlap). The sample is a 2mm thick plate rotated by 45 degrees, +which material can be any powder/liquid/amorphous sample. +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| lambda | Angs | incident wavelength on sample | 6 | +| dlambda | Angs | wavelength spread shot from the source | 0.05 | +| rpm | rpm | disk chopper rotation speed, setting the resolution, Hz=rpm/60. | 10000 | +| coh | str | sample coherent S(q,w) file name. Use LAZ/LAU or SQW file | "Rb_liq_coh.sqw" | +| inc | str | sample incoherent S(q,w) file name. Use NULL to scatter incoherently | "Rb_liq_inc.sqw" | +| tmin | s | Minimum ToF measured | 0.01806 | +| tmax | s | Maximum ToF measured | 0.01826 | + +## Links + +- [Source code](HZB_NEAT.instr) for `HZB_NEAT.instr`. +- [Additional information](HZB_NEAT.instr.md) +- NEAT at HZB/BENSC + +--- + +*Generated for mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/examples/HighNESS/WOFSANS/README.md b/mcstas-comps/examples/HighNESS/WOFSANS/README.md new file mode 100644 index 000000000..6d2d13291 --- /dev/null +++ b/mcstas-comps/examples/HighNESS/WOFSANS/README.md @@ -0,0 +1,57 @@ +# The `WOFSANS` Instrument + +*McStas: Instrument developed for the HighNESS EU project, describing a Wolter Optics +Focusing SANS (WOFSANS), applied for the study of moderator parameters.* + +## Identification + +- **Site:** HighNESS +- **Author:** Stavros Samothrakis, PSI +- **Origin:** PSI +- **Date:** 2021-2023 + +## Description + +```text +Instrument developed for the HighNESS EU project, describing a Wolter Optics +Focusing SANS (WOFSANS_v2), applied for the study of moderator parameters. +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| focusing_rectangle | m | Dimensions, both width and height of the source focusing area | 0.15 | +| width | m | Width-dimension of the source | 0.15 | +| Emin | meV | Minimum energy of neutron beam simulated from source | 0.2 | +| Emax | meV | Maximum energy of neutron beam simulated from source | 100000.0 | +| l_min | AA | Minimum wavelength allowed through emulated chopper system | 7.2 | +| pulseskip | 1 | Flag to skip one or more pulse frames in bandwidth calculation | 0 | +| npulses | 1 | Number of pulses to simulate | 1 | +| chopper1_flag | 1 | Switch emulated chopper on/off | 0 | +| det | m | Detector position for bandwidth calculation | 41.5 | +| R0 | 1 | R0 low-angle reflectivity of optical coating | 0.99 | +| m | 1 | m-value of optical coating | 3 | +| W | AA-1 | Supermirror cut-off, optical coating | 0.003 | +| alpha | AA | alpha parmeter of optical coating | 6.07 | +| nshells_ph | 1 | Number of conical shells simulated in PH-Wolter optic | 28 | +| fi_ph | m | Focal length for PH-Wolter optic | 5.5 | +| PH_beamstop | 1 | Flag to (de)activate Beamstop post PH-Wolter optic | 1 | +| nshells_eh | 1 | Number of conical shells simulated in EH-Wolter optic | 25 | +| fs_eh | m | Upstream focal length for EH-Wolter optic | 8 | +| fi_eh | m | Downstream focal length for EH-Wolter optic | 6 | +| EH_beamstop | 1 | Flag to (de)activate Beamstop post EH-Wolter optic | 1 | + +## Links + +- [Source code](WOFSANS.instr) for `WOFSANS.instr`. +- [Additional information](WOFSANS.instr.md) +- V. Santoro et. al. Nuc. Sci. Eng. 2023 https://doi.org/10.1080/00295639.2023.2204184 +- https://highnessproject.eu +- This work was supported by the HighNESS project and is funded by European Commission (H2020-951782). + +--- + +*Generated for mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/examples/ILL/ILL_BRISP/README.md b/mcstas-comps/examples/ILL/ILL_BRISP/README.md new file mode 100644 index 000000000..c37a2f6e4 --- /dev/null +++ b/mcstas-comps/examples/ILL/ILL_BRISP/README.md @@ -0,0 +1,95 @@ +# The `ILL_BRISP` Instrument + +*McStas: Time of Flight Neutron Spectrometer for Small Angle Inelastic Scattering BRISP* + +## Identification + +- **Site:** ILL +- **Author:** E. Farhi and N. Formissano [formisan@ill.fr] +- **Origin:** ILL +- **Date:** June 4th, 2009 + +## Description + +```text +BRISP is a new concept thermal neutron Brillouin scattering spectrometer which +exploits the time-of-flight technique and is optimized to operate at small +scattering angles with good energy resolution. + +Keywords in the design of the BRISP spectrometer were : + +Thermal neutron energies: allowing for investigations in systems characterized +by sound velocities up to 3000 m/s (three different incident energies between +20 and 80 meV are presently available). +Easy small-angle access: enabling low-Q spectroscopy with thermal neutrons. +Elastic wavevector transfer values Qel as low as 0.03 Å -1 at 20 meV incident +energy can be reached. The position of the two-dimensional detector can be +adjusted to cover different small-angle ranges between 1° and 15°. +Time-of-Flight technique: for an efficient data collection allowing also for +accurate neutron measurements as a function of external parameters such as +temperature, pressure and magnetic field. +Carefull optimization of monochromator-collimators-Fermi chopper: leading to +0.5 meV energy resolution and 0.02 Å-1 Q resolution in a typical +configuration (20 meV incident energy and 4 m sample-detector distance), +along with acceptable counting rates (flux at the sample 104 n s-1 cm-2). +For this purpose, innovatory solutions were specially developed for some of +the BRISP components. + +Main components: + +a Soller collimator defining the beam impinging on the monochromator, with a +collimation angle of 0.4° +two focusing multi-crystal monochromators, PG and Cu(111), that allow for the +selection of three incident energies in the range from 20 to 80 meV. +Fixed/variable curvatures are adopted in/outside the Brisp vertical scattering plane. +a disk chopper used for background reduction and selection of the desired +monochromator reflection through proper phasing with the Fermi chopper. +three honeycomb converging collimators [1] to define the incident beam on the +sample with a collimation angle of 0.4°, and to optimize convergence at three +detector positions (2, 4, 6 m from the sample). A coarse resolution option +is also available, without honeycomb collimator. +a Fermi chopper producing short neutron pulses which enable the time-of-flight +analysis. +a high-vacuum sample chamber possibly equipped with 1.5-300 K MAXI Orange +cryostat (100 mm) and 300-1900 K furnace +a ~2 m2-area position sensitive gas detector (3He) whose distance from the +sample can be varied between 2 and 6 m in order to access the required Q-range. +A huge vacuum tank hosts the detector. An elastobore – polyethylene shielding +surrounds the vacuum tank to reduce the environmental background. +the long vacuum line ensures an under-vacuum neutron flight path from the +background chopper to the detector. + +Configurations: +crystal d-spacing (Å) lambda0 (Å) E0(meV) +PG(002) 3.355(nominal) 1.977(expt.) 20.9 (expt.) +Cu(111) 2.087 1.28 (expt.) 49.9 (expt.) +PG(004) 1.677(nominal) 0.989(expt.) 83.6 (expt.) + +In this model, the sample is a plate of thickness e=4 mm, surrounded by an +Al or Nb container, inside an Al shield (phi=10 cm). +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| DM | Angs | Monochromator d-spacing. Use 3.355 for PG002, 1.677 for PG004 and 2.087 for Cu111. | 3.355 | +| coh | str | Sample coherent specification (use laz, lau or Sqw file, or NULL to disable). Sample is a 5x5 cm plate, e=4 mm. | "V.lau" | +| inc | str | Sample incoherent specification (use laz, lau or Sqw file, or NULL to scatter isotropically, using cross sections read from the coherent file) | "NULL" | +| container | str | sample container material. Thickness is .2 mm. Use NULL, Al or Nb. | "NULL" | +| LSD | m | Distance sample-detector | 4.5 | +| Frequency | Hz | Disk-chopper frequency | 0 | +| LCC | m | Distance between the Disk-chopper and the Fermi-chopper | 0 | +| DELAY | s | Fermi phase wrt. Disk-chopper opening | 0 | + +## Links + +- [Source code](ILL_BRISP.instr) for `ILL_BRISP.instr`. +- [Additional information](ILL_BRISP.instr.md) +- The BRISP spectrometer at the ILL BRISP + +--- + +*Generated for mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/examples/ILL/ILL_D2B/README.md b/mcstas-comps/examples/ILL/ILL_D2B/README.md new file mode 100644 index 000000000..7182c206c --- /dev/null +++ b/mcstas-comps/examples/ILL/ILL_D2B/README.md @@ -0,0 +1,75 @@ +# The `ILL_D2B` Instrument + +*McStas: Simple monochromator Diffractometer for powders* + +## Identification + +- **Site:** ILL +- **Author:** C. M. I Enrique, K. Lieutenant, E. Farhi and L. Cussen +- **Origin:** ILL +- **Date:** 13 Apr 2006 + +## Description + +```text +The diffractometer D2B is characterised by the very high take-off angle (135 deg) +for the monochromator, which has a relatively large mosaic spread of 20' to +compensate for the corresponding intensity (dl/l) loss. It is 300 mm high, +focusing vertically onto about 50 mm; this large incident vertical divergence +is matched by 200 mm high detectors and collimators. A complete diffraction +pattern is obtained after about 100 steps of 0.025 deg in 2theta, since the 64 +detectors are spaced at 2.5 deg intervals. Such scans take typically 30 minutes; +they are repeated to improve statistics. + +D2B was designed for work on samples and high resolution of very large +d-spacings using wavelengths of between 2.4 Å and 6 Å. Wavelengths can easily be +changed under computer control, since they are all obtained by a simple rotation +within the Ge[hhl] plane. A large graphite filter can be switched in to provide +a very clean beam at 2.4 Angs, and a cold Be-filter can be used for longer +wavelengths. + +This model implements as well the Caglioti UVW equations, that give estimates +of the instrument resolution. + +Monochromator lattice parameter +Ge 111 DM=3.266 AA +Ge 311 DM=1.714 AA +Ge 511 DM=1.089 AA +Ge 533 DM=0.863 AA +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| lambda | Angs | Wavelength at monochromator, computed from DM and THETA_M if left as 0. | 1.594 | +| DM | Angs | d-spacing of monochromator, computed from lambda and THETA_M if left as 0. | 0 | +| Powder | str | File name for powder description | "Na2Ca3Al2F14.laz" | +| RV | m | Monochromator vertical curvature, 0 for flat, -1 for automatic setting | -1 | +| L1 | m | Source-Monochromator distance | 16.05 | +| L2 | m | Monochromator-Sample distance | 2.645 | +| L3 | m | Sample-Detector distance | 1.3 | +| verbose | 1 | Print DIF configuration. 0 to be quiet | 1 | +| ALPHA1 | min | Horizontal collimator divergence for L1 arm (before monochromator) | 18 | +| ALPHA2 | min | Horizontal collimator divergence for L2 arm (monochromator-sample) | 11 | +| ALPHA3 | min | Horizontal collimator divergence for L3 arm (sample-detector) | 5 | +| ETA | min | Monochromator horizontal mosaic (gaussian) | 12 | +| THETA_M | deg | Monochromator take-off angle, computed from lambda and DM if left as 0. | 67.5 | +| TILT | deg | Monochromator additional tilt, for rocking curves | 0 | +| SM | 1 | Scattering sense of beam from Monochromator. 1:left, -1:right | 1 | +| Dheight | m | Banana detector height | 0.3 | +| coating | 1 | Super-mirror in-beam tube guide coating | 0 | + +## Links + +- [Source code](ILL_D2B.instr) for `ILL_D2B.instr`. +- [Additional information](ILL_D2B.instr.md) +- G. Caglioti, A. Paoletti, F.P. Ricci, Nucl. Instr. and. Meth. 3 (1958) 223 +- L.D. Cussen, Nucl. Instr. and. Meth. A 554 (2005) 406 +- M. Morhac, NIM A 600 (2009) 478 + +--- + +*Generated for mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/examples/ILL/ILL_D2B_noenv/README.md b/mcstas-comps/examples/ILL/ILL_D2B_noenv/README.md new file mode 100644 index 000000000..b62419aff --- /dev/null +++ b/mcstas-comps/examples/ILL/ILL_D2B_noenv/README.md @@ -0,0 +1,75 @@ +# The `ILL_D2B_noenv` Instrument + +*McStas: Simple monochromator Diffractometer for powders* + +## Identification + +- **Site:** ILL +- **Author:** C. M. I Enrique, K. Lieutenant, E. Farhi and L. Cussen +- **Origin:** ILL +- **Date:** 13 Apr 2006 + +## Description + +```text +The diffractometer D2B is characterised by the very high take-off angle (135 deg) +for the monochromator, which has a relatively large mosaic spread of 20' to +compensate for the corresponding intensity (dl/l) loss. It is 300 mm high, +focusing vertically onto about 50 mm; this large incident vertical divergence +is matched by 200 mm high detectors and collimators. A complete diffraction +pattern is obtained after about 100 steps of 0.025 deg in 2theta, since the 64 +detectors are spaced at 2.5 deg intervals. Such scans take typically 30 minutes; +they are repeated to improve statistics. + +D2B was designed for work on samples and high resolution of very large +d-spacings using wavelengths of between 2.4 Å and 6 Å. Wavelengths can easily be +changed under computer control, since they are all obtained by a simple rotation +within the Ge[hhl] plane. A large graphite filter can be switched in to provide +a very clean beam at 2.4 Angs, and a cold Be-filter can be used for longer +wavelengths. + +This model implements as well the Caglioti UVW equations, that give estimates +of the instrument resolution. + +Monochromator lattice parameter +Ge 111 DM=3.266 AA +Ge 311 DM=1.714 AA +Ge 511 DM=1.089 AA +Ge 533 DM=0.863 AA +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| lambda | Angs | Wavelength at monochromator, computed from DM and THETA_M if left as 0. | 1.594 | +| DM | Angs | d-spacing of monochromator, computed from lambda and THETA_M if left as 0. | 0 | +| Powder | str | File name for powder description | "Na2Ca3Al2F14.laz" | +| RV | m | Monochromator vertical curvature, 0 for flat, -1 for automatic setting | -1 | +| L1 | m | Source-Monochromator distance | 16.05 | +| L2 | m | Monochromator-Sample distance | 2.645 | +| L3 | m | Sample-Detector distance | 1.3 | +| verbose | 1 | Print DIF configuration. 0 to be quiet | 1 | +| ALPHA1 | min | Horizontal collimator divergence for L1 arm (before monochromator) | 18 | +| ALPHA2 | min | Horizontal collimator divergence for L2 arm (monochromator-sample) | 11 | +| ALPHA3 | min | Horizontal collimator divergence for L3 arm (sample-detector) | 5 | +| ETA | min | Monochromator horizontal mosaic (gaussian) | 12 | +| THETA_M | deg | Monochromator take-off angle, computed from lambda and DM if left as 0. | 67.5 | +| TILT | deg | Monochromator additional tilt, for rocking curves | 0 | +| SM | 1 | Scattering sense of beam from Monochromator. 1:left, -1:right | 1 | +| Dheight | m | Banana detector height | 0.3 | +| coating | 1 | Super-mirror in-beam tube guide coating | 0 | + +## Links + +- [Source code](ILL_D2B_noenv.instr) for `ILL_D2B_noenv.instr`. +- [Additional information](ILL_D2B_noenv.instr.md) +- G. Caglioti, A. Paoletti, F.P. Ricci, Nucl. Instr. and. Meth. 3 (1958) 223 +- L.D. Cussen, Nucl. Instr. and. Meth. A 554 (2005) 406 +- M. Morhac, NIM A 600 (2009) 478 + +--- + +*Generated for mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/examples/ILL/ILL_D4/README.md b/mcstas-comps/examples/ILL/ILL_D4/README.md new file mode 100644 index 000000000..1a6d04d68 --- /dev/null +++ b/mcstas-comps/examples/ILL/ILL_D4/README.md @@ -0,0 +1,52 @@ +# The `ILL_D4` Instrument + +*McStas: D4 Diffractometer for liquids at the ILL.* + +## Identification + +- **Site:** ILL +- **Author:** E. Farhi +- **Origin:** LLB/ILL +- **Date:** 13 Apr 2006 + +## Description + +```text +D4 Diffractometer for liquids at the ILL, installed on the hot source. + +The dedicated liquid and amorphous instrument D4 is a two-axis diffractometer +equipped with nine 1D position sensitive microstrip detectors. In this model, +a PSD banana detector is also present. + +The monochromator take-off angle is 2Theta_M ~ 20-25 deg, variable. The available +monochromators are all vertically focusing, Cu (200) for 0.7 Angs, Cu (220) +for 0.5 Angs. + +Cu 002 DM=1.807 AA +Cu 220 DM=1.278 AA +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| lambda | Angs | Wavelength at monochromator | 0.7 | +| DM | Angs | d-spacing of monochromator | 1.807 | +| sample | str | File name for powder/liquid description LAU/LAZ/qSq/Sqw | "SiO2_liq.qSq" | +| RV | m | Monochromator vertical curvature, 0 for flat, -1 for automatic setting | -1 | +| L1 | m | Source-Monochromator distance | 6.4 | +| L2 | m | Monochromator-Sample distance | 2.61 | +| L3 | m | Sample-Detector distance | 1.148 | +| verbose | 1 | Print DIF configuration. 0 to be quiet | 1 | + +## Links + +- [Source code](ILL_D4.instr) for `ILL_D4.instr`. +- [Additional information](ILL_D4.instr.md) +- The D4 diffractometer at the ILL + +--- + +*Generated for mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/examples/ILL/ILL_H10_IN8/README.md b/mcstas-comps/examples/ILL/ILL_H10_IN8/README.md new file mode 100644 index 000000000..36709c5f4 --- /dev/null +++ b/mcstas-comps/examples/ILL/ILL_H10_IN8/README.md @@ -0,0 +1,85 @@ +# The `ILL_H10_IN8` Instrument + +*McStas: Thermal neutron three-axis spectrometer IN8@ILL* + +## Identification + +- **Site:** ILL +- **Author:** Emmanuel Farhi +- **Origin:** ILL (France) +- **Date:** 2006 + +## Description + +```text +IN8 is installed on beamtube H10 (diameter F = 200 mm). +The incident wavelength selection is obtained through a double focusing +monochromator , which has three faces equipped with PG002, Cu200 and bent +perfect Si111 crystals, respectively. Horizontal focusing allows increasing the +monochromatic flux at the expense of momentum but not energy resolution when +the horizontal virtual source (an adjustable entrance slit) is introduced at a +distance before the monochromator which matches the monochromator-sample +distance. + +The aperture of the horizontal virtual source can be varied but is typically +kept below 50 mm. This reduces the background level of the instrument. +Converging collimators as well as diaphragms can be placed in the beam path +before and after the monochromator to optimize the beam dimension and +definition. For special high-resolution experiments using a flat monochromator, +Soller collimators are available. + +The shielding drum allows varying the monochromator take-off angle in the range +10 < 2theta_m < 90. The secondary spectrometer has heavy borated polyethylene +shielding installed around the analyzer and detector elements. The scattering +angle at the sample position is in the range 0 < 2theta_s < 130 independent of +the monochromator take-off angle. + +In this TAS configuration, Cu200 is used as monochromator and Cu111 as +analyser, with a single type detector. +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| KF | Angs-1 | Outgoing neutron wavevector | 5 | +| KI | Angs-1 | Incoming neutron wavevector | 0 | +| QM | Angs-1 | Wavevector transfer in crystal | 0.5 | +| EN | meV | Energy transfer in crystal | 0 | +| verbose | 1 | print TAS configuration. 0 to be quiet | 1 | +| WM | m | Width of monochromator | 0.233 | +| HM | m | Height of monochromator | 0.197 | +| RMH | m | Monochromator horizontal curvature, 0 for flat, -1 for automatic setting | -1 | +| RMV | m | Monochromator vertical curvature, 0 for flat, -1 for automatic setting | -1 | +| DM | Angs | Monochromator d-spacing | 1.807 | +| NHM | 1 | Number of horizontal slabs composing the monochromator | 15 | +| NVM | 1 | Number of vertical slabs composing the monochromator | 15 | +| WA | m | Width of analyzer | 0.16 | +| HA | m | Height of analyzer | 0.08 | +| RAH | m | Analyzer horizontal curvature, 0 for flat, -1 for automatic setting | -1 | +| RAV | m | Analyzer vertical curvature, 0 for flat, -1 for automatic setting | -1 | +| DA | Angs | Analyzer d-spacing | 2.087 | +| NHA | 1 | Number of horizontal slabs composing the analyzer | 15 | +| NVA | 1 | Number of vertical slabs composing the analyzer | 15 | +| L1 | m | Source-Monochromator distance. Contains 1st Collimator of length 5.34 | 2.3 | +| ALF1 | arc min | Horizontal collimation from Source to Monochromator | 60 | +| ALF2 | arc min | Horizontal collimation from Monochromator to Sample A | 60 | +| ALF3 | arc min | Horizontal collimation from Sample to Analyzer | 60 | +| ALF4 | arc min | Horizontal collimation from Analyzer to Detector | 60 | +| BET1 | arc min | Vertical collimation from Source to Monochromator | 120 | +| BET2 | arc min | Vertical collimation from Monochromator to Sample A | 120 | +| BET3 | arc min | Vertical collimation from Sample to Analyzer | 120 | +| BET4 | arc min | Vertical collimation from Analyzer to Detector | 120 | + +## Links + +- [Source code](ILL_H10_IN8.instr) for `ILL_H10_IN8.instr`. +- [Additional information](ILL_H10_IN8.instr.md) +- Rescal for Matlab at http://www.ill.eu/instruments-support/computing-for-science/cs-software/all-software/matlab-ill/ +- Restrax at http://omega.ujf.cas.cz/restrax/ + +--- + +*Generated for mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/examples/ILL/ILL_H113/README.md b/mcstas-comps/examples/ILL/ILL_H113/README.md new file mode 100644 index 000000000..d1156d016 --- /dev/null +++ b/mcstas-comps/examples/ILL/ILL_H113/README.md @@ -0,0 +1,37 @@ +# The `ILL_H113` Instrument + +*McStas: The H113 supermirror ballistic curved cold guide at the ILL* + +## Identification + +- **Site:** ILL +- **Author:** FARHI Emmanuel (farhi@ill.fr) +- **Origin:** ILL +- **Date:** April 7, 2004 + +## Description + +```text +The H113 supermirror ballistic curved cold guide at the ILL feeding PF1b +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| m | 1 | m-value of whole guide coating. 0 absorbing, 1 for Ni, 1.2 for Ni58, 2-4 for SM | 2 | +| lambda | AA | central wavelength | 10 | +| dlambda | AA | wavelength half width. Use e.g. 0.8*lambda for white beam. | 9.9 | +| mip | 1 | m-value of in-pile guide coating (3.5 first meters of guide) | 1.2 | + +## Links + +- [Source code](ILL_H113.instr) for `ILL_H113.instr`. +- [Additional information](ILL_H113.instr.md) +- The PF1b beam line at the ILL + +--- + +*Generated for mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/examples/ILL/ILL_H13_IN20/README.md b/mcstas-comps/examples/ILL/ILL_H13_IN20/README.md new file mode 100644 index 000000000..829665614 --- /dev/null +++ b/mcstas-comps/examples/ILL/ILL_H13_IN20/README.md @@ -0,0 +1,84 @@ +# The `ILL_H13_IN20` Instrument + +*McStas: Thermal neutron three-axis spectrometer IN20@ILL (unpolarized configuration)* + +## Identification + +- **Site:** ILL +- **Author:** Emmanuel Farhi +- **Origin:** ILL (France) +- **Date:** 2006 + +## Description + +```text +IN20 is installed at the H13 thermal beam tube (Phi 170 mm) in the reactor hall. + +Both the primary and the secondary spectrometer employ a monochromatic +horizontal focusing geometry. A heavy input slit of an adjustable size, placed +in the casemate, serves as a virtual source, providing a large solid angle for +the monochromatic beam, while reducing, together with a sapphire filter window, +the fast neutron background. The neutron energy is selected either by a doubly +focusing polarizing Heusler 111 monochromator (230 x 150 mm2 w x h) or by an +unpolarised Si 111 monochromator (elastically bent crystals, 195 x 200 mm2 w x +h) free of higher-order contamination in the incident beam at wave-numbers ki > +3 Angs-1. The analysis of the energy and polarisation state of the scattered +neutrons is effectuated by a similar horizontally focusing Heusler crystal +analyzer. Further PG 002 and Si 111 analyzers are available for occasional +unpolarised work. + +The energy transfer range accessible in the present configuration of IN20 +extends to 100 meV with maximum incident neutron energies reaching 150 meV. The +typical energy widths (FWHM) measured with a reference vanadium sample at the +graphite filter wave-numbers ki = 2.66 A-1 and 4.1 A-1 are 0.82(3) meV and 3.05 +(15) meV, respectively. + +This model uses two Si111 monochromator and analyzers (unpolarized +configuration). +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| KF | Angs-1 | Outgoing neutron wavevector | 3 | +| KI | Angs-1 | Incoming neutron wavevector | 0 | +| QM | Angs-1 | Wavevector transfer in crystal | 0.5 | +| EN | meV | Energy transfer in crystal | 0 | +| verbose | 1 | print TAS configuration. 0 to be quiet | 1 | +| WM | m | Width of monochromator | 0.20 | +| HM | m | Height of monochromator | 0.19 | +| RMH | m | Monochromator horizontal curvature, 0 for flat, -1 for automatic setting | -1 | +| RMV | m | Monochromator vertical curvature, 0 for flat, -1 for automatic setting | -1 | +| DM | Angs | Monochromator d-spacing | 3.155 | +| NHM | 1 | Number of horizontal slabs composing the monochromator | 15 | +| NVM | 1 | Number of vertical slabs composing the monochromator | 15 | +| WA | m | Width of analyzer | 0.16 | +| HA | m | Height of analyzer | 0.08 | +| RAH | m | Analyzer horizontal curvature, 0 for flat, -1 for automatic setting | -1 | +| RAV | m | Analyzer vertical curvature, 0 for flat, -1 for automatic setting | -1 | +| DA | Angs | Analyzer d-spacing | 3.155 | +| NHA | 1 | Number of horizontal slabs composing the analyzer | 15 | +| NVA | 1 | Number of vertical slabs composing the analyzer | 15 | +| L1 | m | Source-Monochromator distance. Contains 1st Collimator of length 5.34 | 2.33 | +| ALF1 | arc min | Horizontal collimation from Source to Monochromator | 60 | +| ALF2 | arc min | Horizontal collimation from Monochromator to Sample A | 60 | +| ALF3 | arc min | Horizontal collimation from Sample to Analyzer | 60 | +| ALF4 | arc min | Horizontal collimation from Analyzer to Detector | 60 | +| BET1 | arc min | Vertical collimation from Source to Monochromator | 120 | +| BET2 | arc min | Vertical collimation from Monochromator to Sample A | 120 | +| BET3 | arc min | Vertical collimation from Sample to Analyzer | 120 | +| BET4 | arc min | Vertical collimation from Analyzer to Detector | 120 | + +## Links + +- [Source code](ILL_H13_IN20.instr) for `ILL_H13_IN20.instr`. +- [Additional information](ILL_H13_IN20.instr.md) +- Rescal for Matlab at http://www.ill.eu/instruments-support/computing-for-science/cs-software/all-software/matlab-ill/ +- Restrax at http://omega.ujf.cas.cz/restrax/ + +--- + +*Generated for mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/examples/ILL/ILL_H142/README.md b/mcstas-comps/examples/ILL/ILL_H142/README.md new file mode 100644 index 000000000..02c0237fc --- /dev/null +++ b/mcstas-comps/examples/ILL/ILL_H142/README.md @@ -0,0 +1,38 @@ +# The `ILL_H142` Instrument + +*McStas: The H142 S-curved cold guide at the ILL* + +## Identification + +- **Site:** ILL +- **Author:** FARHI Emmanuel (farhi@ill.fr) +- **Origin:** ILL +- **Date:** April 7, 2004 + +## Description + +```text +The H142 S-curved cold guide at the ILL feeding IN12 +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| m | 1 | m-value of whole guide coating. 0 absorbing, 1 for Ni, 1.2 for Ni58, 2-4 for SM | 1 | +| lambda | AA | central wavelength | 10 | +| dlambda | AA | wavelength half width. Use e.g. 0.8*lambda for white beam. | 9.9 | +| gH | m | height of 2nd H142 curved section | 0.12 | +| mip | 1 | m-value of in-pile guide coating | 1 | + +## Links + +- [Source code](ILL_H142.instr) for `ILL_H142.instr`. +- [Additional information](ILL_H142.instr.md) +- The IN12 TAS at the ILL + +--- + +*Generated for mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/examples/ILL/ILL_H142_D33/README.md b/mcstas-comps/examples/ILL/ILL_H142_D33/README.md new file mode 100644 index 000000000..b9c371226 --- /dev/null +++ b/mcstas-comps/examples/ILL/ILL_H142_D33/README.md @@ -0,0 +1,49 @@ +# The `ILL_H142_D33` Instrument + +*McStas: A simplified H142 cold guide model at the ILL, with a simple D33 model at the end* + +## Identification + +- **Site:** ILL +- **Author:** FARHI Emmanuel (farhi@ill.fr) +- **Origin:** ILL +- **Date:** 2012 + +## Description + +```text +This model decribes a simiplified H142 cold guide at the ILL, with D33. + +The D33 Massive dynamic q-range small-angle diffractometer is a Small-Angle Neutron +Scattering instrument for the characterization of samples with typical sizes +varying from the nanometer scale to few tenth of micrometer. In addition to a +standard monochromatic mode of operation, D33 offers a time of flight mode (TOF) +to cover an enhanced dynamic q-range qmax/qmin in one instrument setting. High +magnetic fields, up to 17 T at the sample position, beam polarization and 3He +spin analysis, facilitate and expand studies of magnetism and allow a more +quantitative analysis of spin incoherent samples. The high flux allows for +kinetic experiments with time resolution of the order of few milliseconds. +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| lambda | | central wavelength band for guide illumination [Angs] | 14 | +| dlambda | | half width of guide wavelength band [Angs] | 1.4 | +| m1 | | m-coating for 1st guide section | 1 | +| m2 | | m-coating for 2nd guide section | 1 | +| m3 | | m-coating for 3th guide section | 1 | +| m4 | | m-coating for 4th guide section | 1 | +| diaphragm | | diaphragm diameter between section 3 and 4; use 0 to remove [cm] | 0 | + +## Links + +- [Source code](ILL_H142_D33.instr) for `ILL_H142_D33.instr`. +- [Additional information](ILL_H142_D33.instr.md) + +--- + +*Generated for mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/examples/ILL/ILL_H142_IN12/README.md b/mcstas-comps/examples/ILL/ILL_H142_IN12/README.md new file mode 100644 index 000000000..a5b40c438 --- /dev/null +++ b/mcstas-comps/examples/ILL/ILL_H142_IN12/README.md @@ -0,0 +1,52 @@ +# The `ILL_H142_IN12` Instrument + +*McStas: The H142 S-curved cold guide at the ILL feeding IN12 TAS spectrometer* + +## Identification + +- **Site:** ILL +- **Author:** FARHI Emmanuel (farhi@ill.fr) +- **Origin:** ILL +- **Date:** April 7, 2004 + +## Description + +```text +The H142 beam is the only S-curved guide at the ILL. It is used here to feed +the IN12 TAS spectrometer (classical configuration). +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| m | 1 | m-value of guide coating (H14/H142) | 1 | +| KI | Angs-1 | central wavevector for incoming neutrons | 2.662 | +| QM | Angs-1 | wavevector transfer modulus at the sample | 1.0 | +| EN | meV | energy transfer at the sample | 0.0 | +| verbose | | verbose-mode toggle | 1 | +| WM | m | Width of monochromator | 0.08 | +| HM | m | Height of monochromator | 0.12 | +| NHM | 1 | Number of vertical slabs composing the monochromator | 1 | +| NVM | 1 | Number of horizontal slabs composing the monochromator | 6 | +| RMV | m | Monochromator vertical curvature, 0 for flat, -1 for automatic setting | -1 | +| WA | m | Width of analyzer | 0.121 | +| HA | m | Height of analyzer | 0.118 | +| NHA | 1 | Number of horizontal slabs composing the analyzer | 11 | +| NVA | 1 | Number of vertical slabs composing the analyzer | 1 | +| RAH | m | Analyzer horizontal curvature, 0 for flat, -1 for automatic setting | -1 | +| L2 | m | Monochromator-Sample distance. Contains 2nd Collimator | 1.726 | +| L3 | m | Sample-Analyzer distance. Contains 3rd Collimator | 1.300 | +| L4 | m | Analyzer-detector distance. Contains 4th Collimator | 0.710 | + +## Links + +- [Source code](ILL_H142_IN12.instr) for `ILL_H142_IN12.instr`. +- [Additional information](ILL_H142_IN12.instr.md) +- The IN12 TAS at the ILL + +--- + +*Generated for mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/examples/ILL/ILL_H142_simple/README.md b/mcstas-comps/examples/ILL/ILL_H142_simple/README.md new file mode 100644 index 000000000..6b294906d --- /dev/null +++ b/mcstas-comps/examples/ILL/ILL_H142_simple/README.md @@ -0,0 +1,38 @@ +# The `ILL_H142_simple` Instrument + +*McStas: The H142 S-curved cold guide at the ILL* + +## Identification + +- **Site:** ILL +- **Author:** FARHI Emmanuel (farhi@ill.fr) +- **Origin:** ILL +- **Date:** April 7, 2004 + +## Description + +```text +The H142 S-curved cold guide at the ILL feeding IN12 +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| m | 1 | m-value of whole guide coating. 0 absorbing, 1 for Ni, 1.2 for Ni58, 2-4 for SM | 1 | +| lambda | AA | central wavelength | 10 | +| dlambda | AA | wavelength half width. Use e.g. 0.8*lambda for white beam. | 9.9 | +| gH | m | height of 2nd H142 curved section | 0.12 | +| mip | 1 | m-value of in-pile guide coating | 1 | + +## Links + +- [Source code](ILL_H142_simple.instr) for `ILL_H142_simple.instr`. +- [Additional information](ILL_H142_simple.instr.md) +- The IN12 TAS at the ILL + +--- + +*Generated for mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/examples/ILL/ILL_H143_LADI/README.md b/mcstas-comps/examples/ILL/ILL_H143_LADI/README.md new file mode 100644 index 000000000..b1c6f9407 --- /dev/null +++ b/mcstas-comps/examples/ILL/ILL_H143_LADI/README.md @@ -0,0 +1,61 @@ +# The `ILL_H143_LADI` Instrument + +*McStas: The LADI protein crystallography cold Laue diffractometer* + +## Identification + +- **Site:** ILL +- **Author:** Emmanuel Farhi +- **Origin:** ILL (France) +- **Date:** Sept 2014. + +## Description + +```text +LADI-III is a quasi-Laue neutron diffractometer used for single-crystal studies +of biological macromolecules at high resolution (1.5 - 2.5Å) in order to locate +individual protons or deuterons of special interest, water structures or other +small molecules that can be marked with deuterium to be particularly visible. +Data collection is feasible for samples with unit-cell edges ranging from 50 +to 150Å using crystal volumes from ~0.05 to 0.5mm3, respectively. + +LADI-III uses a large cylindrical area detector composed of neutron-sensitive +image-plates, which completely surround the crystal and allows large numbers +of reflections to be recorded simultaneously. Data are collected using a +quasi-Laue method in order to provide a rapid survey of reciprocal space, while +reducing the background on the detector compared to use of the full white beam. + +LADI: +Guide H143: +H14_1 H14_2 H14_3 [OT1] H143_1 [OT2] H143_2 last +Length [m] 6.8 6 21 30 35 1 +m 2 2 2 1,bot=1.4 1,bot=1.4 idem +Rh [km] - 2.7 4.0 - - - +Rv [km] - - - 2.0 2.0 2.0 +n_elm. 2 5 11 15 14 last=1m +section [mm] 45x220 45x220 45x220-200 45x30+95 30x30+95 [w*h+v.offset] + +Filter: Ni/Ti multilayer band-pass filter, Quasi-Laue (dlambda/lambda<30%) +Collimation: Pinholes 0.5 to 2.9 mm +Detector: image plate 1250 x 450 mm2 +Sample: at 2.710 mm from the end of the guide H143. +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| lambda | Angs | wavelength | 3.2 | +| dlambda | Angs | wavelength HALF spread. | 1 | +| reflections | str | list of reflections describing the sample SX | "leucine.lau" | + +## Links + +- [Source code](ILL_H143_LADI.instr) for `ILL_H143_LADI.instr`. +- [Additional information](ILL_H143_LADI.instr.md) + +--- + +*Generated for mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/examples/ILL/ILL_H15/README.md b/mcstas-comps/examples/ILL/ILL_H15/README.md new file mode 100644 index 000000000..ec131a8a2 --- /dev/null +++ b/mcstas-comps/examples/ILL/ILL_H15/README.md @@ -0,0 +1,37 @@ +# The `ILL_H15` Instrument + +*McStas: The H15@ILL curved cold guide at the ILL (feeding IN6, D7, IN10, D11)* + +## Identification + +- **Site:** ILL +- **Author:** FARHI Emmanuel (farhi@ill.fr) +- **Origin:** ILL +- **Date:** April 7, 2004 + +## Description + +```text +The H15@ILL curved guide sending cold neutrons from the VCS to IN6 +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| m | 1 | m-value of whole guide coating. 0 absorbing, 1 for Ni, 1.2 for Ni58, 2-4 for SM | 1 | +| lambda | AA | central wavelength | 10 | +| dlambda | AA | wavelength half width. Use e.g. 0.8*lambda for white beam. | 9.9 | +| mip | 1 | m-value of in-pile guide coating | 1 | + +## Links + +- [Source code](ILL_H15.instr) for `ILL_H15.instr`. +- [Additional information](ILL_H15.instr.md) +- The IN6 TOF at the ILL + +--- + +*Generated for mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/examples/ILL/ILL_H15_D11/README.md b/mcstas-comps/examples/ILL/ILL_H15_D11/README.md new file mode 100644 index 000000000..72dd2ce32 --- /dev/null +++ b/mcstas-comps/examples/ILL/ILL_H15_D11/README.md @@ -0,0 +1,59 @@ +# The `ILL_H15_D11` Instrument + +*McStas: D11 at the ILL: Lowest momentum transfer, lowest background small-angle neutron scattering instrument* + +## Identification + +- **Site:** ILL +- **Author:** FARHI Emmanuel (farhi@ill.fr) +- **Origin:** ILL +- **Date:** 2012 + +## Description + +```text +D11 - LOWEST MOMENTUM TRANSFER and LOWEST BACKGROUND SANS + +D11 is the archetype of a long, pinhole geometry instrument for small angle +neutron scattering (SANS), designed for the study of large scale structures in +soft matter systems, chemistry, biology, solid state physics and materials science. + +This model allows to specify the collimation length, i.e. the free path between +the end of the guide and the sample location. When Lc=1.5 m, the intensity is +maximal, but Q-resolution (divergence) is degraded. The Lc=40.5 m configuration +is the low-Q one. +The collimation can also be given as predefined configuration 'iLc' starting from 0 + +iLc ={ 1.5, 2.5, 4, 5.5, 8, 10.5, 13.5, 16.5, 20.5, 28, 34, 40.5} + +so that e.g. iLc=5 corresponds with a 10.5 m collimation + +The quality of the collimation section can be specified among a set of glass +pre-set specifications. The available configurations are: + +| Borkron_1972 Borkron_2003 Borofloat_2001 Borofloat_2003 +Chamfers [mm] | 0.2 0.2 0.8 0.2 +Wavyness [rad]| 2.5e-5 1e-4 8e-4 2e-4 +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| Lambda | Angs | neutron wavelength reaching D11 sample | 4.51 | +| Config | string | guide configuration. Must be one of Borkron_1972 Borkron_2003 Borofloat_2001 Borofloat_2003 | "Borkron_1972" | +| Lc | m | guide collimation, i.e. free path between end of guide and sample location. Must be one of 40.5, 34, 28, 20.5, 16.5 13.5 10.5, 8, 5.5, 4, 2.5, 1.5 | 0 | +| iLc | index | guide collimation predefined length | 5 | +| Chamfers | m | chamfers width (input/output movable guide section+longitudinal top/bottom sides) | 0.0002 | +| Waviness | rad | movable guide Waviness | 2.5e-5 | + +## Links + +- [Source code](ILL_H15_D11.instr) for `ILL_H15_D11.instr`. +- [Additional information](ILL_H15_D11.instr.md) + +--- + +*Generated for mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/examples/ILL/ILL_H15_IN6/README.md b/mcstas-comps/examples/ILL/ILL_H15_IN6/README.md new file mode 100644 index 000000000..03c8f071a --- /dev/null +++ b/mcstas-comps/examples/ILL/ILL_H15_IN6/README.md @@ -0,0 +1,69 @@ +# The `ILL_H15_IN6` Instrument + +*McStas: The IN6 Time-of-Flight simulation, positioned as the first instrument in the +cold guide H15 (Nickel coating) at the ILL.* + +## Identification + +- **Site:** ILL +- **Author:** Emmanuel Farhi +- **Origin:** ILL (France) +- **Date:** 17th Jan 2005. + +## Description + +```text +IN6 is a time focussing time-of-flight spectrometer designed for quasielastic and +inelastic scattering for incident wavelengths in the range of 4 to 6 Angs. + +An intense beam is extracted from the H15 guide by a vertically focussing +monochromator array. It consists of three composite pyrolytic graphite +monochromators using the full height (20 cm) of the guide and focussing the beam +at the sample position. In order to minimise the interference with the +subsequent instruments, the monochromator can deliver only four wavelengths: +4.1; 4.6; 5.1; and 5.9 Angs. The second order reflection from the graphite +monochromator is removed by a beryllium-filter cooled at liquid nitrogen +temperature. + +To achieve the time-focussing condition, the beam is pulsed by a Fermi chopper. +It has a small slot length to ensure a good transmission. The normal distance +between the Fermi chopper and the sample is 38 cm. To prevent frame-overlap when +the chopper is rotating faster than 7500 rpm, a suppressor chopper is placed +before the Fermi chopper and rotates in phase with the latter. + +The secondary spectrometer consists first of an evacuated sample area. The +detector bank is entirely covered with detector boxes, thus avoiding the +inconvenience of moving the counters. + +This instrument model contains the complete H15 guide, a triple monochromator +(using the GROUP), two Fermi Choppers (including one background chopper), a +liquid sample handling coherent and incoherent processes (elastic and inelastic) +with multiple scattering, customized monitors, and the SPLIT mechanism to +improve the statistics. + +Example: lambda=4.14 Detector: M_theta_t_all_I=70 +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| lambda | Angs | wavelength within 4.14\|4.6\|5.12\|5.92 | 4.14 | +| dlambda | Angs | wavelength HALF spread. default is 0.075 | 0.075 | + +## Links + +- [Source code](ILL_H15_IN6.instr) for `ILL_H15_IN6.instr`. +- [Additional information](ILL_H15_IN6.instr.md) +- The IN6@ILL Yellow Pages +- R.Scherm et al, "Another Time of Flight Spectrometer", ILL Report 76S235, 1976 +- R.Scherm, "A high-resolution spectrometer ...", report Jul-295-NP, Kernforschungsanlage Julich, 1965 +- Y.Blanc, "Le spectrometre a temps de vol IN6", ILL Report 83BL21G, 1983 +- K.H.Beckurts et al, Neutron physics, Kernforschungsanlage Karlsruhe, 1964 (p317) +- R.Scherm and T.Springer, "Proposal of a multiple Chopper...", Kernforschungsanlage Julich, 19xx + +--- + +*Generated for mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/examples/ILL/ILL_H15_SAM/README.md b/mcstas-comps/examples/ILL/ILL_H15_SAM/README.md new file mode 100644 index 000000000..cc165a9f6 --- /dev/null +++ b/mcstas-comps/examples/ILL/ILL_H15_SAM/README.md @@ -0,0 +1,72 @@ +# The `ILL_H15_SAM` Instrument + +*McStas: The small-angle diffractometer SAM at the ILL.* + +## Identification + +- **Site:** ILL +- **Author:** Nicolas MARTIN +- **Origin:** LLB +- **Date:** 2026/04/08 + +## Description + +```text +SAM is a CRG instrument built through a collaboration between the LLB & the ILL between +June 2023 and February 2024. After hot commissioning, first user experiments took place +in June 2024. SAM stands for "Small-Angle Modular instrument". It is a compact SANS +devoted to the study of mesostructures found in various contexts (soft matter, biophysics, +material sciences and magnetism), which also features polarized neutrons capabilities +(not included in this model). The beamline is fed by the completely renewed H15 cold +neutrons guide. + +Instrument parameters: + +Typical wavelength range: 3.25-24 AA +Guides cross section: 30 x 30 mm2 (three moveable elements within collimator) +Collimation lengths: [9, 7, 5, 2.5] m +Adjustable 'reflectometer-type' diaphragms located at [9, 5, 2.5] m upstream of sample position. +Sample-to-detector distance: 0.75-6.85 m +Detector: 64 x 64 cm2 monoblock 3He PSD +See the instrument page on the ILL website for more details. + +Example (typical "real-life" measurement sequence): + +mcrun ILL_H15_SAM.instr --gravity -n1e7 -dLargeQ lambda=5.2 +mcrun ILL_H15_SAM.instr --gravity -n1e7 -dSmallQ guide1=0 guide2=0 guide3=0 lsd=6.8 + +(Corresponding test-suite entries:) +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| lambda | AA | Wavelength mean value | 5.2 | +| dlambda | 1 | Wavelength range, full width | 0.2 | +| lambdasel | AA | Mean wavelength selected by the NVS | -1.0 | +| guide1 | 1 | 0 = out, 1 = in | 1 | +| guide2 | 1 | 0 = out, 1 = in | 1 | +| guide3 | 1 | 0 = out, 1 = in | 1 | +| s1w | mm | Width of the 1st adjustable diaphragm | 30 | +| s1h | mm | Height of the 1st adjustable diaphragm | 30 | +| s2w | mm | Width of the 2nd adjustable diaphragm | 30 | +| s2h | mm | Height of the 2nd adjustable diaphragm | 30 | +| s3w | mm | Width of the 3rd adjustable diaphragm | 30 | +| s3h | mm | Height of the 3rd adjustable diaphragm | 30 | +| ssw | mm | Width or diameter of sample slit | 7 | +| ssh | mm | Height of sample slit (0 for circular slit) | 10 | +| sampleno | 1 | Choice of sample: 0 = none, 1 = liquid water, 2 = powder ring, 3 = hard spheres in solution | 3 | +| lsd | m | Sample-to-detector distance | 0.85 | + +## Links + +- [Source code](ILL_H15_SAM.instr) for `ILL_H15_SAM.instr`. +- [Additional information](ILL_H15_SAM.instr.md) +- + +--- + +*Generated for mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/examples/ILL/ILL_H16/README.md b/mcstas-comps/examples/ILL/ILL_H16/README.md new file mode 100644 index 000000000..d4e278f5e --- /dev/null +++ b/mcstas-comps/examples/ILL/ILL_H16/README.md @@ -0,0 +1,35 @@ +# The `ILL_H16` Instrument + +*McStas: The H16 cold guide (feeding IN5)* + +## Identification + +- **Site:** ILL +- **Author:** E. Farhi, J. Ollivier, Celia Castan Guerrero +- **Origin:** ILL +- **Date:** Jan 2004-2009 + +## Description + +```text +The H16@ILL curved guide sending cold neutrons from the VCS to IN5. +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| lambda | AA | mean incident wavelength. | 10 | +| dlambda | AA | wavelength half width. Use e.g. 0.8*lambda for white beam. | 9.9 | +| m | 1 | m-value of whole guide coating. 0 absorbing, 1 for Ni, 1.2 for Ni58, 2-4 for SM | 1 | + +## Links + +- [Source code](ILL_H16.instr) for `ILL_H16.instr`. +- [Additional information](ILL_H16.instr.md) + +--- + +*Generated for mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/examples/ILL/ILL_H16_IN5/README.md b/mcstas-comps/examples/ILL/ILL_H16_IN5/README.md new file mode 100644 index 000000000..679fc6963 --- /dev/null +++ b/mcstas-comps/examples/ILL/ILL_H16_IN5/README.md @@ -0,0 +1,38 @@ +# The `ILL_H16_IN5` Instrument + +*McStas: The full IN5B: H16 guide & chopper system + sample + PSD and tof detector* + +## Identification + +- **Site:** ILL +- **Author:** E. Farhi, J. Ollivier, Celia Castan Guerrero +- **Origin:** ILL +- **Date:** Jan 2004-2009 + +## Description + +```text +The IN5@ILL TOF spectrometer from cold source to final detector, with sample. +The detector model includes Fe housing and tube cross talk absorbing masks +with angle restriction (neutrons that scatter in Fe in front of a tube and +enter a different tube are absorbed). +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| lambda | AA | mean incident wavelength | 4.5 | +| dlambda | AA | wavelength half width. Use e.g. 0.8*lambda for white beam. | 0.09 | + +## Links + +- [Source code](ILL_H16_IN5.instr) for `ILL_H16_IN5.instr`. +- [Additional information](ILL_H16_IN5.instr.md) +- The IN5@ILL cold time of flight instrument + +--- + +*Generated for mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/examples/ILL/ILL_H22/README.md b/mcstas-comps/examples/ILL/ILL_H22/README.md new file mode 100644 index 000000000..de8d640c5 --- /dev/null +++ b/mcstas-comps/examples/ILL/ILL_H22/README.md @@ -0,0 +1,36 @@ +# The `ILL_H22` Instrument + +*McStas: The H22 curved thermal guide at the ILL* + +## Identification + +- **Site:** ILL +- **Author:** FARHI Emmanuel (farhi@ill.fr) +- **Origin:** ILL +- **Date:** April 7, 2004 + +## Description + +```text +The H22 curved thermal guide at the ILL feeding D1A/D1B, SALSA and VIVALDI +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| m | 1 | m-value of whole guide coating. 0 absorbing, 1 for Ni, 1.2 for Ni58, 2-4 for SM | 2 | +| lambda | AA | central wavelength | 4 | +| dlambda | AA | wavelength half width. Use e.g. 0.8*lambda for white beam. | 3.9 | +| mip | 1 | m-value of in-pile guide coating | 2 | + +## Links + +- [Source code](ILL_H22.instr) for `ILL_H22.instr`. +- [Additional information](ILL_H22.instr.md) + +--- + +*Generated for mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/examples/ILL/ILL_H22_D1A/README.md b/mcstas-comps/examples/ILL/ILL_H22_D1A/README.md new file mode 100644 index 000000000..9113f6d1f --- /dev/null +++ b/mcstas-comps/examples/ILL/ILL_H22_D1A/README.md @@ -0,0 +1,65 @@ +# The `ILL_H22_D1A` Instrument + +*McStas: Simple monochromator Diffractometer for powders (D1A) installed on H22, with +container/sample environment and radial collimator.* + +## Identification + +- **Site:** ILL +- **Author:** E. Farhi +- **Origin:** ILL +- **Date:** 13 Apr 2006 + +## Description + +```text +D1A is a reliable diffractometer for standard crystallographic problems. It gives +excellent results with the Rietveld method owing to its near perfect Gaussian +peak-shape in the 2θ-range 30° to 150°. + +Special features include +a high fixed take-off angle of 122 deg, giving high resolution at large +scattering angles (up to 160 deg); +a bank of 25 high efficiency collimators and counters; +an anisotropically squashed germanium monochromator focussing a 250 +mm high beam onto only 30 mm; +a wide choice of wavelengths, from 1.39 Angs to 2.99 Angs, quickly available by +simple rotation of the focussing monochromator; + +The large monochromator take-off angle means that the diffraction pattern is +focussed for the parallel geometry shown (2θ = 122°). The counter can be swept +through 0 deg to 2θ = 160° deg for the highest angle counter, usually in steps +of 0.05 deg. +Monochromator Neutron wavelength +Ge 117 DM=0.7946 AA 1.390 +Ge 335 DM=0.8655 AA 1.514 +Ge 115 DM=1.0925 AA 1.911 (optimal) +Ge 113 DM=1.712 AA 2.994 + +The sample is a powder, in a container can, all positioned in an +Al environment (e.g. cryostat/furnace shield). + +This instrument was installed on the H22 guide. +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| lambda | Angs | Wavelength at monochromator | 1.911 | +| dlambda | Angs | Wavelength-spread around lambda at source | 0.03 | +| DM | Angs | d-spacing of monochromator. Use DM=0 to compute the values from the requested wavelength. | 0 | +| RV | m | Radius of vertical focussing. flat for 0 | -1 | +| powder | str | File name for powder sample description | "Na2Ca3Al2F14.laz" | +| container | str | File name for container decription in Al cryostat/furnace | "V.laz" | + +## Links + +- [Source code](ILL_H22_D1A.instr) for `ILL_H22_D1A.instr`. +- [Additional information](ILL_H22_D1A.instr.md) + +--- + +*Generated for mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/examples/ILL/ILL_H22_D1A_noenv/README.md b/mcstas-comps/examples/ILL/ILL_H22_D1A_noenv/README.md new file mode 100644 index 000000000..f465e985b --- /dev/null +++ b/mcstas-comps/examples/ILL/ILL_H22_D1A_noenv/README.md @@ -0,0 +1,65 @@ +# The `ILL_H22_D1A` Instrument + +*McStas: Simple monochromator Diffractometer for powders (D1A) installed on H22, with +container/sample environment and radial collimator.* + +## Identification + +- **Site:** ILL +- **Author:** E. Farhi +- **Origin:** ILL +- **Date:** 13 Apr 2006 + +## Description + +```text +D1A is a reliable diffractometer for standard crystallographic problems. It gives +excellent results with the Rietveld method owing to its near perfect Gaussian +peak-shape in the 2θ-range 30° to 150°. + +Special features include +a high fixed take-off angle of 122 deg, giving high resolution at large +scattering angles (up to 160 deg); +a bank of 25 high efficiency collimators and counters; +an anisotropically squashed germanium monochromator focussing a 250 +mm high beam onto only 30 mm; +a wide choice of wavelengths, from 1.39 Angs to 2.99 Angs, quickly available by +simple rotation of the focussing monochromator; + +The large monochromator take-off angle means that the diffraction pattern is +focussed for the parallel geometry shown (2θ = 122°). The counter can be swept +through 0 deg to 2θ = 160° deg for the highest angle counter, usually in steps +of 0.05 deg. +Monochromator Neutron wavelength +Ge 117 DM=0.7946 AA 1.390 +Ge 335 DM=0.8655 AA 1.514 +Ge 115 DM=1.0925 AA 1.911 (optimal) +Ge 113 DM=1.712 AA 2.994 + +The sample is a powder, in a container can, all positioned in an +Al environment (e.g. cryostat/furnace shield). + +This instrument was installed on the H22 guide. +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| lambda | Angs | Wavelength at monochromator | 1.911 | +| dlambda | Angs | Wavelength-spread around lambda at source | 0.03 | +| DM | Angs | d-spacing of monochromator. Use DM=0 to compute the values from the requested wavelength. | 0 | +| RV | m | Radius of vertical focussing. flat for 0 | -1 | +| powder | str | File name for powder sample description | "Na2Ca3Al2F14.laz" | +| container | str | File name for container decription in Al cryostat/furnace | "V.laz" | + +## Links + +- [Source code](ILL_H22_D1A_noenv.instr) for `ILL_H22_D1A_noenv.instr`. +- [Additional information](ILL_H22_D1A_noenv.instr.md) + +--- + +*Generated for mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/examples/ILL/ILL_H22_D1B/README.md b/mcstas-comps/examples/ILL/ILL_H22_D1B/README.md new file mode 100644 index 000000000..2389d8be4 --- /dev/null +++ b/mcstas-comps/examples/ILL/ILL_H22_D1B/README.md @@ -0,0 +1,75 @@ +# The `ILL_H22_D1B` Instrument + +*McStas: The D1B diffractometer on the H22 curved thermal guide at the ILL* + +## Identification + +- **Site:** ILL +- **Author:** FARHI Emmanuel (farhi@ill.fr) and SANCHEZ Javier (sanchez-montero@ill.fr) +- **Origin:** ILL +- **Date:** June, 2008 + +## Description + +```text +The D1B diffractometer on the H22 curved thermal guide at the ILL. + +D1B is a two-axis spectrometer dedicated to diffraction experiments requesting a +high neutron flux. A great number of experiments performed on D1B concern the +determination of magnetic structures. At small angles where the magnetic peaks +are expected, a high spatial resolution can be achieved, the FWHM reaches 0.2° +(for a sample with = 8 mm). Three pyrolitic graphite monochromators focusing +onto the sample position provide a flux of 6.5·106 n cm-2s-1. A second +wavelength with = 1.28 Å is available by using a germanium monochromator. D1B is +equipped with 3He/Xe position-sensitive detector composed of a system of +multi-electrodes with 400 cells, which span a 2 range of 80°. The detector can +be moved so that an angular range of 2°<2<130° can be covered. The specially +designed cryostat is known for its low background crucial for some experiments +with small intensity changes. Because of its high flux at = 2.52 Å together with +the large multi-detector, surface studies such as adsorbed phases as well as +real-time diffraction experiments are possible. Collecting a diffraction pattern +with sufficient statistics in minutes (1-5 min) even seconds allows in situ +studies of reaction kinetics. A fast detection of phase transitions can also be +obtained by scanning the temperature. A complete thermal variation of the +diffraction patterns (1.5 - 300 K) can be achieved in few hours (3-5h). +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| lambda | AA | mean incident wavelength. | 2.52 | +| dlambda | AA | wavelength full width. | 0.03 | +| DM | AA | Mono lattice spacing | 0 | +| Powder | str | File name for powder description, LAZ/LAU/Fullprof | "Na2Ca3Al2F14.laz" | +| RV | m | Monochromator vertical curvature, 0 for flat, -1 for automatic setting | 2.2 | +| L1 | m | Source-Monochromator distance | 0.25 | +| L2 | m | Monochromator-Sample distance | 3.0 | +| L3 | m | Sample-Detector distance | 1.500 | +| TRAS_X | m | Additional monochromator translation along X, left/righ w.r.t beam | -0 | +| TRAS_Z | m | Additional monochromator translation along Z, along guide | 0 | +| TILT | deg | Monochromator additional tilt, for rocking curves | 0 | +| THETA_M | deg | Mono takeoff angle | 22.11 | +| R_pitch | deg | Angular pitch between the absorbing blades | .42 | +| R_ri | m | Inner radius of the collimator | 0.324 | +| R_ro | m | Outer radius of the collimator | 0.419 | +| R_h | m | Height of the collimator | 0.090 | +| R_ttmin | deg | Lower scattering angle limit | -130 | +| R_ttmax | deg | Higher scattering angle limit | -2 | +| R_present | 1 | Presence flag for the radial collimator. 0: inactivate component. | 1 | +| verbose | 1 | Print DIF configuration. 0 to be quiet | 1 | +| Inc_Cryo | 1 | Cryostat incoherent fraction | 0.02 | +| Trans_Cryo | 1 | Cryostat event transmission | 0.85 | +| Trans_Spl | 1 | Sample event transmission | 0.2 | +| Inc_Spl | 1 | Sample incoherent fraction | 0.05 | + +## Links + +- [Source code](ILL_H22_D1B.instr) for `ILL_H22_D1B.instr`. +- [Additional information](ILL_H22_D1B.instr.md) + +--- + +*Generated for mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/examples/ILL/ILL_H22_D1B_noenv/README.md b/mcstas-comps/examples/ILL/ILL_H22_D1B_noenv/README.md new file mode 100644 index 000000000..c5ec38d99 --- /dev/null +++ b/mcstas-comps/examples/ILL/ILL_H22_D1B_noenv/README.md @@ -0,0 +1,75 @@ +# The `ILL_H22_D1B_noenv` Instrument + +*McStas: The D1B diffractometer on the H22 curved thermal guide at the ILL* + +## Identification + +- **Site:** ILL +- **Author:** FARHI Emmanuel (farhi@ill.fr) and SANCHEZ Javier (sanchez-montero@ill.fr) +- **Origin:** ILL +- **Date:** June, 2008 + +## Description + +```text +The D1B diffractometer on the H22 curved thermal guide at the ILL. + +D1B is a two-axis spectrometer dedicated to diffraction experiments requesting a +high neutron flux. A great number of experiments performed on D1B concern the +determination of magnetic structures. At small angles where the magnetic peaks +are expected, a high spatial resolution can be achieved, the FWHM reaches 0.2° +(for a sample with = 8 mm). Three pyrolitic graphite monochromators focusing +onto the sample position provide a flux of 6.5·106 n cm-2s-1. A second +wavelength with = 1.28 Å is available by using a germanium monochromator. D1B is +equipped with 3He/Xe position-sensitive detector composed of a system of +multi-electrodes with 400 cells, which span a 2 range of 80°. The detector can +be moved so that an angular range of 2°<2<130° can be covered. The specially +designed cryostat is known for its low background crucial for some experiments +with small intensity changes. Because of its high flux at = 2.52 Å together with +the large multi-detector, surface studies such as adsorbed phases as well as +real-time diffraction experiments are possible. Collecting a diffraction pattern +with sufficient statistics in minutes (1-5 min) even seconds allows in situ +studies of reaction kinetics. A fast detection of phase transitions can also be +obtained by scanning the temperature. A complete thermal variation of the +diffraction patterns (1.5 - 300 K) can be achieved in few hours (3-5h). +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| lambda | AA | mean incident wavelength. | 2.52 | +| dlambda | AA | wavelength full width. | 0.03 | +| DM | AA | Mono lattice spacing | 0 | +| Powder | str | File name for powder description, LAZ/LAU/Fullprof | "Na2Ca3Al2F14.laz" | +| RV | m | Monochromator vertical curvature, 0 for flat, -1 for automatic setting | 2.2 | +| L1 | m | Source-Monochromator distance | 0.25 | +| L2 | m | Monochromator-Sample distance | 3.0 | +| L3 | m | Sample-Detector distance | 1.500 | +| TRAS_X | m | Additional monochromator translation along X, left/righ w.r.t beam | -0 | +| TRAS_Z | m | Additional monochromator translation along Z, along guide | 0 | +| TILT | deg | Monochromator additional tilt, for rocking curves | 0 | +| THETA_M | deg | Mono takeoff angle | 22.11 | +| R_pitch | deg | Angular pitch between the absorbing blades | .42 | +| R_ri | m | Inner radius of the collimator | 0.324 | +| R_ro | m | Outer radius of the collimator | 0.419 | +| R_h | m | Height of the collimator | 0.090 | +| R_ttmin | deg | Lower scattering angle limit | -130 | +| R_ttmax | deg | Higher scattering angle limit | -2 | +| R_present | 1 | Presence flag for the radial collimator. 0: inactivate component. | 1 | +| verbose | 1 | Print DIF configuration. 0 to be quiet | 1 | +| Inc_Cryo | 1 | Cryostat incoherent fraction | 0.02 | +| Trans_Cryo | 1 | Cryostat event transmission | 0.85 | +| Trans_Spl | 1 | Sample event transmission | 0.2 | +| Inc_Spl | 1 | Sample incoherent fraction | 0.05 | + +## Links + +- [Source code](ILL_H22_D1B_noenv.instr) for `ILL_H22_D1B_noenv.instr`. +- [Additional information](ILL_H22_D1B_noenv.instr.md) + +--- + +*Generated for mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/examples/ILL/ILL_H22_VIVALDI/README.md b/mcstas-comps/examples/ILL/ILL_H22_VIVALDI/README.md new file mode 100644 index 000000000..183ca8259 --- /dev/null +++ b/mcstas-comps/examples/ILL/ILL_H22_VIVALDI/README.md @@ -0,0 +1,50 @@ +# The `ILL_H22_VIVALDI` Instrument + +*McStas: The VIVALDI Laue diffractometer on the H22 curved thermal guide at the ILL* + +## Identification + +- **Site:** ILL +- **Author:** FARHI Emmanuel (farhi@ill.fr) +- **Origin:** ILL +- **Date:** June, 2008 + +## Description + +```text +VIVALDI (Very-Intense, Vertical-Axis Laue DIffractometer) provides a tool for +development of new diffraction experiments, and is complementary to other ILL +single-crystal diffractometers. Fields of interest for experiments on VIVALDI +include magnetism, charge density waves, high-pressure studies and structural +phase transitions. VIVALDI allows rapid preliminary investigation of new +materials, even when only small single crystals are available. The detector is +also suitable for some types of diffuse scattering experiments on a +monochromatic beam. + +VIVALDI is located at the end of the thermal guide H22. The full thermal +spectrum can be accepted without detrimental overlap of reflections for +primitive unit cells up to 25 Angs on edge. + +This model include a cryostat and container description, with a crystal sample. +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| lambda | AA | mean incident wavelength. | 3 | +| dlambda | AA | wavelength full width. | 2.2 | +| crystal | str | File name for crystal description (LAU) | "YBaCuO.lau" | +| container | str | File name for sample-container material description | "V.laz" | +| verbose | 1 | Print DIF configuration. 0 to be quiet | 1 | + +## Links + +- [Source code](ILL_H22_VIVALDI.instr) for `ILL_H22_VIVALDI.instr`. +- [Additional information](ILL_H22_VIVALDI.instr.md) + +--- + +*Generated for mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/examples/ILL/ILL_H24/README.md b/mcstas-comps/examples/ILL/ILL_H24/README.md new file mode 100644 index 000000000..bc2615412 --- /dev/null +++ b/mcstas-comps/examples/ILL/ILL_H24/README.md @@ -0,0 +1,36 @@ +# The `ILL_H24` Instrument + +*McStas: The H24 curved thermal guide at the ILL* + +## Identification + +- **Site:** ILL +- **Author:** FARHI Emmanuel (farhi@ill.fr) +- **Origin:** ILL +- **Date:** April 7, 2004 + +## Description + +```text +The H24 curved thermal guide at the ILL feeding IN3, IN13, D10 and S42/Orient Express +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| m | 1 | m-value of whole guide coating. 0 absorbing, 1 for Ni, 1.2 for Ni58, 2-4 for SM | 2 | +| lambda | AA | central wavelength | 4 | +| dlambda | AA | wavelength half width. Use e.g. 0.8*lambda for white beam. | 3.9 | +| mip | 1 | m-value of in-pile guide coating | 0 | + +## Links + +- [Source code](ILL_H24.instr) for `ILL_H24.instr`. +- [Additional information](ILL_H24.instr.md) + +--- + +*Generated for mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/examples/ILL/ILL_H25/README.md b/mcstas-comps/examples/ILL/ILL_H25/README.md new file mode 100644 index 000000000..5e9bb06b2 --- /dev/null +++ b/mcstas-comps/examples/ILL/ILL_H25/README.md @@ -0,0 +1,36 @@ +# The `ILL_H25` Instrument + +*McStas: The H25 supermirror curved thermal guide at the ILL* + +## Identification + +- **Site:** ILL +- **Author:** Emmanuel Farhi +- **Origin:** ILL (France) +- **Date:** 2006 + +## Description + +```text +The H25 supermirror curved thermal guide at the ILL feeding S18, D23 and IN22 +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| m | 1 | m-value of whole guide coating. 0 absorbing, 1 for Ni, 1.2 for Ni58, 2-4 for SM | 2 | +| lambda | AA | central wavelength | 4 | +| dlambda | AA | wavelength half width. Use e.g. 0.8*lambda for white beam. | 3.9 | +| mip | 1 | m-value of in-pile guide coating | 2 | + +## Links + +- [Source code](ILL_H25.instr) for `ILL_H25.instr`. +- [Additional information](ILL_H25.instr.md) + +--- + +*Generated for mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/examples/ILL/ILL_H25_IN22/README.md b/mcstas-comps/examples/ILL/ILL_H25_IN22/README.md new file mode 100644 index 000000000..a751fb8da --- /dev/null +++ b/mcstas-comps/examples/ILL/ILL_H25_IN22/README.md @@ -0,0 +1,57 @@ +# The `ILL_H25_IN22` Instrument + +*McStas: IN22 thermal triple-axis machine (TAS) on guide H25 with sample* + +## Identification + +- **Site:** ILL +- **Author:** Emmanuel Farhi +- **Origin:** ILL (France) +- **Date:** 2006 + +## Description + +```text +This instrument is a model of IN22@ILL with PG002 monochromator/analyzer, +installed at the end of the H25 supermirror thermal guide. +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| m | 1 | m-value of guide coating (H14/H142) | 2 | +| KI | Angs-1 | central wavevector for incoming neutrons | 3.84 | +| QM | Angs-1 | wavevector transfer modulus at the sample | 1.0 | +| EN | meV | energy transfer at the sample | 0.0 | +| verbose | | toggle verbose mode | 1 | +| WM | m | Width of monochromator | 0.15 | +| HM | m | Height of monochromator | 0.12 | +| NHM | 1 | Number of vertical slabs composing the monochromator | 1 | +| NVM | 1 | Number of horizontal slabs composing the monochromator | 9 | +| RMV | m | Monochromator vertical curvature, 0 for flat, -1 for automatic setting | -1 | +| WA | m | Width of analyzer | 0.20 | +| HA | m | Height of analyzer | 0.10 | +| NHA | 1 | Number of horizontal slabs composing the analyzer | 11 | +| NVA | 1 | Number of vertical slabs composing the analyzer | 3 | +| RAV | m | Analyzer vertical curvature, 0 for flat, -1 for automatic setting | -1 | +| RAH | m | Analyzer horizontal curvature, 0 for flat, -1 for automatic setting | -1 | +| SM | 1:left, -1:right | Scattering sense of beam from Monochromator | -1 | +| SS | 1:left, -1:right | Scattering sense of beam from Sample | 1 | +| SA | 1:left, -1:right | Scattering sense of beam from Analyzer | -1 | +| L1 | m | Source-Monochromator distance. Contains 1st Collimator | 10.0 | +| L2 | m | Monochromator-Sample distance. Contains 2nd Collimator | 1.7 | +| L3 | m | Sample-Analyzer distance. Contains 3rd Collimator | 1.0 | +| L4 | m | Analyzer-detector distance. Contains 4th Collimator | 0.8 | + +## Links + +- [Source code](ILL_H25_IN22.instr) for `ILL_H25_IN22.instr`. +- [Additional information](ILL_H25_IN22.instr.md) +- The IN22 TAS at the ILL + +--- + +*Generated for mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/examples/ILL/ILL_H5/README.md b/mcstas-comps/examples/ILL/ILL_H5/README.md new file mode 100644 index 000000000..cf595bcaa --- /dev/null +++ b/mcstas-comps/examples/ILL/ILL_H5/README.md @@ -0,0 +1,51 @@ +# The `ILL_H5` Instrument + +*McStas: The full H5 cold guide at the ILL, with IN14, D16, Super-Adam, IN15, D22 +This is the geometry before the major H5 guide hall upgrade (up to 2013).* + +## Identification + +- **Site:** ILL +- **Author:** FARHI Emmanuel (farhi@ill.fr) +- **Origin:** ILL +- **Date:** May, 2011 + +## Description + +```text + +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| lambda | | | 5 | +| dlambda | | | 4.5 | +| IN14_lambda | | | 4.2 | +| IN16_lambda | | | 6.3 | +| D16_lambda | | | 5.6 | +| SADAM_lambda | | | 4.4 | +| IN15_lambda | | | 6.5 | +| D22_lambda | | | 4.5 | +| D22_collimation | | | 2 | +| IN14_sample | | | "Rb_liq_coh.sqw" | +| IN16_sample | | | "Rb_liq_coh.sqw" | +| D16_sample | | | "H2O_liq.qSq" | +| SADAM_sample | | | "SiO2_quartza.laz" | +| D22_sample | | | "H2O_liq.qSq" | +| IN14_RMV | | | -1 | +| IN16_RMV | | | -1 | +| D16_RMV | | | -1 | +| SADAM_RMV | | | -1 | + +## Links + +- [Source code](ILL_H5.instr) for `ILL_H5.instr`. +- [Additional information](ILL_H5.instr.md) + +--- + +*Generated for mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/examples/ILL/ILL_H512_D22/README.md b/mcstas-comps/examples/ILL/ILL_H512_D22/README.md new file mode 100644 index 000000000..340b02ab0 --- /dev/null +++ b/mcstas-comps/examples/ILL/ILL_H512_D22/README.md @@ -0,0 +1,41 @@ +# The `ILL_H512_D22` Instrument + +*McStas: The H512 cold guide at the ILL, with D22* + +## Identification + +- **Site:** ILL +- **Author:** FARHI Emmanuel (farhi@ill.fr) +- **Origin:** ILL +- **Date:** May, 2011 + +## Description + +```text +This model describes the H512 cold guide at the ILL, with D22. + +The D22 Large dynamic range small-angle diffractometer +is fully simulated. A sample can be specified (liquid), +with monitoring of the scattering in angular (diffraction) and energy modes +(for spectroscopy). +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| lambda | Angs | central wavelength band for guide illumination and D22 velocity selector setting wavelength | 4.5 | +| dlambda | Angs | half width of guide wavelength band | .45 | +| D22_collimation | | | 2 | +| D22_sample | string | D22 liquid/powder/amorphous sample | "H2O_liq.qSq" | + +## Links + +- [Source code](ILL_H512_D22.instr) for `ILL_H512_D22.instr`. +- [Additional information](ILL_H512_D22.instr.md) + +--- + +*Generated for mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/examples/ILL/ILL_H53/README.md b/mcstas-comps/examples/ILL/ILL_H53/README.md new file mode 100644 index 000000000..24f823cf2 --- /dev/null +++ b/mcstas-comps/examples/ILL/ILL_H53/README.md @@ -0,0 +1,36 @@ +# The `ILL_H53` Instrument + +*McStas: The H53 curved cold guide at the ILL* + +## Identification + +- **Site:** ILL +- **Author:** FARHI Emmanuel (farhi@ill.fr) +- **Origin:** ILL +- **Date:** April 7, 2004 + +## Description + +```text +The H53 curved cold guide at the ILL feeding IN14, IN16, D16, ADAM, CRYO-EDM +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| m | 1 | m-value of whole guide coating. 0 absorbing, 1 for Ni, 1.2 for Ni58, 2-4 for SM | 1.2 | +| lambda | AA | central wavelength | 10 | +| dlambda | AA | wavelength half width. Use e.g. 0.8*lambda for white beam | 9.9 | +| mip | 1 | m-value of in-pile guide coating | 1.2 | + +## Links + +- [Source code](ILL_H53.instr) for `ILL_H53.instr`. +- [Additional information](ILL_H53.instr.md) + +--- + +*Generated for mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/examples/ILL/ILL_H53_D16/README.md b/mcstas-comps/examples/ILL/ILL_H53_D16/README.md new file mode 100644 index 000000000..1e0c37bc9 --- /dev/null +++ b/mcstas-comps/examples/ILL/ILL_H53_D16/README.md @@ -0,0 +1,54 @@ +# The `ILL_H53_D16` Instrument + +*McStas: The D16 diffractometer/reflectometer on the H53 curved cold guide at the ILL* + +## Identification + +- **Site:** ILL +- **Author:** FARHI Emmanuel (farhi@ill.fr) +- **Origin:** ILL +- **Date:** Oct 7, 2008 + +## Description + +```text +The H53 (120 x 60 mm2) curved cold guide feeds D16 (after IN14, and IN16). +D16 is a two-circle diffractometer. The primary white beam is reflected by a +focussing pyrolytic graphite monochromator (122 x 60 mm2 with mosaicity 0.7 +deg) providing an important flux at the sample. The monochromator housing has +two beam holes at take-off angles of 90 deg and 115 deg, corresponding to 4.7 +Angs and 5.6 Angs beams and incorporates the slit systems. +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| lambda | Angs | Wavelength at monochromator, computed from DM and THETA_M if left as 0. | 4.7 | +| DM | Angs | d-spacing of monochromator, computed from lambda and THETA_M if left as 0. | 3.355 | +| dlambda | AA | wavelength half width. | 0.05 | +| Powder | str | File name for powder description. | "Na2Ca3Al2F14.laz" | +| RV | m | Monochromator vertical curvature, 0 for flat, -1 for automatic setting | -1 | +| L1 | m | Guide-Monochromator distance | 0.1 | +| L2 | m | Monochromator-Sample distance | 2.8 | +| L3 | m | Sample-Detector distance | 1.0 | +| THETA_M | deg | Monochromator take-off angle, computed from lambda and DM if left as 0. | 44.46 | +| TwoTheta | deg | Detector rotation (in plane) | 0 | +| RadiusDet | m | Detector entrance window radius | 0.36 | +| DetEthick | m | Detector entrance window thickness | .01 | +| DetEgap | m | Detector entrance window gap to flat detector inner window | 0.08 | +| DetVthick | m | Detector active volume thickness | 5e-3 | +| verbose | 1 | Print DIF configuration. 0 to be quiet | 1 | +| TILT | deg | Monochromator additional tilt, for rocking curves | 0 | + +## Links + +- [Source code](ILL_H53_D16.instr) for `ILL_H53_D16.instr`. +- [Additional information](ILL_H53_D16.instr.md) +- The D16 diffractometer at the ILL + +--- + +*Generated for mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/examples/ILL/ILL_H53_IN14/README.md b/mcstas-comps/examples/ILL/ILL_H53_IN14/README.md new file mode 100644 index 000000000..295f43de7 --- /dev/null +++ b/mcstas-comps/examples/ILL/ILL_H53_IN14/README.md @@ -0,0 +1,72 @@ +# The `ILL_H53_IN14` Instrument + +*McStas: IN14 cold triple-axis machine (TAS) on guide H53 with sample* + +## Identification + +- **Site:** ILL +- **Author:** Emmanuel Farhi +- **Origin:** ILL (France) +- **Date:** 2006 + +## Description + +```text +IN14 is a high flux cold neutron three-axis spectrometer situated on a straight +58Ni coated guide looking at the horizontal cold source. IN14 is equipped with +a vertically curved (002) pyrolytic graphite monochromator. A polarising bender +can be inserted after the monochromator, for polarised neutron work. + +The sample, analyser and detector units are mounted on standard Tanzboden +modules and the distance between these units may be changed if necessary. For +sample positioning, two motorized arcs (+/- 20deg), and two horizontal +translation tables (+/- 10 mm) are available. Soller collimators can be easily +inserted before and after the sample, and before the detector. + +Three horizontally focusing analysers are available: (002) pyrolytic graphite, +bent Si(111), and Heusler (111) for polarised neutrons. + +In this TAS configuration, PG002 is used as monochromator analyser, +with a single type detector. +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| KI | Angs-1 | central wavevector for incoming neutrons | 1.55 | +| QM | Angs-1 | wavevector transfer modulus at the sample | 1.0 | +| EN | meV | energy transfer at the sample | 0.0 | +| verbose | | toggle verbose mode | 1 | +| WM | m | Width of monochromator | 0.15 | +| HM | m | Height of monochromator | 0.12 | +| NHM | 1 | Number of vertical slabs composing the monochromator | 1 | +| NVM | 1 | Number of horizontal slabs composing the monochromator | 9 | +| RMV | m | Monochromator vertical curvature, 0 for flat, -1 for automatic setting | -1 | +| DM | | | 3.355 | +| WA | m | Width of analyzer | 0.20 | +| HA | m | Height of analyzer | 0.10 | +| NHA | 1 | Number of horizontal slabs composing the analyzer | 11 | +| NVA | 1 | Number of vertical slabs composing the analyzer | 1 | +| RAV | m | Analyzer vertical curvature, 0 for flat, -1 for automatic setting | 0 | +| RAH | m | Analyzer horizontal curvature, 0 for flat, -1 for automatic setting | -1 | +| DA | AA | Analyzer lattice spacing | 3.355 | +| SM | 1:left, -1:right | Scattering sense of beam from Monochromator | 1 | +| SS | 1:left, -1:right | Scattering sense of beam from Sample | -1 | +| SA | 1:left, -1:right | Scattering sense of beam from Analyzer | 1 | +| L1 | m | Source-Monochromator distance. Contains 1st Collimator | 7.0 | +| L2 | m | Monochromator-Sample distance. Contains 2nd Collimator | 2.12 | +| L3 | m | Sample-Analyzer distance. Contains 3rd Collimator | 1.37 | +| L4 | m | Analyzer-detector distance. Contains 4th Collimator | 0.7 | + +## Links + +- [Source code](ILL_H53_IN14.instr) for `ILL_H53_IN14.instr`. +- [Additional information](ILL_H53_IN14.instr.md) +- The IN14 TAS at the ILL + +--- + +*Generated for mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/examples/ILL/ILL_H5_new/README.md b/mcstas-comps/examples/ILL/ILL_H5_new/README.md new file mode 100644 index 000000000..19d98a962 --- /dev/null +++ b/mcstas-comps/examples/ILL/ILL_H5_new/README.md @@ -0,0 +1,76 @@ +# The `ILL_H5_new` Instrument + +*McStas: The full H5 new cold guide at the ILL, with ThALES, D16, Super-Adam, IN15 +(sample only), D22WASP and CryoEDM +This is a proposed geometry for major H5 guide hall upgrade (since 2013). +The exact adopted H5 geometry may be actually different.* + +## Identification + +- **Site:** ILL +- **Author:** FARHI Emmanuel (farhi@ill.fr) +- **Origin:** ILL +- **Date:** May, 2011 + +## Description + +```text +This model decribes the full new H5 cold guide at the ILL, with ThALES, WASP, D16, +Super-Adam, IN15, D22. + +H511:The IN15 Spin-echo spectrometer +is simulated with an incoming polarized beam, but not with a full spin-echo +description. Sample is Vanadium +H512:The D22 Large dynamic range small-angle diffractometer +is fully simulated +H521:The D16 Small momentum transfer diffractometer D16 is realistic +H521:The SuperADAM reflectometer is used in low angle diffraction mode. +H522: The WASP Spin-echo spectrometer +is simulated with an incoming polarized beam, but not with a full spin-echo +description. Sample is Vanadium +H523:The CryoEDM with its polarized beam +H53: The ThALES Cold neutron three-axis spectrometer IN14 + +For each instrument, a sample can be specified (liquid/powder/amorphous), +with monitoring of the scattering in angular (diffraction) and energy modes +(for spectroscopy). +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| lambda | | central wavelength band for guide illumination [Angs] | 5 | +| dlambda | | half width of guide wavelength band [Angs] | 4.5 | +| ThALES_lambda | | ThALES monochromator setting wavelength. Usual 2.4 and 4.2 [Angs] | 4.2 | +| WASP_lambda | | IN16 monochromator setting wavelength. Usual 3.3 and 6.3 [Angs] | 6.3 | +| D16_lambda | | D16 monochromator setting wavelength. Usual 4.7 and 5.6 [Angs] | 5.6 | +| SADAM_lambda | | SuperADAM monochromator setting wavelength. Usual 4.4 [Angs] | 4.4 | +| IN15_lambda | | IN15 velocity selector setting wavelength [Angs] | 6.5 | +| D22_lambda | | D22 velocity selector setting wavelength [Angs] | 4.5 | +| D22_collimation | | D22 collimation length and sample-detector distance [m] | 2 | +| ThALES_sample | | ThALES liquid/powder/amorphous sample [string] | "Rb_liq_coh.sqw" | +| WASP_sample | | | "Rb_liq_coh.sqw" | +| D16_sample | | D16 liquid/powder/amorphous sample [string] | "H2O_liq.qSq" | +| SADAM_sample | | SuperADAM liquid/powder/amorphous sample [string] | "SiO2_quartza.laz" | +| D22_sample | | D22 liquid/powder/amorphous sample [string] | "H2O_liq.qSq" | +| ThALES_RMV | | | -1 | +| D16_RMV | | | -1 | +| SADAM_RMV | | | -1 | +| ThALES_RMH | | | -1 | + +## Links + +- [Source code](ILL_H5_new.instr) for `ILL_H5_new.instr`. +- [Additional information](ILL_H5_new.instr.md) +- The NoteDPT11 at the ILL +- The DPT/SMAE 11/070 WASP design report +- The DPT/SMAE 10/271 H5 design report +- Daily notes from K. Andersen about the H5 project +- Mirotron drawing MR-0656-000 for the IN15 V-mirror geometry + +--- + +*Generated for mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/examples/ILL/ILL_H8_IN1/README.md b/mcstas-comps/examples/ILL/ILL_H8_IN1/README.md new file mode 100644 index 000000000..94c21c41c --- /dev/null +++ b/mcstas-comps/examples/ILL/ILL_H8_IN1/README.md @@ -0,0 +1,88 @@ +# The `ILL_H8_IN1` Instrument + +*McStas: Hot neutron three-axis spectrometer IN1@ILL* + +## Identification + +- **Site:** ILL +- **Author:** Emmanuel Farhi +- **Origin:** ILL (France) +- **Date:** 2006 + +## Description + +```text +IN8 is installed on beamtube H10 (diameter F = 200 mm). + +IN1 works in a time-sharing mode. This means that the same monochromator is +also used by the Be-filter spectrometer IN1-BeF and by the liquids +diffractometer D4. Changing over between the three different instruments can be +done without difficulty in about two hours. + +The monochromator unit carries three different vertically focussing +monochromators built from copper single crystals (available reflecting planes +Cu(200), Cu(220) and Cu(331)). The exchange of the monochromator planes is +controlled by the instrument computer. The radius of curvature can be +automatically adjusted as function of reflected energy in order to maintain +maximal flux at the sample position in the course of energy scans. The +scattering angles on the monochromator cover a range of 10<2theta_m <90 +allowing for scanning neutron energies from 13 meV to more than 1 eV.. + +The IN1-TAS spectrometer: the scattering angles at the sample and the analyser +can be changed in the intervals -115<2theta_S<115 and -120<2theta_S<120. Three +different analysers (PG(002), Cu(200), Cu(220)) can be installed in order to +optimise intensity and resolution for a given experiment. Various resonance +absorption filters (e.g. Er, Sm, Hf ...) can be used to suppress higher order +contaminations from the incident beam or in the scattered beam. An oriented +Pyrolytic Graphite filter is designed for experiments eventually demanding +thermal neutron energy range. + +In this TAS configuration, Cu220 are used as monochromator and analyser, +with a single type detector. +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| KF | Angs-1 | Outgoing neutron wavevector | 10 | +| KI | Angs-1 | Incoming neutron wavevector | 0 | +| QM | Angs-1 | Wavevector transfer in crystal | 0.5 | +| EN | meV | Energy transfer in crystal | 0 | +| verbose | 1 | print TAS configuration. 0 to be quiet | 1 | +| WM | m | Width of monochromator | 0.18 | +| HM | m | Height of monochromator | 0.20 | +| RMH | m | Monochromator horizontal curvature, 0 for flat, -1 for automatic setting | -1 | +| RMV | m | Monochromator vertical curvature, 0 for flat, -1 for automatic setting | -1 | +| DM | Angs | Monochromator d-spacing | 1.278 | +| NHM | 1 | Number of horizontal slabs composing the monochromator | 15 | +| NVM | 1 | Number of vertical slabs composing the monochromator | 15 | +| WA | m | Width of analyzer | 0.16 | +| HA | m | Height of analyzer | 0.12 | +| RAH | m | Analyzer horizontal curvature, 0 for flat, -1 for automatic setting | -1 | +| RAV | m | Analyzer vertical curvature, 0 for flat, -1 for automatic setting | -1 | +| DA | Angs | Analyzer d-spacing | 1.278 | +| NHA | 1 | Number of horizontal slabs composing the analyzer | 15 | +| NVA | 1 | Number of vertical slabs composing the analyzer | 15 | +| L1 | m | Source-Monochromator distance. Contains 1st Collimator of length 5.34 | 7 | +| ALF1 | arc min | Horizontal collimation from Source to Monochromator | 120 | +| ALF2 | arc min | Horizontal collimation from Monochromator to Sample A | 120 | +| ALF3 | arc min | Horizontal collimation from Sample to Analyzer | 120 | +| ALF4 | arc min | Horizontal collimation from Analyzer to Detector | 120 | +| BET1 | arc min | Vertical collimation from Source to Monochromator | 120 | +| BET2 | arc min | Vertical collimation from Monochromator to Sample A | 120 | +| BET3 | arc min | Vertical collimation from Sample to Analyzer | 120 | +| BET4 | arc min | Vertical collimation from Analyzer to Detector | 120 | + +## Links + +- [Source code](ILL_H8_IN1.instr) for `ILL_H8_IN1.instr`. +- [Additional information](ILL_H8_IN1.instr.md) +- Rescal for Matlab at http://www.ill.eu/instruments-support/computing-for-science/cs-software/all-software/matlab-ill/ +- Restrax at http://omega.ujf.cas.cz/restrax/ + +--- + +*Generated for mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/examples/ILL/ILL_IN13/README.md b/mcstas-comps/examples/ILL/ILL_IN13/README.md new file mode 100644 index 000000000..2367ad194 --- /dev/null +++ b/mcstas-comps/examples/ILL/ILL_IN13/README.md @@ -0,0 +1,93 @@ +# The `ILL_IN13` Instrument + +*McStas: IN13 Thermal neutron backscattering spectrometer (without guide)* + +## Identification + +- **Site:** ILL +- **Author:** E. Farhi and A. Dennison +- **Origin:** ILL +- **Date:** March 25, 2015 + +## Description + +```text +IN13 Thermal neutron backscattering spectrometer (without guide) + +Because of its high energy resolution and high momentum transfer the +backscattering spectrometer IN13 is particularly useful for the microscopic +study of single particle motions (jump reorientation, rotational and +translational diffusion, tunnelling) observed by incoherent neutron scattering. + +The high energy resolution of the order of a few μeV together with the +availability of high momentum transfer (Q<4.9 Å-1) makes the spectrometer IN13 +particularly useful for the microscopic study of single particle motions (jump +reorientation, rotational and translational diffusion, tunnelling) observed by +incoherent neutron scattering. The instrument partly fills the gap of (Q, ω) +space between IN10 and IN5. + +Temperature gradient monochromator +The monochromator and analyser CaF2(422) crystals are oriented in near +backscattering geometry thereby achieving an energy resolution of a few μeV. The +energy of the incident neutrons is scanned by variation of the temperature of +the monochromator at a fixed Bragg-angle. In an optional mode the 10 mm thick +monochromator crystals are kept at a fixed temperature gradient and energy +variation is performed by scanning the monochromator Bragg-angle. This achieves +an increased flux at the sample position and slightly increases the energy +resolution width. + +A vertically curved Graphite deflector focusses the beam onto +the sample. The scattered neutrons are energy analysed by a set of seven +spherically curved composite crystal analysers, each covering a large solid +angle of 0.18 sr. An additional three circular analysers centred around the +transmitted beam cover the small-angle region. + +The neutron time-of-flight is used to suppress (i) the background of neutrons +scattered directly from the sample into the detectors and (ii) second order +contamination. The neutrons are counted with a cylindrical multidetector +consisting of 35 3He detector tubes, arranged in staggered circular rows. The +small Q range from 0.2 to 0.8 Å-1 is covered by a 3He Position Sensitive +Detector (PSD) arranged to see the circular analysers in exact backscattering. + +Monochromator: CaF2(422) +temperature range: -125 < ΔE/µeV < 150 +angular range: 81° < θM < 89° +incident energy: 16.45 meV (TM≥25°C) +incident wavelength: 2.23 Å +energy resolution: 8 µeV + +Deflector: PG(002) + +Sample: here incoherent elastic scatterer (Vanadium) +sample size 3.5 x 3.5 cm2 +flux at sample 2e4 n cm-2 s-1 (when fed from H24, NOT in this model) + +Analyser: CaF2(422) +Q-range: 0.2 < Q/Å-1 < 4.9 +Q-resolution: ΔQ/Å-1 < 0.1 +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| RMV | m | monochromator vertical curvature. Use 0=flat, -1=auto. | 0 | +| RDV | m | deflector vertical curvature. Use 0=flat, -1=auto. | 4.6 | +| RDH | m | deflector horizontal curvature. Use 0=flat, -1=auto. | 0 | +| TM | K | monochromator temperature, from 77 to 500 K | 301 | +| LMD | m | monochromator-deflector distance | 1.8 | +| mos_ana | arcmin | analyser mosaic | 2 | +| CaF2mos | arcmin | monochromator mosaic | 10 | +| gW | | | 0.030 | + +## Links + +- [Source code](ILL_IN13.instr) for `ILL_IN13.instr`. +- [Additional information](ILL_IN13.instr.md) +- The IN3 TAS at the ILL + +--- + +*Generated for mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/examples/ILL/ILL_IN4/README.md b/mcstas-comps/examples/ILL/ILL_IN4/README.md new file mode 100644 index 000000000..47c7ffa3a --- /dev/null +++ b/mcstas-comps/examples/ILL/ILL_IN4/README.md @@ -0,0 +1,94 @@ +# The `ILL_IN4` Instrument + +*McStas: The IN4 thermal Time-of-Flight spectrometer at the ILL (H12 tube).* + +## Identification + +- **Site:** ILL +- **Author:** Emmanuel Farhi +- **Origin:** ILL (France) +- **Date:** March 5th 2015. + +## Description + +```text +IN4C is a high-flux time-of-flight spectrometer used for the study of excitations +in condensed matter. It works in the thermal neutron energy range (10-100 meV). + +Primary spectrometer + +The main components of the beam conditioning part are the two background +choppers, the double curvature mono-chromator with four faces and the Fermi +chopper. The background choppers are rapidly pulsating beam shutters which act +as a low-pass filter. Thus they eliminate from the beam most of the fast +neutrons and gamma rays that would give background noise in the spectra. The +modular shielding encloses the background choppers in separate compartments in +order to cut off these undesired neutrons as early as possible. A suitable +energy is selected from the thermal neutron spectrum with the crystal +monochromator. The monochromator, an assembly of 55 crystal pieces, +concentrates the divergent incident beam onto a small area at the sample +position. The full use of the available solid angle gives a high incident +flux. The vertical curvature is fixed, and the horizontal +variable curvature of the monochromator is essential in controlling +the time and space focussing conditions for optimal performance (see H. Mutka, +Nucl. Instr. and Meth. A 338 (1994) 144). The Fermi chopper rotates at speeds +of up to 40000 rpm. It transmits short neutron pulses (10 ... 50 µs) to the +sample. The time-of-flight of neutrons between the chopper and the sample (1 +... 5 ms) can be measured by using precise electronic circuitry. +A sapphire (Al2O3) filter can be inserted in the beam to remove the fast neutrons +background. + +Monochromators: +PG 002 DM=3.355 AA (Highly Oriented Pyrolythic Graphite) +PG 004 DM=1.677 AA (used for lambda=1.1) +PG 006 DM=1.118 AA +Cu 220 DM=1.278 AA +Cu 111 DM=2.095 AA +Take-off: 39-65 deg +flux at sample: 5e5 n/s/cm2 (at 1.1 Angs) + +Secondary spectrometer + +The sample environment is designed to accommodate standard +cryostats and furnaces. A radial collimator around the sample position is used +to cut the scattering from the sample environment. The secondary flight-path +is in vacuum to avoid parasitic scattering of the transmitted neutrons. The +detector bank covers scattering angles of up to 120°. In addition to the 3He +detector tubes (length 300 mm, width 30 mm, elliptical section, pressure 6 +bar) a 3He filled multidetector (eight sectors with 12 radial cells each; +outer diameter Phi 60 cm) will allow us to observe forward scattering. The +time-of-flight spectra measured at various angles are further treated in order +to obtain the scattering function S(Q,w) using e.g. LAMP. + +In this model, the sample is a cylindrical liquid/powder/glass scatterer +surrounded by a container and an Al cryostat. +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| lambda | Angs | wavelength | 2.2 | +| dlambda | Angs | wavelength HALF spread at source | 0.1 | +| DM | Angs | monochromator d-spacing | 3.355 | +| ETAM | arcmin | monochromator mosaic FWHM | 35 | +| RMH | m | Monochromator horizontal curvature. Use -1 for auto. | -1 | +| ratio | 1 | Disk Chopper ratio (nu=nu_FC/ratio) | 4 | +| dE | meV | Inelastic energy for time focusing | 0 | +| Sapphire_present | 1 | Flag, when 1 the Al2O3 filter is active | 1 | +| sample_coh | str | Sample coherent dynamic structure factor (.sqw) or NULL | "Dirac2D.sqw" | +| sample_inc | str | Sample incoherent dynamic structure factor (.sqw) or NULL | "NULL" | +| order | 1 | The number of multiple orders at the monochromator | 1 | + +## Links + +- [Source code](ILL_IN4.instr) for `ILL_IN4.instr`. +- [Additional information](ILL_IN4.instr.md) +- H. Mutka, Nucl. Instr. and Meth. A 338 (1994) 144 +- http://www.ill.eu/fr/instruments-support/instruments-groups/instruments/in4c + +--- + +*Generated for mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/examples/ILL/ILL_IN5/README.md b/mcstas-comps/examples/ILL/ILL_IN5/README.md new file mode 100644 index 000000000..7afc30e9f --- /dev/null +++ b/mcstas-comps/examples/ILL/ILL_IN5/README.md @@ -0,0 +1,47 @@ +# The `ILL_IN5` Instrument + +*McStas: The IN5B instrument: chopper system + sample + PSD and tof detector* + +## Identification + +- **Site:** ILL +- **Author:** E. Farhi, J. Ollivier, Celia Castan Guerrero +- **Origin:** ILL +- **Date:** Jan 2004-2009 + +## Description + +```text +The IN5@ILL TOF spectrometer from chopper system to final detector, with sample. +The detector model includes Fe housing and tube cross talk absorbing masks +with angle restriction (neutrons that scatter in Fe in front of a tube and +enter a different tube are absorbed). This model does not include the H16 guide. +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| lambda | AA | mean incident wavelength | 4.5 | +| dlambda | AA | wavelength half width. | 0.05 | +| speed | rpm | chopper speed (60*frequency) | 8500 | +| ratio | 1 | velocity of chopper3 = velocity of chopper1 * ratio | 0.5 | +| housing | string | material used as detector housing. Use 0 or NULL for none. | "Fe.laz" | +| coh | string | sample coherent data file or NULL. Use powder LAZ/LAU or SQW file. | "Y3Fe5O12_YIG.laz" | +| inc | string | sample incoherent Sqw data file or NULL | "NULL" | +| thickness | m | thickness of sample. 0=filled | 0 | +| height | m | height of sample. 0=sphere | 0.025 | +| radius | m | radius of sample (outer). | 0.005 | +| order | 1 | order for scattering in sample. O=all, 1=single | 0 | + +## Links + +- [Source code](ILL_IN5.instr) for `ILL_IN5.instr`. +- [Additional information](ILL_IN5.instr.md) +- The IN5@ILL cold time of flight instrument + +--- + +*Generated for mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/examples/ILL/ILL_IN5_Spots/README.md b/mcstas-comps/examples/ILL/ILL_IN5_Spots/README.md new file mode 100644 index 000000000..06a92f37d --- /dev/null +++ b/mcstas-comps/examples/ILL/ILL_IN5_Spots/README.md @@ -0,0 +1,53 @@ +# The `ILL_IN5_Spots` Instrument + +*McStas: The IN5B instrument: chopper system + sample + PSD and tof detector, with special resolution options. +In this version equipped with the Spot_sample from SNS, useful for resolution considerations.* + +## Identification + +- **Site:** ILL +- **Author:** E. Farhi, J. Ollivier, Celia Castan Guerrero, edits by P. Willendrup +- **Origin:** ILL +- **Date:** September 2018 + +## Description + +```text +The IN5@ILL TOF spectrometer from chopper system to final detector, with sample. +The detector model includes Fe housing and tube cross talk absorbing masks +with angle restriction (neutrons that scatter in Fe in front of a tube and +enter a different tube are absorbed). This model does not include the H16 guide. +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| lambda | AA | mean incident wavelength | 4.5 | +| dlambda | AA | wavelength half width. | 0.05 | +| speed | rpm | chopper speed (60*frequency) | 8500 | +| ratio | 1 | velocity of chopper3 = velocity of chopper1 * ratio | 0.5 | +| housing | string | material used as detector housing. Use 0 or NULL for none. | "Fe.laz" | +| coh | string | sample coherent data file or NULL. Use powder LAZ/LAU or SQW file. | "Y3Fe5O12_YIG.laz" | +| inc | string | sample incoherent Sqw data file or NULL | "NULL" | +| thickness | m | thickness of sample. 0=filled | 0 | +| height | m | height of sample. 0=sphere | 0.025 | +| radius | m | radius of sample (outer). | 0.005 | +| order | 1 | order for scattering in sample. O=all, 1=single | 0 | +| wspot | meV | energy of dirac resolution spots | 1 | +| ttspot | deg | direction of dirac resolution spots | 45 | +| nspots | 1 | number of direc resolution spots | 0 | +| RESO | 1 | flag to indicate constant Q-e dirac grid ala IN4 model | 1 | +| RECALC | 1 | flag to indicate if RESO table needs to be re-caclulated | 0 | + +## Links + +- [Source code](ILL_IN5_Spots.instr) for `ILL_IN5_Spots.instr`. +- [Additional information](ILL_IN5_Spots.instr.md) +- The IN5@ILL cold time of flight instrument + +--- + +*Generated for mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/examples/ILL/ILL_IN6/README.md b/mcstas-comps/examples/ILL/ILL_IN6/README.md new file mode 100644 index 000000000..7e641b491 --- /dev/null +++ b/mcstas-comps/examples/ILL/ILL_IN6/README.md @@ -0,0 +1,81 @@ +# The `ILL_IN6` Instrument + +*McStas: The IN6 Time-of-Flight simulation at the ILL (instrument only).* + +## Identification + +- **Site:** ILL +- **Author:** Emmanuel Farhi +- **Origin:** ILL (France) +- **Date:** 17th Jan 2005. + +## Description + +```text +IN6 is a time focussing time-of-flight spectrometer designed for quasielastic and +inelastic scattering for incident wavelengths in the range of 4 to 6 Angs. + +An intense beam is extracted from the H15 guide by a vertically focussing +monochromator array. It consists of three composite pyrolytic graphite +monochromators using the full height (20 cm) of the guide and focussing the beam +at the sample position. In order to minimise the interference with the +subsequent instruments, the monochromator can deliver only four wavelengths: +4.1; 4.6; 5.1; and 5.9 Angs. The second order reflection from the graphite +monochromator is removed by a beryllium-filter cooled at liquid nitrogen +temperature. +To achieve the time-focussing condition, the beam is pulsed by a Fermi chopper. +It has a small slot length to ensure a good transmission. The normal distance +between the Fermi chopper and the sample is 38 cm. To prevent frame-overlap when +the chopper is rotating faster than 7500 rpm, a suppressor chopper is placed +before the Fermi chopper and rotates in phase with the latter. + +The secondary spectrometer consists first of an evacuated sample area. The +detector bank is entirely covered with detector boxes, thus avoiding the +inconvenience of moving the counters. + +This instrument model contains a cold source a triple monochromator +(using the GROUP), two Fermi Choppers (including one background chopper), a +liquid sample handling coherent and incoherent processes (elastic and inelastic) +with multiple scattering, customized monitors, and the SPLIT mechanism to +improve the statistics. The H15 guide is not described in this model. +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| lambda | Angs | wavelength within 4.14\|4.6\|5.12\|5.92 | 4.14 | +| dlambda | Angs | wavelength HALF spread. default is 0.075 | 0.075 | +| SPEED | rpm | Fermi chopper speed. -1=auto, 0=stopped in open pos. | -1 | +| M1 | coder values | monochromator motor 1 position. -1=auto | -1 | +| M2 | coder values | monochromator motor 2 positinn. -1=auto | -1 | +| M3 | coder values | monochromator motor 3 position. -1=auto | -1 | +| MONITOR | something like time in s | monitor preset | 1 | +| CHA_WIDTH | us | channel width. -1=auto | -1 | +| TOF_DELAY | us | TOF delay. -1=auto | -1 | +| TOF_CHA_RESOL | 1 | number of channels. | 128 | +| ELPEAK | 1 | elastic peak channel. -1=auto | -1 | +| RATIO | 1 | Suppressor speed ratio. -1=no suppressor. | 1 | +| mFC | 1 | super mirror FermiChopper coating m-value | 0 | +| PHASE | deg | Fermi phase w/r/ to Suppressor. -360=auto | -360 | +| Sqw_coh | str | sample coherent S(q,w) file name | "Rb_liq_coh.sqw" | +| Sqw_inc | str | sample incoherent S(q,w) file name | "Rb_liq_inc.sqw" | +| radius | m | outer radius of sample hollow cylinder | 0.01 | +| thickness | m | thickness of sample hollow cylinder | 0.005 | + +## Links + +- [Source code](ILL_IN6.instr) for `ILL_IN6.instr`. +- [Additional information](ILL_IN6.instr.md) +- The IN6@ILL Yellow Pages +- R.Scherm et al, "Another Time of Flight Spectrometer", ILL Report 76S235, 1976 +- R.Scherm, "A high-resolution spectrometer ...", report Jul-295-NP, Kernforschungsanlage Julich, 1965 +- Y.Blanc, "Le spectrometre a temps de vol IN6", ILL Report 83BL21G, 1983 +- K.H.Beckurts et al, Neutron physics, Kernforschungsanlage Karlsruhe, 1964 (p317) +- R.Scherm and T.Springer, "Proposal of a multiple Chopper...", Kernforschungsanlage Julich, 19xx + +--- + +*Generated for mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/examples/ILL/ILL_Lagrange/README.md b/mcstas-comps/examples/ILL/ILL_Lagrange/README.md new file mode 100644 index 000000000..125f905c0 --- /dev/null +++ b/mcstas-comps/examples/ILL/ILL_Lagrange/README.md @@ -0,0 +1,57 @@ +# The `ILL_Lagrange` Instrument + +*McStas: IN1-Lagrange hot neutrons spectrometer for liquids at the ILL.* + +## Identification + +- **Site:** ILL +- **Author:** E. Farhi +- **Origin:** LLB/ILL +- **Date:** 13 Apr 2006 + +## Description + +```text +IN1-Lagrange hot neutrons spectrometer for liquids at the ILL. + +The dedicated liquid and amorphous instrument Lagrange is a spectrometer with +constant final neutron energy, and variable incoming neutron energy. +The analyser is a focusing barrel covered with PG analyser, all focusing to +the detector. The flux is thus very high, and the resolution is that given +buy the PG crystal mocaicity. + +The monochromator take-off angle is 2Theta_M ~ 20-25 deg, variable. The available +monochromators are all vertically focusing, Cu (200) for 0.7 Angs, Cu (220) +for 0.5 Angs. + +Cu 002 DM=1.807 AA +Cu 220 DM=1.278 AA +PG 002 DM=3.355 AA +-------------------------- +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| lambda | Angs | Wavelength at monochromator | 0.897 | +| DM | Angs | d-spacing of monochromator | 1.807 | +| RV | m | Monochromator vertical curvature, 0=flat, -1=automatic | -1 | +| coh | str | File name for sample coherent scattering contribution | "Rb_liq_coh.sqw" | +| inc | str | File name for sample incoherent scattering contribution | "Rb_liq_inc.sqw" | +| L1 | m | Source-Monochromator distance | 6.35 | +| L2 | m | Monochromator-Sample distance | 2.55 | +| L3 | m | Sample-Detector distance | 0.901 | +| verbose | 1 | Print spectrometer configuration. 0 to be quiet | 1 | + +## Links + +- [Source code](ILL_Lagrange.instr) for `ILL_Lagrange.instr`. +- [Additional information](ILL_Lagrange.instr.md) +- The D4 diffractometer at the ILL + +--- + +*Generated for mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/examples/ILL/ILL_SALSA/README.md b/mcstas-comps/examples/ILL/ILL_SALSA/README.md new file mode 100644 index 000000000..2a923e31c --- /dev/null +++ b/mcstas-comps/examples/ILL/ILL_SALSA/README.md @@ -0,0 +1,64 @@ +# The `ILL_SALSA` Instrument + +*McStas: ILL_SALSA instrument* + +## Identification + +- **Site:** ILL +- **Author:** Daniel Lomholt Christensen +- **Origin:** ILL, Grenoble, France +- **Date:** 14:28:08 on January 23, 2024 + +## Description + +```text +ESCRIPTION +SALSA is a instrument developed mainly for measuring residual stress +in a gauge volume defined by its collimators. +The instrument has three possible collimator positions, with three available collimators at each position. +This allows the gauge volumed to be defined in height, width and depth. +The size of the gauge volume is chosen in the collimator parameters. The following values correspond to sizes +in a dictionary format. +The vertical collimator {0: 2mm, 1: 4mm, 2: 10mm} +The horizontal collimator {0: 0.6mm, 1: 2mm, 2: 4mm} +The depth collimator {0: 0.6mm, 1: 2mm, 2: 4mm} + +The instument showcases the Monochromator_bent component, +and the focusing use of the Collimator_radial component. + +Some of the monitors used in this instrument are not actually present in the real instrument. +The only detector that is actually there, is the final monitor. +Furthermore the sample environment is of course variable depending on the sample +in question. +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| lambda_mean | Å | Desired wavelength of neutrons coming off of the monochromator. | 1.66795 | +| lambda_spread | Å | Range over which the neutrons are produced. lambda_mean +- lambda_spread. | 0.0224372 | +| m | 1 | m-value of whole guide coating. 0 absorbing, 1 for Ni, 1.2 for Ni58, 2-4 for SM | 2 | +| mip | 1 | m-value of in-pile guide coating | 2 | +| monochromator_horizontal_radius | m | Radius of the horizontal cylinder the monochromator is bent on. | 2.6 | +| takeoff_angle | deg | Takeoff angle of the instrument | 75.8 | +| mono_rotation | deg | Rotation of monochromator in the horizontal plane. Omega angle in SALSA | 37.9 | +| lamellas | 1 | Number of lamellas in the monochromator array | 16 | +| monochromator_slabs | 1 | Number of slabs of lamellas placed on top of each other in the monochromator array | 39 | +| vertical_mono_radius | m | Radius of the cylinder the monochromator is bent on vertically | 2.2 | +| vertical_focus | mm | Choice of collimator focus in mm. Choose either 2, 4, or 10. | 2 | +| horizontal_focus | mm | Choice of collimator focus in mm. Choose either 0.6, 2, or 4. | 0.6 | +| outgoing_focus | mm | Choice of collimator focus in mm. Choose either 0.6, 2, or 4. | 0.6 | +| measuring_angle | deg | Angle between the outgoing collimator and sample. Rotates in the negative direction of revolution. I.E with the clock. | 50 | +| Debug | | | 0 | + +## Links + +- [Source code](ILL_SALSA.instr) for `ILL_SALSA.instr`. +- [Additional information](ILL_SALSA.instr.md) + +--- + +*Generated for mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/examples/ISIS/ISIS_CRISP/README.md b/mcstas-comps/examples/ISIS/ISIS_CRISP/README.md new file mode 100644 index 000000000..c519f43a5 --- /dev/null +++ b/mcstas-comps/examples/ISIS/ISIS_CRISP/README.md @@ -0,0 +1,44 @@ +# The `ISIS_CRISP` Instrument + +*McStas: Model of the ISIS CRISP reflectometer, including the Multilayer_Sample reflectivity sample.* + +## Identification + +- **Site:** ISIS +- **Author:** Robert Dalgliesh +- **Origin:** ISIS (UK) +- **Date:** 2010 + +## Description + +```text +This model of the ISIS CRISP reflectometer demonstrates the use of the Multilayer_Sample component. + +The algorithm of the component requires complex numbers, facilitated by the +GNU Scientific Library (GSL). To link +your the instrument with an installed GSL, you should use MCSTAS_CFLAGS like + +MCSTAS_CFLAGS = -g -O2 -lm -lgsl -lgslcblas +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| glen | | | 1.4 | +| flen | | | 0.4 | +| w1 | | | 0.05 | +| vm | | | 3.0 | +| FRAC | | | 0 | +| sampleconf | | | 0 | + +## Links + +- [Source code](ISIS_CRISP.instr) for `ISIS_CRISP.instr`. +- [Additional information](ISIS_CRISP.instr.md) + +--- + +*Generated for mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/examples/ISIS/ISIS_GEM/README.md b/mcstas-comps/examples/ISIS/ISIS_GEM/README.md new file mode 100644 index 000000000..296ff81bb --- /dev/null +++ b/mcstas-comps/examples/ISIS/ISIS_GEM/README.md @@ -0,0 +1,44 @@ +# The `ISIS_GEM` Instrument + +*McStas: McStas instrument for simulating the GEM diffractometer at ISIS TS1.* + +## Identification + +- **Site:** ISIS +- **Author:** E. Farhi, G. Cuello, M. Tucker +- **Origin:** ISIS +- **Date:** September 20, 2006 + +## Description + +```text +McStas instrument for simulating GEM at ISIS TS1. +The sample is a powder. The detector is simplified as a banana shaped one. + +The General Materials Diffractometer is a new generation neutron diffractometer +recently constructed at the ISIS pulsed neutron source. GEM can be used to +perform high intensity, high resolution experiments to study the structure of +disordered materials and crystalline powders. +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| l_min | AA | Minimum wavelength produced at source | 0.1 | +| l_max | AA | Maximum wavelength produced at source | 4.2 | +| dist | m | Sample-detector distance (detector radius) | 1.3795 | +| sample | string | Reflection list for powder sample | "Y2O3.laz" | + +## Links + +- [Source code](ISIS_GEM.instr) for `ISIS_GEM.instr`. +- [Additional information](ISIS_GEM.instr.md) +- The ESS Instrument workshops website. +- The GEM instrument at ISIS + +--- + +*Generated for mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/examples/ISIS/ISIS_HET/README.md b/mcstas-comps/examples/ISIS/ISIS_HET/README.md new file mode 100644 index 000000000..d1a3db12a --- /dev/null +++ b/mcstas-comps/examples/ISIS/ISIS_HET/README.md @@ -0,0 +1,40 @@ +# The `ISIS_HET` Instrument + +*McStas: HET: High Energy Transfer Chopper Spectrometer* + +## Identification + +- **Site:** ISIS +- **Author:** Dickon Champion +- **Origin:** ISIS (UK) +- **Date:** 22nd Jan 2004. + +## Description + +```text +This instrument is a simple model of the HET spectrometer at the ISIS neutron +facility. The input arguments are hardwired so that the Fermi chopper position +is 10 metres from the moderator. This instrument uses the FC module written by +Andrew Garret which comes with no guarantees as to its accuracy in modelling the +Fermi Chopper. +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| Emin | meV | lowest energy sampled | 443.0 | +| Emax | meV | highest energy sampled | 470.0 | +| nu_chop | Hz | frequency of chopper rotation | 600.0 | +| type | | chopper package - sloppy chopper = 1, B chopper = 2 | 2 | + +## Links + +- [Source code](ISIS_HET.instr) for `ISIS_HET.instr`. +- [Additional information](ISIS_HET.instr.md) + +--- + +*Generated for mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/examples/ISIS/ISIS_IMAT/README.md b/mcstas-comps/examples/ISIS/ISIS_IMAT/README.md new file mode 100644 index 000000000..100311f76 --- /dev/null +++ b/mcstas-comps/examples/ISIS/ISIS_IMAT/README.md @@ -0,0 +1,48 @@ +# The `ISIS_IMAT` Instrument + +*McStas: IMAT: McStas instrument file of the imaging and diffraction parts of the IMAT instrument.* + +## Identification + +- **Site:** ISIS +- **Author:** Genoveva Burca (Genoveva.Burca@stfc.ac.uk) +- **Origin:** ISIS +- **Date:** October 2017 + +## Description + +```text +McStas instrument for simulating the IMAT - imaging and diffraction +New McStas moderator file (G. Skoro, ISIS Facility) was added +\\ISIS\Shares\NeutronicsTeam\TS-2\HydroMod_Upgrade\McStas_TS2_HydroMod_Base_newVirtMod_350mm\Let_Base.mcstas +Components positions were extracted from IMAT final design (March 2016) +Choppers were not added to this model +Diffraction detectors are + +IMPORTANT NOTES: +1. For reference use G. Burca et al., Modelling of an imaging beamline at the ISIS pulsed neutron source, +Journal of Instrumentation, 8 (2013), no 10, http://dx.doi.org/10.1088/1748-0221/8/10/P10001 +2. Results from calculations published in the previous paper were obtained using McStas ISIS_moderator component (Face="W5") +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| l_min | AA | Low wavelength sampled. | 1 | +| l_max | AA | High wavelength sampled. | 10 | +| t_min | t | Low detector time limit. | 0 | +| t_max | t | High detector time limit. | 0.2 | +| theta | deg | Angle that the detector banks are set at. | 90 | + +## Links + +- [Source code](ISIS_IMAT.instr) for `ISIS_IMAT.instr`. +- [Additional information](ISIS_IMAT.instr.md) +- + +--- + +*Generated for mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/examples/ISIS/ISIS_LET/README.md b/mcstas-comps/examples/ISIS/ISIS_LET/README.md new file mode 100644 index 000000000..18a725dc6 --- /dev/null +++ b/mcstas-comps/examples/ISIS/ISIS_LET/README.md @@ -0,0 +1,44 @@ +# The `ISIS_LET` Instrument + +*McStas: LET instrument on ISIS TS2 + +Instrument: ISIS_LET* + +## Identification + +- **Site:** ISIS +- **Author:** Ross Stewart +- **Origin:** ISIS +- **Date:** September 2025 + +## Description + +```text +This is a simulation of LET on ISIS TS2. +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| Ei | meV | Centre energy for moderator | 3.7 | +| dE | | Multiplier for energy spread: Emin = Ei/dE, Emax = Ei*dE | 1.1 | +| Ch3_speed | Hz | Chopper 3 frequency | 100 | +| Ch5_speed | Hz | Chopper 5 frequency | 200 | +| Ch2_phase | mus | Chopper 2 phase setting | 95000 | +| pha_offset | mus | Offset in time for moderator focus | 80e-6 | +| res | string | "HF" - High Flux, "HR" - High Resolution, "I" - Intermediate | "HF" | +| snout | string | "in" or "out" | "out" | +| monitors_on | 1 | Flag to enable/disable TOF monitors in primary optics | 0 | +| movable_monitors | 1 | Flag to enable/disable PSDs and Div monitors in primary optics | 0 | + +## Links + +- [Source code](ISIS_LET.instr) for `ISIS_LET.instr`. +- [Additional information](ISIS_LET.instr.md) + +--- + +*Generated for mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/examples/ISIS/ISIS_MERLIN/README.md b/mcstas-comps/examples/ISIS/ISIS_MERLIN/README.md new file mode 100644 index 000000000..8515e9ecb --- /dev/null +++ b/mcstas-comps/examples/ISIS/ISIS_MERLIN/README.md @@ -0,0 +1,49 @@ +# The `ISIS_MERLIN` Instrument + +*McStas: MERLIN: High count rate, medium energy resolution, direct geometry chopper spectrometer.* + +## Identification + +- **Site:** ISIS +- **Author:** Rob Bewley +- **Origin:** ISIS (UK) +- **Date:** May 2017. + +## Description + +```text +Merlin has been in user operation since 2008. It was designed to be a high intensity, medium energy +resolution spectrometer that would complement the high-resolution MAPS spectrometer, and replace +the HET spectrometer. Merlin's design exploited recent advances in technology with a supermirror +guide to enhance flux, as well as 3 m long position-sensitive detectors in a vacuum, making it +ideal for the study of single crystals. The detector bank covers a massive \pi steradians of solid +angle with an angular range from -45 to 135 degrees in the horizontal plane, and \pm 30 degrees in +the vertical plane. This allows large swathes of Q,\omega space to be accessed in a single run. + +Since 2014, Merlin has been running in event mode, and by using the new Gd chopper combined with a +disk chopper, it is able to run in repetition-rate multiplication (RRM) mode, allowing users to +simultaneously measure with several incident energies. +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| E_min | meV | lowest energy sampled [meV] | 1.0 | +| E_max | meV | highest energy sampled [meV] | 2000.0 | +| m | float | m value of guides | 3.0 | +| E_foc | meV | energy selected by chopper [meV] | 80.0 | +| nu_hz | Hz | frequency of chopper rotation [Hz] | 200.0 | +| type | int | chopper package selected sloppy chopper = 1, B chopper = 2, Gd chopper = 3 | 3 | + +## Links + +- [Source code](ISIS_MERLIN.instr) for `ISIS_MERLIN.instr`. +- [Additional information](ISIS_MERLIN.instr.md) +- http://www.isis.stfc.ac.uk/instruments/merlin + +--- + +*Generated for mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/examples/ISIS/ISIS_OSIRIS/README.md b/mcstas-comps/examples/ISIS/ISIS_OSIRIS/README.md new file mode 100644 index 000000000..c6cdd3178 --- /dev/null +++ b/mcstas-comps/examples/ISIS/ISIS_OSIRIS/README.md @@ -0,0 +1,46 @@ +# The `ISIS_OSIRIS` Instrument + +*McStas: A simulation of the indirect TOF geometry part of the OSIRIS instrument.* + +## Identification + +- **Site:** ISIS +- **Author:** Peter Christiansen with input from Mark Telling, updates by P Willendrup +- **Origin:** DTU Fysik, RISOE and ISIS +- **Date:** November 2015 + +## Description + +```text +If LAMBDA = 0, the choppers are disabled, else the choppers are +centered to chop around this wavelength and the source is studied in the +interval LAMBDA +- DLAMBDA. + +IMPORTANT NOTES: + +1) Monchromator is not realistic in the sense that it does NOT +smear the beam out according to the mosaicity, only does the N=1 +reflection, and the d-spread is handled in a simple way + +2) The instrument is not validated or certified by ISIS. Is only put in +McStas for completeness. +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| LAMBDA | AA | Mean wavelength at source | 6.66 | +| DLAMBDA | AA | Wavelength spread at source | 0.1 | +| GUIDEREFLECTIVITY | 1 | R0-reflectivity of guide | 1.0 | + +## Links + +- [Source code](ISIS_OSIRIS.instr) for `ISIS_OSIRIS.instr`. +- [Additional information](ISIS_OSIRIS.instr.md) + +--- + +*Generated for mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/examples/ISIS/ISIS_Prisma2/README.md b/mcstas-comps/examples/ISIS/ISIS_Prisma2/README.md new file mode 100644 index 000000000..6b43f1e84 --- /dev/null +++ b/mcstas-comps/examples/ISIS/ISIS_Prisma2/README.md @@ -0,0 +1,51 @@ +# The `ISIS_Prisma2` Instrument + +*McStas: Simple simulation of PRISMA2 with RITA-style analyser backend.* + +## Identification + +- **Site:** ISIS +- **Author:** Kristian Nielsen and Mark Hagen +- **Origin:** ISIS/Risoe +- **Date:** August 1998. + +## Description + +```text +Demonstrates how the standard components from the component library +may be easily modified for special purposes; in this case to have +the individual analyser blades paint a "color" on the neutrons to +differentiate them in the detector. + +Output is in the file "prisma2.tof". The format is ASCII; each +line consists of the time-of-flight in microseconds followed by seven +intensities of neutrons from each individual analyser blade. +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| TT | deg | Take-off angle at the sample position, aka A4 | -30 | +| PHA | deg | Analyzer group rotation angle, aka A5 | 22 | +| PHA1 | deg | Analyzer 1 tilt angle | -3 | +| PHA2 | deg | Analyzer 2 tilt angle | -2 | +| PHA3 | deg | Analyzer 3 tilt angle | -1 | +| PHA4 | deg | Analyzer 4 tilt angle | 0 | +| PHA5 | deg | Analyzer 5 tilt angle | 1 | +| PHA6 | deg | Analyzer 6 tilt angle | 2 | +| PHA7 | deg | Analyzer 7 tilt angle | 3 | +| TTA | deg | Take-off angle at the analyzer position, aka A6 | 4 | + +## Links + +- [Source code](ISIS_Prisma2.instr) for `ISIS_Prisma2.instr`. +- [Additional information](ISIS_Prisma2.instr.md) +- The McStas User manual +- PRISMA + +--- + +*Generated for mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/examples/ISIS/ISIS_SANS2d/README.md b/mcstas-comps/examples/ISIS/ISIS_SANS2d/README.md new file mode 100644 index 000000000..d7b6cdcff --- /dev/null +++ b/mcstas-comps/examples/ISIS/ISIS_SANS2d/README.md @@ -0,0 +1,55 @@ +# The `ISIS_SANS2d` Instrument + +*McStas: This instrument models the ISIS TS2 SANS2d instrument.* + +## Identification + +- **Site:** ISIS +- **Author:** Richard Heenan with edits by Peter Willendrup +- **Origin:** ISIS, DTU Fysik +- **Date:** 2014 + +## Description + +```text +This instrument models the ISIS TS2 SANS2d instrument up to the sample position. + +From the author: +

    IMPORTANT: The instrument model does not currently include a correct moderator description +- and the results it produces have not been validated against experimental results. +

    The actual bender is continuously curved, here use straight segments approx.with gravity. +1/7/10 L1=4m increased gap between bender exit and S1 slit from .247 to .286m +At 4m we actually use 1.75 to 16.5 angstrom. +

    Note "2m guides" are actually 1.985m long (new ones will be 1.981m) so "real gaps" are included below, losses are pro-rata the gap/guide lengths. +

    Both rear & front detectors are 980mm square and offset 150 above beam (would only use 100mm with hindsight) +

    Rear detector can be offset -300mm or +269mm sideways. +

    Front detector is closest at approx 1.4m, furthest at approx((read det position) - 1.6m) , offset up to -1200mm sideways +there are 2 baffles between front & rear detector +

    NIMROD (W5) spectrum might better than SANS2d (E2) spectrum for liquid H2 face incurent use. +Stu Ansell's McStas spectra for TS-2 actually have no angle variation included. +In reality spectra and backgrounds will vary, fast background is likely much higher on ZOOM(E1) than SANS2d (E2) +

    RKH 2014 +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| L1 | m | Variable distance from 1st to 2nd variable slit | 3.926 | +| A1w | m | Width of first collimation slit, rectangular slit | 0.030 | +| A1h | m | Height of first collimation slit, rectangular slit | 0.02 | +| S6 | m | Radius of slit S6 (last of the optis slits) | 0.006 | +| A2 | m | Radius of second collimation slit, circular slit | 0.006 | +| Lmin | AA | Minimum wavelength to produce at the source | 1 | +| Lmax | AA | Maximum wavelength to produce at the source | 14 | + +## Links + +- [Source code](ISIS_SANS2d.instr) for `ISIS_SANS2d.instr`. +- [Additional information](ISIS_SANS2d.instr.md) + +--- + +*Generated for mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/examples/ISIS/ISIS_TOSCA_preupgrade/README.md b/mcstas-comps/examples/ISIS/ISIS_TOSCA_preupgrade/README.md new file mode 100644 index 000000000..036e9cbeb --- /dev/null +++ b/mcstas-comps/examples/ISIS/ISIS_TOSCA_preupgrade/README.md @@ -0,0 +1,50 @@ +# The `ISIS_TOSCA_preupgrade` Instrument + +*McStas: TOSCA (pre-upgrade) at ISIS* + +## Identification + +- **Site:** ISIS +- **Author:** Peter Willendrup (DTU/ESS), Sanghamitra Mukhopadhyay (ISIS STFC) +- **Origin:** DTU/ESS/ISIS +- **Date:** September 2018 + +## Description + +```text +The model at hand is adapted from an earlier model by M.Zanetti and represents the +TOSCA instrument as it looked prior to the recent upgrade. The model at hand was +adapted during the MDANSE2018 workshop (http://mdanse2018.essworkshop.org) and by +default uses a model of the incoherent scattering from Benzene, created using +CASTEP (http://www.castep.org ) and converted to Sqw format iFit (http://ifit.mcode.org) + +The model is naturally very challenging to run because of the indirect TOF geometry +and would benefit from an adaptive sampling approach. + +Please use the version with name ISIS_TOSCA_preupgrade_Mantid to generate Mantid-oriented +output. + +Example: ISIS_TOSCA_preupgrade.instr inc=Benzene_inc_CASTEP_MDANSE2018.sqw -n1e7 +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| inc | filename | Incoherent scattering model to use | "Benzene_inc_CASTEP_MDANSE2018.sqw" | +| zdepth | m | Thickness of sample | 0.002 | +| Emin | meV | Minimum energy to generate at the source | 0.01 | +| Emax | meV | Maximum energy to generate at the source | 500 | + +## Links + +- [Source code](ISIS_TOSCA_preupgrade.instr) for `ISIS_TOSCA_preupgrade.instr`. +- [Additional information](ISIS_TOSCA_preupgrade.instr.md) +- TOSCA instrument webpage +- MDANSE 2018 school webpage + +--- + +*Generated for mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/examples/ISIS/ISIS_TS1_Brilliance/README.md b/mcstas-comps/examples/ISIS/ISIS_TS1_Brilliance/README.md new file mode 100644 index 000000000..6face634f --- /dev/null +++ b/mcstas-comps/examples/ISIS/ISIS_TS1_Brilliance/README.md @@ -0,0 +1,37 @@ +# The `ISIS_TS1_Brilliance` Instrument + +*McStas: This instrument produces brilliance curves from the ISIS TS1 facility.* + +## Identification + +- **Site:** ISIS +- **Author:** Peter Willendrup +- **Origin:** DTU Fysik +- **Date:** 20130425 + +## Description + +```text +This instrument produces brilliance curves from the ISIS TS1 facility. + +The Brilliance_monitor is used to determine both the mean and peak brilliances, plus pulse-shapes for different wavelengths. + +Example: ISIS_brilliance Detector: Brillmon_I=3.80e+15 (First detector output) +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| modfile | string | Name of moderator face - TS1=water, ch4, h2, merlin or instrument name eg maps, crisp etc. | "ch4" | + +## Links + +- [Source code](ISIS_TS1_Brilliance.instr) for `ISIS_TS1_Brilliance.instr`. +- [Additional information](ISIS_TS1_Brilliance.instr.md) + +--- + +*Generated for mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/examples/ISIS/ISIS_TS2_Brilliance/README.md b/mcstas-comps/examples/ISIS/ISIS_TS2_Brilliance/README.md new file mode 100644 index 000000000..10d24d5bb --- /dev/null +++ b/mcstas-comps/examples/ISIS/ISIS_TS2_Brilliance/README.md @@ -0,0 +1,37 @@ +# The `ISIS_TS2_Brilliance` Instrument + +*McStas: This instrument produces brilliance curves from the ISIS TS2 facility.* + +## Identification + +- **Site:** ISIS +- **Author:** Peter Willendrup +- **Origin:** DTU Fysik +- **Date:** 20130425 + +## Description + +```text +This instrument produces brilliance curves from the ISIS TS2 facility. + +The Brilliance_monitor is used to determine both the mean and peak brilliances, plus pulse-shapes for different wavelengths. + +Example: ISIS_brilliance Detector: Brillmon_I=3.80e+15 (First detector output) +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| modfile | string | Name of moderator face - TS2=groove,hydrogen,narrow,broad - - TS1=Water,ch4,h2,merlin or instrument name eg maps, crisp etc. | "hydrogen" | + +## Links + +- [Source code](ISIS_TS2_Brilliance.instr) for `ISIS_TS2_Brilliance.instr`. +- [Additional information](ISIS_TS2_Brilliance.instr.md) + +--- + +*Generated for mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/examples/ISIS/ISIS_test/README.md b/mcstas-comps/examples/ISIS/ISIS_test/README.md new file mode 100644 index 000000000..c22035029 --- /dev/null +++ b/mcstas-comps/examples/ISIS/ISIS_test/README.md @@ -0,0 +1,35 @@ +# The `ISIS_test` Instrument + +*McStas: Simple test instrument for the ISIS_moderator component* + +## Identification + +- **Site:** ISIS +- **Author:** Dickon Champion +- **Origin:** ISIS +- **Date:** Aug 2004 + +## Description + +```text +Simple test instrument for the ISIS_moderator component. +Refer to the documentation in MCSTAS/contrib/doc/ISISdoc.pdf (.ps) +for further instructions on using the ISIS_moderator component +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| + +## Links + +- [Source code](ISIS_test.instr) for `ISIS_test.instr`. +- [Additional information](ISIS_test.instr.md) +- Written by D. Champion ISIS, Feb 2004 + +--- + +*Generated for mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/examples/ISIS/ViewModISIStest/README.md b/mcstas-comps/examples/ISIS/ViewModISIStest/README.md new file mode 100644 index 000000000..db670a536 --- /dev/null +++ b/mcstas-comps/examples/ISIS/ViewModISIStest/README.md @@ -0,0 +1,36 @@ +# The `ViewModISIS_test` Instrument + +*McStas: Simple test instrument for the ISIS_moderator component* + +## Identification + +- **Site:** ISIS +- **Author:** Dickon Champion +- **Origin:** ISIS +- **Date:** Aug 2004 + +## Description + +```text +Simple test instrument for the ISIS_moderator component. +Refer to the documentation in MCSTAS/contrib/doc/ISISdoc.pdf (.ps) +for further instructions on using the ISIS_moderator component +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| dummy | | Dummy input parameter | 1 | + +## Links + +- [Source code](ViewModISIStest.instr) for `ViewModISIStest.instr`. +- [Additional information](ViewModISIStest.instr.md) +- Written by D. Champion ISIS, Feb 2004 + +--- + +*Generated for mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/examples/LLB/LLB_6T2/README.md b/mcstas-comps/examples/LLB/LLB_6T2/README.md new file mode 100644 index 000000000..c3837d393 --- /dev/null +++ b/mcstas-comps/examples/LLB/LLB_6T2/README.md @@ -0,0 +1,45 @@ +# The `LLB_6T2` Instrument + +*McStas: The 6T2 thermal single crystal diffractometer at the LLB.* + +## Identification + +- **Site:** LLB +- **Author:** Xavier Fabrèges +- **Origin:** LLB (France) +- **Date:** November 5th 2015. + +## Description + +```text +6T2 is a high flux thermal single crystal diffractometer dedicated to the study of +complex magnetic structures in condensed matter. Two monochromators are available. +It works at 0.9 and 2.4AA without polarization and at 1.4AA with incident polarization +(optional FeCo supermirror) and polarization analysis (P//z). + +Monochromators: +PG 002 DM=3.355 AA (Highly Oriented Pyrolythic Graphite) +Cu 220 DM=1.278 AA +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| lambda | Angs | wavelength | 1.0 | +| phi | Deg | sample rotation along the vertical axis | 0 | +| gamma | Deg | in plane detector position | 0 | +| nu | Deg | out of plane detector position | 0 | +| monok | 1 | monochromator to use (0: PG, 1: Cu, 5: test mode) | 0 | +| samp_f | str | LAU file describing sample | "C60.lau" | + +## Links + +- [Source code](LLB_6T2.instr) for `LLB_6T2.instr`. +- [Additional information](LLB_6T2.instr.md) + +--- + +*Generated for mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/examples/Mantid/ILL_H16_IN5_Mantid/README.md b/mcstas-comps/examples/Mantid/ILL_H16_IN5_Mantid/README.md new file mode 100644 index 000000000..fc91c25d9 --- /dev/null +++ b/mcstas-comps/examples/Mantid/ILL_H16_IN5_Mantid/README.md @@ -0,0 +1,57 @@ +# The `ILL_H16_IN5_Mantid` Instrument + +*McStas: The full ILL IN5B ToF spectrometer adapted for use with Mantid-friendly NeXus output.* + +## Identification + +- **Site:** Mantid +- **Author:** E. Farhi, J. Ollivier, Celia Castan Guerrero +- **Origin:** Mantid +- **Date:** Jan 2004-2009 + +## Description + +```text +The full ILL IN5B: H16 guide & chopper system + sample + PSD and tof detector, adapted for +use with Mantid-friendly NeXus output. To compile and run, use these steps: + +

      +
    1. Compile the instrument with NeXus support - zero neutrons: +
        +
      • export MCSTAS_CFLAGS="-g -lm -O2 -DUSE_NEXUS -lNeXus" +
      • mcrun -c -n0 --format=NeXus ILL_H16_IN5_Mantid.instr --no-output-files +
      +
    2. Generate the IDF in XML format using the (Perl) mcdisplay tool: +
        +
      • mcdisplay ILL_H16_IN5_Mantid.instr -n0 --format=Mantid +
      +
    3. Run a simulation with NeXus output +
        +
      • mcrun ILL_H16_IN5_Mantid.instr --format=NeXus +
      +
    + +The IN5@ILL TOF spectrometer from cold source to final detector, with sample. +The detector model includes Fe housing and tube cross talk absorbing masks +with angle restriction (neutrons that scatter in Fe in front of a tube and +enter a different tube are absorbed). +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| lambda | AA | mean incident wavelength | 4.5 | +| dlambda | AA | wavelength half width. Use e.g. 0.8*lambda for white beam. | 0.09 | + +## Links + +- [Source code](ILL_H16_IN5_Mantid.instr) for `ILL_H16_IN5_Mantid.instr`. +- [Additional information](ILL_H16_IN5_Mantid.instr.md) +- The IN5@ILL cold time of flight instrument + +--- + +*Generated for mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/examples/Mantid/ILL_H16_Mantid/README.md b/mcstas-comps/examples/Mantid/ILL_H16_Mantid/README.md new file mode 100644 index 000000000..61ef0a839 --- /dev/null +++ b/mcstas-comps/examples/Mantid/ILL_H16_Mantid/README.md @@ -0,0 +1,38 @@ +# The `ILL_H16_Mantid` Instrument + +*McStas: The ILL H16 cold guide (feeding IN5) for use with mantid* + +## Identification + +- **Site:** Mantid +- **Author:** E. Farhi, J. Ollivier, Celia Castan Guerrero +- **Origin:** ILL +- **Date:** Jan 2004-2009 + +## Description + +```text +The H16@ILL curved guide sending cold neutrons from the VCS to IN5, adapted for +use with Mantid-friendly NeXus output. (See ILL_H16_IN5_Mantid or ILL_IN5_Mantid for details.) + +Example: m=1 Detector: GuideOut_Phic_I=1.85e+10 +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| lambda | AA | mean incident wavelength. | 10 | +| dlambda | AA | wavelength half width. Use e.g. 0.8*lambda for white beam. | 9.9 | +| m | 1 | m-value of whole guide coating. 0 absorbing, 1 for Ni, 1.2 for Ni58, 2-4 for SM | 1 | + +## Links + +- [Source code](ILL_H16_Mantid.instr) for `ILL_H16_Mantid.instr`. +- [Additional information](ILL_H16_Mantid.instr.md) + +--- + +*Generated for mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/examples/Mantid/ILL_IN5_Mantid/README.md b/mcstas-comps/examples/Mantid/ILL_IN5_Mantid/README.md new file mode 100644 index 000000000..23856aef3 --- /dev/null +++ b/mcstas-comps/examples/Mantid/ILL_IN5_Mantid/README.md @@ -0,0 +1,48 @@ +# The `ILL_IN5_Mantid` Instrument + +*McStas: The IN5B instrument: chopper system + sample + PSD and tof detector, adapted for +use with Mantid-friendly NeXus output.* + +## Identification + +- **Site:** Mantid +- **Author:** E. Farhi, J. Ollivier, Celia Castan Guerrero +- **Origin:** ILL +- **Date:** Jan 2004-2009 + +## Description + +```text +The ILL IN5@ILL TOF spectrometer from chopper system to final detector, with sample. +The detector model includes Fe housing and tube cross talk absorbing masks +with angle restriction (neutrons that scatter in Fe in front of a tube and +enter a different tube are absorbed). This model does not include the H16 guide. +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| lambda | AA | mean incident wavelength | 4.5 | +| dlambda | AA | wavelength half width. | 0.05 | +| speed | rpm | chopper speed (60*frequency) | 8500 | +| ratio | 1 | velocity of chopper3 = velocity of chopper1 * ratio | 0.5 | +| housing | string | material used as detector housing. Use 0 or NULL for none. | "Fe.laz" | +| coh | string | sample coherent data file or NULL. Use powder LAZ/LAU or SQW file. | "Y3Fe5O12_YIG.laz" | +| inc | string | sample incoherent Sqw data file or NULL | "NULL" | +| thickness | m | thickness of sample. 0=filled | 0 | +| height | m | height of sample. 0=sphere | 0.025 | +| radius | m | radius of sample (outer). | 0.005 | +| order | 1 | order for scattering in sample. O=all, 1=single | 0 | + +## Links + +- [Source code](ILL_IN5_Mantid.instr) for `ILL_IN5_Mantid.instr`. +- [Additional information](ILL_IN5_Mantid.instr.md) +- The IN5@ILL cold time of flight instrument + +--- + +*Generated for mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/examples/Mantid/ISIS_SANS2d_Mantid/README.md b/mcstas-comps/examples/Mantid/ISIS_SANS2d_Mantid/README.md new file mode 100644 index 000000000..83495434f --- /dev/null +++ b/mcstas-comps/examples/Mantid/ISIS_SANS2d_Mantid/README.md @@ -0,0 +1,56 @@ +# The `ISIS_SANS2d_Mantid` Instrument + +*McStas: This instrument models the ISIS TS2 SANS2d instrument.* + +## Identification + +- **Site:** Mantid +- **Author:** Richard Heenan with edits by Peter Willendrup +- **Origin:** ISIS, DTU Fysik +- **Date:** 2014 + +## Description + +```text +This instrument models the ISIS TS2 SANS2d instrument up to the sample position. + +From the author: +

    IMPORTANT: The instrument model does not currently include a correct moderator description +- and the results it produces have not been validated against experimental results. +

    The actual bender is continuously curved, here use straight segments approx.with gravity. +1/7/10 L1=4m increased gap between bender exit and S1 slit from .247 to .286m +At 4m we actually use 1.75 to 16.5 angstrom. +

    Note "2m guides" are actually 1.985m long (new ones will be 1.981m) so "real gaps" are included below, losses are pro-rata the gap/guide lengths. +

    Both rear & front detectors are 980mm square and offset 150 above beam (would only use 100mm with hindsight) +

    Rear detector can be offset -300mm or +269mm sideways. +

    Front detector is closest at approx 1.4m, furthest at approx((read det position) - 1.6m) , offset up to -1200mm sideways +there are 2 baffles between front & rear detector +

    NIMROD (W5) spectrum might better than SANS2d (E2) spectrum for liquid H2 face incurent use. +Stu Ansell's McStas spectra for TS-2 actually have no angle variation included. +In reality spectra and backgrounds will vary, fast background is likely much higher on ZOOM(E1) than SANS2d (E2) +

    RKH 2014 +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| L1 | m | Variable distance from 1st to 2nd variable slit | 3.926 | +| A1w | m | Width of first collimation slit, rectangular slit | 0.030 | +| A1h | m | Height of first collimation slit, rectangular slit | 0.02 | +| S6 | m | Radius of slit S6 (last of the optis slits) | 0.006 | +| A2 | m | Radius of second collimation slit, circular slit | 0.006 | +| Lmin | AA | Minimum wavelength to produce at the source | 1 | +| Lmax | AA | Maximum wavelength to produce at the source | 14 | +| model_nr | | SANS_benchmark2 SANS sample nr. E.g. 5: sphere(r=50AA), 15: sphere(r=150AA) | 15.0 | + +## Links + +- [Source code](ISIS_SANS2d_Mantid.instr) for `ISIS_SANS2d_Mantid.instr`. +- [Additional information](ISIS_SANS2d_Mantid.instr.md) + +--- + +*Generated for mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/examples/Mantid/ISIS_TOSCA_preupgrade_Mantid/README.md b/mcstas-comps/examples/Mantid/ISIS_TOSCA_preupgrade_Mantid/README.md new file mode 100644 index 000000000..cb4d19556 --- /dev/null +++ b/mcstas-comps/examples/Mantid/ISIS_TOSCA_preupgrade_Mantid/README.md @@ -0,0 +1,56 @@ +# The `ISIS_TOSCA_preupgrade_Mantid` Instrument + +*McStas: TOSCA (pre-upgrade) at ISIS with Mantid support.* + +## Identification + +- **Site:** Mantid +- **Author:** Peter Willendrup (DTU/ESS), Sanghamitra Mukhopadhyay (ISIS STFC) +- **Origin:** DTU/ESS/ISIS +- **Date:** September 2018 + +## Description + +```text +The model at hand is adapted from an earlier model by M.Zanetti and represents the +TOSCA instrument as it looked prior to the recent upgrade. The model at hand was +adapted during the MDANSE2018 workshop (http://mdanse2018.essworkshop.org) and by +default uses a model of the incoherent scattering from Benzene, created using +CASTEP (http://www.castep.org ) and converted to Sqw format iFit (http://ifit.mcode.org) + +The model is naturally very challenging to run because of the indirect TOF geometry +and would benefit from an adaptive sampling approach. + +Please follow instructions at https://github.com/mccode-dev/McCode/wiki/McStas-and-Mantid +to compile with NeXus and generate a Mantid-IDF before attempting to use with Mantid. + +To generate the right flightpath length in Mantid, this version of the instrument has +been created with transmitting rather than reflecting analysers, and the detectors are hence +also positioned differently than in the physical instrument. + +Example: ISIS_TOSCA_preupgrade_Mantid.instr inc=Benzene_inc_CASTEP_MDANSE2018.sqw eventmode=1 Detector: Sphere_I=0.686792 +Example: ISIS_TOSCA_preupgrade_Mantid.instr inc=Benzene_inc_CASTEP_MDANSE2018.sqw eventmode=1 --format=NeXus Detector: Sphere_I=0.686792 +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| inc | filename | Incoherent scattering model to use | "Benzene_inc_CASTEP_MDANSE2018.sqw" | +| zdepth | m | Thickness of sample | 0.002 | +| Emin | meV | Minimum energy to generate at the source | 0.01 | +| Emax | meV | Maximum energy to generate at the source | 500 | +| eventmode | boolean | Flag to enable event monitors | 0 | + +## Links + +- [Source code](ISIS_TOSCA_preupgrade_Mantid.instr) for `ISIS_TOSCA_preupgrade_Mantid.instr`. +- [Additional information](ISIS_TOSCA_preupgrade_Mantid.instr.md) +- TOSCA instrument webpage +- MDANSE 2018 school webpage + +--- + +*Generated for mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/examples/Mantid/SNS_ARCS_Mantid/README.md b/mcstas-comps/examples/Mantid/SNS_ARCS_Mantid/README.md new file mode 100644 index 000000000..3c30a758e --- /dev/null +++ b/mcstas-comps/examples/Mantid/SNS_ARCS_Mantid/README.md @@ -0,0 +1,54 @@ +# The `SNS_ARCS_Mantid` Instrument + +*McStas: Model of the ARCS spectrometer from SNS with Mantid support.* + +## Identification + +- **Site:** Mantid +- **Author:** G. Granroth +- **Origin:** SNS +- **Date:** Nov 2014 + +## Description + +```text +When using this ARCS instrument model, please reference +

      +
    • Granroth, G. E. and Abernathy, D. L., "Performance Comparisons of Four Direct Geometry +Spectrometers Planned for Spallation Neutron Source", Proceedings of ICANS-XVI, 289 (2003). +
    • D. L. Abernathy, M. B. Stone, M. J. Loguillo, M. S. Lucas, O. Delaire, X.Tang, J. Y. Y. Lin, and +B. Fultz,"Design and operation of the wide angular-range chopper spectrometer ARCS at the +Spallation Neutron Source", Review of Scientific Instruments, 83 , 015114 (2012)
    +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| filename | | | "source_sct521_bu_17_1.dat" | +| Fermi_nu | Hz | Frequency of the Fermi chopper | 420 | +| T0_nu | Hz | Frequency of the T0 chopper | 90 | +| nrad | m | Radius of the Fermi chopper blades | 0.58 | +| nchans | 1 | Number of channels in the Fermi chopper | 40 | +| Edes | meV | Desired/target energy | 50 | +| Et | meV | Energy transfer of the Spot_sample | 25 | +| ttheta | deg | Scattering angle of the Spot_sample | 25 | +| T0_off | | | 0 | +| sxmin | m | Sample slit horz min value | -0.04 | +| sxmax | m | Sample slit horz max value | 0.04 | +| symin | m | Sample slit vert min value | -0.04 | +| symax | m | Sample slit vert max value | 0.04 | +| run_num | 1 | Virtual source run number (unused at present) | 1 | + +## Links + +- [Source code](SNS_ARCS_Mantid.instr) for `SNS_ARCS_Mantid.instr`. +- [Additional information](SNS_ARCS_Mantid.instr.md) +-
    Granroth, G. E. and Abernathy, D. L., "Performance Comparisons of Four Direct Geometry Spectrometers Planned for Spallation Neutron Source", Proceedings of ICANS-XVI, 289 (2003). +-
    D. L. Abernathy, M. B. Stone, M. J. Loguillo, M. S. Lucas, O. Delaire, X.Tang, J. Y. Y. Lin, and B. Fultz,"Design and operation of the wide angular-range chopper spectrometer ARCS at the Spallation Neutron Source", Review of Scientific Instruments, 83 , 015114 (2012) + +--- + +*Generated for mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/examples/Mantid/Tools_ONION/README.md b/mcstas-comps/examples/Mantid/Tools_ONION/README.md new file mode 100644 index 000000000..00b2dfaa3 --- /dev/null +++ b/mcstas-comps/examples/Mantid/Tools_ONION/README.md @@ -0,0 +1,45 @@ +# The `Tools_ONION` Instrument + +*McStas: Test case for an layered detector shell instrument to provide quick overview of resolution per pixel.* + +## Identification + +- **Site:** Mantid +- **Author:** Thomas Huegle +- **Origin:** ORNL +- **Date:** July 2019 + +## Description + +```text +Test case for an layered detector shell instrument to provide quick overview of resolution per pixel. +Set up to be run in McStas -> Mantid mode, refer to manual for details on execution. +Simulates desired divergence by adjusting moderator size. +Considers only in-plane (xwidth) factors, sets yheight as 1 cm. +For an example on how to analyze the data, see the 'Onion_analyzerScript.py' available at +https://github.com/mccode-dev/McCode-contribution-support-docs/tree/master/McStas/2.6_Onion_tool_T_Huegle + +Acceptable statistics can be achieved by running the simulation with 1E7 neutrons (output file: ~400MB) +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| divergence | degrees | angular divergence of neutrons reaching the sample | 0.4 | +| distance | m | distance between source and sample | 32 | +| filename | | | "source_sct521_bu_08_1.dat" | + +## Links + +- [Source code](Tools_ONION.instr) for `Tools_ONION.instr`. +- [Additional information](Tools_ONION.instr.md) +- "Using an onion like neutron scattering instrument model to quickly optimize design parameters" +- T. Huegle, Nuclear Instruments and Methods in Physics Research Section A, 2019 +- Python script available at https://github.com/mccode-dev/McCode-contribution-support-docs/tree/master/McStas/2.6_Onion_tool_T_Huegle + +--- + +*Generated for mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/examples/Mantid/templateSANS2_Mantid/README.md b/mcstas-comps/examples/Mantid/templateSANS2_Mantid/README.md new file mode 100644 index 000000000..58c755a66 --- /dev/null +++ b/mcstas-comps/examples/Mantid/templateSANS2_Mantid/README.md @@ -0,0 +1,40 @@ +# The `templateSANS2_Mantid` Instrument + +*McStas: Test instrument for the SANS_spheres2 component. No guide / velocity selector.* + +## Identification + +- **Site:** Mantid +- **Author:** Peter Willendrup, Wim G. Bouwman +- **Origin:** DTU +- **Date:** Dec 20190 + +## Description + +```text +Very simple test instrument for the SANS_spheres2 component, derived / simplified from +H. Frielinghaus SANS_benchmark2 +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| lambda | AA | Mean wavelength of neutrons | 6 | +| dlambda | AA | Wavelength spread of neutrons | 0.05 | +| r | AA | Radius of scattering hard spheres | 150 | +| PHI | 1 | Particle volume fraction | 1e-3 | +| Delta_Rho | cm^-2 | Scattering length density | 6e10 | +| frac_dir | 1 | Fraction of statistics for direct beam | 0.03 | +| frac_inc | 1 | Fraction of statistics for incoherent scattering in scattered beam | 0.01 | + +## Links + +- [Source code](templateSANS2_Mantid.instr) for `templateSANS2_Mantid.instr`. +- [Additional information](templateSANS2_Mantid.instr.md) + +--- + +*Generated for mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/examples/Mantid/templateSANS_Mantid/README.md b/mcstas-comps/examples/Mantid/templateSANS_Mantid/README.md new file mode 100644 index 000000000..c4e5911da --- /dev/null +++ b/mcstas-comps/examples/Mantid/templateSANS_Mantid/README.md @@ -0,0 +1,46 @@ +# The `templateSANS_Mantid` Instrument + +*McStas: Test instrument for the Sans_spheres component. No guide / velocity selector +etc. Will be developed further at later time.* + +## Identification + +- **Site:** Mantid +- **Author:** Kim Lefmann +- **Origin:** Risoe +- **Date:** 19th Dec 2003. + +## Description + +```text +Very simple test instrument for the Sans_spheres componen + +Modified to show a proof of concept method for storing a 'Mantid friendly' type of NeXus file. + +Needed steps: +1) Compile your instrument with NeXus library support +2) Generate an IDF using mcdisplay templateSANS_Mantid --format=Mantid -n0 +3) mcrun templateSANS_Mantid -n1e6 --format=NeXus +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| lambda | AA | Mean wavelength of neutrons | 6 | +| dlambda | AA | Wavelength spread of neutrons | 0.05 | +| r | AA | Radius of scattering hard spheres | 150 | +| PHI | 1 | Particle volume fraction | 1e-3 | +| Delta_Rho | fm/AA^3 | Excess scattering length density | 0.6 | +| sigma_abs | barns | Absorption cross section at 2200 m/s | 0.0 | + +## Links + +- [Source code](templateSANS_Mantid.instr) for `templateSANS_Mantid.instr`. +- [Additional information](templateSANS_Mantid.instr.md) + +--- + +*Generated for mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/examples/Mantid/templateSasView_Mantid/README.md b/mcstas-comps/examples/Mantid/templateSasView_Mantid/README.md new file mode 100644 index 000000000..238547886 --- /dev/null +++ b/mcstas-comps/examples/Mantid/templateSasView_Mantid/README.md @@ -0,0 +1,61 @@ +# The `templateSasView_Mantid` Instrument + +*McStas: Test instrument for the SasView_model component generating event data for Mantid. No guide / velocity selector +etc.* + +## Identification + +- **Site:** Mantid +- **Author:** Peter Willendrup and Torben Nielsen +- **Origin:** DTU, European Spallation Source ERIC +- **Date:** 25 Jan 2016 + +## Description + +```text +Very simple test instrument for the SasView_model component. + +Modified to show a proof of concept method for storing a 'Mantid friendly' type of NeXus file. + +Example: model_index=1 Ncount=1e6 par1=4 par2=1 par3=40 par4=20 par5=400 Detector: detector_I=5e6 +Example: model_index=3 Ncount=1e6 par1=220 par2=0.06 par3=40 par4=4 par5=1 Detector: detector_I=3.3e4 +Example: model_index=47 Ncount=1e6 par1=4 par2=2 par3=35 par4=75 par5=400 Detector: detector_I=2.5e6 + +Needed steps (McStas): +1) Compile your instrument with NeXus library and ISO c99 support +2) Generate an IDF using mcdisplay templateSANS_Mantid --format=Mantid -n0 +3) mcrun templateSasView_Mantid -n1e6 --format=NeXus + +Needed steps (Mantid): +a) Load McStas NeXus file +b) Run Mantid algorithm: 'ConvertUnits' using the 'wavelenth' and 'elastic' options +c) Run Mantid algorithm: 'Qxy' using the options 'MaxQxy=0.6', 'DeltaQ=0.003', 'SolidAngleWeighting=False' +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| lambda | AA | Mean wavelength of neutrons | 6 | +| dlambda | AA | Wavelength spread of neutrons | 0.05 | +| model_index | | SASmodels model index (see SasView_model.comp mcdoc page) | 47 | +| par1 | | Slot 1 in SASmodel parameter vector | 0 | +| par2 | | Slot 2 in SASmodel parameter vector | 0 | +| par3 | | Slot 3 in SASmodel parameter vector | 0 | +| par4 | | Slot 4 in SASmodel parameter vector | 0 | +| par5 | | Slot 5 in SASmodel parameter vector | 0 | +| par6 | | Slot 6 in SASmodel parameter vector | 0 | +| par7 | | Slot 7 in SASmodel parameter vector | 0 | +| par8 | | Slot 8 in SASmodel parameter vector | 0 | +| Ncount | | | 0 | + +## Links + +- [Source code](templateSasView_Mantid.instr) for `templateSasView_Mantid.instr`. +- [Additional information](templateSasView_Mantid.instr.md) + +--- + +*Generated for mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/examples/Mantid/templateVanadiumMultipleScat_Mantid/README.md b/mcstas-comps/examples/Mantid/templateVanadiumMultipleScat_Mantid/README.md new file mode 100644 index 000000000..3cb11acee --- /dev/null +++ b/mcstas-comps/examples/Mantid/templateVanadiumMultipleScat_Mantid/README.md @@ -0,0 +1,35 @@ +# The `templateVanadiumMultipleScat_Mantid` Instrument + +*McStas: Instrument demonstrating how to bring multiple scattering information from +a McStas simulation to Mantid (using NeXus output).* + +## Identification + +- **Site:** Mantid +- **Author:** Anders Markvardsen and Peter Willendrup +- **Origin:** ISIS +- **Date:** 201x + +## Description + +```text +Instrument demonstrating how to bring multiple scattering information from +a McStas simulation to Mantid (using NeXus output). +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| + +## Links + +- [Source code](templateVanadiumMultipleScat_Mantid.instr) for `templateVanadiumMultipleScat_Mantid.instr`. +- [Additional information](templateVanadiumMultipleScat_Mantid.instr.md) +- A reference/HTML link for more information + +--- + +*Generated for mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/examples/NCrystal/NCrystal_example/README.md b/mcstas-comps/examples/NCrystal/NCrystal_example/README.md new file mode 100644 index 000000000..7124cbf98 --- /dev/null +++ b/mcstas-comps/examples/NCrystal/NCrystal_example/README.md @@ -0,0 +1,51 @@ +# The `NCrystal_example` Instrument + +*McStas: Example instrument for NCrystal_sample use* + +## Identification + +- **Site:** NCrystal +- **Author:** T. Kittelmann, X. X. Cai +- **Origin:** ESS +- **Date:** 2015 + +## Description + +```text +Steady-state source diffractometer with (Ge-511) monochromator and powder-sample via NCrystal + + +This file is originally part of NCrystal (see https://mctools.github.io/ncrystal/) + +Copyright 2015-2022 NCrystal developers + +Licensed under the Apache License, Version 2.0 (the "License"); +you may not use this file except in compliance with the License. +You may obtain a copy of the License at + +http://www.apache.org/licenses/LICENSE-2.0 + +Unless required by applicable law or agreed to in writing, software +distributed under the License is distributed on an "AS IS" BASIS, +WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +See the License for the specific language governing permissions and +limitations under the License. +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| sample_cfg | string | Material string for the sample. | "Y2O3_sg206_Yttrium_Oxide.ncmat;density=0.9x" | + +## Links + +- [Source code](NCrystal_example.instr) for `NCrystal_example.instr`. +- [Additional information](NCrystal_example.instr.md) +- https://github.com/mctools/ncrystal/wiki/ + +--- + +*Generated for mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/examples/NCrystal/Union_NCrystal_example/README.md b/mcstas-comps/examples/NCrystal/Union_NCrystal_example/README.md new file mode 100644 index 000000000..bfb6007b7 --- /dev/null +++ b/mcstas-comps/examples/NCrystal/Union_NCrystal_example/README.md @@ -0,0 +1,36 @@ +# The `Union_NCrystal_example` Instrument + +*McStas: Example instrument for use of NCrystal in Union.* + +## Identification + +- **Site:** NCrystal +- **Author:** T. Kittelmann, X. X. Cai, Mads Bertelsen +- **Origin:** ESS +- **Date:** 2020 + +## Description + +```text +This instrument examplifies how NCrystal may be used in Union +constructions. It is adopted from NCrystal_example.instr where both +monochromator and samples are described via NCrystal_sample components. Here, +they are both described via Union components. +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| + +## Links + +- [Source code](Union_NCrystal_example.instr) for `Union_NCrystal_example.instr`. +- [Additional information](Union_NCrystal_example.instr.md) +- https://github.com/mctools/ncrystal/wiki/ + +--- + +*Generated for mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/examples/NCrystal/Union_NCrystal_mix_example/README.md b/mcstas-comps/examples/NCrystal/Union_NCrystal_mix_example/README.md new file mode 100644 index 000000000..c9c123c68 --- /dev/null +++ b/mcstas-comps/examples/NCrystal/Union_NCrystal_mix_example/README.md @@ -0,0 +1,37 @@ +# The `Union_NCrystal_mix_example` Instrument + +*McStas: Example instrument for use of NCrystal_sample as well as NCrystal in Union* + +## Identification + +- **Site:** NCrystal +- **Author:** T. Kittelmann, X. X. Cai, Mads Bertelsen +- **Origin:** ESS +- **Date:** 2020 + +## Description + +```text +This instrument examplifies how NCrystal may be used in Union +constructions. It is adopted from NCrystal_example.instr where both +monochromator and samples are described via NCrystal_sample components. Here, +the monochromator is described via a Union components, but the sample is still +an NCrystal_sample component. +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| + +## Links + +- [Source code](Union_NCrystal_mix_example.instr) for `Union_NCrystal_mix_example.instr`. +- [Additional information](Union_NCrystal_mix_example.instr.md) +- https://github.com/mctools/ncrystal/wiki/ + +--- + +*Generated for mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/examples/Necsa/SAFARI_MPISI/README.md b/mcstas-comps/examples/Necsa/SAFARI_MPISI/README.md new file mode 100644 index 000000000..055d6d571 --- /dev/null +++ b/mcstas-comps/examples/Necsa/SAFARI_MPISI/README.md @@ -0,0 +1,65 @@ +# The `SAFARI_MPISI` Instrument + +*McStas: Materials Probe for Internal Strain Investigations* + +## Identification + +- **Site:** Necsa +- **Author:** Deon Marais (deon.marais@necsa.co.za) +- **Origin:** Necsa +- **Date:** September 2013 + +## Description + +```text +Necsa Neutron Strain Scanner located at beam port 5 of the SAFARI-1 research reactor, South Africa +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| source_lam_min | Angs | Minimum wavelenth of source | 0.5 | +| source_lam_max | Angs | Maximum wavelenth of source | 2.0 | +| hi_res | | Selects hi-resolution(1) or hi-intensity(0) reactor beam through primary shutter | 0 | +| mono_Si_type | | Monochromator Silicon type options: 422 400 311 511 111 331 | 311 | +| mono_mosh | arc min | Monochromator horizontal mosaicity | 30 | +| mono_mosv | arc min | Monochromator vertical mosaicity | 30 | +| mono_dx | m | Monochromator delta x - positive to left of reactor beam | 0 | +| mono_dy | m | Monochromator delta y - positive upward of reactor beam | 0 | +| mono_dz | m | Monochromator delta z - positive along reactor beam | 0 | +| mono_takeoff | deg | Monochromator takeoff angle - positive anti-clockwise from reactor beam | -83.5 | +| mono_dtilt | deg | Monochromator tilt angle - not implemented yet | 0 | +| mono_Rh | m | Monochromator horizontal focus radius | 3.572 | +| port_takeoff | deg | Port takeoff angle - positive anti clockwise from reactor beam | -83.5 | +| chamber_window_rad | m | Chamber window radius. If this is 0, there is no window | 0.05534 | +| inc_slit_rot | deg | Incident slit delta rotation - not implemented yet | 0 | +| inc_slit_dx | m | Incident slit delta x position - positive to left of incident beam | 0 | +| inc_slit_to_cor | m | Incident slit to sample stage center of rotation | 0.005 | +| inc_slit_width | m | Incident slit width 0.00013m to 0.005m | 0.005 | +| inc_slit_height | m | Incident slit height 0m to 0.02m | 0.02 | +| inc_slit_sep | | Incident slit separation between width and height. <0:use emperical calc, >=0:distance in m | -1 | +| mono_to_cor | m | Distance between monochromator and center of rotation | 2.5 | +| sample_dx | m | Sample delta x - positive to left of incident beam if sample_dom=0 | 0 | +| sample_dy | m | Sample delta y - positive upword of incident beam | 0 | +| sample_dz | m | Sample delta x - positive along of incident beam if sample_dom=0 | 0 | +| sample_dom | deg | Sample delta omega - positive anti-clockwise from incident beam | 0 | +| det_takeoff | deg | Detector takeoff angle - positive anti-clockwise from incident beam | 90 | +| cor_to_det | m | Distance between sample centre of rotation and detector | 1.148 | +| diff_slit_dx | m | Diffracted slit delta x position - positive to left of diffracted beam | 0 | +| diff_slit_to_cor | deg | Distance between centre of rotation and diffracted slit | 0.005 | +| diff_slit_width | m | Diffracted slit width | 0.005 | +| diff_slit_height | m | Diffracted slit height | 0.02 | +| full_instrument | | When 1, simulates the complete instrument. When 0, only simulate from the outlet collimator | 1 | + +## Links + +- [Source code](SAFARI_MPISI.instr) for `SAFARI_MPISI.instr`. +- [Additional information](SAFARI_MPISI.instr.md) +- The South African Nuclear Energy Corporation website + +--- + +*Generated for mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/examples/Necsa/SAFARI_PITSI/README.md b/mcstas-comps/examples/Necsa/SAFARI_PITSI/README.md new file mode 100644 index 000000000..60d317b76 --- /dev/null +++ b/mcstas-comps/examples/Necsa/SAFARI_PITSI/README.md @@ -0,0 +1,62 @@ +# The `SAFARI_PITSI` Instrument + +*McStas: Powder Instrument for Transition in Structure Investigations* + +## Identification + +- **Site:** Necsa +- **Author:** Deon Marais (deon.marais@necsa.co.za) +- **Origin:** Necsa +- **Date:** September 2013 + +## Description + +```text +Necsa Neutron Powder Diffractometer located at beam port 5 of the SAFARI-1 research reactor, South Africa +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| source_lam_min | Angs | Minimum wavelenth of source | 0.5 | +| source_lam_max | Angs | Maximum wavelenth of source | 2.0 | +| hi_res | | Selects hi-resolution(1) or hi-intensity(0) reactor beam through primary shutter | 0 | +| mono_Si_type | | Monochromator Silicon type options: 422 400 311 511 111 331 (Mostly used: 331 and 551) | 551 | +| mono_mosh | arc min | Monochromator horizontal mosaicity | 30 | +| mono_mosv | arc min | Monochromator vertical mosaicity | 30 | +| mono_dx | m | Monochromator delta x - positive to left of reactor beam | 0 | +| mono_dy | m | Monochromator delta y - positive upward of reactor beam | 0 | +| mono_dz | m | Monochromator delta z - positive along reactor beam | 0 | +| mono_takeoff | deg | Monochromator takeoff angle - positive anti-clockwise from reactor beam | 90.0 | +| mono_dtilt | deg | Monochromator tilt angle - not implemented yet | 0 | +| mono_r_h | m | Monochromator horizontal focus radius (min 5.0 m) | 5.0 | +| mono_r_v | m | Monochromator vertical focus radius (min 0.9 m) | 3.572 | +| port_takeoff | deg | Port takeoff angle - positive anti clockwise from reactor beam (70 or 90 deg) | 90.0 | +| inc_slit_rot | deg | Incident slit delta rotation - not implemented yet | 0 | +| inc_slit_dx | m | Incident slit delta x position - positive to left of incident beam | 0 | +| inc_slit_to_cor | m | Incident slit to sample stage center of rotation | 0.01 | +| inc_slit_width | m | Incident slit width 0.00013m to 0.006m | 0.006 | +| inc_slit_height | m | Incident slit height 0m to 0.05m | 0.05 | +| inc_slit_sep | | Incident slit separation between width and height. <0:use emperical calc, >=0:distance in m | 0 | +| mono_to_cor | m | Distance between monochromator and center of rotation | 2.5 | +| sample_dx | m | Sample delta x - positive to left of incident beam if sample_dom=0 | 0 | +| sample_dy | m | Sample delta y - positive upword of incident beam | 0 | +| sample_dz | m | Sample delta x - positive along of incident beam if sample_dom=0 | 0 | +| sample_dom | deg | Sample delta omega - positive anti-clockwise from incident beam | 0 | +| det_takeoff | deg | Detector takeoff angle - positive anti-clockwise from incident beam | -114.375 | +| cor_to_det | m | Distance between sample centre of rotation and detector | 1.179 | +| dangle_interest | deg | Delta angle of interenterest. | 125 | +| full_instrument | | | 1 | + +## Links + +- [Source code](SAFARI_PITSI.instr) for `SAFARI_PITSI.instr`. +- [Additional information](SAFARI_PITSI.instr.md) +- The South African Nuclear Energy Corporation website + +--- + +*Generated for mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/examples/PSI/PSI_DMC/README.md b/mcstas-comps/examples/PSI/PSI_DMC/README.md new file mode 100644 index 000000000..91384613f --- /dev/null +++ b/mcstas-comps/examples/PSI/PSI_DMC/README.md @@ -0,0 +1,49 @@ +# The `PSI_DMC` Instrument + +*McStas: McStas model of the DMC powder diffractometer at PSI, CH.* + +## Identification + +- **Site:** PSI +- **Author:** Peter Willendrup (Risoe), Uwe Filges (PSI), Lukas Keller (PSI) +- **Origin:** PSI +- **Date:** May 7th, 2008 + +## Description + +```text +McStas model of the DMC powder diffractometer at PSI, CH. + +Please note that this instrument file does not include the radial collimator of DMC. +To generate the full 800-bin angle coverage at DMC, you should combine two simulations +using this instrumentfile, with SHIFT=0 and 0.1. This will displace the detector by half +a bin-width, which is a standard procedure at the DMC diffractometer +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| lambda | AA | Choice of wavelength, affects both monochromator and source component | 2.5666 | +| R | 1 | Reflectivity of non-curved guides | 0.87 | +| R_curve | 1 | Reflectivity of curved guides | 0.87 | +| filename | str | Choice of reflection list file, e.g. from McStas data dir | "Na2Ca3Al2F14.laz" | +| D_PHI | deg | Focusing 'd_phi' for PowderN, see mcdoc page | 6 | +| SHIFT | deg | Rotation of detector, set to 0.1 to displace by half a bin | 0 | +| PACK | 1 | Powder packing factor | 0.7 | +| Dw | 1 | Powder Debye-Waller factor | 0.8 | +| BARNS | 1 | Flag to define if powder reflection file \|F2\| is in Barns or fm | 1 | +| SPLITS | | | 58 | + +## Links + +- [Source code](PSI_DMC.instr) for `PSI_DMC.instr`. +- [Additional information](PSI_DMC.instr.md) +- The PSI Monte-Carlo website. +- P Willendrup, U Filges, L Keller, E Farhi, K Lefmann: Validation of a realistic powder sample using data from DMC at PSI, ICNS 2005 (Physica B, 386, (2006), 1032.) + +--- + +*Generated for mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/examples/PSI/PSI_DMC_simple/README.md b/mcstas-comps/examples/PSI/PSI_DMC_simple/README.md new file mode 100644 index 000000000..bc195dd48 --- /dev/null +++ b/mcstas-comps/examples/PSI/PSI_DMC_simple/README.md @@ -0,0 +1,48 @@ +# The `PSI_DMC_simple` Instrument + +*McStas: McStas model of the DMC powder diffractometer at PSI, CH.* + +## Identification + +- **Site:** PSI +- **Author:** Peter Willendrup (Risoe), Uwe Filges (PSI), Lukas Keller (PSI) +- **Origin:** PSI +- **Date:** May 7th, 2008 + +## Description + +```text +McStas model of the DMC powder diffractometer at PSI, CH. + +Please note that this instrument file does not include the radial collimator of DMC. +To generate the full 800-bin angle coverage at DMC, you should combine two simulations +using this instrumentfile, with SHIFT=0 and 0.1. This will displace the detector by half +a bin-width, which is a standard procedure at the DMC diffractometer +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| lambda | AA | Choice of wavelength, affects both monochromator and source component | 2.5666 | +| R | 1 | Reflectivity of non-curved guides | 0.87 | +| R_curve | 1 | Reflectivity of curved guides | 0.87 | +| filename | str | Choice of reflection list file, e.g. from McStas data dir | "Na2Ca3Al2F14.laz" | +| D_PHI | deg | Focusing 'd_phi' for PowderN, see mcdoc page | 6 | +| SHIFT | deg | Rotation of detector, set to 0.1 to displace by half a bin | 0 | +| PACK | 1 | Powder packing factor | 0.7 | +| Dw | 1 | Powder Debye-Waller factor | 0.8 | +| BARNS | 1 | Flag to define if powder reflection file \|F2\| is in Barns or fm | 1 | + +## Links + +- [Source code](PSI_DMC_simple.instr) for `PSI_DMC_simple.instr`. +- [Additional information](PSI_DMC_simple.instr.md) +- The PSI Monte-Carlo website. +- P Willendrup, U Filges, L Keller, E Farhi, K Lefmann: Validation of a realistic powder sample using data from DMC at PSI, ICNS 2005 (Physica B, 386, (2006), 1032.) + +--- + +*Generated for mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/examples/PSI/PSI_Focus/README.md b/mcstas-comps/examples/PSI/PSI_Focus/README.md new file mode 100644 index 000000000..f7eecd44b --- /dev/null +++ b/mcstas-comps/examples/PSI/PSI_Focus/README.md @@ -0,0 +1,36 @@ +# The `PSI_Focus` Instrument + +*McStas: The FOCUS Spectrometer at PSI (Paul Scherrer Institute,Switzerland)* + +## Identification + +- **Site:** PSI +- **Author:** Uwe Filges +- **Origin:** PSI +- **Date:** Jan 2004 + +## Description + +```text +This instrument is a model of the FOCUS Spectrometer at PSI, Villigen, CH. +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| lambda | Angs | source energy | 3.4 | +| chopp_ratio | 1 | Chopper radio Fermi Chopper to Disk Chopper | 1 | +| DET | deg | Detector angle | -69.9 | + +## Links + +- [Source code](PSI_Focus.instr) for `PSI_Focus.instr`. +- [Additional information](PSI_Focus.instr.md) +- Written by U.Filges PSI, Jan 2004 + +--- + +*Generated for mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/examples/PSI/PSI_source/README.md b/mcstas-comps/examples/PSI/PSI_source/README.md new file mode 100644 index 000000000..6fb17f283 --- /dev/null +++ b/mcstas-comps/examples/PSI/PSI_source/README.md @@ -0,0 +1,48 @@ +# The `PSI_source` Instrument + +*McStas: McStas model of the DMC powder diffractometer at PSI, CH.* + +## Identification + +- **Site:** PSI +- **Author:** Peter Willendrup (Risoe), Uwe Filges (PSI), Lukas Keller (PSI) +- **Origin:** PSI +- **Date:** May 7th, 2008 + +## Description + +```text +McStas model of the DMC powder diffractometer at PSI, CH. + +Please note that this instrument file does not include the radial collimator of DMC. +To generate the full 800-bin angle coverage at DMC, you should combine two simulations +using this instrumentfile, with SHIFT=0 and 0.1. This will displace the detector by half +a bin-width, which is a standard procedure at the DMC diffractometer +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| lambda | AA | Choice of wavelength, affects both monochromator and source component | 2.5666 | +| R | 1 | Reflectivity of non-curved guides | 0.87 | +| R_curve | 1 | Reflectivity of curved guides | 0.87 | +| filename | str | Choice of reflection list file, e.g. from McStas data dir | "Na2Ca3Al2F14.laz" | +| D_PHI | deg | Focusing 'd_phi' for PowderN, see mcdoc page | 6 | +| SHIFT | deg | Rotation of detector, set to 0.1 to displace by half a bin | 0 | +| PACK | 1 | Powder packing factor | 0.7 | +| Dw | 1 | Powder Debye-Waller factor | 0.8 | +| BARNS | 1 | Flag to define if powder reflection file \|F2\| is in Barns or fm | 1 | + +## Links + +- [Source code](PSI_source.instr) for `PSI_source.instr`. +- [Additional information](PSI_source.instr.md) +- The PSI Monte-Carlo website. +- P Willendrup, U Filges, L Keller, E Farhi, K Lefmann: Validation of a realistic powder sample using data from DMC at PSI, ICNS 2005 (Physica B, 386, (2006), 1032.) + +--- + +*Generated for mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/examples/PSI/RITA-II/README.md b/mcstas-comps/examples/PSI/RITA-II/README.md new file mode 100644 index 000000000..3fbde95e2 --- /dev/null +++ b/mcstas-comps/examples/PSI/RITA-II/README.md @@ -0,0 +1,153 @@ +# The `RITA_II` Instrument + +*McStas: RITA type triple-axis spectrometer (TAS)* + +## Identification + +- **Site:** PSI +- **Author:** Linda Udby and Peter Willendrup +- **Origin:** Risø (Denmark) +- **Date:** 2012 + +## Description + +```text +This instrument is model of RITA-II at the RNR13 guide at SINQ, PSI as of 2009. The energy and q-resolution as been verified against measured data in 2- and 3-axis modes. See Udby et al., Nuclear Instruments and Methods 634 (2011) s138-.
    +The model is based on the following components in downstream order +
      +
    • The SINQ source in 2009 - tested up to Ei=15 meV versus measurements. The spectrum of genereated rays is controlled by the BPL and BPH parameters.
    • +
    • The RNR13 guide with average m-value based on color-codes on guide pieces and gaps as measured/from technical drawings.
    • +
    • The Druckal monochromator: 5 slabs of PG(002) with vertically focusing option. The horizontal rotation angle (A1) and scattering angle (A2) can either be set by user input or calculated automatically from EI/KI.
    • +
    • Optional filter after the monochromator, before the sample.
    • +
    • Variable linear collimator after the monochromator, before the sample.
    • +
    • Optional perspex attenuation.
    • +
    • Inbound Diaphagm slit.
    • +
    • Sample: Incoherent scatterer, powder or single crystal from reflection list.
    • +
    • Outbound Diaphragm slit.
    • +
    • Optional filter after the sample, with radial collimator.
    • +
    • 9 - blade analyser: Base-rotation (AA5) and individual blade angles (C1-C9) can either be set by user or calculated automatically from EF/KF.
    • +
    • Coarse collimator: Removes cross-talk by allowing only passage of scattered neutrons from specified blade in each channel.
    • +
    • Detector: PSD detector with 100% efficiency and specified point-spread function from measurements.
    • +
    • Windows: Monitors the neutrons in each electronically specified window [XWinMin,XWinMax;YWinMin,YWinMax].
    • +
    +EXAMPLES +
      +
    • Generating a virtual source
    • +mcrun RITA-II.instr -n3e6 BPL=0.97 BPH=1.03 EI=5 EF=5 COLL_MS=40 SAMPLE=1 OUTFILTER=0 REP=10 VIRTUALOUT=1 -d RITA-II_Vsource40
      +
    • Vanadium sample, no filters, seeing 1st-3rd order neutrons
    • +mcrun RITA-II.instr -n3e6 BPL=0.30 BPH=1.03 EI=5 EF=5 SAMPLE=1 INFILTER=0 OUTFILTER=0 REP=10 -d RITA-II_Vanadium
      +
    • Powder sample (default sapphire), simulation 1) through entire instrument or 2)from virtual source 3) in 2-axis mode, with particular slit settings scaling the source yield to 2008 values
    • +1) mcrun RITA-II.instr -n3e6 EF=5 EN=0 SAMPLE=2 COLL_MS=40 SAMPLEFILE="Al2O3_sapphire.lau" BARNS=0 SOURCEFILE="RITA-II_Vsource40/Vin_default.dat" REP=10 -d RITA-II_40_powder
      +2) mcrun RITA-II.instr EI=5 EF=5 SAMPLE=2 SAMPLEFILE="Al2O3_sapphire.lau" BARNS=0 SOURCEFILE="RITA-II_Vsource40/Vin_default.dat" VIRTUALIN=1 REP=3 -d RITA-II_VINsource40_powder
      +3) mcrun RITA-II.instr -n 1e7 ITAR=0.71 COLL_MS=19.6 BPL=0.97 BPH=1.03 EI=5 EF=5 QH=0 QK=0 QL=0 QM=1 A3=0.001 A4=-71 AA5=-90 A6=1e-3 MST=25 MSB=25 MSL=10 MSR=10 SAMPLE=2 SAMPLEFILE="Al2O3_sapphire.lau" SST=25 SSB=25 SSL=10 SSR=10 OUTFILTER=0 OUTFILTERFILE=Be.trm COARSE=1 REP=5 LC=6 RC=4 REP=1 BARNS=0 ANAFORCE=1 -d RITA-II_Al2O3_2axis
      +
    • Single crystal sample. Define first lattice vector (a) along -x (to the right) , second lattice vector (b) along z (forward), third lattice vector (c) along y (up).
    • +mcrun RITA-II.instr -n1e6 BPL=0.97 BPH=1.03 EI=5 EF=5 SAMPLE=3 REP=10 QH=2 QM=0 AS=4.95 BS=4.95 CS=4.95 AAX=-4.95 BBZ=4.95 CCY=4.95 AH=0 AK=1 AL=0 BH=1 BK=0 BL=0 SAMPLEFILE="Pb.laz" -d RITA-II_SXPb200
      +
    • Phonon sample, inelastic scattering, no Bragg peaks in sample
    • +mcrun RITA-II.instr -n1e6 L0=3.418 BPL=0.97 BPH=1.03 EI=7 EF=5 SAMPLE=4 REP=10 QH=2 QK=0.16 QM=0 AS=4.95 BS=4.95 CS=4.95 AAX=-4.95 BBZ=4.95 CCY=4.95 AH=0 AK=1 AL=0 BH=1 BK=0 BL=0 SAMPLEFILE="Pb.laz" -d RITA-II_SXPb200_2meV
      +
    + +Example: BPL=0.97 BPH=1.03 EI=5 EN=0 COLL_MS=40 SAMPLE=1 OUTFILTER=0 REP=10 Detector: psd_detector_I=216.427 +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| ITAR | mA | Relative neutron yield from the spallation target. Value relative to 2009 | 1.0 | +| L0 | Angs | Centre of generated wavelength distribution from source | 4.045 | +| BPL | | Band Pass Low factor, multiplied on source wavelength L0 to allow neutrons with wavelengths with lambda {BPL*L0,BPH*L0} to be traced from the source. | 0.97 | +| BPH | | Band Pass High factor, multiplied on source wavelength L0 to allow neutrons with wavelengths with lambda {BPL*L0,BPH*L0} to be traced from the source. | 1.03 | +| MONO_N | 1 | Order of reflection used on mono | 1 | +| MONOFORCE | 1 | If set, monochromator is flat | 0 | +| MONO_MOS_H | min | Monochromator, horizontal mosaicity | 37 | +| MONO_MOS_V | min | Monochromator, vertical mosaicity | 37 | +| EI | meV | Incoming neutron energy. Also used to set range of energy monitors | 0 | +| EF | meV | Outgoing neutron energy. Also used to set range of energy monitors | 0 | +| EN | meV | Energy transferred in crystal | 0 | +| SM | 1 | | 1 | +| SS | 1 | Scattering configuration signs. 'W' is SM=1,SS=-1,SA=1 | -1 | +| SA | 1 | | 1 | +| QH | rlu | Measurement QH position in crystal | 0 | +| QK | rlu | Measurement QK position in crystal | 0 | +| QL | rlu | Measurement QL position in crystal | 0 | +| QM | Angs-1 | Wavevector transferred in sample, use QM=0 if (QH,QK,QL) is specified | 1.8051 | +| AS | Angs | Sample lattice parameter A | 4.95 | +| BS | Angs | Sample lattice parameter B | 4.95 | +| CS | Angs | Sample lattice parameter C | 4.95 | +| AA | deg | Angle between lattice vectors B,C | 90 | +| BB | deg | Angle between lattice vectors C,A | 90 | +| CC | deg | Angle between lattice vectors A,B | 90 | +| AH | rlu | First reciprocal lattice vector in scattering plane, X | 0 | +| AK | rlu | First reciprocal lattice vector in scattering plane, Y | 1 | +| AL | rlu | First reciprocal lattice vector in scattering plane, Z | 0 | +| BH | rlu | Second reciprocal lattice vector in scattering plane, X | 1 | +| BK | rlu | Second reciprocal lattice vector in scattering plane, Y | 0 | +| BL | rlu | Second reciprocal lattice vector in scattering plane, Z | 0 | +| INFILTER | 1 | Flag to indicate if mono-block filter is in or out | 0 | +| INFILTERFILE | string | An input file of wavevector vs transmission to use with incoming filter | "Be.trm" | +| COLL_MS | deg | Primary collimator max divergence | 80 | +| MST | m | Monochromator TOP slit | 40 | +| MSB | m | Monochromator BOTTOM slit | 40 | +| MSL | m | Monochromator LEFT slit | 40 | +| MSR | m | Monochromator RIGHT slit | 40 | +| PTHICK | m | Thickness of perspex attenuator | 1e-3 | +| PERSPEX | 1 | Flag to indicate if perspex attenuator is in or out | 0 | +| SAMPLE | 1 | 1 is incoherent scatterer, 2 is powder, 3 is single crystal. | 1 | +| SAMPLEFILE | string | Name of samplefile (with reflectionlist etc) | "default" | +| MOS | | Isotropic 'mosaicity' of single crystal | 100 | +| DD_D | | spead of lattice parameter | 1e-3 | +| SAMPLESIZE | m | Length, height and width of single crystal sample, or radius and height of phonon sample | 0.01 | +| BARNS | 1 | If set the flag indicates that reflection list structure factors are in units of barns, otherwise fm^2 | 1 | +| AAX | | | -4.95 | +| AAY | | Orientation vector of unit cell, single_crystal | 0 | +| AAZ | | | 0 | +| BBX | | | 0 | +| BBY | | Orientation vector of unit cell, single_crystal | 0 | +| BBZ | | | 4.95 | +| CCX | | | 0 | +| CCY | | Orientation vector of unit cell, single_crystal | 4.95 | +| CCZ | | | 0 | +| A1 | deg | Monohromator rotation angle | 0 | +| A2 | deg | Monohromator take-off angle | 0 | +| A3 | deg | Sample rotation angle | 0 | +| A4 | deg | Sample take-off angle | 0 | +| A6 | deg | Analyzer take-off angle | 0 | +| TILT | deg | Tilt angle out of plane of the sample scattering vector out of plane (rotation around z of the A3 arm) | 0 | +| SST | m | Sample TOP slit | 100 | +| SSB | m | Sample BOTTOM slit | 100 | +| SSL | m | Sample LEFT slit | 100 | +| SSR | m | Sample RIGHT slit | 100 | +| OUTFILTER | 1 | Flag to indicate if the outbound filter is in or out | 1 | +| OUTFILTERFILE | string | An input file of wavevector vs transmission to use with outgoing filter | "Be.trm" | +| ANAFORCE | 1 | If set the analyzer is forced flat | 0 | +| AA5 | deg | Analyzer rack rotation angle | 0 | +| C1 | deg | Analyzer blade 1 position | 0 | +| C2 | deg | Analyzer blade 2 position | 0 | +| C3 | deg | Analyzer blade 3 position | 0 | +| C4 | deg | Analyzer blade 4 position | 0 | +| C5 | deg | Analyzer blade 5 position | 0 | +| C6 | deg | Analyzer blade 6 position | 0 | +| C7 | deg | Analyzer blade 7 position | 0 | +| C8 | deg | Analyzer blade 8 position | 0 | +| C9 | deg | Analyzer blade 9 position | 0 | +| COARSE | 1 | Flag to indicate if Detector collimator is in or out | 1 | +| LC | deg | Detector-collimator angle of the leftmost blade | 4 | +| RC | deg | Detector-collimator angle of the rightmost blade | 3 | +| REP | 1 | Repetition factor of virtual_input or Monochromator/Sample/Analyzer SPLITs | 1 | +| VIRTUALOUT | 1 | If set, flag indicates that a Virtual source is created after the monochromator collimator | 0 | +| VIRTUALIN | 1 | If set, flag to indicates that Virtual source is used after the monochromator collimator | 0 | +| SOURCEFILE | string | Name of file to be used/genereated as virtual input/output | "Vin_default.dat" | +| verbose | 1 | print TAS configuration. 0 to be quiet | 1 | + +## Links + +- [Source code](RITA-II.instr) for `RITA-II.instr`. +- [Additional information](RITA-II.instr.md) +- Rescal for Matlab at http://www.ill.fr/tas/matlab +- Restrax at http://omega.ujf.cas.cz/restrax/ + +--- + +*Generated for mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/examples/Risoe/TAS1_C1/README.md b/mcstas-comps/examples/Risoe/TAS1_C1/README.md new file mode 100644 index 000000000..6253114f1 --- /dev/null +++ b/mcstas-comps/examples/Risoe/TAS1_C1/README.md @@ -0,0 +1,44 @@ +# The `TAS1_C1` Instrument + +*McStas: Example formerly known as linup-1.instr + +The conventional cold-source triple-axis spectrometer TAS1 at Risoe National +Laboratory used as a diffractometer for monochromator rocking curves* + +## Identification + +- **Site:** Risoe +- **Author:** A. Abrahamsen, N. B. Christensen, and E. Lauridsen +- **Origin:** Risoe +- **Date:** 1998 + +## Description + +```text +This instrument is the conventional cold-source triple-axis spectrometer TAS1 +at Risoe National Laboratory. It does not exist anymore, but was used as the +first detailed work performed with the McStas package. +Here it is used as a diffractometer for monochromator rocking curves. The +detector is at the sample position. +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| PHM | deg | Monochromator arm angle, aka A1 | -37.077 | +| TTM | deg | Monochromator take-off angle, aka A2 | -74 | +| C1 | arcmin | C1 collimation | 30 | + +## Links + +- [Source code](TAS1_C1.instr) for `TAS1_C1.instr`. +- [Additional information](TAS1_C1.instr.md) +- The McStas User manual +- A. Abrahamsen, N. B. Christensen, and E. Lauridsen. McStas simulations of the TAS1 spectrometer. Student's report, Niels Bohr Institute, University of Copenhagen, 1998. + +--- + +*Generated for mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/examples/Risoe/TAS1_C1_Tilt/README.md b/mcstas-comps/examples/Risoe/TAS1_C1_Tilt/README.md new file mode 100644 index 000000000..060727e30 --- /dev/null +++ b/mcstas-comps/examples/Risoe/TAS1_C1_Tilt/README.md @@ -0,0 +1,45 @@ +# The `TAS1_C1_Tilt` Instrument + +*McStas: Example formerly known as linup-2.instr + +The conventional cold-source triple-axis spectrometer TAS1 at Risoe National +Laboratory used as a diffractometer for a collimator tilt alignment.* + +## Identification + +- **Site:** Risoe +- **Author:** A. Abrahamsen, N. B. Christensen, and E. Lauridsen +- **Origin:** Risoe +- **Date:** 1998 + +## Description + +```text +This instrument is the conventional cold-source triple-axis spectrometer TAS1 +at Risoe National Laboratory. It does not exist anymore, but was used as the +first detailed work performed with the McStas package. +Here it is used as a diffractometer for a collimator tilt alignment. The +detector is at the sample position and there is no analyzer. +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| PHM | deg | Monochromator arm angle, aka A1 | -37.077 | +| TTM | deg | Monochromator take-off angle, aka A2 | -74 | +| C1 | min | Collimator 1 aperture (mono-sample arm) | 30 | +| OMC1 | deg | Tilt angle of the Collimator 1 | 5.5 | + +## Links + +- [Source code](TAS1_C1_Tilt.instr) for `TAS1_C1_Tilt.instr`. +- [Additional information](TAS1_C1_Tilt.instr.md) +- The McStas User manual +- A. Abrahamsen, N. B. Christensen, and E. Lauridsen. McStas simulations of the TAS1 spectrometer. Student's report, Niels Bohr Institute, University of Copenhagen, 1998. + +--- + +*Generated for mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/examples/Risoe/TAS1_Diff_Powder/README.md b/mcstas-comps/examples/Risoe/TAS1_Diff_Powder/README.md new file mode 100644 index 000000000..24868fa87 --- /dev/null +++ b/mcstas-comps/examples/Risoe/TAS1_Diff_Powder/README.md @@ -0,0 +1,50 @@ +# The `TAS1_Diff_Powder` Instrument + +*McStas: Example formerly known as linup-5.instr + +The conventional cold-source triple-axis spectrometer TAS1 at Risoe National +Laboratory used as a diffractometer for an alignment study with a +powder sample.* + +## Identification + +- **Site:** Risoe +- **Author:** A. Abrahamsen, N. B. Christensen, and E. Lauridsen +- **Origin:** Risoe +- **Date:** 1998 + +## Description + +```text +This instrument is the conventional cold-source triple-axis spectrometer TAS1 +at Risoe National Laboratory. It does not exist anymore, but was used as the +first detailed work performed with the McStas package. +Here it is used as a diffractometer for an alignment study. The +sample is a powder and there is no analyzer. +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| PHM | deg | Monochromator arm angle, aka A1 | -37.077 | +| TTM | deg | Monochromator take-off angle, aka A2 | -74 | +| TT | deg | Take-off angle at the sample position, aka A4 | 33.52 | +| TTA | deg | Take-off angle at the analyzer position, aka A6 | 0 | +| C1 | min | Collimator 1 aperture (mono-sample arm) | 30 | +| OMC1 | deg | Tilt angle of the Collimator 1 | 5.5 | +| C2 | min | Collimator 2 aperture (sample-ana arm) | 28 | +| C3 | min | Collimator 3 aperture (ana-detector arm) | 67 | + +## Links + +- [Source code](TAS1_Diff_Powder.instr) for `TAS1_Diff_Powder.instr`. +- [Additional information](TAS1_Diff_Powder.instr.md) +- The McStas User manual +- A. Abrahamsen, N. B. Christensen, and E. Lauridsen. McStas simulations of the TAS1 spectrometer. Student's report, Niels Bohr Institute, University of Copenhagen, 1998. + +--- + +*Generated for mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/examples/Risoe/TAS1_Diff_Slit/README.md b/mcstas-comps/examples/Risoe/TAS1_Diff_Slit/README.md new file mode 100644 index 000000000..cb490ffd8 --- /dev/null +++ b/mcstas-comps/examples/Risoe/TAS1_Diff_Slit/README.md @@ -0,0 +1,49 @@ +# The `TAS1_Diff_Slit` Instrument + +*McStas: Example formerly known as linup-3.instr + +The conventional cold-source triple-axis spectrometer TAS1 at Risoe National +Laboratory used as a diffractometer for a collimation alignment study with a +slit sample.* + +## Identification + +- **Site:** Risoe +- **Author:** A. Abrahamsen, N. B. Christensen, and E. Lauridsen +- **Origin:** Risoe +- **Date:** 1998 + +## Description + +```text +This instrument is the conventional cold-source triple-axis spectrometer TAS1 +at Risoe National Laboratory. It does not exist anymore, but was used as the +first detailed work performed with the McStas package. +Here it is used as a diffractometer for a collimation alignment study. The +sample is a slit and there is no analyzer. +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| PHM | deg | Monochromator arm angle, aka A1 | -37.077 | +| TTM | deg | Monochromator take-off angle, aka A2 | -74 | +| TT | deg | Take-off angle at the sample position, aka A4 | 33.52 | +| C1 | min | Collimator 1 aperture (mono-sample arm) | 30 | +| OMC1 | deg | Tilt angle of the Collimator 1 | 5.5 | +| C2 | min | Collimator 2 aperture (sample-ana arm) | 28 | +| C3 | min | Collimator 3 aperture (ana-detector arm) | 67 | + +## Links + +- [Source code](TAS1_Diff_Slit.instr) for `TAS1_Diff_Slit.instr`. +- [Additional information](TAS1_Diff_Slit.instr.md) +- The McStas User manual +- A. Abrahamsen, N. B. Christensen, and E. Lauridsen. McStas simulations of the TAS1 spectrometer. Student's report, Niels Bohr Institute, University of Copenhagen, 1998. + +--- + +*Generated for mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/examples/Risoe/TAS1_Diff_Vana/README.md b/mcstas-comps/examples/Risoe/TAS1_Diff_Vana/README.md new file mode 100644 index 000000000..7c7586b67 --- /dev/null +++ b/mcstas-comps/examples/Risoe/TAS1_Diff_Vana/README.md @@ -0,0 +1,50 @@ +# The `TAS1_Diff_Vana` Instrument + +*McStas: Example formerly known as linup-4.instr + +The conventional cold-source triple-axis spectrometer TAS1 at Risoe National +Laboratory used as a diffractometer for an alignment study with a +vanadium sample.* + +## Identification + +- **Site:** Risoe +- **Author:** A. Abrahamsen, N. B. Christensen, and E. Lauridsen +- **Origin:** Risoe +- **Date:** 1998 + +## Description + +```text +This instrument is the conventional cold-source triple-axis spectrometer TAS1 +at Risoe National Laboratory. It does not exist anymore, but was used as the +first detailed work performed with the McStas package. +Here it is used as a diffractometer for an alignment study. The +sample is a vanadium cylinder and there is no analyzer. +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| PHM | deg | Monochromator arm angle, aka A1 | -37.077 | +| TTM | deg | Monochromator take-off angle, aka A2 | -74 | +| TT | deg | Take-off angle at the sample position, aka A4 | 33.52 | +| TTA | deg | Take-off angle at the analyzer position, aka A6 | 0 | +| C1 | min | Collimator 1 aperture (mono-sample arm) | 30 | +| OMC1 | deg | Tilt angle of the Collimator 1 | 5.5 | +| C2 | min | Collimator 2 aperture (sample-ana arm) | 28 | +| C3 | min | Collimator 3 aperture (ana-detector arm) | 67 | + +## Links + +- [Source code](TAS1_Diff_Vana.instr) for `TAS1_Diff_Vana.instr`. +- [Additional information](TAS1_Diff_Vana.instr.md) +- The McStas User manual +- A. Abrahamsen, N. B. Christensen, and E. Lauridsen. McStas simulations of the TAS1 spectrometer. Student's report, Niels Bohr Institute, University of Copenhagen, 1998. + +--- + +*Generated for mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/examples/Risoe/TAS1_Powder/README.md b/mcstas-comps/examples/Risoe/TAS1_Powder/README.md new file mode 100644 index 000000000..3b9a71846 --- /dev/null +++ b/mcstas-comps/examples/Risoe/TAS1_Powder/README.md @@ -0,0 +1,49 @@ +# The `TAS1_Powder` Instrument + +*McStas: Example formerly known as linup-7.instr + +The conventional cold-source triple-axis spectrometer TAS1 at Risoe National +Laboratory used with a powder sample.* + +## Identification + +- **Site:** Risoe +- **Author:** A. Abrahamsen, N. B. Christensen, and E. Lauridsen +- **Origin:** Risoe +- **Date:** 1998 + +## Description + +```text +This instrument is the conventional cold-source triple-axis spectrometer TAS1 +at Risoe National Laboratory. It does not exist anymore, but was used as the +first detailed work performed with the McStas package. +The sample is a powder and the analyzer is a single plate. +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| PHM | deg | Monochromator rotation angle, aka A1 | -37.077 | +| TTM | deg | Monochromator take-off angle, aka A2 | -74 | +| TT | deg | Take-off angle at the sample position, aka A4 | 33.52 | +| TTA | deg | Take-off angle at the analyzer position, aka A6 | 0 | +| C1 | min | Collimator 1 aperture (mono-sample arm) | 30 | +| OMC1 | deg | Tilt angle of the Collimator 1 | 5.5 | +| C2 | min | Collimator 2 aperture (sample-ana arm) | 28 | +| C3 | min | Collimator 3 aperture (ana-detector arm) | 67 | +| OMA | deg | Analyzer rotation angle, aka A5 | -17.45 | + +## Links + +- [Source code](TAS1_Powder.instr) for `TAS1_Powder.instr`. +- [Additional information](TAS1_Powder.instr.md) +- The McStas User manual +- A. Abrahamsen, N. B. Christensen, and E. Lauridsen. McStas simulations of the TAS1 spectrometer. Student's report, Niels Bohr Institute, University of Copenhagen, 1998. + +--- + +*Generated for mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/examples/Risoe/TAS1_Vana/README.md b/mcstas-comps/examples/Risoe/TAS1_Vana/README.md new file mode 100644 index 000000000..7aaa5dfa1 --- /dev/null +++ b/mcstas-comps/examples/Risoe/TAS1_Vana/README.md @@ -0,0 +1,49 @@ +# The `TAS1_Vana` Instrument + +*McStas: Example formerly known as linup-6.instr + +The conventional cold-source triple-axis spectrometer TAS1 at Risoe National +Laboratory used with a vanadium sample.* + +## Identification + +- **Site:** Risoe +- **Author:** A. Abrahamsen, N. B. Christensen, and E. Lauridsen +- **Origin:** Risoe +- **Date:** 1998 + +## Description + +```text +This instrument is the conventional cold-source triple-axis spectrometer TAS1 +at Risoe National Laboratory. It does not exist anymore, but was used as the +first detailed work performed with the McStas package. +The sample is a vanadium and the analyzer is a single plate. +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| PHM | deg | Monochromator rotation angle, aka A1 | -37.077 | +| TTM | deg | Monochromator take-off angle, aka A2 | -74 | +| TT | deg | Take-off angle at the sample position, aka A4 | 33.52 | +| TTA | deg | Take-off angle at the analyzer position, aka A6 | 0 | +| C1 | min | Collimator 1 aperture (mono-sample arm) | 30 | +| OMC1 | deg | Tilt angle of the Collimator 1 | 5.5 | +| C2 | min | Collimator 2 aperture (sample-ana arm) | 28 | +| C3 | min | Collimator 3 aperture (ana-detector arm) | 67 | +| OMA | deg | Analyzer rotation angle, aka A5 | -17.45 | + +## Links + +- [Source code](TAS1_Vana.instr) for `TAS1_Vana.instr`. +- [Additional information](TAS1_Vana.instr.md) +- The McStas User manual +- A. Abrahamsen, N. B. Christensen, and E. Lauridsen. McStas simulations of the TAS1 spectrometer. Student's report, Niels Bohr Institute, University of Copenhagen, 1998. + +--- + +*Generated for mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/examples/SINE2020/McStas_Isotropic_Sqw/README.md b/mcstas-comps/examples/SINE2020/McStas_Isotropic_Sqw/README.md new file mode 100644 index 000000000..b722b2a97 --- /dev/null +++ b/mcstas-comps/examples/SINE2020/McStas_Isotropic_Sqw/README.md @@ -0,0 +1,62 @@ +# The `McStas_Isotropic_Sqw` Instrument + +*McStas: Wrapper instrument for use of Isotropic_Sqw in SIMRES* + +## Identification + +- **Site:** SINE2020 +- **Author:** Peter Willendrup +- **Origin:** DTU +- **Date:** December 2018 + +## Description + +```text +This instrument provides an MCPL-based interface for the use of Isotropic_Sqw in the SIMRES package. +The instrument has been developed in the context of WP8 in the SINE2020 project and is part of +deliverable D8.8. + +(EU Horizon 2020 research and innovation programme under grant agreement No 654000). + +The default material is liquid Rb as a cylinder of radius 0.01 m x height 0.07 m + +Example: McStas_Isotropic_Sqw Sqw_coh=Rb_liq_coh.sqw Sqw_inc=Rb_liq_inc.sqw radius=0.01 yheight=0.07 +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| Sqw_coh | string | Name of the file containing the values of Q, w and S(Q,w) Coherent part; Q in Angs-1, E in meV, S(q,w) in meV-1. Use 0, NULL or "" to disable. | "Rb_liq_coh.sqw" | +| Sqw_inc | string | Name of the file containing the values of Q, w and S(Q,w). Incoherent (self) part. Use 0, NULL or "" to scatter isotropically (V-like). | "Rb_liq_inc.sqw" | +| geometry | string | Name of an Object File Format (OFF) or PLY file for complex geometry. | "" | +| radius | m | Sample radius | 0.01 | +| xwidth | m | Sample width along x | 0 | +| yheight | m | Sample height along y | 0.07 | +| zdepth | m | Sample depth along z | 0 | +| thickness | m | Thickness of hollow sample Negative value extends the hollow volume outside of the box/cylinder. | 0 | +| threshold | m | Value under which S(Q,w) is not accounted for. to set according to the S(Q,w) values, i.e. not too low. | 1e-20 | +| T | K | Temperature of sample, detailed balance. Use T=0 to disable it. and T=-1 to automatically set it from non-classical S(q,w). | 0 | +| d_phi | deg | Vertical focusing limit [deg] | 0 | +| verbose | 1 | Verbosity level (0:silent, 1:normal, 2:verbose, 3:debug). A verbosity>1 also computes dispersions and S(q,w) analysis. | 1 | +| classical | 1 | Assumes the S(q,w) data from the files is a classical S(q,w), and multiply that data by exp(hw/2kT) on up/down energy sides. Use 0 when obtained from raw experiments, 1 from molecular dynamics. Use -1 to guess from a data set including both energy sides. | -1 | +| powder_barns | 1 | 0 when \|F2\| data in powder file are fm^2, 1 when in barns (barns=1 for laz, barns=0 for lau type files). | 1 | +| quantum_correction | str | Specify the type of quantum correction to use "Boltzmann"/"Schofield","harmonic"/"Bader" or "standard"/"Frommhold" (default) | "standard" | +| norm | 1 | Normalize S(q,w) when -1 (default). Use raw data when 0, multiply S(q,w) when norm>0. | -1 | +| rot_x | deg | Sample rotation around x | 0 | +| rot_y | deg | Sample rotation around y | 0 | +| rot_z | deg | Sample rotation around z | 0 | + +## Links + +- [Source code](McStas_Isotropic_Sqw.instr) for `McStas_Isotropic_Sqw.instr`. +- [Additional information](McStas_Isotropic_Sqw.instr.md) +- Website for the MCPL particle exchange format +- Website for the SIMRES package +- Website for WP8 in EU-SINE2020 + +--- + +*Generated for mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/examples/SINE2020/McStas_PowderN/README.md b/mcstas-comps/examples/SINE2020/McStas_PowderN/README.md new file mode 100644 index 000000000..167b43e6d --- /dev/null +++ b/mcstas-comps/examples/SINE2020/McStas_PowderN/README.md @@ -0,0 +1,59 @@ +# The `McStas_PowderN` Instrument + +*McStas: Wrapper instrument for use of PowderN in SIMRES* + +## Identification + +- **Site:** SINE2020 +- **Author:** Peter Willendrup +- **Origin:** DTU +- **Date:** December 2018 + +## Description + +```text +This instrument provides an MCPL-based interface for the use of PowderN in the SIMRES package. +The instrument has been developed in the context of WP8 in the SINE2020 project and is part of +deliverable D8.8. + +(EU Horizon 2020 research and innovation programme under grant agreement No 654000). + +The default material is Al as a cylinder of radius 0.01 m x height 0.07 m + +Example: McStas_PowderN reflections=Al.lau radius=0.01 yheight=0.07 +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| reflections | string | Input file for reflections, laz and lau formats from McStas accepted | "Al.lau" | +| geometry | string | Name of an Object File Format (OFF) or PLY file for complex geometry. | "" | +| radius | m | Sample radius | 0.01 | +| xwidth | m | Sample width along x | 0 | +| yheight | m | Sample height along y | 0.07 | +| zdepth | m | Sample depth along z | 0 | +| thickness | m | Thickness of hollow sample | 0 | +| pack | m | Packing factor. | 1 | +| d_omega | deg | Horizontal (incoherent only) focusing limit [deg] | 0 | +| d_phi | deg | Vertical focusing limit [deg] | 0 | +| focus_flip | 1 | Controls the sense of d_phi. If 0 d_phi is measured against the xz-plane. If nonzero, d_phi is measured against zy-plane. | 0 | +| tth_sign | 1 | Sign of the scattering angle. If 0, the sign is chosen randomly | 0 | +| barns | 1 | Flag to indicate if \|F 2\| from "reflections" is in barns or fm2 (barns = 1 for laz, barns = 0 for lau type files). | 0 | +| rot_x | deg | Sample rotation around x | 0 | +| rot_y | deg | Sample rotation around y | 0 | +| rot_z | deg | Sample rotation around z | 0 | + +## Links + +- [Source code](McStas_PowderN.instr) for `McStas_PowderN.instr`. +- [Additional information](McStas_PowderN.instr.md) +- Website for the MCPL particle exchange format +- Website for the SIMRES package +- Website for WP8 in EU-SINE2020 + +--- + +*Generated for mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/examples/SINE2020/McStas_Single_crystal/README.md b/mcstas-comps/examples/SINE2020/McStas_Single_crystal/README.md new file mode 100644 index 000000000..2561a1742 --- /dev/null +++ b/mcstas-comps/examples/SINE2020/McStas_Single_crystal/README.md @@ -0,0 +1,59 @@ +# The `McStas_Single_crystal` Instrument + +*McStas: Wrapper for use of Single_crystal in SIMRES* + +## Identification + +- **Site:** SINE2020 +- **Author:** Erik B Knudsen erkn@fysik.dtu.dk +- **Origin:** DTU Physics +- **Date:** Dec. 2018 + +## Description + +```text +This instrument provides an MCPL-based interface for the use of Single_crystal in the SIMRES package. +The instrument has been developed in the context of WP8 in the SINE2020 project and is part of +deliverable D8.8. + +(EU Horizon 2020 research and innovation programme under grant agreement No 654000). + +The default material is Al as a cylinder of radius 0.01 m x height 0.02 m + +Example: McStas_Single_crystal reflections=Al.lau radius=0.01 yheight=0.02 +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| reflections | string | Input file for reflections, laz and lau formats from McStas accepted | "Al.lau" | +| geometry | string | Name of an Object File Format (OFF) or PLY file for complex geometry. | "" | +| radius | m | Sample radius | 1e-2 | +| xwidth | m | Sample width along x | 0 | +| yheight | m | Sample height along y | 2e-2 | +| zdepth | m | Sample depth along z | 0 | +| delta_d_d | 1 | Lattice spacing variance, gaussian RMS | 1e-3 | +| mosaic | arc minutes | Crystal mosaic (isotropic), gaussian RMS. Puts the crystal in the isotropic mosaic model state, thus disregarding other mosaicity parameters. | 1 | +| mosaic_a | arc minutes | Horizontal (rotation around lattice vector a) mosaic (anisotropic), gaussian RMS. Put the crystal in the anisotropic crystal vector state. I.e. model mosaicity through rotation around the crystal lattice vectors. Has precedence over in-plane mosaic model. | 0 | +| mosaic_b | arc minutes | Vertical (rotation around lattice vector b) mosaic (anisotropic), gaussian RMS. | 0 | +| mosaic_c | arc minutes | Out-of-plane (Rotation around lattice vector c) mosaic (anisotropic), gaussian RMS | 0 | +| barns | 1 | Flag to indicate if \|F 2\| from "reflections" is in barns or fm2 (barns = 1 for laz, barns = 0 for lau type files). | 0 | +| order | 1 | Limit multiple scattering up to given order (0: all, 1: first, 2: second, ...) | 0 | +| rot_x | deg | Sample rotation around x | 0 | +| rot_y | deg | Sample rotation around y | 0 | +| rot_z | deg | Sample rotation around z | 0 | + +## Links + +- [Source code](McStas_Single_crystal.instr) for `McStas_Single_crystal.instr`. +- [Additional information](McStas_Single_crystal.instr.md) +- Website for the MCPL particle exchange format +- Website for the SIMRES package +- Website for WP8 in EU-SINE2020 + +--- + +*Generated for mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/examples/SNS/Gallmeier_SNS_decoupled_poisoned/README.md b/mcstas-comps/examples/SNS/Gallmeier_SNS_decoupled_poisoned/README.md new file mode 100644 index 000000000..6f1b06275 --- /dev/null +++ b/mcstas-comps/examples/SNS/Gallmeier_SNS_decoupled_poisoned/README.md @@ -0,0 +1,35 @@ +# The `Gallmeier_SNS_decoupled_poisoned` Instrument + +*McStas: Simple instrumentfile for estimating SNS brilliance, moderator is a the Gallmeier SNS_source_analytic applying Ikeda-Carpenter vs. Pade function fits to MCNPX tables.* + +## Identification + +- **Site:** SNS +- **Author:** Peter Willendrup +- **Origin:** DTU Physics +- **Date:** May 29,2013 + +## Description + +```text +Simple instrumentfile for estimating SNS brilliance, moderator is a the Gallmeier SNS_source_analytic applying Ikeda-Carpenter vs. Pade function fits to MCNPX tables. +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| Lambda_min | AA | Minimum wavelength produced at source | 0.5 | +| Lambda_max | AA | Maximum wavelength produced at source | 20 | +| filename | str | Source input file from $MCSTAS/data | "a1Gw2-2-f5_fit_fit.dat" | + +## Links + +- [Source code](Gallmeier_SNS_decoupled_poisoned.instr) for `Gallmeier_SNS_decoupled_poisoned.instr`. +- [Additional information](Gallmeier_SNS_decoupled_poisoned.instr.md) + +--- + +*Generated for mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/examples/SNS/Granroth_SNS_decoupled_poisoned/README.md b/mcstas-comps/examples/SNS/Granroth_SNS_decoupled_poisoned/README.md new file mode 100644 index 000000000..b6d1bd877 --- /dev/null +++ b/mcstas-comps/examples/SNS/Granroth_SNS_decoupled_poisoned/README.md @@ -0,0 +1,35 @@ +# The `Granroth_SNS_decoupled_poisoned` Instrument + +*McStas: Simple instrumentfile for estimating SNS brilliance, moderator is a the Granroth SNS_source applying linear interpolation in MCNPX tables.* + +## Identification + +- **Site:** SNS +- **Author:** Peter Willendrup +- **Origin:** DTU Physics +- **Date:** May 29,2013 + +## Description + +```text +Simple instrumentfile for estimating SNS brilliance, moderator is a the Granroth SNS_source applying linear interpolation in MCNPX tables. +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| Lambda_min | AA | Minimum wavelength produced at source | 0.5 | +| Lambda_max | AA | Maximum wavelength produced at source | 20 | +| filename | str | Source input file from $MCSTAS/data | "source_sct091_tu_02_1.dat" | + +## Links + +- [Source code](Granroth_SNS_decoupled_poisoned.instr) for `Granroth_SNS_decoupled_poisoned.instr`. +- [Additional information](Granroth_SNS_decoupled_poisoned.instr.md) + +--- + +*Generated for mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/examples/SNS/Mezei_SNS_decoupled_poisoned/README.md b/mcstas-comps/examples/SNS/Mezei_SNS_decoupled_poisoned/README.md new file mode 100644 index 000000000..5b9667fd0 --- /dev/null +++ b/mcstas-comps/examples/SNS/Mezei_SNS_decoupled_poisoned/README.md @@ -0,0 +1,36 @@ +# The `Mezei_SNS_decoupled_poisoned` Instrument + +*McStas: Simple instrumentfile for estimating SNS brilliance, moderator is a rescaled ESS short-pulsed Mezei description.* + +## Identification + +- **Site:** SNS +- **Author:** Peter Willendrup +- **Origin:** DTU Physics +- **Date:** May 2913 + +## Description + +```text +ESCRIPTION + +Simple instrumentfile for estimating SNS brilliance, moderator is a rescaled ESS short-pulsed Mezei description. +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| Lambda_min | AA | Minimum wavelength produced at source | 0.5 | +| Lambda_max | AA | Maximum wavelength produced at source | 20 | + +## Links + +- [Source code](Mezei_SNS_decoupled_poisoned.instr) for `Mezei_SNS_decoupled_poisoned.instr`. +- [Additional information](Mezei_SNS_decoupled_poisoned.instr.md) + +--- + +*Generated for mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/examples/SNS/SNS_ARCS/README.md b/mcstas-comps/examples/SNS/SNS_ARCS/README.md new file mode 100644 index 000000000..5b0f70993 --- /dev/null +++ b/mcstas-comps/examples/SNS/SNS_ARCS/README.md @@ -0,0 +1,54 @@ +# The `SNS_ARCS` Instrument + +*McStas: Model of the ARCS spectrometer from SNS.* + +## Identification + +- **Site:** SNS +- **Author:** G. Granroth +- **Origin:** SNS +- **Date:** Nov 2014 + +## Description + +```text +When using this ARCS instrument model, please reference +
      +
    • Granroth, G. E. and Abernathy, D. L., "Performance Comparisons of Four Direct Geometry +Spectrometers Planned for Spallation Neutron Source", Proceedings of ICANS-XVI, 289 (2003). +
    • D. L. Abernathy, M. B. Stone, M. J. Loguillo, M. S. Lucas, O. Delaire, X.Tang, J. Y. Y. Lin, and +B. Fultz,"Design and operation of the wide angular-range chopper spectrometer ARCS at the +Spallation Neutron Source", Review of Scientific Instruments, 83 , 015114 (2012)
    +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| filename | | | "source_sct521_bu_17_1.dat" | +| Fermi_nu | Hz | Frequency of the Fermi chopper | 420 | +| T0_nu | Hz | Frequency of the T0 chopper | 90 | +| nrad | m | Radius of the Fermi chopper blades | 0.58 | +| nchans | 1 | Number of channels in the Fermi chopper | 40 | +| Edes | meV | Desired/target energy | 50 | +| Et | meV | Energy transfer of the Spot_sample | 25 | +| ttheta | deg | Scattering angle of the Spot_sample | 25 | +| T0_off | | | 0 | +| sxmin | m | Sample slit horz min value | -0.04 | +| sxmax | m | Sample slit horz max value | 0.04 | +| symin | m | Sample slit vert min value | -0.04 | +| symax | m | Sample slit vert max value | 0.04 | +| run_num | 1 | Virtual source run number (unused at present) | 1 | + +## Links + +- [Source code](SNS_ARCS.instr) for `SNS_ARCS.instr`. +- [Additional information](SNS_ARCS.instr.md) +-
    Granroth, G. E. and Abernathy, D. L., "Performance Comparisons of Four Direct Geometry Spectrometers Planned for Spallation Neutron Source", Proceedings of ICANS-XVI, 289 (2003). +-
    D. L. Abernathy, M. B. Stone, M. J. Loguillo, M. S. Lucas, O. Delaire, X.Tang, J. Y. Y. Lin, and B. Fultz,"Design and operation of the wide angular-range chopper spectrometer ARCS at the Spallation Neutron Source", Review of Scientific Instruments, 83 , 015114 (2012) + +--- + +*Generated for mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/examples/SNS/SNS_BASIS/README.md b/mcstas-comps/examples/SNS/SNS_BASIS/README.md new file mode 100644 index 000000000..c38b709a1 --- /dev/null +++ b/mcstas-comps/examples/SNS/SNS_BASIS/README.md @@ -0,0 +1,72 @@ +# The `SNS_BASIS` Instrument + +*McStas: Written by: N.Tsapatsaris (nikolaos.tsapatsaris@esss.se) and Peter K. Wilendrup (pkwi@fysik.dtu.dk)* + +## Identification + +- **Site:** SNS +- **Author:** N.Tsapatsaris (nikolaos.tsapatsaris@esss.se) and Peter K. Wilendrup (pkwi@fysik.dtu.dk) +- **Origin:** NBI +- **Date:** 2013-2015 + +## Description + +```text +ESCRIPTION +The approximative, analytic SNS Source description of this instrument is realised +by use of the ESS_moderator_short model, but weighted due to the opposite moderator +arrangement at the SNS and at the once-planned ESS short pluse facility. The correct +SNS Source File to use with SNS_Source is source_sct091_tu_02_1.dat. + +The instrument serves as a test instrument for the components +Spherical_Backscattering_Analyser, also written by by Niko Tsapatsaris with help from +Peter Willendrup and Guide_m by Niko Tsapatsaris. + +The instrument is based on models initially written by +A) REL (ruep.lechner@gmail.com) and HNB (bordallo@nbi.ku.dk) with contributions +from Johan Jacobsen (johan.fett@gmail.com) +B) G. Granroth + +A virtual experiment on BASIS i.e. a comparison with real and simulation results were +published in AIP conference,DOI: 10.1051/epjconf/20158303015 and RSI, DOI: 10.1063/1.4961569 + +Instrument geometry parameters etc. were taken from the publication: +"A time-of-flight backscattering spectrometer at the Spallation Neutron Source, BASIS" by +Mamontov, E.; Herwig, K. W.; Neutron Scattering Science Division, Oak Ridge National Laboratory, +Oak Ridge, Tennessee 37831, USA, in Review of Scientific Instruments,82(8),085109 - 085109-10, 2011 + +This simulation uses the sample component Isotropic_Sqw. We are using the description for a Vanadium +hollow cylindrical sample. One Arm Component is used to place the Analyser Component at an angle +defined as ROT1. +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| Lam | AA | Wavelength selected by the chopper system | 6.4 | +| Lambda_min | AA | Minimum wavelength produced at the source | 5 | +| Lambda_max | AA | Maximum wavelength produced at the source | 7 | +| RadCurv | m | Radius of Curvature of the guide system | 1000 | +| omega1 | Hz | Frequency of the first DiskChopper | 60 | +| omega2 | Hz | Frequency of the second DiskChopper | 60 | +| omega3 | Hz | Frequency of the third DiskChopper | 60 | +| ch1_open | deg | Angular opening of the first Diskchopper | 51.4 | +| ch2_open | deg | Angular opening of the second Diskchopper | 57.6 | +| ch3_open | deg | Angular opening of the third Diskchopper | 171.1 | +| ROT1 | deg | Positioning of central analyser wrt. the incoming beam, in the scattering plane | 90 | +| AN_ROT | deg | Out-of-plane rotation of analysers wrt. scattering plane | 2 | +| TOTAL_LENGTH | m | Total length of the guide system | 84 | +| dROT | deg | Positioning of neighbouring analysers wrt. central analyser | 11 | + +## Links + +- [Source code](SNS_BASIS.instr) for `SNS_BASIS.instr`. +- [Additional information](SNS_BASIS.instr.md) +- A reference/HTML link for more information + +--- + +*Generated for mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/examples/SNS/SNS_analytic_test/README.md b/mcstas-comps/examples/SNS/SNS_analytic_test/README.md new file mode 100644 index 000000000..1d70598cb --- /dev/null +++ b/mcstas-comps/examples/SNS/SNS_analytic_test/README.md @@ -0,0 +1,37 @@ +# The `SNS_analytic_test` Instrument + +*McStas: Simple test instrument for the SNS_source component.* + +## Identification + +- **Site:** SNS +- **Author:** G. Granroth +- **Origin:** SNS Project Oak Ridge National Laboratory +- **Date:** July 2004 + +## Description + +```text +Simple test instrument for the SNS_source component. +Refer to SNS Source files. +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| filename | string | Source file | "a1Gw2-5-f5_fit_fit.dat" | + +## Links + +- [Source code](SNS_analytic_test.instr) for `SNS_analytic_test.instr`. +- [Additional information](SNS_analytic_test.instr.md) +- Written by G. Granroth +- SNS_source component +- Source files + +--- + +*Generated for mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/examples/SNS/SNS_test/README.md b/mcstas-comps/examples/SNS/SNS_test/README.md new file mode 100644 index 000000000..a91ee4c5a --- /dev/null +++ b/mcstas-comps/examples/SNS/SNS_test/README.md @@ -0,0 +1,37 @@ +# The `SNS_test` Instrument + +*McStas: Simple test instrument for the SNS_source component.* + +## Identification + +- **Site:** SNS +- **Author:** G. Granroth +- **Origin:** SNS Project Oak Ridge National Laboratory +- **Date:** July 2004 + +## Description + +```text +Simple test instrument for the SNS_source component. +Refer to SNS Source files. +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| filename | string | Source input file | "source_sct091_tu_02_1.dat" | + +## Links + +- [Source code](SNS_test.instr) for `SNS_test.instr`. +- [Additional information](SNS_test.instr.md) +- Written by G. Granroth +- SNS_source component +- Source files + +--- + +*Generated for mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/examples/TRIGA/RTP_DIF/README.md b/mcstas-comps/examples/TRIGA/RTP_DIF/README.md new file mode 100644 index 000000000..79c35e58e --- /dev/null +++ b/mcstas-comps/examples/TRIGA/RTP_DIF/README.md @@ -0,0 +1,39 @@ +# The `RTP_DIF` Instrument + +*McStas: A powder diffractometer at Reactor TRIGA PUSPATI (Malaysia)* + +## Identification + +- **Site:** TRIGA +- **Author:** E. Farhi and Megat Harun Al-Rashid +- **Origin:** ILL/RTP +- **Date:** June 2014 + +## Description + +```text + +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| lambda | Angs | Monochromator selected wavelength | 2.36 | +| DM | Angs | d-spacing for the monochromator reflection | 3.355 | +| Mono_tilt | deg | Tilt angle magnitude for the inner/outer mono slabs | 0 | +| powder | str | Filename of the powder sample | "Na2Ca3Al2F14.laz" | +| det_rotation | deg | Rotation of the portable detector | 45 | + +## Links + +- [Source code](RTP_DIF.instr) for `RTP_DIF.instr`. +- [Additional information](RTP_DIF.instr.md) +- Nuclear Malaysia +- M. Sufi et al., J. AppL Cryst. (1997). 30, 884-888 [doi:10.1107/S0021889897001738] + +--- + +*Generated for mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/examples/TRIGA/RTP_Laue/README.md b/mcstas-comps/examples/TRIGA/RTP_Laue/README.md new file mode 100644 index 000000000..abdd6d2dd --- /dev/null +++ b/mcstas-comps/examples/TRIGA/RTP_Laue/README.md @@ -0,0 +1,39 @@ +# The `RTP_Laue` Instrument + +*McStas: The NR instrument installed at Reactor TRIGA PUSPATI (Malaysia)* + +## Identification + +- **Site:** TRIGA +- **Author:** E. Farhi and Megat Harun Al-Rashid +- **Origin:** ILL/RTP +- **Date:** June 2014 + +## Description + +```text +This is a radiography installed on a radial beam port 3 at the Reactor TRIGA +PUSPATI (RTP). It uses a thermal beam port. +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| theta | deg | horizontal rotation of the object | 0 | +| phi | deg | vertical rotation of the object | 0 | +| det_rotation | deg | detector rotation around the sample | 0 | +| reflections | str | sample configuration | "leucine.lau" | + +## Links + +- [Source code](RTP_Laue.instr) for `RTP_Laue.instr`. +- [Additional information](RTP_Laue.instr.md) +- Nuclear Malaysia +- M. Sufi et al., J. AppL Cryst. (1997). 30, 884-888 [doi:10.1107/S0021889897001738] + +--- + +*Generated for mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/examples/TRIGA/RTP_NeutronRadiography/README.md b/mcstas-comps/examples/TRIGA/RTP_NeutronRadiography/README.md new file mode 100644 index 000000000..a98c4cb79 --- /dev/null +++ b/mcstas-comps/examples/TRIGA/RTP_NeutronRadiography/README.md @@ -0,0 +1,38 @@ +# The `RTP_NeutronRadiography` Instrument + +*McStas: The radiography instrument installed at Reactor TRIGA PUSPATI (Malaysia)* + +## Identification + +- **Site:** TRIGA +- **Author:** E. Farhi and Megat Harun Al-Rashid +- **Origin:** ILL/RTP +- **Date:** June 2014 + +## Description + +```text +This is a radiography station installed on a radial beam port 3 at the Reactor TRIGA +PUSPATI (RTP). It uses the thermal beam port 3. +The sample is made of 2 concentric cylinders made of Cu and Fe. +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| theta | deg | horizontal rotation of the object | 0 | +| phi | deg | vertical rotation of the object | 0 | + +## Links + +- [Source code](RTP_NeutronRadiography.instr) for `RTP_NeutronRadiography.instr`. +- [Additional information](RTP_NeutronRadiography.instr.md) +- Nuclear Malaysia +- M. Sufi et al., J. AppL Cryst. (1997). 30, 884-888 [doi:10.1107/S0021889897001738] + +--- + +*Generated for mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/examples/TRIGA/RTP_SANS/README.md b/mcstas-comps/examples/TRIGA/RTP_SANS/README.md new file mode 100644 index 000000000..6b55335f8 --- /dev/null +++ b/mcstas-comps/examples/TRIGA/RTP_SANS/README.md @@ -0,0 +1,52 @@ +# The `RTP_SANS` Instrument + +*McStas: The SANS instrument installed at Reactor TRIGA PUSPATI (Malaysia)* + +## Identification + +- **Site:** TRIGA +- **Author:** E. Farhi and Megat Harun Al-Rashid +- **Origin:** ILL/RTP +- **Date:** June 2014 + +## Description + +```text +This is a 4m long SANS installed on a radial beam port 4 at the Reactor TRIGA +PUSPATI (RTP). Te beam port 4 is a radial tube that originates from the core, +through the graphite reflector. A thick Be filter selects the cold tail of the +thermal spectrum, and removes higher order PG reflections. +A PG(002) monochromator selects the 5A neutrons that are sent into a 4m - 4m +SANS with a 60 cm PSD detector 128x128 pixels. +The monochromator is here used in fixed double focusing geometry. +The accessible Q range is then 0.01-0.1 Angs-1. + +This model contains a detailed description of the Be filter, monochromator +and SANS set-up. The Be filter is in the monochromator block. + +Example: mcrun RTP_SANS.instr lambda=5 +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| lambda | Angs | monochromator selected wavelength | 5 | +| DM | Angs | d-spacing for the monochromator reflection | 3.355 | +| dlambda | Angs | monochromator wavelength spread | .2 | +| Be_Filter_depth | m | Depth of Be filter | .15 | +| Mono_tilt | deg | angle tilt between the 3 monochromator layers | -1 | +| mono_rotation | deg | additional monochromator offset rotation for e.g rocking curves | 0 | + +## Links + +- [Source code](RTP_SANS.instr) for `RTP_SANS.instr`. +- [Additional information](RTP_SANS.instr.md) +- Nuclear Malaysia +- M. Sufi et al., J. AppL Cryst. (1997). 30, 884-888 [doi:10.1107/S0021889897001738] + +--- + +*Generated for mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/examples/TUDelft/SEMSANS_Delft/README.md b/mcstas-comps/examples/TUDelft/SEMSANS_Delft/README.md new file mode 100644 index 000000000..49e03c231 --- /dev/null +++ b/mcstas-comps/examples/TUDelft/SEMSANS_Delft/README.md @@ -0,0 +1,49 @@ +# The `SEMSANS_Delft` Instrument + +*McStas: Idealised SESANS instrument using magnetised foil flippers with realistic sample* + +## Identification + +- **Site:** TUDelft +- **Author:** Wim Bouwman (w.g.bouwman@tudelft.nl), Peter Willendrup and Erik Knudsen +- **Origin:** Delft University of Technology +- **Date:** December 2019 + +## Description + +```text +A full description of the instrument can be found in J. Appl. Cryst. (2021) V. 54 https://doi.org/10.1107/S1600576720015496 +The instrument has the bare essentials to simulate the Larmor precession of the neutron spins in the foil flippers and the +geometry and wavelength distribution of a version of SEMSANS that can be made from the SESANS in Delft as described in +Physica B 406(2011)2357–2360 https://doi.org/10.1016/j.physb.2010.11.069 +An essential component is the realistic SANS sample, describing both the scattered and transmitted neutron, including multiple scattering. +For a full SEMSANS scan the applied magnetic field By has to be scanned. +It is best to run it twice with the analyser in up and down orientation. +In principle the sample can be removed to study the empty beam instrument, which with this idealised setup have perfect polarisation. +It is possible to monitor the evolution of the polarisation with several polarisation monitors that have beeen commented in this version. +The foil-angle, thickness and wavelength yield now matched parameters to have the SESANS working. +These parameter and the sphere radius match now with the magnetic fields below to get a good measurement range. +A pretty high number of neutrons is needed to get good statistics in the fine position sensitive detector. +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| L0 | AA | nominal wavelength | 2.165 | +| DL | AA | wavelength band width | 0.02 | +| By | T | Applied magnetic field in foil flippers | 4.68e-3 | +| AnaSign | | Direction of analyser (-1 or 1) | 1 | + +## Links + +- [Source code](SEMSANS_Delft.instr) for `SEMSANS_Delft.instr`. +- [Additional information](SEMSANS_Delft.instr.md) +- +- https://doi.org/10.1107/S1600576720015496 + +--- + +*Generated for mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/examples/TUDelft/SEMSANS_instrument/README.md b/mcstas-comps/examples/TUDelft/SEMSANS_instrument/README.md new file mode 100644 index 000000000..c0e011f20 --- /dev/null +++ b/mcstas-comps/examples/TUDelft/SEMSANS_instrument/README.md @@ -0,0 +1,70 @@ +# The `SEMSANS_instrument` Instrument + +*McStas: SEMSANS-instrument* + +## Identification + +- **Site:** TUDelft +- **Author:** Morten Sales +- **Origin:** Copenhagen, Berlin, Delft +- **Date:** 2014 + +## Description + +```text +SEMSANS instrument with 2 isosceles triangular field coils +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| triacoil_depth | m | Half of the triangular coil depth in z-direction (one right triangle) | 1.935000e-01 | +| triacoil_width | m | xwidth of triangular coil | 7.042824e-02 | +| triacoil_height | m | yheight of triangular coil | 3.000000e-01 | +| pol_zdepth | m | Depth of the polariser along z | 9.300000e-01 | +| vcoil_zdepth | m | Depth along z of the v-coil flipper | 1.500000e-01 | +| Guide1_depth | m | Depth of first guide/precession field section | 1.650000e-02 | +| Guide2_depth | m | Depth of second guide/precession field section | 3.315000e-01 | +| Guide3_depth | m | Depth of third guide/precession field section | 3.315000e-01 | +| Guide4_depth | m | Depth of fourth guide/precession field section | 5.650000e-02 | +| Bguide | T | Field strength of guide/precession field | -5.000000e-04 | +| Bextra | T | Field strength of extra field in guide field 1 to acheive echo | -2.120000e-02 | +| Bt2 | T | Field in first triangular coil | -4.440000e-03 | +| Bt1 | T | Field in second triangular coil | -2.560000e-03 | +| DLambda | AA | Wavelength spread from source (half of it) | 4.166366e+00 | +| Lambda | AA | Mean wavelength | 4.559500e+00 | +| flippos | m | Position (away from position set by vcoil_34_pos) of pi-flipper | 3.100000e-02 | +| FLIP | 1 | Choose polarisation direction using v-coil pi/2-flipper (1 is down, -1 is up) | 1.000000e+00 | +| chop1_pos | m | Position of first chopper | 5.000000e-01 | +| chop2_pos | m | Position of second chopper | 9.740000e-01 | +| pol_pos | m | Position of polariser | 1.907000e+00 | +| analyser_pos | m | Position of analyser | 6.072000e+00 | +| grating_w | m | Width of transmitting part of grating | 1.570000e-03 | +| grating_a | m | Width of absorbing part of grating | 2.930000e-03 | +| slit_1_pos | m | Position of first slit | 2.957000e+00 | +| slit_2_pos | m | Position of second slit | 5.437000e+00 | +| Guide1_pos | m | Position of first guide/precession field | 3.307000e+00 | +| Guide2_pos | m | Position of second guide/precession field | 3.710500e+00 | +| Guide3_pos | m | Position of third guide/precession field | 4.342000e+00 | +| Guide4_pos | m | Position of fourth guide/precession field | 5.060500e+00 | +| vcoil_12_pos | m | Position of first v-coil pair | 3.157000e+00 | +| vcoil_34_pos | m | Position of second v-coil pair | 4.192000e+00 | +| vcoil_56_pos | m | Position of third v-coil pair | 5.267000e+00 | +| triacoil_1_pos | m | Position of first triangular coil (centre) | 3.517000e+00 | +| triacoil_2_pos | m | Position of second triangular coil (centre) | 4.867000e+00 | +| grating_pos | m | Position of grating | 6.757000e+00 | +| detector_pos | m | Position of detector | 6.957000e+00 | +| tlow | mu-s | tmin of detector | 2.190523040779461e+03 | +| thigh | mu-s | tmax of detector | 1.214744595341338e+04 | + +## Links + +- [Source code](SEMSANS_instrument.instr) for `SEMSANS_instrument.instr`. +- [Additional information](SEMSANS_instrument.instr.md) + +--- + +*Generated for mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/examples/TUDelft/SESANS_Delft/README.md b/mcstas-comps/examples/TUDelft/SESANS_Delft/README.md new file mode 100644 index 000000000..9bdca7a63 --- /dev/null +++ b/mcstas-comps/examples/TUDelft/SESANS_Delft/README.md @@ -0,0 +1,48 @@ +# The `SESANS_Delft` Instrument + +*McStas: Idealised SESANS instrument using magnetised foil flippers with realistic sample* + +## Identification + +- **Site:** TUDelft +- **Author:** Wim Bouwman (w.g.bouwman@tudelft.nl), Peter Willendrup and Erik Knudsen +- **Origin:** Delft University of Technology +- **Date:** December 2019 + +## Description + +```text + +A full description of the instrument can be found in J. Appl. Cryst. (2021) V. 54 https://doi.org/10.1107/S1600576720015496 +The instrument has the bare essentials to simulate the Larmor precession of the neutron spins in the foil flippers and the +geometry and wavelength distribution of the SESANS in Delft as described in +Rev. Sci. Instrum. 76, 033901 (2005) https://doi.org/10.1063/1.1858579 +An essential component is the realistic SANS sample, describing both the scattered and transmitted neutron, including multiple scattering. +In one scattering simulation both the up- and down intensities are simulated. +For a full SESANS scan the applied magnetic field By has to be scanned. +In principle the sample can be removed to study the empty beam instrument, which with this idealised setup have perfect polarisation. +It is possible to monitor the evolution of the polarisation with several polarisation monitors that have beeen commented in this version. +The foil-angle, thickness and wavelength yield now matched parameters to have the SESANS working. +These parameter and the sphere radius match now with the magnetic fields below to get a good measurement range. +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| L0 | AA | nominal wavelength | 2.165 | +| DL | AA | wavelength band width | 0.02 | +| By | T | Applied magnetic field in foil flippers | 4.68e-3 | + +## Links + +- [Source code](SESANS_Delft.instr) for `SESANS_Delft.instr`. +- [Additional information](SESANS_Delft.instr.md) +- +- https://doi.org/10.1107/S1600576720015496 + +--- + +*Generated for mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/examples/Templates/BTsimple/README.md b/mcstas-comps/examples/Templates/BTsimple/README.md new file mode 100644 index 000000000..0daf7c784 --- /dev/null +++ b/mcstas-comps/examples/Templates/BTsimple/README.md @@ -0,0 +1,43 @@ +# The `BTsimple` Instrument + +*McStas: Example instrument showing how to calculate brilliance transfer using L_monitor's and WHEN statements* + +## Identification + +- **Site:** Templates +- **Author:** Peter Willendrup +- **Origin:** DTU +- **Date:** 2018/03/21 + +## Description + +```text +Example instrument showing how to calculate brilliance transfer using L_monitor's and WHEN statements +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| lambda | AA | Central wavelength produced at the source | 10 | +| dlambda | AA | Halfwidth of wavelength band produced at the source | 9.9 | +| maxhd | deg | Maxiamal horzizontal divergence accepted | 3 | +| maxvd | deg | Maxiamal vertical divergence accepted | 3 | +| gw | m | Opening-width of ellipitic guide | 0.1 | +| gh | m | Opening-height of ellipitic guide | 0.1 | +| gL | m | Length of ellipitic guide | 50 | +| gm | 1 | M-value of the guide coating | 6 | +| delta1 | m | Optional focal displacement of guide wrt source | 0 | +| delta2 | m | Optional focal displacement of guide wrt sample position | 0 | +| Nbins | 1 | Number of bins on Wavelength / Brilliance transfer monitors | 101 | + +## Links + +- [Source code](BTsimple.instr) for `BTsimple.instr`. +- [Additional information](BTsimple.instr.md) + +--- + +*Generated for mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/examples/Templates/Demo_shape_primitives/README.md b/mcstas-comps/examples/Templates/Demo_shape_primitives/README.md new file mode 100644 index 000000000..0c991de32 --- /dev/null +++ b/mcstas-comps/examples/Templates/Demo_shape_primitives/README.md @@ -0,0 +1,33 @@ +# The `Demo_shape_primitives_simple` Instrument + +*McStas: Demonstration instrument of some shapes used for mcdisplay* + +## Identification + +- **Site:** Templates +- **Author:** Erik B Knudsen +- **Origin:** DTU Physics +- **Date:** Feb 2018 + +## Description + +```text +This instrument will display a cylinder, a sphere, and a box, +when run with mcdisplay. Otherwise does nothing. +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| + +## Links + +- [Source code](Demo_shape_primitives.instr) for `Demo_shape_primitives.instr`. +- [Additional information](Demo_shape_primitives.instr.md) + +--- + +*Generated for mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/examples/Templates/Demo_shape_primitives_simple/README.md b/mcstas-comps/examples/Templates/Demo_shape_primitives_simple/README.md new file mode 100644 index 000000000..883172534 --- /dev/null +++ b/mcstas-comps/examples/Templates/Demo_shape_primitives_simple/README.md @@ -0,0 +1,33 @@ +# The `Demo_shape_primitives_simple` Instrument + +*McStas: Demonstration instrument of some shapes used for mcdisplay* + +## Identification + +- **Site:** Templates +- **Author:** Erik B Knudsen +- **Origin:** DTU Physics +- **Date:** Feb 2018 + +## Description + +```text +This instrument will display a cylinder, a sphere, and a box, +when run with mcdisplay. Otherwise does nothing. +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| + +## Links + +- [Source code](Demo_shape_primitives_simple.instr) for `Demo_shape_primitives_simple.instr`. +- [Additional information](Demo_shape_primitives_simple.instr.md) + +--- + +*Generated for mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/examples/Templates/TOF_Reflectometer/README.md b/mcstas-comps/examples/Templates/TOF_Reflectometer/README.md new file mode 100644 index 000000000..97ee15579 --- /dev/null +++ b/mcstas-comps/examples/Templates/TOF_Reflectometer/README.md @@ -0,0 +1,48 @@ +# The `Reflectometer` Instrument + +*McStas: Horizontal reflectometer, multi-angle of incidence* + +## Identification + +- **Site:** Templates +- **Author:** Anette Vickery, contact: anette.vickery@fys.ku.dk +- **Origin:** KU +- **Date:** November 2011 + +## Description + +```text +A horizontal reflectometer. The instrument is built of a 2.5 m long mirror and an inclined elliptical guide. The grazing angle is defined by a set of +slits. The sample size is 4cm x 4cm (horizontal sample). +The role of the mirror is to provide an angle of incidence of up to 4 deg and at the same time avoid a direct line of sight to the source. +The reflectivity is the ratio between the direct beam reflected beam intensities. Therefore two simulations are needed to get the reflectivity curve: + +Example: mcrun Reflectometer.instr -n1e10 directbeam=1,thetasample=0.4,Qmin=0,Qmax=0.15 -d directbeam +Example: mcrun Reflectometer.instr -n1e10 directbeam=0,thetasample=0.4,Qmin=0,Qmax=0.15 -d reflectedbeam +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| directbeam | | If 1, the sample is a mirror with reflectivity 1. If 0, the mirror reflects like a D2O surface with zero roughness | 1 | +| Lam_min | AA | Minimum wavelength emitted by the cold moderator | 2.0 | +| Lam_max | AA | Maximum wavelength emitted by the cold moderator | 10 | +| deltatheta | % | The angular resolution | 2 | +| theta_sample | deg | The grazing angle | 1 | +| defineAngle | | If 0, the angle defining slits are wide open. If 1 the angular resolution is deltatheta | 1 | +| Qmin | AA^-1 | The minimum value of the interesting Qrange | 0 | +| Qmax | AA^-1 | The maximum value of the interesting Qrange | 0.5 | +| straight | | If 1, the guide walls are straight | 1 | +| width | m | The width of the guide in the case of straight guide walls | 0.05 | + +## Links + +- [Source code](TOF_Reflectometer.instr) for `TOF_Reflectometer.instr`. +- [Additional information](TOF_Reflectometer.instr.md) + +--- + +*Generated for mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/examples/Templates/Test_SasView_bcc_paracrystal_aniso/README.md b/mcstas-comps/examples/Templates/Test_SasView_bcc_paracrystal_aniso/README.md new file mode 100644 index 000000000..79b22a1be --- /dev/null +++ b/mcstas-comps/examples/Templates/Test_SasView_bcc_paracrystal_aniso/README.md @@ -0,0 +1,60 @@ +# The `test_SasView_bcc_paracrystal` Instrument + +*McStas: Test instrument for the SasView bcc_paracrystal model component as sample description.* + +## Identification + +- **Site:** Templates +- **Author:** Jose Robledo +- **Origin:** FZJ / DTU / ESS DMSC +- **Date:** + +## Description + +```text +Very simple test instrument for the SasView_bcc_paracrystal component + + +Example: model_scale=1 Detector: detector_I=83.8252 +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| lambda | AA | Mean wavelength of neutrons. | 6 | +| dlambda | AA | Wavelength spread of neutrons. | 0.05 | +| dnn | | ([-inf, inf]) Nearest neighbour distance. | 220 | +| d_factor | | ([-inf, inf]) Paracrystal distortion factor. | 0.06 | +| radius | | ([0, inf]) Particle radius. | 40 | +| sld | | ([-inf, inf]) Particle scattering length density. | 4 | +| sld_solvent | | ([-inf, inf]) Solvent scattering length density. | 1 | +| theta | | | 60 | +| phi | | | 60 | +| Psi | | | 60 | +| model_scale | | Global scale factor for scattering kernel. For systems without inter-particle interference, the form factors can be related to the scattering intensity by the particle volume fraction. | 1.0 | +| model_abs | | Absorption cross section density at 2200 m/s. | 0.0 | +| xwidth | m | ([-inf, inf]) Horiz. dimension of sample, as a width. | 0.01 | +| yheight | m | ([-inf, inf]) vert . dimension of sample, as a height for cylinder/box | 0.01 | +| zdepth | m | ([-inf, inf]) depth of sample | 0.005 | +| R | m | Outer radius of sample in (x,z) plane for cylinder/sphere. | 0 | +| target_index | | Relative index of component to focus at, e.g. next is +1. | 1 | +| target_x | m | relative focus target position. | 0 | +| target_y | m | relative focus target position. | 0 | +| target_z | m | relative focus target position. | 1 | +| focus_xw | m | horiz. dimension of a rectangular area. | 0.5 | +| focus_yh | m | , vert. dimension of a rectangular area. | 0.5 | +| focus_aw | deg | , horiz. angular dimension of a rectangular area. | 0 | +| focus_ah | deg | , vert. angular dimension of a rectangular area. | 0 | +| focus_r | | | 0 | + +## Links + +- [Source code](Test_SasView_bcc_paracrystal_aniso.instr) for `Test_SasView_bcc_paracrystal_aniso.instr`. +- [Additional information](Test_SasView_bcc_paracrystal_aniso.instr.md) + +--- + +*Generated for mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/examples/Templates/Test_SasView_guinier/README.md b/mcstas-comps/examples/Templates/Test_SasView_guinier/README.md new file mode 100644 index 000000000..4c70f0e50 --- /dev/null +++ b/mcstas-comps/examples/Templates/Test_SasView_guinier/README.md @@ -0,0 +1,50 @@ +# The `test_SasView_guinier` Instrument + +*McStas: Test instrument for the SasView guinier model component as sample description.* + +## Identification + +- **Site:** Templates +- **Author:** Jose Robledo +- **Origin:** FZJ / DTU / ESS DMSC +- **Date:** + +## Description + +```text +Very simple test instrument for the SasView_guinier component +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| lambda | AA | Mean wavelength of neutrons. | 6 | +| dlambda | AA | Wavelength spread of neutrons. | 0.05 | +| rg | | ([-inf, inf]) Radius of Gyration. | 60.0 | +| model_scale | | Global scale factor for scattering kernel. For systems without inter-particle interference, the form factors can be related to the scattering intensity by the particle volume fraction. | 1.0 | +| model_abs | | Absorption cross section density at 2200 m/s. | 0.0 | +| xwidth | m | ([-inf, inf]) Horiz. dimension of sample, as a width. | 0.01 | +| yheight | m | ([-inf, inf]) vert . dimension of sample, as a height for cylinder/box | 0.01 | +| zdepth | m | ([-inf, inf]) depth of sample | 0.005 | +| R | m | Outer radius of sample in (x,z) plane for cylinder/sphere. | 0 | +| target_index | | Relative index of component to focus at, e.g. next is +1. | 1 | +| target_x | m | relative focus target position. | 0 | +| target_y | m | relative focus target position. | 0 | +| target_z | m | relative focus target position. | 1 | +| focus_xw | m | horiz. dimension of a rectangular area. | 0.5 | +| focus_yh | m | , vert. dimension of a rectangular area. | 0.5 | +| focus_aw | deg | , horiz. angular dimension of a rectangular area. | 0 | +| focus_ah | deg | , vert. angular dimension of a rectangular area. | 0 | +| focus_r | | | 0 | + +## Links + +- [Source code](Test_SasView_guinier.instr) for `Test_SasView_guinier.instr`. +- [Additional information](Test_SasView_guinier.instr.md) + +--- + +*Generated for mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/examples/Templates/Tomography/README.md b/mcstas-comps/examples/Templates/Tomography/README.md new file mode 100644 index 000000000..43f346fe8 --- /dev/null +++ b/mcstas-comps/examples/Templates/Tomography/README.md @@ -0,0 +1,52 @@ +# The `Tomography` Instrument + +*McStas: Instrument to study tomographic imaging by means of the feature of OFF shape samples.* + +## Identification + +- **Site:** Templates +- **Author:** Peter Willendrup, based on work by Reynald ARNERIN +- **Origin:** Risoe +- **Date:** June 20th, 2008 + +## Description + +```text +Instrument to study tomographic imaging by means of the feature of OFF shape samples. + +Example: mcrun Tomography.instr offfile=bunny.off -n1e4 -N18 omega=0,340 -d TomoScan +(Note that to achieve proper statistics for tomographic reconstruction, MUCH higher ncounts +are needed) + +Use the provided Matlab tomo_recon.m function (requires imaging toolbox, PGPLOT output data +and a Unix/Mac) in the tools/matlab folder to reconstruct a 3D volume of the object. Use e.g. +isosurface to do thresholding for extraction of the object surface. +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| geometry | string | Name of the OFF file describing the sample shape | "socket.off" | +| omega | deg | Sample rotation around y | 0 | +| sigma_abs | barn | Sample absorption xs | 100 | +| frac_scatt | 1 | Fraction of neutrons to scatter in the sample | 0 | +| div_v | deg | Source vertical divergence (angular height) | 1e-4 | +| div_h | deg | Source horisontal divergence (angular width) | 1e-4 | +| source_w | m | Source width | 0.4 | +| source_h | m | Source height | 0.2 | +| det_w | m | Detector width | 0.4 | +| det_h | m | Detector height | 0.2 | +| opts | string | Monitor_nD options string | "x bins=80 y bins=40" | + +## Links + +- [Source code](Tomography.instr) for `Tomography.instr`. +- [Additional information](Tomography.instr.md) +- http://shape.cs.princeton.edu/benchmark/documentation/off_format.html + +--- + +*Generated for mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/examples/Templates/mini/README.md b/mcstas-comps/examples/Templates/mini/README.md new file mode 100644 index 000000000..92f27279a --- /dev/null +++ b/mcstas-comps/examples/Templates/mini/README.md @@ -0,0 +1,34 @@ +# The `mini` Instrument + +*McStas: Minimalistic instrument for testing GPU implementation* + +## Identification + +- **Site:** Templates +- **Author:** Jakob Garde +- **Origin:** DTU +- **Date:** 2017 + +## Description + +```text +Minimalistic instrument for testing GPU implementation +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| dummy | | Dummy input parameter | 0 | + +## Links + +- [Source code](mini.instr) for `mini.instr`. +- [Additional information](mini.instr.md) +- A reference/HTML link for more information + +--- + +*Generated for mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/examples/Templates/template/README.md b/mcstas-comps/examples/Templates/template/README.md new file mode 100644 index 000000000..72c41dfa2 --- /dev/null +++ b/mcstas-comps/examples/Templates/template/README.md @@ -0,0 +1,43 @@ +# The `template` Instrument + +*McStas: !!Please write a short instrument (1 line) here!!* + +## Identification + +- **Site:** Templates +- **Author:** Your name (email) +- **Origin:** Your institution +- **Date:** Current Date + +## Description + +```text +Instrument longer description (type, elements, usage...) + +Example: mcrun template.instr + +once your instrument is written and functional: +- replace INSTRUMENT_SITE entry above with your Institution name as a single word +- rename the instrument name after DEFINE INSTRUMENT below +- update the parameter help in the following Parameters section +- update the instrument description, and better add a usage example with a +sensible parameter set. +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| Par1 | | | 1 | + +## Links + +- [Source code](template.instr) for `template.instr`. +- [Additional information](template.instr.md) +- A reference/HTML link for more information + +--- + +*Generated for mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/examples/Templates/templateDIFF/README.md b/mcstas-comps/examples/Templates/templateDIFF/README.md new file mode 100644 index 000000000..b7cbe8216 --- /dev/null +++ b/mcstas-comps/examples/Templates/templateDIFF/README.md @@ -0,0 +1,66 @@ +# The `templateDIFF` Instrument + +*McStas: Simple monochromator Diffractometer for powders* + +## Identification + +- **Site:** Templates +- **Author:** E. Farhi +- **Origin:** LLB/ILL +- **Date:** 13 Apr 2006 + +## Description + +```text +A template powder diffractometer used as a tutorial at LLB. +Default geometry is from D20@ILL. + +If included after a guide, use ALPHA1=0 and L1=0 (the first collimator is then +the guide with effective ALPHA1=m*0.1*lambda). If you prefer to include +explicitely a collimator before the monochromator, use L1=1.2. + +Monochromator lattice parameter +PG 002 DM=3.355 AA (Highly Oriented Pyrolythic Graphite) +PG 004 DM=1.607 AA +Heusler 111 DM=3.362 AA (Cu2MnAl) +CoFe DM=1.771 AA (Co0.92Fe0.08) +Ge 111 DM=3.266 AA +Ge 311 DM=1.714 AA +Ge 511 DM=1.089 AA +Ge 533 DM=0.863 AA +Si 111 DM=3.135 AA +Cu 111 DM=2.087 AA +Cu 002 DM=1.807 AA +Cu 220 DM=1.278 AA +Cu 111 DM=2.095 AA +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| lambda | Angs | Wavelength at monochromator, computed from DM and THETA_M if left as 0. | 1 | +| DM | Angs | d-spacing of monochromator, computed from lambda and THETA_M if left as 0. | 3.355 | +| Powder | str | File name for powder description | "Na2Ca3Al2F14.laz" | +| RV | m | Monochromator vertical curvature, 0 for flat, -1 for automatic setting | -1 | +| L1 | m | Source-Monochromator distance | 17 | +| L2 | m | Monochromator-Sample distance | 3.2 | +| L3 | m | Sample-Detector distance | 1.471 | +| ALPHA1 | min | Horizontal collimator divergence for L1 arm (before monochromator) | 5 | +| ALPHA2 | min | Horizontal collimator divergence for L2 arm (monochromator-sample) | 60 | +| ALPHA3 | min | Horizontal collimator divergence for L3 arm (sample-detector) | 5 | +| ETA | min | Monochromator horizontal mosaic (gaussian) | 12 | +| verbose | int | Print DIF configuration. 0 to be quiet | 1 | +| THETA_M | deg | Monochromator take-off angle, computed from lambda and DM if left as 0. | 0 | +| SM | int | Scattering sense of beam from Monochromator. 1:left, -1:right | 1 | + +## Links + +- [Source code](templateDIFF.instr) for `templateDIFF.instr`. +- [Additional information](templateDIFF.instr.md) + +--- + +*Generated for mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/examples/Templates/templateLaue/README.md b/mcstas-comps/examples/Templates/templateLaue/README.md new file mode 100644 index 000000000..4d8fa5445 --- /dev/null +++ b/mcstas-comps/examples/Templates/templateLaue/README.md @@ -0,0 +1,34 @@ +# The `templateLaue` Instrument + +*McStas: A simple Laue diffractometer* + +## Identification + +- **Site:** Templates +- **Author:** K. Nielsen +- **Origin:** ILL +- **Date:** June 2nd, 2010 + +## Description + +```text +A single crystal sample is illuminated with a white cold beam. +Based on a Laue tutorial written by K. Nielsen, Feb 7, 2000. +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| reflections | string | Single crystal reflection list | "leucine.lau" | + +## Links + +- [Source code](templateLaue.instr) for `templateLaue.instr`. +- [Additional information](templateLaue.instr.md) + +--- + +*Generated for mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/examples/Templates/templateNMX/README.md b/mcstas-comps/examples/Templates/templateNMX/README.md new file mode 100644 index 000000000..5911a9528 --- /dev/null +++ b/mcstas-comps/examples/Templates/templateNMX/README.md @@ -0,0 +1,36 @@ +# The `templateNMX` Instrument + +*McStas: A simple Laue NMX diffractometer for macromolecules, adapted from the classic +templateLaue instrument.* + +## Identification + +- **Site:** Templates +- **Author:** K. Nielsen +- **Origin:** ILL +- **Date:** June 2nd, 2010 + +## Description + +```text +A single crystal sample is illuminated with a white cold beam. +Based on a Laue tutorial written by K. Nielsen, Feb 7, 2000. +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| REPS | | Number of SPLIT repetitions | 1 | +| reflections | string | MX crystal reflection list | "Rubredoxin.lau" | + +## Links + +- [Source code](templateNMX.instr) for `templateNMX.instr`. +- [Additional information](templateNMX.instr.md) + +--- + +*Generated for mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/examples/Templates/templateNMX_TOF/README.md b/mcstas-comps/examples/Templates/templateNMX_TOF/README.md new file mode 100644 index 000000000..e9595cb4f --- /dev/null +++ b/mcstas-comps/examples/Templates/templateNMX_TOF/README.md @@ -0,0 +1,47 @@ +# The `templateNMX_TOF` Instrument + +*McStas: A simple Laue NMX TOF diffractometer for macromolecules, adapted from templateNMX +and templateLaue instruments. + +Demonstrates use of PSD_monitor_TOF. + +Example: templateNMX_TOF.instr REPS=53 reflections=Rubredoxin.lau theta=-40.85 phi=15.188 xw=0.012 yh=0.012 tmin=13000 tmax=15000 Detector: det_I=78816.1 +Example: templateNMX_TOF.instr REPS=5 reflections=YBaCuO.lau theta=-91.1 phi=0 xw=0.012 yh=0.012 tmax=7000 tmin=5000 Detector: det_I=6277.74* + +## Identification + +- **Site:** Templates +- **Author:** K. Nielsen +- **Origin:** DTU +- **Date:** June 2nd, 2010 + +## Description + +```text +A single crystal sample is illuminated with a white cold beam. +Based on a Laue tutorial written by K. Nielsen, Feb 7, 2000. +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| REPS | | Number of SPLIT repetitions | 53 | +| reflections | string | MX crystal reflection list | "Rubredoxin.lau" | +| theta | deg | Rotation of sample around y (1st rotation) | -40.85 | +| phi | deg | Rotation of sample around x (2nd rotation) | 15.188 | +| xw | m | Width of final monitors | 0.012 | +| yh | m | Height of final monitors | 0.012 | +| tmin | mu-s | Minimum ToF to record | 0 | +| tmax | mu-s | Maximum ToF to record | 2e5 | + +## Links + +- [Source code](templateNMX_TOF.instr) for `templateNMX_TOF.instr`. +- [Additional information](templateNMX_TOF.instr.md) + +--- + +*Generated for mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/examples/Templates/templateSANS/README.md b/mcstas-comps/examples/Templates/templateSANS/README.md new file mode 100644 index 000000000..53159ffaa --- /dev/null +++ b/mcstas-comps/examples/Templates/templateSANS/README.md @@ -0,0 +1,39 @@ +# The `templateSANS` Instrument + +*McStas: Test instrument for the Sans_spheres component. No guide / velocity selector +etc. Will be developed further at later time.* + +## Identification + +- **Site:** Templates +- **Author:** Kim Lefmann +- **Origin:** Risoe +- **Date:** 19th Dec 2003. + +## Description + +```text +Very simple test instrument for the Sans_spheres component +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| lambda | AA | Mean wavelength of neutrons | 6 | +| dlambda | AA | Wavelength spread of neutrons | 0.05 | +| r | AA | Radius of scattering hard spheres | 100 | +| PHI | 1 | Particle volume fraction | 1e-3 | +| Delta_Rho | fm/AA^3 | Excess scattering length density | 0.6 | +| sigma_abs | barns | Absorption cross section at 2200 m/s | 0.5 | + +## Links + +- [Source code](templateSANS.instr) for `templateSANS.instr`. +- [Additional information](templateSANS.instr.md) + +--- + +*Generated for mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/examples/Templates/templateSANS2/README.md b/mcstas-comps/examples/Templates/templateSANS2/README.md new file mode 100644 index 000000000..a06f6e5a5 --- /dev/null +++ b/mcstas-comps/examples/Templates/templateSANS2/README.md @@ -0,0 +1,40 @@ +# The `templateSANS2` Instrument + +*McStas: Test instrument for the SANS_spheres2 component. No guide / velocity selector.* + +## Identification + +- **Site:** Templates +- **Author:** Peter Willendrup, Wim G. Bouwman +- **Origin:** DTU +- **Date:** Dec 20190 + +## Description + +```text +Very simple test instrument for the SANS_spheres2 component, derived / simplified from +H. Frielinghaus SANS_benchmark2 +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| lambda | AA | Mean wavelength of neutrons | 6 | +| dlambda | AA | Wavelength spread of neutrons | 0.05 | +| r | AA | Radius of scattering hard spheres | 150 | +| PHI | 1 | Particle volume fraction | 1e-3 | +| Delta_Rho | cm^-2 | Scattering length density | 6e10 | +| frac_dir | 1 | Fraction of statistics for direct beam | 0.03 | +| frac_inc | 1 | Fraction of statistics for incoherent scattering in scattered beam | 0.01 | + +## Links + +- [Source code](templateSANS2.instr) for `templateSANS2.instr`. +- [Additional information](templateSANS2.instr.md) + +--- + +*Generated for mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/examples/Templates/templateSANS_MCPL/README.md b/mcstas-comps/examples/Templates/templateSANS_MCPL/README.md new file mode 100644 index 000000000..e01e98631 --- /dev/null +++ b/mcstas-comps/examples/Templates/templateSANS_MCPL/README.md @@ -0,0 +1,42 @@ +# The `templateSANS_MCPL` Instrument + +*McStas: Test instrument for the Sans_spheres component. No guide / velocity selector +etc. Will be developed further at later time. Behaves like the normal templateSANS +but dumps all events in an MCPL file.* + +## Identification + +- **Site:** Templates +- **Author:** Kim Lefmann +- **Origin:** Risoe +- **Date:** 19th Dec 2003. + +## Description + +```text +Very simple test instrument for the Sans_spheres component + +Example: lambda=6 Detector: detector_I=6.56942e-17 +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| lambda | AA | Mean wavelength of neutrons | 6 | +| dlambda | AA | Wavelength spread of neutrons | 0.05 | +| r | AA | Radius of scattering hard spheres | 100 | +| PHI | 1 | Particle volume fraction | 1e-3 | +| Delta_Rho | fm/AA^3 | Excess scattering length density | 0.6 | +| sigma_abs | barns | Absorption cross section at 2200 m/s | 0.5 | + +## Links + +- [Source code](templateSANS_MCPL.instr) for `templateSANS_MCPL.instr`. +- [Additional information](templateSANS_MCPL.instr.md) + +--- + +*Generated for mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/examples/Templates/templateSasView/README.md b/mcstas-comps/examples/Templates/templateSasView/README.md new file mode 100644 index 000000000..91e6afbc8 --- /dev/null +++ b/mcstas-comps/examples/Templates/templateSasView/README.md @@ -0,0 +1,49 @@ +# The `templateSasView` Instrument + +*McStas: Test instrument for some SasView_model components. No guide / velocity selector +etc.* + +## Identification + +- **Site:** Templates +- **Author:** Torben Nielsen +- **Origin:** DTU Physics / ESS DMSC +- **Date:** + +## Description + +```text +Very simple test instrument for 3 examples from the suite of SasView_ components. +Select sample model with 'model_index': +1= SasView_barbell +3= SasView_bcc_paracrystal +47= SasView_parallelepiped +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| lambda | AA | Mean wavelength of neutrons | 6 | +| dlambda | AA | Wavelength spread of neutrons | 0.05 | +| model_index | | SASmodels model index (see SasView_model.comp mcdoc page) | 47 | +| par1 | | Slot 1 in SASmodel parameter vector | 0 | +| par2 | | Slot 2 in SASmodel parameter vector | 0 | +| par3 | | Slot 3 in SASmodel parameter vector | 0 | +| par4 | | Slot 4 in SASmodel parameter vector | 0 | +| par5 | | Slot 5 in SASmodel parameter vector | 0 | +| par6 | | Slot 6 in SASmodel parameter vector | 0 | +| par7 | | Slot 7 in SASmodel parameter vector | 0 | +| par8 | | Slot 8 in SASmodel parameter vector | 0 | +| Ncount | | | 0 | + +## Links + +- [Source code](templateSasView.instr) for `templateSasView.instr`. +- [Additional information](templateSasView.instr.md) + +--- + +*Generated for mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/examples/Templates/templateTAS/README.md b/mcstas-comps/examples/Templates/templateTAS/README.md new file mode 100644 index 000000000..4809068bf --- /dev/null +++ b/mcstas-comps/examples/Templates/templateTAS/README.md @@ -0,0 +1,137 @@ +# The `templateTAS` Instrument + +*McStas: Template RESCAL type triple-axis machine (TAS)* + +## Identification + +- **Site:** Templates +- **Author:** Emmanuel Farhi +- **Origin:** ILL (France) +- **Date:** 2006 + +## Description + +```text +This instrument is a simple model of triple-axis spectrometer. +It is directly illuminated by the moderator, +and has curved monochromator and analyzer. +Sample can be specified as a powder, liquid/amorphous or a pure incoherent +scatterer (e.g. vanadium, which is the default). +Sample geometry can be spherical or cylindrical. +For PG002 monochromator/analyzer setting, a reflectivity curve vs. wavelength +is used, else reflectivity is set to 70 %. To suppress collimators, set their +divergence to 0 (ALFn BETn). +Default instrument geometry is from IN20@ILL with PG monochromator/analyzer. + +Monochromator lattice parameter +PG 002 DM=3.355 AA (Highly Oriented Pyrolythic Graphite) +PG 004 DM=1.607 AA +Heusler 111 DM=3.362 AA (Cu2MnAl) +CoFe DM=1.771 AA (Co0.92Fe0.08) +Ge 111 DM=3.266 AA +Ge 311 DM=1.714 AA +Ge 511 DM=1.089 AA +Ge 533 DM=0.863 AA +Si 111 DM=3.135 AA +Cu 111 DM=2.087 AA +Cu 002 DM=1.807 AA +Cu 220 DM=1.278 AA +Cu 111 DM=2.095 AA + +IN22 configuration (at H25 thermal m=2 guide end): +KI=3.84, QM=1.0, EN=0.0, verbose=1, +WM=0.15, HM=0.12, NHM=1, NVM=9, RMV=-1, +WA=0.20, HA=0.10, NHA=11, NVA=3, RAV=-1, RAH=-1, +SM=-1, SS=1, SA=-1, +L1=10.0, L2=1.7, L3=1.0, L4=0.8 + +IN8 Configuration: with Copper optics +KF=5, KI=0, QM=0.5, EN=5, verbose=1 +WM=0.23, HM=0.19, RMH=-1, RMV=-1, DM=1.807, NHM=15, NVM=15, +WA=0.16, HA=0.08, RAH=-1, RAV=-1, DA=2.087, NHA=15, NVA=15, +L1=2.33 +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| KI | Angs-1 | Incoming neutron wavevector | 2.662 | +| KF | Angs-1 | Outgoing neutron wavevector | 0 | +| EI | meV | Incoming neutron energy | 0 | +| EF | meV | Outgoing neutron energy | 0 | +| QH | rlu | Measurement QH position in crystal | 0 | +| QK | rlu | Measurement QK position in crystal | 0 | +| QL | rlu | Measurement QL position in crystal | 0 | +| EN | meV | Energy transfer in crystal | 0 | +| QM | Angs-1 | Wavevector transfer in crystal | 0 | +| KFIX | Angs-1 | Fixed KI or KF value for Rescal compatibility | 0 | +| FX | 1:KI,2:KF | Fixed KI or KF type for Rescal compatibility | 0 | +| L1 | m | Source-Monochromator distance. Contains 1st Collimator of length 5.34 | 9 | +| L2 | m | Monochromator-Sample distance. Contains 2nd Collimator of length 0.35 | 2.1 | +| L3 | m | Sample-Analyzer distance. Contains 3rd Collimator of length 0.40 | 1.5 | +| L4 | m | Analyzer-detector distance. Contains 4th Collimator of length 0.24 | 0.7 | +| SM | 1:left, -1:right | Scattering sense of beam from Monochromator | 1 | +| SS | 1:left, -1:right | Scattering sense of beam from Sample | -1 | +| SA | 1:left, -1:right | Scattering sense of beam from Analyzer | 1 | +| DM | Angs | Monochromator d-spacing | 3.3539 | +| DA | Angs | Analyzer d-spacing | 3.3539 | +| RMV | m | Monochromator vertical curvature, 0 for flat, -1 for automatic setting | -1 | +| RMH | m | Monochromator horizontal curvature, 0 for flat, -1 for automatic setting | 0 | +| RAV | m | Analyzer vertical curvature, 0 for flat, -1 for automatic setting | 0 | +| RAH | m | Analyzer horizontal curvature, 0 for flat, -1 for automatic setting | -1 | +| ETAM | arc min | Monochromator mosaic | 30 | +| ETAA | arc min | Analyzer mosaic | 30 | +| ALF1 | arc min | Horizontal collimation from Source to Monochromator | 60 | +| ALF2 | arc min | Horizontal collimation from Monochromator to Sample A | 60 | +| ALF3 | arc min | Horizontal collimation from Sample to Analyzer | 60 | +| ALF4 | arc min | Horizontal collimation from Analyzer to Detector | 60 | +| BET1 | arc min | Vertical collimation from Source to Monochromator | 120 | +| BET2 | arc min | Vertical collimation from Monochromator to Sample A | 120 | +| BET3 | arc min | Vertical collimation from Sample to Analyzer | 120 | +| BET4 | arc min | Vertical collimation from Analyzer to Detector | 120 | +| AS | Angs | Sample lattice parameter A | 6.28 | +| BS | Angs | Sample lattice parameter B | 6.28 | +| CS | Angs | Sample lattice parameter C | 6.28 | +| AA | deg | Angle between lattice vectors B,C | 90 | +| BB | deg | Angle between lattice vectors C,A | 90 | +| CC | deg | Angle between lattice vectors A,B | 90 | +| AX | rlu | First reciprocal lattice vector in scattering plane, X | 1 | +| AY | rlu | First reciprocal lattice vector in scattering plane, Y | 0 | +| AZ | rlu | First reciprocal lattice vector in scattering plane, Z | 0 | +| BX | rlu | Second reciprocal lattice vector in scattering plane, X | 0 | +| BY | rlu | Second reciprocal lattice vector in scattering plane, Y | 1 | +| BZ | rlu | Second reciprocal lattice vector in scattering plane, Z | 0 | +| verbose | 1 | print TAS configuration. 0 to be quiet | 1 | +| A1 | deg | Monohromator rotation angle | 0 | +| A2 | deg | Monohromator take-off angle | 0 | +| A3 | deg | Sample rotation angle | 0 | +| A4 | deg | Sample take-off angle | 0 | +| A5 | deg | Analyzer rotation angle | 0 | +| A6 | deg | Analyzer take-off angle | 0 | +| NHM | 1 | Number of horizontal slabs composing the monochromator | 1 | +| NVM | 1 | Number of vertical slabs composing the monochromator | 9 | +| WM | m | Width of monochromator | 0.10 | +| HM | m | Height of monochromator | 0.12 | +| NHA | 1 | Number of horizontal slabs composing the analyzer | 9 | +| NVA | 1 | Number of vertical slabs composing the analyzer | 1 | +| WA | m | Width of analyzer | 0.10 | +| HA | m | Height of analyzer | 0.12 | +| Sqw_coh | str | sample coherent S(q,w) file name. Use LAZ/LAU or SQW file | "NULL" | +| Sqw_inc | str | sample incoherent S(q,w) file name. Use NULL to scatter incoherently | "NULL" | +| radius | m | outer radius of sample hollow cylinder/sphere | 0.01 | +| thickness | m | thickness of sample hollow cylinder. 0 for bulk | 0.005 | +| height | m | sample height. Use 0 for a spherical shape | 0.05 | + +## Links + +- [Source code](templateTAS.instr) for `templateTAS.instr`. +- [Additional information](templateTAS.instr.md) +- Rescal for Matlab at http://www.ill.eu/instruments-support/computing-for-science/cs-software/all-software/matlab-ill/ +- Restrax at http://omega.ujf.cas.cz/restrax/ + +--- + +*Generated for mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/examples/Templates/templateTOF/README.md b/mcstas-comps/examples/Templates/templateTOF/README.md new file mode 100644 index 000000000..0dbbe8ad7 --- /dev/null +++ b/mcstas-comps/examples/Templates/templateTOF/README.md @@ -0,0 +1,54 @@ +# The `templateTOF` Instrument + +*McStas: A test instrument for the S(q,w) sample, with furnace/container* + +## Identification + +- **Site:** Templates +- **Author:** E. Farhi +- **Origin:** ILL +- **Date:** Jan 2004 + +## Description + +```text +This instrument is a test instrument for the S(q,w) sample. +It produces a tof-angle and q-energy detectors and also exports the +S(q,w) and S(q) data. +The sample environment is a single cylinder. +The sample container has the same shape as the sample itself, but is not +active when using a spherical sample shape (height=0). +detector is 2.5 m diameter, with 40 cm heigh, 1 inch diameter detector tubes. +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| E0 | meV | incident neutron beam energy | 4.94 | +| dE | meV | incident neutron beam energy spread | 0.24 | +| dt | s | time spread from chopper distribution | 6.4e-6 | +| coh | str | sample coherent Sqw data file or NULL | "Rb_liq_coh.sqw" | +| inc | str | sample incoherent Sqw data file or NULL | "Rb_liq_inc.sqw" | +| thickness | m | thickness of sample. 0=filled | 1e-4 | +| yheight | m | height of sample. 0=sphere | 0.0168 | +| radius | m | radius of sample (outer) | 0.005 | +| container | str | container material or NULL | "Nb.laz" | +| container_thickness | m | container thickness | 50e-6 | +| environment | str | sample environment material or NULL | "Al.laz" | +| environment_radius | m | sample environment outer radius | 0.025 | +| environment_thickness | m | sample environment thickness | 2e-3 | +| dt0 | | | 0 | + +## Links + +- [Source code](templateTOF.instr) for `templateTOF.instr`. +- [Additional information](templateTOF.instr.md) +- The Isotropic_Sqw sample +- The Samples_Isotropic_Sqw example instrument + +--- + +*Generated for mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/examples/Templates/template_simple/README.md b/mcstas-comps/examples/Templates/template_simple/README.md new file mode 100644 index 000000000..2df90960a --- /dev/null +++ b/mcstas-comps/examples/Templates/template_simple/README.md @@ -0,0 +1,36 @@ +# The `template_simple` Instrument + +*McStas: instrument short description* + +## Identification + +- **Site:** Templates +- **Author:** your name (email) +- **Origin:** your institution +- **Date:** current date + +## Description + +```text +instrument description + +Example: parameters=values +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| Par1 | unit | Parameter1 description | 1 | + +## Links + +- [Source code](template_simple.instr) for `template_simple.instr`. +- [Additional information](template_simple.instr.md) +- + +--- + +*Generated for mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/examples/Tests_MCPL_etc/Test_MCPL_input/README.md b/mcstas-comps/examples/Tests_MCPL_etc/Test_MCPL_input/README.md new file mode 100644 index 000000000..3c71d24b2 --- /dev/null +++ b/mcstas-comps/examples/Tests_MCPL_etc/Test_MCPL_input/README.md @@ -0,0 +1,37 @@ +# The `Test_MCPL_input` Instrument + +*McStas: A test instrument for MCPL_input* + +## Identification + +- **Site:** Tests_MCPL_etc +- **Author:** Erik B Knudsen +- **Origin:** DTU +- **Date:** Mar 2016 + +## Description + +```text +This is a unit test for the MCPL_input component. +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| repeat | 1 | Repeat the contents of the inputfile this many times. NB: When using MPI you implicitly repeat by #mpi processes | 1 | +| v_smear | 1 | When repeating, make Gaussian MC choice on particle velocity with spread v_smear * particle velocity | 0.1 | +| pos_smear | m | When repeating, make uniform MC choice on sphere of radius pos_spear around particle position | 0.001 | +| dir_smear | deg | When repeating, make Gaussian MC choice in cone of opening dir_smear around particle direction | 0.01 | +| MCPLFILE | str | Input MCPL file. | "voutput.mcpl" | + +## Links + +- [Source code](Test_MCPL_input.instr) for `Test_MCPL_input.instr`. +- [Additional information](Test_MCPL_input.instr.md) + +--- + +*Generated for mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/examples/Tests_MCPL_etc/Test_MCPL_input_once/README.md b/mcstas-comps/examples/Tests_MCPL_etc/Test_MCPL_input_once/README.md new file mode 100644 index 000000000..4a00828b5 --- /dev/null +++ b/mcstas-comps/examples/Tests_MCPL_etc/Test_MCPL_input_once/README.md @@ -0,0 +1,38 @@ +# The `Test_MCPL_input_once` Instrument + +*McStas: A test instrument for MCPL_input_once* + +## Identification + +- **Site:** Tests_MCPL_etc +- **Author:** Peter Willendrup +- **Origin:** DTU +- **Date:** Mar 2024 + +## Description + +```text +This is a unit test for the MCPL_input_once component, which differs from the original MCPL_input by: +1) Being MPI-parallelized (no implicit "repeat" of the particles in the file, file content is shared among processes +2) No implementation of "repetition", if further stats is needed downstream, SPLIT should be applied +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| v_smear | 1 | Mmake Gaussian MC choice on particle velocity with spread v_smear * particle velocity | 0.1 | +| pos_smear | m | Make uniform MC choice on sphere of radius pos_spear around particle position | 0.001 | +| dir_smear | deg | Make Gaussian MC choice in cone of opening dir_smear around particle direction | 0.01 | +| MCPLFILE | str | Input MCPL file. | "voutput.mcpl" | + +## Links + +- [Source code](Test_MCPL_input_once.instr) for `Test_MCPL_input_once.instr`. +- [Additional information](Test_MCPL_input_once.instr.md) + +--- + +*Generated for mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/examples/Tests_MCPL_etc/Test_MCPL_output/README.md b/mcstas-comps/examples/Tests_MCPL_etc/Test_MCPL_output/README.md new file mode 100644 index 000000000..cdf7f0685 --- /dev/null +++ b/mcstas-comps/examples/Tests_MCPL_etc/Test_MCPL_output/README.md @@ -0,0 +1,33 @@ +# The `Test_MCPL_output` Instrument + +*McStas: A test instrument for MCPL_output* + +## Identification + +- **Site:** Tests_MCPL_etc +- **Author:** Erik B Knudsen +- **Origin:** DTU +- **Date:** Mar 2016 + +## Description + +```text +This is a unit test for the MCPL_output component. +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| Ncount | 1 | Ncount defined via input parameter | 1e3 | + +## Links + +- [Source code](Test_MCPL_output.instr) for `Test_MCPL_output.instr`. +- [Additional information](Test_MCPL_output.instr.md) + +--- + +*Generated for mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/examples/Tests_RNG/Test_RNG_rand01/README.md b/mcstas-comps/examples/Tests_RNG/Test_RNG_rand01/README.md new file mode 100644 index 000000000..5399fa9a2 --- /dev/null +++ b/mcstas-comps/examples/Tests_RNG/Test_RNG_rand01/README.md @@ -0,0 +1,41 @@ +# The `Test_RNG_rand01` Instrument + +*McStas: Instrument to get basic test output from random number generator.* + +## Identification + +- **Site:** Tests_RNG +- **Author:** Peter Willendrup +- **Origin:** DTU +- **Date:** Oct 2nd, 2020 + +## Description + +```text +Instrument to get basic test output from random number generator. + +The instrument generates 2 randon numbers pr. particle using randpm1(), +encoded into the particle x and y coordinates. + +For a low statistics, one may e.g. check that setting the seed gives +varied output or fixing the seed gives fixed output· +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| Ncount | 1 | Specify statistics | 1000 | +| seed | 1 | Specify RNG seed | 0 | + +## Links + +- [Source code](Test_RNG_rand01.instr) for `Test_RNG_rand01.instr`. +- [Additional information](Test_RNG_rand01.instr.md) +- + +--- + +*Generated for mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/examples/Tests_RNG/Test_RNG_randnorm/README.md b/mcstas-comps/examples/Tests_RNG/Test_RNG_randnorm/README.md new file mode 100644 index 000000000..6264ea3ee --- /dev/null +++ b/mcstas-comps/examples/Tests_RNG/Test_RNG_randnorm/README.md @@ -0,0 +1,41 @@ +# The `Test_RNG_randnorm` Instrument + +*McStas: Instrument to get basic test output from random number generator.* + +## Identification + +- **Site:** Tests_RNG +- **Author:** Peter Willendrup +- **Origin:** DTU +- **Date:** Oct 2nd, 2020 + +## Description + +```text +Instrument to get basic test output from random number generator. + +The instrument generates 2 randon numbers pr. particle using randpm1(), +encoded into the particle x and y coordinates. + +For a low statistics, one may e.g. check that setting the seed gives +varied output or fixing the seed gives fixed output· +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| Ncount | 1 | Specify statistics | 1000000 | +| seed | 1 | Specify RNG seed | 0 | + +## Links + +- [Source code](Test_RNG_randnorm.instr) for `Test_RNG_randnorm.instr`. +- [Additional information](Test_RNG_randnorm.instr.md) +- + +--- + +*Generated for mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/examples/Tests_RNG/Test_RNG_randpm1/README.md b/mcstas-comps/examples/Tests_RNG/Test_RNG_randpm1/README.md new file mode 100644 index 000000000..e6547c91a --- /dev/null +++ b/mcstas-comps/examples/Tests_RNG/Test_RNG_randpm1/README.md @@ -0,0 +1,41 @@ +# The `Test_RNG_randpm1` Instrument + +*McStas: Instrument to get basic test output from random number generator.* + +## Identification + +- **Site:** Tests_RNG +- **Author:** Peter Willendrup +- **Origin:** DTU +- **Date:** Oct 2nd, 2020 + +## Description + +```text +Instrument to get basic test output from random number generator. + +The instrument generates 2 randon numbers pr. particle using randpm1(), +encoded into the particle x and y coordinates. + +For a low statistics, one may e.g. check that setting the seed gives +varied output or fixing the seed gives fixed output· +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| Ncount | 1 | Specify statistics | 1000 | +| seed | 1 | Specify RNG seed | 0 | + +## Links + +- [Source code](Test_RNG_randpm1.instr) for `Test_RNG_randpm1.instr`. +- [Additional information](Test_RNG_randpm1.instr.md) +- + +--- + +*Generated for mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/examples/Tests_RNG/Test_RNG_randtriangle/README.md b/mcstas-comps/examples/Tests_RNG/Test_RNG_randtriangle/README.md new file mode 100644 index 000000000..25511577f --- /dev/null +++ b/mcstas-comps/examples/Tests_RNG/Test_RNG_randtriangle/README.md @@ -0,0 +1,41 @@ +# The `Test_RNG_randtriangle` Instrument + +*McStas: Instrument to get basic test output from random number generator.* + +## Identification + +- **Site:** Tests_RNG +- **Author:** Peter Willendrup +- **Origin:** DTU +- **Date:** Oct 2nd, 2020 + +## Description + +```text +Instrument to get basic test output from random number generator. + +The instrument generates 2 randon numbers pr. particle using randpm1(), +encoded into the particle x and y coordinates. + +For a low statistics, one may e.g. check that setting the seed gives +varied output or fixing the seed gives fixed output· +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| Ncount | 1 | Specify statistics | 1000000 | +| seed | 1 | Specify RNG seed | 0 | + +## Links + +- [Source code](Test_RNG_randtriangle.instr) for `Test_RNG_randtriangle.instr`. +- [Additional information](Test_RNG_randtriangle.instr.md) +- + +--- + +*Generated for mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/examples/Tests_RNG/Test_RNG_randvec_target_circle/README.md b/mcstas-comps/examples/Tests_RNG/Test_RNG_randvec_target_circle/README.md new file mode 100644 index 000000000..231ffcc43 --- /dev/null +++ b/mcstas-comps/examples/Tests_RNG/Test_RNG_randvec_target_circle/README.md @@ -0,0 +1,42 @@ +# The `Test_RNG_randvec_target_circle` Instrument + +*McStas: Instrument to get basic test output from random number generator.* + +## Identification + +- **Site:** Tests_RNG +- **Author:** Peter Willendrup +- **Origin:** DTU +- **Date:** Oct 2nd, 2020 + +## Description + +```text +Instrument to get basic test output from random number generator. + +The instrument generates 2 randon numbers pr. particle using randpm1(), +encoded into the particle x and y coordinates. + +For a low statistics, one may e.g. check that setting the seed gives +varied output or fixing the seed gives fixed output· +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| Ncount | 1 | Specify statistics | 1000000 | +| seed | 1 | Specify RNG seed | 0 | +| dist | m | Distance between synthetic point-source and monitor | 1 | + +## Links + +- [Source code](Test_RNG_randvec_target_circle.instr) for `Test_RNG_randvec_target_circle.instr`. +- [Additional information](Test_RNG_randvec_target_circle.instr.md) +- + +--- + +*Generated for mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/examples/Tests_RNG/Test_RNG_randvec_target_rect/README.md b/mcstas-comps/examples/Tests_RNG/Test_RNG_randvec_target_rect/README.md new file mode 100644 index 000000000..c94bdaa68 --- /dev/null +++ b/mcstas-comps/examples/Tests_RNG/Test_RNG_randvec_target_rect/README.md @@ -0,0 +1,42 @@ +# The `Test_RNG_randvec_target_rect` Instrument + +*McStas: Instrument to get basic test output from random number generator.* + +## Identification + +- **Site:** Tests_RNG +- **Author:** Peter Willendrup +- **Origin:** DTU +- **Date:** Oct 2nd, 2020 + +## Description + +```text +Instrument to get basic test output from random number generator. + +The instrument generates 2 randon numbers pr. particle using randpm1(), +encoded into the particle x and y coordinates. + +For a low statistics, one may e.g. check that setting the seed gives +varied output or fixing the seed gives fixed output· +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| Ncount | 1 | Specify statistics | 1000000 | +| seed | 1 | Specify RNG seed | 0 | +| dist | m | Distance between synthetic point-source and monitor | 1 | + +## Links + +- [Source code](Test_RNG_randvec_target_rect.instr) for `Test_RNG_randvec_target_rect.instr`. +- [Additional information](Test_RNG_randvec_target_rect.instr.md) +- + +--- + +*Generated for mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/examples/Tests_RNG/Test_RNG_randvec_target_rect_angular/README.md b/mcstas-comps/examples/Tests_RNG/Test_RNG_randvec_target_rect_angular/README.md new file mode 100644 index 000000000..b2a982c28 --- /dev/null +++ b/mcstas-comps/examples/Tests_RNG/Test_RNG_randvec_target_rect_angular/README.md @@ -0,0 +1,42 @@ +# The `Test_RNG_randvec_target_rect_angular` Instrument + +*McStas: Instrument to get basic test output from random number generator.* + +## Identification + +- **Site:** Tests_RNG +- **Author:** Peter Willendrup +- **Origin:** DTU +- **Date:** Oct 2nd, 2020 + +## Description + +```text +Instrument to get basic test output from random number generator. + +The instrument generates 2 randon numbers pr. particle using randpm1(), +encoded into the particle x and y coordinates. + +For a low statistics, one may e.g. check that setting the seed gives +varied output or fixing the seed gives fixed output· +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| Ncount | 1 | Specify statistics | 1000000 | +| seed | 1 | Specify RNG seed | 0 | +| angle | deg | Angular focusing settin | 45 | + +## Links + +- [Source code](Test_RNG_randvec_target_rect_angular.instr) for `Test_RNG_randvec_target_rect_angular.instr`. +- [Additional information](Test_RNG_randvec_target_rect_angular.instr.md) +- + +--- + +*Generated for mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/examples/Tests_grammar/README.md b/mcstas-comps/examples/Tests_grammar/README.md new file mode 100644 index 000000000..808bb46e2 --- /dev/null +++ b/mcstas-comps/examples/Tests_grammar/README.md @@ -0,0 +1,41 @@ +# The `Test_GROUP_restore` Instrument + +*McStas: Test instrument for GROUP of monitors using restore_neutron* + +## Identification + +- **Site:** Tests_grammar +- **Author:** Peter Willendrup +- **Origin:** DTU/ESS +- **Date:** June 2024 + +## Description + +```text +Test instrument for GROUP of monitors using restore_neutron. + +1st test: Source emits intensity of 6e6 - "cube" positioned monitors each catch 1/6 of that. +2nd test: Reduced dimension of monitors mean a fraction is lost in the GROUP +3rd test: Adding a "catchall" arm recovers the intensity +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| dim | m | Width/height of monitors in "cubic" GROUP arrangement | 4 | +| catchall | 1 | Flag to indicate if "catchall"-Arm is included in GROUP | 0 | +| restore | | | 1 | +| src_dim | m | radius of 4PI-emitting source | 0.01 | + +## Links + +- [Source code](Test_GROUP_restore.instr) for `Test_GROUP_restore.instr`. +- [Additional information](Test_GROUP_restore.instr.md) +- A reference/HTML link for more information + +--- + +*Generated for mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/examples/Tests_grammar/Test_GROUP/README.md b/mcstas-comps/examples/Tests_grammar/Test_GROUP/README.md new file mode 100644 index 000000000..3c993e47d --- /dev/null +++ b/mcstas-comps/examples/Tests_grammar/Test_GROUP/README.md @@ -0,0 +1,34 @@ +# The `Test_GROUP` Instrument + +*McStas: Tests that GROUP logic works as expected* + +## Identification + +- **Site:** Tests_grammar +- **Author:** Erik Knudsen, Peter Willendrup +- **Origin:** DTU +- **Date:** 2021/09/30 + +## Description + +```text +Unit test for the GROUP logic +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| SLITW | m | Width of the GROUP'ed slits | 1e-6 | +| SIGNI | 1 | Which slit should be hit (left or right) | 1 | + +## Links + +- [Source code](Test_GROUP.instr) for `Test_GROUP.instr`. +- [Additional information](Test_GROUP.instr.md) + +--- + +*Generated for mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/examples/Tests_grammar/Test_Jump_Iterate/README.md b/mcstas-comps/examples/Tests_grammar/Test_Jump_Iterate/README.md new file mode 100644 index 000000000..2bd1f4db9 --- /dev/null +++ b/mcstas-comps/examples/Tests_grammar/Test_Jump_Iterate/README.md @@ -0,0 +1,38 @@ +# The `Test_Jump_Iterate` Instrument + +*McStas: A test of the JUMP ITERATE keyword to describe a long curved guide in a concise way.* + +## Identification + +- **Site:** Tests_grammar +- **Author:** E. Farhi +- **Origin:** ILL +- **Date:** March 30, 2015 + +## Description + +```text +A curved guide made of only two guide elements which are iterated with slight +rotation in between, to describe a long curved guide. +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| L | m | total length of curved section | 60 | +| numel | 1 | number of guide elements, each of length L/numel | 30 | +| R | m | curvature radius | 1500 | +| width | m | width of guide element | 0.03 | +| m | 1 | super-mirror coating wrt Ni, e.g. m=2 | 2 | + +## Links + +- [Source code](Test_Jump_Iterate.instr) for `Test_Jump_Iterate.instr`. +- [Additional information](Test_Jump_Iterate.instr.md) + +--- + +*Generated for mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/examples/Tests_grammar/Unittest_ALLOW_BACKPROP/README.md b/mcstas-comps/examples/Tests_grammar/Unittest_ALLOW_BACKPROP/README.md new file mode 100644 index 000000000..171e7f7ec --- /dev/null +++ b/mcstas-comps/examples/Tests_grammar/Unittest_ALLOW_BACKPROP/README.md @@ -0,0 +1,40 @@ +# The `Unittest_ALLOW_BACKPROP` Instrument + +*McStas: Unittest for ALLOW_BACKPROP macro* + +## Identification + +- **Site:** Tests_grammar +- **Author:** Peter Willendrup +- **Origin:** ESS +- **Date:** February 2026 + +## Description + +```text +Unittest to ensure that the macro ALLOW_BACKPROP works correctly. + +The test instrument includes two monitors, with a selectable ALLOW_BACKPROP in between. +The second monitor is placed physically "earlier" than the first, but logically after. + +1) With Backprop=0 the second monitor (closer to the source) should yield a signal of 0 +2) With Backprop=1 the second monitor should measure a signal since backpropagation is allowed +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| Backprop | 1 | Flag to enable the ALLOW_BACKPROP macro | 0 | + +## Links + +- [Source code](Unittest_ALLOW_BACKPROP.instr) for `Unittest_ALLOW_BACKPROP.instr`. +- [Additional information](Unittest_ALLOW_BACKPROP.instr.md) +- A reference/HTML link for more information + +--- + +*Generated for mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/examples/Tests_grammar/Unittest_JUMP_ITERATE/README.md b/mcstas-comps/examples/Tests_grammar/Unittest_JUMP_ITERATE/README.md new file mode 100644 index 000000000..4a10e8b83 --- /dev/null +++ b/mcstas-comps/examples/Tests_grammar/Unittest_JUMP_ITERATE/README.md @@ -0,0 +1,39 @@ +# The `Unittest_JUMP_ITERATE` Instrument + +*McStas: JUMP ITERATE unittest* + +## Identification + +- **Site:** Tests_grammar +- **Author:** Peter Willendrup +- **Origin:** DTU +- **Date:** Oct 28th, 2021 + +## Description + +```text +JUMP ITERATE unittest + +The instrument uses JUMP ITERATE to let each particle make n='jumps' returns +to the monitor. The particles have unit weight and hence the intensity scales +with the simulated statistics. (Use input parameter Ncount for setting the stats). +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| Ncount | 1 | Specify statistics | 1000 | +| jumps | 1 | Number of jumps | 10 | + +## Links + +- [Source code](Unittest_JUMP_ITERATE.instr) for `Unittest_JUMP_ITERATE.instr`. +- [Additional information](Unittest_JUMP_ITERATE.instr.md) +- + +--- + +*Generated for mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/examples/Tests_grammar/Unittest_JUMP_WHEN/README.md b/mcstas-comps/examples/Tests_grammar/Unittest_JUMP_WHEN/README.md new file mode 100644 index 000000000..145e7df7e --- /dev/null +++ b/mcstas-comps/examples/Tests_grammar/Unittest_JUMP_WHEN/README.md @@ -0,0 +1,39 @@ +# The `Unittest_JUMP_WHEN` Instrument + +*McStas: JUMP WHEN unittest* + +## Identification + +- **Site:** Tests_grammar +- **Author:** Peter Willendrup +- **Origin:** DTU +- **Date:** Oct 28th, 2021 + +## Description + +```text +JUMP WHEN unittest. + +One unit of intensity is emitted from a 1x1 m. The particles generated in +one source quadrant is repteated 'jumps' times. Resulting intensity should be: +1 + 0.25*jumps; +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| jumps | 1 | Number of jumps to do | 10 | +| Pp0 | 1 | Dummy input parameter used internally | 0 | + +## Links + +- [Source code](Unittest_JUMP_WHEN.instr) for `Unittest_JUMP_WHEN.instr`. +- [Additional information](Unittest_JUMP_WHEN.instr.md) +- + +--- + +*Generated for mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/examples/Tests_grammar/Unittest_SPLIT/README.md b/mcstas-comps/examples/Tests_grammar/Unittest_SPLIT/README.md new file mode 100644 index 000000000..945e54cde --- /dev/null +++ b/mcstas-comps/examples/Tests_grammar/Unittest_SPLIT/README.md @@ -0,0 +1,37 @@ +# The `Unittest_SPLIT` Instrument + +*McStas: SPLIT unittest* + +## Identification + +- **Site:** Tests_grammar +- **Author:** Peter Willendrup +- **Origin:** DTU +- **Date:** Oct 28th, 2021 + +## Description + +```text +SPLIT unittest. + +One unit of intensity is emitted from a 1x1 m. +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| SPLITS | 1 | Number of SPLIT to do | 10 | +| Pp0 | 1 | Dummy input parameter used internally | 1 | + +## Links + +- [Source code](Unittest_SPLIT.instr) for `Unittest_SPLIT.instr`. +- [Additional information](Unittest_SPLIT.instr.md) +- + +--- + +*Generated for mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/examples/Tests_grammar/Unittest_SPLIT_sample/README.md b/mcstas-comps/examples/Tests_grammar/Unittest_SPLIT_sample/README.md new file mode 100644 index 000000000..349a3e34d --- /dev/null +++ b/mcstas-comps/examples/Tests_grammar/Unittest_SPLIT_sample/README.md @@ -0,0 +1,38 @@ +# The `Unittest_SPLIT_sample` Instrument + +*McStas: SPLIT unittest including samples* + +## Identification + +- **Site:** Tests_grammar +- **Author:** Peter Willendrup +- **Origin:** DTU +- **Date:** Oct 28th, 2021 + +## Description + +```text +SPLIT unittest. + +One unit of intensity is emitted from a 1x1 m. +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| SAMPLE | | | 1 | +| SPLITS | 1 | Number of SPLIT to do | 10 | +| Pp0 | 1 | Dummy input parameter used internally | 1 | + +## Links + +- [Source code](Unittest_SPLIT_sample.instr) for `Unittest_SPLIT_sample.instr`. +- [Additional information](Unittest_SPLIT_sample.instr.md) +- + +--- + +*Generated for mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/examples/Tests_monitors/Test_Cyl_monitors/README.md b/mcstas-comps/examples/Tests_monitors/Test_Cyl_monitors/README.md new file mode 100644 index 000000000..581b5a418 --- /dev/null +++ b/mcstas-comps/examples/Tests_monitors/Test_Cyl_monitors/README.md @@ -0,0 +1,44 @@ +# The `Test_Cyl_monitors` Instrument + +*McStas: Test Monitor_nD against basic monitor* + +## Identification + +- **Site:** Tests_monitors +- **Author:** P. Willendrup +- **Origin:** DTU +- **Date:** 30. September 2020 + +## Description + +```text +A test instrument to compare Monitor_nD output against basic 1D and 2D monitors. +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| lambda | Angs | Wavelength at monochromator, computed from DM and THETA_M if left as 0. | 5 | +| L1 | m | Source-sample distance | 10 | +| bins | | Number of bins on monitors | 100 | +| omega | deg | Focusing angle wrt. sample | 90 | +| thmin | deg | Minimum angle mesured | -180 | +| thmax | deg | Maximum angle mesured | 180 | +| focus_aw | deg | Angular width of focusing from sample | 10 | +| focus_ah | deg | Angular height of focusing from sample | 2 | +| focus_xw | m | Width of focusing from sample | 0 | +| focus_yh | m | Height of focusing from sample | 0 | +| tx | | | 0 | +| tz | | | 0 | + +## Links + +- [Source code](Test_Cyl_monitors.instr) for `Test_Cyl_monitors.instr`. +- [Additional information](Test_Cyl_monitors.instr.md) + +--- + +*Generated for mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/examples/Tests_monitors/Test_Monitor_nD/README.md b/mcstas-comps/examples/Tests_monitors/Test_Monitor_nD/README.md new file mode 100644 index 000000000..d0e117aea --- /dev/null +++ b/mcstas-comps/examples/Tests_monitors/Test_Monitor_nD/README.md @@ -0,0 +1,39 @@ +# The `Test_Monitor_nD` Instrument + +*McStas: Test Monitor_nD against basic monitor* + +## Identification + +- **Site:** Tests_monitors +- **Author:** P. Willendrup +- **Origin:** DTU +- **Date:** 30. September 2020 + +## Description + +```text +A test instrument to compare Monitor_nD output against basic 1D and 2D monitors. +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| lambda | Angs | Wavelength at monochromator, computed from DM and THETA_M if left as 0. | 1 | +| L1 | m | Source-sample distance | 10 | +| bins | | Number of bins on monitors | 100 | +| xw | m | Width of detector | 0.11 | +| yh | m | Height of detector | 0.16 | +| hdiv | deg | Horizontal divergence measured by detector | 2 | +| vdiv | deg | Vertical divergence measured by detector | 2 | + +## Links + +- [Source code](Test_Monitor_nD.instr) for `Test_Monitor_nD.instr`. +- [Additional information](Test_Monitor_nD.instr.md) + +--- + +*Generated for mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/examples/Tests_monitors/Test_TOF_PSDmonitor_toQ/README.md b/mcstas-comps/examples/Tests_monitors/Test_TOF_PSDmonitor_toQ/README.md new file mode 100644 index 000000000..815ba7a0d --- /dev/null +++ b/mcstas-comps/examples/Tests_monitors/Test_TOF_PSDmonitor_toQ/README.md @@ -0,0 +1,37 @@ +# The `Test_TOF_PSDmonitor_toQ` Instrument + +*McStas: Test instrument for monitor TOF_PSDmonitor_toQ (Rob Dalgliesh)* + +## Identification + +- **Site:** Tests_monitors +- **Author:** Peter Willendrup +- **Origin:** ESS +- **Date:** 20251207 + +## Description + +```text +Rudimentary test-instrument for monitor TOF_PSDmonitor_toQ developed by Rob Dalgliesh, ISIS. + +The tested monitor is a 1-dimensional Q-monitor that calculates Q from "measured" time-of-flight, +i.e. not from particle velocity parameters. +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| theta | degs | Scattering angle | 0.91 | + +## Links + +- [Source code](Test_TOF_PSDmonitor_toQ.instr) for `Test_TOF_PSDmonitor_toQ.instr`. +- [Additional information](Test_TOF_PSDmonitor_toQ.instr.md) +- + +--- + +*Generated for mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/examples/Tests_optics/Test_Al_windows/README.md b/mcstas-comps/examples/Tests_optics/Test_Al_windows/README.md new file mode 100644 index 000000000..441567905 --- /dev/null +++ b/mcstas-comps/examples/Tests_optics/Test_Al_windows/README.md @@ -0,0 +1,46 @@ +# The `Test_Al_windows` Instrument + +*McStas: Small test instrument for studying Al-window performance* + +## Identification + +- **Site:** Tests_optics +- **Author:** Peter Willendrup +- **Origin:** ESS +- **Date:** 20260316 + +## Description + +```text +Test instrument for studying transmission through Al-windows. + +Includes 3 models of increasing complexity / sophistication: +1) Al_window(),: +- simple linear absorption + 4th order scattering model +- infinite-plane geometry +2) PowderN() +- Material specified from Al.laz input-file +- Parametrized for 80% statistics -> transmission +3) NCrystal() +- Material specified from local Al as .ncmat format input +(generated from CIF file COD / 1502689) +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| Window | 1 | Choice of Al_Window (1), PowderN (2) or NCrystal (3) model | 1 | +| thickness | m | Thickness of Al window | 0.005 | + +## Links + +- [Source code](Test_Al_windows.instr) for `Test_Al_windows.instr`. +- [Additional information](Test_Al_windows.instr.md) +- + +--- + +*Generated for mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/examples/Tests_optics/Test_Collimator_Radial/README.md b/mcstas-comps/examples/Tests_optics/Test_Collimator_Radial/README.md new file mode 100644 index 000000000..afa70d686 --- /dev/null +++ b/mcstas-comps/examples/Tests_optics/Test_Collimator_Radial/README.md @@ -0,0 +1,37 @@ +# The `Test_Collimator_Radial` Instrument + +*McStas: Cross comparison of radial collimator components* + +## Identification + +- **Site:** Tests_optics +- **Author:** E. Farhi [farhi@ill.fr] +- **Origin:** ILL +- **Date:** Sept 1st, 2008 + +## Description + +```text +Cross comparison of radial collimator components, using McStas and +contributed components. It shows that all implementations are equivalent. +The Exact_radial_coll contributed component also takes into account the absorbing +blade thickness between slits, which decreases slightly intensity. +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| Collimator | 1 | Choice of radial collimator component to test, with 1=Collimator_Radial, 2=Collimator_ROC, 3=Exact_radial_coll. | 1 | +| Powder | string | Reflection list for powder-sample | "Na2Ca3Al2F14.laz" | + +## Links + +- [Source code](Test_Collimator_Radial.instr) for `Test_Collimator_Radial.instr`. +- [Additional information](Test_Collimator_Radial.instr.md) + +--- + +*Generated for mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/examples/Tests_optics/Test_Conics_pairs/README.md b/mcstas-comps/examples/Tests_optics/Test_Conics_pairs/README.md new file mode 100644 index 000000000..3d53f16e4 --- /dev/null +++ b/mcstas-comps/examples/Tests_optics/Test_Conics_pairs/README.md @@ -0,0 +1,44 @@ +# The `Test_Conics_pairs` Instrument + +*McStas: Unit test instrument for Conics Pairs components* + +## Identification + +- **Site:** Tests_optics +- **Author:** Erik B Knudsen (erkn@fysik.dtu.dk) +- **Origin:** DTU Physics +- **Date:** Dec '21 + +## Description + +```text +Example instrument that shows some ways of using Conics_Ph and Conics_EH +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| OPTIC | | Flag to choose between 0: no optic, 1: EH pair, 2: PH pair | 1 | +| ssize | m | Source radius | 1e-6 | +| fs | m | Distance betwee nsource and optic mid plane | 10 | +| fi | m | Distance between optics mid plane and focal point. | 10 | +| R0 | 1 | Mirror substrate reflectivity | 0.99 | +| m | 1 | m-value of supermirrors | 3 | +| W | AA-1 | Width of supermirror cut-off | 0.003 | +| alpha | AA | Slope of reflectivity for reflectivity curve approximation | 6.07 | +| nshells | 1 | Number of Wolter-optic shells | 4 | +| rmin | | | 0.0031416 | +| rmax | | | 0.05236 | + +## Links + +- [Source code](Test_Conics_pairs.instr) for `Test_Conics_pairs.instr`. +- [Additional information](Test_Conics_pairs.instr.md) +- + +--- + +*Generated for mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/examples/Tests_optics/Test_DiskChoppers/README.md b/mcstas-comps/examples/Tests_optics/Test_DiskChoppers/README.md new file mode 100644 index 000000000..5815710fe --- /dev/null +++ b/mcstas-comps/examples/Tests_optics/Test_DiskChoppers/README.md @@ -0,0 +1,36 @@ +# The `Test_DiskChoppers` Instrument + +*McStas: Simple test instrument that compares the use of 2 DiskChoppers with one MultiDiskChopper* + +## Identification + +- **Site:** Tests_optics +- **Author:** Peter Willendrup +- **Origin:** DTU +- **Date:** September 2018 + +## Description + +```text +Simple test instrument that compares the use of 2 DiskChoppers with one MultiDiskChopper +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| chopper | int | chopper=0 selects two DiskChoppers, chopper=1 selects one MultiDiskChopper | 0 | +| lambda | AA | Mean wavelength produced from the source | 10 | +| dlambda | AA | Halfwidth of wavelenghts produced from the source | 9.9 | +| deltay | m | Vertical displacement of MultiDiskChopper vertical centre of rotation (default is to be positioned like DiskChopper) | -0.19 | + +## Links + +- [Source code](Test_DiskChoppers.instr) for `Test_DiskChoppers.instr`. +- [Additional information](Test_DiskChoppers.instr.md) + +--- + +*Generated for mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/examples/Tests_optics/Test_DiskChoppers2/README.md b/mcstas-comps/examples/Tests_optics/Test_DiskChoppers2/README.md new file mode 100644 index 000000000..60b9197de --- /dev/null +++ b/mcstas-comps/examples/Tests_optics/Test_DiskChoppers2/README.md @@ -0,0 +1,42 @@ +# The `Test_DiskChoppers2` Instrument + +*McStas: Simple test instrument that compares DiskChoppers with a simple, rotating Slit.* + +## Identification + +- **Site:** Tests_optics +- **Author:** Peter Willendrup +- **Origin:** DTU +- **Date:** September 2018 + +## Description + +```text +Simple test instrument that compares DiskChoppers with a simple, rotating Slit. +When ABSORBER is set, a slab of B4C is acts as absorbing medium. +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| chopper | int | chopper=0 selects DiskChopper, chopper=1 selects a rotating Slit | 0 | +| lambda | AA | Mean wavelength produced from the source | 10 | +| dlambda | AA | Halfwidth of wavelenghts produced from the source | 9.9 | +| deltay | m | Position of centre of rotation vs. beam in slit case | 0.19 | +| dx | | | 0.016 | +| nu | Hz | Chopper frequency | 10 | +| phase | deg | Chopper phase | 0 | +| ABSORBER | 1 | Flag to indicate if slab is B4C(=1) or perfect(=0) | 0 | +| tz | m | Thickness of B4C slab | 0.001 | + +## Links + +- [Source code](Test_DiskChoppers2.instr) for `Test_DiskChoppers2.instr`. +- [Additional information](Test_DiskChoppers2.instr.md) + +--- + +*Generated for mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/examples/Tests_optics/Test_Fermi/README.md b/mcstas-comps/examples/Tests_optics/Test_Fermi/README.md new file mode 100644 index 000000000..f4898c772 --- /dev/null +++ b/mcstas-comps/examples/Tests_optics/Test_Fermi/README.md @@ -0,0 +1,47 @@ +# The `Test_Fermi` Instrument + +*McStas: Cross comparison of Fermi Chopper components* + +## Identification + +- **Site:** Tests_optics +- **Author:** E. Farhi [farhi@ill.fr] +- **Origin:** ILL +- **Date:** Sept 1st, 2008 + +## Description + +```text +Cross comparison of Fermi Chopper components, using McStas and +contributed components, as well as rotating collimator approximations. It +shows that all implementations are equivalent. However, approximating rotating +guide are 30% faster than McStas Fermi chopper. +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| Fermi | 1 | Choice of Fermi chopper component to test, with 1=FermiChopper, 3=FermiChopper_ILL, 4=rotating Guide_gravity, 5=rotating Guide_channeled | 1 | +| lambda | AA | Mean wavelength from source | 3.39 | +| width_FC | m | total slit pack width | 0.044 | +| height_FC | m | height of FC slit pack | 0.064 | +| length_FC | m | length of FC slit pack | 0.012 | +| FC_Hz | Hz | rotation speed. Omega=2*PI*nu in rad/s, nu*60 in rpm | 100 | +| Nslit_FC | | Number of slits in FC slit package | 120 | +| d_SF | m | distance from Source to FC center | 3 | +| d_FD | m | distance from FC center to Detector | 3 | +| phase | deg | FC phase. Use -0 for automatic | 271.92 | +| time_to_arrival | | | 0 | +| time_window_width | | | 0 | + +## Links + +- [Source code](Test_Fermi.instr) for `Test_Fermi.instr`. +- [Additional information](Test_Fermi.instr.md) + +--- + +*Generated for mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/examples/Tests_optics/Test_FocalisationMirrors/README.md b/mcstas-comps/examples/Tests_optics/Test_FocalisationMirrors/README.md new file mode 100644 index 000000000..030e6f0b9 --- /dev/null +++ b/mcstas-comps/examples/Tests_optics/Test_FocalisationMirrors/README.md @@ -0,0 +1,45 @@ +# The `Test_FocalisationMirrors` Instrument + +*McStas: Test instrument for neutron focalisation with a set of supermirrors. +No guide / velocity selector +One parabolic SM converges the incoming beam to its focal point, then one +elliptic SM (with primary focal point at same location as parabolic SM focal point) +images the focal point onto the detector.* + +## Identification + +- **Site:** Tests_optics +- **Author:** Sylvain Desert +- **Origin:** LLB +- **Date:** 2007. + +## Description + +```text +Test instrument for the MirrorElli and MirrorPara components +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| Qmin | AA^-1 | Minimum momentum transfer on the detector | .0001 | +| G | 1 | Ratio of the mirror focal length = increase in accepted divergence angle | 1 | +| H | m | Height of mirrors | .0001 | +| F | m | Parabolic focal | .00066 | +| DET | m | Distance between the two elliptic focal points | 8.2 | +| lambda | AA | Mean wavelength of neutrons | 14 | +| divergence | deg | Source divergence | .1 | +| BeamWidth | m | Length of the source to focalize | .05 | +| TetaMin | deg | Minimum angle that must be reflected by the device assuming m=3 SM (TetaMin=3 for 5A and above neutron) | 3 | + +## Links + +- [Source code](Test_FocalisationMirrors.instr) for `Test_FocalisationMirrors.instr`. +- [Additional information](Test_FocalisationMirrors.instr.md) + +--- + +*Generated for mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/examples/Tests_optics/Test_Guides/README.md b/mcstas-comps/examples/Tests_optics/Test_Guides/README.md new file mode 100644 index 000000000..a1836dec0 --- /dev/null +++ b/mcstas-comps/examples/Tests_optics/Test_Guides/README.md @@ -0,0 +1,35 @@ +# The `Test_Guides` Instrument + +*McStas: Cross comparison of Guide components* + +## Identification + +- **Site:** Tests_optics +- **Author:** E. Farhi [farhi@ill.fr] +- **Origin:** ILL +- **Date:** Sept 1st, 2008 + +## Description + +```text +Cross comparison of Guide components, using McStas and +contributed components. It shows that all implementations are equivalent, +except the Guide_honeycomb which has a different geometry. +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| Guide | 1 | Choice of Guide component to test, with 1=Guide, 2=Guide_channeled, 3=Guide_gravity, 4=Guide_wavy, 5=Guide_curved 6=Elliptic_guide_gravity 7=Guide_honeycomb | 1 | + +## Links + +- [Source code](Test_Guides.instr) for `Test_Guides.instr`. +- [Additional information](Test_Guides.instr.md) + +--- + +*Generated for mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/examples/Tests_optics/Test_Guides_Curved/README.md b/mcstas-comps/examples/Tests_optics/Test_Guides_Curved/README.md new file mode 100644 index 000000000..773a3daf8 --- /dev/null +++ b/mcstas-comps/examples/Tests_optics/Test_Guides_Curved/README.md @@ -0,0 +1,36 @@ +# The `Test_Guides_Curved` Instrument + +*McStas: Cross comparison of curved Guide components* + +## Identification + +- **Site:** Tests_optics +- **Author:** P. Willendrup, DTU Fysik +- **Origin:** DTU Fysik +- **Date:** Nov 1st, 2013 + +## Description + +```text +Cross comparison of curved Guide components, using McStas and +contributed components. It shows that all implementations are to good approximation equivalent. +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| Guide | 1 | Choice of Guide component to test, with 1=Guide_curved 2=Elliptic_guide_gravity, 3=Pol_bender, 4=Bender. | 1 | +| curvature | m | Radius of curvature | 1000 | +| length | m | Length of the guide | 100 | + +## Links + +- [Source code](Test_Guides_Curved.instr) for `Test_Guides_Curved.instr`. +- [Additional information](Test_Guides_Curved.instr.md) + +--- + +*Generated for mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/examples/Tests_optics/Test_Lens/README.md b/mcstas-comps/examples/Tests_optics/Test_Lens/README.md new file mode 100644 index 000000000..af11b0c63 --- /dev/null +++ b/mcstas-comps/examples/Tests_optics/Test_Lens/README.md @@ -0,0 +1,36 @@ +# The `Test_Lens` Instrument + +*McStas: Demonstrate focusing effect of refractive lenses + +%Example: lambda=10 position_PSD=8.2 Detector: Last_PSD_I=2.6829e-19* + +## Identification + +- **Site:** Tests_optics +- **Author:** E. Farhi/C. Monzat +- **Origin:** ILL +- **Date:** Dec 2009. + +## Description + +```text + +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| lambda | Angs | Source wavelength | 10 | +| position_PSD | m | Distance from last lens to first monitor | 8.2 | + +## Links + +- [Source code](Test_Lens.instr) for `Test_Lens.instr`. +- [Additional information](Test_Lens.instr.md) + +--- + +*Generated for mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/examples/Tests_optics/Test_Monochromator_bent/README.md b/mcstas-comps/examples/Tests_optics/Test_Monochromator_bent/README.md new file mode 100644 index 000000000..2197ccfba --- /dev/null +++ b/mcstas-comps/examples/Tests_optics/Test_Monochromator_bent/README.md @@ -0,0 +1,34 @@ +# The `Test_Monochromator_bent` Instrument + +*McStas: Basic test instrument for the Monochromator_bent component* + +## Identification + +- **Site:** Tests_optics +- **Author:** Daniel Lomholt Christensen +- **Origin:** ILL +- **Date:** 14:13:59 on January 23, 2024 + +## Description + +```text +Basic test instrument for the Monochromator_bent component +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| mono_rotation | deg | Rotation of the monochromator, relative to the z axis | 43.5337 | +| mono_mos | arcmin | Monochromator mosaicity | 0 | + +## Links + +- [Source code](Test_Monochromator_bent.instr) for `Test_Monochromator_bent.instr`. +- [Additional information](Test_Monochromator_bent.instr.md) + +--- + +*Generated for mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/examples/Tests_optics/Test_Monochromator_bent_complex/README.md b/mcstas-comps/examples/Tests_optics/Test_Monochromator_bent_complex/README.md new file mode 100644 index 000000000..e80ebba66 --- /dev/null +++ b/mcstas-comps/examples/Tests_optics/Test_Monochromator_bent_complex/README.md @@ -0,0 +1,44 @@ +# The `Test_Monochromator_bent_complex` Instrument + +*McStas: A test instrument that highlights Monochromator Bent complex's capabilities* + +## Identification + +- **Site:** Tests_optics +- **Author:** Jakob Lass (jakob.lass@psi.ch) and modified by Daniel Lomholt Christensen (daniel.lomholt.2000@gmail.com) +- **Origin:** PSI/LSN +- **Date:** 20250702 + +## Description + +```text +This is a first draft for the WARP instrument proposal, as created by +Daniel Gabriel Mazzone (daniel.mazzone@psi.ch) and Jakob Lass +(jakob.lass@psi.ch). This instrument introduces how to use the Monochromator_bent_complex +component in an instrument draft. +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| sample_x | m | Source horz illumination | 0.005 | +| sample_y | m | Source vert illumination | 0.015 | +| L0 | m | Z-displacement of detector wrt. rotation point | 1.38000 | +| L1 | m | Y-displacement of detector wrt. rotation point | 2.47143 | +| Ld | m | Detector width | 2 | +| det_rot | m | Detector rotation | -6.00000 | +| mos | arcmin | Monochromator mosaicity | 60 | +| extra | deg | Perturbation rotation angle | 0 | +| use_single_plane | flag | Flag indicating whether the crystal should be instantiated with a single plane of reflection, instead of 92 planes | 0 | + +## Links + +- [Source code](Test_Monochromator_bent_complex.instr) for `Test_Monochromator_bent_complex.instr`. +- [Additional information](Test_Monochromator_bent_complex.instr.md) + +--- + +*Generated for mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/examples/Tests_optics/Test_Monochromators/README.md b/mcstas-comps/examples/Tests_optics/Test_Monochromators/README.md new file mode 100644 index 000000000..41015983e --- /dev/null +++ b/mcstas-comps/examples/Tests_optics/Test_Monochromators/README.md @@ -0,0 +1,58 @@ +# The `Test_Monochromators` Instrument + +*McStas: Compares intensities of Monochromator components.* + +## Identification + +- **Site:** Tests_optics +- **Author:** Peter Christiansen +- **Origin:** RISOE. +- **Date:** July 2006. + +## Description + +```text +Very simple setup to compare intensities diffracted by Monochromators. +It shows that implementations are equivalent. + +PG 002 oriented examples: +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| Mono | 1 | Choice of Monochromator component to use, with 1=Monochromator_flat 2=Monochromator_pol 3=Monochromator_pol (forcing 1% events to be reflected) 4=Monochromator_curved (in flat mode) 5=Monochromator_2foc (contrib, flat mode) 6=Single_crystal 7=NCrystal | 1 | +| lmin | Angs | Minimum wavelength produced from source | 1.6 | +| lmax | Angs | Maximum wavelength produced from source | 2.4 | +| Moz | arcmin | Mosaicity | 40 | +| reflections | str | input-file for Single_crystal (Mono=6) | "C_graphite.lau" | +| NXrefs | str | input-file for NCrystal (Mono=7) | "C_sg194_pyrolytic_graphite.ncmat" | +| DM | Angs | Mono lattice spacing (should be chosen compatible with file-unput when Mono=6/7 | 3.3539 | +| PG | 1 | PG-mode for Single_crystal (range 0-1) | 0 | +| powder | 1 | Powder-mode for Single_crystal | 0 | +| order | 1 | Maximum order of scattering in Single_crystal | 0 | +| ax | Angs or 1/Angs | x-coordinate of 1st direct/recip lattice unit cell vector (depends on recip setting) | 0 | +| ay | Angs or 1/Angs | y-coordinate of 1st direct/recip lattice unit cell vector (depends on recip setting) | 0 | +| az | Angs or 1/Angs | z-coordinate of 1st direct/recip lattice unit cell vector (depends on recip setting) | 0 | +| bx | Angs or 1/Angs | x-coordinate of 2nd direct/recip lattice unit cell vector (depends on recip setting) | 0 | +| by | Angs or 1/Angs | y-coordinate of 2nd direct/recip lattice unit cell vector (depends on recip setting) | 0 | +| bz | Angs or 1/Angs | z-coordinate of 2nd direct/recip lattice unit cell vector (depends on recip setting) | 0 | +| cx | Angs or 1/Angs | x-coordinate of 3rd direct/recip lattice unit cell vector (depends on recip setting) | 0 | +| cy | Angs or 1/Angs | y-coordinate of 3rd direct/recip lattice unit cell vector (depends on recip setting) | 0 | +| cz | Angs or 1/Angs | x-coordinate of 3rd direct/recip lattice unit cell vector (depends on recip setting) | 0 | +| recip | 1 | Flag to indicate if ax/y/z, bx/y/z, cx/y/z lattice corrdinates are in direct (=0) or reciprocal space units | 0 | +| dthick | m | Thickness of mono slab in Mono=6/7 cases | 0.0015 | +| p_transmit | 1 | Probability of transmission in Single_crystal Mono=6 case | 0.001 | +| lambda | Angs | Target mochromator wavelength | 2.0 | + +## Links + +- [Source code](Test_Monochromators.instr) for `Test_Monochromators.instr`. +- [Additional information](Test_Monochromators.instr.md) + +--- + +*Generated for mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/examples/Tests_optics/Test_NMO/README.md b/mcstas-comps/examples/Tests_optics/Test_NMO/README.md new file mode 100644 index 000000000..62048f9d8 --- /dev/null +++ b/mcstas-comps/examples/Tests_optics/Test_NMO/README.md @@ -0,0 +1,56 @@ +# The `Test_NMO` Instrument + +*McStas: Implements a test instrument for the component FlatEllipse_finite_mirror.* + +## Identification + +- **Site:** Tests_optics +- **Author:** Christoph Herb, TUM +- **Origin:** TUM +- **Date:** 2022-2023 + +## Description + +```text +Implements a test instrument for the component FlatEllipse_finite_mirror, +implementing Nested Mirror Optic (NMO) as suggested by Böni et al. +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| det_width | m | Detector width | 0.218 | +| source_width | m | Source width | 0.03 | +| source_height | m | Source height | 0.00000001 | +| lam_source | AA | Central source wavelength | 5 | +| dL | AA | Source wavelength spread | 0.5 | +| v_divergence | deg | Source vertical divergence | 2.5 | +| h_divergence | deg | Source horizontal divergence | 0.000001 | +| b0 | m | Parameter r0 of mirrors (distance to the mirror at lStart) | 0.2076 | +| mf | 1 | M-value of the inner side of the coating | 100 | +| mb | 1 | M-value of the outer side of the coating | 0 | +| mirror_width | m | Width of mirrors | 0 | +| focal_length | m | Mirror focal-length | 6 | +| mirrors | 1 | Number of NMO mirrors | 29 | +| mirror_sidelength | m | Side-length of mirrors | 0.1 | +| lStart | m | Parameter lStart of the mirrors | -0.6 | +| lEnd | m | Parameter lEnd of the mirrors | 0.6 | +| pixels | 1 | Number of detector pixels | 100 | +| flux | n/s/cm^2/st/AA | Source flux | 1 | +| det_width_focus | m | Detector width at focusing pt. | 0.03 | +| rs_at_zero_str | str | Filename to specify mirror rfront_inner_file (e.g. "rs_at_lstart.txt") | "NULL" | +| activate_mirror | 1 | Flag to activate mirror | 1 | + +## Links + +- [Source code](Test_NMO.instr) for `Test_NMO.instr`. +- [Additional information](Test_NMO.instr.md) +- P Böni presentation at PSI NFO workshop +- Christoph Herb et al., Nucl. Instrum. Meth. A 1040, 1671564 (1-18) 2022. + +--- + +*Generated for mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/examples/Tests_optics/Test_PSD_Detector/README.md b/mcstas-comps/examples/Tests_optics/Test_PSD_Detector/README.md new file mode 100644 index 000000000..5e51e649c --- /dev/null +++ b/mcstas-comps/examples/Tests_optics/Test_PSD_Detector/README.md @@ -0,0 +1,35 @@ +# The `Test_PSD_Detector` Instrument + +*McStas: Test for PSD_Detector component* + +## Identification + +- **Site:** Tests_optics +- **Author:** Thorwald van Vuure +- **Origin:** ILL +- **Date:** Thorwald van Vuure + +## Description + +```text +Test for PSD_Detector component showing charge drift +and parallax effect when rotating detector with e.g. 'rot=10' +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| rot | deg | rotation angle of detector | 0 | + +## Links + +- [Source code](Test_PSD_Detector.instr) for `Test_PSD_Detector.instr`. +- [Additional information](Test_PSD_Detector.instr.md) +- The PSD_Detector component + +--- + +*Generated for mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/examples/Tests_optics/Test_Pol_Bender_Vs_Guide_Curved/README.md b/mcstas-comps/examples/Tests_optics/Test_Pol_Bender_Vs_Guide_Curved/README.md new file mode 100644 index 000000000..d1ab0f568 --- /dev/null +++ b/mcstas-comps/examples/Tests_optics/Test_Pol_Bender_Vs_Guide_Curved/README.md @@ -0,0 +1,38 @@ +# The `Test_Pol_Bender_Vs_Guide_Curved` Instrument + +*McStas: Test that Pol_bender and Guide_curved intensities are the same.* + +## Identification + +- **Site:** Tests_optics +- **Author:** Peter Christiansen (peter.christiansen@risoe.dk) +- **Origin:** RISOE +- **Date:** July 2006 + +## Description + +```text +Using the WHEN keyword 2 Pol_bender (pos and neg radius) are +compared to a Pol_guide. +The intensity on the monitor should be roughly 0.000228 +with mean 8.65+-0.62 AA. +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| guideLength | m | Bender/Guide length | 10.0 | +| guideRadius | m | Bender/Guide radius | 100.0 | + +## Links + +- [Source code](Test_Pol_Bender_Vs_Guide_Curved.instr) for `Test_Pol_Bender_Vs_Guide_Curved.instr`. +- [Additional information](Test_Pol_Bender_Vs_Guide_Curved.instr.md) +- A reference/HTML link for more information + +--- + +*Generated for mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/examples/Tests_optics/Test_Rotator/README.md b/mcstas-comps/examples/Tests_optics/Test_Rotator/README.md new file mode 100644 index 000000000..6d61f5383 --- /dev/null +++ b/mcstas-comps/examples/Tests_optics/Test_Rotator/README.md @@ -0,0 +1,38 @@ +# The `Test_Rotator` Instrument + +*McStas: Unittest for Rotator/Derotator* + +## Identification + +- **Site:** Tests_optics +- **Author:** Peter Willendrup +- **Origin:** ESS +- **Date:** October 2023 + +## Description + +```text +Unittest for Rotator/Derotator + +Example: mcrun test.instr +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| nu | Hz | Rotation frequency | 10 | +| phase | deg | Rotatoion phase | 5 | +| dir | int | Rotation axis direction x=1, y=2, z=3 | 2 | + +## Links + +- [Source code](Test_Rotator.instr) for `Test_Rotator.instr`. +- [Additional information](Test_Rotator.instr.md) +- A reference/HTML link for more information + +--- + +*Generated for mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/examples/Tests_optics/Test_Selectors/README.md b/mcstas-comps/examples/Tests_optics/Test_Selectors/README.md new file mode 100644 index 000000000..37dda5c30 --- /dev/null +++ b/mcstas-comps/examples/Tests_optics/Test_Selectors/README.md @@ -0,0 +1,37 @@ +# The `Test_Selectors` Instrument + +*McStas: Cross comparison of velocity selector components* + +## Identification + +- **Site:** Tests_optics +- **Author:** E. Farhi [farhi@ill.fr] +- **Origin:** ILL +- **Date:** Sept 28th, 2010 + +## Description + +```text +Cross comparison of Selector components, using McStas and +contributed components. It shows that all implementations are equivalent. +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| selector | 1 | Choice of the velocity selector to test, with | 1 | +| lambda | Angs | neutron wavelength selected by the velocity selector | 4 | +| phi | deg | velocity selector twist angle | 48.3 | +| d_vs | m | velocity selector rotating drum length | 0.25 | + +## Links + +- [Source code](Test_Selectors.instr) for `Test_Selectors.instr`. +- [Additional information](Test_Selectors.instr.md) + +--- + +*Generated for mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/examples/Tests_optics/Test_Source_pulsed/README.md b/mcstas-comps/examples/Tests_optics/Test_Source_pulsed/README.md new file mode 100644 index 000000000..8a4509cc3 --- /dev/null +++ b/mcstas-comps/examples/Tests_optics/Test_Source_pulsed/README.md @@ -0,0 +1,35 @@ +# The `Test_Source_pulsed` Instrument + +*McStas: A test instrument to check the component 'Source_pulsed'* + +## Identification + +- **Site:** Tests_optics +- **Author:** Klaus LIEUTENANT (k.lieutenant@fz-juelich.de) based on 'Test_9-Sources' by Emmanuel FARHI (farhi@ill.fr) +- **Origin:** FZJ +- **Date:** Mar 17, 2021 + +## Description + +```text +A test instrument to check if the component 'Source_pulsed' provides valid spectra and intensities. +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| source | 1 | selection of the source to use in 1=Source_pulsed for HBS thermal, 2=Source_pulsed for HBS cold, 3=Source_pulsed for HBS bispectral | 1 | +| Lmin | Ang | Minimum wavelength produced at source | 0.1 | +| Lmax | Ang | Maximum wavelength produced at source | 10.1 | + +## Links + +- [Source code](Test_Source_pulsed.instr) for `Test_Source_pulsed.instr`. +- [Additional information](Test_Source_pulsed.instr.md) + +--- + +*Generated for mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/examples/Tests_optics/Test_Sources/README.md b/mcstas-comps/examples/Tests_optics/Test_Sources/README.md new file mode 100644 index 000000000..969060f23 --- /dev/null +++ b/mcstas-comps/examples/Tests_optics/Test_Sources/README.md @@ -0,0 +1,42 @@ +# The `Test_Sources` Instrument + +*McStas: A test instrument to compare sources* + +## Identification + +- **Site:** Tests_optics +- **Author:** FARHI Emmanuel (farhi@ill.fr) +- **Origin:** ILL +- **Date:** Aug 3, 2008 + +## Description + +```text +A test instrument to compare sources and check they provide the valid +sprectrum and intensity. It shows that the first 4 flat sources are equivalent, +the 2 Maxwellian sources as well. + +WARNING: Result of test no. 1 for Source_adapt.comp is not correct if MPI is used, as +that source component does not support MPI. + +Example: source=1 Detector: m1_I=9.97273e+11 +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| source | 1 | selection of the source to use in 1=Source_adapt, 2=Source_div, 3=Source_simple, 4=Source_gen (simple), 5=Source_gen, 6=Source_Maxwell_3, 7=ESS_butterfly, 8=Moderator | 0 | +| Lmin | AA | Minimum wavelength produced at source | 1 | +| Lmax | AA | Maximum wavelength produced at source | 11 | + +## Links + +- [Source code](Test_Sources.instr) for `Test_Sources.instr`. +- [Additional information](Test_Sources.instr.md) + +--- + +*Generated for mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/examples/Tests_optics/Test_StatisticalChopper/README.md b/mcstas-comps/examples/Tests_optics/Test_StatisticalChopper/README.md new file mode 100644 index 000000000..6a2071492 --- /dev/null +++ b/mcstas-comps/examples/Tests_optics/Test_StatisticalChopper/README.md @@ -0,0 +1,35 @@ +# The `Test_StatisticalChopper` Instrument + +*McStas: An example using a statistical/correlation chopper and its de-correlation monitor* + +## Identification + +- **Site:** Tests_optics +- **Author:** Emmanuel Farhi +- **Origin:** ILL (France) +- **Date:** 1st Dec 2009. + +## Description + +```text +This instrument is a simple model of a kind of TOF instrument, with powder sample +and statistical chopper. The de-correlation is also performed in a dedicated monitor. +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| lambda | Angs | source wavelength | 1 | + +## Links + +- [Source code](Test_StatisticalChopper.instr) for `Test_StatisticalChopper.instr`. +- [Additional information](Test_StatisticalChopper.instr.md) +- R. Von Jan and R. Scherm. The statistical chopper for neutron time-of-flight spectroscopy. Nuclear Instruments and Methods, 80 (1970) 69-76. + +--- + +*Generated for mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/examples/Tests_optics/Test_Vertical_Bender/README.md b/mcstas-comps/examples/Tests_optics/Test_Vertical_Bender/README.md new file mode 100644 index 000000000..8c09a82d0 --- /dev/null +++ b/mcstas-comps/examples/Tests_optics/Test_Vertical_Bender/README.md @@ -0,0 +1,41 @@ +# The `Test_Vertical_Bender` Instrument + +*McStas: Quick and dirty test instrument write-up for Vertical_Bender.* + +## Identification + +- **Site:** Tests_optics +- **Author:** Peter Willendrup +- **Origin:** DTU +- **Date:** January 2023 + +## Description + +```text +Quick and dirty test instrument write-up for Vertical_Bender. +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| Lmin | AA | Minimum wavelength from source | 9.9 | +| Lmax | AA | Maximum wavelength from source | 10.1 | +| curvature | m | Radius of curvature of vertical bender | 10000 | +| length | m | Length of vertical bender | 10 | +| xwidth | m | Width of vertical bender | 0.1 | +| yheight | m | Height of vertical bender | 0.1 | +| nchan | 1 | Number of channels in vertical bender | 1 | +| d | m | Channel-spacer width | 0 | + +## Links + +- [Source code](Test_Vertical_Bender.instr) for `Test_Vertical_Bender.instr`. +- [Additional information](Test_Vertical_Bender.instr.md) +- + +--- + +*Generated for mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/examples/Tests_optics/Test_filters/README.md b/mcstas-comps/examples/Tests_optics/Test_filters/README.md new file mode 100644 index 000000000..b7d9d05b2 --- /dev/null +++ b/mcstas-comps/examples/Tests_optics/Test_filters/README.md @@ -0,0 +1,43 @@ +# The `Test_filters` Instrument + +*McStas: Test instrument for McStas components as Be-filters* + +## Identification + +- **Site:** PSI +- **Author:** Peter Willendrup +- **Origin:** ESS +- **Date:** March 2026 + +## Description + +```text +Test instrument for cross-checking McStas components for use as Be-filters. +Where applicable, the temperature is set to 80K (corresponding to the header +of the Be.trm file used in Filter_gen +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| Lmin | Angs | Lowest wavelength from source | 0.5 | +| Lmax | Angs | Highest wavelength from source | 10 | +| Filter | 1 | Choice of filter 0: Filter_gen, 1: NCrystal, 2: PowderN, 3: Isotropic_Sqw | 0 | +| nL | 1 | Number of wavelength bins in [Lmin Lmax] interval | 101 | +| zdepth | m | Depth of Be-filter | 0.15 | +| T | K | Filter temperature (NCrystal only) | 80 | + +## Links + +- [Source code](Test_filters.instr) for `Test_filters.instr`. +- [Additional information](Test_filters.instr.md) +- Acta Cryst. (1978). A34, 61-65 +- Rev. Sci. Instrum. 59, 380-381 (1988) +- Test instrument written by P Willendrup ESS, March 2026 + +--- + +*Generated for mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/examples/Tests_optics/Test_focus/README.md b/mcstas-comps/examples/Tests_optics/Test_focus/README.md new file mode 100644 index 000000000..0f0018a18 --- /dev/null +++ b/mcstas-comps/examples/Tests_optics/Test_focus/README.md @@ -0,0 +1,43 @@ +# The `Test_focus` Instrument + +*McStas: Focus testing, comparing Single_crystal and Monochromator_curved* + +## Identification + +- **Site:** Tests_optics +- **Author:** Tobias Weber (tweber@ill.fr) +- **Origin:** ILL +- **Date:** 3-Feb-2018 + +## Description + +```text +For mono_ideal=0 the Single_crystal component is used as monochromator, +for mono_ideal=1 Monochromator_curved is used with the same settings. + +The curvature of the monochromator can be set using mono_curvh and mono_curvv +for horizontal and vertical focusing, respectively. +For mono_curvh=0, mono_curvv=0 the monochromator is flat. +For mono_curvh=-1, mono_curvv=-1 optimal horizontal and vertical focusing is chosen. +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| src_lam | AA | Source mean wavelength | 4.5 | +| src_dlam | AA | Source wavelength spread | 1.0 | +| mono_ideal | | Selection of mono-model 0=Single_crystal, 1=Monochromator_curved | 0 | +| mono_curvh | m | Monochromator horizontal curvature. -1: optimal, 0: flat | -1 | +| mono_curvv | m | Monochromator vertical curvature -1: optimal, 0: flat | -1 | + +## Links + +- [Source code](Test_focus.instr) for `Test_focus.instr`. +- [Additional information](Test_focus.instr.md) + +--- + +*Generated for mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/examples/Tests_other/test_File/README.md b/mcstas-comps/examples/Tests_other/test_File/README.md new file mode 100644 index 000000000..69f14aed6 --- /dev/null +++ b/mcstas-comps/examples/Tests_other/test_File/README.md @@ -0,0 +1,34 @@ +# The `test_File` Instrument + +*McStas: Demonstrates how to use the File.comp component for storing instrument +input-files as METADATA blocks* + +## Identification + +- **Site:** Tests_other +- **Author:** Greg Tucker +- **Origin:** ESS +- **Date:** 2024 + +## Description + +```text + +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| + +## Links + +- [Source code](test_File.instr) for `test_File.instr`. +- [Additional information](test_File.instr.md) +- From https://github.com/g5t/mccode-file + +--- + +*Generated for mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/examples/Tests_polarization/He3_spin_filter/README.md b/mcstas-comps/examples/Tests_polarization/He3_spin_filter/README.md new file mode 100644 index 000000000..150641579 --- /dev/null +++ b/mcstas-comps/examples/Tests_polarization/He3_spin_filter/README.md @@ -0,0 +1,42 @@ +# The `He3_spin_filter` Instrument + +*McStas: Test instrument for He3_cell* + +## Identification + +- **Site:** Tests_polarization +- **Author:** Pietro Tozzi and Erik B Knudsen +- **Origin:** DTU Physics et. +- **Date:** Nov 20 + +## Description + +```text +Simple instrument model serving as an example and unit tyest of the He3-cell model. +For the values POLHE=.8 and .5 results comply with "Batz, M et al. “(3) He Spin Filter for Neutrons.” +Journal of research of the National Institute of Standards and Technology vol. 110,3 293-8. 1 Jun. 2005, doi:10.6028/jres.110.042" +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| pol | | If "x","y", or "z" set polarization along that axis. If "0" use a zero polarization. | "y" | +| lamb_1 | AA | Lower wavelength limit to simulate | 1 | +| lamb_2 | AA | Upper wavelegnth limit to simulate | 10 | +| RANDOM | | Randomize polarization vector in the (ideal) polariser | 0 | +| polval | | Set polarization to (polval,polval,polval). Gets overridden by pol | 1 | +| POLHE | | Polarization of the 3He-gas in the cell. | 0.7 | +| box | | Flag to indicate if cell geometry is cylindrical (0) or box-shaped (1) | 0 | + +## Links + +- [Source code](He3_spin_filter.instr) for `He3_spin_filter.instr`. +- [Additional information](He3_spin_filter.instr.md) +- + +--- + +*Generated for mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/examples/Tests_polarization/SE_example/README.md b/mcstas-comps/examples/Tests_polarization/SE_example/README.md new file mode 100644 index 000000000..a12cbb347 --- /dev/null +++ b/mcstas-comps/examples/Tests_polarization/SE_example/README.md @@ -0,0 +1,46 @@ +# The `SE_example` Instrument + +*McStas: Mockup of transmission Spin-Echo, written for PNCMI 2010 school in Delft.* + +## Identification + +- **Site:** Tests_polarization +- **Author:** Erik Knudsen, Peter Willendrup +- **Origin:** Risoe +- **Date:** June 2010 + +## Description + +```text +This instrument shows the use of essential McStas polarisation components, including Pol_mirror, Pol_Bfield and MeanPolLambda_monitor. + +Pol_mirror is used to polarize and analyze the incoming and scattered beams. +Pol_Bfield is used to define guidefields and flippers. +MeanPolLambda_montior is used to monitor beam polarisation. + +Example: mcrun SE_example.instr dBz=-0.0001,0.0001 -N41 -n1e5 +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| POL_ANGLE | deg | Reflection angle of polarizer/analyzer | 2 | +| SAMPLE | 1 | Flag to include (0) or exclude incoherent scatterer | 0 | +| Bguide | T | Field magnitude in guide fields | 0.1 | +| Bflip | T | Magnitude of flipper fields, | 3e-4 | +| dBz | T | Magnitude field perturbation in first guide field | 0 | +| Lam | Angstrom | Mean wavelength of neutrons emitted from source | 8 | +| dLam | Angstrom | Wavelength spread of neutrons emitted from source | 0.8 | + +## Links + +- [Source code](SE_example.instr) for `SE_example.instr`. +- [Additional information](SE_example.instr.md) +- Requires mcstas 1.12b (or beta). PolLambda_monitor has been modified to work (nL->nlam) + +--- + +*Generated for mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/examples/Tests_polarization/SE_example2/README.md b/mcstas-comps/examples/Tests_polarization/SE_example2/README.md new file mode 100644 index 000000000..35fd44159 --- /dev/null +++ b/mcstas-comps/examples/Tests_polarization/SE_example2/README.md @@ -0,0 +1,46 @@ +# The `SE_example2` Instrument + +*McStas: Mockup of transmission Spin-Echo, written for PNCMI 2010 school in Delft. This version uses Pol_FieldBox for description of the fields.* + +## Identification + +- **Site:** Tests_polarization +- **Author:** Erik Knudsen, Peter Willendrup +- **Origin:** Risoe +- **Date:** June 2010 + +## Description + +```text +This instrument shows the use of essential McStas polarisation components, including Pol_mirror, Pol_FieldBox and MeanPolLambda_monitor. + +Pol_mirror is used to polarize and analyze the incoming and scattered beams. +Pol_FieldBox is used to define guidefields and flippers. +MeanPolLambda_montior is used to monitor beam polarisation. + +Example: mcrun SE_example2.instr dBz=-0.0001,0.0001 -N41 -n1e5 +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| POL_ANGLE | deg | Reflection angle of polarizer/analyzer | 2 | +| SAMPLE | 1 | Flag to include (0) or exclude incoherent scatterer | 0 | +| Bguide | T | Field magnitude in guide fields | 0.1 | +| Bflip | T | Magnitude of flipper fields, | 3e-4 | +| dBz | T | Magnitude field perturbation in first guide field | 0 | +| Lam | Angstrom | Mean wavelength of neutrons emitted from source | 8 | +| dLam | Angstrom | Wavelength spread of neutrons emitted from source | 0.8 | + +## Links + +- [Source code](SE_example2.instr) for `SE_example2.instr`. +- [Additional information](SE_example2.instr.md) +- Requires mcstas 1.12b (or beta). PolLambda_monitor has been modified to work (nL->nlam) + +--- + +*Generated for mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/examples/Tests_polarization/Supermirror_thin_substrate/README.md b/mcstas-comps/examples/Tests_polarization/Supermirror_thin_substrate/README.md new file mode 100644 index 000000000..8b5bcfcf3 --- /dev/null +++ b/mcstas-comps/examples/Tests_polarization/Supermirror_thin_substrate/README.md @@ -0,0 +1,55 @@ +# The `Supermirror_thin_substrate` Instrument + +*McStas: Test instrument for a thin-substrate supermirrror (component SupermirrorFlat)* + +## Identification + +- **Site:** Tests_polarization +- **Author:** Hal Lee +- **Origin:** ESS +- **Date:** 2024 + +## Description + +```text +Test instrument for a thin-substrate supermirrror (component SupermirrorFlat) +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| src_x | m | Width of source | 0.01 | +| src_y | m | Height of source | 0.09 | +| W_Centre | AA | Central wavelength from source spectrum | 5 | +| W_Half_Width | AA | Source spectrum wavelength half-width | 3 | +| A_FWHM | deg | Angular divergence from source | 0.05 | +| Detector_Distance | m | End-of-supermirror to detector distance | 1 | +| Length | m | Supermirrror length,projection along z-axis | 4 | +| Thickness_In_mm | mm | Supermirror thickness in mm | 0.5 | +| Mirror_Coated_Side | str | Specification of coating type | "BothCoated" | +| Mirror_Plus | str | Specification of coating on positive mirror side | "FeSiPlus" | +| Mirror_Plus_m | 1 | Specification m value, positive mirror side | 3.5 | +| Mirror_Minus | str | Specification of coating on negative mirror side | "FeSiMinus" | +| Absorber_Coated_Side | str | Specification of coating type, absorber coated side | "BothNotCoated" | +| Absorber | str | Specification of absorber material | "Empty" | +| Absorber_Thickness_In_Micron | mu-m | Absorber thickness in mu-m | 0 | +| Substrate | str | Specification of substrate material | "GlassNoAttenuation" | +| Initial_Placement_At_Origin | str | Mirror orientation specifier ("TopFrontEdgeCentre","FrontSubstrateCentre","BottomFrontEdgeCentre") | "TopFrontEdgeCentre" | +| Tilt_Axis_Location | str | Mirror axis location specifier ("TopFrontEdge","TopMirrorCentre","TopBackEdge","FrontSubstrateCentre","SubstrateCentre","BackSubstrateCentre","BottomFrontEdge","BottomMirrorCentre","BottomBackEdge") | "TopMirrorCentre" | +| Tilt_Angle_First_In_Degree | deg | Mirror tilt angle (around global y) | 0.64 | +| Translation_Second_Y | m | Mirror translation (along global y) | 0 | +| Rot_Angle_Third_In_Degree | deg | Mirror rotation angle (around global z) | 0 | +| Tracking | str | Mirror event-tracking option specifier ("NoTracking", "DetailTracking") | "DetailTracking" | + +## Links + +- [Source code](Supermirror_thin_substrate.instr) for `Supermirror_thin_substrate.instr`. +- [Additional information](Supermirror_thin_substrate.instr.md) +- A reference/HTML link for more information + +--- + +*Generated for mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/examples/Tests_polarization/Test_Magnetic_Constant/README.md b/mcstas-comps/examples/Tests_polarization/Test_Magnetic_Constant/README.md new file mode 100644 index 000000000..89257fd6d --- /dev/null +++ b/mcstas-comps/examples/Tests_polarization/Test_Magnetic_Constant/README.md @@ -0,0 +1,39 @@ +# The `Test_Magnetic_Constant` Instrument + +*McStas: This instrument demonstrates how to use the Pol_Bfield +component with a constant field.* + +## Identification + +- **Site:** Tests_polarization +- **Author:** Peter Christiansen and Peter Willendrup +- **Origin:** RISOE +- **Date:** August 2006 + +## Description + +```text +This instrument demonstrates how to use the component +Pol_Bfield with a constant field to make a Mezei Spin flipper. + +This instrument matches the example: Test_Pol_MSF (under tests) +made with the old component: Pol_constBfield +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| ROT_ANGLE | deg | Angle that the spin of a 5AA neutron rotates in the 0.2 m magnet | 180 | +| ONOFF | | Should we use a window description (with a _stop comp) to turn the field on and off. | 0 | + +## Links + +- [Source code](Test_Magnetic_Constant.instr) for `Test_Magnetic_Constant.instr`. +- [Additional information](Test_Magnetic_Constant.instr.md) + +--- + +*Generated for mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/examples/Tests_polarization/Test_Magnetic_Majorana/README.md b/mcstas-comps/examples/Tests_polarization/Test_Magnetic_Majorana/README.md new file mode 100644 index 000000000..bc348e810 --- /dev/null +++ b/mcstas-comps/examples/Tests_polarization/Test_Magnetic_Majorana/README.md @@ -0,0 +1,42 @@ +# The `Test_Magnetic_Majorana` Instrument + +*McStas: This instrument demonstrates how to use the Pol_Bfield +component with a Majorana field.* + +## Identification + +- **Site:** Tests_polarization +- **Author:** Peter Christiansen and Peter Willendrup +- **Origin:** RISOE +- **Date:** August 2006 + +## Description + +```text +This instrument demonstrates how to use the component +Pol_Bfield with a so called Majorana field. + +See: +Seeger et al. NIM A: Volume 457, Issues 1-2 , 11 January 2001, Pages 338-346 + +Note that there are some sytematic fluctuation with the current solution. +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| Blarge | T | Large linear decreasing field along x axis (+Blarge to -Blarge). | 1.0 | +| Bsmall | T | Constant small component of field along y axis. | 0.003 | +| magnetLength | m | Magnet length. | 1.0 | + +## Links + +- [Source code](Test_Magnetic_Majorana.instr) for `Test_Magnetic_Majorana.instr`. +- [Additional information](Test_Magnetic_Majorana.instr.md) + +--- + +*Generated for mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/examples/Tests_polarization/Test_Magnetic_Rotation/README.md b/mcstas-comps/examples/Tests_polarization/Test_Magnetic_Rotation/README.md new file mode 100644 index 000000000..6162da185 --- /dev/null +++ b/mcstas-comps/examples/Tests_polarization/Test_Magnetic_Rotation/README.md @@ -0,0 +1,38 @@ +# The `Test_Magnetic_Rotation` Instrument + +*McStas: This instrument demonstrates how to use the Pol_constBfield +component.* + +## Identification + +- **Site:** Tests_polarization +- **Author:** Peter Christiansen and Peter Willendrup +- **Origin:** RISOE +- **Date:** August 2006 + +## Description + +```text +This instrument demonstrates how to use the component +Pol_constBfield to make a Mezei Spin flipper. + +See: +Seeger et al. NIM A: Volume 457, Issues 1-2 , 11 January 2001, Pages 338-346 +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| RESTORENEUT | | RESTORE_NEUTRON flag for last monitor within field region. | 1 | + +## Links + +- [Source code](Test_Magnetic_Rotation.instr) for `Test_Magnetic_Rotation.instr`. +- [Additional information](Test_Magnetic_Rotation.instr.md) + +--- + +*Generated for mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/examples/Tests_polarization/Test_Pol_Bender/README.md b/mcstas-comps/examples/Tests_polarization/Test_Pol_Bender/README.md new file mode 100644 index 000000000..1c1e57bf4 --- /dev/null +++ b/mcstas-comps/examples/Tests_polarization/Test_Pol_Bender/README.md @@ -0,0 +1,39 @@ +# The `Test_Pol_Bender` Instrument + +*McStas: Test Pol_bender.* + +## Identification + +- **Site:** Tests_polarization +- **Author:** Peter Christiansen +- **Origin:** RISOE +- **Date:** July 2006 + +## Description + +```text +Test that Pol_bender polarizes an unpolarized beam, and allows one +to test the different options. +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| GUIDELENGTH | m | Length of bender | 1.0 | +| GUIDERADIUS | m | Radius of curvature of bender | 10.0 | +| ENDOPTION | | Setting for parallel start/end planes of bender | 0 | +| NSLITS | | Number of channels in bender | 5 | +| WSPACER | m | Spacer dimension | 0.005 | +| DRAWOPTION | | Bender drawing option 1: fine(all slits/90 points per arc), 2: normal (max 20/40), 3: rough (max 5/10) | 1 | + +## Links + +- [Source code](Test_Pol_Bender.instr) for `Test_Pol_Bender.instr`. +- [Additional information](Test_Pol_Bender.instr.md) + +--- + +*Generated for mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/examples/Tests_polarization/Test_Pol_FieldBox/README.md b/mcstas-comps/examples/Tests_polarization/Test_Pol_FieldBox/README.md new file mode 100644 index 000000000..1cd46225a --- /dev/null +++ b/mcstas-comps/examples/Tests_polarization/Test_Pol_FieldBox/README.md @@ -0,0 +1,36 @@ +# The `Test_Pol_FieldBox` Instrument + +*McStas: Unit test instrument for Pol_FieldBox* + +## Identification + +- **Site:** Tests_polarization +- **Author:** Erik B Knudsen +- **Origin:** DTU Physics +- **Date:** Jan 20 + +## Description + +```text +An instrument with a single field box with a 1 mT magnetic field along the y-axis. +A neutron beam polarized aling the x-axis is emitted with central wavelength such +that the polarization is rotated pihalfturns radians in the field. +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| pihalfturns | | beam polarization (for the cetral wavelength) is rotated pihalfturns by the field | 1 | +| BOX | | flag to select between 0:Pol_FieldBox and 1:Pol_constBfield | 0 | + +## Links + +- [Source code](Test_Pol_FieldBox.instr) for `Test_Pol_FieldBox.instr`. +- [Additional information](Test_Pol_FieldBox.instr.md) + +--- + +*Generated for mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/examples/Tests_polarization/Test_Pol_Guide_Vmirror/README.md b/mcstas-comps/examples/Tests_polarization/Test_Pol_Guide_Vmirror/README.md new file mode 100644 index 000000000..a2f3c8b31 --- /dev/null +++ b/mcstas-comps/examples/Tests_polarization/Test_Pol_Guide_Vmirror/README.md @@ -0,0 +1,34 @@ +# The `Test_Pol_Guide_Vmirror` Instrument + +*McStas: Test Pol_guide_Vmirror.* + +## Identification + +- **Site:** Tests_polarization +- **Author:** Peter Christiansen +- **Origin:** RISOE +- **Date:** July 2006 + +## Description + +```text +A simple description of the V4 instrument in Berlin as explained in: +NIM A 451 (2000) 474-479 +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| polariserIn | | Flag to select between 1:POLguidevmirror and 2:POLguidemirror | 1 | + +## Links + +- [Source code](Test_Pol_Guide_Vmirror.instr) for `Test_Pol_Guide_Vmirror.instr`. +- [Additional information](Test_Pol_Guide_Vmirror.instr.md) + +--- + +*Generated for mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/examples/Tests_polarization/Test_Pol_Guide_mirror/README.md b/mcstas-comps/examples/Tests_polarization/Test_Pol_Guide_mirror/README.md new file mode 100644 index 000000000..dde40ec66 --- /dev/null +++ b/mcstas-comps/examples/Tests_polarization/Test_Pol_Guide_mirror/README.md @@ -0,0 +1,35 @@ +# The `Test_Pol_Guide_mirror` Instrument + +*McStas: Test Pol_guide_mirror.* + +## Identification + +- **Site:** Tests_polarization +- **Author:** Peter Christiansen +- **Origin:** RISOE +- **Date:** July 2006 + +## Description + +```text +Unit test for Pol_guide_mirror. In this unit test we use the Pol_guide_mirror +in a non-polarizing setting, with absorbing walls. This is how it would be set to be used +as a frame-overlap mirror. +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| mirrorIn | | If zero the in-guide mirror is disabled | 1 | + +## Links + +- [Source code](Test_Pol_Guide_mirror.instr) for `Test_Pol_Guide_mirror.instr`. +- [Additional information](Test_Pol_Guide_mirror.instr.md) + +--- + +*Generated for mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/examples/Tests_polarization/Test_Pol_MSF/README.md b/mcstas-comps/examples/Tests_polarization/Test_Pol_MSF/README.md new file mode 100644 index 000000000..0b5002f72 --- /dev/null +++ b/mcstas-comps/examples/Tests_polarization/Test_Pol_MSF/README.md @@ -0,0 +1,34 @@ +# The `Test_Pol_MSF` Instrument + +*McStas: This instrument demonstrates how to use the Pol_constBfield +component.* + +## Identification + +- **Site:** Tests_polarization +- **Author:** Peter Christiansen +- **Origin:** RISOE +- **Date:** July 2006 + +## Description + +```text +This instrument demonstrates how to use the component +Pol_constBfield to make a Mezei Spin flipper. +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| + +## Links + +- [Source code](Test_Pol_MSF.instr) for `Test_Pol_MSF.instr`. +- [Additional information](Test_Pol_MSF.instr.md) + +--- + +*Generated for mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/examples/Tests_polarization/Test_Pol_Mirror/README.md b/mcstas-comps/examples/Tests_polarization/Test_Pol_Mirror/README.md new file mode 100644 index 000000000..e2afcfe53 --- /dev/null +++ b/mcstas-comps/examples/Tests_polarization/Test_Pol_Mirror/README.md @@ -0,0 +1,39 @@ +# The `Test_Pol_Mirror` Instrument + +*McStas: Test that Pol_mirror reflects, transmits, and polarizes.* + +## Identification + +- **Site:** Tests_polarization +- **Author:** Peter Christiansen +- **Origin:** RISOE +- **Date:** July 2006 + +## Description + +```text +An unpolarized beam is shot into a polarizing mirror and the +intensity and polarization of the transmitted and reflected beam +is measured. + +The intensity on the first monitor should be the same as the sum +of the two polarization monitors. +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| mirrorOption | 1 | Fraction of neutrons to reflect | 0.5 | +| polarize | | | 0 | + +## Links + +- [Source code](Test_Pol_Mirror.instr) for `Test_Pol_Mirror.instr`. +- [Additional information](Test_Pol_Mirror.instr.md) + +--- + +*Generated for mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/examples/Tests_polarization/Test_Pol_SF_ideal/README.md b/mcstas-comps/examples/Tests_polarization/Test_Pol_SF_ideal/README.md new file mode 100644 index 000000000..c091d6d7f --- /dev/null +++ b/mcstas-comps/examples/Tests_polarization/Test_Pol_SF_ideal/README.md @@ -0,0 +1,37 @@ +# The `Test_Pol_SF_ideal` Instrument + +*McStas: Unit test of the Pol_SF_ideal component* + +## Identification + +- **Site:** Tests_polarization +- **Author:** Erik B Knudsen (erkn@fysik.dtu.dk) +- **Origin:** DTU Physics +- **Date:** Current Date + +## Description + +```text +Simply test the ideal spin flippers function + +Example: mcrun test.instr +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| SX | | x-component of initial polarization | 0 | +| SY | | y-component of initial polarization | 1 | +| SZ | | z-component of initial polarization | 0 | + +## Links + +- [Source code](Test_Pol_SF_ideal.instr) for `Test_Pol_SF_ideal.instr`. +- [Additional information](Test_Pol_SF_ideal.instr.md) + +--- + +*Generated for mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/examples/Tests_polarization/Test_Pol_Set/README.md b/mcstas-comps/examples/Tests_polarization/Test_Pol_Set/README.md new file mode 100644 index 000000000..6e0cc5769 --- /dev/null +++ b/mcstas-comps/examples/Tests_polarization/Test_Pol_Set/README.md @@ -0,0 +1,35 @@ +# The `Test_Pol_Set` Instrument + +*McStas: Tests Set_pol, Incoherent, and pol monitors.* + +## Identification + +- **Site:** Tests_polarization +- **Author:** Peter Christiansen +- **Origin:** RISOE +- **Date:** July 2006 + +## Description + +```text +First check is that the randmly generated spin gives uniform (flat) +distributions on all 3 pol monitor. +Second check is that when the polarisation is hardcoded to (0, 1, 0) +after Incoherent it is (0, -1/3, 0). +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| + +## Links + +- [Source code](Test_Pol_Set.instr) for `Test_Pol_Set.instr`. +- [Additional information](Test_Pol_Set.instr.md) + +--- + +*Generated for mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/examples/Tests_polarization/Test_Pol_TripleAxis/README.md b/mcstas-comps/examples/Tests_polarization/Test_Pol_TripleAxis/README.md new file mode 100644 index 000000000..50f6df3de --- /dev/null +++ b/mcstas-comps/examples/Tests_polarization/Test_Pol_TripleAxis/README.md @@ -0,0 +1,44 @@ +# The `Test_Pol_TripleAxis` Instrument + +*McStas: Based on Emmanuel Farhi's thermal H8 triple-axis spectrometer from +Brookhaven reactor* + +## Identification + +- **Site:** Tests_polarization +- **Author:** Peter Christiansen +- **Origin:** RISOE +- **Date:** July 2006. + +## Description + +```text +This instrument is a simple model of the thermal H8 triple-axis +spectrometer from former Brookhaven reactor. It has an (polarizing) +monochromator and a (polarizaing) analyzer. The sample is a vanadium +cylinder. +Three cases can be done: +-1) Spin flip (flipper is inserted): Up->Down +0) No polarization: Up/Down->Up/Down +1) No spin flip: Up->Up +The Vanadium sample should give I(0)=2*(I(-1)+I(1)) and I(-1)=2*I(1). +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| OPTION | 1 | See above | 0 | +| LAMBDA | Angs | Source wavelength | 2.0 | +| MOZ | Arc minutes | Mosaicity | 40 | + +## Links + +- [Source code](Test_Pol_TripleAxis.instr) for `Test_Pol_TripleAxis.instr`. +- [Additional information](Test_Pol_TripleAxis.instr.md) + +--- + +*Generated for mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/examples/Tests_polarization/Test_V_cavity_SNAG_double_side/README.md b/mcstas-comps/examples/Tests_polarization/Test_V_cavity_SNAG_double_side/README.md new file mode 100644 index 000000000..4d0c65bf3 --- /dev/null +++ b/mcstas-comps/examples/Tests_polarization/Test_V_cavity_SNAG_double_side/README.md @@ -0,0 +1,47 @@ +# The `Test_V_cavity_SNAG_double_side` Instrument + +*McStas: Test instrument for Transmission_V_polarisator, double layer reflectivity.* + +## Identification + +- **Site:** Tests_polarization +- **Author:** Michael Schneider (SNAG) +- **Origin:** SNAG +- **Date:** 2024 + +## Description + +```text +Test instrument for Transmission_V_polarisator, double layer reflectivity. +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| Lam | AA | Central wavelength produced at source | 7.0 | +| dLam | AA | Wavelength spread produced at source | 6.0 | +| l_guide0 | | | 2 | +| m_hori | 1 | m-value of feeding guide, horizontal mirrors | 1.0 | +| m_vert | 1 | m-value of feeding guide, vertical mirrors | 3.0 | +| m_pol_h | 1 | m-value of guide body, horizontal (m of FeSi is defined by data files) | 1.0 | +| m_pol_v | 1 | m-value of guide body, vertical (m of FeSi is defined by data files) | 3.0 | +| W | m | Width of guide and cavity | 0.024 | +| H | m | Height of guide and cavity | 0.058 | +| Length_C | m | Length of guide body | 1.300 | +| tap_ang | deg | Taper angle with respect to optical axis of V-cavity | 0.55 | +| distK | m | Distance between V-cavities (applicable, if 2 cavities are installed) | 1.23864 | +| d_Fe | m | Thickness of Fe in one supermirror coating | 6.95e-6 | +| d | m | Distance from source to guide entrance | 2.0 | + +## Links + +- [Source code](Test_V_cavity_SNAG_double_side.instr) for `Test_V_cavity_SNAG_double_side.instr`. +- [Additional information](Test_V_cavity_SNAG_double_side.instr.md) +- P. Böni, W. Münzer and A. Ostermann: Physica B: Condensed Matter Volume 404, Issue 17, 1 September 2009, Pages 2620-2623 + +--- + +*Generated for mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/examples/Tests_polarization/Test_V_cavity_SNAG_single_side/README.md b/mcstas-comps/examples/Tests_polarization/Test_V_cavity_SNAG_single_side/README.md new file mode 100644 index 000000000..0467cedf5 --- /dev/null +++ b/mcstas-comps/examples/Tests_polarization/Test_V_cavity_SNAG_single_side/README.md @@ -0,0 +1,47 @@ +# The `Test_V_cavity_SNAG_single_side` Instrument + +*McStas: Test instrument for Transmission_V_polarisator, single layer reflectivity.* + +## Identification + +- **Site:** Tests_polarization +- **Author:** Michael Schneider (SNAG) +- **Origin:** SNAG +- **Date:** 2024 + +## Description + +```text +Test instrument for Transmission_V_polarisator, single layer reflectivity. +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| Lam | AA | Central wavelength produced at source | 7.0 | +| dLam | AA | Wavelength spread produced at source | 6.0 | +| l_guide0 | | | 2 | +| m_hori | 1 | m-value of feeding guide, horizontal mirrors | 1.0 | +| m_vert | 1 | m-value of feeding guide, vertical mirrors | 3.0 | +| m_pol_h | 1 | m-value of guide body, horizontal (m of FeSi is defined by data files) | 1.0 | +| m_pol_v | 1 | m-value of guide body, vertical (m of FeSi is defined by data files) | 3.0 | +| W | m | Width of guide and cavity | 0.024 | +| H | m | Height of guide and cavity | 0.058 | +| Length_C | m | Length of guide body | 1.300 | +| tap_ang | deg | Taper angle with respect to optical axis of V-cavity | 0.55 | +| distK | m | Distance between V-cavities (applicable, if 2 cavities are installed) | 1.23864 | +| d_Fe | m | Thickness of Fe in one supermirror coating | 6.95e-6 | +| d | m | Distance from source to guide entrance | 2.0 | + +## Links + +- [Source code](Test_V_cavity_SNAG_single_side.instr) for `Test_V_cavity_SNAG_single_side.instr`. +- [Additional information](Test_V_cavity_SNAG_single_side.instr.md) +- P. Böni, W. Münzer and A. Ostermann: Physica B: Condensed Matter Volume 404, Issue 17, 1 September 2009, Pages 2620-2623 + +--- + +*Generated for mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/examples/Tests_polarization/Test_pol_ideal/README.md b/mcstas-comps/examples/Tests_polarization/Test_pol_ideal/README.md new file mode 100644 index 000000000..7e4497d5a --- /dev/null +++ b/mcstas-comps/examples/Tests_polarization/Test_pol_ideal/README.md @@ -0,0 +1,33 @@ +# The `Test_pol_ideal` Instrument + +*McStas: Unit test instrument for Set_pol, PolAnalyser_ideal, and Pol_monitor* + +## Identification + +- **Site:** Tests_polarization +- **Author:** Erik B Knudsen (erkn@fysik.dtu.dk) +- **Origin:** DTU Physics +- **Date:** Nov 20 + +## Description + +```text +Simply runs a short test to check that Set_pol, Pol_analyser_ideal, and Pol_monitor really do work +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| xory | | 1:check polarisatoin along x, 0:check polarisation along y | 1 | + +## Links + +- [Source code](Test_pol_ideal.instr) for `Test_pol_ideal.instr`. +- [Additional information](Test_pol_ideal.instr.md) + +--- + +*Generated for mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/examples/Tests_samples/GISANS_tests/README.md b/mcstas-comps/examples/Tests_samples/GISANS_tests/README.md new file mode 100644 index 000000000..1f4f31d00 --- /dev/null +++ b/mcstas-comps/examples/Tests_samples/GISANS_tests/README.md @@ -0,0 +1,37 @@ +# The `GISANS_tests` Instrument + +*McStas: Instrument to test features of newly developed sample model for GISANS from H. Frielinghaus.* + +## Identification + +- **Site:** Tests_samples +- **Author:** Peter Willendrup (DTU/ESS) and Henrich Frielinghaus (MLZ) +- **Origin:** MLZ +- **Date:** 2023-2024 + +## Description + +```text +Instrument to test features of newly developed sample model for GISANS from H. Frielinghaus, +developed to model the GISANS features described in M. S. Hellsing et. al [1] + +Test case 1, grazing incidence from front +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| mode | | | 1 | +| BEAMSTOP | | | 0 | + +## Links + +- [Source code](GISANS_tests.instr) for `GISANS_tests.instr`. +- [Additional information](GISANS_tests.instr.md) + +--- + +*Generated for mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/examples/Tests_samples/Samples_Incoherent/README.md b/mcstas-comps/examples/Tests_samples/Samples_Incoherent/README.md new file mode 100644 index 000000000..3bb7edc05 --- /dev/null +++ b/mcstas-comps/examples/Tests_samples/Samples_Incoherent/README.md @@ -0,0 +1,77 @@ +# The `Samples_Incoherent` Instrument + +*McStas: This instrument allows to compare incoherent scattering from different McStas +sample components.* + +## Identification + +- **Site:** Tests_samples +- **Author:** Peter Willendrup, Erik Knudsen, Aziz Aziz Daoud-aladine +- **Origin:** RISOE +- **Date:** August 14th, 2007 + +## Description + +```text +This instrument allows to compare incoherent scattering from different McStas +sample components: + +* PowderN +Single_crystal +Isotropic_sqw +Incoherent + +Examples: + +Compare incoherent scattering from all sample comps, beamstop in place. + +mcrun Samples_Incoherent -d Some_directory -N5 SAMPLE=1,5 STOP=1 + +Compare incoherent scattering and direct beam attenuation for PowderN, Single_crystal +and Isotroic_sqw: + +mcrun Samples_Incoherent -d Some_other_directory -N4 SAMPLE=2,5 STOP=0 + +Have a closer look of direct beam attentuation for PowderN, Single_crystal +and Isotroic_sqw (has the side-effect that back-scattered neutrons are absorbed): + +mcrun Samples_Incoherent -d Some_third_directory -N4 SAMPLE=2,5 STOP=0 DB=1 + +The sample type selection is: +box: 1=Vanadium +2=PowderN +3=Single_Crystal +4=Isotropic_Sqw +5=Incoherent +10=Isotropic_Sqw with V.lau +cube.off: 6=PowderN, +7=Single_Crystal +8=Isotropic_Sqw +9=Incoherent +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| L_min | AA | Minimum wavelength of neutrons | 0.5 | +| L_max | AA | Maximum wavelength of neutrons | 7 | +| SAMPLE | | Sample choice, 1:Incoherent, 2:PowderN, 3:Single_crystal, 4:Isotropic_Sqw, 5:Incoherent with multiple scattering, 6:PowderN with OFF geometry, 7:Single_crystal with OFF geometry, 8:Isotropic_Sqw with OFF geometry, 9:Incoherent with OFF geometry, 10:Isotropic_Sqw with .laz input | 1 | +| STOP | 1 | Beamstop inserted? (Needed in case of comparison between V and SX/sqw). | 0 | +| Order | 1 | Maximum order of multiple scattering in SX/sqw | 0 | +| INC | barns | Incoherent scattering cross section | 5.08 | +| ABS | barns | Absorption cross section | 5.08 | +| DB | 1 | Direct Beam monitor inserted? (Side-effect: absorbs 'backscattered' neutrons). | 0 | +| ISISFACE | string | ISIS moderator face to look at | "hydrogen" | + +## Links + +- [Source code](Samples_Incoherent.instr) for `Samples_Incoherent.instr`. +- [Additional information](Samples_Incoherent.instr.md) +- Validation of Single_crystal is now in progress! + +--- + +*Generated for mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/examples/Tests_samples/Samples_Incoherent_off/README.md b/mcstas-comps/examples/Tests_samples/Samples_Incoherent_off/README.md new file mode 100644 index 000000000..75fdbf815 --- /dev/null +++ b/mcstas-comps/examples/Tests_samples/Samples_Incoherent_off/README.md @@ -0,0 +1,36 @@ +# The `Samples_Incoherent_off` Instrument + +*McStas: Instrument to demonstrate the usage of OFF shape samples with totally absorbing material.* + +## Identification + +- **Site:** Tests_samples +- **Author:** Reynald ARNERIN +- **Origin:** ILL +- **Date:** June 12th, 2008 + +## Description + +```text +Instrument to demonstrate the usage of OFF shape samples with totally absorbing material. +The Incoherent component is here used with a description file. The shape may be scaled +forcing the size of the bounding box. +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| geometry | string | Name of the OFF file describing the sample shape | "socket.off" | + +## Links + +- [Source code](Samples_Incoherent_off.instr) for `Samples_Incoherent_off.instr`. +- [Additional information](Samples_Incoherent_off.instr.md) +- http://shape.cs.princeton.edu/benchmark/documentation/off_format.html + +--- + +*Generated for mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/examples/Tests_samples/Samples_Isotropic_Sqw/README.md b/mcstas-comps/examples/Tests_samples/Samples_Isotropic_Sqw/README.md new file mode 100644 index 000000000..a38450b08 --- /dev/null +++ b/mcstas-comps/examples/Tests_samples/Samples_Isotropic_Sqw/README.md @@ -0,0 +1,38 @@ +# The `Samples_Isotropic_Sqw` Instrument + +*McStas: A test instrument for the S(q,w) sample* + +## Identification + +- **Site:** Tests_samples +- **Author:** E. Farhi +- **Origin:** ILL +- **Date:** Jan 2004 + +## Description + +```text +This instrument is a test instrument for the S(q,w) sample. +It produces a tof-angle and angle-energy detectors and also exports the +S(q,w) and S(q) data. +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| lambda | Angs | source energy | 3.4 | +| sample_coh | str | name of coherent Sqw data file | "Rb_liq_coh.sqw" | +| sample_inc | str | name of incoherent Sqw data file | "Rb_liq_inc.sqw" | + +## Links + +- [Source code](Samples_Isotropic_Sqw.instr) for `Samples_Isotropic_Sqw.instr`. +- [Additional information](Samples_Isotropic_Sqw.instr.md) +- The Isotropic_Sqw sample + +--- + +*Generated for mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/examples/Tests_samples/Samples_Phonon/README.md b/mcstas-comps/examples/Tests_samples/Samples_Phonon/README.md new file mode 100644 index 000000000..901608bf0 --- /dev/null +++ b/mcstas-comps/examples/Tests_samples/Samples_Phonon/README.md @@ -0,0 +1,42 @@ +# The `Samples_Phonon` Instrument + +*McStas: Simple test instrument for the Phonon_simple component* + +## Identification + +- **Site:** Tests_samples +- **Author:** Kim Lefmann +- **Origin:** RISOE +- **Date:** Feb 2004 + +## Description + +```text +Simple test instrument for the Phonon_simple component. +Refer to the component documentation for further instructions. +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| E | meV | Mean energy at source | 10 | +| DE | meV | Energy spread at source | 0 | +| HDIV | deg | Horizontal divergence produced from source | 1e-4 | +| VDIV | deg | Vertical divergence produced from source | 1e-4 | +| TT | deg | Two-theta detetector-angle | 72.69 | +| OM | deg | Sample rotation angle | -43.3 | +| C | meV/AA^(-1) | Sample velocity of sound | 8 | +| focus_r | | | 0 | +| focus_a | | | 0 | + +## Links + +- [Source code](Samples_Phonon.instr) for `Samples_Phonon.instr`. +- [Additional information](Samples_Phonon.instr.md) + +--- + +*Generated for mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/examples/Tests_samples/Samples_vanadium/README.md b/mcstas-comps/examples/Tests_samples/Samples_vanadium/README.md new file mode 100644 index 000000000..aec649f22 --- /dev/null +++ b/mcstas-comps/examples/Tests_samples/Samples_vanadium/README.md @@ -0,0 +1,36 @@ +# The `Samples_vanadium` Instrument + +*McStas: A test instrument using a vanadium cylinder* + +## Identification + +- **Site:** Tests_samples +- **Author:** Kristian Nielsen and Kim Lefmann +- **Origin:** Risoe +- **Date:** 1998 + +## Description + +```text +This instrument shows the vanadium sample scattering anisotropy. +This is an effect of attenuation of the beam in the cylindrical sample. +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| ROT | deg | Rotation angle of the PSD monitor | 0 | + +## Links + +- [Source code](Samples_vanadium.instr) for `Samples_vanadium.instr`. +- [Additional information](Samples_vanadium.instr.md) +- The McStas User manual +- The McStas tutorial + +--- + +*Generated for mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/examples/Tests_samples/Test_Incoherent/README.md b/mcstas-comps/examples/Tests_samples/Test_Incoherent/README.md new file mode 100644 index 000000000..b6998392a --- /dev/null +++ b/mcstas-comps/examples/Tests_samples/Test_Incoherent/README.md @@ -0,0 +1,34 @@ +# The `Test_Incoherent` Instrument + +*McStas: Test output of Incoherent on two spherical monitor.* + +## Identification + +- **Site:** Tests_samples +- **Author:** P. Willendrup +- **Origin:** DTU +- **Date:** October 1st 2020 + +## Description + +```text +A test instrument for Incoherent output on spherical monitor. +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| lambda | Angs | Wavelength emitted from source, 1% wl-interval around. | 1 | +| L1 | m | Source-sample distance | 10 | + +## Links + +- [Source code](Test_Incoherent.instr) for `Test_Incoherent.instr`. +- [Additional information](Test_Incoherent.instr.md) + +--- + +*Generated for mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/examples/Tests_samples/Test_Incoherent_MS/README.md b/mcstas-comps/examples/Tests_samples/Test_Incoherent_MS/README.md new file mode 100644 index 000000000..520131247 --- /dev/null +++ b/mcstas-comps/examples/Tests_samples/Test_Incoherent_MS/README.md @@ -0,0 +1,67 @@ +# The `Test_Incoherent_MS` Instrument + +*McStas: Test instrument for validation of magnitude of multiple scattering in Incoherent.comp.* + +## Identification + +- **Site:** Tests_samples +- **Author:** Daniel Lomholt Christensen and Peter Willendrup +- **Origin:** NBI +- **Date:** 20250603 + +## Description + +```text +Test instrument for validation of magnitude of multiple scattering in Incoherent.comp. +The instrument considers "thin" and "thick" sample conditions. + + +For the thin sample conditions, the following analytical calulations find the +Neutron intensity at the detector to be 27.12: +
    +$$ +\frac{dN_{\rm real}}{dt}= \Psi A \rho_{\rm c}\sigma_{\rm inc} +\frac{\Delta \Omega}{4 \pi} a_{\rm lin} l_{unscattered}. +$$ +Where $\Psi=1e7$, $A=1$, $\rho=0.0723$, $\sigma_{\rm inc}=\sigma_{\rm abs} = 5.08$, $\frac{\Delta \Omega}{4 \pi} = 10/99.95^2$ +and $a_{\rm lin}= \exp(-(\sigma_{\rm inc} + \sigma_{\rm abs}\lambda/1.7982)\rho l_{avg})$. +$l_{unscattered}=0.1cm$ and is the path through the sample eg. unscattered path length. +
    + + +For the thick sample condition, the general formula is the same, +But the attenuation is calculated using the effective length, instead of the actual +length: +
    +\begin{equation} \label{eq:inc_layer_l} +l_{\rm app} = \int _{0}^{l_{\rm max}} a_{\rm lin}(z) dz += \int _{0}^{l_{\rm max}} e^{-2\mu z}dz += \frac{1-e^{-2\mu l_{\rm max}}}{2\mu }, +\end{equation} +
    + +By scanning across thickness values, one then finds a curve, that should fit the +analytical calculations. +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| flux_mult | 1/(s*cm**2*st*meV) | Source flux x 1e14 multiplier for source | 0.5512 | +| thick | m | Sample thickness | 0.001 | +| total_scattering | 1 | Flag to indicate if sample focuses (=0) or not (=1) | 0 | +| sample | str | Sample state "thick", "thin", "none" supported | "thin" | +| order | 1 | Maximal order of multiple scattering | 1 | + +## Links + +- [Source code](Test_Incoherent_MS.instr) for `Test_Incoherent_MS.instr`. +- [Additional information](Test_Incoherent_MS.instr.md) +- A reference/HTML link for more information + +--- + +*Generated for mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/examples/Tests_samples/Test_Magnon_bcc_2D/README.md b/mcstas-comps/examples/Tests_samples/Test_Magnon_bcc_2D/README.md new file mode 100644 index 000000000..7b70faf35 --- /dev/null +++ b/mcstas-comps/examples/Tests_samples/Test_Magnon_bcc_2D/README.md @@ -0,0 +1,42 @@ +# The `Test_Magnon_bcc_2D` Instrument + +*McStas: Test instrument for the Sqq_w_monitor and Magnon_bcc components, derived from template_Laue* + +## Identification + +- **Site:** Tests_samples +- **Author:** P. Willendrup +- **Origin:** DTU +- **Date:** June, 2018 + +## Description + +```text + +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| lambda | AA | Central wavelength of wavelength distribution | 10 | +| dlambda | AA | Width of wavelength distribution | 9.9 | +| Rotation | deg | Sample orientation | 0 | +| inelastic | in 0:1 | Fraction of statistics to scatter inelastically | 1 | +| aa | AA | BCC lattice constant | 6.283185307179586 | +| sample_J | meV | Magnitude of sample nearest-neighbour interaction | 2 | +| TT | K | Sample temperature | 300 | +| FerroMagnet | boolean | Flag to choose if sample is FM or AFM | 0 | +| Verbose | | | 0 | +| imultiplier | 1 | Parameter to rescale intensity-output from Magnon comp | 1 | + +## Links + +- [Source code](Test_Magnon_bcc_2D.instr) for `Test_Magnon_bcc_2D.instr`. +- [Additional information](Test_Magnon_bcc_2D.instr.md) + +--- + +*Generated for mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/examples/Tests_samples/Test_Magnon_bcc_TAS/README.md b/mcstas-comps/examples/Tests_samples/Test_Magnon_bcc_TAS/README.md new file mode 100644 index 000000000..0bc7f3acb --- /dev/null +++ b/mcstas-comps/examples/Tests_samples/Test_Magnon_bcc_TAS/README.md @@ -0,0 +1,44 @@ +# The `Test_Magnon_bcc_TAS` Instrument + +*McStas: Generic TAS instrument for test of samples with dispersions.* + +## Identification + +- **Site:** Tests_samples +- **Author:** Kim Lefmann (lefmann@nbi.ku.dk) +- **Origin:** UCPH +- **Date:** 22.07.2018 + +## Description + +```text +Generic TAS instrument for test of samples with dispersions. Modeled over the RITA-2 instrument at PSI (one analyzer only). The instrument is able to position in q-space at q=(h 0 0) and fixed Ei and Ef. This can be used to longitudinal constant-E scans or constant-q scans. In addition, transverse constant-E scans can be made by scanning the sample orientation A3. +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| hw | meV | Neutron energy transfer | 0.5 | +| Ef | meV | Final neutron energy | 5 | +| A3offset | deg | sample rotation around a vertical axis | 0 | +| A3auto | 1 | Flag for selecting automatic setting of A3 to have q-vector along [h 0 0] (0=manual; 1=auto) | 1 | +| aa | AA | lattice parameter for cubic system (passed on to the sample component) | 4.5 | +| qh | 1 | Length of the q-vector in r.l.u., sets the value of scattering angle A4. If A3auto=1, then A3 is set to q=[qh 0 0] | 1.1 | +| highres | 1 | Flag for setting unrealistic high resolution (used for fine testing) (0=standard TAS / RITA2; 1=high resolution TAS) | 0 | +| sample_J | meV | Nearest Neighbor magnetic interaction in sample | 0.2 | +| TT | K | temperature | 300 | +| FerroMagnet | | Flag: 1 if ferromagnet, 0 if AFM | 0 | +| Verbose | 1 | Flag for printing of test statements from magnon component (0=silent, 1=print) | 0 | + +## Links + +- [Source code](Test_Magnon_bcc_TAS.instr) for `Test_Magnon_bcc_TAS.instr`. +- [Additional information](Test_Magnon_bcc_TAS.instr.md) +- + +--- + +*Generated for mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/examples/Tests_samples/Test_PowderN/README.md b/mcstas-comps/examples/Tests_samples/Test_PowderN/README.md new file mode 100644 index 000000000..d1ce9cf7f --- /dev/null +++ b/mcstas-comps/examples/Tests_samples/Test_PowderN/README.md @@ -0,0 +1,41 @@ +# The `Test_PowderN` Instrument + +*McStas: Test output of PowderN on a spherical monitor.* + +## Identification + +- **Site:** Tests_samples +- **Author:** P. Willendrup +- **Origin:** DTU +- **Date:** October 1st 2020 + +## Description + +```text +A test instrument for PowderN output on a spherical monitor. +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| lambda | Angs | Wavelength emitted from source, 1% wl-interval around. | 1 | +| L1 | m | Source-sample distance | 10 | +| directbeam | 1 | Suppress direct beam or not | 0 | +| reflections | str | List of powder reflections | "Fe.laz" | +| SPLITS | 1 | Number of SPLIT's before sample | 1 | +| frac_c | 1 | Fraction of stats assigned to coherent scattering | 0.8 | +| frac_i | 1 | Fraction of stats assigned to incoherent scattering | 0.1 | +| frac_t | 1 | Fraction of stats assigned to unscattered, "direct beam" | 0.1 | +| d_phi | deg | d_phi focusing setting in PowderN | 0 | + +## Links + +- [Source code](Test_PowderN.instr) for `Test_PowderN.instr`. +- [Additional information](Test_PowderN.instr.md) + +--- + +*Generated for mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/examples/Tests_samples/Test_PowderN_Res/README.md b/mcstas-comps/examples/Tests_samples/Test_PowderN_Res/README.md new file mode 100644 index 000000000..3cb30f21c --- /dev/null +++ b/mcstas-comps/examples/Tests_samples/Test_PowderN_Res/README.md @@ -0,0 +1,47 @@ +# The `Test_PowderN_Res` Instrument + +*McStas: Idealized powder diffractometer, to illustrate the difference between 'banana,theta' and 'banana,divergence' in Monitor_nD.* + +## Identification + +- **Site:** Tests_samples +- **Author:** Peter Willendrup +- **Origin:** DTU +- **Date:** 20160309 + +## Description + +```text +Idealized powder diffractometer, to illustrate the difference between 'banana,theta' and 'banana,divergence' in Monitor_nD. Includes a Na2Ca3Al2F14 powder sample. + +The beam from the source is very low-divergent, to allow studying effects at the sample "only". + +By default, absorption in the sample is effectively suppressed. + +Example: Lambda0=2.5667 dLambda=0.01 radius=0.001,0.021 TT=71.8 D_PHI=6 SPLITS=117 Distance=30 sig_abs=1e-09 -N21 +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| Lambda0 | AA | Central wavelength of the source | 2.5667 | +| dLambda | AA | Width of wavelength band from the source | 0.01 | +| radius | m | Radius of cylindrical powder sample | 0.01 | +| TT | deg | Two-theta (scattering angle) of small banana detectors | 72 | +| D_PHI | deg | d_phi focusing around detector "plane" in degrees | 6 | +| SPLITS | 1 | SPLIT statistics booster at sample position | 117 | +| Distance | m | Distance between source and sample | 30 | +| sig_abs | barns | Absorption cross-section in the sample | 1e-9 | + +## Links + +- [Source code](Test_PowderN_Res.instr) for `Test_PowderN_Res.instr`. +- [Additional information](Test_PowderN_Res.instr.md) +- A reference/HTML link for more information + +--- + +*Generated for mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/examples/Tests_samples/Test_PowderN_concentric/README.md b/mcstas-comps/examples/Tests_samples/Test_PowderN_concentric/README.md new file mode 100644 index 000000000..cdefee91c --- /dev/null +++ b/mcstas-comps/examples/Tests_samples/Test_PowderN_concentric/README.md @@ -0,0 +1,37 @@ +# The `Test_PowderN_concentric` Instrument + +*McStas: Test output of PowderN on a spherical monitor.* + +## Identification + +- **Site:** Tests_samples +- **Author:** P. Willendrup +- **Origin:** DTU +- **Date:** October 1st 2020 + +## Description + +```text +A test instrument for PowderN output on a spherical monitor. +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| lambda | Angs | Wavelength emitted from source, 1% wl-interval around. | 1 | +| L1 | m | Source-sample distance | 10 | +| directbeam | 1 | Suppress direct beam or not | 1 | +| reflections | str | List of powder reflections | "Fe.laz" | +| SPLITS | 1 | Number of SPLIT's before sample | 1 | + +## Links + +- [Source code](Test_PowderN_concentric.instr) for `Test_PowderN_concentric.instr`. +- [Additional information](Test_PowderN_concentric.instr.md) + +--- + +*Generated for mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/examples/Tests_samples/Test_Powders/README.md b/mcstas-comps/examples/Tests_samples/Test_Powders/README.md new file mode 100644 index 000000000..813b4c8b5 --- /dev/null +++ b/mcstas-comps/examples/Tests_samples/Test_Powders/README.md @@ -0,0 +1,41 @@ +# The `Test_PowderN` Instrument + +*McStas: Test output of PowderN, NCrystal and Single_crystal on a spherical monitor / PSD.* + +## Identification + +- **Site:** Tests_samples +- **Author:** M. Bertelsen and P. Willendrup +- **Origin:** ESS DMSC +- **Date:** November 2024 + +## Description + +```text +A test instrument for Powder output from different sample components. +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| comp | 1 | 1=PowderN, 2=Single_crystal, 3=NCrystal | 1 | +| lambda | Angs | Wavelength emitted from source, 1% wl-interval around. | 2.5 | +| L1 | m | Source-sample distance | 10 | +| directbeam | 1 | Suppress direct beam or not | 0 | +| material | str | Material string for picking up CIF (PowderN/Single_Crystal) and ncmat (NCrystal) | "Ge" | +| SPLITS | 1 | Number of SPLIT's before sample | 1 | +| frac_t | 1 | Fraction of stats assigned to unscattered, "direct beam" | 0.1 | +| sxmos | arcmin | Mosaicity to use in Single_crystal case | 60 | +| twotheta | deg | Angle for 2\theta detector for detailed view | 94 | + +## Links + +- [Source code](Test_Powders.instr) for `Test_Powders.instr`. +- [Additional information](Test_Powders.instr.md) + +--- + +*Generated for mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/examples/Tests_samples/Test_SANS/README.md b/mcstas-comps/examples/Tests_samples/Test_SANS/README.md new file mode 100644 index 000000000..97ecc2dc8 --- /dev/null +++ b/mcstas-comps/examples/Tests_samples/Test_SANS/README.md @@ -0,0 +1,55 @@ +# The `Test_SANS` Instrument + +*McStas: Toy model used for testing various sample components for solution-SANS.* + +## Identification + +- **Site:** Tests_samples +- **Author:** Martin Cramer Pedersen (mcpe@nbi.dk) and Søren Kynde (kynde@nbi.dk) +- **Origin:** KU-Science +- **Date:** October 29th, 2012 + +## Description + +```text +Toy model used for testing various sample components for solution-SANS. + +The following SANS samples are handled: +SANSSpheres SAMPLE=0 +SANSShells SAMPLE=1 +SANSCylinders SAMPLE=2 +SANSEllipticCylinders SAMPLE=3 +SANSLiposomes SAMPLE=4 +SANSNanodiscs SAMPLE=5 +SANSNanodiscsWithTags SAMPLE=6 +SANSPDB SAMPLE=7 (very slow, rather use SANSPDBFast) +SANSCurve SAMPLE=8 (inactivated) +SANSNanodiscsFast SAMPLE=9 +SANSNanodiscsWithTagsFast SAMPLE=10 +SANSPDBFast SAMPLE=11 +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| DistanceFromSourceToFirstPinhole | m | Distance to first pinhole from source. | 1.0 | +| DistanceFromSourceToSecondPinhole | m | Distance to second pinhole - used for focusing rays. | 10.0 | +| DistanceFromSecondPinholeToSample | m | Collimation length. | 1.0 | +| DistanceFromSampleToDetector | m | Sample-detector-distance. | 10.0 | +| RadiusOfDetector | m | Radius of the circular detector. | 4.0 | +| Lambda | AA | Wavelength of the rays emitted from source. | 4.5 | +| DLambda | | Relative deviation of wavelength of the rays emitted from source. | 0.1 | +| SAMPLE | | Index of sample model, see above. | 0 | +| Ncount | 1 | Override the number of rays to simulate. | 0 | + +## Links + +- [Source code](Test_SANS.instr) for `Test_SANS.instr`. +- [Additional information](Test_SANS.instr.md) + +--- + +*Generated for mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/examples/Tests_samples/Test_SX/README.md b/mcstas-comps/examples/Tests_samples/Test_SX/README.md new file mode 100644 index 000000000..45285374e --- /dev/null +++ b/mcstas-comps/examples/Tests_samples/Test_SX/README.md @@ -0,0 +1,43 @@ +# The `Test_SX` Instrument + +*McStas: Test output of Single Crystal on a spherical monitor.* + +## Identification + +- **Site:** Tests_samples +- **Author:** P. Willendrup +- **Origin:** DTU +- **Date:** October 1st 2020 + +## Description + +```text +A test instrument to compare Monitor_nD output against basic 1D and 2D monitors. +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| lambda | Angs | Central wavelength emitted from source | 5 | +| dlambda | Angs | Witdth of wavelength spectrom emitted from source | 9.8 | +| L1 | m | Source-sample distance | 30 | +| directbeam | 1 | Suppress direct beam or not | 0 | +| beamstop | | Toggle beamstop | 0 | +| reflections | str | File name for reflection list | "YBaCuO.lau" | +| SPLITS | 1 | Number of SPLIT's before sample | 1 | +| order | | Maximum order of multiple scattering, Single_crystal | 0 | +| inc | barns | Incoherent cross-section | 0 | +| trans | | Fraction of statistics assigned to transmitted beam | 0.001 | +| omega | deg | Rotation angle of sample | 0 | + +## Links + +- [Source code](Test_SX.instr) for `Test_SX.instr`. +- [Additional information](Test_SX.instr.md) + +--- + +*Generated for mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/examples/Tests_samples/Test_Single_crystal_inelastic/README.md b/mcstas-comps/examples/Tests_samples/Test_Single_crystal_inelastic/README.md new file mode 100644 index 000000000..fb22c175b --- /dev/null +++ b/mcstas-comps/examples/Tests_samples/Test_Single_crystal_inelastic/README.md @@ -0,0 +1,50 @@ +# The `Test_Single_crystal_inelastic` Instrument + +*McStas: Test instrument for the Single_crystal_inelastic component.* + +## Identification + +- **Site:** Tests_samples +- **Author:** Duc Le +- **Origin:** ISIS +- **Date:** Feb 2015 + +## Description + +```text +Simple test instrument for Single_crystal_inelastic in Horace mode + +Example: mcrun Test_Single_crystal_inelastic.instr + +once your instrument is written and functional: +- replace INSTRUMENT_SITE entry above with your Institution name as a single word +- rename the instrument name after DEFINE INSTRUMENT below +- update the parameter help in the following Parameters section +- update the instrument description, and better add a usage example with a +sensible parameter set. +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| E | meV | Mean energy produced at the source | 10 | +| DE | meV | Energy spread produced at the source | 0.1 | +| HDIV | deg | Horizontal divergence from the source | 0.5 | +| VDIV | deg | Vertical divergence from the source | 0.5 | +| OM | deg | Sample orientation around y | 0 | +| TH | deg | Sample orientation around x | 0 | +| FI | deg | Sample orientation around z | 0 | +| SQW | str | 4D Sqw input file | "example.sqw4" | + +## Links + +- [Source code](Test_Single_crystal_inelastic.instr) for `Test_Single_crystal_inelastic.instr`. +- [Additional information](Test_Single_crystal_inelastic.instr.md) +- Duc Le (2015) - duc.le@stfc.ac.uk + +--- + +*Generated for mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/examples/Tests_samples/Test_Sqw/README.md b/mcstas-comps/examples/Tests_samples/Test_Sqw/README.md new file mode 100644 index 000000000..bd71c7061 --- /dev/null +++ b/mcstas-comps/examples/Tests_samples/Test_Sqw/README.md @@ -0,0 +1,37 @@ +# The `Test_Sqw` Instrument + +*McStas: Test output of Isotropic_Sqw on a spherical monitor.* + +## Identification + +- **Site:** Tests_samples +- **Author:** P. Willendrup +- **Origin:** DTU +- **Date:** October 1st 2020 + +## Description + +```text +A test instrument for testing Isotropic_Sqw output on a spherical monitor. +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| lambda | Angs | Wavelength emitted from source, 1% wl-interval around. | 1 | +| L1 | m | Source-sample distance | 10 | +| directbeam | 1 | Suppress direct beam or not | 0 | +| sqw_coh | str | Sqw material definition | "Rb_liq_tot.sqw" | +| SPLITS | 1 | Number of SPLIT's before sample | 1 | + +## Links + +- [Source code](Test_Sqw.instr) for `Test_Sqw.instr`. +- [Additional information](Test_Sqw.instr.md) + +--- + +*Generated for mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/examples/Tests_samples/Test_Sqw_monitor/README.md b/mcstas-comps/examples/Tests_samples/Test_Sqw_monitor/README.md new file mode 100644 index 000000000..fd6814e93 --- /dev/null +++ b/mcstas-comps/examples/Tests_samples/Test_Sqw_monitor/README.md @@ -0,0 +1,117 @@ +# The `Test_Sqw_monitor` Instrument + +*McStas: A simple ToF with cylindrical/spherical sample, and furnace/cryostat/container. The sample can be hollow.* + +## Identification + +- **Site:** Tests_samples +- **Author:** E. Farhi +- **Origin:** ILL +- **Date:** Feb 2014 + +## Description + +```text +This instrument models a generic, tunable, neutron time-of-flight spectrometer. + +The incoming flux at the sample brings neutrons with 'beam_wavelength_Angs' wavelength. +The energy resolution at the sample is given as 'beam_resolution_meV'. +The beam size at the sample is set to the sample cross section (e.g. ~2 x 5 cm). + +The sample geometry is either cylindrical ('sample_radius_m' and 'sample_height_m') +or spherical ('sample_height_m=0'). The sample can be hollow when given a thickness +'sample_thickness_m', or filled ('sample_thickness_m=0'). When in cylindrical geometry, +it is surrounded by a container with thickness 'container_thickness_m'. The container +material is specified as a powder file name 'container' in the McStas Sqw or PowderN format, +e.g. 'Al.laz' or 'Nb.laz'. Setting 'container=0' removes the container. + +The sample scattering is characterised by its coherent and incoherent contributions +given as 'sample_coh' and 'sample_inc' file names in McStas Sqw or PowderN format. +Setting the 'sample_coh=sample_inc=0' removes the sample, e.g. to study the container or +environment only contribution. + +The sample and its container are located inside a cylindrical shield with radius +'environment_radius_m' and thickness 'environment_thickness_m'. The material is set from +the 'environment' file name in the McStas Sqw or PowderN format (e.g. 'Al.laz'). +This way, it is possible to estimate the contribution of a cryostat or furnace. +Setting 'environment=0' removes the environment. + +The detector has a cylindrical geometry, with a radius 'sample_detector_distance_m' +and tubes with height 'detector_height_m'. The detector covers a -30 to 140 deg angular range +with 2.54 cm diameter tubes (the number of tubes is computed from the distance). +The direct beam (non scattered neutrons) is discarded. + +The detector produces both (angle,tof) and (q,w) data sets, for: +total scattering +coherent single scattering from sample +incoherent single scattering from sample +multiple scattering from sample +scattering from the container and sample environment +The (angle,tof) results are corrected for the parallax effect from the detector height. + +Known configurations: +ILL_IN4: +beam_wavelength_Angs=2, beam_resolution_meV=0.5, +sample_detector_distance_m=2.0, detector_height_m=0.3 +ILL_IN5: +beam_wavelength_Angs=5, beam_resolution_meV=0.1, +sample_detector_distance_m=4.0, detector_height_m=3.0 +ILL_IN6: +beam_wavelength_Angs=4.1, beam_resolution_meV=0.1, +sample_detector_distance_m=2.48, detector_height_m=1.2 +PSI_Focus: +beam_wavelength_Angs=4.1, beam_resolution_meV=0.1, +sample_detector_distance_m=2.5, detector_height_m=1.2 +FRM2_TOFTOF: +beam_wavelength_Angs=3.0, beam_resolution_meV=0.3, +sample_detector_distance_m=4.0, detector_height_m=2.0 +SNS_SEQUOIA: +beam_wavelength_Angs=1.0, beam_resolution_meV=3.0, +sample_detector_distance_m=5.5, detector_height_m=1.2 +SNS_ARCS: +beam_wavelength_Angs=0.3, beam_resolution_meV=20.0, +sample_detector_distance_m=3.0, detector_height_m=1.46 +NIST_DCS: +beam_wavelength_Angs=3.0, beam_resolution_meV=0.2, +sample_detector_distance_m=4.0, detector_height_m=1.2 +ISIS_MERLIN: +beam_wavelength_Angs=1.0, beam_resolution_meV=2.4, +sample_detector_distance_m=2.5, detector_height_m=3.0 +ISIS_LET: +beam_wavelength_Angs=4.0, beam_resolution_meV=0.1, +sample_detector_distance_m=3.5, detector_height_m=4.0 +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| beam_wavelength_Angs | Angs | incident neutron beam wavelength | 2 | +| beam_resolution_meV | meV | incident energy range full width | 0.1 | +| sample_coh | str | sample coherent Sqw data file or NULL | "Rb_liq_coh.sqw" | +| sample_inc | str | sample incoherent Sqw data file or NULL | "Rb_liq_inc.sqw" | +| sample_thickness_m | m | thickness of sample. 0=filled | 1e-3 | +| sample_height_m | m | height of sample. 0=sphere | 0.03 | +| sample_radius_m | m | radius of sample (outer) | 0.005 | +| container | str | container material or NULL | "Al.laz" | +| container_thickness_m | m | container thickness | 50e-6 | +| environment | str | sample environment material or NULL | "Al.laz" | +| environment_radius_m | m | sample environment outer radius | 0.025 | +| environment_thickness_m | m | sample environment thickness | 2e-3 | +| detector_height_m | m | detector tubes height | 3 | +| sample_detector_distance_m | m | distance from sample to detector | 4.0 | + +## Links + +- [Source code](Test_Sqw_monitor.instr) for `Test_Sqw_monitor.instr`. +- [Additional information](Test_Sqw_monitor.instr.md) +- The Isotropic_Sqw sample +- The PowderN sample +- The Samples_Isotropic_Sqw example instrument +- The nMoldyn package to create Sqw data sets from MD trajectories + +--- + +*Generated for mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/examples/Tests_samples/Test_TOFRes_sample/README.md b/mcstas-comps/examples/Tests_samples/Test_TOFRes_sample/README.md new file mode 100644 index 000000000..c1bee3284 --- /dev/null +++ b/mcstas-comps/examples/Tests_samples/Test_TOFRes_sample/README.md @@ -0,0 +1,43 @@ +# The `Test_TOFRes_sample` Instrument + +*McStas: Testing resolution of a TOF spectrometer, use "reso.dat" output with mcresplot.py* + +## Identification + +- **Site:** Tests_samples +- **Author:** Peter Willendrup (adapted from ancient Kim Lefmann instrument) +- **Origin:** DTU +- **Date:** 25-Oct-2023 + +## Description + +```text +Testing resolution of a TOF spectrometer, use "reso.dat" output with mcresplot.py + +TOF resolution test instrument. +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| Chop_W1 | m | Width of 1st chopper slit | 0.1 | +| Chop_ph1 | s | Temporal phase of 1st chopper | 0.0009 | +| Chop_W2 | m | Width of 2nd chopper slit | 0.2 | +| Chop_ph2 | s | Temporal phase of 2nd chopper | 0.003 | +| Chop_W3 | m | Width of 3rd chopper slit | 0.1 | +| Chop_ph3 | s | Temporal phase of 3rd chopper | 0.006 | +| TIME_BIN | us | Target detection time | 10000 | +| BIN_WIDTH | us | Width of detection times | 10 | +| TWOTHETA | deg | Scattering angle | 60 | + +## Links + +- [Source code](Test_TOFRes_sample.instr) for `Test_TOFRes_sample.instr`. +- [Additional information](Test_TOFRes_sample.instr.md) + +--- + +*Generated for mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/examples/Tests_samples/Test_TasReso/README.md b/mcstas-comps/examples/Tests_samples/Test_TasReso/README.md new file mode 100644 index 000000000..1f2b21c3b --- /dev/null +++ b/mcstas-comps/examples/Tests_samples/Test_TasReso/README.md @@ -0,0 +1,60 @@ +# The `Test_TasReso` Instrument + +*McStas: Testing the triple-axis resolution, use "reso.dat" output with mcresplot.py* + +## Identification + +- **Site:** Tests_samples +- **Author:** Tobias Weber (tweber@ill.fr) +- **Origin:** ILL +- **Date:** 30-Mar-2019 + +## Description + +```text +Testing the triple-axis resolution, use "reso.dat" output with mcresplot.py + +Triple-axis resolution test instrument, +forked from the Hercules McStas course: +https://code.ill.fr/tweber/hercules + +This program is free software: you can redistribute it and/or modify +it under the terms of the GNU General Public License as published by +the Free Software Foundation, version 3 of the License. + +This program is distributed in the hope that it will be useful, +but WITHOUT ANY WARRANTY; without even the implied warranty of +MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +GNU General Public License for more details. + +You should have received a copy of the GNU General Public License +along with this program. If not, see http://www.gnu.org/licenses/. +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| src_lam | AA | Source mean wavelength | 4.5 | +| src_dlam | AA | Source wavelength spread | 1.0 | +| ki | AA^-1 | Monochromator ki | -1 | +| kf | AA^-1 | Analyser kf | -1 | +| sample_num | | Selection of sample-model 0=vanadium, 1=single crystal, 2=resolution | 2 | +| mono_curvh | m | Monochromator horizontal curvature. -1: optimal, 0: flat | -1 | +| mono_curvv | m | Monochromator vertical curvature -1: optimal, 0: flat | -1 | +| ana_curvh | m | Analyzer horizontal curvature. -1: optimal, 0: flat | -1 | +| ana_curvv | m | Analyzer vertical curvature -1: optimal, 0: flat | -1 | +| coll_presample_div | arcmin | Collimation before sample | 30.0 | +| coll_postsample_div | arcmin | Collimation after sample | 30.0 | +| k_filter_cutoff | AA^-1 | Filter cutoff | 1.6 | + +## Links + +- [Source code](Test_TasReso.instr) for `Test_TasReso.instr`. +- [Additional information](Test_TasReso.instr.md) + +--- + +*Generated for mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/examples/Tests_samples/Test_single_magnetic_crystal/README.md b/mcstas-comps/examples/Tests_samples/Test_single_magnetic_crystal/README.md new file mode 100644 index 000000000..6097a6e2e --- /dev/null +++ b/mcstas-comps/examples/Tests_samples/Test_single_magnetic_crystal/README.md @@ -0,0 +1,45 @@ +# The `Test_single_magnetic_crystal` Instrument + +*McStas: Unit test instrument for magnetic single crystal* + +## Identification + +- **Site:** Tests_samples +- **Author:** Erik B Knudsen (erkn@fysik.dtu.dk) +- **Origin:** DTU Physics +- **Date:** Jan 2020 + +## Description + +```text +A very simple unit test/example instrument for the experimental Single_magnetic_crystal +component. It is a very simple implementation of a Laue camera using 4PI spherical +monitors. +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| L0 | AA | Centre wavelength to simulate | 4 | +| dL | AA | Half wavelength spread to sample | 3.91 | +| OM | deg | Sample rotation | 0 | +| TT | deg | Rotation of detector arm | 0 | +| PX | | x-component of initial polarization | 0 | +| PY | | y-component of initial polarization | 1 | +| PZ | | z-component of initial polarization | 0 | +| MOS | arcmin | Isotropic mosaic of the crystal. | 100 | +| QMIN | AA^-1 | lower boundary of momentum transfer range to generate hkls in | 0.1 | +| QMAX | AA^-1 | upper boundary of momentum transfer range to generate hkls in | 5 | + +## Links + +- [Source code](Test_single_magnetic_crystal.instr) for `Test_single_magnetic_crystal.instr`. +- [Additional information](Test_single_magnetic_crystal.instr.md) +- A reference/HTML link for more information + +--- + +*Generated for mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/examples/Tests_samples/Unittest_SANS_benchmark2/README.md b/mcstas-comps/examples/Tests_samples/Unittest_SANS_benchmark2/README.md new file mode 100644 index 000000000..f7a3ee1a9 --- /dev/null +++ b/mcstas-comps/examples/Tests_samples/Unittest_SANS_benchmark2/README.md @@ -0,0 +1,40 @@ +# The `Unittest_SANS_benchmark2` Instrument + +*McStas: Test instrument for the SANS_benchmark2 component. No guide / velocity selector.* + +## Identification + +- **Site:** Tests_samples +- **Author:** Peter Willendrup +- **Origin:** ESS +- **Date:** April 2023 + +## Description + +```text +Very simple test instrument for the SANS_benchmark2 component from H. Frielinghaus. +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| lambda | AA | Mean wavelength of neutrons | 6 | +| dlambda | AA | Wavelength spread of neutrons | 0.05 | +| r | AA | Radius of scattering hard spheres | 150 | +| PHI | 1 | Particle volume fraction | 1e-3 | +| Delta_Rho | cm^-2 | Scattering length density | 6e10 | +| frac_dir | 1 | Fraction of statistics for direct beam | 0.03 | +| frac_inc | 1 | Fraction of statistics for incoherent scattering in scattered beam | 0.01 | +| modnum | int | Sample "modle number" from SANS_benchmark2 | 1 | + +## Links + +- [Source code](Unittest_SANS_benchmark2.instr) for `Unittest_SANS_benchmark2.instr`. +- [Additional information](Unittest_SANS_benchmark2.instr.md) + +--- + +*Generated for mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/examples/Tests_sources/Test_Source_custom/README.md b/mcstas-comps/examples/Tests_sources/Test_Source_custom/README.md new file mode 100644 index 000000000..de101108b --- /dev/null +++ b/mcstas-comps/examples/Tests_sources/Test_Source_custom/README.md @@ -0,0 +1,33 @@ +# The `test_Source_custom` Instrument + +*McStas: Test instrument for the Source_custom component* + +## Identification + +- **Site:** Tests_sources +- **Author:** Pablo Gila-Herranz +- **Origin:** Materials Physics Center (CFM-MPC), CSIC-UPV/EHU +- **Date:** 15:36:54 on April 04, 2025 + +## Description + +```text +This is a test file for the Source_custom component +Using the parameters for the HBS bi-spectral source +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| + +## Links + +- [Source code](test_Source_custom.instr) for `test_Source_custom.instr`. +- [Additional information](test_Source_custom.instr.md) + +--- + +*Generated for mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/examples/Tests_sources/Test_Source_quasi/README.md b/mcstas-comps/examples/Tests_sources/Test_Source_quasi/README.md new file mode 100644 index 000000000..ce7d9d2ca --- /dev/null +++ b/mcstas-comps/examples/Tests_sources/Test_Source_quasi/README.md @@ -0,0 +1,33 @@ +# The `Test_Source_quasi` Instrument + +*McStas: Test instrument to show that the quasi-stcohastic source component works* + +## Identification + +- **Site:** Tests_sources +- **Author:** Erik B Knudsen (erkn@fysik.dtu.dk) +- **Origin:** DTU Fysik +- **Date:** Feb 1st 2013 + +## Description + +```text +This instrument is a unit test for the quasi-stochastic source component. +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| SRC | | Integer parameter picks a source model. 0 normal Source_div, Quasi-stochastic | 1 | + +## Links + +- [Source code](Test_Source_quasi.instr) for `Test_Source_quasi.instr`. +- [Additional information](Test_Source_quasi.instr.md) + +--- + +*Generated for mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/examples/Tests_union/Conditional_test/README.md b/mcstas-comps/examples/Tests_union/Conditional_test/README.md new file mode 100644 index 000000000..30a224e30 --- /dev/null +++ b/mcstas-comps/examples/Tests_union/Conditional_test/README.md @@ -0,0 +1,33 @@ +# The `Conditional_test` Instrument + +*McStas: Test of all Union conditional components* + +## Identification + +- **Site:** Tests_union +- **Author:** Mads Bertelsen +- **Origin:** University of Copenhagen +- **Date:** September 2015 + +## Description + +```text +Use of all conditional components in one instrument file +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| dummy | | Dummy input parameter | 1 | + +## Links + +- [Source code](Conditional_test.instr) for `Conditional_test.instr`. +- [Additional information](Conditional_test.instr.md) + +--- + +*Generated for mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/examples/Tests_union/External_component_test/README.md b/mcstas-comps/examples/Tests_union/External_component_test/README.md new file mode 100644 index 000000000..5e07917d0 --- /dev/null +++ b/mcstas-comps/examples/Tests_union/External_component_test/README.md @@ -0,0 +1,33 @@ +# The `External_component_test` Instrument + +*McStas: Inserts external component in Union system with exit volumes and number_of_activations* + +## Identification + +- **Site:** Tests_union +- **Author:** Mads Bertelsen +- **Origin:** University of Copenhagen +- **Date:** September 2015 + +## Description + +```text +Demonstration of the use of "number_of_activations" and exit volumes to +include a regular McStas component in an ensemble of Union components. +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| + +## Links + +- [Source code](External_component_test.instr) for `External_component_test.instr`. +- [Additional information](External_component_test.instr.md) + +--- + +*Generated for mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/examples/Tests_union/Geometry_test/README.md b/mcstas-comps/examples/Tests_union/Geometry_test/README.md new file mode 100644 index 000000000..58779a04b --- /dev/null +++ b/mcstas-comps/examples/Tests_union/Geometry_test/README.md @@ -0,0 +1,33 @@ +# The `Geometry_test` Instrument + +*McStas: Test of all Union geometry components in one file* + +## Identification + +- **Site:** Tests_union +- **Author:** Mads Bertelsen +- **Origin:** University of Copenhagen +- **Date:** September 2015 + +## Description + +```text +Use of all basic geometries, mesh(as a torus), sphere, cylinder, cone and box +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| meshfile | | | "torus.STL" | + +## Links + +- [Source code](Geometry_test.instr) for `Geometry_test.instr`. +- [Additional information](Geometry_test.instr.md) + +--- + +*Generated for mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/examples/Tests_union/Hidden_Cylinder/README.md b/mcstas-comps/examples/Tests_union/Hidden_Cylinder/README.md new file mode 100644 index 000000000..5a0c8728a --- /dev/null +++ b/mcstas-comps/examples/Tests_union/Hidden_Cylinder/README.md @@ -0,0 +1,42 @@ +# The `Hidden_Cylinder` Instrument + +*McStas: Small test instrument testing placement of low-priority Union cylinder within higher-priority Union cylinder.* + +## Identification + +- **Site:** Tests_union +- **Author:** Daniel Lomholt Christensen +- **Origin:** UCPH@NBI, Funded by ACTNXT +- **Date:** 15:54:48 on January 20, 2026 + +## Description + +```text +A small test instrument testing the placement of one cylinder with a low priority +fully inside another cylinder with a higher priority. This was added to test +for an mcdisplay error that used to occur, when a cylinder is completely +enclosed in another cylinder. +To test this simply do +a "mcdisplay Hidden_Cylinder.instr -c -y" +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| pin_rad | m | Radius of source | 0.0025 | +| d | m | Distance between source and sample center | 10 | +| detector_x | m | Detector Width | 0.01 | +| detector_y | m | Detector Height | 0.04 | +| det_dist | m | Distance between detector and sample center | 0.005 | + +## Links + +- [Source code](Hidden_Cylinder.instr) for `Hidden_Cylinder.instr`. +- [Additional information](Hidden_Cylinder.instr.md) + +--- + +*Generated for mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/examples/Tests_union/IncoherentPhonon_test/README.md b/mcstas-comps/examples/Tests_union/IncoherentPhonon_test/README.md new file mode 100644 index 000000000..217964bf1 --- /dev/null +++ b/mcstas-comps/examples/Tests_union/IncoherentPhonon_test/README.md @@ -0,0 +1,57 @@ +# The `IncoherentPhonon_test` Instrument + +*McStas: Test of IncoherentPhonon_process* + +## Identification + +- **Site:** Tests_union +- **Author:** Mads Bertelsen +- **Origin:** Johns Hopkins University, Baltimore +- **Date:** May 2016 + +## Description + +```text +Test instrument for the IncoherentPhonon_process physics process from +V. Laliena, Uni Zaragoza. + +Example: comp_select=1 Detector: energy_mon_2_I=1156.84 +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| comp_select | | 1: Union components, 2: Incoherent | 1 | +| sample_radius | m | Radius of sample | 0.01 | +| sample_height | m | Height of sample | 0.03 | +| pack | | Packing factor | 1 | +| sigma_inc_vanadium | barns | Incoherent cross-section | 5.08 | +| sigma_abs_vanadium | barns | Absorption cross-section | 5.08 | +| Vc_vanadium | AA^3 | Unit cell volume | 13.827 | +| geometry_interact | | p_interact for the Union sample | 0.5 | +| nphe_exact | | | 1 | +| nphe_approx | | | 0 | +| approx | | | 0 | +| mph_resum | | | 0 | +| T | | | 294 | +| density | | | 6.0 | +| M | | | 50.94 | +| sigmaCoh | | | 0.0184 | +| sigmaInc | | | 5.08 | +| dosfn | | | "dos_meV.txt" | +| nxs | | | 1000 | +| kabsmin | | | 0.1 | +| kabsmax | | | 25 | +| interact_fraction | | | -1 | + +## Links + +- [Source code](IncoherentPhonon_test.instr) for `IncoherentPhonon_test.instr`. +- [Additional information](IncoherentPhonon_test.instr.md) + +--- + +*Generated for mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/examples/Tests_union/Logger_test/README.md b/mcstas-comps/examples/Tests_union/Logger_test/README.md new file mode 100644 index 000000000..2797b1c5a --- /dev/null +++ b/mcstas-comps/examples/Tests_union/Logger_test/README.md @@ -0,0 +1,34 @@ +# The `Logger_test` Instrument + +*McStas: Test of all Union loggers* + +## Identification + +- **Site:** Tests_union +- **Author:** Mads Bertelsen +- **Origin:** University of Copenhagen +- **Date:** September 2015 + +## Description + +```text +Reconstruction of a sample holder from picture. +All arms are 30 cm below the actual center point in order to avoid arms +in the mcdisplay picture. Uses all Union loggers. +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| + +## Links + +- [Source code](Logger_test.instr) for `Logger_test.instr`. +- [Additional information](Logger_test.instr.md) + +--- + +*Generated for mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/examples/Tests_union/Many_meshes/README.md b/mcstas-comps/examples/Tests_union/Many_meshes/README.md new file mode 100644 index 000000000..5f2b2b80a --- /dev/null +++ b/mcstas-comps/examples/Tests_union/Many_meshes/README.md @@ -0,0 +1,41 @@ +# The `Many_meshes` Instrument + +*McStas: Instrument testing placement of overlapping mesh components.* + +## Identification + +- **Site:** Tests_union +- **Author:** Daniel Lomholt Christensen +- **Origin:** UCPH@NBI, Funded by ACTNXT +- **Date:** 15:54:48 on January 20, 2026 + +## Description + +```text +A small test instrument testing the placement of many overlapping +mesh components. +Test with: +mcdisplay -y -c +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| pin_rad | m | Radius of source | 0.0025 | +| d | m | Distance between source and sample center | 10 | +| detector_x | m | Detector Width | 0.01 | +| detector_y | m | Detector Height | 0.04 | +| det_dist | m | Distance between detector and sample center | 0.005 | +| crack_width | m | Height masking crack should be raised from the original crack | 0.003 | + +## Links + +- [Source code](Many_meshes.instr) for `Many_meshes.instr`. +- [Additional information](Many_meshes.instr.md) + +--- + +*Generated for mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/examples/Tests_union/Test_absorption/README.md b/mcstas-comps/examples/Tests_union/Test_absorption/README.md new file mode 100644 index 000000000..4f674d02c --- /dev/null +++ b/mcstas-comps/examples/Tests_union/Test_absorption/README.md @@ -0,0 +1,34 @@ +# The `Test_absorption` Instrument + +*McStas: Test of Union material with only absorption* + +## Identification + +- **Site:** Tests_union +- **Author:** Mads Bertelsen +- **Origin:** University of Copenhagen +- **Date:** September 2015 + +## Description + +```text +Testing an absorber made using the Union components. An absorber is made +without processes and just the make_material component, and requires +a few special cases. +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| + +## Links + +- [Source code](Test_absorption.instr) for `Test_absorption.instr`. +- [Additional information](Test_absorption.instr.md) + +--- + +*Generated for mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/examples/Tests_union/Test_absorption_image/README.md b/mcstas-comps/examples/Tests_union/Test_absorption_image/README.md new file mode 100644 index 000000000..e5642a86e --- /dev/null +++ b/mcstas-comps/examples/Tests_union/Test_absorption_image/README.md @@ -0,0 +1,34 @@ +# The `Test_absorption_image` Instrument + +*McStas: Image of cryostat with sample* + +## Identification + +- **Site:** Tests_union +- **Author:** Mads Bertelsen +- **Origin:** University of Copenhagen +- **Date:** September 2015 + +## Description + +```text +Simple test instrument showing absorption image of a cryostat with vanadium +sample using the Union components. +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| stick_displacement | m | Displacement of sample stick | 0 | + +## Links + +- [Source code](Test_absorption_image.instr) for `Test_absorption_image.instr`. +- [Additional information](Test_absorption_image.instr.md) + +--- + +*Generated for mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/examples/Tests_union/Test_box/README.md b/mcstas-comps/examples/Tests_union/Test_box/README.md new file mode 100644 index 000000000..03eaf278c --- /dev/null +++ b/mcstas-comps/examples/Tests_union/Test_box/README.md @@ -0,0 +1,35 @@ +# The `Test_box` Instrument + +*McStas: Simple test instrument for Union box component.* + +## Identification + +- **Site:** Tests_union +- **Author:** Mads Bertelsen +- **Origin:** University of Copenhagen +- **Date:** September 2015 + +## Description + +```text +One of the union geometries that can be used in conjuction +with the others to create a complex geometry. The priority needs to +be set, and when two or more geometries overlap, the one with highest +priority determines what material is simulated in that region. +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| + +## Links + +- [Source code](Test_box.instr) for `Test_box.instr`. +- [Additional information](Test_box.instr.md) + +--- + +*Generated for mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/examples/Tests_union/Test_mask/README.md b/mcstas-comps/examples/Tests_union/Test_mask/README.md new file mode 100644 index 000000000..8bf270f15 --- /dev/null +++ b/mcstas-comps/examples/Tests_union/Test_mask/README.md @@ -0,0 +1,33 @@ +# The `Test_mask` Instrument + +*McStas: Simple test instrument for mask functionality in Union framework.* + +## Identification + +- **Site:** Tests_union +- **Author:** Mads Bertelsen +- **Origin:** University of Copenhagen +- **Date:** September 2015 + +## Description + +```text +Masks allow restricing some geometry to the internal part of a mask +geometry. All Union geometry components can be used as masks. +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| + +## Links + +- [Source code](Test_mask.instr) for `Test_mask.instr`. +- [Additional information](Test_mask.instr.md) + +--- + +*Generated for mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/examples/Tests_union/Test_powder/README.md b/mcstas-comps/examples/Tests_union/Test_powder/README.md new file mode 100644 index 000000000..52215c7a6 --- /dev/null +++ b/mcstas-comps/examples/Tests_union/Test_powder/README.md @@ -0,0 +1,32 @@ +# The `Test_powder` Instrument + +*McStas: Simple test instrument for powder process in Union framework.* + +## Identification + +- **Site:** Tests_union +- **Author:** Mads Bertelsen +- **Origin:** University of Copenhagen +- **Date:** September 2015 + +## Description + +```text +Simple test instrument for powder sample simulated using Union components. +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| + +## Links + +- [Source code](Test_powder.instr) for `Test_powder.instr`. +- [Additional information](Test_powder.instr.md) + +--- + +*Generated for mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/examples/Tests_union/Test_texture/README.md b/mcstas-comps/examples/Tests_union/Test_texture/README.md new file mode 100644 index 000000000..ddae26ad7 --- /dev/null +++ b/mcstas-comps/examples/Tests_union/Test_texture/README.md @@ -0,0 +1,38 @@ +# The `Test_texture` Instrument + +*McStas: Simple test instrument for Texture functionality in Union framework.* + +## Identification + +- **Site:** Tests_union +- **Author:** +- **Origin:** +- **Date:** + +## Description + +```text +Simple test instrument for texture sample component. + +Example: lmax=0 Detector: monitor_I=8.08899e-05 +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| lmax | AA | Maximum wavelength treated by texture process | 0 | +| crystal_fn | string | Crystal structure file name | "Zr.laz" | +| fcoef_fn | string | Fourier component file name | "coef_Four_L2.txt" | +| barns | | Flag to indicate if \|F 2\| from "crystal_fn" is in barns or fm2 (barns = 1 for laz, barns = 0 for lau type files). | 1 | + +## Links + +- [Source code](Test_texture.instr) for `Test_texture.instr`. +- [Additional information](Test_texture.instr.md) + +--- + +*Generated for mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/examples/Tests_union/Unit_test_abs_logger_1D_space/README.md b/mcstas-comps/examples/Tests_union/Unit_test_abs_logger_1D_space/README.md new file mode 100644 index 000000000..7d5d8e459 --- /dev/null +++ b/mcstas-comps/examples/Tests_union/Unit_test_abs_logger_1D_space/README.md @@ -0,0 +1,34 @@ +# The `Unit_test_abs_logger_1D_space` Instrument + +*McStas: Test of the 1 dimensional spatial absorption logger* + +## Identification + +- **Site:** Tests_union +- **Author:** Mads Bertelsen +- **Origin:** ESS +- **Date:** June 2020 + +## Description + +```text +Test of the 1 dimensional spatial absorption logger that investigates +the amount of absorbed intensity projected onto a axis along its y coordinate. +Often used for detectors. +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| + +## Links + +- [Source code](Unit_test_abs_logger_1D_space.instr) for `Unit_test_abs_logger_1D_space.instr`. +- [Additional information](Unit_test_abs_logger_1D_space.instr.md) + +--- + +*Generated for mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/examples/Tests_union/Unit_test_abs_logger_1D_space_event/README.md b/mcstas-comps/examples/Tests_union/Unit_test_abs_logger_1D_space_event/README.md new file mode 100644 index 000000000..9e118abfa --- /dev/null +++ b/mcstas-comps/examples/Tests_union/Unit_test_abs_logger_1D_space_event/README.md @@ -0,0 +1,32 @@ +# The `Unit_test_abs_logger_1D_space_event` Instrument + +*McStas: Test of Union_abs_logger_1D_space_event* + +## Identification + +- **Site:** Tests_union +- **Author:** Mads Bertelsen +- **Origin:** ESS +- **Date:** June 2020 + +## Description + +```text + +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| + +## Links + +- [Source code](Unit_test_abs_logger_1D_space_event.instr) for `Unit_test_abs_logger_1D_space_event.instr`. +- [Additional information](Unit_test_abs_logger_1D_space_event.instr.md) + +--- + +*Generated for mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/examples/Tests_union/Unit_test_abs_logger_1D_space_tof/README.md b/mcstas-comps/examples/Tests_union/Unit_test_abs_logger_1D_space_tof/README.md new file mode 100644 index 000000000..ad260148e --- /dev/null +++ b/mcstas-comps/examples/Tests_union/Unit_test_abs_logger_1D_space_tof/README.md @@ -0,0 +1,33 @@ +# The `Unit_test_abs_logger_1D_space_tof` Instrument + +*McStas: Test of abs_logger_1D_space_tof* + +## Identification + +- **Site:** Tests_union +- **Author:** Mads Bertelsen +- **Origin:** ESS +- **Date:** June 2020 + +## Description + +```text +Tests absorption logger measuring position projected onto a line and the +time of absorption in a histogram. +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| + +## Links + +- [Source code](Unit_test_abs_logger_1D_space_tof.instr) for `Unit_test_abs_logger_1D_space_tof.instr`. +- [Additional information](Unit_test_abs_logger_1D_space_tof.instr.md) + +--- + +*Generated for mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/examples/Tests_union/Unit_test_abs_logger_1D_space_tof_to_lambda/README.md b/mcstas-comps/examples/Tests_union/Unit_test_abs_logger_1D_space_tof_to_lambda/README.md new file mode 100644 index 000000000..ff3da02c1 --- /dev/null +++ b/mcstas-comps/examples/Tests_union/Unit_test_abs_logger_1D_space_tof_to_lambda/README.md @@ -0,0 +1,40 @@ +# The `Unit_test_abs_logger_1D_space_tof_to_lambda` Instrument + +*McStas: Test of abs_logger_1D_space_tof_to_lambda that calculates wavelength from tof* + +## Identification + +- **Site:** Tests_union +- **Author:** Mads Bertelsen +- **Origin:** ESS +- **Date:** June 2020 + +## Description + +```text +This component works as other absorption loggers, but converts the tof and +position data to wavelength, which is then compared to the actual wavelength +calculated from the neutron state. The neutron position used to calculate +the wavelength is pixelated while the time of flight is continous. The +distance from source to sample is an input parameter, and the distance from +sample to a detector pixel is calculated using the reference component position +which should be specified with a relative component index. This test checks +both the standard view with measured and true wavelength on each axis, and the +relative where they have been normalized and a value of 1 is expected. +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| + +## Links + +- [Source code](Unit_test_abs_logger_1D_space_tof_to_lambda.instr) for `Unit_test_abs_logger_1D_space_tof_to_lambda.instr`. +- [Additional information](Unit_test_abs_logger_1D_space_tof_to_lambda.instr.md) + +--- + +*Generated for mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/examples/Tests_union/Unit_test_abs_logger_2D_space/README.md b/mcstas-comps/examples/Tests_union/Unit_test_abs_logger_2D_space/README.md new file mode 100644 index 000000000..eb09a764b --- /dev/null +++ b/mcstas-comps/examples/Tests_union/Unit_test_abs_logger_2D_space/README.md @@ -0,0 +1,32 @@ +# The `Unit_test_abs_logger_2D_space` Instrument + +*McStas: Test for Union_abs_logger_2D_space* + +## Identification + +- **Site:** Tests_union +- **Author:** Mads Bertelsen +- **Origin:** ESS +- **Date:** June 2020 + +## Description + +```text +Test of absorption logger with basic geometry from Unit_test_loggers_base. +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| + +## Links + +- [Source code](Unit_test_abs_logger_2D_space.instr) for `Unit_test_abs_logger_2D_space.instr`. +- [Additional information](Unit_test_abs_logger_2D_space.instr.md) + +--- + +*Generated for mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/examples/Tests_union/Unit_test_abs_logger_event/README.md b/mcstas-comps/examples/Tests_union/Unit_test_abs_logger_event/README.md new file mode 100644 index 000000000..a7505c994 --- /dev/null +++ b/mcstas-comps/examples/Tests_union/Unit_test_abs_logger_event/README.md @@ -0,0 +1,32 @@ +# The `Unit_test_abs_logger_event` Instrument + +*McStas: Test of Union_abs_logger_event* + +## Identification + +- **Site:** Tests_union +- **Author:** Mads Bertelsen +- **Origin:** ESS +- **Date:** June 2020 + +## Description + +```text + +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| + +## Links + +- [Source code](Unit_test_abs_logger_event.instr) for `Unit_test_abs_logger_event.instr`. +- [Additional information](Unit_test_abs_logger_event.instr.md) + +--- + +*Generated for mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/examples/Tests_union/Unit_test_abs_logger_nD/README.md b/mcstas-comps/examples/Tests_union/Unit_test_abs_logger_nD/README.md new file mode 100644 index 000000000..77a0ff843 --- /dev/null +++ b/mcstas-comps/examples/Tests_union/Unit_test_abs_logger_nD/README.md @@ -0,0 +1,34 @@ +# The `Unit_test_abs_logger_1D_space` Instrument + +*McStas: Test of the monitor_nD like absorption logger* + +## Identification + +- **Site:** Tests_union +- **Author:** Mads Bertelsen +- **Origin:** ESS +- **Date:** November 2025 + +## Description + +```text +Test of the monitor_nD like absorption logger that investigates the amount +of absorbed intensity as with a monitor_nD that use the previous keyword for +geometry, leaving the ray positions where they were. +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| + +## Links + +- [Source code](Unit_test_abs_logger_nD.instr) for `Unit_test_abs_logger_nD.instr`. +- [Additional information](Unit_test_abs_logger_nD.instr.md) + +--- + +*Generated for mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/examples/Tests_union/Unit_test_conditional_PSD/README.md b/mcstas-comps/examples/Tests_union/Unit_test_conditional_PSD/README.md new file mode 100644 index 000000000..2cf195dae --- /dev/null +++ b/mcstas-comps/examples/Tests_union/Unit_test_conditional_PSD/README.md @@ -0,0 +1,34 @@ +# The `Unit_test_conditional_PSD` Instrument + +*McStas: Test of conditional_PSD* + +## Identification + +- **Site:** Tests_union +- **Author:** Mads Bertelsen +- **Origin:** ESS +- **Date:** June 2020 + +## Description + +```text +Test of conditional_PSD component that attaches to a logger and reduces +its output to neutrons that reached the conditional_PSD area in specified +time interval. This is used to investigate origin of interesting signals. +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| + +## Links + +- [Source code](Unit_test_conditional_PSD.instr) for `Unit_test_conditional_PSD.instr`. +- [Additional information](Unit_test_conditional_PSD.instr.md) + +--- + +*Generated for mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/examples/Tests_union/Unit_test_conditional_standard/README.md b/mcstas-comps/examples/Tests_union/Unit_test_conditional_standard/README.md new file mode 100644 index 000000000..6cee85932 --- /dev/null +++ b/mcstas-comps/examples/Tests_union/Unit_test_conditional_standard/README.md @@ -0,0 +1,34 @@ +# The `Unit_test_conditional_standard` Instrument + +*McStas: Test of Union_conditional_standard* + +## Identification + +- **Site:** Tests_union +- **Author:** Mads Bertelsen +- **Origin:** ESS +- **Date:** June 2020 + +## Description + +```text +Union_conditional_standard can limit loggers to only record rays that end +their trace in Union_master within certain set limits. Here two loggers +are modified by a single conditional component that requires a final time. +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| + +## Links + +- [Source code](Unit_test_conditional_standard.instr) for `Unit_test_conditional_standard.instr`. +- [Additional information](Unit_test_conditional_standard.instr.md) + +--- + +*Generated for mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/examples/Tests_union/Unit_test_logger_1D/README.md b/mcstas-comps/examples/Tests_union/Unit_test_logger_1D/README.md new file mode 100644 index 000000000..a13e34125 --- /dev/null +++ b/mcstas-comps/examples/Tests_union/Unit_test_logger_1D/README.md @@ -0,0 +1,32 @@ +# The `Unit_test_logger_1D` Instrument + +*McStas: Test of Union 1D logger* + +## Identification + +- **Site:** Tests_union +- **Author:** Mads Bertelsen +- **Origin:** ESS +- **Date:** June 2020 + +## Description + +```text + +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| + +## Links + +- [Source code](Unit_test_logger_1D.instr) for `Unit_test_logger_1D.instr`. +- [Additional information](Unit_test_logger_1D.instr.md) + +--- + +*Generated for mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/examples/Tests_union/Unit_test_logger_2DQ/README.md b/mcstas-comps/examples/Tests_union/Unit_test_logger_2DQ/README.md new file mode 100644 index 000000000..9eb93410c --- /dev/null +++ b/mcstas-comps/examples/Tests_union/Unit_test_logger_2DQ/README.md @@ -0,0 +1,32 @@ +# The `Unit_test_logger_2DQ` Instrument + +*McStas: Test of the Union 2DQ logger that shows scattering vector projected onto 2D plane* + +## Identification + +- **Site:** Tests_union +- **Author:** Mads Bertelsen +- **Origin:** ESS +- **Date:** June 2020 + +## Description + +```text + +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| + +## Links + +- [Source code](Unit_test_logger_2DQ.instr) for `Unit_test_logger_2DQ.instr`. +- [Additional information](Unit_test_logger_2DQ.instr.md) + +--- + +*Generated for mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/examples/Tests_union/Unit_test_logger_2D_kf/README.md b/mcstas-comps/examples/Tests_union/Unit_test_logger_2D_kf/README.md new file mode 100644 index 000000000..695583f7d --- /dev/null +++ b/mcstas-comps/examples/Tests_union/Unit_test_logger_2D_kf/README.md @@ -0,0 +1,32 @@ +# The `Unit_test_logger_2D_kf` Instrument + +*McStas: Test of Union logger 2D kf that records the final wavevector* + +## Identification + +- **Site:** Tests_union +- **Author:** Mads Bertelsen +- **Origin:** ESS +- **Date:** June 2020 + +## Description + +```text + +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| + +## Links + +- [Source code](Unit_test_logger_2D_kf.instr) for `Unit_test_logger_2D_kf.instr`. +- [Additional information](Unit_test_logger_2D_kf.instr.md) + +--- + +*Generated for mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/examples/Tests_union/Unit_test_logger_2D_kf_time/README.md b/mcstas-comps/examples/Tests_union/Unit_test_logger_2D_kf_time/README.md new file mode 100644 index 000000000..f16bc22cb --- /dev/null +++ b/mcstas-comps/examples/Tests_union/Unit_test_logger_2D_kf_time/README.md @@ -0,0 +1,32 @@ +# The `Unit_test_logger_2D_kf_time` Instrument + +*McStas: Tests Logger_2D_kf_time that records final wavevector in several time steps* + +## Identification + +- **Site:** Tests_union +- **Author:** Mads Bertelsen +- **Origin:** ESS +- **Date:** June 2020 + +## Description + +```text + +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| + +## Links + +- [Source code](Unit_test_logger_2D_kf_time.instr) for `Unit_test_logger_2D_kf_time.instr`. +- [Additional information](Unit_test_logger_2D_kf_time.instr.md) + +--- + +*Generated for mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/examples/Tests_union/Unit_test_logger_2D_space/README.md b/mcstas-comps/examples/Tests_union/Unit_test_logger_2D_space/README.md new file mode 100644 index 000000000..cb848062d --- /dev/null +++ b/mcstas-comps/examples/Tests_union/Unit_test_logger_2D_space/README.md @@ -0,0 +1,34 @@ +# The `Unit_test_logger_2D_space` Instrument + +*McStas: Test of 2 dimensional spatial logger* + +## Identification + +- **Site:** Tests_union +- **Author:** Mads Bertelsen +- **Origin:** ESS +- **Date:** June 2020 + +## Description + +```text +Test of 2 dimensional spatial logger that shows scattered intensity +projected onto a plane spanned by two of the coordinate axis, for +example z and x. +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| + +## Links + +- [Source code](Unit_test_logger_2D_space.instr) for `Unit_test_logger_2D_space.instr`. +- [Additional information](Unit_test_logger_2D_space.instr.md) + +--- + +*Generated for mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/examples/Tests_union/Unit_test_logger_2D_space_time/README.md b/mcstas-comps/examples/Tests_union/Unit_test_logger_2D_space_time/README.md new file mode 100644 index 000000000..e81b71fb0 --- /dev/null +++ b/mcstas-comps/examples/Tests_union/Unit_test_logger_2D_space_time/README.md @@ -0,0 +1,32 @@ +# The `Unit_test_logger_2D_space_time` Instrument + +*McStas: Test of Union logger 2D space time that records spatial distribution of scattering in time steps* + +## Identification + +- **Site:** Tests_union +- **Author:** Mads Bertelsen +- **Origin:** ESS +- **Date:** June 2020 + +## Description + +```text + +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| + +## Links + +- [Source code](Unit_test_logger_2D_space_time.instr) for `Unit_test_logger_2D_space_time.instr`. +- [Additional information](Unit_test_logger_2D_space_time.instr.md) + +--- + +*Generated for mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/examples/Tests_union/Unit_test_logger_3D_space/README.md b/mcstas-comps/examples/Tests_union/Unit_test_logger_3D_space/README.md new file mode 100644 index 000000000..fee90743b --- /dev/null +++ b/mcstas-comps/examples/Tests_union/Unit_test_logger_3D_space/README.md @@ -0,0 +1,32 @@ +# The `Unit_test_logger_3D_space` Instrument + +*McStas: Test of the Union_logger_3D_space* + +## Identification + +- **Site:** Tests_union +- **Author:** Mads Bertelsen +- **Origin:** ESS +- **Date:** June 2020 + +## Description + +```text + +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| + +## Links + +- [Source code](Unit_test_logger_3D_space.instr) for `Unit_test_logger_3D_space.instr`. +- [Additional information](Unit_test_logger_3D_space.instr.md) + +--- + +*Generated for mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/examples/Tests_union/Unit_test_loggers_base/README.md b/mcstas-comps/examples/Tests_union/Unit_test_loggers_base/README.md new file mode 100644 index 000000000..a7c51abda --- /dev/null +++ b/mcstas-comps/examples/Tests_union/Unit_test_loggers_base/README.md @@ -0,0 +1,32 @@ +# The `Unit_test_loggers_base` Instrument + +*McStas: Base instrument for logger unit tests* + +## Identification + +- **Site:** Tests_union +- **Author:** Mads Bertelsen +- **Origin:** ESS +- **Date:** June 2020 + +## Description + +```text + +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| + +## Links + +- [Source code](Unit_test_loggers_base.instr) for `Unit_test_loggers_base.instr`. +- [Additional information](Unit_test_loggers_base.instr.md) + +--- + +*Generated for mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/examples/Tools/Histogrammer/README.md b/mcstas-comps/examples/Tools/Histogrammer/README.md new file mode 100644 index 000000000..e9b1af28c --- /dev/null +++ b/mcstas-comps/examples/Tools/Histogrammer/README.md @@ -0,0 +1,59 @@ +# The `Histogrammer` Instrument + +*McStas: Takes eventfile input (Virtual_input/Vitess/MCNP/Tripoli4/MCPL formats) and applies Monitor_nD to generate +histograms. Histograms can be chosen freely using the options string, see mcdoc Monitor_nD.comp* + +## Identification + +- **Site:** Tools +- **Author:** Peter Willendrup (peter.willendrup@risoe.dk) +- **Origin:** Risoe +- **Date:** 2007-03-19 + +## Description + +```text +Takes any possible McStas eventfile inputs (Virtual_input/Vitess/MCNP/Tripoli4 formats) and applies +Monitor_nD to generate user-selectable neutron histograms. + +The 'options' parameter allows to customize the type of histogram to generate. +We suggest: +"sphere theta phi outgoing previous" (this is the default) +"previous, multiple, auto, x, y, z, vx, vy, vz, hdiv, vdiv, tof, lambda" +"previous, auto, x, y" +"previous, auto, tof, lambda" + +Example: mcrun Histogrammer.instr MODE=0 +- Gives information on the input parameters + +Example: mcrun Histogrammer.instr filename="events.dat" MODE=1 options="sphere theta phi outgoing previous" +- Reads a Virtual_output generated event file and applies a spherical PSD +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| filename | string | Specifies input event file | 0 | +| MODE | int | Input file mode/format - 0 for help on usage 1=McStas,2=Vitess,3=MCNP,4=Tripoli4,5=MCPL | 0 | +| options | string | Specifies the histogramming rules used by Monitor_nD. | "sphere theta phi outgoing previous" | +| bufsize | int | Vitess_input 'buffersize' parameter - see mcdoc Vitess_input | 10000 | +| xwidth | m | Horizontal width of detector, or diameter for banana,cylinder and shpere geometry | 0.1 | +| yheight | m | Vertical height of detector, for plate, cylinder, banana shape | 0.1 | + +## Links + +- [Source code](Histogrammer.instr) for `Histogrammer.instr`. +- [Additional information](Histogrammer.instr.md) +- Virtual_input component (McStas event file) +- Vitess_input component (Vitess event file) +- Virtual_mcnp_input component (MCNP PTRAC event file) +- Virtual_tripoli4_input component (Tripoli4 BATCH event file) +- Monitor_nD component (detector/histogrammer) +- MCPL_input component (MCPL event file) + +--- + +*Generated for mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/examples/Tools/MCPL2Mantid_flat/README.md b/mcstas-comps/examples/Tools/MCPL2Mantid_flat/README.md new file mode 100644 index 000000000..498a0d209 --- /dev/null +++ b/mcstas-comps/examples/Tools/MCPL2Mantid_flat/README.md @@ -0,0 +1,59 @@ +# The `MCPL2Mantid_flat` Instrument + +*McStas: Instrument taking MCPL input giving Mantid-compatible NeXus output.* + +## Identification + +- **Site:** Tools +- **Author:** Peter Willendrup +- **Origin:** DTU +- **Date:** 2019-03 + +## Description + +```text +Instrument taking MCPL input giving Mantid-compatible NeXus output. + +1) The instrument coordintate system coincides with the MCPL-file coordinates. +2) The sourceMantid position is freely positionable in that space +3) The sampleMantid position is freely positionable in that space +4) The detector is a single, flat pixellated panel freely positionable in that space + +An example mcpl input file corresponding to the default geometry can be generated using +templateSANS_MCPL +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| MCPLfile | str | Defines the MCPL input file to process | "my.mcpl.gz" | +| sourceX | m | sourceMantid x-position wrt. MCPL coords | 0 | +| sourceY | m | sourceMantid y-position wrt. MCPL coords | 0 | +| sourceZ | m | sourceMantid z-position wrt. MCPL coords | -10 | +| sampleX | m | sampleMantid x-position wrt. MCPL coords | 0 | +| sampleY | m | sampleMantid y-position wrt. MCPL coords | 0 | +| sampleZ | m | sampleMantid z-position wrt. MCPL coords | 0 | +| detectorX | m | nD_Mantid_0 x-position wrt. MCPL coords | 0 | +| detectorY | m | nD_Mantid_0 y-position wrt. MCPL coords | 0 | +| detectorZ | m | nD_Mantid_0 z-position wrt. MCPL coords | 6 | +| detrotX | m | nD_Mantid_0 x-rotation wrt. MCPL coords | 0 | +| detrotY | m | nD_Mantid_0 y-rotation wrt. MCPL coords | 0 | +| detrotZ | m | nD_Mantid_0 z-rotation wrt. MCPL coords | 0 | +| xwidth | m | nD_Mantid_0 xwidth | 0.6 | +| yheight | m | nD_Mantid_0 yheight | 0.6 | +| xbins | 1 | nD_Mantid_0 x-bins | 128 | +| ybins | 1 | nD_Mantid_0 y-bins | 128 | + +## Links + +- [Source code](MCPL2Mantid_flat.instr) for `MCPL2Mantid_flat.instr`. +- [Additional information](MCPL2Mantid_flat.instr.md) +- +- MCPL website at https://mctools.github.io/mcpl/ + +--- + +*Generated for mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/examples/Tools/MCPL2hist/README.md b/mcstas-comps/examples/Tools/MCPL2hist/README.md new file mode 100644 index 000000000..bc037c2d0 --- /dev/null +++ b/mcstas-comps/examples/Tools/MCPL2hist/README.md @@ -0,0 +1,45 @@ +# The `MCPL2hist` Instrument + +*McStas: Flexible histogramming instrument file for processing MCPL input files using Monitor_nD* + +## Identification + +- **Site:** Tools +- **Author:** Peter Willendrup +- **Origin:** DTU +- **Date:** 2017-04 + +## Description + +```text +Flexible histogramming instrument file for processing MCPL input files using Monitor_nD. + +Example1: Multiple 1D histograms of position, velocity, divergence, time and wavelength, use +NDoptions=1 defines options="previous, multiple, auto, x, y, z, vx, vy, vz, hdiv, vdiv, tof, lambda" + +Example2: 2D x-y plot of beam cross section: +NDoptions=2 defines options="previous, auto, x, y" + +Example3: 2D TOF-lambda plot of beam: +NDoptions=3 defines options="previous, auto, tof, lambda" +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| MCPLfile | str | Defines the MCPL input file to process | "my.mcpl.gz" | +| NDoptions | int | Defines what Monitor_nD measures, see example list | 1 | + +## Links + +- [Source code](MCPL2hist.instr) for `MCPL2hist.instr`. +- [Additional information](MCPL2hist.instr.md) +- +- MCPL website at https://mctools.github.io/mcpl/ + +--- + +*Generated for mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/examples/Tools/MCPL_filter_energy/README.md b/mcstas-comps/examples/Tools/MCPL_filter_energy/README.md new file mode 100644 index 000000000..6fd79a7e3 --- /dev/null +++ b/mcstas-comps/examples/Tools/MCPL_filter_energy/README.md @@ -0,0 +1,40 @@ +# The `MCPL_filter_energy` Instrument + +*McStas: Filtering-by-energy instrument file for processing MCPL input files* + +## Identification + +- **Site:** Tools +- **Author:** Peter Willendrup +- **Origin:** DTU +- **Date:** 2019-03 + +## Description + +```text +Example: Split an MCPL file at an energy of 0.5 meV +mcrun MCPL_filter_energy MCPLfile=my.mcpl.gz energy=0.5 +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| MCPLfile | str | Defines the MCPL input file to process | "my.mcpl.gz" | +| energy | meV | Defines a threshold energy to split the MCPLfile at | 40 | +| max | meV | Maximum energy in Monitor_nD plots | 100 | +| min | meV | Minimum energy in Monitor_nD plots | 0 | +| bins | 1 | Number of bins in Monitor_nD plots | 100 | + +## Links + +- [Source code](MCPL_filter_energy.instr) for `MCPL_filter_energy.instr`. +- [Additional information](MCPL_filter_energy.instr.md) +- +- MCPL website at https://mctools.github.io/mcpl/ + +--- + +*Generated for mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/examples/Tools/MCPL_filter_radius/README.md b/mcstas-comps/examples/Tools/MCPL_filter_radius/README.md new file mode 100644 index 000000000..14a6b2b6d --- /dev/null +++ b/mcstas-comps/examples/Tools/MCPL_filter_radius/README.md @@ -0,0 +1,37 @@ +# The `MCPL_filter_radius` Instrument + +*McStas: Filtering-by-radius instrument file for processing MCPL input files* + +## Identification + +- **Site:** Tools +- **Author:** Peter Willendrup +- **Origin:** DTU +- **Date:** 2019-03 + +## Description + +```text +Example: Split an MCPL file at a radius of 2.5 m from the origin +mcrun MCPL_filter_radius MCPLfile=my.mcpl.gz radius=2.5 +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| MCPLfile | str | Defines the MCPL input file to process | "my.mcpl.gz" | +| radius | m | Defines a threshold distance to split the MCPLfile at | 2.5 | + +## Links + +- [Source code](MCPL_filter_radius.instr) for `MCPL_filter_radius.instr`. +- [Additional information](MCPL_filter_radius.instr.md) +- +- MCPL website at https://mctools.github.io/mcpl/ + +--- + +*Generated for mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/examples/Tools/MCPL_filter_wavelength/README.md b/mcstas-comps/examples/Tools/MCPL_filter_wavelength/README.md new file mode 100644 index 000000000..8b45e3178 --- /dev/null +++ b/mcstas-comps/examples/Tools/MCPL_filter_wavelength/README.md @@ -0,0 +1,40 @@ +# The `MCPL_filter_wavelength` Instrument + +*McStas: Filtering-by-wavelength instrument file for processing MCPL input files* + +## Identification + +- **Site:** Tools +- **Author:** Peter Willendrup +- **Origin:** DTU +- **Date:** 2019-03 + +## Description + +```text +Example: Split an MCPL file at a wavelength of 0.5 AA +mcrun MCPL_filter_wavelength MCPLfile=my.mcpl.gz wavelength=0.5 +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| MCPLfile | str | Defines the MCPL input file to process | "my.mcpl.gz" | +| wavelength | AA | Defines a threshold wavelength to split the MCPLfile at | 0.5 | +| max | AA | Maximum wavelength in Monitor_nD plots | 20 | +| min | AA | Minimum wavelength in Monitor_nD plots | 0 | +| bins | 1 | Number of bins in Monitor_nD plots | 100 | + +## Links + +- [Source code](MCPL_filter_wavelength.instr) for `MCPL_filter_wavelength.instr`. +- [Additional information](MCPL_filter_wavelength.instr.md) +- +- MCPL website at https://mctools.github.io/mcpl/ + +--- + +*Generated for mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/examples/Tools/vinput2mcpl/README.md b/mcstas-comps/examples/Tools/vinput2mcpl/README.md new file mode 100644 index 000000000..cb5b28c5c --- /dev/null +++ b/mcstas-comps/examples/Tools/vinput2mcpl/README.md @@ -0,0 +1,37 @@ +# The `vinput2mcpl` Instrument + +*McStas: Instrument for conversion of Virtual input files to MCPL.* + +## Identification + +- **Site:** Tools +- **Author:** Peter Willendrup +- **Origin:** DTU +- **Date:** Jan 7th 2023 + +## Description + +```text +Instrument for conversion of Virtual input files to MCPL. + +Example: vinput2mcpl inputfile=C8_L214.dat outputfile=C8_L214.mcpl,gz +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| inputfile | | | "input" | +| outputfile | | | "output" | + +## Links + +- [Source code](vinput2mcpl.instr) for `vinput2mcpl.instr`. +- [Additional information](vinput2mcpl.instr.md) +- + +--- + +*Generated for mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/examples/Union_demos/Bispectral/README.md b/mcstas-comps/examples/Union_demos/Bispectral/README.md new file mode 100644 index 000000000..e410a8bfb --- /dev/null +++ b/mcstas-comps/examples/Union_demos/Bispectral/README.md @@ -0,0 +1,38 @@ +# The `Bispectral` Instrument + +*McStas: Example of bispectral extraction on ESS Butterfly moderator using Union components* + +## Identification + +- **Site:** ESS +- **Author:** Mads Bertelsen (mads.bertelsen@ess.eu) +- **Origin:** ESS +- **Date:** October 2025 + +## Description + +```text +Bispectral switch conisting of Si blades with supermirror coating and Cu walls, +with different coatings. Materials are simulated using NCrystal. + +Example: mcrun Bispectral.instr l_min=0.5 l_max=6.0 +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| l_min | AA | Shortest simulated wavelength | 0.5 | +| l_max | AA | Longest simulated wavelength | 6.0 | + +## Links + +- [Source code](Bispectral.instr) for `Bispectral.instr`. +- [Additional information](Bispectral.instr.md) +- A reference/HTML link for more information + +--- + +*Generated for mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/examples/Union_demos/Demonstration/README.md b/mcstas-comps/examples/Union_demos/Demonstration/README.md new file mode 100644 index 000000000..291fa3cc4 --- /dev/null +++ b/mcstas-comps/examples/Union_demos/Demonstration/README.md @@ -0,0 +1,40 @@ +# The `Demonstration` Instrument + +*McStas: General demonstration of Union* + +## Identification + +- **Site:** Union_demos +- **Author:** Mads Bertelsen +- **Origin:** University of Copenhagen +- **Date:** September 2015 + +## Description + +```text +Demonstration of Union components. Here four different powder samples are +placed in a can each connected to a weird sample holder and contained in +a cryostat. This unrealistic example is meant to show the syntax and the +new possibilities when using the Union components. +With the standard source only two of the samples are illuminated, yet +multiple scattering occur and events are thus taking place in the last +two samples. +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| stick_displacement | m | height displacement of sample stick | 0 | +| transmission_picture | 1 | if 1, a transmission image of the entire cryostat is made instead of a scattering experiment | 0 | + +## Links + +- [Source code](Demonstration.instr) for `Demonstration.instr`. +- [Additional information](Demonstration.instr.md) + +--- + +*Generated for mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/examples/Union_demos/External_component/README.md b/mcstas-comps/examples/Union_demos/External_component/README.md new file mode 100644 index 000000000..eee89bb3b --- /dev/null +++ b/mcstas-comps/examples/Union_demos/External_component/README.md @@ -0,0 +1,36 @@ +# The `External_component` Instrument + +*McStas: Union example: External_component* + +## Identification + +- **Site:** Union_demos +- **Author:** Mads Bertelsen +- **Origin:** University of Copenhagen +- **Date:** September 2015 + +## Description + +```text +Example showing the use of the "number_of_activations" parameter to include +an external component into an ensamle of Union components + +Example: stick_displacement=0 Detector: detector_I=189.144 +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| stick_displacement | m | height displacement of sample stick | 0 | + +## Links + +- [Source code](External_component.instr) for `External_component.instr`. +- [Additional information](External_component.instr.md) + +--- + +*Generated for mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/examples/Union_demos/Laue_camera/README.md b/mcstas-comps/examples/Union_demos/Laue_camera/README.md new file mode 100644 index 000000000..6cc795a7a --- /dev/null +++ b/mcstas-comps/examples/Union_demos/Laue_camera/README.md @@ -0,0 +1,46 @@ +# The `Laue_camera` Instrument + +*McStas: Union example: Laue camera* + +## Identification + +- **Site:** Union_demos +- **Author:** Mads Bertelsen +- **Origin:** University of Copenhagen +- **Date:** September 2015 + +## Description + +```text +Laue camera using Union components for the sample +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| delta_d_d | | Lattice spacing variation in sample | 1e-4 | +| mosaic | arcmin | Sample mosaicity | 5 | +| lam0 | AA | Source mean wavelength | 7 | +| dlam | AA | Source wavelength spread | 5 | +| radius | m | Sample radius | 0.01 | +| height | m | Sample height | 0.01 | +| x_rotation_geometry | deg | Rotates union geometry component around x | 0 | +| y_rotation_geometry | deg | Rotates union geometry component around y | 0 | +| x_rotation_geometry_ref | deg | Rotates reference component around x | 0 | +| y_rotation_geometry_ref | deg | Rotates reference component around y | 0 | +| x_rotation_process | deg | Rotates crystal process (crystal orientation), x | 0 | +| y_rotation_process | deg | Rotates crystal process (crystal orientation), y | 0 | +| z_rotation_process | deg | Rotates crystal process (crystal orientation), z | 0 | +| geometry_interact | | p_interact of Union sample | 0 | + +## Links + +- [Source code](Laue_camera.instr) for `Laue_camera.instr`. +- [Additional information](Laue_camera.instr.md) + +--- + +*Generated for mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/examples/Union_demos/Manual_example/README.md b/mcstas-comps/examples/Union_demos/Manual_example/README.md new file mode 100644 index 000000000..b36bf76c1 --- /dev/null +++ b/mcstas-comps/examples/Union_demos/Manual_example/README.md @@ -0,0 +1,34 @@ +# The `Manual_example` Instrument + +*McStas: Union example from Union project manual* + +## Identification + +- **Site:** Union_demos +- **Author:** Mads Bertelsen +- **Origin:** University of Copenhagen +- **Date:** September 2015 + +## Description + +```text +Example on using Union components from the Union project manual + +Example: Detector: Banana_monitor_I=3.823e-05 +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| + +## Links + +- [Source code](Manual_example.instr) for `Manual_example.instr`. +- [Additional information](Manual_example.instr.md) + +--- + +*Generated for mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/examples/Union_demos/Sample_picture_replica/README.md b/mcstas-comps/examples/Union_demos/Sample_picture_replica/README.md new file mode 100644 index 000000000..9660ce110 --- /dev/null +++ b/mcstas-comps/examples/Union_demos/Sample_picture_replica/README.md @@ -0,0 +1,34 @@ +# The `Sample_picture_replica` Instrument + +*McStas: Union demo: Reconstruction of a sample holder from picture.* + +## Identification + +- **Site:** Union_demos +- **Author:** Mads Bertelsen +- **Origin:** University of Copenhagen +- **Date:** September 2015 + +## Description + +```text +Reconstruction of a sample holder from picture. +All arms are 30 cm below the actual center point in order to avoid arms +in the mcdisplay picture. +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| + +## Links + +- [Source code](Sample_picture_replica.instr) for `Sample_picture_replica.instr`. +- [Additional information](Sample_picture_replica.instr.md) + +--- + +*Generated for mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/examples/Union_demos/Tagging_demo/README.md b/mcstas-comps/examples/Union_demos/Tagging_demo/README.md new file mode 100644 index 000000000..4e1e8b187 --- /dev/null +++ b/mcstas-comps/examples/Union_demos/Tagging_demo/README.md @@ -0,0 +1,45 @@ +# The `Tagging_demo` Instrument + +*McStas: Union demo: How to use tagging* + +## Identification + +- **Site:** Union_demos +- **Author:** Mads Bertelsen +- **Origin:** Johns Hopkins University, Baltimore +- **Date:** May 2016 + +## Description + +```text +Powder in Al can + +Example: Detector: Banana_monitor_I=9.84391e-09 +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| material_data_file | string | Name of data file for powder sample | "Cu.laz" | +| E0 | meV | Source mean energy | 100 | +| dE | meV | Source energy spread | 2 | +| sample_radius | m | Sample radius | 0.01 | +| sample_height | m | Sample height | 0.01 | +| pack | 1 | Packing factor, 1 is full density | 1 | +| sigma_inc | barns | Incoherent cross section for powder sample | 2.2 | +| sigma_abs | barns | Absorption cross section for powder sample | 15.12 | +| Vc | AA | Unit cell volume for powder sample | 47.22 | +| geometry_interact | 1 | Fraction of beam to interact with geometry | 0.5 | +| incoherent_fraction | 1 | Fraction of scattered events that select the powder process | 0.2 | + +## Links + +- [Source code](Tagging_demo.instr) for `Tagging_demo.instr`. +- [Additional information](Tagging_demo.instr.md) + +--- + +*Generated for mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/examples/Union_demos/Time_of_flight/README.md b/mcstas-comps/examples/Union_demos/Time_of_flight/README.md new file mode 100644 index 000000000..bcbc99c34 --- /dev/null +++ b/mcstas-comps/examples/Union_demos/Time_of_flight/README.md @@ -0,0 +1,35 @@ +# The `Time_of_flight` Instrument + +*McStas: Simple test instrument for sample component.* + +## Identification + +- **Site:** Union_demos +- **Author:** Mads Bertelsen +- **Origin:** University of Copenhagen +- **Date:** September 2015 + +## Description + +```text +simple test instrument for sample component. + +Example: stick_displacement=0 Detector: banana_detector_tof_I=566.295 +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| stick_displacement | m | Displacement of sample stick | 0 | + +## Links + +- [Source code](Time_of_flight.instr) for `Time_of_flight.instr`. +- [Additional information](Time_of_flight.instr.md) + +--- + +*Generated for mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/examples/Union_sample_environments/SE_usage_example/README.md b/mcstas-comps/examples/Union_sample_environments/SE_usage_example/README.md new file mode 100644 index 000000000..708c21730 --- /dev/null +++ b/mcstas-comps/examples/Union_sample_environments/SE_usage_example/README.md @@ -0,0 +1,35 @@ +# The `SE_usage_example` Instrument + +*McStas: Sample in cryostat included from other instrument file* + +## Identification + +- **Site:** Union_sample_environments +- **Author:** Mads Bertelsen +- **Origin:** ESS DMSC +- **Date:** July 2024 + +## Description + +```text +This instrument demonstrates how to include a sample environment +from another instrument file and add a sample to the Union system. +See the cryostat_example.instr file for details on the used sample +environment. +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| + +## Links + +- [Source code](SE_usage_example.instr) for `SE_usage_example.instr`. +- [Additional information](SE_usage_example.instr.md) + +--- + +*Generated for mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/examples/Union_sample_environments/cryostat_example/README.md b/mcstas-comps/examples/Union_sample_environments/cryostat_example/README.md new file mode 100644 index 000000000..0f9cffdcc --- /dev/null +++ b/mcstas-comps/examples/Union_sample_environments/cryostat_example/README.md @@ -0,0 +1,41 @@ +# The `Cryostat_example` Instrument + +*McStas: Cryostat model made with Union components that can be included in other instruments* + +## Identification + +- **Site:** Union_sample_environments +- **Author:** Mads Bertelsen +- **Origin:** ESS DMSC +- **Date:** July 2024 + +## Description + +```text +Model of a cryostat made using Union components that can be included in another +instrument or executed on its own. Several components are marked with the +removable keyword, meaning these are not included when this instrument is included +in another McStas instrument. This includes the source, but also the Union components +init, master and stop, which the instrument including this sample environment will need +to supply. This is done such that a sample can easily be added. +Only a simple model of Al is used for this cryostat, and it has been named Al_cryostat +to avoid conflicting with existing models of Al in the instrument file that includes this +sample environment. +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| stick_displacement | m | height displacement of sample stick | 0 | + +## Links + +- [Source code](cryostat_example.instr) for `cryostat_example.instr`. +- [Additional information](cryostat_example.instr.md) + +--- + +*Generated for mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/examples/Union_validation/Incoherent_validation/README.md b/mcstas-comps/examples/Union_validation/Incoherent_validation/README.md new file mode 100644 index 000000000..7f1e08dcc --- /dev/null +++ b/mcstas-comps/examples/Union_validation/Incoherent_validation/README.md @@ -0,0 +1,40 @@ +# The `Incoherent_validation` Instrument + +*McStas: Validation of Union components against incoherent scattering component* + +## Identification + +- **Site:** Union_validation +- **Author:** Mads Bertelsen +- **Origin:** Johns Hopkins University, Baltimore +- **Date:** May 2016 + +## Description + +```text +Validation of Union components against incoherent scattering component +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| comp_select | | 1: Union components, 2: Incoherent | 1 | +| sample_radius | m | Radius of sample | 0.01 | +| sample_height | m | Height of sample | 0.01 | +| pack | | Packing factor | 1 | +| sigma_inc_vanadium | barns | Incoherent cross-section | 5.08 | +| sigma_abs_vanadium | barns | Absorption cross-section | 5.08 | +| Vc_vanadium | AA^3 | Unit cell volume | 13.827 | +| geometry_interact | | p_interact for the Union sample | 0.5 | + +## Links + +- [Source code](Incoherent_validation.instr) for `Incoherent_validation.instr`. +- [Additional information](Incoherent_validation.instr.md) + +--- + +*Generated for mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/examples/Union_validation/Mirror_validation/README.md b/mcstas-comps/examples/Union_validation/Mirror_validation/README.md new file mode 100644 index 000000000..fb221fda9 --- /dev/null +++ b/mcstas-comps/examples/Union_validation/Mirror_validation/README.md @@ -0,0 +1,50 @@ +# The `Mirror_validation` Instrument + +*McStas: Comparison of Mirror component and Union version* + +## Identification + +- **Site:** ESS +- **Author:** Mads Bertelsen (mads.bertelsen@ess.eu) +- **Origin:** ESS +- **Date:** October 2025 + +## Description + +```text +Comparison of Mirror component and a similar system made with Union components +though with a key difference that a substrate is simulated which results in two +effects: At large angles where no reflection occur, there will be some intensity +from the scattering in the substrate. At very small angles, the reflectivity can +exceed the R0 of the mirror coating, as the ray can be reflected by the Ni +substrate. NCrystal is used to simulate the Ni substrate. +The instrument includes a detector that ignores scattered rays, which should +produce identical results for large angles, though there can still be a tiny +discrepancy at small angles especially if R0 of the mirror coating is lowered. + +Example: mcrun Mirror_validation.instr angle=0.7 +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| angle | deg | Rotation of sample | 0.4 | +| ref_component | 1 | 0 to use Union components, 1 for reference Mirror component | 0 | +| R0_value | 1 | Low-angle reflectivity | 0.99 | +| m_value | 1 | m-value of material | 3 | +| Qc_value | AA-1 | Critical scattering vector | 0.0219 | +| alpha_value | AA | Slope of reflectivity | 6.07 | +| W_value | AA-1 | Width of supermirror cut-off | 0.003 | + +## Links + +- [Source code](Mirror_validation.instr) for `Mirror_validation.instr`. +- [Additional information](Mirror_validation.instr.md) +- A reference/HTML link for more information + +--- + +*Generated for mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/examples/Union_validation/Powder_validation/README.md b/mcstas-comps/examples/Union_validation/Powder_validation/README.md new file mode 100644 index 000000000..fb2c4a962 --- /dev/null +++ b/mcstas-comps/examples/Union_validation/Powder_validation/README.md @@ -0,0 +1,46 @@ +# The `Powder_validation` Instrument + +*McStas: Validation of Union powder against standard PowderN component.* + +## Identification + +- **Site:** Union_validation +- **Author:** Mads Bertelsen +- **Origin:** Johns Hopkins University, Baltimore +- **Date:** May 2016 + +## Description + +```text +Validation of Union powder against standard PowderN component. +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| comp_select | 1 | 1=Union components, 2=PowderN | 1 | +| material_data_file | string | Powder sample definition | "Al.laz" | +| E0 | meV | Source mean energy | 100 | +| dE | meV | Source energy spread | 2 | +| sample_radius | m | Sample radius | 0.01 | +| sample_height | m | Sample height | 0.01 | +| pack | | Sample packing factor | 1 | +| sigma_inc | barns | Sample incoherent cross-section | 0.0328 | +| sigma_abs | barns | Sample absorption cross-section | 0.924 | +| Vc | AA | Sample unit cell volume | 66.4 | +| geometry_interact | | p_interact for the sample | 0.5 | +| incoherent_fraction | | Fraction of statistics assigned for incoherent scattering | 0.2 | +| div | deg | Source divergence (angular w and h) | 1.5 | +| d_phi | deg | Restriction of Debye-Scherrer cones around scattering plane 0=full illumination | 30 | + +## Links + +- [Source code](Powder_validation.instr) for `Powder_validation.instr`. +- [Additional information](Powder_validation.instr.md) + +--- + +*Generated for mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/examples/Union_validation/Single_crystal_validation/README.md b/mcstas-comps/examples/Union_validation/Single_crystal_validation/README.md new file mode 100644 index 000000000..bcba06deb --- /dev/null +++ b/mcstas-comps/examples/Union_validation/Single_crystal_validation/README.md @@ -0,0 +1,54 @@ +# The `Single_crystal_validation` Instrument + +*McStas: Validation of Union single crystal against standard single_crystal.* + +## Identification + +- **Site:** Union_validation +- **Author:** Mads Bertelsen +- **Origin:** Johns Hopkins University, Baltimore +- **Date:** May 2016 + +## Description + +```text +Validation of Union single crystal against standard single_crystal. +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| comp_select | 1 | 1: Union components, 2: Single crystal | 1 | +| material_data_file | string | Sample material defintion | "YBaCuO.lau" | +| sigma_inc | barns | Sample incoherent cross-section | 2.105 | +| my_absorption_union | m^-1 | Sample mass-absorption coefficient | 8.55 | +| sigma_abs_sc | banrs | Sample absorption cross-section | 0 | +| delta_d_d | | Sample latttice spacing variation | 1e-4 | +| mosaic | arcmin | Sample mosaicity | 5 | +| unit_cell_volume | AA | Sample unit cell volume | 173.28 | +| lam0 | AA | Source mean wavelength | 7 | +| dlam | AA | Source wavelength spread | 5 | +| xwidth | m | Sample x-dimension | 0.01 | +| yheight | m | Sample y-dimension | 0.01 | +| zdepth | m | Sample z-dimension | 0.01 | +| x_rotation_geometry | deg | Rotates union geometry component around x | 0 | +| y_rotation_geometry | deg | Rotates union geometry component around y | 0 | +| x_rotation_geometry_ref | deg | Rotates reference component around x | 0 | +| y_rotation_geometry_ref | deg | Rotates reference component around y | 0 | +| x_rotation_process | deg | Rotates crystal process (crystal orientation), x | 0 | +| y_rotation_process | deg | Rotates crystal process (crystal orientation), y | 0 | +| geometry_interact | deg | Rotates crystal process (crystal orientation), z | 0 | +| PG | | Sample PG-mode | 0 | +| powder | | Sample powder-mode | 0 | + +## Links + +- [Source code](Single_crystal_validation.instr) for `Single_crystal_validation.instr`. +- [Additional information](Single_crystal_validation.instr.md) + +--- + +*Generated for mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/examples/elearning/Radiography_absorbing_edge/README.md b/mcstas-comps/examples/elearning/Radiography_absorbing_edge/README.md new file mode 100644 index 000000000..c7d5e5afb --- /dev/null +++ b/mcstas-comps/examples/elearning/Radiography_absorbing_edge/README.md @@ -0,0 +1,43 @@ +# The `Radiography_absorbing_edge` Instrument + +*McStas: Instrument to study radiographic imaging of an absobing edge sample used for "Spacial resolution in neutron imaging" Moodle quiz in the Virtual Neutrons for Teaching project +http://vnt.nmi3.org/moodle/mod/quiz/view.php?id=56* + +## Identification + +- **Site:** elearning +- **Author:** Linda Udby and Peter Willendrup +- **Origin:** University of Copenhagen +- **Date:** July 4th, 2014 + +## Description + +```text +Instrument to study radiographic imaging of an absobing edge sample used for "Spacial resolution in neutron imaging" Moodle quiz in the Virtual Neutrons for Teaching project +http://vnt.nmi3.org/moodle/mod/quiz/view.php?id=56 + +Example: mcrun Radiography_absorbing_edge.instr -n5e8 l=0.2 -d EdgeImaging +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| D | m | Diameter of pinhole before sample | 0.01 | +| L | m | Distance between pinhole and sample | 5 | +| l | m | Distance between sample and detector | 0.10 | +| sigma_abs | barns | Absorption cross-section of the sample | 5.08 | +| Vc | AA^3 | Unit cell volume in the sample | 13.827 | +| sample_z | | | 0.01 | + +## Links + +- [Source code](Radiography_absorbing_edge.instr) for `Radiography_absorbing_edge.instr`. +- [Additional information](Radiography_absorbing_edge.instr.md) +- http://vnt.nmi3.org/mcstas-web + +--- + +*Generated for mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/examples/elearning/Reflectometer/README.md b/mcstas-comps/examples/elearning/Reflectometer/README.md new file mode 100644 index 000000000..92f093c6a --- /dev/null +++ b/mcstas-comps/examples/elearning/Reflectometer/README.md @@ -0,0 +1,56 @@ +# The `Reflectometer` Instrument + +*McStas: Simple reflectometer with two slits, a sample (either none, mirror or multilayer), +and a detector. For use in the OMIC summer school 2012.* + +## Identification + +- **Site:** elearning +- **Author:** Pia Jensen (bozack@bozack.dk) +- **Origin:** Niels Bohr Instute, University of Copenhagen +- **Date:** 13.08.2012 + +## Description + +```text +This simple reflectometer consists of a source (using the standard PSI parameters +for three Maxwellian distributions), on which the user can control the bandwidth +by simply choosing a minumum and maximum value. Two slits handle the divergence +distribution on the sample. The sample itself can either be an empty spot, a simple +mirror, or a multilayer. A simple PSD detector is used for detecting the scattered +beam. The scattering is in the horizontal plane. + +Example: mcrun reflectometer.instr +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| lambda_min | AA | Minimum wavelength from source | 5.3 | +| lambda_max | AA | Maximum wavelength from source | 5.45 | +| slittranslation | m | Translation of slit (horizontal) | 0 | +| sampletranslation | m | Sample translation (horizontal) | 0 | +| slitwidth | m | Width of slit pinholes | 0.001 | +| slitheight | m | Height of slit pinholes | 0.002 | +| dist_source2slit | m | Distance between source and first slit | 1 | +| dist_slit2slit | m | Distance between slits | 3.2 | +| dist_slit2sample | m | Distance between second slit and sample | 0.18 | +| dist_sample2detector | m | Distance between sample and detector | 2 | +| sampletype | 1 | Sample type: 0 none, 1 mirror, 2+ multilayer | 1 | +| samplesize | m | Side-length of the (quadratic) sample plate | 0.15 | +| substratethickness | m | Thickness of the substrate | 0.003 | +| MR_Qc | AA | Critical Q-vector length of mirror sample | 0.15 | +| sampleangle | deg | Rotation angle of sample (theta) | 2.5 | +| detectorangle | deg | Rotation angle of detector (2 theta) | 5 | + +## Links + +- [Source code](Reflectometer.instr) for `Reflectometer.instr`. +- [Additional information](Reflectometer.instr.md) + +--- + +*Generated for mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/examples/elearning/SANSsimple/README.md b/mcstas-comps/examples/elearning/SANSsimple/README.md new file mode 100644 index 000000000..535b0a72d --- /dev/null +++ b/mcstas-comps/examples/elearning/SANSsimple/README.md @@ -0,0 +1,49 @@ +# The `SANS2_liposomes` Instrument + +*McStas: SANSsimple from e-neutrons.org* + +## Identification + +- **Site:** elearning +- **Author:** Linda +- **Origin:** Copenhagen +- **Date:** 05.09.10 + +## Description + +```text +Instrument longer description (type, elements, usage...) + +Example: mcrun SANSsimple.instr +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| pinhole_rad | m | radius of the collimating pinholes | 0.004 | +| LC | m | length of the collimator - distance between pinholes | 3 | +| LD | m | distance between the last pinhole slit and detector | 3 | +| Lambda | AA | Average wavelength traced from source | 6 | +| DLambda | AA | Wavelength band +/- traced from source | 0.6 | +| R | AA | radius of the hard, monodisperse spheres in the sample | 400 | +| dR | AA | Normal variance of Radius | 0 | +| dbilayer | AA | Thickness of spherical shell, only relevant when SAMPLE==2 | 35 | +| PHI | 1 | Volumefraction of the hard, monodisperse spheres in the sample | 1e-2 | +| Delta_Rho | fm/AA^3 | Volume specific scattering length density contrast of the hard, monodisperse spheres in the sample as compared to the solution | 0.6 | +| Qmax | AA^-1 | Maximum scattering vector allowed by geometry to hit the detector area | 0.3 | +| BEAMSTOP | 0/1 | If set, the beamstop is inserted in front of the detector in order to block the transmitted beam | 1 | +| SAMPLE | 0/1/2 | When SAMPLE==0, no sample is used, SAMPLE==1 sample is composed of hard spheres, if SAMPLE==2 sample is composed ofspherical shells. | 1 | +| Sigma_a | barn | Absorption crossection of the sample | 0 | + +## Links + +- [Source code](SANSsimple.instr) for `SANSsimple.instr`. +- [Additional information](SANSsimple.instr.md) +- A reference/HTML link for more information + +--- + +*Generated for mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/examples/elearning/SANSsimpleSpheres/README.md b/mcstas-comps/examples/elearning/SANSsimpleSpheres/README.md new file mode 100644 index 000000000..4987dc5df --- /dev/null +++ b/mcstas-comps/examples/elearning/SANSsimpleSpheres/README.md @@ -0,0 +1,47 @@ +# The `SANSsimpleSpheres` Instrument + +*McStas: SANS_simple from e-neutrons.org, including polydisperse hard spheres.* + +## Identification + +- **Site:** elearning +- **Author:** Linda Udby (udby@nbi.dk) +- **Origin:** Niels Bohr Institute +- **Date:** 20.09.2016 + +## Description + +```text +Instrument longer description (type, elements, usage...) +This simple SANS instrument is used for the SANS simulation quiz on th e-learning platform www.e-neutrons.org + +Example: mcrun SANSsimple.instr Lambda=10 DLambda=0 +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| pinhole_rad | m | radius of the collimating pinholes. Also used to optimise the sample size. | 0.004 | +| LC | m | length of the collimator - distance between pinholes | 3 | +| LD | m | distance between the last pinhole slit and detector | 3 | +| Lambda | Angs | Average wavelength traced from source | 6 | +| DLambda | Angs | Wavelength band +/- traced from source | 0.001 | +| R | m | average radius of the monodisperse spheres in the sample | 400 | +| dR | AA | Normal variance of the radius of spheres in the sample. If zero the sample is monodisperse. | 0 | +| PHI | 1 | Volumefraction of the hard spheres in the sample | 1e-2 | +| Delta_Rho | fm/Angs^3 | Volume specific scattering length density contrast of the hard, monodisperse spheres in the sample as compared to the solution | 0.6 | +| BEAMSTOP | 0/1 | If set, the beamstop is inserted in front of the detector in order to block the transmitted beam | 1 | +| SAMPLE | 0/1 | If set, a sample of spheres or spherical shells is inserted | 1 | + +## Links + +- [Source code](SANSsimpleSpheres.instr) for `SANSsimpleSpheres.instr`. +- [Additional information](SANSsimpleSpheres.instr.md) +- https://sim.e-neutrons.org/instrument/intro-ns/SANSsimple + +--- + +*Generated for mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/examples/elearning/SimplePowderDiffractometer/README.md b/mcstas-comps/examples/elearning/SimplePowderDiffractometer/README.md new file mode 100644 index 000000000..f559a1799 --- /dev/null +++ b/mcstas-comps/examples/elearning/SimplePowderDiffractometer/README.md @@ -0,0 +1,42 @@ +# The `SimplePowderDIffractometer` Instrument + +*McStas: SimplePowderDIffractometer from e-neutrons.org: A simple monochromatic powder diffractometer with variable bandwidth, aluminium sample container with powder sample (default nickel powder).* + +## Identification + +- **Site:** elearning +- **Author:** Linda Udby +- **Origin:** Your institution +- **Date:** 26/02/2015 + +## Description + +```text +A simple monochromatic powder diffractometer with variable bandwidth, collimation, aluminium sample container and powder sample. +The sample container (Al can) is optional. +A banana detector records scattering agles [20,100] + +Example: mcrun SimplePowderDIffractometer.instr coll=40, container=1 +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| lambda0 | AA | The mean value of incoming wavelegths (Gaussian distribution) | 1 | +| dlambda | AA | Gaussian sigma of incoming wavelength distribution | 0.005 | +| coll | arcmin | horizontal collimation | 120 | +| container | 1 | When >0 a 2mm thick Al pressed powder can is inserted around the sample | 0 | +| sample | 1 | 0=Ni, 1=Fe, 2=SiO2, 3=C_diamond, otherwise empty | 0 | + +## Links + +- [Source code](SimplePowderDiffractometer.instr) for `SimplePowderDiffractometer.instr`. +- [Additional information](SimplePowderDiffractometer.instr.md) +- http://vnt.nmi3.org/mcstas-web + +--- + +*Generated for mcstas 3.99.99.* \ No newline at end of file From 19555746fa8401e94eddaa00ad30b0f4da6199f6 Mon Sep 17 00:00:00 2001 From: Peter Willendrup Date: Wed, 22 Apr 2026 13:35:58 +0200 Subject: [PATCH 35/43] Generate README.md's for instruments (and include link to local name.md for additional info) --- tools/Python/mcdoc/mcdoc.py | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/tools/Python/mcdoc/mcdoc.py b/tools/Python/mcdoc/mcdoc.py index 9f9cd8760..94df2d849 100644 --- a/tools/Python/mcdoc/mcdoc.py +++ b/tools/Python/mcdoc/mcdoc.py @@ -1191,6 +1191,7 @@ def create(self): lines.append('## Links') lines.append('') lines.append('- [Source code](%s) for `%s`.' % (os.path.basename(i.filepath), os.path.basename(i.filepath))) + lines.append('- [Additional information](%s.md)' % (os.path.basename(i.filepath))) for l in i.links: lines.append('- %s' % _md_text(l)) lines.append('') @@ -1535,6 +1536,9 @@ def write_doc_files_or_continue(comp_infos, instr_infos, comp_files, instr_files ext, InstrW, CompW = _PER_FILE_WRITERS[fmt] doc = InstrW(p) text = doc.create() + # If md for an instr, filename is README.md + if fmt == 'md': + f = pathlib.Path(f).parent / "README.md" h = get_doc_filepath(f, ext, outdir=outdir) if printlog: print("writing doc file... %s" % h) From 5d9755272b9540ab7099ec83a7710b1f24b07bb9 Mon Sep 17 00:00:00 2001 From: Peter Willendrup Date: Wed, 22 Apr 2026 13:41:12 +0200 Subject: [PATCH 36/43] Restore as instr file --- .../Test_Pol_Tabled/{Test_Pol_Tabled.md => Test_Pol_Tabled.instr} | 0 1 file changed, 0 insertions(+), 0 deletions(-) rename mcstas-comps/examples/Tests_polarization/Test_Pol_Tabled/{Test_Pol_Tabled.md => Test_Pol_Tabled.instr} (100%) diff --git a/mcstas-comps/examples/Tests_polarization/Test_Pol_Tabled/Test_Pol_Tabled.md b/mcstas-comps/examples/Tests_polarization/Test_Pol_Tabled/Test_Pol_Tabled.instr similarity index 100% rename from mcstas-comps/examples/Tests_polarization/Test_Pol_Tabled/Test_Pol_Tabled.md rename to mcstas-comps/examples/Tests_polarization/Test_Pol_Tabled/Test_Pol_Tabled.instr From 4f7f6886f9d339cb57f9ad4ce71c19ca4056070d Mon Sep 17 00:00:00 2001 From: Peter Willendrup Date: Wed, 22 Apr 2026 13:41:40 +0200 Subject: [PATCH 37/43] Add local file previously known as README.md --- .../Test_Pol_Tabled/Test_Pol_Tabled.md | 10 ++++++++++ 1 file changed, 10 insertions(+) create mode 100644 mcstas-comps/examples/Tests_polarization/Test_Pol_Tabled/Test_Pol_Tabled.md diff --git a/mcstas-comps/examples/Tests_polarization/Test_Pol_Tabled/Test_Pol_Tabled.md b/mcstas-comps/examples/Tests_polarization/Test_Pol_Tabled/Test_Pol_Tabled.md new file mode 100644 index 000000000..72d234d5c --- /dev/null +++ b/mcstas-comps/examples/Tests_polarization/Test_Pol_Tabled/Test_Pol_Tabled.md @@ -0,0 +1,10 @@ +# `Test_Pol_Tabled.instr` with inputs and tools +The instrument uses tabulated field-data for input, examples are: +* A flipping field `flipfield.dat` +* A constant field `constfield.dat` + +Further, a couple of remeshing tools are provided, allowing to resample an existing field-file to 'regular' binning, both with positional inputs of `infile` for the input file and `xsiz`, `ysiz`, `zsiz` for the resampling dimensions +* `remesh.m` function for Matlab users +* `remesh.py` script for Python users + +When resampling for use with 'regular' interpolation (e.g. on GPU), esure that `xsiz`, `ysiz`, `zsiz` are equal. From e94b491c211f4a10a9fae1a8d201681feca03d49 Mon Sep 17 00:00:00 2001 From: Peter Willendrup Date: Wed, 22 Apr 2026 13:47:19 +0200 Subject: [PATCH 38/43] Remove suffix --- tools/Python/mcdoc/mcdoc.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/tools/Python/mcdoc/mcdoc.py b/tools/Python/mcdoc/mcdoc.py index 94df2d849..83692279b 100644 --- a/tools/Python/mcdoc/mcdoc.py +++ b/tools/Python/mcdoc/mcdoc.py @@ -1191,7 +1191,7 @@ def create(self): lines.append('## Links') lines.append('') lines.append('- [Source code](%s) for `%s`.' % (os.path.basename(i.filepath), os.path.basename(i.filepath))) - lines.append('- [Additional information](%s.md)' % (os.path.basename(i.filepath))) + lines.append('- [Additional information](%s.md)' % (os.path.basename(i.filepath).split('.')[0])) for l in i.links: lines.append('- %s' % _md_text(l)) lines.append('') From 59e30d029ef146dc27c2c64b2ba7ff8367878ae8 Mon Sep 17 00:00:00 2001 From: Peter Willendrup Date: Wed, 22 Apr 2026 13:49:27 +0200 Subject: [PATCH 39/43] Update README's --- mcstas-comps/examples/BNL/BNL_H8/README.md | 2 +- .../examples/BNL/BNL_H8_simple/README.md | 2 +- .../examples/BNL/h8_test_legacy/README.md | 2 +- .../examples/DTU/Test_FZP_simple/README.md | 2 +- mcstas-comps/examples/DTU/Vin_test/README.md | 2 +- mcstas-comps/examples/DTU/Vout_test/README.md | 2 +- .../examples/ESS/ESS_BEER_MCPL/README.md | 2 +- .../examples/ESS/ESS_IN5_reprate/README.md | 2 +- .../ESS/ESS_Testbeamline_HZB_V20/README.md | 2 +- .../ESS_butterfly_Guide_curved_test/README.md | 2 +- .../ESS/ESS_butterfly_MCPL_test/README.md | 2 +- .../examples/ESS/ESS_butterfly_test/README.md | 2 +- .../README.md | 2 +- .../ESS/ESS_butterfly_tfocus_test/README.md | 2 +- .../examples/ESS/ESS_mcpl2hist/README.md | 2 +- .../FZ_Juelich/FZJ_BenchmarkSfin2/README.md | 2 +- .../FZ_Juelich/FZJ_KWS2_Lens/README.md | 2 +- .../FZJ_SANS_KWS2_AnySample/README.md | 2 +- mcstas-comps/examples/HZB/HZB_FLEX/README.md | 2 +- mcstas-comps/examples/HZB/HZB_NEAT/README.md | 2 +- .../examples/HighNESS/WOFSANS/README.md | 2 +- mcstas-comps/examples/ILL/ILL_BRISP/README.md | 2 +- mcstas-comps/examples/ILL/ILL_D2B/README.md | 2 +- .../examples/ILL/ILL_D2B_noenv/README.md | 2 +- mcstas-comps/examples/ILL/ILL_D4/README.md | 2 +- .../examples/ILL/ILL_H10_IN8/README.md | 2 +- mcstas-comps/examples/ILL/ILL_H113/README.md | 2 +- .../examples/ILL/ILL_H13_IN20/README.md | 2 +- mcstas-comps/examples/ILL/ILL_H142/README.md | 2 +- .../examples/ILL/ILL_H142_D33/README.md | 2 +- .../examples/ILL/ILL_H142_IN12/README.md | 2 +- .../examples/ILL/ILL_H142_simple/README.md | 2 +- .../examples/ILL/ILL_H143_LADI/README.md | 2 +- mcstas-comps/examples/ILL/ILL_H15/README.md | 2 +- .../examples/ILL/ILL_H15_D11/README.md | 2 +- .../examples/ILL/ILL_H15_IN6/README.md | 2 +- .../examples/ILL/ILL_H15_SAM/README.md | 2 +- mcstas-comps/examples/ILL/ILL_H16/README.md | 2 +- .../examples/ILL/ILL_H16_IN5/README.md | 2 +- mcstas-comps/examples/ILL/ILL_H22/README.md | 2 +- .../examples/ILL/ILL_H22_D1A/README.md | 2 +- .../examples/ILL/ILL_H22_D1A_noenv/README.md | 2 +- .../examples/ILL/ILL_H22_D1B/README.md | 2 +- .../examples/ILL/ILL_H22_D1B_noenv/README.md | 2 +- .../examples/ILL/ILL_H22_VIVALDI/README.md | 2 +- mcstas-comps/examples/ILL/ILL_H24/README.md | 2 +- mcstas-comps/examples/ILL/ILL_H25/README.md | 2 +- .../examples/ILL/ILL_H25_IN22/README.md | 2 +- mcstas-comps/examples/ILL/ILL_H5/README.md | 2 +- .../examples/ILL/ILL_H512_D22/README.md | 2 +- mcstas-comps/examples/ILL/ILL_H53/README.md | 2 +- .../examples/ILL/ILL_H53_D16/README.md | 2 +- .../examples/ILL/ILL_H53_IN14/README.md | 2 +- .../examples/ILL/ILL_H5_new/README.md | 2 +- .../examples/ILL/ILL_H8_IN1/README.md | 2 +- mcstas-comps/examples/ILL/ILL_IN13/README.md | 2 +- mcstas-comps/examples/ILL/ILL_IN4/README.md | 2 +- mcstas-comps/examples/ILL/ILL_IN5/README.md | 2 +- .../examples/ILL/ILL_IN5_Spots/README.md | 2 +- mcstas-comps/examples/ILL/ILL_IN6/README.md | 2 +- .../examples/ILL/ILL_Lagrange/README.md | 2 +- mcstas-comps/examples/ILL/ILL_SALSA/README.md | 2 +- .../examples/ISIS/ISIS_CRISP/README.md | 2 +- mcstas-comps/examples/ISIS/ISIS_GEM/README.md | 2 +- mcstas-comps/examples/ISIS/ISIS_HET/README.md | 2 +- .../examples/ISIS/ISIS_IMAT/README.md | 2 +- mcstas-comps/examples/ISIS/ISIS_LET/README.md | 2 +- .../examples/ISIS/ISIS_MERLIN/README.md | 2 +- .../examples/ISIS/ISIS_OSIRIS/README.md | 2 +- .../examples/ISIS/ISIS_Prisma2/README.md | 2 +- .../examples/ISIS/ISIS_SANS2d/README.md | 2 +- .../ISIS/ISIS_TOSCA_preupgrade/README.md | 2 +- .../ISIS/ISIS_TS1_Brilliance/README.md | 2 +- .../ISIS/ISIS_TS2_Brilliance/README.md | 2 +- .../examples/ISIS/ISIS_test/README.md | 2 +- .../examples/ISIS/ViewModISIStest/README.md | 2 +- mcstas-comps/examples/LLB/LLB_6T2/README.md | 2 +- .../Mantid/ILL_H16_IN5_Mantid/README.md | 2 +- .../examples/Mantid/ILL_H16_Mantid/README.md | 2 +- .../examples/Mantid/ILL_IN5_Mantid/README.md | 2 +- .../Mantid/ISIS_SANS2d_Mantid/README.md | 2 +- .../ISIS_TOSCA_preupgrade_Mantid/README.md | 2 +- .../examples/Mantid/SNS_ARCS_Mantid/README.md | 2 +- .../examples/Mantid/Tools_ONION/README.md | 2 +- .../Mantid/templateSANS2_Mantid/README.md | 2 +- .../Mantid/templateSANS_Mantid/README.md | 2 +- .../Mantid/templateSasView_Mantid/README.md | 2 +- .../README.md | 2 +- .../NCrystal/NCrystal_example/README.md | 2 +- .../NCrystal/Union_NCrystal_example/README.md | 2 +- .../Union_NCrystal_mix_example/README.md | 2 +- .../examples/Necsa/SAFARI_MPISI/README.md | 2 +- .../examples/Necsa/SAFARI_PITSI/README.md | 2 +- mcstas-comps/examples/PSI/PSI_DMC/README.md | 2 +- .../examples/PSI/PSI_DMC_simple/README.md | 2 +- mcstas-comps/examples/PSI/PSI_Focus/README.md | 2 +- .../examples/PSI/PSI_source/README.md | 2 +- mcstas-comps/examples/PSI/RITA-II/README.md | 2 +- mcstas-comps/examples/Risoe/TAS1_C1/README.md | 2 +- .../examples/Risoe/TAS1_C1_Tilt/README.md | 2 +- .../examples/Risoe/TAS1_Diff_Powder/README.md | 2 +- .../examples/Risoe/TAS1_Diff_Slit/README.md | 2 +- .../examples/Risoe/TAS1_Diff_Vana/README.md | 2 +- .../examples/Risoe/TAS1_Powder/README.md | 2 +- .../examples/Risoe/TAS1_Vana/README.md | 2 +- .../SINE2020/McStas_Isotropic_Sqw/README.md | 2 +- .../SINE2020/McStas_PowderN/README.md | 2 +- .../SINE2020/McStas_Single_crystal/README.md | 2 +- .../README.md | 2 +- .../Granroth_SNS_decoupled_poisoned/README.md | 2 +- .../Mezei_SNS_decoupled_poisoned/README.md | 2 +- mcstas-comps/examples/SNS/SNS_ARCS/README.md | 2 +- mcstas-comps/examples/SNS/SNS_BASIS/README.md | 2 +- .../examples/SNS/SNS_analytic_test/README.md | 2 +- mcstas-comps/examples/SNS/SNS_test/README.md | 2 +- mcstas-comps/examples/TRIGA/RTP_DIF/README.md | 2 +- .../examples/TRIGA/RTP_Laue/README.md | 2 +- .../TRIGA/RTP_NeutronRadiography/README.md | 2 +- .../examples/TRIGA/RTP_SANS/README.md | 2 +- .../examples/TUDelft/SEMSANS_Delft/README.md | 2 +- .../TUDelft/SEMSANS_instrument/README.md | 2 +- .../examples/TUDelft/SESANS_Delft/README.md | 2 +- .../examples/Templates/BTsimple/README.md | 2 +- .../Templates/Demo_shape_primitives/README.md | 2 +- .../Demo_shape_primitives_simple/README.md | 2 +- .../Templates/TOF_Reflectometer/README.md | 2 +- .../README.md | 2 +- .../Templates/Test_SasView_guinier/README.md | 2 +- .../examples/Templates/Tomography/README.md | 2 +- .../examples/Templates/mini/README.md | 2 +- .../examples/Templates/template/README.md | 2 +- .../examples/Templates/templateDIFF/README.md | 2 +- .../examples/Templates/templateLaue/README.md | 2 +- .../examples/Templates/templateNMX/README.md | 2 +- .../Templates/templateNMX_TOF/README.md | 2 +- .../examples/Templates/templateSANS/README.md | 2 +- .../Templates/templateSANS2/README.md | 2 +- .../Templates/templateSANS_MCPL/README.md | 2 +- .../Templates/templateSasView/README.md | 2 +- .../examples/Templates/templateTAS/README.md | 2 +- .../examples/Templates/templateTOF/README.md | 2 +- .../Templates/template_simple/README.md | 2 +- .../Tests_MCPL_etc/Test_MCPL_input/README.md | 2 +- .../Test_MCPL_input_once/README.md | 2 +- .../Tests_MCPL_etc/Test_MCPL_output/README.md | 2 +- .../Tests_RNG/Test_RNG_rand01/README.md | 2 +- .../Tests_RNG/Test_RNG_randnorm/README.md | 2 +- .../Tests_RNG/Test_RNG_randpm1/README.md | 2 +- .../Tests_RNG/Test_RNG_randtriangle/README.md | 2 +- .../Test_RNG_randvec_target_circle/README.md | 2 +- .../Test_RNG_randvec_target_rect/README.md | 2 +- .../README.md | 2 +- mcstas-comps/examples/Tests_grammar/README.md | 2 +- .../Tests_grammar/Test_GROUP/README.md | 2 +- .../Tests_grammar/Test_Jump_Iterate/README.md | 2 +- .../Unittest_ALLOW_BACKPROP/README.md | 2 +- .../Unittest_JUMP_ITERATE/README.md | 2 +- .../Unittest_JUMP_WHEN/README.md | 2 +- .../Tests_grammar/Unittest_SPLIT/README.md | 2 +- .../Unittest_SPLIT_sample/README.md | 2 +- .../Test_Cyl_monitors/README.md | 2 +- .../Tests_monitors/Test_Monitor_nD/README.md | 2 +- .../Test_TOF_PSDmonitor_toQ/README.md | 2 +- .../Tests_optics/Test_Al_windows/README.md | 2 +- .../Test_Collimator_Radial/README.md | 2 +- .../Tests_optics/Test_Conics_pairs/README.md | 2 +- .../Tests_optics/Test_DiskChoppers/README.md | 2 +- .../Tests_optics/Test_DiskChoppers2/README.md | 2 +- .../Tests_optics/Test_Fermi/README.md | 2 +- .../Test_FocalisationMirrors/README.md | 2 +- .../Tests_optics/Test_Guides/README.md | 2 +- .../Tests_optics/Test_Guides_Curved/README.md | 2 +- .../examples/Tests_optics/Test_Lens/README.md | 2 +- .../Test_Monochromator_bent/README.md | 2 +- .../Test_Monochromator_bent_complex/README.md | 2 +- .../Test_Monochromators/README.md | 2 +- .../examples/Tests_optics/Test_NMO/README.md | 2 +- .../Tests_optics/Test_PSD_Detector/README.md | 2 +- .../Test_Pol_Bender_Vs_Guide_Curved/README.md | 2 +- .../Tests_optics/Test_Rotator/README.md | 2 +- .../Tests_optics/Test_Selectors/README.md | 2 +- .../Tests_optics/Test_Source_pulsed/README.md | 2 +- .../Tests_optics/Test_Sources/README.md | 2 +- .../Test_StatisticalChopper/README.md | 2 +- .../Test_Vertical_Bender/README.md | 2 +- .../Tests_optics/Test_filters/README.md | 2 +- .../Tests_optics/Test_focus/README.md | 2 +- .../examples/Tests_other/test_File/README.md | 2 +- .../He3_spin_filter/README.md | 2 +- .../Tests_polarization/SE_example/README.md | 2 +- .../Tests_polarization/SE_example2/README.md | 2 +- .../Supermirror_thin_substrate/README.md | 2 +- .../Test_Magnetic_Constant/README.md | 2 +- .../Test_Magnetic_Majorana/README.md | 2 +- .../Test_Magnetic_Rotation/README.md | 2 +- .../Test_Pol_Bender/README.md | 2 +- .../Test_Pol_FieldBox/README.md | 2 +- .../Test_Pol_Guide_Vmirror/README.md | 2 +- .../Test_Pol_Guide_mirror/README.md | 2 +- .../Tests_polarization/Test_Pol_MSF/README.md | 2 +- .../Test_Pol_Mirror/README.md | 2 +- .../Test_Pol_SF_ideal/README.md | 2 +- .../Tests_polarization/Test_Pol_Set/README.md | 2 +- .../Test_Pol_Tabled/README.md | 44 +++++++++++++++---- .../Test_Pol_TripleAxis/README.md | 2 +- .../Test_V_cavity_SNAG_double_side/README.md | 2 +- .../Test_V_cavity_SNAG_single_side/README.md | 2 +- .../Test_pol_ideal/README.md | 2 +- .../Tests_samples/GISANS_tests/README.md | 2 +- .../Samples_Incoherent/README.md | 2 +- .../Samples_Incoherent_off/README.md | 2 +- .../Samples_Isotropic_Sqw/README.md | 2 +- .../Tests_samples/Samples_Phonon/README.md | 2 +- .../Tests_samples/Samples_vanadium/README.md | 2 +- .../Tests_samples/Test_Incoherent/README.md | 2 +- .../Test_Incoherent_MS/README.md | 2 +- .../Test_Magnon_bcc_2D/README.md | 2 +- .../Test_Magnon_bcc_TAS/README.md | 2 +- .../Tests_samples/Test_PowderN/README.md | 2 +- .../Tests_samples/Test_PowderN_Res/README.md | 2 +- .../Test_PowderN_concentric/README.md | 2 +- .../Tests_samples/Test_Powders/README.md | 2 +- .../Tests_samples/Test_SANS/README.md | 2 +- .../examples/Tests_samples/Test_SX/README.md | 2 +- .../Test_Single_crystal_inelastic/README.md | 2 +- .../examples/Tests_samples/Test_Sqw/README.md | 2 +- .../Tests_samples/Test_Sqw_monitor/README.md | 2 +- .../Test_TOFRes_sample/README.md | 2 +- .../Tests_samples/Test_TasReso/README.md | 2 +- .../Test_single_magnetic_crystal/README.md | 2 +- .../Unittest_SANS_benchmark2/README.md | 2 +- .../Test_Source_custom/README.md | 2 +- .../Tests_sources/Test_Source_quasi/README.md | 2 +- .../Tests_union/Conditional_test/README.md | 2 +- .../External_component_test/README.md | 2 +- .../Tests_union/Geometry_test/README.md | 2 +- .../Tests_union/Hidden_Cylinder/README.md | 2 +- .../IncoherentPhonon_test/README.md | 2 +- .../Tests_union/Logger_test/README.md | 2 +- .../Tests_union/Many_meshes/README.md | 2 +- .../Tests_union/Test_absorption/README.md | 2 +- .../Test_absorption_image/README.md | 2 +- .../examples/Tests_union/Test_box/README.md | 2 +- .../examples/Tests_union/Test_mask/README.md | 2 +- .../Tests_union/Test_powder/README.md | 2 +- .../Tests_union/Test_texture/README.md | 2 +- .../Unit_test_abs_logger_1D_space/README.md | 2 +- .../README.md | 2 +- .../README.md | 2 +- .../README.md | 2 +- .../Unit_test_abs_logger_2D_space/README.md | 2 +- .../Unit_test_abs_logger_event/README.md | 2 +- .../Unit_test_abs_logger_nD/README.md | 2 +- .../Unit_test_conditional_PSD/README.md | 2 +- .../Unit_test_conditional_standard/README.md | 2 +- .../Tests_union/Unit_test_logger_1D/README.md | 2 +- .../Unit_test_logger_2DQ/README.md | 2 +- .../Unit_test_logger_2D_kf/README.md | 2 +- .../Unit_test_logger_2D_kf_time/README.md | 2 +- .../Unit_test_logger_2D_space/README.md | 2 +- .../Unit_test_logger_2D_space_time/README.md | 2 +- .../Unit_test_logger_3D_space/README.md | 2 +- .../Unit_test_loggers_base/README.md | 2 +- .../examples/Tools/Histogrammer/README.md | 2 +- .../examples/Tools/MCPL2Mantid_flat/README.md | 2 +- .../examples/Tools/MCPL2hist/README.md | 2 +- .../Tools/MCPL_filter_energy/README.md | 2 +- .../Tools/MCPL_filter_radius/README.md | 2 +- .../Tools/MCPL_filter_wavelength/README.md | 2 +- .../examples/Tools/vinput2mcpl/README.md | 2 +- .../examples/Union_demos/Bispectral/README.md | 2 +- .../Union_demos/Demonstration/README.md | 2 +- .../Union_demos/External_component/README.md | 2 +- .../Union_demos/Laue_camera/README.md | 2 +- .../Union_demos/Manual_example/README.md | 2 +- .../Sample_picture_replica/README.md | 2 +- .../Union_demos/Tagging_demo/README.md | 2 +- .../Union_demos/Time_of_flight/README.md | 2 +- .../SE_usage_example/README.md | 2 +- .../cryostat_example/README.md | 2 +- .../Incoherent_validation/README.md | 2 +- .../Mirror_validation/README.md | 2 +- .../Powder_validation/README.md | 2 +- .../Single_crystal_validation/README.md | 2 +- .../Radiography_absorbing_edge/README.md | 2 +- .../elearning/Reflectometer/README.md | 2 +- .../examples/elearning/SANSsimple/README.md | 2 +- .../elearning/SANSsimpleSpheres/README.md | 2 +- .../SimplePowderDiffractometer/README.md | 2 +- 289 files changed, 324 insertions(+), 296 deletions(-) diff --git a/mcstas-comps/examples/BNL/BNL_H8/README.md b/mcstas-comps/examples/BNL/BNL_H8/README.md index 452e6de40..a9e14409c 100644 --- a/mcstas-comps/examples/BNL/BNL_H8/README.md +++ b/mcstas-comps/examples/BNL/BNL_H8/README.md @@ -31,7 +31,7 @@ Parameters in **boldface** are required; the others are optional. ## Links - [Source code](BNL_H8.instr) for `BNL_H8.instr`. -- [Additional information](BNL_H8.instr.md) +- [Additional information](BNL_H8.md) - Neutron News 13 (No. 4), 24-29 (2002). --- diff --git a/mcstas-comps/examples/BNL/BNL_H8_simple/README.md b/mcstas-comps/examples/BNL/BNL_H8_simple/README.md index 7cbad8d48..0f69501cb 100644 --- a/mcstas-comps/examples/BNL/BNL_H8_simple/README.md +++ b/mcstas-comps/examples/BNL/BNL_H8_simple/README.md @@ -31,7 +31,7 @@ Parameters in **boldface** are required; the others are optional. ## Links - [Source code](BNL_H8_simple.instr) for `BNL_H8_simple.instr`. -- [Additional information](BNL_H8_simple.instr.md) +- [Additional information](BNL_H8_simple.md) - Neutron News 13 (No. 4), 24-29 (2002). --- diff --git a/mcstas-comps/examples/BNL/h8_test_legacy/README.md b/mcstas-comps/examples/BNL/h8_test_legacy/README.md index 8b00cfb56..08de985c4 100644 --- a/mcstas-comps/examples/BNL/h8_test_legacy/README.md +++ b/mcstas-comps/examples/BNL/h8_test_legacy/README.md @@ -37,7 +37,7 @@ Parameters in **boldface** are required; the others are optional. ## Links - [Source code](h8_test_legacy.instr) for `h8_test_legacy.instr`. -- [Additional information](h8_test_legacy.instr.md) +- [Additional information](h8_test_legacy.md) - Neutron News 13 (No. 4), 24-29 (2002). --- diff --git a/mcstas-comps/examples/DTU/Test_FZP_simple/README.md b/mcstas-comps/examples/DTU/Test_FZP_simple/README.md index ab5bb7b7d..0a94e4b74 100644 --- a/mcstas-comps/examples/DTU/Test_FZP_simple/README.md +++ b/mcstas-comps/examples/DTU/Test_FZP_simple/README.md @@ -28,7 +28,7 @@ Parameters in **boldface** are required; the others are optional. ## Links - [Source code](Test_FZP_simple.instr) for `Test_FZP_simple.instr`. -- [Additional information](Test_FZP_simple.instr.md) +- [Additional information](Test_FZP_simple.md) - --- diff --git a/mcstas-comps/examples/DTU/Vin_test/README.md b/mcstas-comps/examples/DTU/Vin_test/README.md index 84fe39a7b..3d73c890c 100644 --- a/mcstas-comps/examples/DTU/Vin_test/README.md +++ b/mcstas-comps/examples/DTU/Vin_test/README.md @@ -26,7 +26,7 @@ Parameters in **boldface** are required; the others are optional. ## Links - [Source code](Vin_test.instr) for `Vin_test.instr`. -- [Additional information](Vin_test.instr.md) +- [Additional information](Vin_test.md) - A reference/HTML link for more information --- diff --git a/mcstas-comps/examples/DTU/Vout_test/README.md b/mcstas-comps/examples/DTU/Vout_test/README.md index f46aa48eb..97c169a56 100644 --- a/mcstas-comps/examples/DTU/Vout_test/README.md +++ b/mcstas-comps/examples/DTU/Vout_test/README.md @@ -26,7 +26,7 @@ Parameters in **boldface** are required; the others are optional. ## Links - [Source code](Vout_test.instr) for `Vout_test.instr`. -- [Additional information](Vout_test.instr.md) +- [Additional information](Vout_test.md) - A reference/HTML link for more information --- diff --git a/mcstas-comps/examples/ESS/ESS_BEER_MCPL/README.md b/mcstas-comps/examples/ESS/ESS_BEER_MCPL/README.md index a3e5bba7c..e4542c555 100644 --- a/mcstas-comps/examples/ESS/ESS_BEER_MCPL/README.md +++ b/mcstas-comps/examples/ESS/ESS_BEER_MCPL/README.md @@ -76,7 +76,7 @@ Parameters in **boldface** are required; the others are optional. ## Links - [Source code](ESS_BEER_MCPL.instr) for `ESS_BEER_MCPL.instr`. -- [Additional information](ESS_BEER_MCPL.instr.md) +- [Additional information](ESS_BEER_MCPL.md) --- diff --git a/mcstas-comps/examples/ESS/ESS_IN5_reprate/README.md b/mcstas-comps/examples/ESS/ESS_IN5_reprate/README.md index 998d5c427..6858692ec 100644 --- a/mcstas-comps/examples/ESS/ESS_IN5_reprate/README.md +++ b/mcstas-comps/examples/ESS/ESS_IN5_reprate/README.md @@ -72,7 +72,7 @@ Parameters in **boldface** are required; the others are optional. ## Links - [Source code](ESS_IN5_reprate.instr) for `ESS_IN5_reprate.instr`. -- [Additional information](ESS_IN5_reprate.instr.md) +- [Additional information](ESS_IN5_reprate.md) - The ESS-Rencurel website. - The IN5@ILL Yellow Pages diff --git a/mcstas-comps/examples/ESS/ESS_Testbeamline_HZB_V20/README.md b/mcstas-comps/examples/ESS/ESS_Testbeamline_HZB_V20/README.md index e85431d61..ba7c3b861 100644 --- a/mcstas-comps/examples/ESS/ESS_Testbeamline_HZB_V20/README.md +++ b/mcstas-comps/examples/ESS/ESS_Testbeamline_HZB_V20/README.md @@ -51,7 +51,7 @@ Parameters in **boldface** are required; the others are optional. ## Links - [Source code](ESS_Testbeamline_HZB_V20.instr) for `ESS_Testbeamline_HZB_V20.instr`. -- [Additional information](ESS_Testbeamline_HZB_V20.instr.md) +- [Additional information](ESS_Testbeamline_HZB_V20.md) - V20 page at the HZB website - V20 info section at the ESS website diff --git a/mcstas-comps/examples/ESS/ESS_butterfly_Guide_curved_test/README.md b/mcstas-comps/examples/ESS/ESS_butterfly_Guide_curved_test/README.md index 4205918a3..786c907b5 100644 --- a/mcstas-comps/examples/ESS/ESS_butterfly_Guide_curved_test/README.md +++ b/mcstas-comps/examples/ESS/ESS_butterfly_Guide_curved_test/README.md @@ -44,7 +44,7 @@ Parameters in **boldface** are required; the others are optional. ## Links - [Source code](ESS_butterfly_Guide_curved_test.instr) for `ESS_butterfly_Guide_curved_test.instr`. -- [Additional information](ESS_butterfly_Guide_curved_test.instr.md) +- [Additional information](ESS_butterfly_Guide_curved_test.md) - - Benchmarking website available at http://ess_butterfly.mcstas.org diff --git a/mcstas-comps/examples/ESS/ESS_butterfly_MCPL_test/README.md b/mcstas-comps/examples/ESS/ESS_butterfly_MCPL_test/README.md index 85bf28b42..af00a2da9 100644 --- a/mcstas-comps/examples/ESS/ESS_butterfly_MCPL_test/README.md +++ b/mcstas-comps/examples/ESS/ESS_butterfly_MCPL_test/README.md @@ -47,7 +47,7 @@ Parameters in **boldface** are required; the others are optional. ## Links - [Source code](ESS_butterfly_MCPL_test.instr) for `ESS_butterfly_MCPL_test.instr`. -- [Additional information](ESS_butterfly_MCPL_test.instr.md) +- [Additional information](ESS_butterfly_MCPL_test.md) - - Benchmarking website available at http://ess_butterfly.mcstas.org diff --git a/mcstas-comps/examples/ESS/ESS_butterfly_test/README.md b/mcstas-comps/examples/ESS/ESS_butterfly_test/README.md index d00ee8fb9..c2aa95683 100644 --- a/mcstas-comps/examples/ESS/ESS_butterfly_test/README.md +++ b/mcstas-comps/examples/ESS/ESS_butterfly_test/README.md @@ -38,7 +38,7 @@ Parameters in **boldface** are required; the others are optional. ## Links - [Source code](ESS_butterfly_test.instr) for `ESS_butterfly_test.instr`. -- [Additional information](ESS_butterfly_test.instr.md) +- [Additional information](ESS_butterfly_test.md) - - Benchmarking website available at http://ess_butterfly.mcstas.org diff --git a/mcstas-comps/examples/ESS/ESS_butterfly_tfocus_NOFOCUS_test/README.md b/mcstas-comps/examples/ESS/ESS_butterfly_tfocus_NOFOCUS_test/README.md index cf172356d..af1914633 100644 --- a/mcstas-comps/examples/ESS/ESS_butterfly_tfocus_NOFOCUS_test/README.md +++ b/mcstas-comps/examples/ESS/ESS_butterfly_tfocus_NOFOCUS_test/README.md @@ -41,7 +41,7 @@ Parameters in **boldface** are required; the others are optional. ## Links - [Source code](ESS_butterfly_tfocus_NOFOCUS_test.instr) for `ESS_butterfly_tfocus_NOFOCUS_test.instr`. -- [Additional information](ESS_butterfly_tfocus_NOFOCUS_test.instr.md) +- [Additional information](ESS_butterfly_tfocus_NOFOCUS_test.md) - - Benchmarking website available at http://ess_butterfly.mcstas.org diff --git a/mcstas-comps/examples/ESS/ESS_butterfly_tfocus_test/README.md b/mcstas-comps/examples/ESS/ESS_butterfly_tfocus_test/README.md index fb88fa5a3..828b4e9d8 100644 --- a/mcstas-comps/examples/ESS/ESS_butterfly_tfocus_test/README.md +++ b/mcstas-comps/examples/ESS/ESS_butterfly_tfocus_test/README.md @@ -41,7 +41,7 @@ Parameters in **boldface** are required; the others are optional. ## Links - [Source code](ESS_butterfly_tfocus_test.instr) for `ESS_butterfly_tfocus_test.instr`. -- [Additional information](ESS_butterfly_tfocus_test.instr.md) +- [Additional information](ESS_butterfly_tfocus_test.md) - - Benchmarking website available at http://ess_butterfly.mcstas.org diff --git a/mcstas-comps/examples/ESS/ESS_mcpl2hist/README.md b/mcstas-comps/examples/ESS/ESS_mcpl2hist/README.md index 464011f39..e74455c7e 100644 --- a/mcstas-comps/examples/ESS/ESS_mcpl2hist/README.md +++ b/mcstas-comps/examples/ESS/ESS_mcpl2hist/README.md @@ -33,7 +33,7 @@ Parameters in **boldface** are required; the others are optional. ## Links - [Source code](ESS_mcpl2hist.instr) for `ESS_mcpl2hist.instr`. -- [Additional information](ESS_mcpl2hist.instr.md) +- [Additional information](ESS_mcpl2hist.md) - - Benchmarking website available at http://ess_butterfly.mcstas.org diff --git a/mcstas-comps/examples/FZ_Juelich/FZJ_BenchmarkSfin2/README.md b/mcstas-comps/examples/FZ_Juelich/FZJ_BenchmarkSfin2/README.md index 1c3a4a787..db0eca926 100644 --- a/mcstas-comps/examples/FZ_Juelich/FZJ_BenchmarkSfin2/README.md +++ b/mcstas-comps/examples/FZ_Juelich/FZJ_BenchmarkSfin2/README.md @@ -48,7 +48,7 @@ Parameters in **boldface** are required; the others are optional. ## Links - [Source code](FZJ_BenchmarkSfin2.instr) for `FZJ_BenchmarkSfin2.instr`. -- [Additional information](FZJ_BenchmarkSfin2.instr.md) +- [Additional information](FZJ_BenchmarkSfin2.md) --- diff --git a/mcstas-comps/examples/FZ_Juelich/FZJ_KWS2_Lens/README.md b/mcstas-comps/examples/FZ_Juelich/FZJ_KWS2_Lens/README.md index cc0c3ed01..0e30be3ed 100644 --- a/mcstas-comps/examples/FZ_Juelich/FZJ_KWS2_Lens/README.md +++ b/mcstas-comps/examples/FZ_Juelich/FZJ_KWS2_Lens/README.md @@ -35,7 +35,7 @@ Parameters in **boldface** are required; the others are optional. ## Links - [Source code](FZJ_KWS2_Lens.instr) for `FZJ_KWS2_Lens.instr`. -- [Additional information](FZJ_KWS2_Lens.instr.md) +- [Additional information](FZJ_KWS2_Lens.md) - The Lens_simple component --- diff --git a/mcstas-comps/examples/FZ_Juelich/FZJ_SANS_KWS2_AnySample/README.md b/mcstas-comps/examples/FZ_Juelich/FZJ_SANS_KWS2_AnySample/README.md index 1c6674119..7914d3558 100644 --- a/mcstas-comps/examples/FZ_Juelich/FZJ_SANS_KWS2_AnySample/README.md +++ b/mcstas-comps/examples/FZ_Juelich/FZJ_SANS_KWS2_AnySample/README.md @@ -33,7 +33,7 @@ Parameters in **boldface** are required; the others are optional. ## Links - [Source code](FZJ_SANS_KWS2_AnySample.instr) for `FZJ_SANS_KWS2_AnySample.instr`. -- [Additional information](FZJ_SANS_KWS2_AnySample.instr.md) +- [Additional information](FZJ_SANS_KWS2_AnySample.md) --- diff --git a/mcstas-comps/examples/HZB/HZB_FLEX/README.md b/mcstas-comps/examples/HZB/HZB_FLEX/README.md index 076e6ef88..72cc57230 100644 --- a/mcstas-comps/examples/HZB/HZB_FLEX/README.md +++ b/mcstas-comps/examples/HZB/HZB_FLEX/README.md @@ -35,7 +35,7 @@ Parameters in **boldface** are required; the others are optional. ## Links - [Source code](HZB_FLEX.instr) for `HZB_FLEX.instr`. -- [Additional information](HZB_FLEX.instr.md) +- [Additional information](HZB_FLEX.md) --- diff --git a/mcstas-comps/examples/HZB/HZB_NEAT/README.md b/mcstas-comps/examples/HZB/HZB_NEAT/README.md index 204b8e848..b4639b967 100644 --- a/mcstas-comps/examples/HZB/HZB_NEAT/README.md +++ b/mcstas-comps/examples/HZB/HZB_NEAT/README.md @@ -49,7 +49,7 @@ Parameters in **boldface** are required; the others are optional. ## Links - [Source code](HZB_NEAT.instr) for `HZB_NEAT.instr`. -- [Additional information](HZB_NEAT.instr.md) +- [Additional information](HZB_NEAT.md) - NEAT at HZB/BENSC --- diff --git a/mcstas-comps/examples/HighNESS/WOFSANS/README.md b/mcstas-comps/examples/HighNESS/WOFSANS/README.md index 6d2d13291..13f488550 100644 --- a/mcstas-comps/examples/HighNESS/WOFSANS/README.md +++ b/mcstas-comps/examples/HighNESS/WOFSANS/README.md @@ -47,7 +47,7 @@ Parameters in **boldface** are required; the others are optional. ## Links - [Source code](WOFSANS.instr) for `WOFSANS.instr`. -- [Additional information](WOFSANS.instr.md) +- [Additional information](WOFSANS.md) - V. Santoro et. al. Nuc. Sci. Eng. 2023 https://doi.org/10.1080/00295639.2023.2204184 - https://highnessproject.eu - This work was supported by the HighNESS project and is funded by European Commission (H2020-951782). diff --git a/mcstas-comps/examples/ILL/ILL_BRISP/README.md b/mcstas-comps/examples/ILL/ILL_BRISP/README.md index c37a2f6e4..de88a8705 100644 --- a/mcstas-comps/examples/ILL/ILL_BRISP/README.md +++ b/mcstas-comps/examples/ILL/ILL_BRISP/README.md @@ -87,7 +87,7 @@ Parameters in **boldface** are required; the others are optional. ## Links - [Source code](ILL_BRISP.instr) for `ILL_BRISP.instr`. -- [Additional information](ILL_BRISP.instr.md) +- [Additional information](ILL_BRISP.md) - The BRISP spectrometer at the ILL BRISP --- diff --git a/mcstas-comps/examples/ILL/ILL_D2B/README.md b/mcstas-comps/examples/ILL/ILL_D2B/README.md index 7182c206c..5c2874af8 100644 --- a/mcstas-comps/examples/ILL/ILL_D2B/README.md +++ b/mcstas-comps/examples/ILL/ILL_D2B/README.md @@ -65,7 +65,7 @@ Parameters in **boldface** are required; the others are optional. ## Links - [Source code](ILL_D2B.instr) for `ILL_D2B.instr`. -- [Additional information](ILL_D2B.instr.md) +- [Additional information](ILL_D2B.md) - G. Caglioti, A. Paoletti, F.P. Ricci, Nucl. Instr. and. Meth. 3 (1958) 223 - L.D. Cussen, Nucl. Instr. and. Meth. A 554 (2005) 406 - M. Morhac, NIM A 600 (2009) 478 diff --git a/mcstas-comps/examples/ILL/ILL_D2B_noenv/README.md b/mcstas-comps/examples/ILL/ILL_D2B_noenv/README.md index b62419aff..86e2296bd 100644 --- a/mcstas-comps/examples/ILL/ILL_D2B_noenv/README.md +++ b/mcstas-comps/examples/ILL/ILL_D2B_noenv/README.md @@ -65,7 +65,7 @@ Parameters in **boldface** are required; the others are optional. ## Links - [Source code](ILL_D2B_noenv.instr) for `ILL_D2B_noenv.instr`. -- [Additional information](ILL_D2B_noenv.instr.md) +- [Additional information](ILL_D2B_noenv.md) - G. Caglioti, A. Paoletti, F.P. Ricci, Nucl. Instr. and. Meth. 3 (1958) 223 - L.D. Cussen, Nucl. Instr. and. Meth. A 554 (2005) 406 - M. Morhac, NIM A 600 (2009) 478 diff --git a/mcstas-comps/examples/ILL/ILL_D4/README.md b/mcstas-comps/examples/ILL/ILL_D4/README.md index 1a6d04d68..41e0535ce 100644 --- a/mcstas-comps/examples/ILL/ILL_D4/README.md +++ b/mcstas-comps/examples/ILL/ILL_D4/README.md @@ -44,7 +44,7 @@ Parameters in **boldface** are required; the others are optional. ## Links - [Source code](ILL_D4.instr) for `ILL_D4.instr`. -- [Additional information](ILL_D4.instr.md) +- [Additional information](ILL_D4.md) - The D4 diffractometer at the ILL --- diff --git a/mcstas-comps/examples/ILL/ILL_H10_IN8/README.md b/mcstas-comps/examples/ILL/ILL_H10_IN8/README.md index 36709c5f4..e58ccc5ca 100644 --- a/mcstas-comps/examples/ILL/ILL_H10_IN8/README.md +++ b/mcstas-comps/examples/ILL/ILL_H10_IN8/README.md @@ -76,7 +76,7 @@ Parameters in **boldface** are required; the others are optional. ## Links - [Source code](ILL_H10_IN8.instr) for `ILL_H10_IN8.instr`. -- [Additional information](ILL_H10_IN8.instr.md) +- [Additional information](ILL_H10_IN8.md) - Rescal for Matlab at http://www.ill.eu/instruments-support/computing-for-science/cs-software/all-software/matlab-ill/ - Restrax at http://omega.ujf.cas.cz/restrax/ diff --git a/mcstas-comps/examples/ILL/ILL_H113/README.md b/mcstas-comps/examples/ILL/ILL_H113/README.md index d1156d016..88a5ae7d5 100644 --- a/mcstas-comps/examples/ILL/ILL_H113/README.md +++ b/mcstas-comps/examples/ILL/ILL_H113/README.md @@ -29,7 +29,7 @@ Parameters in **boldface** are required; the others are optional. ## Links - [Source code](ILL_H113.instr) for `ILL_H113.instr`. -- [Additional information](ILL_H113.instr.md) +- [Additional information](ILL_H113.md) - The PF1b beam line at the ILL --- diff --git a/mcstas-comps/examples/ILL/ILL_H13_IN20/README.md b/mcstas-comps/examples/ILL/ILL_H13_IN20/README.md index 829665614..bdd19910f 100644 --- a/mcstas-comps/examples/ILL/ILL_H13_IN20/README.md +++ b/mcstas-comps/examples/ILL/ILL_H13_IN20/README.md @@ -75,7 +75,7 @@ Parameters in **boldface** are required; the others are optional. ## Links - [Source code](ILL_H13_IN20.instr) for `ILL_H13_IN20.instr`. -- [Additional information](ILL_H13_IN20.instr.md) +- [Additional information](ILL_H13_IN20.md) - Rescal for Matlab at http://www.ill.eu/instruments-support/computing-for-science/cs-software/all-software/matlab-ill/ - Restrax at http://omega.ujf.cas.cz/restrax/ diff --git a/mcstas-comps/examples/ILL/ILL_H142/README.md b/mcstas-comps/examples/ILL/ILL_H142/README.md index 02c0237fc..c4015a81f 100644 --- a/mcstas-comps/examples/ILL/ILL_H142/README.md +++ b/mcstas-comps/examples/ILL/ILL_H142/README.md @@ -30,7 +30,7 @@ Parameters in **boldface** are required; the others are optional. ## Links - [Source code](ILL_H142.instr) for `ILL_H142.instr`. -- [Additional information](ILL_H142.instr.md) +- [Additional information](ILL_H142.md) - The IN12 TAS at the ILL --- diff --git a/mcstas-comps/examples/ILL/ILL_H142_D33/README.md b/mcstas-comps/examples/ILL/ILL_H142_D33/README.md index b9c371226..4d5892fb5 100644 --- a/mcstas-comps/examples/ILL/ILL_H142_D33/README.md +++ b/mcstas-comps/examples/ILL/ILL_H142_D33/README.md @@ -42,7 +42,7 @@ Parameters in **boldface** are required; the others are optional. ## Links - [Source code](ILL_H142_D33.instr) for `ILL_H142_D33.instr`. -- [Additional information](ILL_H142_D33.instr.md) +- [Additional information](ILL_H142_D33.md) --- diff --git a/mcstas-comps/examples/ILL/ILL_H142_IN12/README.md b/mcstas-comps/examples/ILL/ILL_H142_IN12/README.md index a5b40c438..7c1a353a2 100644 --- a/mcstas-comps/examples/ILL/ILL_H142_IN12/README.md +++ b/mcstas-comps/examples/ILL/ILL_H142_IN12/README.md @@ -44,7 +44,7 @@ Parameters in **boldface** are required; the others are optional. ## Links - [Source code](ILL_H142_IN12.instr) for `ILL_H142_IN12.instr`. -- [Additional information](ILL_H142_IN12.instr.md) +- [Additional information](ILL_H142_IN12.md) - The IN12 TAS at the ILL --- diff --git a/mcstas-comps/examples/ILL/ILL_H142_simple/README.md b/mcstas-comps/examples/ILL/ILL_H142_simple/README.md index 6b294906d..b8f1ddaa6 100644 --- a/mcstas-comps/examples/ILL/ILL_H142_simple/README.md +++ b/mcstas-comps/examples/ILL/ILL_H142_simple/README.md @@ -30,7 +30,7 @@ Parameters in **boldface** are required; the others are optional. ## Links - [Source code](ILL_H142_simple.instr) for `ILL_H142_simple.instr`. -- [Additional information](ILL_H142_simple.instr.md) +- [Additional information](ILL_H142_simple.md) - The IN12 TAS at the ILL --- diff --git a/mcstas-comps/examples/ILL/ILL_H143_LADI/README.md b/mcstas-comps/examples/ILL/ILL_H143_LADI/README.md index b1c6f9407..fbfc1e9b7 100644 --- a/mcstas-comps/examples/ILL/ILL_H143_LADI/README.md +++ b/mcstas-comps/examples/ILL/ILL_H143_LADI/README.md @@ -54,7 +54,7 @@ Parameters in **boldface** are required; the others are optional. ## Links - [Source code](ILL_H143_LADI.instr) for `ILL_H143_LADI.instr`. -- [Additional information](ILL_H143_LADI.instr.md) +- [Additional information](ILL_H143_LADI.md) --- diff --git a/mcstas-comps/examples/ILL/ILL_H15/README.md b/mcstas-comps/examples/ILL/ILL_H15/README.md index ec131a8a2..58c5124f8 100644 --- a/mcstas-comps/examples/ILL/ILL_H15/README.md +++ b/mcstas-comps/examples/ILL/ILL_H15/README.md @@ -29,7 +29,7 @@ Parameters in **boldface** are required; the others are optional. ## Links - [Source code](ILL_H15.instr) for `ILL_H15.instr`. -- [Additional information](ILL_H15.instr.md) +- [Additional information](ILL_H15.md) - The IN6 TOF at the ILL --- diff --git a/mcstas-comps/examples/ILL/ILL_H15_D11/README.md b/mcstas-comps/examples/ILL/ILL_H15_D11/README.md index 72dd2ce32..4dbe7c093 100644 --- a/mcstas-comps/examples/ILL/ILL_H15_D11/README.md +++ b/mcstas-comps/examples/ILL/ILL_H15_D11/README.md @@ -52,7 +52,7 @@ Parameters in **boldface** are required; the others are optional. ## Links - [Source code](ILL_H15_D11.instr) for `ILL_H15_D11.instr`. -- [Additional information](ILL_H15_D11.instr.md) +- [Additional information](ILL_H15_D11.md) --- diff --git a/mcstas-comps/examples/ILL/ILL_H15_IN6/README.md b/mcstas-comps/examples/ILL/ILL_H15_IN6/README.md index 03c8f071a..904564ba3 100644 --- a/mcstas-comps/examples/ILL/ILL_H15_IN6/README.md +++ b/mcstas-comps/examples/ILL/ILL_H15_IN6/README.md @@ -56,7 +56,7 @@ Parameters in **boldface** are required; the others are optional. ## Links - [Source code](ILL_H15_IN6.instr) for `ILL_H15_IN6.instr`. -- [Additional information](ILL_H15_IN6.instr.md) +- [Additional information](ILL_H15_IN6.md) - The IN6@ILL Yellow Pages - R.Scherm et al, "Another Time of Flight Spectrometer", ILL Report 76S235, 1976 - R.Scherm, "A high-resolution spectrometer ...", report Jul-295-NP, Kernforschungsanlage Julich, 1965 diff --git a/mcstas-comps/examples/ILL/ILL_H15_SAM/README.md b/mcstas-comps/examples/ILL/ILL_H15_SAM/README.md index cc165a9f6..ac8abbc5c 100644 --- a/mcstas-comps/examples/ILL/ILL_H15_SAM/README.md +++ b/mcstas-comps/examples/ILL/ILL_H15_SAM/README.md @@ -64,7 +64,7 @@ Parameters in **boldface** are required; the others are optional. ## Links - [Source code](ILL_H15_SAM.instr) for `ILL_H15_SAM.instr`. -- [Additional information](ILL_H15_SAM.instr.md) +- [Additional information](ILL_H15_SAM.md) - --- diff --git a/mcstas-comps/examples/ILL/ILL_H16/README.md b/mcstas-comps/examples/ILL/ILL_H16/README.md index d4e278f5e..9b12ae7e1 100644 --- a/mcstas-comps/examples/ILL/ILL_H16/README.md +++ b/mcstas-comps/examples/ILL/ILL_H16/README.md @@ -28,7 +28,7 @@ Parameters in **boldface** are required; the others are optional. ## Links - [Source code](ILL_H16.instr) for `ILL_H16.instr`. -- [Additional information](ILL_H16.instr.md) +- [Additional information](ILL_H16.md) --- diff --git a/mcstas-comps/examples/ILL/ILL_H16_IN5/README.md b/mcstas-comps/examples/ILL/ILL_H16_IN5/README.md index 679fc6963..ed8152d23 100644 --- a/mcstas-comps/examples/ILL/ILL_H16_IN5/README.md +++ b/mcstas-comps/examples/ILL/ILL_H16_IN5/README.md @@ -30,7 +30,7 @@ Parameters in **boldface** are required; the others are optional. ## Links - [Source code](ILL_H16_IN5.instr) for `ILL_H16_IN5.instr`. -- [Additional information](ILL_H16_IN5.instr.md) +- [Additional information](ILL_H16_IN5.md) - The IN5@ILL cold time of flight instrument --- diff --git a/mcstas-comps/examples/ILL/ILL_H22/README.md b/mcstas-comps/examples/ILL/ILL_H22/README.md index de8d640c5..ca056dcbb 100644 --- a/mcstas-comps/examples/ILL/ILL_H22/README.md +++ b/mcstas-comps/examples/ILL/ILL_H22/README.md @@ -29,7 +29,7 @@ Parameters in **boldface** are required; the others are optional. ## Links - [Source code](ILL_H22.instr) for `ILL_H22.instr`. -- [Additional information](ILL_H22.instr.md) +- [Additional information](ILL_H22.md) --- diff --git a/mcstas-comps/examples/ILL/ILL_H22_D1A/README.md b/mcstas-comps/examples/ILL/ILL_H22_D1A/README.md index 9113f6d1f..a83b1d44a 100644 --- a/mcstas-comps/examples/ILL/ILL_H22_D1A/README.md +++ b/mcstas-comps/examples/ILL/ILL_H22_D1A/README.md @@ -58,7 +58,7 @@ Parameters in **boldface** are required; the others are optional. ## Links - [Source code](ILL_H22_D1A.instr) for `ILL_H22_D1A.instr`. -- [Additional information](ILL_H22_D1A.instr.md) +- [Additional information](ILL_H22_D1A.md) --- diff --git a/mcstas-comps/examples/ILL/ILL_H22_D1A_noenv/README.md b/mcstas-comps/examples/ILL/ILL_H22_D1A_noenv/README.md index f465e985b..4842e5033 100644 --- a/mcstas-comps/examples/ILL/ILL_H22_D1A_noenv/README.md +++ b/mcstas-comps/examples/ILL/ILL_H22_D1A_noenv/README.md @@ -58,7 +58,7 @@ Parameters in **boldface** are required; the others are optional. ## Links - [Source code](ILL_H22_D1A_noenv.instr) for `ILL_H22_D1A_noenv.instr`. -- [Additional information](ILL_H22_D1A_noenv.instr.md) +- [Additional information](ILL_H22_D1A_noenv.md) --- diff --git a/mcstas-comps/examples/ILL/ILL_H22_D1B/README.md b/mcstas-comps/examples/ILL/ILL_H22_D1B/README.md index 2389d8be4..70ba52ee2 100644 --- a/mcstas-comps/examples/ILL/ILL_H22_D1B/README.md +++ b/mcstas-comps/examples/ILL/ILL_H22_D1B/README.md @@ -68,7 +68,7 @@ Parameters in **boldface** are required; the others are optional. ## Links - [Source code](ILL_H22_D1B.instr) for `ILL_H22_D1B.instr`. -- [Additional information](ILL_H22_D1B.instr.md) +- [Additional information](ILL_H22_D1B.md) --- diff --git a/mcstas-comps/examples/ILL/ILL_H22_D1B_noenv/README.md b/mcstas-comps/examples/ILL/ILL_H22_D1B_noenv/README.md index c5ec38d99..154a64cf5 100644 --- a/mcstas-comps/examples/ILL/ILL_H22_D1B_noenv/README.md +++ b/mcstas-comps/examples/ILL/ILL_H22_D1B_noenv/README.md @@ -68,7 +68,7 @@ Parameters in **boldface** are required; the others are optional. ## Links - [Source code](ILL_H22_D1B_noenv.instr) for `ILL_H22_D1B_noenv.instr`. -- [Additional information](ILL_H22_D1B_noenv.instr.md) +- [Additional information](ILL_H22_D1B_noenv.md) --- diff --git a/mcstas-comps/examples/ILL/ILL_H22_VIVALDI/README.md b/mcstas-comps/examples/ILL/ILL_H22_VIVALDI/README.md index 183ca8259..e61ead3a9 100644 --- a/mcstas-comps/examples/ILL/ILL_H22_VIVALDI/README.md +++ b/mcstas-comps/examples/ILL/ILL_H22_VIVALDI/README.md @@ -43,7 +43,7 @@ Parameters in **boldface** are required; the others are optional. ## Links - [Source code](ILL_H22_VIVALDI.instr) for `ILL_H22_VIVALDI.instr`. -- [Additional information](ILL_H22_VIVALDI.instr.md) +- [Additional information](ILL_H22_VIVALDI.md) --- diff --git a/mcstas-comps/examples/ILL/ILL_H24/README.md b/mcstas-comps/examples/ILL/ILL_H24/README.md index bc2615412..9cb8a953b 100644 --- a/mcstas-comps/examples/ILL/ILL_H24/README.md +++ b/mcstas-comps/examples/ILL/ILL_H24/README.md @@ -29,7 +29,7 @@ Parameters in **boldface** are required; the others are optional. ## Links - [Source code](ILL_H24.instr) for `ILL_H24.instr`. -- [Additional information](ILL_H24.instr.md) +- [Additional information](ILL_H24.md) --- diff --git a/mcstas-comps/examples/ILL/ILL_H25/README.md b/mcstas-comps/examples/ILL/ILL_H25/README.md index 5e9bb06b2..2f88473ad 100644 --- a/mcstas-comps/examples/ILL/ILL_H25/README.md +++ b/mcstas-comps/examples/ILL/ILL_H25/README.md @@ -29,7 +29,7 @@ Parameters in **boldface** are required; the others are optional. ## Links - [Source code](ILL_H25.instr) for `ILL_H25.instr`. -- [Additional information](ILL_H25.instr.md) +- [Additional information](ILL_H25.md) --- diff --git a/mcstas-comps/examples/ILL/ILL_H25_IN22/README.md b/mcstas-comps/examples/ILL/ILL_H25_IN22/README.md index a751fb8da..787ac08be 100644 --- a/mcstas-comps/examples/ILL/ILL_H25_IN22/README.md +++ b/mcstas-comps/examples/ILL/ILL_H25_IN22/README.md @@ -49,7 +49,7 @@ Parameters in **boldface** are required; the others are optional. ## Links - [Source code](ILL_H25_IN22.instr) for `ILL_H25_IN22.instr`. -- [Additional information](ILL_H25_IN22.instr.md) +- [Additional information](ILL_H25_IN22.md) - The IN22 TAS at the ILL --- diff --git a/mcstas-comps/examples/ILL/ILL_H5/README.md b/mcstas-comps/examples/ILL/ILL_H5/README.md index cf595bcaa..8364b7b31 100644 --- a/mcstas-comps/examples/ILL/ILL_H5/README.md +++ b/mcstas-comps/examples/ILL/ILL_H5/README.md @@ -44,7 +44,7 @@ Parameters in **boldface** are required; the others are optional. ## Links - [Source code](ILL_H5.instr) for `ILL_H5.instr`. -- [Additional information](ILL_H5.instr.md) +- [Additional information](ILL_H5.md) --- diff --git a/mcstas-comps/examples/ILL/ILL_H512_D22/README.md b/mcstas-comps/examples/ILL/ILL_H512_D22/README.md index 340b02ab0..2705a1eb3 100644 --- a/mcstas-comps/examples/ILL/ILL_H512_D22/README.md +++ b/mcstas-comps/examples/ILL/ILL_H512_D22/README.md @@ -34,7 +34,7 @@ Parameters in **boldface** are required; the others are optional. ## Links - [Source code](ILL_H512_D22.instr) for `ILL_H512_D22.instr`. -- [Additional information](ILL_H512_D22.instr.md) +- [Additional information](ILL_H512_D22.md) --- diff --git a/mcstas-comps/examples/ILL/ILL_H53/README.md b/mcstas-comps/examples/ILL/ILL_H53/README.md index 24f823cf2..b97f36c47 100644 --- a/mcstas-comps/examples/ILL/ILL_H53/README.md +++ b/mcstas-comps/examples/ILL/ILL_H53/README.md @@ -29,7 +29,7 @@ Parameters in **boldface** are required; the others are optional. ## Links - [Source code](ILL_H53.instr) for `ILL_H53.instr`. -- [Additional information](ILL_H53.instr.md) +- [Additional information](ILL_H53.md) --- diff --git a/mcstas-comps/examples/ILL/ILL_H53_D16/README.md b/mcstas-comps/examples/ILL/ILL_H53_D16/README.md index 1e0c37bc9..0fce70dc0 100644 --- a/mcstas-comps/examples/ILL/ILL_H53_D16/README.md +++ b/mcstas-comps/examples/ILL/ILL_H53_D16/README.md @@ -46,7 +46,7 @@ Parameters in **boldface** are required; the others are optional. ## Links - [Source code](ILL_H53_D16.instr) for `ILL_H53_D16.instr`. -- [Additional information](ILL_H53_D16.instr.md) +- [Additional information](ILL_H53_D16.md) - The D16 diffractometer at the ILL --- diff --git a/mcstas-comps/examples/ILL/ILL_H53_IN14/README.md b/mcstas-comps/examples/ILL/ILL_H53_IN14/README.md index 295f43de7..912a6cb9b 100644 --- a/mcstas-comps/examples/ILL/ILL_H53_IN14/README.md +++ b/mcstas-comps/examples/ILL/ILL_H53_IN14/README.md @@ -64,7 +64,7 @@ Parameters in **boldface** are required; the others are optional. ## Links - [Source code](ILL_H53_IN14.instr) for `ILL_H53_IN14.instr`. -- [Additional information](ILL_H53_IN14.instr.md) +- [Additional information](ILL_H53_IN14.md) - The IN14 TAS at the ILL --- diff --git a/mcstas-comps/examples/ILL/ILL_H5_new/README.md b/mcstas-comps/examples/ILL/ILL_H5_new/README.md index 19d98a962..8d8894797 100644 --- a/mcstas-comps/examples/ILL/ILL_H5_new/README.md +++ b/mcstas-comps/examples/ILL/ILL_H5_new/README.md @@ -64,7 +64,7 @@ Parameters in **boldface** are required; the others are optional. ## Links - [Source code](ILL_H5_new.instr) for `ILL_H5_new.instr`. -- [Additional information](ILL_H5_new.instr.md) +- [Additional information](ILL_H5_new.md) - The NoteDPT11 at the ILL - The DPT/SMAE 11/070 WASP design report - The DPT/SMAE 10/271 H5 design report diff --git a/mcstas-comps/examples/ILL/ILL_H8_IN1/README.md b/mcstas-comps/examples/ILL/ILL_H8_IN1/README.md index 94c21c41c..2d59e0dc4 100644 --- a/mcstas-comps/examples/ILL/ILL_H8_IN1/README.md +++ b/mcstas-comps/examples/ILL/ILL_H8_IN1/README.md @@ -79,7 +79,7 @@ Parameters in **boldface** are required; the others are optional. ## Links - [Source code](ILL_H8_IN1.instr) for `ILL_H8_IN1.instr`. -- [Additional information](ILL_H8_IN1.instr.md) +- [Additional information](ILL_H8_IN1.md) - Rescal for Matlab at http://www.ill.eu/instruments-support/computing-for-science/cs-software/all-software/matlab-ill/ - Restrax at http://omega.ujf.cas.cz/restrax/ diff --git a/mcstas-comps/examples/ILL/ILL_IN13/README.md b/mcstas-comps/examples/ILL/ILL_IN13/README.md index 2367ad194..4145f62ee 100644 --- a/mcstas-comps/examples/ILL/ILL_IN13/README.md +++ b/mcstas-comps/examples/ILL/ILL_IN13/README.md @@ -85,7 +85,7 @@ Parameters in **boldface** are required; the others are optional. ## Links - [Source code](ILL_IN13.instr) for `ILL_IN13.instr`. -- [Additional information](ILL_IN13.instr.md) +- [Additional information](ILL_IN13.md) - The IN3 TAS at the ILL --- diff --git a/mcstas-comps/examples/ILL/ILL_IN4/README.md b/mcstas-comps/examples/ILL/ILL_IN4/README.md index 47c7ffa3a..228aab9dc 100644 --- a/mcstas-comps/examples/ILL/ILL_IN4/README.md +++ b/mcstas-comps/examples/ILL/ILL_IN4/README.md @@ -85,7 +85,7 @@ Parameters in **boldface** are required; the others are optional. ## Links - [Source code](ILL_IN4.instr) for `ILL_IN4.instr`. -- [Additional information](ILL_IN4.instr.md) +- [Additional information](ILL_IN4.md) - H. Mutka, Nucl. Instr. and Meth. A 338 (1994) 144 - http://www.ill.eu/fr/instruments-support/instruments-groups/instruments/in4c diff --git a/mcstas-comps/examples/ILL/ILL_IN5/README.md b/mcstas-comps/examples/ILL/ILL_IN5/README.md index 7afc30e9f..cebc62045 100644 --- a/mcstas-comps/examples/ILL/ILL_IN5/README.md +++ b/mcstas-comps/examples/ILL/ILL_IN5/README.md @@ -39,7 +39,7 @@ Parameters in **boldface** are required; the others are optional. ## Links - [Source code](ILL_IN5.instr) for `ILL_IN5.instr`. -- [Additional information](ILL_IN5.instr.md) +- [Additional information](ILL_IN5.md) - The IN5@ILL cold time of flight instrument --- diff --git a/mcstas-comps/examples/ILL/ILL_IN5_Spots/README.md b/mcstas-comps/examples/ILL/ILL_IN5_Spots/README.md index 06a92f37d..aab302654 100644 --- a/mcstas-comps/examples/ILL/ILL_IN5_Spots/README.md +++ b/mcstas-comps/examples/ILL/ILL_IN5_Spots/README.md @@ -45,7 +45,7 @@ Parameters in **boldface** are required; the others are optional. ## Links - [Source code](ILL_IN5_Spots.instr) for `ILL_IN5_Spots.instr`. -- [Additional information](ILL_IN5_Spots.instr.md) +- [Additional information](ILL_IN5_Spots.md) - The IN5@ILL cold time of flight instrument --- diff --git a/mcstas-comps/examples/ILL/ILL_IN6/README.md b/mcstas-comps/examples/ILL/ILL_IN6/README.md index 7e641b491..329ecbcdb 100644 --- a/mcstas-comps/examples/ILL/ILL_IN6/README.md +++ b/mcstas-comps/examples/ILL/ILL_IN6/README.md @@ -68,7 +68,7 @@ Parameters in **boldface** are required; the others are optional. ## Links - [Source code](ILL_IN6.instr) for `ILL_IN6.instr`. -- [Additional information](ILL_IN6.instr.md) +- [Additional information](ILL_IN6.md) - The IN6@ILL Yellow Pages - R.Scherm et al, "Another Time of Flight Spectrometer", ILL Report 76S235, 1976 - R.Scherm, "A high-resolution spectrometer ...", report Jul-295-NP, Kernforschungsanlage Julich, 1965 diff --git a/mcstas-comps/examples/ILL/ILL_Lagrange/README.md b/mcstas-comps/examples/ILL/ILL_Lagrange/README.md index 125f905c0..2378c7ce7 100644 --- a/mcstas-comps/examples/ILL/ILL_Lagrange/README.md +++ b/mcstas-comps/examples/ILL/ILL_Lagrange/README.md @@ -49,7 +49,7 @@ Parameters in **boldface** are required; the others are optional. ## Links - [Source code](ILL_Lagrange.instr) for `ILL_Lagrange.instr`. -- [Additional information](ILL_Lagrange.instr.md) +- [Additional information](ILL_Lagrange.md) - The D4 diffractometer at the ILL --- diff --git a/mcstas-comps/examples/ILL/ILL_SALSA/README.md b/mcstas-comps/examples/ILL/ILL_SALSA/README.md index 2a923e31c..ba0fb558a 100644 --- a/mcstas-comps/examples/ILL/ILL_SALSA/README.md +++ b/mcstas-comps/examples/ILL/ILL_SALSA/README.md @@ -57,7 +57,7 @@ Parameters in **boldface** are required; the others are optional. ## Links - [Source code](ILL_SALSA.instr) for `ILL_SALSA.instr`. -- [Additional information](ILL_SALSA.instr.md) +- [Additional information](ILL_SALSA.md) --- diff --git a/mcstas-comps/examples/ISIS/ISIS_CRISP/README.md b/mcstas-comps/examples/ISIS/ISIS_CRISP/README.md index c519f43a5..9ce236f2b 100644 --- a/mcstas-comps/examples/ISIS/ISIS_CRISP/README.md +++ b/mcstas-comps/examples/ISIS/ISIS_CRISP/README.md @@ -37,7 +37,7 @@ Parameters in **boldface** are required; the others are optional. ## Links - [Source code](ISIS_CRISP.instr) for `ISIS_CRISP.instr`. -- [Additional information](ISIS_CRISP.instr.md) +- [Additional information](ISIS_CRISP.md) --- diff --git a/mcstas-comps/examples/ISIS/ISIS_GEM/README.md b/mcstas-comps/examples/ISIS/ISIS_GEM/README.md index 296ff81bb..d9d69d1c7 100644 --- a/mcstas-comps/examples/ISIS/ISIS_GEM/README.md +++ b/mcstas-comps/examples/ISIS/ISIS_GEM/README.md @@ -35,7 +35,7 @@ Parameters in **boldface** are required; the others are optional. ## Links - [Source code](ISIS_GEM.instr) for `ISIS_GEM.instr`. -- [Additional information](ISIS_GEM.instr.md) +- [Additional information](ISIS_GEM.md) - The ESS Instrument workshops website. - The GEM instrument at ISIS diff --git a/mcstas-comps/examples/ISIS/ISIS_HET/README.md b/mcstas-comps/examples/ISIS/ISIS_HET/README.md index d1a3db12a..90e9db0bb 100644 --- a/mcstas-comps/examples/ISIS/ISIS_HET/README.md +++ b/mcstas-comps/examples/ISIS/ISIS_HET/README.md @@ -33,7 +33,7 @@ Parameters in **boldface** are required; the others are optional. ## Links - [Source code](ISIS_HET.instr) for `ISIS_HET.instr`. -- [Additional information](ISIS_HET.instr.md) +- [Additional information](ISIS_HET.md) --- diff --git a/mcstas-comps/examples/ISIS/ISIS_IMAT/README.md b/mcstas-comps/examples/ISIS/ISIS_IMAT/README.md index 100311f76..87b62d016 100644 --- a/mcstas-comps/examples/ISIS/ISIS_IMAT/README.md +++ b/mcstas-comps/examples/ISIS/ISIS_IMAT/README.md @@ -40,7 +40,7 @@ Parameters in **boldface** are required; the others are optional. ## Links - [Source code](ISIS_IMAT.instr) for `ISIS_IMAT.instr`. -- [Additional information](ISIS_IMAT.instr.md) +- [Additional information](ISIS_IMAT.md) - --- diff --git a/mcstas-comps/examples/ISIS/ISIS_LET/README.md b/mcstas-comps/examples/ISIS/ISIS_LET/README.md index 18a725dc6..6a5ff6142 100644 --- a/mcstas-comps/examples/ISIS/ISIS_LET/README.md +++ b/mcstas-comps/examples/ISIS/ISIS_LET/README.md @@ -37,7 +37,7 @@ Parameters in **boldface** are required; the others are optional. ## Links - [Source code](ISIS_LET.instr) for `ISIS_LET.instr`. -- [Additional information](ISIS_LET.instr.md) +- [Additional information](ISIS_LET.md) --- diff --git a/mcstas-comps/examples/ISIS/ISIS_MERLIN/README.md b/mcstas-comps/examples/ISIS/ISIS_MERLIN/README.md index 8515e9ecb..2a8d12882 100644 --- a/mcstas-comps/examples/ISIS/ISIS_MERLIN/README.md +++ b/mcstas-comps/examples/ISIS/ISIS_MERLIN/README.md @@ -41,7 +41,7 @@ Parameters in **boldface** are required; the others are optional. ## Links - [Source code](ISIS_MERLIN.instr) for `ISIS_MERLIN.instr`. -- [Additional information](ISIS_MERLIN.instr.md) +- [Additional information](ISIS_MERLIN.md) - http://www.isis.stfc.ac.uk/instruments/merlin --- diff --git a/mcstas-comps/examples/ISIS/ISIS_OSIRIS/README.md b/mcstas-comps/examples/ISIS/ISIS_OSIRIS/README.md index c6cdd3178..409647324 100644 --- a/mcstas-comps/examples/ISIS/ISIS_OSIRIS/README.md +++ b/mcstas-comps/examples/ISIS/ISIS_OSIRIS/README.md @@ -39,7 +39,7 @@ Parameters in **boldface** are required; the others are optional. ## Links - [Source code](ISIS_OSIRIS.instr) for `ISIS_OSIRIS.instr`. -- [Additional information](ISIS_OSIRIS.instr.md) +- [Additional information](ISIS_OSIRIS.md) --- diff --git a/mcstas-comps/examples/ISIS/ISIS_Prisma2/README.md b/mcstas-comps/examples/ISIS/ISIS_Prisma2/README.md index 6b43f1e84..1533ef428 100644 --- a/mcstas-comps/examples/ISIS/ISIS_Prisma2/README.md +++ b/mcstas-comps/examples/ISIS/ISIS_Prisma2/README.md @@ -42,7 +42,7 @@ Parameters in **boldface** are required; the others are optional. ## Links - [Source code](ISIS_Prisma2.instr) for `ISIS_Prisma2.instr`. -- [Additional information](ISIS_Prisma2.instr.md) +- [Additional information](ISIS_Prisma2.md) - The McStas User manual - PRISMA diff --git a/mcstas-comps/examples/ISIS/ISIS_SANS2d/README.md b/mcstas-comps/examples/ISIS/ISIS_SANS2d/README.md index d7b6cdcff..f589108bc 100644 --- a/mcstas-comps/examples/ISIS/ISIS_SANS2d/README.md +++ b/mcstas-comps/examples/ISIS/ISIS_SANS2d/README.md @@ -48,7 +48,7 @@ Parameters in **boldface** are required; the others are optional. ## Links - [Source code](ISIS_SANS2d.instr) for `ISIS_SANS2d.instr`. -- [Additional information](ISIS_SANS2d.instr.md) +- [Additional information](ISIS_SANS2d.md) --- diff --git a/mcstas-comps/examples/ISIS/ISIS_TOSCA_preupgrade/README.md b/mcstas-comps/examples/ISIS/ISIS_TOSCA_preupgrade/README.md index 036e9cbeb..5547097b8 100644 --- a/mcstas-comps/examples/ISIS/ISIS_TOSCA_preupgrade/README.md +++ b/mcstas-comps/examples/ISIS/ISIS_TOSCA_preupgrade/README.md @@ -41,7 +41,7 @@ Parameters in **boldface** are required; the others are optional. ## Links - [Source code](ISIS_TOSCA_preupgrade.instr) for `ISIS_TOSCA_preupgrade.instr`. -- [Additional information](ISIS_TOSCA_preupgrade.instr.md) +- [Additional information](ISIS_TOSCA_preupgrade.md) - TOSCA instrument webpage - MDANSE 2018 school webpage diff --git a/mcstas-comps/examples/ISIS/ISIS_TS1_Brilliance/README.md b/mcstas-comps/examples/ISIS/ISIS_TS1_Brilliance/README.md index 6face634f..e09335b90 100644 --- a/mcstas-comps/examples/ISIS/ISIS_TS1_Brilliance/README.md +++ b/mcstas-comps/examples/ISIS/ISIS_TS1_Brilliance/README.md @@ -30,7 +30,7 @@ Parameters in **boldface** are required; the others are optional. ## Links - [Source code](ISIS_TS1_Brilliance.instr) for `ISIS_TS1_Brilliance.instr`. -- [Additional information](ISIS_TS1_Brilliance.instr.md) +- [Additional information](ISIS_TS1_Brilliance.md) --- diff --git a/mcstas-comps/examples/ISIS/ISIS_TS2_Brilliance/README.md b/mcstas-comps/examples/ISIS/ISIS_TS2_Brilliance/README.md index 10d24d5bb..9dadd3d0e 100644 --- a/mcstas-comps/examples/ISIS/ISIS_TS2_Brilliance/README.md +++ b/mcstas-comps/examples/ISIS/ISIS_TS2_Brilliance/README.md @@ -30,7 +30,7 @@ Parameters in **boldface** are required; the others are optional. ## Links - [Source code](ISIS_TS2_Brilliance.instr) for `ISIS_TS2_Brilliance.instr`. -- [Additional information](ISIS_TS2_Brilliance.instr.md) +- [Additional information](ISIS_TS2_Brilliance.md) --- diff --git a/mcstas-comps/examples/ISIS/ISIS_test/README.md b/mcstas-comps/examples/ISIS/ISIS_test/README.md index c22035029..41cdf244e 100644 --- a/mcstas-comps/examples/ISIS/ISIS_test/README.md +++ b/mcstas-comps/examples/ISIS/ISIS_test/README.md @@ -27,7 +27,7 @@ Parameters in **boldface** are required; the others are optional. ## Links - [Source code](ISIS_test.instr) for `ISIS_test.instr`. -- [Additional information](ISIS_test.instr.md) +- [Additional information](ISIS_test.md) - Written by D. Champion ISIS, Feb 2004 --- diff --git a/mcstas-comps/examples/ISIS/ViewModISIStest/README.md b/mcstas-comps/examples/ISIS/ViewModISIStest/README.md index db670a536..1bed04b8e 100644 --- a/mcstas-comps/examples/ISIS/ViewModISIStest/README.md +++ b/mcstas-comps/examples/ISIS/ViewModISIStest/README.md @@ -28,7 +28,7 @@ Parameters in **boldface** are required; the others are optional. ## Links - [Source code](ViewModISIStest.instr) for `ViewModISIStest.instr`. -- [Additional information](ViewModISIStest.instr.md) +- [Additional information](ViewModISIStest.md) - Written by D. Champion ISIS, Feb 2004 --- diff --git a/mcstas-comps/examples/LLB/LLB_6T2/README.md b/mcstas-comps/examples/LLB/LLB_6T2/README.md index c3837d393..8bb57e885 100644 --- a/mcstas-comps/examples/LLB/LLB_6T2/README.md +++ b/mcstas-comps/examples/LLB/LLB_6T2/README.md @@ -38,7 +38,7 @@ Parameters in **boldface** are required; the others are optional. ## Links - [Source code](LLB_6T2.instr) for `LLB_6T2.instr`. -- [Additional information](LLB_6T2.instr.md) +- [Additional information](LLB_6T2.md) --- diff --git a/mcstas-comps/examples/Mantid/ILL_H16_IN5_Mantid/README.md b/mcstas-comps/examples/Mantid/ILL_H16_IN5_Mantid/README.md index fc91c25d9..4e996716b 100644 --- a/mcstas-comps/examples/Mantid/ILL_H16_IN5_Mantid/README.md +++ b/mcstas-comps/examples/Mantid/ILL_H16_IN5_Mantid/README.md @@ -49,7 +49,7 @@ Parameters in **boldface** are required; the others are optional. ## Links - [Source code](ILL_H16_IN5_Mantid.instr) for `ILL_H16_IN5_Mantid.instr`. -- [Additional information](ILL_H16_IN5_Mantid.instr.md) +- [Additional information](ILL_H16_IN5_Mantid.md) - The IN5@ILL cold time of flight instrument --- diff --git a/mcstas-comps/examples/Mantid/ILL_H16_Mantid/README.md b/mcstas-comps/examples/Mantid/ILL_H16_Mantid/README.md index 61ef0a839..ca1ba5fc5 100644 --- a/mcstas-comps/examples/Mantid/ILL_H16_Mantid/README.md +++ b/mcstas-comps/examples/Mantid/ILL_H16_Mantid/README.md @@ -31,7 +31,7 @@ Parameters in **boldface** are required; the others are optional. ## Links - [Source code](ILL_H16_Mantid.instr) for `ILL_H16_Mantid.instr`. -- [Additional information](ILL_H16_Mantid.instr.md) +- [Additional information](ILL_H16_Mantid.md) --- diff --git a/mcstas-comps/examples/Mantid/ILL_IN5_Mantid/README.md b/mcstas-comps/examples/Mantid/ILL_IN5_Mantid/README.md index 23856aef3..8edb37c9a 100644 --- a/mcstas-comps/examples/Mantid/ILL_IN5_Mantid/README.md +++ b/mcstas-comps/examples/Mantid/ILL_IN5_Mantid/README.md @@ -40,7 +40,7 @@ Parameters in **boldface** are required; the others are optional. ## Links - [Source code](ILL_IN5_Mantid.instr) for `ILL_IN5_Mantid.instr`. -- [Additional information](ILL_IN5_Mantid.instr.md) +- [Additional information](ILL_IN5_Mantid.md) - The IN5@ILL cold time of flight instrument --- diff --git a/mcstas-comps/examples/Mantid/ISIS_SANS2d_Mantid/README.md b/mcstas-comps/examples/Mantid/ISIS_SANS2d_Mantid/README.md index 83495434f..3339f356e 100644 --- a/mcstas-comps/examples/Mantid/ISIS_SANS2d_Mantid/README.md +++ b/mcstas-comps/examples/Mantid/ISIS_SANS2d_Mantid/README.md @@ -49,7 +49,7 @@ Parameters in **boldface** are required; the others are optional. ## Links - [Source code](ISIS_SANS2d_Mantid.instr) for `ISIS_SANS2d_Mantid.instr`. -- [Additional information](ISIS_SANS2d_Mantid.instr.md) +- [Additional information](ISIS_SANS2d_Mantid.md) --- diff --git a/mcstas-comps/examples/Mantid/ISIS_TOSCA_preupgrade_Mantid/README.md b/mcstas-comps/examples/Mantid/ISIS_TOSCA_preupgrade_Mantid/README.md index cb4d19556..7c87b434e 100644 --- a/mcstas-comps/examples/Mantid/ISIS_TOSCA_preupgrade_Mantid/README.md +++ b/mcstas-comps/examples/Mantid/ISIS_TOSCA_preupgrade_Mantid/README.md @@ -47,7 +47,7 @@ Parameters in **boldface** are required; the others are optional. ## Links - [Source code](ISIS_TOSCA_preupgrade_Mantid.instr) for `ISIS_TOSCA_preupgrade_Mantid.instr`. -- [Additional information](ISIS_TOSCA_preupgrade_Mantid.instr.md) +- [Additional information](ISIS_TOSCA_preupgrade_Mantid.md) - TOSCA instrument webpage - MDANSE 2018 school webpage diff --git a/mcstas-comps/examples/Mantid/SNS_ARCS_Mantid/README.md b/mcstas-comps/examples/Mantid/SNS_ARCS_Mantid/README.md index 3c30a758e..bf8896f66 100644 --- a/mcstas-comps/examples/Mantid/SNS_ARCS_Mantid/README.md +++ b/mcstas-comps/examples/Mantid/SNS_ARCS_Mantid/README.md @@ -45,7 +45,7 @@ Parameters in **boldface** are required; the others are optional. ## Links - [Source code](SNS_ARCS_Mantid.instr) for `SNS_ARCS_Mantid.instr`. -- [Additional information](SNS_ARCS_Mantid.instr.md) +- [Additional information](SNS_ARCS_Mantid.md) -
    Granroth, G. E. and Abernathy, D. L., "Performance Comparisons of Four Direct Geometry Spectrometers Planned for Spallation Neutron Source", Proceedings of ICANS-XVI, 289 (2003). -
    D. L. Abernathy, M. B. Stone, M. J. Loguillo, M. S. Lucas, O. Delaire, X.Tang, J. Y. Y. Lin, and B. Fultz,"Design and operation of the wide angular-range chopper spectrometer ARCS at the Spallation Neutron Source", Review of Scientific Instruments, 83 , 015114 (2012) diff --git a/mcstas-comps/examples/Mantid/Tools_ONION/README.md b/mcstas-comps/examples/Mantid/Tools_ONION/README.md index 00b2dfaa3..a0242685e 100644 --- a/mcstas-comps/examples/Mantid/Tools_ONION/README.md +++ b/mcstas-comps/examples/Mantid/Tools_ONION/README.md @@ -35,7 +35,7 @@ Parameters in **boldface** are required; the others are optional. ## Links - [Source code](Tools_ONION.instr) for `Tools_ONION.instr`. -- [Additional information](Tools_ONION.instr.md) +- [Additional information](Tools_ONION.md) - "Using an onion like neutron scattering instrument model to quickly optimize design parameters" - T. Huegle, Nuclear Instruments and Methods in Physics Research Section A, 2019 - Python script available at https://github.com/mccode-dev/McCode-contribution-support-docs/tree/master/McStas/2.6_Onion_tool_T_Huegle diff --git a/mcstas-comps/examples/Mantid/templateSANS2_Mantid/README.md b/mcstas-comps/examples/Mantid/templateSANS2_Mantid/README.md index 58c755a66..60733de26 100644 --- a/mcstas-comps/examples/Mantid/templateSANS2_Mantid/README.md +++ b/mcstas-comps/examples/Mantid/templateSANS2_Mantid/README.md @@ -33,7 +33,7 @@ Parameters in **boldface** are required; the others are optional. ## Links - [Source code](templateSANS2_Mantid.instr) for `templateSANS2_Mantid.instr`. -- [Additional information](templateSANS2_Mantid.instr.md) +- [Additional information](templateSANS2_Mantid.md) --- diff --git a/mcstas-comps/examples/Mantid/templateSANS_Mantid/README.md b/mcstas-comps/examples/Mantid/templateSANS_Mantid/README.md index c4e5911da..b04fa3146 100644 --- a/mcstas-comps/examples/Mantid/templateSANS_Mantid/README.md +++ b/mcstas-comps/examples/Mantid/templateSANS_Mantid/README.md @@ -39,7 +39,7 @@ Parameters in **boldface** are required; the others are optional. ## Links - [Source code](templateSANS_Mantid.instr) for `templateSANS_Mantid.instr`. -- [Additional information](templateSANS_Mantid.instr.md) +- [Additional information](templateSANS_Mantid.md) --- diff --git a/mcstas-comps/examples/Mantid/templateSasView_Mantid/README.md b/mcstas-comps/examples/Mantid/templateSasView_Mantid/README.md index 238547886..b9e8f3aab 100644 --- a/mcstas-comps/examples/Mantid/templateSasView_Mantid/README.md +++ b/mcstas-comps/examples/Mantid/templateSasView_Mantid/README.md @@ -54,7 +54,7 @@ Parameters in **boldface** are required; the others are optional. ## Links - [Source code](templateSasView_Mantid.instr) for `templateSasView_Mantid.instr`. -- [Additional information](templateSasView_Mantid.instr.md) +- [Additional information](templateSasView_Mantid.md) --- diff --git a/mcstas-comps/examples/Mantid/templateVanadiumMultipleScat_Mantid/README.md b/mcstas-comps/examples/Mantid/templateVanadiumMultipleScat_Mantid/README.md index 3cb11acee..fa9bda66c 100644 --- a/mcstas-comps/examples/Mantid/templateVanadiumMultipleScat_Mantid/README.md +++ b/mcstas-comps/examples/Mantid/templateVanadiumMultipleScat_Mantid/README.md @@ -27,7 +27,7 @@ Parameters in **boldface** are required; the others are optional. ## Links - [Source code](templateVanadiumMultipleScat_Mantid.instr) for `templateVanadiumMultipleScat_Mantid.instr`. -- [Additional information](templateVanadiumMultipleScat_Mantid.instr.md) +- [Additional information](templateVanadiumMultipleScat_Mantid.md) - A reference/HTML link for more information --- diff --git a/mcstas-comps/examples/NCrystal/NCrystal_example/README.md b/mcstas-comps/examples/NCrystal/NCrystal_example/README.md index 7124cbf98..8bd3615a8 100644 --- a/mcstas-comps/examples/NCrystal/NCrystal_example/README.md +++ b/mcstas-comps/examples/NCrystal/NCrystal_example/README.md @@ -43,7 +43,7 @@ Parameters in **boldface** are required; the others are optional. ## Links - [Source code](NCrystal_example.instr) for `NCrystal_example.instr`. -- [Additional information](NCrystal_example.instr.md) +- [Additional information](NCrystal_example.md) - https://github.com/mctools/ncrystal/wiki/ --- diff --git a/mcstas-comps/examples/NCrystal/Union_NCrystal_example/README.md b/mcstas-comps/examples/NCrystal/Union_NCrystal_example/README.md index bfb6007b7..4e0f24c42 100644 --- a/mcstas-comps/examples/NCrystal/Union_NCrystal_example/README.md +++ b/mcstas-comps/examples/NCrystal/Union_NCrystal_example/README.md @@ -28,7 +28,7 @@ Parameters in **boldface** are required; the others are optional. ## Links - [Source code](Union_NCrystal_example.instr) for `Union_NCrystal_example.instr`. -- [Additional information](Union_NCrystal_example.instr.md) +- [Additional information](Union_NCrystal_example.md) - https://github.com/mctools/ncrystal/wiki/ --- diff --git a/mcstas-comps/examples/NCrystal/Union_NCrystal_mix_example/README.md b/mcstas-comps/examples/NCrystal/Union_NCrystal_mix_example/README.md index c9c123c68..58fb52221 100644 --- a/mcstas-comps/examples/NCrystal/Union_NCrystal_mix_example/README.md +++ b/mcstas-comps/examples/NCrystal/Union_NCrystal_mix_example/README.md @@ -29,7 +29,7 @@ Parameters in **boldface** are required; the others are optional. ## Links - [Source code](Union_NCrystal_mix_example.instr) for `Union_NCrystal_mix_example.instr`. -- [Additional information](Union_NCrystal_mix_example.instr.md) +- [Additional information](Union_NCrystal_mix_example.md) - https://github.com/mctools/ncrystal/wiki/ --- diff --git a/mcstas-comps/examples/Necsa/SAFARI_MPISI/README.md b/mcstas-comps/examples/Necsa/SAFARI_MPISI/README.md index 055d6d571..33fc6735f 100644 --- a/mcstas-comps/examples/Necsa/SAFARI_MPISI/README.md +++ b/mcstas-comps/examples/Necsa/SAFARI_MPISI/README.md @@ -57,7 +57,7 @@ Parameters in **boldface** are required; the others are optional. ## Links - [Source code](SAFARI_MPISI.instr) for `SAFARI_MPISI.instr`. -- [Additional information](SAFARI_MPISI.instr.md) +- [Additional information](SAFARI_MPISI.md) - The South African Nuclear Energy Corporation website --- diff --git a/mcstas-comps/examples/Necsa/SAFARI_PITSI/README.md b/mcstas-comps/examples/Necsa/SAFARI_PITSI/README.md index 60d317b76..db123bed0 100644 --- a/mcstas-comps/examples/Necsa/SAFARI_PITSI/README.md +++ b/mcstas-comps/examples/Necsa/SAFARI_PITSI/README.md @@ -54,7 +54,7 @@ Parameters in **boldface** are required; the others are optional. ## Links - [Source code](SAFARI_PITSI.instr) for `SAFARI_PITSI.instr`. -- [Additional information](SAFARI_PITSI.instr.md) +- [Additional information](SAFARI_PITSI.md) - The South African Nuclear Energy Corporation website --- diff --git a/mcstas-comps/examples/PSI/PSI_DMC/README.md b/mcstas-comps/examples/PSI/PSI_DMC/README.md index 91384613f..4275a0180 100644 --- a/mcstas-comps/examples/PSI/PSI_DMC/README.md +++ b/mcstas-comps/examples/PSI/PSI_DMC/README.md @@ -40,7 +40,7 @@ Parameters in **boldface** are required; the others are optional. ## Links - [Source code](PSI_DMC.instr) for `PSI_DMC.instr`. -- [Additional information](PSI_DMC.instr.md) +- [Additional information](PSI_DMC.md) - The PSI Monte-Carlo website. - P Willendrup, U Filges, L Keller, E Farhi, K Lefmann: Validation of a realistic powder sample using data from DMC at PSI, ICNS 2005 (Physica B, 386, (2006), 1032.) diff --git a/mcstas-comps/examples/PSI/PSI_DMC_simple/README.md b/mcstas-comps/examples/PSI/PSI_DMC_simple/README.md index bc195dd48..3ed9bcfc4 100644 --- a/mcstas-comps/examples/PSI/PSI_DMC_simple/README.md +++ b/mcstas-comps/examples/PSI/PSI_DMC_simple/README.md @@ -39,7 +39,7 @@ Parameters in **boldface** are required; the others are optional. ## Links - [Source code](PSI_DMC_simple.instr) for `PSI_DMC_simple.instr`. -- [Additional information](PSI_DMC_simple.instr.md) +- [Additional information](PSI_DMC_simple.md) - The PSI Monte-Carlo website. - P Willendrup, U Filges, L Keller, E Farhi, K Lefmann: Validation of a realistic powder sample using data from DMC at PSI, ICNS 2005 (Physica B, 386, (2006), 1032.) diff --git a/mcstas-comps/examples/PSI/PSI_Focus/README.md b/mcstas-comps/examples/PSI/PSI_Focus/README.md index f7eecd44b..7660cc4bb 100644 --- a/mcstas-comps/examples/PSI/PSI_Focus/README.md +++ b/mcstas-comps/examples/PSI/PSI_Focus/README.md @@ -28,7 +28,7 @@ Parameters in **boldface** are required; the others are optional. ## Links - [Source code](PSI_Focus.instr) for `PSI_Focus.instr`. -- [Additional information](PSI_Focus.instr.md) +- [Additional information](PSI_Focus.md) - Written by U.Filges PSI, Jan 2004 --- diff --git a/mcstas-comps/examples/PSI/PSI_source/README.md b/mcstas-comps/examples/PSI/PSI_source/README.md index 6fb17f283..e472541a5 100644 --- a/mcstas-comps/examples/PSI/PSI_source/README.md +++ b/mcstas-comps/examples/PSI/PSI_source/README.md @@ -39,7 +39,7 @@ Parameters in **boldface** are required; the others are optional. ## Links - [Source code](PSI_source.instr) for `PSI_source.instr`. -- [Additional information](PSI_source.instr.md) +- [Additional information](PSI_source.md) - The PSI Monte-Carlo website. - P Willendrup, U Filges, L Keller, E Farhi, K Lefmann: Validation of a realistic powder sample using data from DMC at PSI, ICNS 2005 (Physica B, 386, (2006), 1032.) diff --git a/mcstas-comps/examples/PSI/RITA-II/README.md b/mcstas-comps/examples/PSI/RITA-II/README.md index 3fbde95e2..a03246de0 100644 --- a/mcstas-comps/examples/PSI/RITA-II/README.md +++ b/mcstas-comps/examples/PSI/RITA-II/README.md @@ -144,7 +144,7 @@ Parameters in **boldface** are required; the others are optional. ## Links - [Source code](RITA-II.instr) for `RITA-II.instr`. -- [Additional information](RITA-II.instr.md) +- [Additional information](RITA-II.md) - Rescal for Matlab at http://www.ill.fr/tas/matlab - Restrax at http://omega.ujf.cas.cz/restrax/ diff --git a/mcstas-comps/examples/Risoe/TAS1_C1/README.md b/mcstas-comps/examples/Risoe/TAS1_C1/README.md index 6253114f1..e127380af 100644 --- a/mcstas-comps/examples/Risoe/TAS1_C1/README.md +++ b/mcstas-comps/examples/Risoe/TAS1_C1/README.md @@ -35,7 +35,7 @@ Parameters in **boldface** are required; the others are optional. ## Links - [Source code](TAS1_C1.instr) for `TAS1_C1.instr`. -- [Additional information](TAS1_C1.instr.md) +- [Additional information](TAS1_C1.md) - The McStas User manual - A. Abrahamsen, N. B. Christensen, and E. Lauridsen. McStas simulations of the TAS1 spectrometer. Student's report, Niels Bohr Institute, University of Copenhagen, 1998. diff --git a/mcstas-comps/examples/Risoe/TAS1_C1_Tilt/README.md b/mcstas-comps/examples/Risoe/TAS1_C1_Tilt/README.md index 060727e30..7abec73ff 100644 --- a/mcstas-comps/examples/Risoe/TAS1_C1_Tilt/README.md +++ b/mcstas-comps/examples/Risoe/TAS1_C1_Tilt/README.md @@ -36,7 +36,7 @@ Parameters in **boldface** are required; the others are optional. ## Links - [Source code](TAS1_C1_Tilt.instr) for `TAS1_C1_Tilt.instr`. -- [Additional information](TAS1_C1_Tilt.instr.md) +- [Additional information](TAS1_C1_Tilt.md) - The McStas User manual - A. Abrahamsen, N. B. Christensen, and E. Lauridsen. McStas simulations of the TAS1 spectrometer. Student's report, Niels Bohr Institute, University of Copenhagen, 1998. diff --git a/mcstas-comps/examples/Risoe/TAS1_Diff_Powder/README.md b/mcstas-comps/examples/Risoe/TAS1_Diff_Powder/README.md index 24868fa87..8fd1cc4bf 100644 --- a/mcstas-comps/examples/Risoe/TAS1_Diff_Powder/README.md +++ b/mcstas-comps/examples/Risoe/TAS1_Diff_Powder/README.md @@ -41,7 +41,7 @@ Parameters in **boldface** are required; the others are optional. ## Links - [Source code](TAS1_Diff_Powder.instr) for `TAS1_Diff_Powder.instr`. -- [Additional information](TAS1_Diff_Powder.instr.md) +- [Additional information](TAS1_Diff_Powder.md) - The McStas User manual - A. Abrahamsen, N. B. Christensen, and E. Lauridsen. McStas simulations of the TAS1 spectrometer. Student's report, Niels Bohr Institute, University of Copenhagen, 1998. diff --git a/mcstas-comps/examples/Risoe/TAS1_Diff_Slit/README.md b/mcstas-comps/examples/Risoe/TAS1_Diff_Slit/README.md index cb490ffd8..e85692b0f 100644 --- a/mcstas-comps/examples/Risoe/TAS1_Diff_Slit/README.md +++ b/mcstas-comps/examples/Risoe/TAS1_Diff_Slit/README.md @@ -40,7 +40,7 @@ Parameters in **boldface** are required; the others are optional. ## Links - [Source code](TAS1_Diff_Slit.instr) for `TAS1_Diff_Slit.instr`. -- [Additional information](TAS1_Diff_Slit.instr.md) +- [Additional information](TAS1_Diff_Slit.md) - The McStas User manual - A. Abrahamsen, N. B. Christensen, and E. Lauridsen. McStas simulations of the TAS1 spectrometer. Student's report, Niels Bohr Institute, University of Copenhagen, 1998. diff --git a/mcstas-comps/examples/Risoe/TAS1_Diff_Vana/README.md b/mcstas-comps/examples/Risoe/TAS1_Diff_Vana/README.md index 7c7586b67..6364eca5a 100644 --- a/mcstas-comps/examples/Risoe/TAS1_Diff_Vana/README.md +++ b/mcstas-comps/examples/Risoe/TAS1_Diff_Vana/README.md @@ -41,7 +41,7 @@ Parameters in **boldface** are required; the others are optional. ## Links - [Source code](TAS1_Diff_Vana.instr) for `TAS1_Diff_Vana.instr`. -- [Additional information](TAS1_Diff_Vana.instr.md) +- [Additional information](TAS1_Diff_Vana.md) - The McStas User manual - A. Abrahamsen, N. B. Christensen, and E. Lauridsen. McStas simulations of the TAS1 spectrometer. Student's report, Niels Bohr Institute, University of Copenhagen, 1998. diff --git a/mcstas-comps/examples/Risoe/TAS1_Powder/README.md b/mcstas-comps/examples/Risoe/TAS1_Powder/README.md index 3b9a71846..73691318f 100644 --- a/mcstas-comps/examples/Risoe/TAS1_Powder/README.md +++ b/mcstas-comps/examples/Risoe/TAS1_Powder/README.md @@ -40,7 +40,7 @@ Parameters in **boldface** are required; the others are optional. ## Links - [Source code](TAS1_Powder.instr) for `TAS1_Powder.instr`. -- [Additional information](TAS1_Powder.instr.md) +- [Additional information](TAS1_Powder.md) - The McStas User manual - A. Abrahamsen, N. B. Christensen, and E. Lauridsen. McStas simulations of the TAS1 spectrometer. Student's report, Niels Bohr Institute, University of Copenhagen, 1998. diff --git a/mcstas-comps/examples/Risoe/TAS1_Vana/README.md b/mcstas-comps/examples/Risoe/TAS1_Vana/README.md index 7aaa5dfa1..7680808d0 100644 --- a/mcstas-comps/examples/Risoe/TAS1_Vana/README.md +++ b/mcstas-comps/examples/Risoe/TAS1_Vana/README.md @@ -40,7 +40,7 @@ Parameters in **boldface** are required; the others are optional. ## Links - [Source code](TAS1_Vana.instr) for `TAS1_Vana.instr`. -- [Additional information](TAS1_Vana.instr.md) +- [Additional information](TAS1_Vana.md) - The McStas User manual - A. Abrahamsen, N. B. Christensen, and E. Lauridsen. McStas simulations of the TAS1 spectrometer. Student's report, Niels Bohr Institute, University of Copenhagen, 1998. diff --git a/mcstas-comps/examples/SINE2020/McStas_Isotropic_Sqw/README.md b/mcstas-comps/examples/SINE2020/McStas_Isotropic_Sqw/README.md index b722b2a97..113211b72 100644 --- a/mcstas-comps/examples/SINE2020/McStas_Isotropic_Sqw/README.md +++ b/mcstas-comps/examples/SINE2020/McStas_Isotropic_Sqw/README.md @@ -52,7 +52,7 @@ Parameters in **boldface** are required; the others are optional. ## Links - [Source code](McStas_Isotropic_Sqw.instr) for `McStas_Isotropic_Sqw.instr`. -- [Additional information](McStas_Isotropic_Sqw.instr.md) +- [Additional information](McStas_Isotropic_Sqw.md) - Website for the MCPL particle exchange format - Website for the SIMRES package - Website for WP8 in EU-SINE2020 diff --git a/mcstas-comps/examples/SINE2020/McStas_PowderN/README.md b/mcstas-comps/examples/SINE2020/McStas_PowderN/README.md index 167b43e6d..6443d8753 100644 --- a/mcstas-comps/examples/SINE2020/McStas_PowderN/README.md +++ b/mcstas-comps/examples/SINE2020/McStas_PowderN/README.md @@ -49,7 +49,7 @@ Parameters in **boldface** are required; the others are optional. ## Links - [Source code](McStas_PowderN.instr) for `McStas_PowderN.instr`. -- [Additional information](McStas_PowderN.instr.md) +- [Additional information](McStas_PowderN.md) - Website for the MCPL particle exchange format - Website for the SIMRES package - Website for WP8 in EU-SINE2020 diff --git a/mcstas-comps/examples/SINE2020/McStas_Single_crystal/README.md b/mcstas-comps/examples/SINE2020/McStas_Single_crystal/README.md index 2561a1742..26194fccb 100644 --- a/mcstas-comps/examples/SINE2020/McStas_Single_crystal/README.md +++ b/mcstas-comps/examples/SINE2020/McStas_Single_crystal/README.md @@ -49,7 +49,7 @@ Parameters in **boldface** are required; the others are optional. ## Links - [Source code](McStas_Single_crystal.instr) for `McStas_Single_crystal.instr`. -- [Additional information](McStas_Single_crystal.instr.md) +- [Additional information](McStas_Single_crystal.md) - Website for the MCPL particle exchange format - Website for the SIMRES package - Website for WP8 in EU-SINE2020 diff --git a/mcstas-comps/examples/SNS/Gallmeier_SNS_decoupled_poisoned/README.md b/mcstas-comps/examples/SNS/Gallmeier_SNS_decoupled_poisoned/README.md index 6f1b06275..040db61b3 100644 --- a/mcstas-comps/examples/SNS/Gallmeier_SNS_decoupled_poisoned/README.md +++ b/mcstas-comps/examples/SNS/Gallmeier_SNS_decoupled_poisoned/README.md @@ -28,7 +28,7 @@ Parameters in **boldface** are required; the others are optional. ## Links - [Source code](Gallmeier_SNS_decoupled_poisoned.instr) for `Gallmeier_SNS_decoupled_poisoned.instr`. -- [Additional information](Gallmeier_SNS_decoupled_poisoned.instr.md) +- [Additional information](Gallmeier_SNS_decoupled_poisoned.md) --- diff --git a/mcstas-comps/examples/SNS/Granroth_SNS_decoupled_poisoned/README.md b/mcstas-comps/examples/SNS/Granroth_SNS_decoupled_poisoned/README.md index b6d1bd877..20b6ac29a 100644 --- a/mcstas-comps/examples/SNS/Granroth_SNS_decoupled_poisoned/README.md +++ b/mcstas-comps/examples/SNS/Granroth_SNS_decoupled_poisoned/README.md @@ -28,7 +28,7 @@ Parameters in **boldface** are required; the others are optional. ## Links - [Source code](Granroth_SNS_decoupled_poisoned.instr) for `Granroth_SNS_decoupled_poisoned.instr`. -- [Additional information](Granroth_SNS_decoupled_poisoned.instr.md) +- [Additional information](Granroth_SNS_decoupled_poisoned.md) --- diff --git a/mcstas-comps/examples/SNS/Mezei_SNS_decoupled_poisoned/README.md b/mcstas-comps/examples/SNS/Mezei_SNS_decoupled_poisoned/README.md index 5b9667fd0..845efd4f5 100644 --- a/mcstas-comps/examples/SNS/Mezei_SNS_decoupled_poisoned/README.md +++ b/mcstas-comps/examples/SNS/Mezei_SNS_decoupled_poisoned/README.md @@ -29,7 +29,7 @@ Parameters in **boldface** are required; the others are optional. ## Links - [Source code](Mezei_SNS_decoupled_poisoned.instr) for `Mezei_SNS_decoupled_poisoned.instr`. -- [Additional information](Mezei_SNS_decoupled_poisoned.instr.md) +- [Additional information](Mezei_SNS_decoupled_poisoned.md) --- diff --git a/mcstas-comps/examples/SNS/SNS_ARCS/README.md b/mcstas-comps/examples/SNS/SNS_ARCS/README.md index 5b0f70993..d3583c855 100644 --- a/mcstas-comps/examples/SNS/SNS_ARCS/README.md +++ b/mcstas-comps/examples/SNS/SNS_ARCS/README.md @@ -45,7 +45,7 @@ Parameters in **boldface** are required; the others are optional. ## Links - [Source code](SNS_ARCS.instr) for `SNS_ARCS.instr`. -- [Additional information](SNS_ARCS.instr.md) +- [Additional information](SNS_ARCS.md) -
    Granroth, G. E. and Abernathy, D. L., "Performance Comparisons of Four Direct Geometry Spectrometers Planned for Spallation Neutron Source", Proceedings of ICANS-XVI, 289 (2003). -
    D. L. Abernathy, M. B. Stone, M. J. Loguillo, M. S. Lucas, O. Delaire, X.Tang, J. Y. Y. Lin, and B. Fultz,"Design and operation of the wide angular-range chopper spectrometer ARCS at the Spallation Neutron Source", Review of Scientific Instruments, 83 , 015114 (2012) diff --git a/mcstas-comps/examples/SNS/SNS_BASIS/README.md b/mcstas-comps/examples/SNS/SNS_BASIS/README.md index c38b709a1..7d4d9cd89 100644 --- a/mcstas-comps/examples/SNS/SNS_BASIS/README.md +++ b/mcstas-comps/examples/SNS/SNS_BASIS/README.md @@ -64,7 +64,7 @@ Parameters in **boldface** are required; the others are optional. ## Links - [Source code](SNS_BASIS.instr) for `SNS_BASIS.instr`. -- [Additional information](SNS_BASIS.instr.md) +- [Additional information](SNS_BASIS.md) - A reference/HTML link for more information --- diff --git a/mcstas-comps/examples/SNS/SNS_analytic_test/README.md b/mcstas-comps/examples/SNS/SNS_analytic_test/README.md index 1d70598cb..b4ba4fa42 100644 --- a/mcstas-comps/examples/SNS/SNS_analytic_test/README.md +++ b/mcstas-comps/examples/SNS/SNS_analytic_test/README.md @@ -27,7 +27,7 @@ Parameters in **boldface** are required; the others are optional. ## Links - [Source code](SNS_analytic_test.instr) for `SNS_analytic_test.instr`. -- [Additional information](SNS_analytic_test.instr.md) +- [Additional information](SNS_analytic_test.md) - Written by G. Granroth - SNS_source component - Source files diff --git a/mcstas-comps/examples/SNS/SNS_test/README.md b/mcstas-comps/examples/SNS/SNS_test/README.md index a91ee4c5a..7526691e2 100644 --- a/mcstas-comps/examples/SNS/SNS_test/README.md +++ b/mcstas-comps/examples/SNS/SNS_test/README.md @@ -27,7 +27,7 @@ Parameters in **boldface** are required; the others are optional. ## Links - [Source code](SNS_test.instr) for `SNS_test.instr`. -- [Additional information](SNS_test.instr.md) +- [Additional information](SNS_test.md) - Written by G. Granroth - SNS_source component - Source files diff --git a/mcstas-comps/examples/TRIGA/RTP_DIF/README.md b/mcstas-comps/examples/TRIGA/RTP_DIF/README.md index 79c35e58e..091eb43c4 100644 --- a/mcstas-comps/examples/TRIGA/RTP_DIF/README.md +++ b/mcstas-comps/examples/TRIGA/RTP_DIF/README.md @@ -30,7 +30,7 @@ Parameters in **boldface** are required; the others are optional. ## Links - [Source code](RTP_DIF.instr) for `RTP_DIF.instr`. -- [Additional information](RTP_DIF.instr.md) +- [Additional information](RTP_DIF.md) - Nuclear Malaysia - M. Sufi et al., J. AppL Cryst. (1997). 30, 884-888 [doi:10.1107/S0021889897001738] diff --git a/mcstas-comps/examples/TRIGA/RTP_Laue/README.md b/mcstas-comps/examples/TRIGA/RTP_Laue/README.md index abdd6d2dd..373974181 100644 --- a/mcstas-comps/examples/TRIGA/RTP_Laue/README.md +++ b/mcstas-comps/examples/TRIGA/RTP_Laue/README.md @@ -30,7 +30,7 @@ Parameters in **boldface** are required; the others are optional. ## Links - [Source code](RTP_Laue.instr) for `RTP_Laue.instr`. -- [Additional information](RTP_Laue.instr.md) +- [Additional information](RTP_Laue.md) - Nuclear Malaysia - M. Sufi et al., J. AppL Cryst. (1997). 30, 884-888 [doi:10.1107/S0021889897001738] diff --git a/mcstas-comps/examples/TRIGA/RTP_NeutronRadiography/README.md b/mcstas-comps/examples/TRIGA/RTP_NeutronRadiography/README.md index a98c4cb79..a1afdf304 100644 --- a/mcstas-comps/examples/TRIGA/RTP_NeutronRadiography/README.md +++ b/mcstas-comps/examples/TRIGA/RTP_NeutronRadiography/README.md @@ -29,7 +29,7 @@ Parameters in **boldface** are required; the others are optional. ## Links - [Source code](RTP_NeutronRadiography.instr) for `RTP_NeutronRadiography.instr`. -- [Additional information](RTP_NeutronRadiography.instr.md) +- [Additional information](RTP_NeutronRadiography.md) - Nuclear Malaysia - M. Sufi et al., J. AppL Cryst. (1997). 30, 884-888 [doi:10.1107/S0021889897001738] diff --git a/mcstas-comps/examples/TRIGA/RTP_SANS/README.md b/mcstas-comps/examples/TRIGA/RTP_SANS/README.md index 6b55335f8..ff555212b 100644 --- a/mcstas-comps/examples/TRIGA/RTP_SANS/README.md +++ b/mcstas-comps/examples/TRIGA/RTP_SANS/README.md @@ -43,7 +43,7 @@ Parameters in **boldface** are required; the others are optional. ## Links - [Source code](RTP_SANS.instr) for `RTP_SANS.instr`. -- [Additional information](RTP_SANS.instr.md) +- [Additional information](RTP_SANS.md) - Nuclear Malaysia - M. Sufi et al., J. AppL Cryst. (1997). 30, 884-888 [doi:10.1107/S0021889897001738] diff --git a/mcstas-comps/examples/TUDelft/SEMSANS_Delft/README.md b/mcstas-comps/examples/TUDelft/SEMSANS_Delft/README.md index 49e03c231..ba3bb58ed 100644 --- a/mcstas-comps/examples/TUDelft/SEMSANS_Delft/README.md +++ b/mcstas-comps/examples/TUDelft/SEMSANS_Delft/README.md @@ -40,7 +40,7 @@ Parameters in **boldface** are required; the others are optional. ## Links - [Source code](SEMSANS_Delft.instr) for `SEMSANS_Delft.instr`. -- [Additional information](SEMSANS_Delft.instr.md) +- [Additional information](SEMSANS_Delft.md) - - https://doi.org/10.1107/S1600576720015496 diff --git a/mcstas-comps/examples/TUDelft/SEMSANS_instrument/README.md b/mcstas-comps/examples/TUDelft/SEMSANS_instrument/README.md index c0e011f20..d953b10dc 100644 --- a/mcstas-comps/examples/TUDelft/SEMSANS_instrument/README.md +++ b/mcstas-comps/examples/TUDelft/SEMSANS_instrument/README.md @@ -63,7 +63,7 @@ Parameters in **boldface** are required; the others are optional. ## Links - [Source code](SEMSANS_instrument.instr) for `SEMSANS_instrument.instr`. -- [Additional information](SEMSANS_instrument.instr.md) +- [Additional information](SEMSANS_instrument.md) --- diff --git a/mcstas-comps/examples/TUDelft/SESANS_Delft/README.md b/mcstas-comps/examples/TUDelft/SESANS_Delft/README.md index 9bdca7a63..48ca14da7 100644 --- a/mcstas-comps/examples/TUDelft/SESANS_Delft/README.md +++ b/mcstas-comps/examples/TUDelft/SESANS_Delft/README.md @@ -39,7 +39,7 @@ Parameters in **boldface** are required; the others are optional. ## Links - [Source code](SESANS_Delft.instr) for `SESANS_Delft.instr`. -- [Additional information](SESANS_Delft.instr.md) +- [Additional information](SESANS_Delft.md) - - https://doi.org/10.1107/S1600576720015496 diff --git a/mcstas-comps/examples/Templates/BTsimple/README.md b/mcstas-comps/examples/Templates/BTsimple/README.md index 0daf7c784..03a3f0849 100644 --- a/mcstas-comps/examples/Templates/BTsimple/README.md +++ b/mcstas-comps/examples/Templates/BTsimple/README.md @@ -36,7 +36,7 @@ Parameters in **boldface** are required; the others are optional. ## Links - [Source code](BTsimple.instr) for `BTsimple.instr`. -- [Additional information](BTsimple.instr.md) +- [Additional information](BTsimple.md) --- diff --git a/mcstas-comps/examples/Templates/Demo_shape_primitives/README.md b/mcstas-comps/examples/Templates/Demo_shape_primitives/README.md index 0c991de32..e0e5db6a3 100644 --- a/mcstas-comps/examples/Templates/Demo_shape_primitives/README.md +++ b/mcstas-comps/examples/Templates/Demo_shape_primitives/README.md @@ -26,7 +26,7 @@ Parameters in **boldface** are required; the others are optional. ## Links - [Source code](Demo_shape_primitives.instr) for `Demo_shape_primitives.instr`. -- [Additional information](Demo_shape_primitives.instr.md) +- [Additional information](Demo_shape_primitives.md) --- diff --git a/mcstas-comps/examples/Templates/Demo_shape_primitives_simple/README.md b/mcstas-comps/examples/Templates/Demo_shape_primitives_simple/README.md index 883172534..0c44fa65e 100644 --- a/mcstas-comps/examples/Templates/Demo_shape_primitives_simple/README.md +++ b/mcstas-comps/examples/Templates/Demo_shape_primitives_simple/README.md @@ -26,7 +26,7 @@ Parameters in **boldface** are required; the others are optional. ## Links - [Source code](Demo_shape_primitives_simple.instr) for `Demo_shape_primitives_simple.instr`. -- [Additional information](Demo_shape_primitives_simple.instr.md) +- [Additional information](Demo_shape_primitives_simple.md) --- diff --git a/mcstas-comps/examples/Templates/TOF_Reflectometer/README.md b/mcstas-comps/examples/Templates/TOF_Reflectometer/README.md index 97ee15579..193237cad 100644 --- a/mcstas-comps/examples/Templates/TOF_Reflectometer/README.md +++ b/mcstas-comps/examples/Templates/TOF_Reflectometer/README.md @@ -41,7 +41,7 @@ Parameters in **boldface** are required; the others are optional. ## Links - [Source code](TOF_Reflectometer.instr) for `TOF_Reflectometer.instr`. -- [Additional information](TOF_Reflectometer.instr.md) +- [Additional information](TOF_Reflectometer.md) --- diff --git a/mcstas-comps/examples/Templates/Test_SasView_bcc_paracrystal_aniso/README.md b/mcstas-comps/examples/Templates/Test_SasView_bcc_paracrystal_aniso/README.md index 79b22a1be..6395bfd53 100644 --- a/mcstas-comps/examples/Templates/Test_SasView_bcc_paracrystal_aniso/README.md +++ b/mcstas-comps/examples/Templates/Test_SasView_bcc_paracrystal_aniso/README.md @@ -53,7 +53,7 @@ Parameters in **boldface** are required; the others are optional. ## Links - [Source code](Test_SasView_bcc_paracrystal_aniso.instr) for `Test_SasView_bcc_paracrystal_aniso.instr`. -- [Additional information](Test_SasView_bcc_paracrystal_aniso.instr.md) +- [Additional information](Test_SasView_bcc_paracrystal_aniso.md) --- diff --git a/mcstas-comps/examples/Templates/Test_SasView_guinier/README.md b/mcstas-comps/examples/Templates/Test_SasView_guinier/README.md index 4c70f0e50..a03eb058e 100644 --- a/mcstas-comps/examples/Templates/Test_SasView_guinier/README.md +++ b/mcstas-comps/examples/Templates/Test_SasView_guinier/README.md @@ -43,7 +43,7 @@ Parameters in **boldface** are required; the others are optional. ## Links - [Source code](Test_SasView_guinier.instr) for `Test_SasView_guinier.instr`. -- [Additional information](Test_SasView_guinier.instr.md) +- [Additional information](Test_SasView_guinier.md) --- diff --git a/mcstas-comps/examples/Templates/Tomography/README.md b/mcstas-comps/examples/Templates/Tomography/README.md index 43f346fe8..4d4ae82ab 100644 --- a/mcstas-comps/examples/Templates/Tomography/README.md +++ b/mcstas-comps/examples/Templates/Tomography/README.md @@ -44,7 +44,7 @@ Parameters in **boldface** are required; the others are optional. ## Links - [Source code](Tomography.instr) for `Tomography.instr`. -- [Additional information](Tomography.instr.md) +- [Additional information](Tomography.md) - http://shape.cs.princeton.edu/benchmark/documentation/off_format.html --- diff --git a/mcstas-comps/examples/Templates/mini/README.md b/mcstas-comps/examples/Templates/mini/README.md index 92f27279a..23e9dfaa9 100644 --- a/mcstas-comps/examples/Templates/mini/README.md +++ b/mcstas-comps/examples/Templates/mini/README.md @@ -26,7 +26,7 @@ Parameters in **boldface** are required; the others are optional. ## Links - [Source code](mini.instr) for `mini.instr`. -- [Additional information](mini.instr.md) +- [Additional information](mini.md) - A reference/HTML link for more information --- diff --git a/mcstas-comps/examples/Templates/template/README.md b/mcstas-comps/examples/Templates/template/README.md index 72c41dfa2..a3b759e4b 100644 --- a/mcstas-comps/examples/Templates/template/README.md +++ b/mcstas-comps/examples/Templates/template/README.md @@ -35,7 +35,7 @@ Parameters in **boldface** are required; the others are optional. ## Links - [Source code](template.instr) for `template.instr`. -- [Additional information](template.instr.md) +- [Additional information](template.md) - A reference/HTML link for more information --- diff --git a/mcstas-comps/examples/Templates/templateDIFF/README.md b/mcstas-comps/examples/Templates/templateDIFF/README.md index b7cbe8216..afcd746df 100644 --- a/mcstas-comps/examples/Templates/templateDIFF/README.md +++ b/mcstas-comps/examples/Templates/templateDIFF/README.md @@ -59,7 +59,7 @@ Parameters in **boldface** are required; the others are optional. ## Links - [Source code](templateDIFF.instr) for `templateDIFF.instr`. -- [Additional information](templateDIFF.instr.md) +- [Additional information](templateDIFF.md) --- diff --git a/mcstas-comps/examples/Templates/templateLaue/README.md b/mcstas-comps/examples/Templates/templateLaue/README.md index 4d8fa5445..cd3f0ddfc 100644 --- a/mcstas-comps/examples/Templates/templateLaue/README.md +++ b/mcstas-comps/examples/Templates/templateLaue/README.md @@ -27,7 +27,7 @@ Parameters in **boldface** are required; the others are optional. ## Links - [Source code](templateLaue.instr) for `templateLaue.instr`. -- [Additional information](templateLaue.instr.md) +- [Additional information](templateLaue.md) --- diff --git a/mcstas-comps/examples/Templates/templateNMX/README.md b/mcstas-comps/examples/Templates/templateNMX/README.md index 5911a9528..1530d0229 100644 --- a/mcstas-comps/examples/Templates/templateNMX/README.md +++ b/mcstas-comps/examples/Templates/templateNMX/README.md @@ -29,7 +29,7 @@ Parameters in **boldface** are required; the others are optional. ## Links - [Source code](templateNMX.instr) for `templateNMX.instr`. -- [Additional information](templateNMX.instr.md) +- [Additional information](templateNMX.md) --- diff --git a/mcstas-comps/examples/Templates/templateNMX_TOF/README.md b/mcstas-comps/examples/Templates/templateNMX_TOF/README.md index e9595cb4f..ae89d59e3 100644 --- a/mcstas-comps/examples/Templates/templateNMX_TOF/README.md +++ b/mcstas-comps/examples/Templates/templateNMX_TOF/README.md @@ -40,7 +40,7 @@ Parameters in **boldface** are required; the others are optional. ## Links - [Source code](templateNMX_TOF.instr) for `templateNMX_TOF.instr`. -- [Additional information](templateNMX_TOF.instr.md) +- [Additional information](templateNMX_TOF.md) --- diff --git a/mcstas-comps/examples/Templates/templateSANS/README.md b/mcstas-comps/examples/Templates/templateSANS/README.md index 53159ffaa..9ee951550 100644 --- a/mcstas-comps/examples/Templates/templateSANS/README.md +++ b/mcstas-comps/examples/Templates/templateSANS/README.md @@ -32,7 +32,7 @@ Parameters in **boldface** are required; the others are optional. ## Links - [Source code](templateSANS.instr) for `templateSANS.instr`. -- [Additional information](templateSANS.instr.md) +- [Additional information](templateSANS.md) --- diff --git a/mcstas-comps/examples/Templates/templateSANS2/README.md b/mcstas-comps/examples/Templates/templateSANS2/README.md index a06f6e5a5..501b0713f 100644 --- a/mcstas-comps/examples/Templates/templateSANS2/README.md +++ b/mcstas-comps/examples/Templates/templateSANS2/README.md @@ -33,7 +33,7 @@ Parameters in **boldface** are required; the others are optional. ## Links - [Source code](templateSANS2.instr) for `templateSANS2.instr`. -- [Additional information](templateSANS2.instr.md) +- [Additional information](templateSANS2.md) --- diff --git a/mcstas-comps/examples/Templates/templateSANS_MCPL/README.md b/mcstas-comps/examples/Templates/templateSANS_MCPL/README.md index e01e98631..0abf7ae7c 100644 --- a/mcstas-comps/examples/Templates/templateSANS_MCPL/README.md +++ b/mcstas-comps/examples/Templates/templateSANS_MCPL/README.md @@ -35,7 +35,7 @@ Parameters in **boldface** are required; the others are optional. ## Links - [Source code](templateSANS_MCPL.instr) for `templateSANS_MCPL.instr`. -- [Additional information](templateSANS_MCPL.instr.md) +- [Additional information](templateSANS_MCPL.md) --- diff --git a/mcstas-comps/examples/Templates/templateSasView/README.md b/mcstas-comps/examples/Templates/templateSasView/README.md index 91e6afbc8..13044a2c0 100644 --- a/mcstas-comps/examples/Templates/templateSasView/README.md +++ b/mcstas-comps/examples/Templates/templateSasView/README.md @@ -42,7 +42,7 @@ Parameters in **boldface** are required; the others are optional. ## Links - [Source code](templateSasView.instr) for `templateSasView.instr`. -- [Additional information](templateSasView.instr.md) +- [Additional information](templateSasView.md) --- diff --git a/mcstas-comps/examples/Templates/templateTAS/README.md b/mcstas-comps/examples/Templates/templateTAS/README.md index 4809068bf..233f0d309 100644 --- a/mcstas-comps/examples/Templates/templateTAS/README.md +++ b/mcstas-comps/examples/Templates/templateTAS/README.md @@ -128,7 +128,7 @@ Parameters in **boldface** are required; the others are optional. ## Links - [Source code](templateTAS.instr) for `templateTAS.instr`. -- [Additional information](templateTAS.instr.md) +- [Additional information](templateTAS.md) - Rescal for Matlab at http://www.ill.eu/instruments-support/computing-for-science/cs-software/all-software/matlab-ill/ - Restrax at http://omega.ujf.cas.cz/restrax/ diff --git a/mcstas-comps/examples/Templates/templateTOF/README.md b/mcstas-comps/examples/Templates/templateTOF/README.md index 0dbbe8ad7..82e66ff94 100644 --- a/mcstas-comps/examples/Templates/templateTOF/README.md +++ b/mcstas-comps/examples/Templates/templateTOF/README.md @@ -45,7 +45,7 @@ Parameters in **boldface** are required; the others are optional. ## Links - [Source code](templateTOF.instr) for `templateTOF.instr`. -- [Additional information](templateTOF.instr.md) +- [Additional information](templateTOF.md) - The Isotropic_Sqw sample - The Samples_Isotropic_Sqw example instrument diff --git a/mcstas-comps/examples/Templates/template_simple/README.md b/mcstas-comps/examples/Templates/template_simple/README.md index 2df90960a..26a193906 100644 --- a/mcstas-comps/examples/Templates/template_simple/README.md +++ b/mcstas-comps/examples/Templates/template_simple/README.md @@ -28,7 +28,7 @@ Parameters in **boldface** are required; the others are optional. ## Links - [Source code](template_simple.instr) for `template_simple.instr`. -- [Additional information](template_simple.instr.md) +- [Additional information](template_simple.md) - --- diff --git a/mcstas-comps/examples/Tests_MCPL_etc/Test_MCPL_input/README.md b/mcstas-comps/examples/Tests_MCPL_etc/Test_MCPL_input/README.md index 3c71d24b2..233e7e799 100644 --- a/mcstas-comps/examples/Tests_MCPL_etc/Test_MCPL_input/README.md +++ b/mcstas-comps/examples/Tests_MCPL_etc/Test_MCPL_input/README.md @@ -30,7 +30,7 @@ Parameters in **boldface** are required; the others are optional. ## Links - [Source code](Test_MCPL_input.instr) for `Test_MCPL_input.instr`. -- [Additional information](Test_MCPL_input.instr.md) +- [Additional information](Test_MCPL_input.md) --- diff --git a/mcstas-comps/examples/Tests_MCPL_etc/Test_MCPL_input_once/README.md b/mcstas-comps/examples/Tests_MCPL_etc/Test_MCPL_input_once/README.md index 4a00828b5..a7444568a 100644 --- a/mcstas-comps/examples/Tests_MCPL_etc/Test_MCPL_input_once/README.md +++ b/mcstas-comps/examples/Tests_MCPL_etc/Test_MCPL_input_once/README.md @@ -31,7 +31,7 @@ Parameters in **boldface** are required; the others are optional. ## Links - [Source code](Test_MCPL_input_once.instr) for `Test_MCPL_input_once.instr`. -- [Additional information](Test_MCPL_input_once.instr.md) +- [Additional information](Test_MCPL_input_once.md) --- diff --git a/mcstas-comps/examples/Tests_MCPL_etc/Test_MCPL_output/README.md b/mcstas-comps/examples/Tests_MCPL_etc/Test_MCPL_output/README.md index cdf7f0685..acc1e2c4a 100644 --- a/mcstas-comps/examples/Tests_MCPL_etc/Test_MCPL_output/README.md +++ b/mcstas-comps/examples/Tests_MCPL_etc/Test_MCPL_output/README.md @@ -26,7 +26,7 @@ Parameters in **boldface** are required; the others are optional. ## Links - [Source code](Test_MCPL_output.instr) for `Test_MCPL_output.instr`. -- [Additional information](Test_MCPL_output.instr.md) +- [Additional information](Test_MCPL_output.md) --- diff --git a/mcstas-comps/examples/Tests_RNG/Test_RNG_rand01/README.md b/mcstas-comps/examples/Tests_RNG/Test_RNG_rand01/README.md index 5399fa9a2..db883bfa9 100644 --- a/mcstas-comps/examples/Tests_RNG/Test_RNG_rand01/README.md +++ b/mcstas-comps/examples/Tests_RNG/Test_RNG_rand01/README.md @@ -33,7 +33,7 @@ Parameters in **boldface** are required; the others are optional. ## Links - [Source code](Test_RNG_rand01.instr) for `Test_RNG_rand01.instr`. -- [Additional information](Test_RNG_rand01.instr.md) +- [Additional information](Test_RNG_rand01.md) - --- diff --git a/mcstas-comps/examples/Tests_RNG/Test_RNG_randnorm/README.md b/mcstas-comps/examples/Tests_RNG/Test_RNG_randnorm/README.md index 6264ea3ee..4f2a682a1 100644 --- a/mcstas-comps/examples/Tests_RNG/Test_RNG_randnorm/README.md +++ b/mcstas-comps/examples/Tests_RNG/Test_RNG_randnorm/README.md @@ -33,7 +33,7 @@ Parameters in **boldface** are required; the others are optional. ## Links - [Source code](Test_RNG_randnorm.instr) for `Test_RNG_randnorm.instr`. -- [Additional information](Test_RNG_randnorm.instr.md) +- [Additional information](Test_RNG_randnorm.md) - --- diff --git a/mcstas-comps/examples/Tests_RNG/Test_RNG_randpm1/README.md b/mcstas-comps/examples/Tests_RNG/Test_RNG_randpm1/README.md index e6547c91a..34ad029eb 100644 --- a/mcstas-comps/examples/Tests_RNG/Test_RNG_randpm1/README.md +++ b/mcstas-comps/examples/Tests_RNG/Test_RNG_randpm1/README.md @@ -33,7 +33,7 @@ Parameters in **boldface** are required; the others are optional. ## Links - [Source code](Test_RNG_randpm1.instr) for `Test_RNG_randpm1.instr`. -- [Additional information](Test_RNG_randpm1.instr.md) +- [Additional information](Test_RNG_randpm1.md) - --- diff --git a/mcstas-comps/examples/Tests_RNG/Test_RNG_randtriangle/README.md b/mcstas-comps/examples/Tests_RNG/Test_RNG_randtriangle/README.md index 25511577f..7a2b1818c 100644 --- a/mcstas-comps/examples/Tests_RNG/Test_RNG_randtriangle/README.md +++ b/mcstas-comps/examples/Tests_RNG/Test_RNG_randtriangle/README.md @@ -33,7 +33,7 @@ Parameters in **boldface** are required; the others are optional. ## Links - [Source code](Test_RNG_randtriangle.instr) for `Test_RNG_randtriangle.instr`. -- [Additional information](Test_RNG_randtriangle.instr.md) +- [Additional information](Test_RNG_randtriangle.md) - --- diff --git a/mcstas-comps/examples/Tests_RNG/Test_RNG_randvec_target_circle/README.md b/mcstas-comps/examples/Tests_RNG/Test_RNG_randvec_target_circle/README.md index 231ffcc43..1b5f5ed6d 100644 --- a/mcstas-comps/examples/Tests_RNG/Test_RNG_randvec_target_circle/README.md +++ b/mcstas-comps/examples/Tests_RNG/Test_RNG_randvec_target_circle/README.md @@ -34,7 +34,7 @@ Parameters in **boldface** are required; the others are optional. ## Links - [Source code](Test_RNG_randvec_target_circle.instr) for `Test_RNG_randvec_target_circle.instr`. -- [Additional information](Test_RNG_randvec_target_circle.instr.md) +- [Additional information](Test_RNG_randvec_target_circle.md) - --- diff --git a/mcstas-comps/examples/Tests_RNG/Test_RNG_randvec_target_rect/README.md b/mcstas-comps/examples/Tests_RNG/Test_RNG_randvec_target_rect/README.md index c94bdaa68..92c799ffc 100644 --- a/mcstas-comps/examples/Tests_RNG/Test_RNG_randvec_target_rect/README.md +++ b/mcstas-comps/examples/Tests_RNG/Test_RNG_randvec_target_rect/README.md @@ -34,7 +34,7 @@ Parameters in **boldface** are required; the others are optional. ## Links - [Source code](Test_RNG_randvec_target_rect.instr) for `Test_RNG_randvec_target_rect.instr`. -- [Additional information](Test_RNG_randvec_target_rect.instr.md) +- [Additional information](Test_RNG_randvec_target_rect.md) - --- diff --git a/mcstas-comps/examples/Tests_RNG/Test_RNG_randvec_target_rect_angular/README.md b/mcstas-comps/examples/Tests_RNG/Test_RNG_randvec_target_rect_angular/README.md index b2a982c28..a019602e3 100644 --- a/mcstas-comps/examples/Tests_RNG/Test_RNG_randvec_target_rect_angular/README.md +++ b/mcstas-comps/examples/Tests_RNG/Test_RNG_randvec_target_rect_angular/README.md @@ -34,7 +34,7 @@ Parameters in **boldface** are required; the others are optional. ## Links - [Source code](Test_RNG_randvec_target_rect_angular.instr) for `Test_RNG_randvec_target_rect_angular.instr`. -- [Additional information](Test_RNG_randvec_target_rect_angular.instr.md) +- [Additional information](Test_RNG_randvec_target_rect_angular.md) - --- diff --git a/mcstas-comps/examples/Tests_grammar/README.md b/mcstas-comps/examples/Tests_grammar/README.md index 808bb46e2..596527e50 100644 --- a/mcstas-comps/examples/Tests_grammar/README.md +++ b/mcstas-comps/examples/Tests_grammar/README.md @@ -33,7 +33,7 @@ Parameters in **boldface** are required; the others are optional. ## Links - [Source code](Test_GROUP_restore.instr) for `Test_GROUP_restore.instr`. -- [Additional information](Test_GROUP_restore.instr.md) +- [Additional information](Test_GROUP_restore.md) - A reference/HTML link for more information --- diff --git a/mcstas-comps/examples/Tests_grammar/Test_GROUP/README.md b/mcstas-comps/examples/Tests_grammar/Test_GROUP/README.md index 3c993e47d..a5c8238cf 100644 --- a/mcstas-comps/examples/Tests_grammar/Test_GROUP/README.md +++ b/mcstas-comps/examples/Tests_grammar/Test_GROUP/README.md @@ -27,7 +27,7 @@ Parameters in **boldface** are required; the others are optional. ## Links - [Source code](Test_GROUP.instr) for `Test_GROUP.instr`. -- [Additional information](Test_GROUP.instr.md) +- [Additional information](Test_GROUP.md) --- diff --git a/mcstas-comps/examples/Tests_grammar/Test_Jump_Iterate/README.md b/mcstas-comps/examples/Tests_grammar/Test_Jump_Iterate/README.md index 2bd1f4db9..30ee1a216 100644 --- a/mcstas-comps/examples/Tests_grammar/Test_Jump_Iterate/README.md +++ b/mcstas-comps/examples/Tests_grammar/Test_Jump_Iterate/README.md @@ -31,7 +31,7 @@ Parameters in **boldface** are required; the others are optional. ## Links - [Source code](Test_Jump_Iterate.instr) for `Test_Jump_Iterate.instr`. -- [Additional information](Test_Jump_Iterate.instr.md) +- [Additional information](Test_Jump_Iterate.md) --- diff --git a/mcstas-comps/examples/Tests_grammar/Unittest_ALLOW_BACKPROP/README.md b/mcstas-comps/examples/Tests_grammar/Unittest_ALLOW_BACKPROP/README.md index 171e7f7ec..33d4f72e1 100644 --- a/mcstas-comps/examples/Tests_grammar/Unittest_ALLOW_BACKPROP/README.md +++ b/mcstas-comps/examples/Tests_grammar/Unittest_ALLOW_BACKPROP/README.md @@ -32,7 +32,7 @@ Parameters in **boldface** are required; the others are optional. ## Links - [Source code](Unittest_ALLOW_BACKPROP.instr) for `Unittest_ALLOW_BACKPROP.instr`. -- [Additional information](Unittest_ALLOW_BACKPROP.instr.md) +- [Additional information](Unittest_ALLOW_BACKPROP.md) - A reference/HTML link for more information --- diff --git a/mcstas-comps/examples/Tests_grammar/Unittest_JUMP_ITERATE/README.md b/mcstas-comps/examples/Tests_grammar/Unittest_JUMP_ITERATE/README.md index 4a10e8b83..50dcfeebf 100644 --- a/mcstas-comps/examples/Tests_grammar/Unittest_JUMP_ITERATE/README.md +++ b/mcstas-comps/examples/Tests_grammar/Unittest_JUMP_ITERATE/README.md @@ -31,7 +31,7 @@ Parameters in **boldface** are required; the others are optional. ## Links - [Source code](Unittest_JUMP_ITERATE.instr) for `Unittest_JUMP_ITERATE.instr`. -- [Additional information](Unittest_JUMP_ITERATE.instr.md) +- [Additional information](Unittest_JUMP_ITERATE.md) - --- diff --git a/mcstas-comps/examples/Tests_grammar/Unittest_JUMP_WHEN/README.md b/mcstas-comps/examples/Tests_grammar/Unittest_JUMP_WHEN/README.md index 145e7df7e..e9a86f6de 100644 --- a/mcstas-comps/examples/Tests_grammar/Unittest_JUMP_WHEN/README.md +++ b/mcstas-comps/examples/Tests_grammar/Unittest_JUMP_WHEN/README.md @@ -31,7 +31,7 @@ Parameters in **boldface** are required; the others are optional. ## Links - [Source code](Unittest_JUMP_WHEN.instr) for `Unittest_JUMP_WHEN.instr`. -- [Additional information](Unittest_JUMP_WHEN.instr.md) +- [Additional information](Unittest_JUMP_WHEN.md) - --- diff --git a/mcstas-comps/examples/Tests_grammar/Unittest_SPLIT/README.md b/mcstas-comps/examples/Tests_grammar/Unittest_SPLIT/README.md index 945e54cde..e5deb847f 100644 --- a/mcstas-comps/examples/Tests_grammar/Unittest_SPLIT/README.md +++ b/mcstas-comps/examples/Tests_grammar/Unittest_SPLIT/README.md @@ -29,7 +29,7 @@ Parameters in **boldface** are required; the others are optional. ## Links - [Source code](Unittest_SPLIT.instr) for `Unittest_SPLIT.instr`. -- [Additional information](Unittest_SPLIT.instr.md) +- [Additional information](Unittest_SPLIT.md) - --- diff --git a/mcstas-comps/examples/Tests_grammar/Unittest_SPLIT_sample/README.md b/mcstas-comps/examples/Tests_grammar/Unittest_SPLIT_sample/README.md index 349a3e34d..81956f273 100644 --- a/mcstas-comps/examples/Tests_grammar/Unittest_SPLIT_sample/README.md +++ b/mcstas-comps/examples/Tests_grammar/Unittest_SPLIT_sample/README.md @@ -30,7 +30,7 @@ Parameters in **boldface** are required; the others are optional. ## Links - [Source code](Unittest_SPLIT_sample.instr) for `Unittest_SPLIT_sample.instr`. -- [Additional information](Unittest_SPLIT_sample.instr.md) +- [Additional information](Unittest_SPLIT_sample.md) - --- diff --git a/mcstas-comps/examples/Tests_monitors/Test_Cyl_monitors/README.md b/mcstas-comps/examples/Tests_monitors/Test_Cyl_monitors/README.md index 581b5a418..a7b9500e8 100644 --- a/mcstas-comps/examples/Tests_monitors/Test_Cyl_monitors/README.md +++ b/mcstas-comps/examples/Tests_monitors/Test_Cyl_monitors/README.md @@ -37,7 +37,7 @@ Parameters in **boldface** are required; the others are optional. ## Links - [Source code](Test_Cyl_monitors.instr) for `Test_Cyl_monitors.instr`. -- [Additional information](Test_Cyl_monitors.instr.md) +- [Additional information](Test_Cyl_monitors.md) --- diff --git a/mcstas-comps/examples/Tests_monitors/Test_Monitor_nD/README.md b/mcstas-comps/examples/Tests_monitors/Test_Monitor_nD/README.md index d0e117aea..6c3233175 100644 --- a/mcstas-comps/examples/Tests_monitors/Test_Monitor_nD/README.md +++ b/mcstas-comps/examples/Tests_monitors/Test_Monitor_nD/README.md @@ -32,7 +32,7 @@ Parameters in **boldface** are required; the others are optional. ## Links - [Source code](Test_Monitor_nD.instr) for `Test_Monitor_nD.instr`. -- [Additional information](Test_Monitor_nD.instr.md) +- [Additional information](Test_Monitor_nD.md) --- diff --git a/mcstas-comps/examples/Tests_monitors/Test_TOF_PSDmonitor_toQ/README.md b/mcstas-comps/examples/Tests_monitors/Test_TOF_PSDmonitor_toQ/README.md index 815ba7a0d..0f89a7af4 100644 --- a/mcstas-comps/examples/Tests_monitors/Test_TOF_PSDmonitor_toQ/README.md +++ b/mcstas-comps/examples/Tests_monitors/Test_TOF_PSDmonitor_toQ/README.md @@ -29,7 +29,7 @@ Parameters in **boldface** are required; the others are optional. ## Links - [Source code](Test_TOF_PSDmonitor_toQ.instr) for `Test_TOF_PSDmonitor_toQ.instr`. -- [Additional information](Test_TOF_PSDmonitor_toQ.instr.md) +- [Additional information](Test_TOF_PSDmonitor_toQ.md) - --- diff --git a/mcstas-comps/examples/Tests_optics/Test_Al_windows/README.md b/mcstas-comps/examples/Tests_optics/Test_Al_windows/README.md index 441567905..c11a207da 100644 --- a/mcstas-comps/examples/Tests_optics/Test_Al_windows/README.md +++ b/mcstas-comps/examples/Tests_optics/Test_Al_windows/README.md @@ -38,7 +38,7 @@ Parameters in **boldface** are required; the others are optional. ## Links - [Source code](Test_Al_windows.instr) for `Test_Al_windows.instr`. -- [Additional information](Test_Al_windows.instr.md) +- [Additional information](Test_Al_windows.md) - --- diff --git a/mcstas-comps/examples/Tests_optics/Test_Collimator_Radial/README.md b/mcstas-comps/examples/Tests_optics/Test_Collimator_Radial/README.md index afa70d686..4f097fc35 100644 --- a/mcstas-comps/examples/Tests_optics/Test_Collimator_Radial/README.md +++ b/mcstas-comps/examples/Tests_optics/Test_Collimator_Radial/README.md @@ -30,7 +30,7 @@ Parameters in **boldface** are required; the others are optional. ## Links - [Source code](Test_Collimator_Radial.instr) for `Test_Collimator_Radial.instr`. -- [Additional information](Test_Collimator_Radial.instr.md) +- [Additional information](Test_Collimator_Radial.md) --- diff --git a/mcstas-comps/examples/Tests_optics/Test_Conics_pairs/README.md b/mcstas-comps/examples/Tests_optics/Test_Conics_pairs/README.md index 3d53f16e4..b7e5b47e2 100644 --- a/mcstas-comps/examples/Tests_optics/Test_Conics_pairs/README.md +++ b/mcstas-comps/examples/Tests_optics/Test_Conics_pairs/README.md @@ -36,7 +36,7 @@ Parameters in **boldface** are required; the others are optional. ## Links - [Source code](Test_Conics_pairs.instr) for `Test_Conics_pairs.instr`. -- [Additional information](Test_Conics_pairs.instr.md) +- [Additional information](Test_Conics_pairs.md) - --- diff --git a/mcstas-comps/examples/Tests_optics/Test_DiskChoppers/README.md b/mcstas-comps/examples/Tests_optics/Test_DiskChoppers/README.md index 5815710fe..6030576c6 100644 --- a/mcstas-comps/examples/Tests_optics/Test_DiskChoppers/README.md +++ b/mcstas-comps/examples/Tests_optics/Test_DiskChoppers/README.md @@ -29,7 +29,7 @@ Parameters in **boldface** are required; the others are optional. ## Links - [Source code](Test_DiskChoppers.instr) for `Test_DiskChoppers.instr`. -- [Additional information](Test_DiskChoppers.instr.md) +- [Additional information](Test_DiskChoppers.md) --- diff --git a/mcstas-comps/examples/Tests_optics/Test_DiskChoppers2/README.md b/mcstas-comps/examples/Tests_optics/Test_DiskChoppers2/README.md index 60b9197de..1c8255b78 100644 --- a/mcstas-comps/examples/Tests_optics/Test_DiskChoppers2/README.md +++ b/mcstas-comps/examples/Tests_optics/Test_DiskChoppers2/README.md @@ -35,7 +35,7 @@ Parameters in **boldface** are required; the others are optional. ## Links - [Source code](Test_DiskChoppers2.instr) for `Test_DiskChoppers2.instr`. -- [Additional information](Test_DiskChoppers2.instr.md) +- [Additional information](Test_DiskChoppers2.md) --- diff --git a/mcstas-comps/examples/Tests_optics/Test_Fermi/README.md b/mcstas-comps/examples/Tests_optics/Test_Fermi/README.md index f4898c772..2ed7de66a 100644 --- a/mcstas-comps/examples/Tests_optics/Test_Fermi/README.md +++ b/mcstas-comps/examples/Tests_optics/Test_Fermi/README.md @@ -40,7 +40,7 @@ Parameters in **boldface** are required; the others are optional. ## Links - [Source code](Test_Fermi.instr) for `Test_Fermi.instr`. -- [Additional information](Test_Fermi.instr.md) +- [Additional information](Test_Fermi.md) --- diff --git a/mcstas-comps/examples/Tests_optics/Test_FocalisationMirrors/README.md b/mcstas-comps/examples/Tests_optics/Test_FocalisationMirrors/README.md index 030e6f0b9..2671925df 100644 --- a/mcstas-comps/examples/Tests_optics/Test_FocalisationMirrors/README.md +++ b/mcstas-comps/examples/Tests_optics/Test_FocalisationMirrors/README.md @@ -38,7 +38,7 @@ Parameters in **boldface** are required; the others are optional. ## Links - [Source code](Test_FocalisationMirrors.instr) for `Test_FocalisationMirrors.instr`. -- [Additional information](Test_FocalisationMirrors.instr.md) +- [Additional information](Test_FocalisationMirrors.md) --- diff --git a/mcstas-comps/examples/Tests_optics/Test_Guides/README.md b/mcstas-comps/examples/Tests_optics/Test_Guides/README.md index a1836dec0..13746c671 100644 --- a/mcstas-comps/examples/Tests_optics/Test_Guides/README.md +++ b/mcstas-comps/examples/Tests_optics/Test_Guides/README.md @@ -28,7 +28,7 @@ Parameters in **boldface** are required; the others are optional. ## Links - [Source code](Test_Guides.instr) for `Test_Guides.instr`. -- [Additional information](Test_Guides.instr.md) +- [Additional information](Test_Guides.md) --- diff --git a/mcstas-comps/examples/Tests_optics/Test_Guides_Curved/README.md b/mcstas-comps/examples/Tests_optics/Test_Guides_Curved/README.md index 773a3daf8..6c6800f11 100644 --- a/mcstas-comps/examples/Tests_optics/Test_Guides_Curved/README.md +++ b/mcstas-comps/examples/Tests_optics/Test_Guides_Curved/README.md @@ -29,7 +29,7 @@ Parameters in **boldface** are required; the others are optional. ## Links - [Source code](Test_Guides_Curved.instr) for `Test_Guides_Curved.instr`. -- [Additional information](Test_Guides_Curved.instr.md) +- [Additional information](Test_Guides_Curved.md) --- diff --git a/mcstas-comps/examples/Tests_optics/Test_Lens/README.md b/mcstas-comps/examples/Tests_optics/Test_Lens/README.md index af11b0c63..f9a8c3e06 100644 --- a/mcstas-comps/examples/Tests_optics/Test_Lens/README.md +++ b/mcstas-comps/examples/Tests_optics/Test_Lens/README.md @@ -29,7 +29,7 @@ Parameters in **boldface** are required; the others are optional. ## Links - [Source code](Test_Lens.instr) for `Test_Lens.instr`. -- [Additional information](Test_Lens.instr.md) +- [Additional information](Test_Lens.md) --- diff --git a/mcstas-comps/examples/Tests_optics/Test_Monochromator_bent/README.md b/mcstas-comps/examples/Tests_optics/Test_Monochromator_bent/README.md index 2197ccfba..fb1ae02db 100644 --- a/mcstas-comps/examples/Tests_optics/Test_Monochromator_bent/README.md +++ b/mcstas-comps/examples/Tests_optics/Test_Monochromator_bent/README.md @@ -27,7 +27,7 @@ Parameters in **boldface** are required; the others are optional. ## Links - [Source code](Test_Monochromator_bent.instr) for `Test_Monochromator_bent.instr`. -- [Additional information](Test_Monochromator_bent.instr.md) +- [Additional information](Test_Monochromator_bent.md) --- diff --git a/mcstas-comps/examples/Tests_optics/Test_Monochromator_bent_complex/README.md b/mcstas-comps/examples/Tests_optics/Test_Monochromator_bent_complex/README.md index e80ebba66..45ea6ec71 100644 --- a/mcstas-comps/examples/Tests_optics/Test_Monochromator_bent_complex/README.md +++ b/mcstas-comps/examples/Tests_optics/Test_Monochromator_bent_complex/README.md @@ -37,7 +37,7 @@ Parameters in **boldface** are required; the others are optional. ## Links - [Source code](Test_Monochromator_bent_complex.instr) for `Test_Monochromator_bent_complex.instr`. -- [Additional information](Test_Monochromator_bent_complex.instr.md) +- [Additional information](Test_Monochromator_bent_complex.md) --- diff --git a/mcstas-comps/examples/Tests_optics/Test_Monochromators/README.md b/mcstas-comps/examples/Tests_optics/Test_Monochromators/README.md index 41015983e..c70f18fa8 100644 --- a/mcstas-comps/examples/Tests_optics/Test_Monochromators/README.md +++ b/mcstas-comps/examples/Tests_optics/Test_Monochromators/README.md @@ -51,7 +51,7 @@ Parameters in **boldface** are required; the others are optional. ## Links - [Source code](Test_Monochromators.instr) for `Test_Monochromators.instr`. -- [Additional information](Test_Monochromators.instr.md) +- [Additional information](Test_Monochromators.md) --- diff --git a/mcstas-comps/examples/Tests_optics/Test_NMO/README.md b/mcstas-comps/examples/Tests_optics/Test_NMO/README.md index 62048f9d8..792c3b915 100644 --- a/mcstas-comps/examples/Tests_optics/Test_NMO/README.md +++ b/mcstas-comps/examples/Tests_optics/Test_NMO/README.md @@ -47,7 +47,7 @@ Parameters in **boldface** are required; the others are optional. ## Links - [Source code](Test_NMO.instr) for `Test_NMO.instr`. -- [Additional information](Test_NMO.instr.md) +- [Additional information](Test_NMO.md) - P Böni presentation at PSI NFO workshop - Christoph Herb et al., Nucl. Instrum. Meth. A 1040, 1671564 (1-18) 2022. diff --git a/mcstas-comps/examples/Tests_optics/Test_PSD_Detector/README.md b/mcstas-comps/examples/Tests_optics/Test_PSD_Detector/README.md index 5e51e649c..4569c72f8 100644 --- a/mcstas-comps/examples/Tests_optics/Test_PSD_Detector/README.md +++ b/mcstas-comps/examples/Tests_optics/Test_PSD_Detector/README.md @@ -27,7 +27,7 @@ Parameters in **boldface** are required; the others are optional. ## Links - [Source code](Test_PSD_Detector.instr) for `Test_PSD_Detector.instr`. -- [Additional information](Test_PSD_Detector.instr.md) +- [Additional information](Test_PSD_Detector.md) - The PSD_Detector component --- diff --git a/mcstas-comps/examples/Tests_optics/Test_Pol_Bender_Vs_Guide_Curved/README.md b/mcstas-comps/examples/Tests_optics/Test_Pol_Bender_Vs_Guide_Curved/README.md index d1ab0f568..82ca57886 100644 --- a/mcstas-comps/examples/Tests_optics/Test_Pol_Bender_Vs_Guide_Curved/README.md +++ b/mcstas-comps/examples/Tests_optics/Test_Pol_Bender_Vs_Guide_Curved/README.md @@ -30,7 +30,7 @@ Parameters in **boldface** are required; the others are optional. ## Links - [Source code](Test_Pol_Bender_Vs_Guide_Curved.instr) for `Test_Pol_Bender_Vs_Guide_Curved.instr`. -- [Additional information](Test_Pol_Bender_Vs_Guide_Curved.instr.md) +- [Additional information](Test_Pol_Bender_Vs_Guide_Curved.md) - A reference/HTML link for more information --- diff --git a/mcstas-comps/examples/Tests_optics/Test_Rotator/README.md b/mcstas-comps/examples/Tests_optics/Test_Rotator/README.md index 6d61f5383..d12498069 100644 --- a/mcstas-comps/examples/Tests_optics/Test_Rotator/README.md +++ b/mcstas-comps/examples/Tests_optics/Test_Rotator/README.md @@ -30,7 +30,7 @@ Parameters in **boldface** are required; the others are optional. ## Links - [Source code](Test_Rotator.instr) for `Test_Rotator.instr`. -- [Additional information](Test_Rotator.instr.md) +- [Additional information](Test_Rotator.md) - A reference/HTML link for more information --- diff --git a/mcstas-comps/examples/Tests_optics/Test_Selectors/README.md b/mcstas-comps/examples/Tests_optics/Test_Selectors/README.md index 37dda5c30..70e784d00 100644 --- a/mcstas-comps/examples/Tests_optics/Test_Selectors/README.md +++ b/mcstas-comps/examples/Tests_optics/Test_Selectors/README.md @@ -30,7 +30,7 @@ Parameters in **boldface** are required; the others are optional. ## Links - [Source code](Test_Selectors.instr) for `Test_Selectors.instr`. -- [Additional information](Test_Selectors.instr.md) +- [Additional information](Test_Selectors.md) --- diff --git a/mcstas-comps/examples/Tests_optics/Test_Source_pulsed/README.md b/mcstas-comps/examples/Tests_optics/Test_Source_pulsed/README.md index 8a4509cc3..5e5d29c07 100644 --- a/mcstas-comps/examples/Tests_optics/Test_Source_pulsed/README.md +++ b/mcstas-comps/examples/Tests_optics/Test_Source_pulsed/README.md @@ -28,7 +28,7 @@ Parameters in **boldface** are required; the others are optional. ## Links - [Source code](Test_Source_pulsed.instr) for `Test_Source_pulsed.instr`. -- [Additional information](Test_Source_pulsed.instr.md) +- [Additional information](Test_Source_pulsed.md) --- diff --git a/mcstas-comps/examples/Tests_optics/Test_Sources/README.md b/mcstas-comps/examples/Tests_optics/Test_Sources/README.md index 969060f23..b77c33ed1 100644 --- a/mcstas-comps/examples/Tests_optics/Test_Sources/README.md +++ b/mcstas-comps/examples/Tests_optics/Test_Sources/README.md @@ -35,7 +35,7 @@ Parameters in **boldface** are required; the others are optional. ## Links - [Source code](Test_Sources.instr) for `Test_Sources.instr`. -- [Additional information](Test_Sources.instr.md) +- [Additional information](Test_Sources.md) --- diff --git a/mcstas-comps/examples/Tests_optics/Test_StatisticalChopper/README.md b/mcstas-comps/examples/Tests_optics/Test_StatisticalChopper/README.md index 6a2071492..1cb4d905a 100644 --- a/mcstas-comps/examples/Tests_optics/Test_StatisticalChopper/README.md +++ b/mcstas-comps/examples/Tests_optics/Test_StatisticalChopper/README.md @@ -27,7 +27,7 @@ Parameters in **boldface** are required; the others are optional. ## Links - [Source code](Test_StatisticalChopper.instr) for `Test_StatisticalChopper.instr`. -- [Additional information](Test_StatisticalChopper.instr.md) +- [Additional information](Test_StatisticalChopper.md) - R. Von Jan and R. Scherm. The statistical chopper for neutron time-of-flight spectroscopy. Nuclear Instruments and Methods, 80 (1970) 69-76. --- diff --git a/mcstas-comps/examples/Tests_optics/Test_Vertical_Bender/README.md b/mcstas-comps/examples/Tests_optics/Test_Vertical_Bender/README.md index 8c09a82d0..d20b26a71 100644 --- a/mcstas-comps/examples/Tests_optics/Test_Vertical_Bender/README.md +++ b/mcstas-comps/examples/Tests_optics/Test_Vertical_Bender/README.md @@ -33,7 +33,7 @@ Parameters in **boldface** are required; the others are optional. ## Links - [Source code](Test_Vertical_Bender.instr) for `Test_Vertical_Bender.instr`. -- [Additional information](Test_Vertical_Bender.instr.md) +- [Additional information](Test_Vertical_Bender.md) - --- diff --git a/mcstas-comps/examples/Tests_optics/Test_filters/README.md b/mcstas-comps/examples/Tests_optics/Test_filters/README.md index b7d9d05b2..04f1d1d48 100644 --- a/mcstas-comps/examples/Tests_optics/Test_filters/README.md +++ b/mcstas-comps/examples/Tests_optics/Test_filters/README.md @@ -33,7 +33,7 @@ Parameters in **boldface** are required; the others are optional. ## Links - [Source code](Test_filters.instr) for `Test_filters.instr`. -- [Additional information](Test_filters.instr.md) +- [Additional information](Test_filters.md) - Acta Cryst. (1978). A34, 61-65 - Rev. Sci. Instrum. 59, 380-381 (1988) - Test instrument written by P Willendrup ESS, March 2026 diff --git a/mcstas-comps/examples/Tests_optics/Test_focus/README.md b/mcstas-comps/examples/Tests_optics/Test_focus/README.md index 0f0018a18..f05a88fd5 100644 --- a/mcstas-comps/examples/Tests_optics/Test_focus/README.md +++ b/mcstas-comps/examples/Tests_optics/Test_focus/README.md @@ -36,7 +36,7 @@ Parameters in **boldface** are required; the others are optional. ## Links - [Source code](Test_focus.instr) for `Test_focus.instr`. -- [Additional information](Test_focus.instr.md) +- [Additional information](Test_focus.md) --- diff --git a/mcstas-comps/examples/Tests_other/test_File/README.md b/mcstas-comps/examples/Tests_other/test_File/README.md index 69f14aed6..eee3af792 100644 --- a/mcstas-comps/examples/Tests_other/test_File/README.md +++ b/mcstas-comps/examples/Tests_other/test_File/README.md @@ -26,7 +26,7 @@ Parameters in **boldface** are required; the others are optional. ## Links - [Source code](test_File.instr) for `test_File.instr`. -- [Additional information](test_File.instr.md) +- [Additional information](test_File.md) - From https://github.com/g5t/mccode-file --- diff --git a/mcstas-comps/examples/Tests_polarization/He3_spin_filter/README.md b/mcstas-comps/examples/Tests_polarization/He3_spin_filter/README.md index 150641579..8fda1981d 100644 --- a/mcstas-comps/examples/Tests_polarization/He3_spin_filter/README.md +++ b/mcstas-comps/examples/Tests_polarization/He3_spin_filter/README.md @@ -34,7 +34,7 @@ Parameters in **boldface** are required; the others are optional. ## Links - [Source code](He3_spin_filter.instr) for `He3_spin_filter.instr`. -- [Additional information](He3_spin_filter.instr.md) +- [Additional information](He3_spin_filter.md) - --- diff --git a/mcstas-comps/examples/Tests_polarization/SE_example/README.md b/mcstas-comps/examples/Tests_polarization/SE_example/README.md index a12cbb347..416e020e6 100644 --- a/mcstas-comps/examples/Tests_polarization/SE_example/README.md +++ b/mcstas-comps/examples/Tests_polarization/SE_example/README.md @@ -38,7 +38,7 @@ Parameters in **boldface** are required; the others are optional. ## Links - [Source code](SE_example.instr) for `SE_example.instr`. -- [Additional information](SE_example.instr.md) +- [Additional information](SE_example.md) - Requires mcstas 1.12b (or beta). PolLambda_monitor has been modified to work (nL->nlam) --- diff --git a/mcstas-comps/examples/Tests_polarization/SE_example2/README.md b/mcstas-comps/examples/Tests_polarization/SE_example2/README.md index 35fd44159..b87633be6 100644 --- a/mcstas-comps/examples/Tests_polarization/SE_example2/README.md +++ b/mcstas-comps/examples/Tests_polarization/SE_example2/README.md @@ -38,7 +38,7 @@ Parameters in **boldface** are required; the others are optional. ## Links - [Source code](SE_example2.instr) for `SE_example2.instr`. -- [Additional information](SE_example2.instr.md) +- [Additional information](SE_example2.md) - Requires mcstas 1.12b (or beta). PolLambda_monitor has been modified to work (nL->nlam) --- diff --git a/mcstas-comps/examples/Tests_polarization/Supermirror_thin_substrate/README.md b/mcstas-comps/examples/Tests_polarization/Supermirror_thin_substrate/README.md index 8b5bcfcf3..f00209d1f 100644 --- a/mcstas-comps/examples/Tests_polarization/Supermirror_thin_substrate/README.md +++ b/mcstas-comps/examples/Tests_polarization/Supermirror_thin_substrate/README.md @@ -47,7 +47,7 @@ Parameters in **boldface** are required; the others are optional. ## Links - [Source code](Supermirror_thin_substrate.instr) for `Supermirror_thin_substrate.instr`. -- [Additional information](Supermirror_thin_substrate.instr.md) +- [Additional information](Supermirror_thin_substrate.md) - A reference/HTML link for more information --- diff --git a/mcstas-comps/examples/Tests_polarization/Test_Magnetic_Constant/README.md b/mcstas-comps/examples/Tests_polarization/Test_Magnetic_Constant/README.md index 89257fd6d..496ec0ded 100644 --- a/mcstas-comps/examples/Tests_polarization/Test_Magnetic_Constant/README.md +++ b/mcstas-comps/examples/Tests_polarization/Test_Magnetic_Constant/README.md @@ -32,7 +32,7 @@ Parameters in **boldface** are required; the others are optional. ## Links - [Source code](Test_Magnetic_Constant.instr) for `Test_Magnetic_Constant.instr`. -- [Additional information](Test_Magnetic_Constant.instr.md) +- [Additional information](Test_Magnetic_Constant.md) --- diff --git a/mcstas-comps/examples/Tests_polarization/Test_Magnetic_Majorana/README.md b/mcstas-comps/examples/Tests_polarization/Test_Magnetic_Majorana/README.md index bc348e810..236e1809b 100644 --- a/mcstas-comps/examples/Tests_polarization/Test_Magnetic_Majorana/README.md +++ b/mcstas-comps/examples/Tests_polarization/Test_Magnetic_Majorana/README.md @@ -35,7 +35,7 @@ Parameters in **boldface** are required; the others are optional. ## Links - [Source code](Test_Magnetic_Majorana.instr) for `Test_Magnetic_Majorana.instr`. -- [Additional information](Test_Magnetic_Majorana.instr.md) +- [Additional information](Test_Magnetic_Majorana.md) --- diff --git a/mcstas-comps/examples/Tests_polarization/Test_Magnetic_Rotation/README.md b/mcstas-comps/examples/Tests_polarization/Test_Magnetic_Rotation/README.md index 6162da185..880711c8d 100644 --- a/mcstas-comps/examples/Tests_polarization/Test_Magnetic_Rotation/README.md +++ b/mcstas-comps/examples/Tests_polarization/Test_Magnetic_Rotation/README.md @@ -31,7 +31,7 @@ Parameters in **boldface** are required; the others are optional. ## Links - [Source code](Test_Magnetic_Rotation.instr) for `Test_Magnetic_Rotation.instr`. -- [Additional information](Test_Magnetic_Rotation.instr.md) +- [Additional information](Test_Magnetic_Rotation.md) --- diff --git a/mcstas-comps/examples/Tests_polarization/Test_Pol_Bender/README.md b/mcstas-comps/examples/Tests_polarization/Test_Pol_Bender/README.md index 1c1e57bf4..f21a142f5 100644 --- a/mcstas-comps/examples/Tests_polarization/Test_Pol_Bender/README.md +++ b/mcstas-comps/examples/Tests_polarization/Test_Pol_Bender/README.md @@ -32,7 +32,7 @@ Parameters in **boldface** are required; the others are optional. ## Links - [Source code](Test_Pol_Bender.instr) for `Test_Pol_Bender.instr`. -- [Additional information](Test_Pol_Bender.instr.md) +- [Additional information](Test_Pol_Bender.md) --- diff --git a/mcstas-comps/examples/Tests_polarization/Test_Pol_FieldBox/README.md b/mcstas-comps/examples/Tests_polarization/Test_Pol_FieldBox/README.md index 1cd46225a..f5b4de5f6 100644 --- a/mcstas-comps/examples/Tests_polarization/Test_Pol_FieldBox/README.md +++ b/mcstas-comps/examples/Tests_polarization/Test_Pol_FieldBox/README.md @@ -29,7 +29,7 @@ Parameters in **boldface** are required; the others are optional. ## Links - [Source code](Test_Pol_FieldBox.instr) for `Test_Pol_FieldBox.instr`. -- [Additional information](Test_Pol_FieldBox.instr.md) +- [Additional information](Test_Pol_FieldBox.md) --- diff --git a/mcstas-comps/examples/Tests_polarization/Test_Pol_Guide_Vmirror/README.md b/mcstas-comps/examples/Tests_polarization/Test_Pol_Guide_Vmirror/README.md index a2f3c8b31..c2510caa7 100644 --- a/mcstas-comps/examples/Tests_polarization/Test_Pol_Guide_Vmirror/README.md +++ b/mcstas-comps/examples/Tests_polarization/Test_Pol_Guide_Vmirror/README.md @@ -27,7 +27,7 @@ Parameters in **boldface** are required; the others are optional. ## Links - [Source code](Test_Pol_Guide_Vmirror.instr) for `Test_Pol_Guide_Vmirror.instr`. -- [Additional information](Test_Pol_Guide_Vmirror.instr.md) +- [Additional information](Test_Pol_Guide_Vmirror.md) --- diff --git a/mcstas-comps/examples/Tests_polarization/Test_Pol_Guide_mirror/README.md b/mcstas-comps/examples/Tests_polarization/Test_Pol_Guide_mirror/README.md index dde40ec66..88f94be89 100644 --- a/mcstas-comps/examples/Tests_polarization/Test_Pol_Guide_mirror/README.md +++ b/mcstas-comps/examples/Tests_polarization/Test_Pol_Guide_mirror/README.md @@ -28,7 +28,7 @@ Parameters in **boldface** are required; the others are optional. ## Links - [Source code](Test_Pol_Guide_mirror.instr) for `Test_Pol_Guide_mirror.instr`. -- [Additional information](Test_Pol_Guide_mirror.instr.md) +- [Additional information](Test_Pol_Guide_mirror.md) --- diff --git a/mcstas-comps/examples/Tests_polarization/Test_Pol_MSF/README.md b/mcstas-comps/examples/Tests_polarization/Test_Pol_MSF/README.md index 0b5002f72..bf3017ee0 100644 --- a/mcstas-comps/examples/Tests_polarization/Test_Pol_MSF/README.md +++ b/mcstas-comps/examples/Tests_polarization/Test_Pol_MSF/README.md @@ -27,7 +27,7 @@ Parameters in **boldface** are required; the others are optional. ## Links - [Source code](Test_Pol_MSF.instr) for `Test_Pol_MSF.instr`. -- [Additional information](Test_Pol_MSF.instr.md) +- [Additional information](Test_Pol_MSF.md) --- diff --git a/mcstas-comps/examples/Tests_polarization/Test_Pol_Mirror/README.md b/mcstas-comps/examples/Tests_polarization/Test_Pol_Mirror/README.md index e2afcfe53..f4831e2d7 100644 --- a/mcstas-comps/examples/Tests_polarization/Test_Pol_Mirror/README.md +++ b/mcstas-comps/examples/Tests_polarization/Test_Pol_Mirror/README.md @@ -32,7 +32,7 @@ Parameters in **boldface** are required; the others are optional. ## Links - [Source code](Test_Pol_Mirror.instr) for `Test_Pol_Mirror.instr`. -- [Additional information](Test_Pol_Mirror.instr.md) +- [Additional information](Test_Pol_Mirror.md) --- diff --git a/mcstas-comps/examples/Tests_polarization/Test_Pol_SF_ideal/README.md b/mcstas-comps/examples/Tests_polarization/Test_Pol_SF_ideal/README.md index c091d6d7f..4dd433145 100644 --- a/mcstas-comps/examples/Tests_polarization/Test_Pol_SF_ideal/README.md +++ b/mcstas-comps/examples/Tests_polarization/Test_Pol_SF_ideal/README.md @@ -30,7 +30,7 @@ Parameters in **boldface** are required; the others are optional. ## Links - [Source code](Test_Pol_SF_ideal.instr) for `Test_Pol_SF_ideal.instr`. -- [Additional information](Test_Pol_SF_ideal.instr.md) +- [Additional information](Test_Pol_SF_ideal.md) --- diff --git a/mcstas-comps/examples/Tests_polarization/Test_Pol_Set/README.md b/mcstas-comps/examples/Tests_polarization/Test_Pol_Set/README.md index 6e0cc5769..2547636b0 100644 --- a/mcstas-comps/examples/Tests_polarization/Test_Pol_Set/README.md +++ b/mcstas-comps/examples/Tests_polarization/Test_Pol_Set/README.md @@ -28,7 +28,7 @@ Parameters in **boldface** are required; the others are optional. ## Links - [Source code](Test_Pol_Set.instr) for `Test_Pol_Set.instr`. -- [Additional information](Test_Pol_Set.instr.md) +- [Additional information](Test_Pol_Set.md) --- diff --git a/mcstas-comps/examples/Tests_polarization/Test_Pol_Tabled/README.md b/mcstas-comps/examples/Tests_polarization/Test_Pol_Tabled/README.md index 72d234d5c..e971322eb 100644 --- a/mcstas-comps/examples/Tests_polarization/Test_Pol_Tabled/README.md +++ b/mcstas-comps/examples/Tests_polarization/Test_Pol_Tabled/README.md @@ -1,10 +1,38 @@ -# `Test_Pol_Tabled.instr` with inputs and tools -The instrument uses tabulated field-data for input, examples are: -* A flipping field `flipfield.dat` -* A constant field `constfield.dat` +# The `Test_Pol_Tabled` Instrument -Further, a couple of remeshing tools are provided, allowing to resample an existing field-file to 'regular' binning, both with positional inputs of `infile` for the input file and `xsiz`, `ysiz`, `zsiz` for the resampling dimensions -* `remesh.m` function for Matlab users -* `remesh.py` script for Python users +*McStas: Test the tabled magnetic field option* -When resampling for use with 'regular' interpolation (e.g. on GPU), esure that `xsiz`, `ysiz`, `zsiz` are equal. +## Identification + +- **Site:** Tests_polarization +- **Author:** Your name (email) +- **Origin:** Your institution +- **Date:** Current Date + +## Description + +```text +A test instrument to check that supplying a magnetic field as a vector field point cloud +is working. The field referred to by the default input parameter MF is 10 \mu T along the z-axis +at entry and flips to l0 \mu T along the negative z-axis halfway through +``` + +## Input parameters + +Parameters in **boldface** are required; the others are optional. + +| Name | Unit | Description | Default | +|------|------|-------------|---------| +| MF | string | Field definition file | "flipfield.dat" | +| zdepth | m | Z-dimension of field | 1 | +| interpol_method | string | Choice of interpolation method "kdtree" (default on CPU) / "regular" (default on GPU) | "default" | + +## Links + +- [Source code](Test_Pol_Tabled.instr) for `Test_Pol_Tabled.instr`. +- [Additional information](Test_Pol_Tabled.md) +- A reference/HTML link for more information + +--- + +*Generated for mcstas 3.99.99.* \ No newline at end of file diff --git a/mcstas-comps/examples/Tests_polarization/Test_Pol_TripleAxis/README.md b/mcstas-comps/examples/Tests_polarization/Test_Pol_TripleAxis/README.md index 50f6df3de..8f5c1f2e2 100644 --- a/mcstas-comps/examples/Tests_polarization/Test_Pol_TripleAxis/README.md +++ b/mcstas-comps/examples/Tests_polarization/Test_Pol_TripleAxis/README.md @@ -37,7 +37,7 @@ Parameters in **boldface** are required; the others are optional. ## Links - [Source code](Test_Pol_TripleAxis.instr) for `Test_Pol_TripleAxis.instr`. -- [Additional information](Test_Pol_TripleAxis.instr.md) +- [Additional information](Test_Pol_TripleAxis.md) --- diff --git a/mcstas-comps/examples/Tests_polarization/Test_V_cavity_SNAG_double_side/README.md b/mcstas-comps/examples/Tests_polarization/Test_V_cavity_SNAG_double_side/README.md index 4d0c65bf3..d72eac7f5 100644 --- a/mcstas-comps/examples/Tests_polarization/Test_V_cavity_SNAG_double_side/README.md +++ b/mcstas-comps/examples/Tests_polarization/Test_V_cavity_SNAG_double_side/README.md @@ -39,7 +39,7 @@ Parameters in **boldface** are required; the others are optional. ## Links - [Source code](Test_V_cavity_SNAG_double_side.instr) for `Test_V_cavity_SNAG_double_side.instr`. -- [Additional information](Test_V_cavity_SNAG_double_side.instr.md) +- [Additional information](Test_V_cavity_SNAG_double_side.md) - P. Böni, W. Münzer and A. Ostermann: Physica B: Condensed Matter Volume 404, Issue 17, 1 September 2009, Pages 2620-2623 --- diff --git a/mcstas-comps/examples/Tests_polarization/Test_V_cavity_SNAG_single_side/README.md b/mcstas-comps/examples/Tests_polarization/Test_V_cavity_SNAG_single_side/README.md index 0467cedf5..c9e3679e1 100644 --- a/mcstas-comps/examples/Tests_polarization/Test_V_cavity_SNAG_single_side/README.md +++ b/mcstas-comps/examples/Tests_polarization/Test_V_cavity_SNAG_single_side/README.md @@ -39,7 +39,7 @@ Parameters in **boldface** are required; the others are optional. ## Links - [Source code](Test_V_cavity_SNAG_single_side.instr) for `Test_V_cavity_SNAG_single_side.instr`. -- [Additional information](Test_V_cavity_SNAG_single_side.instr.md) +- [Additional information](Test_V_cavity_SNAG_single_side.md) - P. Böni, W. Münzer and A. Ostermann: Physica B: Condensed Matter Volume 404, Issue 17, 1 September 2009, Pages 2620-2623 --- diff --git a/mcstas-comps/examples/Tests_polarization/Test_pol_ideal/README.md b/mcstas-comps/examples/Tests_polarization/Test_pol_ideal/README.md index 7e4497d5a..137701040 100644 --- a/mcstas-comps/examples/Tests_polarization/Test_pol_ideal/README.md +++ b/mcstas-comps/examples/Tests_polarization/Test_pol_ideal/README.md @@ -26,7 +26,7 @@ Parameters in **boldface** are required; the others are optional. ## Links - [Source code](Test_pol_ideal.instr) for `Test_pol_ideal.instr`. -- [Additional information](Test_pol_ideal.instr.md) +- [Additional information](Test_pol_ideal.md) --- diff --git a/mcstas-comps/examples/Tests_samples/GISANS_tests/README.md b/mcstas-comps/examples/Tests_samples/GISANS_tests/README.md index 1f4f31d00..e02ec5e0d 100644 --- a/mcstas-comps/examples/Tests_samples/GISANS_tests/README.md +++ b/mcstas-comps/examples/Tests_samples/GISANS_tests/README.md @@ -30,7 +30,7 @@ Parameters in **boldface** are required; the others are optional. ## Links - [Source code](GISANS_tests.instr) for `GISANS_tests.instr`. -- [Additional information](GISANS_tests.instr.md) +- [Additional information](GISANS_tests.md) --- diff --git a/mcstas-comps/examples/Tests_samples/Samples_Incoherent/README.md b/mcstas-comps/examples/Tests_samples/Samples_Incoherent/README.md index 3bb7edc05..52b75e161 100644 --- a/mcstas-comps/examples/Tests_samples/Samples_Incoherent/README.md +++ b/mcstas-comps/examples/Tests_samples/Samples_Incoherent/README.md @@ -69,7 +69,7 @@ Parameters in **boldface** are required; the others are optional. ## Links - [Source code](Samples_Incoherent.instr) for `Samples_Incoherent.instr`. -- [Additional information](Samples_Incoherent.instr.md) +- [Additional information](Samples_Incoherent.md) - Validation of Single_crystal is now in progress! --- diff --git a/mcstas-comps/examples/Tests_samples/Samples_Incoherent_off/README.md b/mcstas-comps/examples/Tests_samples/Samples_Incoherent_off/README.md index 75fdbf815..c6e1d9689 100644 --- a/mcstas-comps/examples/Tests_samples/Samples_Incoherent_off/README.md +++ b/mcstas-comps/examples/Tests_samples/Samples_Incoherent_off/README.md @@ -28,7 +28,7 @@ Parameters in **boldface** are required; the others are optional. ## Links - [Source code](Samples_Incoherent_off.instr) for `Samples_Incoherent_off.instr`. -- [Additional information](Samples_Incoherent_off.instr.md) +- [Additional information](Samples_Incoherent_off.md) - http://shape.cs.princeton.edu/benchmark/documentation/off_format.html --- diff --git a/mcstas-comps/examples/Tests_samples/Samples_Isotropic_Sqw/README.md b/mcstas-comps/examples/Tests_samples/Samples_Isotropic_Sqw/README.md index a38450b08..da9d52632 100644 --- a/mcstas-comps/examples/Tests_samples/Samples_Isotropic_Sqw/README.md +++ b/mcstas-comps/examples/Tests_samples/Samples_Isotropic_Sqw/README.md @@ -30,7 +30,7 @@ Parameters in **boldface** are required; the others are optional. ## Links - [Source code](Samples_Isotropic_Sqw.instr) for `Samples_Isotropic_Sqw.instr`. -- [Additional information](Samples_Isotropic_Sqw.instr.md) +- [Additional information](Samples_Isotropic_Sqw.md) - The Isotropic_Sqw sample --- diff --git a/mcstas-comps/examples/Tests_samples/Samples_Phonon/README.md b/mcstas-comps/examples/Tests_samples/Samples_Phonon/README.md index 901608bf0..638c63857 100644 --- a/mcstas-comps/examples/Tests_samples/Samples_Phonon/README.md +++ b/mcstas-comps/examples/Tests_samples/Samples_Phonon/README.md @@ -35,7 +35,7 @@ Parameters in **boldface** are required; the others are optional. ## Links - [Source code](Samples_Phonon.instr) for `Samples_Phonon.instr`. -- [Additional information](Samples_Phonon.instr.md) +- [Additional information](Samples_Phonon.md) --- diff --git a/mcstas-comps/examples/Tests_samples/Samples_vanadium/README.md b/mcstas-comps/examples/Tests_samples/Samples_vanadium/README.md index aec649f22..244b38bfa 100644 --- a/mcstas-comps/examples/Tests_samples/Samples_vanadium/README.md +++ b/mcstas-comps/examples/Tests_samples/Samples_vanadium/README.md @@ -27,7 +27,7 @@ Parameters in **boldface** are required; the others are optional. ## Links - [Source code](Samples_vanadium.instr) for `Samples_vanadium.instr`. -- [Additional information](Samples_vanadium.instr.md) +- [Additional information](Samples_vanadium.md) - The McStas User manual - The McStas tutorial diff --git a/mcstas-comps/examples/Tests_samples/Test_Incoherent/README.md b/mcstas-comps/examples/Tests_samples/Test_Incoherent/README.md index b6998392a..5ee0ab564 100644 --- a/mcstas-comps/examples/Tests_samples/Test_Incoherent/README.md +++ b/mcstas-comps/examples/Tests_samples/Test_Incoherent/README.md @@ -27,7 +27,7 @@ Parameters in **boldface** are required; the others are optional. ## Links - [Source code](Test_Incoherent.instr) for `Test_Incoherent.instr`. -- [Additional information](Test_Incoherent.instr.md) +- [Additional information](Test_Incoherent.md) --- diff --git a/mcstas-comps/examples/Tests_samples/Test_Incoherent_MS/README.md b/mcstas-comps/examples/Tests_samples/Test_Incoherent_MS/README.md index 520131247..347646d91 100644 --- a/mcstas-comps/examples/Tests_samples/Test_Incoherent_MS/README.md +++ b/mcstas-comps/examples/Tests_samples/Test_Incoherent_MS/README.md @@ -59,7 +59,7 @@ Parameters in **boldface** are required; the others are optional. ## Links - [Source code](Test_Incoherent_MS.instr) for `Test_Incoherent_MS.instr`. -- [Additional information](Test_Incoherent_MS.instr.md) +- [Additional information](Test_Incoherent_MS.md) - A reference/HTML link for more information --- diff --git a/mcstas-comps/examples/Tests_samples/Test_Magnon_bcc_2D/README.md b/mcstas-comps/examples/Tests_samples/Test_Magnon_bcc_2D/README.md index 7b70faf35..1af12ef90 100644 --- a/mcstas-comps/examples/Tests_samples/Test_Magnon_bcc_2D/README.md +++ b/mcstas-comps/examples/Tests_samples/Test_Magnon_bcc_2D/README.md @@ -35,7 +35,7 @@ Parameters in **boldface** are required; the others are optional. ## Links - [Source code](Test_Magnon_bcc_2D.instr) for `Test_Magnon_bcc_2D.instr`. -- [Additional information](Test_Magnon_bcc_2D.instr.md) +- [Additional information](Test_Magnon_bcc_2D.md) --- diff --git a/mcstas-comps/examples/Tests_samples/Test_Magnon_bcc_TAS/README.md b/mcstas-comps/examples/Tests_samples/Test_Magnon_bcc_TAS/README.md index 0bc7f3acb..a77405f93 100644 --- a/mcstas-comps/examples/Tests_samples/Test_Magnon_bcc_TAS/README.md +++ b/mcstas-comps/examples/Tests_samples/Test_Magnon_bcc_TAS/README.md @@ -36,7 +36,7 @@ Parameters in **boldface** are required; the others are optional. ## Links - [Source code](Test_Magnon_bcc_TAS.instr) for `Test_Magnon_bcc_TAS.instr`. -- [Additional information](Test_Magnon_bcc_TAS.instr.md) +- [Additional information](Test_Magnon_bcc_TAS.md) - --- diff --git a/mcstas-comps/examples/Tests_samples/Test_PowderN/README.md b/mcstas-comps/examples/Tests_samples/Test_PowderN/README.md index d1ce9cf7f..ca5c64e98 100644 --- a/mcstas-comps/examples/Tests_samples/Test_PowderN/README.md +++ b/mcstas-comps/examples/Tests_samples/Test_PowderN/README.md @@ -34,7 +34,7 @@ Parameters in **boldface** are required; the others are optional. ## Links - [Source code](Test_PowderN.instr) for `Test_PowderN.instr`. -- [Additional information](Test_PowderN.instr.md) +- [Additional information](Test_PowderN.md) --- diff --git a/mcstas-comps/examples/Tests_samples/Test_PowderN_Res/README.md b/mcstas-comps/examples/Tests_samples/Test_PowderN_Res/README.md index 3cb30f21c..6e2f18048 100644 --- a/mcstas-comps/examples/Tests_samples/Test_PowderN_Res/README.md +++ b/mcstas-comps/examples/Tests_samples/Test_PowderN_Res/README.md @@ -39,7 +39,7 @@ Parameters in **boldface** are required; the others are optional. ## Links - [Source code](Test_PowderN_Res.instr) for `Test_PowderN_Res.instr`. -- [Additional information](Test_PowderN_Res.instr.md) +- [Additional information](Test_PowderN_Res.md) - A reference/HTML link for more information --- diff --git a/mcstas-comps/examples/Tests_samples/Test_PowderN_concentric/README.md b/mcstas-comps/examples/Tests_samples/Test_PowderN_concentric/README.md index cdefee91c..88d534af3 100644 --- a/mcstas-comps/examples/Tests_samples/Test_PowderN_concentric/README.md +++ b/mcstas-comps/examples/Tests_samples/Test_PowderN_concentric/README.md @@ -30,7 +30,7 @@ Parameters in **boldface** are required; the others are optional. ## Links - [Source code](Test_PowderN_concentric.instr) for `Test_PowderN_concentric.instr`. -- [Additional information](Test_PowderN_concentric.instr.md) +- [Additional information](Test_PowderN_concentric.md) --- diff --git a/mcstas-comps/examples/Tests_samples/Test_Powders/README.md b/mcstas-comps/examples/Tests_samples/Test_Powders/README.md index 813b4c8b5..39e142291 100644 --- a/mcstas-comps/examples/Tests_samples/Test_Powders/README.md +++ b/mcstas-comps/examples/Tests_samples/Test_Powders/README.md @@ -34,7 +34,7 @@ Parameters in **boldface** are required; the others are optional. ## Links - [Source code](Test_Powders.instr) for `Test_Powders.instr`. -- [Additional information](Test_Powders.instr.md) +- [Additional information](Test_Powders.md) --- diff --git a/mcstas-comps/examples/Tests_samples/Test_SANS/README.md b/mcstas-comps/examples/Tests_samples/Test_SANS/README.md index 97ecc2dc8..cf0a444ce 100644 --- a/mcstas-comps/examples/Tests_samples/Test_SANS/README.md +++ b/mcstas-comps/examples/Tests_samples/Test_SANS/README.md @@ -48,7 +48,7 @@ Parameters in **boldface** are required; the others are optional. ## Links - [Source code](Test_SANS.instr) for `Test_SANS.instr`. -- [Additional information](Test_SANS.instr.md) +- [Additional information](Test_SANS.md) --- diff --git a/mcstas-comps/examples/Tests_samples/Test_SX/README.md b/mcstas-comps/examples/Tests_samples/Test_SX/README.md index 45285374e..94d1f45c5 100644 --- a/mcstas-comps/examples/Tests_samples/Test_SX/README.md +++ b/mcstas-comps/examples/Tests_samples/Test_SX/README.md @@ -36,7 +36,7 @@ Parameters in **boldface** are required; the others are optional. ## Links - [Source code](Test_SX.instr) for `Test_SX.instr`. -- [Additional information](Test_SX.instr.md) +- [Additional information](Test_SX.md) --- diff --git a/mcstas-comps/examples/Tests_samples/Test_Single_crystal_inelastic/README.md b/mcstas-comps/examples/Tests_samples/Test_Single_crystal_inelastic/README.md index fb22c175b..f6e6b36dd 100644 --- a/mcstas-comps/examples/Tests_samples/Test_Single_crystal_inelastic/README.md +++ b/mcstas-comps/examples/Tests_samples/Test_Single_crystal_inelastic/README.md @@ -42,7 +42,7 @@ Parameters in **boldface** are required; the others are optional. ## Links - [Source code](Test_Single_crystal_inelastic.instr) for `Test_Single_crystal_inelastic.instr`. -- [Additional information](Test_Single_crystal_inelastic.instr.md) +- [Additional information](Test_Single_crystal_inelastic.md) - Duc Le (2015) - duc.le@stfc.ac.uk --- diff --git a/mcstas-comps/examples/Tests_samples/Test_Sqw/README.md b/mcstas-comps/examples/Tests_samples/Test_Sqw/README.md index bd71c7061..f780df067 100644 --- a/mcstas-comps/examples/Tests_samples/Test_Sqw/README.md +++ b/mcstas-comps/examples/Tests_samples/Test_Sqw/README.md @@ -30,7 +30,7 @@ Parameters in **boldface** are required; the others are optional. ## Links - [Source code](Test_Sqw.instr) for `Test_Sqw.instr`. -- [Additional information](Test_Sqw.instr.md) +- [Additional information](Test_Sqw.md) --- diff --git a/mcstas-comps/examples/Tests_samples/Test_Sqw_monitor/README.md b/mcstas-comps/examples/Tests_samples/Test_Sqw_monitor/README.md index fd6814e93..8092ba547 100644 --- a/mcstas-comps/examples/Tests_samples/Test_Sqw_monitor/README.md +++ b/mcstas-comps/examples/Tests_samples/Test_Sqw_monitor/README.md @@ -106,7 +106,7 @@ Parameters in **boldface** are required; the others are optional. ## Links - [Source code](Test_Sqw_monitor.instr) for `Test_Sqw_monitor.instr`. -- [Additional information](Test_Sqw_monitor.instr.md) +- [Additional information](Test_Sqw_monitor.md) - The Isotropic_Sqw sample - The PowderN sample - The Samples_Isotropic_Sqw example instrument diff --git a/mcstas-comps/examples/Tests_samples/Test_TOFRes_sample/README.md b/mcstas-comps/examples/Tests_samples/Test_TOFRes_sample/README.md index c1bee3284..d6d485db8 100644 --- a/mcstas-comps/examples/Tests_samples/Test_TOFRes_sample/README.md +++ b/mcstas-comps/examples/Tests_samples/Test_TOFRes_sample/README.md @@ -36,7 +36,7 @@ Parameters in **boldface** are required; the others are optional. ## Links - [Source code](Test_TOFRes_sample.instr) for `Test_TOFRes_sample.instr`. -- [Additional information](Test_TOFRes_sample.instr.md) +- [Additional information](Test_TOFRes_sample.md) --- diff --git a/mcstas-comps/examples/Tests_samples/Test_TasReso/README.md b/mcstas-comps/examples/Tests_samples/Test_TasReso/README.md index 1f2b21c3b..79d26b412 100644 --- a/mcstas-comps/examples/Tests_samples/Test_TasReso/README.md +++ b/mcstas-comps/examples/Tests_samples/Test_TasReso/README.md @@ -53,7 +53,7 @@ Parameters in **boldface** are required; the others are optional. ## Links - [Source code](Test_TasReso.instr) for `Test_TasReso.instr`. -- [Additional information](Test_TasReso.instr.md) +- [Additional information](Test_TasReso.md) --- diff --git a/mcstas-comps/examples/Tests_samples/Test_single_magnetic_crystal/README.md b/mcstas-comps/examples/Tests_samples/Test_single_magnetic_crystal/README.md index 6097a6e2e..bcac61c5c 100644 --- a/mcstas-comps/examples/Tests_samples/Test_single_magnetic_crystal/README.md +++ b/mcstas-comps/examples/Tests_samples/Test_single_magnetic_crystal/README.md @@ -37,7 +37,7 @@ Parameters in **boldface** are required; the others are optional. ## Links - [Source code](Test_single_magnetic_crystal.instr) for `Test_single_magnetic_crystal.instr`. -- [Additional information](Test_single_magnetic_crystal.instr.md) +- [Additional information](Test_single_magnetic_crystal.md) - A reference/HTML link for more information --- diff --git a/mcstas-comps/examples/Tests_samples/Unittest_SANS_benchmark2/README.md b/mcstas-comps/examples/Tests_samples/Unittest_SANS_benchmark2/README.md index f7a3ee1a9..6583db744 100644 --- a/mcstas-comps/examples/Tests_samples/Unittest_SANS_benchmark2/README.md +++ b/mcstas-comps/examples/Tests_samples/Unittest_SANS_benchmark2/README.md @@ -33,7 +33,7 @@ Parameters in **boldface** are required; the others are optional. ## Links - [Source code](Unittest_SANS_benchmark2.instr) for `Unittest_SANS_benchmark2.instr`. -- [Additional information](Unittest_SANS_benchmark2.instr.md) +- [Additional information](Unittest_SANS_benchmark2.md) --- diff --git a/mcstas-comps/examples/Tests_sources/Test_Source_custom/README.md b/mcstas-comps/examples/Tests_sources/Test_Source_custom/README.md index de101108b..4ba040841 100644 --- a/mcstas-comps/examples/Tests_sources/Test_Source_custom/README.md +++ b/mcstas-comps/examples/Tests_sources/Test_Source_custom/README.md @@ -26,7 +26,7 @@ Parameters in **boldface** are required; the others are optional. ## Links - [Source code](test_Source_custom.instr) for `test_Source_custom.instr`. -- [Additional information](test_Source_custom.instr.md) +- [Additional information](test_Source_custom.md) --- diff --git a/mcstas-comps/examples/Tests_sources/Test_Source_quasi/README.md b/mcstas-comps/examples/Tests_sources/Test_Source_quasi/README.md index ce7d9d2ca..6197d05ea 100644 --- a/mcstas-comps/examples/Tests_sources/Test_Source_quasi/README.md +++ b/mcstas-comps/examples/Tests_sources/Test_Source_quasi/README.md @@ -26,7 +26,7 @@ Parameters in **boldface** are required; the others are optional. ## Links - [Source code](Test_Source_quasi.instr) for `Test_Source_quasi.instr`. -- [Additional information](Test_Source_quasi.instr.md) +- [Additional information](Test_Source_quasi.md) --- diff --git a/mcstas-comps/examples/Tests_union/Conditional_test/README.md b/mcstas-comps/examples/Tests_union/Conditional_test/README.md index 30a224e30..601e50f3a 100644 --- a/mcstas-comps/examples/Tests_union/Conditional_test/README.md +++ b/mcstas-comps/examples/Tests_union/Conditional_test/README.md @@ -26,7 +26,7 @@ Parameters in **boldface** are required; the others are optional. ## Links - [Source code](Conditional_test.instr) for `Conditional_test.instr`. -- [Additional information](Conditional_test.instr.md) +- [Additional information](Conditional_test.md) --- diff --git a/mcstas-comps/examples/Tests_union/External_component_test/README.md b/mcstas-comps/examples/Tests_union/External_component_test/README.md index 5e07917d0..07b97359c 100644 --- a/mcstas-comps/examples/Tests_union/External_component_test/README.md +++ b/mcstas-comps/examples/Tests_union/External_component_test/README.md @@ -26,7 +26,7 @@ Parameters in **boldface** are required; the others are optional. ## Links - [Source code](External_component_test.instr) for `External_component_test.instr`. -- [Additional information](External_component_test.instr.md) +- [Additional information](External_component_test.md) --- diff --git a/mcstas-comps/examples/Tests_union/Geometry_test/README.md b/mcstas-comps/examples/Tests_union/Geometry_test/README.md index 58779a04b..c0ce8503d 100644 --- a/mcstas-comps/examples/Tests_union/Geometry_test/README.md +++ b/mcstas-comps/examples/Tests_union/Geometry_test/README.md @@ -26,7 +26,7 @@ Parameters in **boldface** are required; the others are optional. ## Links - [Source code](Geometry_test.instr) for `Geometry_test.instr`. -- [Additional information](Geometry_test.instr.md) +- [Additional information](Geometry_test.md) --- diff --git a/mcstas-comps/examples/Tests_union/Hidden_Cylinder/README.md b/mcstas-comps/examples/Tests_union/Hidden_Cylinder/README.md index 5a0c8728a..87b4790ac 100644 --- a/mcstas-comps/examples/Tests_union/Hidden_Cylinder/README.md +++ b/mcstas-comps/examples/Tests_union/Hidden_Cylinder/README.md @@ -35,7 +35,7 @@ Parameters in **boldface** are required; the others are optional. ## Links - [Source code](Hidden_Cylinder.instr) for `Hidden_Cylinder.instr`. -- [Additional information](Hidden_Cylinder.instr.md) +- [Additional information](Hidden_Cylinder.md) --- diff --git a/mcstas-comps/examples/Tests_union/IncoherentPhonon_test/README.md b/mcstas-comps/examples/Tests_union/IncoherentPhonon_test/README.md index 217964bf1..e5bb580de 100644 --- a/mcstas-comps/examples/Tests_union/IncoherentPhonon_test/README.md +++ b/mcstas-comps/examples/Tests_union/IncoherentPhonon_test/README.md @@ -50,7 +50,7 @@ Parameters in **boldface** are required; the others are optional. ## Links - [Source code](IncoherentPhonon_test.instr) for `IncoherentPhonon_test.instr`. -- [Additional information](IncoherentPhonon_test.instr.md) +- [Additional information](IncoherentPhonon_test.md) --- diff --git a/mcstas-comps/examples/Tests_union/Logger_test/README.md b/mcstas-comps/examples/Tests_union/Logger_test/README.md index 2797b1c5a..2368a0040 100644 --- a/mcstas-comps/examples/Tests_union/Logger_test/README.md +++ b/mcstas-comps/examples/Tests_union/Logger_test/README.md @@ -27,7 +27,7 @@ Parameters in **boldface** are required; the others are optional. ## Links - [Source code](Logger_test.instr) for `Logger_test.instr`. -- [Additional information](Logger_test.instr.md) +- [Additional information](Logger_test.md) --- diff --git a/mcstas-comps/examples/Tests_union/Many_meshes/README.md b/mcstas-comps/examples/Tests_union/Many_meshes/README.md index 5f2b2b80a..dfa80e0ba 100644 --- a/mcstas-comps/examples/Tests_union/Many_meshes/README.md +++ b/mcstas-comps/examples/Tests_union/Many_meshes/README.md @@ -34,7 +34,7 @@ Parameters in **boldface** are required; the others are optional. ## Links - [Source code](Many_meshes.instr) for `Many_meshes.instr`. -- [Additional information](Many_meshes.instr.md) +- [Additional information](Many_meshes.md) --- diff --git a/mcstas-comps/examples/Tests_union/Test_absorption/README.md b/mcstas-comps/examples/Tests_union/Test_absorption/README.md index 4f674d02c..af8ce1ca6 100644 --- a/mcstas-comps/examples/Tests_union/Test_absorption/README.md +++ b/mcstas-comps/examples/Tests_union/Test_absorption/README.md @@ -27,7 +27,7 @@ Parameters in **boldface** are required; the others are optional. ## Links - [Source code](Test_absorption.instr) for `Test_absorption.instr`. -- [Additional information](Test_absorption.instr.md) +- [Additional information](Test_absorption.md) --- diff --git a/mcstas-comps/examples/Tests_union/Test_absorption_image/README.md b/mcstas-comps/examples/Tests_union/Test_absorption_image/README.md index e5642a86e..f16ae562e 100644 --- a/mcstas-comps/examples/Tests_union/Test_absorption_image/README.md +++ b/mcstas-comps/examples/Tests_union/Test_absorption_image/README.md @@ -27,7 +27,7 @@ Parameters in **boldface** are required; the others are optional. ## Links - [Source code](Test_absorption_image.instr) for `Test_absorption_image.instr`. -- [Additional information](Test_absorption_image.instr.md) +- [Additional information](Test_absorption_image.md) --- diff --git a/mcstas-comps/examples/Tests_union/Test_box/README.md b/mcstas-comps/examples/Tests_union/Test_box/README.md index 03eaf278c..2184e5867 100644 --- a/mcstas-comps/examples/Tests_union/Test_box/README.md +++ b/mcstas-comps/examples/Tests_union/Test_box/README.md @@ -28,7 +28,7 @@ Parameters in **boldface** are required; the others are optional. ## Links - [Source code](Test_box.instr) for `Test_box.instr`. -- [Additional information](Test_box.instr.md) +- [Additional information](Test_box.md) --- diff --git a/mcstas-comps/examples/Tests_union/Test_mask/README.md b/mcstas-comps/examples/Tests_union/Test_mask/README.md index 8bf270f15..f9733c1b3 100644 --- a/mcstas-comps/examples/Tests_union/Test_mask/README.md +++ b/mcstas-comps/examples/Tests_union/Test_mask/README.md @@ -26,7 +26,7 @@ Parameters in **boldface** are required; the others are optional. ## Links - [Source code](Test_mask.instr) for `Test_mask.instr`. -- [Additional information](Test_mask.instr.md) +- [Additional information](Test_mask.md) --- diff --git a/mcstas-comps/examples/Tests_union/Test_powder/README.md b/mcstas-comps/examples/Tests_union/Test_powder/README.md index 52215c7a6..344166c6e 100644 --- a/mcstas-comps/examples/Tests_union/Test_powder/README.md +++ b/mcstas-comps/examples/Tests_union/Test_powder/README.md @@ -25,7 +25,7 @@ Parameters in **boldface** are required; the others are optional. ## Links - [Source code](Test_powder.instr) for `Test_powder.instr`. -- [Additional information](Test_powder.instr.md) +- [Additional information](Test_powder.md) --- diff --git a/mcstas-comps/examples/Tests_union/Test_texture/README.md b/mcstas-comps/examples/Tests_union/Test_texture/README.md index ddae26ad7..1684a6037 100644 --- a/mcstas-comps/examples/Tests_union/Test_texture/README.md +++ b/mcstas-comps/examples/Tests_union/Test_texture/README.md @@ -31,7 +31,7 @@ Parameters in **boldface** are required; the others are optional. ## Links - [Source code](Test_texture.instr) for `Test_texture.instr`. -- [Additional information](Test_texture.instr.md) +- [Additional information](Test_texture.md) --- diff --git a/mcstas-comps/examples/Tests_union/Unit_test_abs_logger_1D_space/README.md b/mcstas-comps/examples/Tests_union/Unit_test_abs_logger_1D_space/README.md index 7d5d8e459..d6b87e2ce 100644 --- a/mcstas-comps/examples/Tests_union/Unit_test_abs_logger_1D_space/README.md +++ b/mcstas-comps/examples/Tests_union/Unit_test_abs_logger_1D_space/README.md @@ -27,7 +27,7 @@ Parameters in **boldface** are required; the others are optional. ## Links - [Source code](Unit_test_abs_logger_1D_space.instr) for `Unit_test_abs_logger_1D_space.instr`. -- [Additional information](Unit_test_abs_logger_1D_space.instr.md) +- [Additional information](Unit_test_abs_logger_1D_space.md) --- diff --git a/mcstas-comps/examples/Tests_union/Unit_test_abs_logger_1D_space_event/README.md b/mcstas-comps/examples/Tests_union/Unit_test_abs_logger_1D_space_event/README.md index 9e118abfa..94486113c 100644 --- a/mcstas-comps/examples/Tests_union/Unit_test_abs_logger_1D_space_event/README.md +++ b/mcstas-comps/examples/Tests_union/Unit_test_abs_logger_1D_space_event/README.md @@ -25,7 +25,7 @@ Parameters in **boldface** are required; the others are optional. ## Links - [Source code](Unit_test_abs_logger_1D_space_event.instr) for `Unit_test_abs_logger_1D_space_event.instr`. -- [Additional information](Unit_test_abs_logger_1D_space_event.instr.md) +- [Additional information](Unit_test_abs_logger_1D_space_event.md) --- diff --git a/mcstas-comps/examples/Tests_union/Unit_test_abs_logger_1D_space_tof/README.md b/mcstas-comps/examples/Tests_union/Unit_test_abs_logger_1D_space_tof/README.md index ad260148e..5180d766e 100644 --- a/mcstas-comps/examples/Tests_union/Unit_test_abs_logger_1D_space_tof/README.md +++ b/mcstas-comps/examples/Tests_union/Unit_test_abs_logger_1D_space_tof/README.md @@ -26,7 +26,7 @@ Parameters in **boldface** are required; the others are optional. ## Links - [Source code](Unit_test_abs_logger_1D_space_tof.instr) for `Unit_test_abs_logger_1D_space_tof.instr`. -- [Additional information](Unit_test_abs_logger_1D_space_tof.instr.md) +- [Additional information](Unit_test_abs_logger_1D_space_tof.md) --- diff --git a/mcstas-comps/examples/Tests_union/Unit_test_abs_logger_1D_space_tof_to_lambda/README.md b/mcstas-comps/examples/Tests_union/Unit_test_abs_logger_1D_space_tof_to_lambda/README.md index ff3da02c1..dae64b063 100644 --- a/mcstas-comps/examples/Tests_union/Unit_test_abs_logger_1D_space_tof_to_lambda/README.md +++ b/mcstas-comps/examples/Tests_union/Unit_test_abs_logger_1D_space_tof_to_lambda/README.md @@ -33,7 +33,7 @@ Parameters in **boldface** are required; the others are optional. ## Links - [Source code](Unit_test_abs_logger_1D_space_tof_to_lambda.instr) for `Unit_test_abs_logger_1D_space_tof_to_lambda.instr`. -- [Additional information](Unit_test_abs_logger_1D_space_tof_to_lambda.instr.md) +- [Additional information](Unit_test_abs_logger_1D_space_tof_to_lambda.md) --- diff --git a/mcstas-comps/examples/Tests_union/Unit_test_abs_logger_2D_space/README.md b/mcstas-comps/examples/Tests_union/Unit_test_abs_logger_2D_space/README.md index eb09a764b..b275298a8 100644 --- a/mcstas-comps/examples/Tests_union/Unit_test_abs_logger_2D_space/README.md +++ b/mcstas-comps/examples/Tests_union/Unit_test_abs_logger_2D_space/README.md @@ -25,7 +25,7 @@ Parameters in **boldface** are required; the others are optional. ## Links - [Source code](Unit_test_abs_logger_2D_space.instr) for `Unit_test_abs_logger_2D_space.instr`. -- [Additional information](Unit_test_abs_logger_2D_space.instr.md) +- [Additional information](Unit_test_abs_logger_2D_space.md) --- diff --git a/mcstas-comps/examples/Tests_union/Unit_test_abs_logger_event/README.md b/mcstas-comps/examples/Tests_union/Unit_test_abs_logger_event/README.md index a7505c994..ad1ce4e83 100644 --- a/mcstas-comps/examples/Tests_union/Unit_test_abs_logger_event/README.md +++ b/mcstas-comps/examples/Tests_union/Unit_test_abs_logger_event/README.md @@ -25,7 +25,7 @@ Parameters in **boldface** are required; the others are optional. ## Links - [Source code](Unit_test_abs_logger_event.instr) for `Unit_test_abs_logger_event.instr`. -- [Additional information](Unit_test_abs_logger_event.instr.md) +- [Additional information](Unit_test_abs_logger_event.md) --- diff --git a/mcstas-comps/examples/Tests_union/Unit_test_abs_logger_nD/README.md b/mcstas-comps/examples/Tests_union/Unit_test_abs_logger_nD/README.md index 77a0ff843..52eda28f3 100644 --- a/mcstas-comps/examples/Tests_union/Unit_test_abs_logger_nD/README.md +++ b/mcstas-comps/examples/Tests_union/Unit_test_abs_logger_nD/README.md @@ -27,7 +27,7 @@ Parameters in **boldface** are required; the others are optional. ## Links - [Source code](Unit_test_abs_logger_nD.instr) for `Unit_test_abs_logger_nD.instr`. -- [Additional information](Unit_test_abs_logger_nD.instr.md) +- [Additional information](Unit_test_abs_logger_nD.md) --- diff --git a/mcstas-comps/examples/Tests_union/Unit_test_conditional_PSD/README.md b/mcstas-comps/examples/Tests_union/Unit_test_conditional_PSD/README.md index 2cf195dae..f42b1a844 100644 --- a/mcstas-comps/examples/Tests_union/Unit_test_conditional_PSD/README.md +++ b/mcstas-comps/examples/Tests_union/Unit_test_conditional_PSD/README.md @@ -27,7 +27,7 @@ Parameters in **boldface** are required; the others are optional. ## Links - [Source code](Unit_test_conditional_PSD.instr) for `Unit_test_conditional_PSD.instr`. -- [Additional information](Unit_test_conditional_PSD.instr.md) +- [Additional information](Unit_test_conditional_PSD.md) --- diff --git a/mcstas-comps/examples/Tests_union/Unit_test_conditional_standard/README.md b/mcstas-comps/examples/Tests_union/Unit_test_conditional_standard/README.md index 6cee85932..de154e349 100644 --- a/mcstas-comps/examples/Tests_union/Unit_test_conditional_standard/README.md +++ b/mcstas-comps/examples/Tests_union/Unit_test_conditional_standard/README.md @@ -27,7 +27,7 @@ Parameters in **boldface** are required; the others are optional. ## Links - [Source code](Unit_test_conditional_standard.instr) for `Unit_test_conditional_standard.instr`. -- [Additional information](Unit_test_conditional_standard.instr.md) +- [Additional information](Unit_test_conditional_standard.md) --- diff --git a/mcstas-comps/examples/Tests_union/Unit_test_logger_1D/README.md b/mcstas-comps/examples/Tests_union/Unit_test_logger_1D/README.md index a13e34125..6675799b9 100644 --- a/mcstas-comps/examples/Tests_union/Unit_test_logger_1D/README.md +++ b/mcstas-comps/examples/Tests_union/Unit_test_logger_1D/README.md @@ -25,7 +25,7 @@ Parameters in **boldface** are required; the others are optional. ## Links - [Source code](Unit_test_logger_1D.instr) for `Unit_test_logger_1D.instr`. -- [Additional information](Unit_test_logger_1D.instr.md) +- [Additional information](Unit_test_logger_1D.md) --- diff --git a/mcstas-comps/examples/Tests_union/Unit_test_logger_2DQ/README.md b/mcstas-comps/examples/Tests_union/Unit_test_logger_2DQ/README.md index 9eb93410c..9c14a11ef 100644 --- a/mcstas-comps/examples/Tests_union/Unit_test_logger_2DQ/README.md +++ b/mcstas-comps/examples/Tests_union/Unit_test_logger_2DQ/README.md @@ -25,7 +25,7 @@ Parameters in **boldface** are required; the others are optional. ## Links - [Source code](Unit_test_logger_2DQ.instr) for `Unit_test_logger_2DQ.instr`. -- [Additional information](Unit_test_logger_2DQ.instr.md) +- [Additional information](Unit_test_logger_2DQ.md) --- diff --git a/mcstas-comps/examples/Tests_union/Unit_test_logger_2D_kf/README.md b/mcstas-comps/examples/Tests_union/Unit_test_logger_2D_kf/README.md index 695583f7d..fb97fe580 100644 --- a/mcstas-comps/examples/Tests_union/Unit_test_logger_2D_kf/README.md +++ b/mcstas-comps/examples/Tests_union/Unit_test_logger_2D_kf/README.md @@ -25,7 +25,7 @@ Parameters in **boldface** are required; the others are optional. ## Links - [Source code](Unit_test_logger_2D_kf.instr) for `Unit_test_logger_2D_kf.instr`. -- [Additional information](Unit_test_logger_2D_kf.instr.md) +- [Additional information](Unit_test_logger_2D_kf.md) --- diff --git a/mcstas-comps/examples/Tests_union/Unit_test_logger_2D_kf_time/README.md b/mcstas-comps/examples/Tests_union/Unit_test_logger_2D_kf_time/README.md index f16bc22cb..99fc8a329 100644 --- a/mcstas-comps/examples/Tests_union/Unit_test_logger_2D_kf_time/README.md +++ b/mcstas-comps/examples/Tests_union/Unit_test_logger_2D_kf_time/README.md @@ -25,7 +25,7 @@ Parameters in **boldface** are required; the others are optional. ## Links - [Source code](Unit_test_logger_2D_kf_time.instr) for `Unit_test_logger_2D_kf_time.instr`. -- [Additional information](Unit_test_logger_2D_kf_time.instr.md) +- [Additional information](Unit_test_logger_2D_kf_time.md) --- diff --git a/mcstas-comps/examples/Tests_union/Unit_test_logger_2D_space/README.md b/mcstas-comps/examples/Tests_union/Unit_test_logger_2D_space/README.md index cb848062d..0811593de 100644 --- a/mcstas-comps/examples/Tests_union/Unit_test_logger_2D_space/README.md +++ b/mcstas-comps/examples/Tests_union/Unit_test_logger_2D_space/README.md @@ -27,7 +27,7 @@ Parameters in **boldface** are required; the others are optional. ## Links - [Source code](Unit_test_logger_2D_space.instr) for `Unit_test_logger_2D_space.instr`. -- [Additional information](Unit_test_logger_2D_space.instr.md) +- [Additional information](Unit_test_logger_2D_space.md) --- diff --git a/mcstas-comps/examples/Tests_union/Unit_test_logger_2D_space_time/README.md b/mcstas-comps/examples/Tests_union/Unit_test_logger_2D_space_time/README.md index e81b71fb0..7d4680af6 100644 --- a/mcstas-comps/examples/Tests_union/Unit_test_logger_2D_space_time/README.md +++ b/mcstas-comps/examples/Tests_union/Unit_test_logger_2D_space_time/README.md @@ -25,7 +25,7 @@ Parameters in **boldface** are required; the others are optional. ## Links - [Source code](Unit_test_logger_2D_space_time.instr) for `Unit_test_logger_2D_space_time.instr`. -- [Additional information](Unit_test_logger_2D_space_time.instr.md) +- [Additional information](Unit_test_logger_2D_space_time.md) --- diff --git a/mcstas-comps/examples/Tests_union/Unit_test_logger_3D_space/README.md b/mcstas-comps/examples/Tests_union/Unit_test_logger_3D_space/README.md index fee90743b..6c5057222 100644 --- a/mcstas-comps/examples/Tests_union/Unit_test_logger_3D_space/README.md +++ b/mcstas-comps/examples/Tests_union/Unit_test_logger_3D_space/README.md @@ -25,7 +25,7 @@ Parameters in **boldface** are required; the others are optional. ## Links - [Source code](Unit_test_logger_3D_space.instr) for `Unit_test_logger_3D_space.instr`. -- [Additional information](Unit_test_logger_3D_space.instr.md) +- [Additional information](Unit_test_logger_3D_space.md) --- diff --git a/mcstas-comps/examples/Tests_union/Unit_test_loggers_base/README.md b/mcstas-comps/examples/Tests_union/Unit_test_loggers_base/README.md index a7c51abda..6015cd325 100644 --- a/mcstas-comps/examples/Tests_union/Unit_test_loggers_base/README.md +++ b/mcstas-comps/examples/Tests_union/Unit_test_loggers_base/README.md @@ -25,7 +25,7 @@ Parameters in **boldface** are required; the others are optional. ## Links - [Source code](Unit_test_loggers_base.instr) for `Unit_test_loggers_base.instr`. -- [Additional information](Unit_test_loggers_base.instr.md) +- [Additional information](Unit_test_loggers_base.md) --- diff --git a/mcstas-comps/examples/Tools/Histogrammer/README.md b/mcstas-comps/examples/Tools/Histogrammer/README.md index e9b1af28c..db6c6ab9f 100644 --- a/mcstas-comps/examples/Tools/Histogrammer/README.md +++ b/mcstas-comps/examples/Tools/Histogrammer/README.md @@ -46,7 +46,7 @@ Parameters in **boldface** are required; the others are optional. ## Links - [Source code](Histogrammer.instr) for `Histogrammer.instr`. -- [Additional information](Histogrammer.instr.md) +- [Additional information](Histogrammer.md) - Virtual_input component (McStas event file) - Vitess_input component (Vitess event file) - Virtual_mcnp_input component (MCNP PTRAC event file) diff --git a/mcstas-comps/examples/Tools/MCPL2Mantid_flat/README.md b/mcstas-comps/examples/Tools/MCPL2Mantid_flat/README.md index 498a0d209..67c43dd76 100644 --- a/mcstas-comps/examples/Tools/MCPL2Mantid_flat/README.md +++ b/mcstas-comps/examples/Tools/MCPL2Mantid_flat/README.md @@ -50,7 +50,7 @@ Parameters in **boldface** are required; the others are optional. ## Links - [Source code](MCPL2Mantid_flat.instr) for `MCPL2Mantid_flat.instr`. -- [Additional information](MCPL2Mantid_flat.instr.md) +- [Additional information](MCPL2Mantid_flat.md) - - MCPL website at https://mctools.github.io/mcpl/ diff --git a/mcstas-comps/examples/Tools/MCPL2hist/README.md b/mcstas-comps/examples/Tools/MCPL2hist/README.md index bc037c2d0..f50f9a5dc 100644 --- a/mcstas-comps/examples/Tools/MCPL2hist/README.md +++ b/mcstas-comps/examples/Tools/MCPL2hist/README.md @@ -36,7 +36,7 @@ Parameters in **boldface** are required; the others are optional. ## Links - [Source code](MCPL2hist.instr) for `MCPL2hist.instr`. -- [Additional information](MCPL2hist.instr.md) +- [Additional information](MCPL2hist.md) - - MCPL website at https://mctools.github.io/mcpl/ diff --git a/mcstas-comps/examples/Tools/MCPL_filter_energy/README.md b/mcstas-comps/examples/Tools/MCPL_filter_energy/README.md index 6fd79a7e3..6ff49e6ca 100644 --- a/mcstas-comps/examples/Tools/MCPL_filter_energy/README.md +++ b/mcstas-comps/examples/Tools/MCPL_filter_energy/README.md @@ -31,7 +31,7 @@ Parameters in **boldface** are required; the others are optional. ## Links - [Source code](MCPL_filter_energy.instr) for `MCPL_filter_energy.instr`. -- [Additional information](MCPL_filter_energy.instr.md) +- [Additional information](MCPL_filter_energy.md) - - MCPL website at https://mctools.github.io/mcpl/ diff --git a/mcstas-comps/examples/Tools/MCPL_filter_radius/README.md b/mcstas-comps/examples/Tools/MCPL_filter_radius/README.md index 14a6b2b6d..5d21a0ecb 100644 --- a/mcstas-comps/examples/Tools/MCPL_filter_radius/README.md +++ b/mcstas-comps/examples/Tools/MCPL_filter_radius/README.md @@ -28,7 +28,7 @@ Parameters in **boldface** are required; the others are optional. ## Links - [Source code](MCPL_filter_radius.instr) for `MCPL_filter_radius.instr`. -- [Additional information](MCPL_filter_radius.instr.md) +- [Additional information](MCPL_filter_radius.md) - - MCPL website at https://mctools.github.io/mcpl/ diff --git a/mcstas-comps/examples/Tools/MCPL_filter_wavelength/README.md b/mcstas-comps/examples/Tools/MCPL_filter_wavelength/README.md index 8b45e3178..4e5790264 100644 --- a/mcstas-comps/examples/Tools/MCPL_filter_wavelength/README.md +++ b/mcstas-comps/examples/Tools/MCPL_filter_wavelength/README.md @@ -31,7 +31,7 @@ Parameters in **boldface** are required; the others are optional. ## Links - [Source code](MCPL_filter_wavelength.instr) for `MCPL_filter_wavelength.instr`. -- [Additional information](MCPL_filter_wavelength.instr.md) +- [Additional information](MCPL_filter_wavelength.md) - - MCPL website at https://mctools.github.io/mcpl/ diff --git a/mcstas-comps/examples/Tools/vinput2mcpl/README.md b/mcstas-comps/examples/Tools/vinput2mcpl/README.md index cb5b28c5c..60631ccce 100644 --- a/mcstas-comps/examples/Tools/vinput2mcpl/README.md +++ b/mcstas-comps/examples/Tools/vinput2mcpl/README.md @@ -29,7 +29,7 @@ Parameters in **boldface** are required; the others are optional. ## Links - [Source code](vinput2mcpl.instr) for `vinput2mcpl.instr`. -- [Additional information](vinput2mcpl.instr.md) +- [Additional information](vinput2mcpl.md) - --- diff --git a/mcstas-comps/examples/Union_demos/Bispectral/README.md b/mcstas-comps/examples/Union_demos/Bispectral/README.md index e410a8bfb..bd712ab3c 100644 --- a/mcstas-comps/examples/Union_demos/Bispectral/README.md +++ b/mcstas-comps/examples/Union_demos/Bispectral/README.md @@ -30,7 +30,7 @@ Parameters in **boldface** are required; the others are optional. ## Links - [Source code](Bispectral.instr) for `Bispectral.instr`. -- [Additional information](Bispectral.instr.md) +- [Additional information](Bispectral.md) - A reference/HTML link for more information --- diff --git a/mcstas-comps/examples/Union_demos/Demonstration/README.md b/mcstas-comps/examples/Union_demos/Demonstration/README.md index 291fa3cc4..10bd48a8b 100644 --- a/mcstas-comps/examples/Union_demos/Demonstration/README.md +++ b/mcstas-comps/examples/Union_demos/Demonstration/README.md @@ -33,7 +33,7 @@ Parameters in **boldface** are required; the others are optional. ## Links - [Source code](Demonstration.instr) for `Demonstration.instr`. -- [Additional information](Demonstration.instr.md) +- [Additional information](Demonstration.md) --- diff --git a/mcstas-comps/examples/Union_demos/External_component/README.md b/mcstas-comps/examples/Union_demos/External_component/README.md index eee89bb3b..be74c769f 100644 --- a/mcstas-comps/examples/Union_demos/External_component/README.md +++ b/mcstas-comps/examples/Union_demos/External_component/README.md @@ -29,7 +29,7 @@ Parameters in **boldface** are required; the others are optional. ## Links - [Source code](External_component.instr) for `External_component.instr`. -- [Additional information](External_component.instr.md) +- [Additional information](External_component.md) --- diff --git a/mcstas-comps/examples/Union_demos/Laue_camera/README.md b/mcstas-comps/examples/Union_demos/Laue_camera/README.md index 6cc795a7a..72f475a13 100644 --- a/mcstas-comps/examples/Union_demos/Laue_camera/README.md +++ b/mcstas-comps/examples/Union_demos/Laue_camera/README.md @@ -39,7 +39,7 @@ Parameters in **boldface** are required; the others are optional. ## Links - [Source code](Laue_camera.instr) for `Laue_camera.instr`. -- [Additional information](Laue_camera.instr.md) +- [Additional information](Laue_camera.md) --- diff --git a/mcstas-comps/examples/Union_demos/Manual_example/README.md b/mcstas-comps/examples/Union_demos/Manual_example/README.md index b36bf76c1..03106fce1 100644 --- a/mcstas-comps/examples/Union_demos/Manual_example/README.md +++ b/mcstas-comps/examples/Union_demos/Manual_example/README.md @@ -27,7 +27,7 @@ Parameters in **boldface** are required; the others are optional. ## Links - [Source code](Manual_example.instr) for `Manual_example.instr`. -- [Additional information](Manual_example.instr.md) +- [Additional information](Manual_example.md) --- diff --git a/mcstas-comps/examples/Union_demos/Sample_picture_replica/README.md b/mcstas-comps/examples/Union_demos/Sample_picture_replica/README.md index 9660ce110..589e710c2 100644 --- a/mcstas-comps/examples/Union_demos/Sample_picture_replica/README.md +++ b/mcstas-comps/examples/Union_demos/Sample_picture_replica/README.md @@ -27,7 +27,7 @@ Parameters in **boldface** are required; the others are optional. ## Links - [Source code](Sample_picture_replica.instr) for `Sample_picture_replica.instr`. -- [Additional information](Sample_picture_replica.instr.md) +- [Additional information](Sample_picture_replica.md) --- diff --git a/mcstas-comps/examples/Union_demos/Tagging_demo/README.md b/mcstas-comps/examples/Union_demos/Tagging_demo/README.md index 4e1e8b187..09d0ffd5d 100644 --- a/mcstas-comps/examples/Union_demos/Tagging_demo/README.md +++ b/mcstas-comps/examples/Union_demos/Tagging_demo/README.md @@ -38,7 +38,7 @@ Parameters in **boldface** are required; the others are optional. ## Links - [Source code](Tagging_demo.instr) for `Tagging_demo.instr`. -- [Additional information](Tagging_demo.instr.md) +- [Additional information](Tagging_demo.md) --- diff --git a/mcstas-comps/examples/Union_demos/Time_of_flight/README.md b/mcstas-comps/examples/Union_demos/Time_of_flight/README.md index bcbc99c34..2468b5230 100644 --- a/mcstas-comps/examples/Union_demos/Time_of_flight/README.md +++ b/mcstas-comps/examples/Union_demos/Time_of_flight/README.md @@ -28,7 +28,7 @@ Parameters in **boldface** are required; the others are optional. ## Links - [Source code](Time_of_flight.instr) for `Time_of_flight.instr`. -- [Additional information](Time_of_flight.instr.md) +- [Additional information](Time_of_flight.md) --- diff --git a/mcstas-comps/examples/Union_sample_environments/SE_usage_example/README.md b/mcstas-comps/examples/Union_sample_environments/SE_usage_example/README.md index 708c21730..1a5555b7f 100644 --- a/mcstas-comps/examples/Union_sample_environments/SE_usage_example/README.md +++ b/mcstas-comps/examples/Union_sample_environments/SE_usage_example/README.md @@ -28,7 +28,7 @@ Parameters in **boldface** are required; the others are optional. ## Links - [Source code](SE_usage_example.instr) for `SE_usage_example.instr`. -- [Additional information](SE_usage_example.instr.md) +- [Additional information](SE_usage_example.md) --- diff --git a/mcstas-comps/examples/Union_sample_environments/cryostat_example/README.md b/mcstas-comps/examples/Union_sample_environments/cryostat_example/README.md index 0f9cffdcc..1015bfe7d 100644 --- a/mcstas-comps/examples/Union_sample_environments/cryostat_example/README.md +++ b/mcstas-comps/examples/Union_sample_environments/cryostat_example/README.md @@ -34,7 +34,7 @@ Parameters in **boldface** are required; the others are optional. ## Links - [Source code](cryostat_example.instr) for `cryostat_example.instr`. -- [Additional information](cryostat_example.instr.md) +- [Additional information](cryostat_example.md) --- diff --git a/mcstas-comps/examples/Union_validation/Incoherent_validation/README.md b/mcstas-comps/examples/Union_validation/Incoherent_validation/README.md index 7f1e08dcc..90c5c678d 100644 --- a/mcstas-comps/examples/Union_validation/Incoherent_validation/README.md +++ b/mcstas-comps/examples/Union_validation/Incoherent_validation/README.md @@ -33,7 +33,7 @@ Parameters in **boldface** are required; the others are optional. ## Links - [Source code](Incoherent_validation.instr) for `Incoherent_validation.instr`. -- [Additional information](Incoherent_validation.instr.md) +- [Additional information](Incoherent_validation.md) --- diff --git a/mcstas-comps/examples/Union_validation/Mirror_validation/README.md b/mcstas-comps/examples/Union_validation/Mirror_validation/README.md index fb221fda9..94b62d6c6 100644 --- a/mcstas-comps/examples/Union_validation/Mirror_validation/README.md +++ b/mcstas-comps/examples/Union_validation/Mirror_validation/README.md @@ -42,7 +42,7 @@ Parameters in **boldface** are required; the others are optional. ## Links - [Source code](Mirror_validation.instr) for `Mirror_validation.instr`. -- [Additional information](Mirror_validation.instr.md) +- [Additional information](Mirror_validation.md) - A reference/HTML link for more information --- diff --git a/mcstas-comps/examples/Union_validation/Powder_validation/README.md b/mcstas-comps/examples/Union_validation/Powder_validation/README.md index fb2c4a962..fb9a81456 100644 --- a/mcstas-comps/examples/Union_validation/Powder_validation/README.md +++ b/mcstas-comps/examples/Union_validation/Powder_validation/README.md @@ -39,7 +39,7 @@ Parameters in **boldface** are required; the others are optional. ## Links - [Source code](Powder_validation.instr) for `Powder_validation.instr`. -- [Additional information](Powder_validation.instr.md) +- [Additional information](Powder_validation.md) --- diff --git a/mcstas-comps/examples/Union_validation/Single_crystal_validation/README.md b/mcstas-comps/examples/Union_validation/Single_crystal_validation/README.md index bcba06deb..289cb0275 100644 --- a/mcstas-comps/examples/Union_validation/Single_crystal_validation/README.md +++ b/mcstas-comps/examples/Union_validation/Single_crystal_validation/README.md @@ -47,7 +47,7 @@ Parameters in **boldface** are required; the others are optional. ## Links - [Source code](Single_crystal_validation.instr) for `Single_crystal_validation.instr`. -- [Additional information](Single_crystal_validation.instr.md) +- [Additional information](Single_crystal_validation.md) --- diff --git a/mcstas-comps/examples/elearning/Radiography_absorbing_edge/README.md b/mcstas-comps/examples/elearning/Radiography_absorbing_edge/README.md index c7d5e5afb..3e1c69344 100644 --- a/mcstas-comps/examples/elearning/Radiography_absorbing_edge/README.md +++ b/mcstas-comps/examples/elearning/Radiography_absorbing_edge/README.md @@ -35,7 +35,7 @@ Parameters in **boldface** are required; the others are optional. ## Links - [Source code](Radiography_absorbing_edge.instr) for `Radiography_absorbing_edge.instr`. -- [Additional information](Radiography_absorbing_edge.instr.md) +- [Additional information](Radiography_absorbing_edge.md) - http://vnt.nmi3.org/mcstas-web --- diff --git a/mcstas-comps/examples/elearning/Reflectometer/README.md b/mcstas-comps/examples/elearning/Reflectometer/README.md index 92f093c6a..88f0e9f7b 100644 --- a/mcstas-comps/examples/elearning/Reflectometer/README.md +++ b/mcstas-comps/examples/elearning/Reflectometer/README.md @@ -49,7 +49,7 @@ Parameters in **boldface** are required; the others are optional. ## Links - [Source code](Reflectometer.instr) for `Reflectometer.instr`. -- [Additional information](Reflectometer.instr.md) +- [Additional information](Reflectometer.md) --- diff --git a/mcstas-comps/examples/elearning/SANSsimple/README.md b/mcstas-comps/examples/elearning/SANSsimple/README.md index 535b0a72d..dbd559905 100644 --- a/mcstas-comps/examples/elearning/SANSsimple/README.md +++ b/mcstas-comps/examples/elearning/SANSsimple/README.md @@ -41,7 +41,7 @@ Parameters in **boldface** are required; the others are optional. ## Links - [Source code](SANSsimple.instr) for `SANSsimple.instr`. -- [Additional information](SANSsimple.instr.md) +- [Additional information](SANSsimple.md) - A reference/HTML link for more information --- diff --git a/mcstas-comps/examples/elearning/SANSsimpleSpheres/README.md b/mcstas-comps/examples/elearning/SANSsimpleSpheres/README.md index 4987dc5df..89a4960e1 100644 --- a/mcstas-comps/examples/elearning/SANSsimpleSpheres/README.md +++ b/mcstas-comps/examples/elearning/SANSsimpleSpheres/README.md @@ -39,7 +39,7 @@ Parameters in **boldface** are required; the others are optional. ## Links - [Source code](SANSsimpleSpheres.instr) for `SANSsimpleSpheres.instr`. -- [Additional information](SANSsimpleSpheres.instr.md) +- [Additional information](SANSsimpleSpheres.md) - https://sim.e-neutrons.org/instrument/intro-ns/SANSsimple --- diff --git a/mcstas-comps/examples/elearning/SimplePowderDiffractometer/README.md b/mcstas-comps/examples/elearning/SimplePowderDiffractometer/README.md index f559a1799..caf9f6870 100644 --- a/mcstas-comps/examples/elearning/SimplePowderDiffractometer/README.md +++ b/mcstas-comps/examples/elearning/SimplePowderDiffractometer/README.md @@ -34,7 +34,7 @@ Parameters in **boldface** are required; the others are optional. ## Links - [Source code](SimplePowderDiffractometer.instr) for `SimplePowderDiffractometer.instr`. -- [Additional information](SimplePowderDiffractometer.instr.md) +- [Additional information](SimplePowderDiffractometer.md) - http://vnt.nmi3.org/mcstas-web --- From 8c746f9071639eb4a5ffc702cb6eeaeb819d1830 Mon Sep 17 00:00:00 2001 From: Peter Willendrup Date: Wed, 22 Apr 2026 13:51:21 +0200 Subject: [PATCH 40/43] Add missing author info --- .../Test_Pol_Tabled/Test_Pol_Tabled.instr | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/mcstas-comps/examples/Tests_polarization/Test_Pol_Tabled/Test_Pol_Tabled.instr b/mcstas-comps/examples/Tests_polarization/Test_Pol_Tabled/Test_Pol_Tabled.instr index 232046a98..37c2a783b 100644 --- a/mcstas-comps/examples/Tests_polarization/Test_Pol_Tabled/Test_Pol_Tabled.instr +++ b/mcstas-comps/examples/Tests_polarization/Test_Pol_Tabled/Test_Pol_Tabled.instr @@ -4,9 +4,9 @@ * Instrument: Test_Pol_Tabled (rename also the example and DEFINE lines below) * * %Identification -* Written by: Your name (email) -* Date: Current Date -* Origin: Your institution +* Written by: Peter Willendrup +* Date: 2024 +* Origin: DTU * %INSTRUMENT_SITE: Tests_polarization * * Test the tabled magnetic field option From d901664afa62e75b3be7e9f90cdb6bedff2b13ca Mon Sep 17 00:00:00 2001 From: Peter Willendrup Date: Wed, 22 Apr 2026 13:51:56 +0200 Subject: [PATCH 41/43] Update MD --- .../examples/Tests_polarization/Test_Pol_Tabled/README.md | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/mcstas-comps/examples/Tests_polarization/Test_Pol_Tabled/README.md b/mcstas-comps/examples/Tests_polarization/Test_Pol_Tabled/README.md index e971322eb..989ee50a5 100644 --- a/mcstas-comps/examples/Tests_polarization/Test_Pol_Tabled/README.md +++ b/mcstas-comps/examples/Tests_polarization/Test_Pol_Tabled/README.md @@ -5,9 +5,9 @@ ## Identification - **Site:** Tests_polarization -- **Author:** Your name (email) -- **Origin:** Your institution -- **Date:** Current Date +- **Author:** Peter Willendrup +- **Origin:** DTU +- **Date:** 2024 ## Description From 0e680f88a5d2a604c1a492540ae5e55b000ee80d Mon Sep 17 00:00:00 2001 From: Peter Willendrup Date: Wed, 22 Apr 2026 13:54:09 +0200 Subject: [PATCH 42/43] Add note that additional info is not always included --- tools/Python/mcdoc/mcdoc.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/tools/Python/mcdoc/mcdoc.py b/tools/Python/mcdoc/mcdoc.py index 83692279b..833bfa64a 100644 --- a/tools/Python/mcdoc/mcdoc.py +++ b/tools/Python/mcdoc/mcdoc.py @@ -1191,7 +1191,7 @@ def create(self): lines.append('## Links') lines.append('') lines.append('- [Source code](%s) for `%s`.' % (os.path.basename(i.filepath), os.path.basename(i.filepath))) - lines.append('- [Additional information](%s.md)' % (os.path.basename(i.filepath).split('.')[0])) + lines.append('- [Additional information](%s.md) (only if available!)' % (os.path.basename(i.filepath).split('.')[0])) for l in i.links: lines.append('- %s' % _md_text(l)) lines.append('') From 25f31385a05bb1defdad028e1bb8036e2d2dfcb9 Mon Sep 17 00:00:00 2001 From: Peter Willendrup Date: Wed, 22 Apr 2026 13:56:10 +0200 Subject: [PATCH 43/43] Update README.md's --- mcstas-comps/examples/BNL/BNL_H8/README.md | 2 +- mcstas-comps/examples/BNL/BNL_H8_simple/README.md | 2 +- mcstas-comps/examples/BNL/h8_test_legacy/README.md | 2 +- mcstas-comps/examples/DTU/Test_FZP_simple/README.md | 2 +- mcstas-comps/examples/DTU/Vin_test/README.md | 2 +- mcstas-comps/examples/DTU/Vout_test/README.md | 2 +- mcstas-comps/examples/ESS/ESS_BEER_MCPL/README.md | 2 +- mcstas-comps/examples/ESS/ESS_IN5_reprate/README.md | 2 +- mcstas-comps/examples/ESS/ESS_Testbeamline_HZB_V20/README.md | 2 +- .../examples/ESS/ESS_butterfly_Guide_curved_test/README.md | 2 +- mcstas-comps/examples/ESS/ESS_butterfly_MCPL_test/README.md | 2 +- mcstas-comps/examples/ESS/ESS_butterfly_test/README.md | 2 +- .../examples/ESS/ESS_butterfly_tfocus_NOFOCUS_test/README.md | 2 +- mcstas-comps/examples/ESS/ESS_butterfly_tfocus_test/README.md | 2 +- mcstas-comps/examples/ESS/ESS_mcpl2hist/README.md | 2 +- mcstas-comps/examples/FZ_Juelich/FZJ_BenchmarkSfin2/README.md | 2 +- mcstas-comps/examples/FZ_Juelich/FZJ_KWS2_Lens/README.md | 2 +- .../examples/FZ_Juelich/FZJ_SANS_KWS2_AnySample/README.md | 2 +- mcstas-comps/examples/HZB/HZB_FLEX/README.md | 2 +- mcstas-comps/examples/HZB/HZB_NEAT/README.md | 2 +- mcstas-comps/examples/HighNESS/WOFSANS/README.md | 2 +- mcstas-comps/examples/ILL/ILL_BRISP/README.md | 2 +- mcstas-comps/examples/ILL/ILL_D2B/README.md | 2 +- mcstas-comps/examples/ILL/ILL_D2B_noenv/README.md | 2 +- mcstas-comps/examples/ILL/ILL_D4/README.md | 2 +- mcstas-comps/examples/ILL/ILL_H10_IN8/README.md | 2 +- mcstas-comps/examples/ILL/ILL_H113/README.md | 2 +- mcstas-comps/examples/ILL/ILL_H13_IN20/README.md | 2 +- mcstas-comps/examples/ILL/ILL_H142/README.md | 2 +- mcstas-comps/examples/ILL/ILL_H142_D33/README.md | 2 +- mcstas-comps/examples/ILL/ILL_H142_IN12/README.md | 2 +- mcstas-comps/examples/ILL/ILL_H142_simple/README.md | 2 +- mcstas-comps/examples/ILL/ILL_H143_LADI/README.md | 2 +- mcstas-comps/examples/ILL/ILL_H15/README.md | 2 +- mcstas-comps/examples/ILL/ILL_H15_D11/README.md | 2 +- mcstas-comps/examples/ILL/ILL_H15_IN6/README.md | 2 +- mcstas-comps/examples/ILL/ILL_H15_SAM/README.md | 2 +- mcstas-comps/examples/ILL/ILL_H16/README.md | 2 +- mcstas-comps/examples/ILL/ILL_H16_IN5/README.md | 2 +- mcstas-comps/examples/ILL/ILL_H22/README.md | 2 +- mcstas-comps/examples/ILL/ILL_H22_D1A/README.md | 2 +- mcstas-comps/examples/ILL/ILL_H22_D1A_noenv/README.md | 2 +- mcstas-comps/examples/ILL/ILL_H22_D1B/README.md | 2 +- mcstas-comps/examples/ILL/ILL_H22_D1B_noenv/README.md | 2 +- mcstas-comps/examples/ILL/ILL_H22_VIVALDI/README.md | 2 +- mcstas-comps/examples/ILL/ILL_H24/README.md | 2 +- mcstas-comps/examples/ILL/ILL_H25/README.md | 2 +- mcstas-comps/examples/ILL/ILL_H25_IN22/README.md | 2 +- mcstas-comps/examples/ILL/ILL_H5/README.md | 2 +- mcstas-comps/examples/ILL/ILL_H512_D22/README.md | 2 +- mcstas-comps/examples/ILL/ILL_H53/README.md | 2 +- mcstas-comps/examples/ILL/ILL_H53_D16/README.md | 2 +- mcstas-comps/examples/ILL/ILL_H53_IN14/README.md | 2 +- mcstas-comps/examples/ILL/ILL_H5_new/README.md | 2 +- mcstas-comps/examples/ILL/ILL_H8_IN1/README.md | 2 +- mcstas-comps/examples/ILL/ILL_IN13/README.md | 2 +- mcstas-comps/examples/ILL/ILL_IN4/README.md | 2 +- mcstas-comps/examples/ILL/ILL_IN5/README.md | 2 +- mcstas-comps/examples/ILL/ILL_IN5_Spots/README.md | 2 +- mcstas-comps/examples/ILL/ILL_IN6/README.md | 2 +- mcstas-comps/examples/ILL/ILL_Lagrange/README.md | 2 +- mcstas-comps/examples/ILL/ILL_SALSA/README.md | 2 +- mcstas-comps/examples/ISIS/ISIS_CRISP/README.md | 2 +- mcstas-comps/examples/ISIS/ISIS_GEM/README.md | 2 +- mcstas-comps/examples/ISIS/ISIS_HET/README.md | 2 +- mcstas-comps/examples/ISIS/ISIS_IMAT/README.md | 2 +- mcstas-comps/examples/ISIS/ISIS_LET/README.md | 2 +- mcstas-comps/examples/ISIS/ISIS_MERLIN/README.md | 2 +- mcstas-comps/examples/ISIS/ISIS_OSIRIS/README.md | 2 +- mcstas-comps/examples/ISIS/ISIS_Prisma2/README.md | 2 +- mcstas-comps/examples/ISIS/ISIS_SANS2d/README.md | 2 +- mcstas-comps/examples/ISIS/ISIS_TOSCA_preupgrade/README.md | 2 +- mcstas-comps/examples/ISIS/ISIS_TS1_Brilliance/README.md | 2 +- mcstas-comps/examples/ISIS/ISIS_TS2_Brilliance/README.md | 2 +- mcstas-comps/examples/ISIS/ISIS_test/README.md | 2 +- mcstas-comps/examples/ISIS/ViewModISIStest/README.md | 2 +- mcstas-comps/examples/LLB/LLB_6T2/README.md | 2 +- mcstas-comps/examples/Mantid/ILL_H16_IN5_Mantid/README.md | 2 +- mcstas-comps/examples/Mantid/ILL_H16_Mantid/README.md | 2 +- mcstas-comps/examples/Mantid/ILL_IN5_Mantid/README.md | 2 +- mcstas-comps/examples/Mantid/ISIS_SANS2d_Mantid/README.md | 2 +- .../examples/Mantid/ISIS_TOSCA_preupgrade_Mantid/README.md | 2 +- mcstas-comps/examples/Mantid/SNS_ARCS_Mantid/README.md | 2 +- mcstas-comps/examples/Mantid/Tools_ONION/README.md | 2 +- mcstas-comps/examples/Mantid/templateSANS2_Mantid/README.md | 2 +- mcstas-comps/examples/Mantid/templateSANS_Mantid/README.md | 2 +- mcstas-comps/examples/Mantid/templateSasView_Mantid/README.md | 2 +- .../Mantid/templateVanadiumMultipleScat_Mantid/README.md | 2 +- mcstas-comps/examples/NCrystal/NCrystal_example/README.md | 2 +- mcstas-comps/examples/NCrystal/Union_NCrystal_example/README.md | 2 +- .../examples/NCrystal/Union_NCrystal_mix_example/README.md | 2 +- mcstas-comps/examples/Necsa/SAFARI_MPISI/README.md | 2 +- mcstas-comps/examples/Necsa/SAFARI_PITSI/README.md | 2 +- mcstas-comps/examples/PSI/PSI_DMC/README.md | 2 +- mcstas-comps/examples/PSI/PSI_DMC_simple/README.md | 2 +- mcstas-comps/examples/PSI/PSI_Focus/README.md | 2 +- mcstas-comps/examples/PSI/PSI_source/README.md | 2 +- mcstas-comps/examples/PSI/RITA-II/README.md | 2 +- mcstas-comps/examples/Risoe/TAS1_C1/README.md | 2 +- mcstas-comps/examples/Risoe/TAS1_C1_Tilt/README.md | 2 +- mcstas-comps/examples/Risoe/TAS1_Diff_Powder/README.md | 2 +- mcstas-comps/examples/Risoe/TAS1_Diff_Slit/README.md | 2 +- mcstas-comps/examples/Risoe/TAS1_Diff_Vana/README.md | 2 +- mcstas-comps/examples/Risoe/TAS1_Powder/README.md | 2 +- mcstas-comps/examples/Risoe/TAS1_Vana/README.md | 2 +- mcstas-comps/examples/SINE2020/McStas_Isotropic_Sqw/README.md | 2 +- mcstas-comps/examples/SINE2020/McStas_PowderN/README.md | 2 +- mcstas-comps/examples/SINE2020/McStas_Single_crystal/README.md | 2 +- .../examples/SNS/Gallmeier_SNS_decoupled_poisoned/README.md | 2 +- .../examples/SNS/Granroth_SNS_decoupled_poisoned/README.md | 2 +- .../examples/SNS/Mezei_SNS_decoupled_poisoned/README.md | 2 +- mcstas-comps/examples/SNS/SNS_ARCS/README.md | 2 +- mcstas-comps/examples/SNS/SNS_BASIS/README.md | 2 +- mcstas-comps/examples/SNS/SNS_analytic_test/README.md | 2 +- mcstas-comps/examples/SNS/SNS_test/README.md | 2 +- mcstas-comps/examples/TRIGA/RTP_DIF/README.md | 2 +- mcstas-comps/examples/TRIGA/RTP_Laue/README.md | 2 +- mcstas-comps/examples/TRIGA/RTP_NeutronRadiography/README.md | 2 +- mcstas-comps/examples/TRIGA/RTP_SANS/README.md | 2 +- mcstas-comps/examples/TUDelft/SEMSANS_Delft/README.md | 2 +- mcstas-comps/examples/TUDelft/SEMSANS_instrument/README.md | 2 +- mcstas-comps/examples/TUDelft/SESANS_Delft/README.md | 2 +- mcstas-comps/examples/Templates/BTsimple/README.md | 2 +- mcstas-comps/examples/Templates/Demo_shape_primitives/README.md | 2 +- .../examples/Templates/Demo_shape_primitives_simple/README.md | 2 +- mcstas-comps/examples/Templates/TOF_Reflectometer/README.md | 2 +- .../Templates/Test_SasView_bcc_paracrystal_aniso/README.md | 2 +- mcstas-comps/examples/Templates/Test_SasView_guinier/README.md | 2 +- mcstas-comps/examples/Templates/Tomography/README.md | 2 +- mcstas-comps/examples/Templates/mini/README.md | 2 +- mcstas-comps/examples/Templates/template/README.md | 2 +- mcstas-comps/examples/Templates/templateDIFF/README.md | 2 +- mcstas-comps/examples/Templates/templateLaue/README.md | 2 +- mcstas-comps/examples/Templates/templateNMX/README.md | 2 +- mcstas-comps/examples/Templates/templateNMX_TOF/README.md | 2 +- mcstas-comps/examples/Templates/templateSANS/README.md | 2 +- mcstas-comps/examples/Templates/templateSANS2/README.md | 2 +- mcstas-comps/examples/Templates/templateSANS_MCPL/README.md | 2 +- mcstas-comps/examples/Templates/templateSasView/README.md | 2 +- mcstas-comps/examples/Templates/templateTAS/README.md | 2 +- mcstas-comps/examples/Templates/templateTOF/README.md | 2 +- mcstas-comps/examples/Templates/template_simple/README.md | 2 +- mcstas-comps/examples/Tests_MCPL_etc/Test_MCPL_input/README.md | 2 +- .../examples/Tests_MCPL_etc/Test_MCPL_input_once/README.md | 2 +- mcstas-comps/examples/Tests_MCPL_etc/Test_MCPL_output/README.md | 2 +- mcstas-comps/examples/Tests_RNG/Test_RNG_rand01/README.md | 2 +- mcstas-comps/examples/Tests_RNG/Test_RNG_randnorm/README.md | 2 +- mcstas-comps/examples/Tests_RNG/Test_RNG_randpm1/README.md | 2 +- mcstas-comps/examples/Tests_RNG/Test_RNG_randtriangle/README.md | 2 +- .../examples/Tests_RNG/Test_RNG_randvec_target_circle/README.md | 2 +- .../examples/Tests_RNG/Test_RNG_randvec_target_rect/README.md | 2 +- .../Tests_RNG/Test_RNG_randvec_target_rect_angular/README.md | 2 +- mcstas-comps/examples/Tests_grammar/README.md | 2 +- mcstas-comps/examples/Tests_grammar/Test_GROUP/README.md | 2 +- mcstas-comps/examples/Tests_grammar/Test_Jump_Iterate/README.md | 2 +- .../examples/Tests_grammar/Unittest_ALLOW_BACKPROP/README.md | 2 +- .../examples/Tests_grammar/Unittest_JUMP_ITERATE/README.md | 2 +- .../examples/Tests_grammar/Unittest_JUMP_WHEN/README.md | 2 +- mcstas-comps/examples/Tests_grammar/Unittest_SPLIT/README.md | 2 +- .../examples/Tests_grammar/Unittest_SPLIT_sample/README.md | 2 +- .../examples/Tests_monitors/Test_Cyl_monitors/README.md | 2 +- mcstas-comps/examples/Tests_monitors/Test_Monitor_nD/README.md | 2 +- .../examples/Tests_monitors/Test_TOF_PSDmonitor_toQ/README.md | 2 +- mcstas-comps/examples/Tests_optics/Test_Al_windows/README.md | 2 +- .../examples/Tests_optics/Test_Collimator_Radial/README.md | 2 +- mcstas-comps/examples/Tests_optics/Test_Conics_pairs/README.md | 2 +- mcstas-comps/examples/Tests_optics/Test_DiskChoppers/README.md | 2 +- mcstas-comps/examples/Tests_optics/Test_DiskChoppers2/README.md | 2 +- mcstas-comps/examples/Tests_optics/Test_Fermi/README.md | 2 +- .../examples/Tests_optics/Test_FocalisationMirrors/README.md | 2 +- mcstas-comps/examples/Tests_optics/Test_Guides/README.md | 2 +- mcstas-comps/examples/Tests_optics/Test_Guides_Curved/README.md | 2 +- mcstas-comps/examples/Tests_optics/Test_Lens/README.md | 2 +- .../examples/Tests_optics/Test_Monochromator_bent/README.md | 2 +- .../Tests_optics/Test_Monochromator_bent_complex/README.md | 2 +- .../examples/Tests_optics/Test_Monochromators/README.md | 2 +- mcstas-comps/examples/Tests_optics/Test_NMO/README.md | 2 +- mcstas-comps/examples/Tests_optics/Test_PSD_Detector/README.md | 2 +- .../Tests_optics/Test_Pol_Bender_Vs_Guide_Curved/README.md | 2 +- mcstas-comps/examples/Tests_optics/Test_Rotator/README.md | 2 +- mcstas-comps/examples/Tests_optics/Test_Selectors/README.md | 2 +- mcstas-comps/examples/Tests_optics/Test_Source_pulsed/README.md | 2 +- mcstas-comps/examples/Tests_optics/Test_Sources/README.md | 2 +- .../examples/Tests_optics/Test_StatisticalChopper/README.md | 2 +- .../examples/Tests_optics/Test_Vertical_Bender/README.md | 2 +- mcstas-comps/examples/Tests_optics/Test_filters/README.md | 2 +- mcstas-comps/examples/Tests_optics/Test_focus/README.md | 2 +- mcstas-comps/examples/Tests_other/test_File/README.md | 2 +- .../examples/Tests_polarization/He3_spin_filter/README.md | 2 +- mcstas-comps/examples/Tests_polarization/SE_example/README.md | 2 +- mcstas-comps/examples/Tests_polarization/SE_example2/README.md | 2 +- .../Tests_polarization/Supermirror_thin_substrate/README.md | 2 +- .../Tests_polarization/Test_Magnetic_Constant/README.md | 2 +- .../Tests_polarization/Test_Magnetic_Majorana/README.md | 2 +- .../Tests_polarization/Test_Magnetic_Rotation/README.md | 2 +- .../examples/Tests_polarization/Test_Pol_Bender/README.md | 2 +- .../examples/Tests_polarization/Test_Pol_FieldBox/README.md | 2 +- .../Tests_polarization/Test_Pol_Guide_Vmirror/README.md | 2 +- .../examples/Tests_polarization/Test_Pol_Guide_mirror/README.md | 2 +- mcstas-comps/examples/Tests_polarization/Test_Pol_MSF/README.md | 2 +- .../examples/Tests_polarization/Test_Pol_Mirror/README.md | 2 +- .../examples/Tests_polarization/Test_Pol_SF_ideal/README.md | 2 +- mcstas-comps/examples/Tests_polarization/Test_Pol_Set/README.md | 2 +- .../examples/Tests_polarization/Test_Pol_Tabled/README.md | 2 +- .../examples/Tests_polarization/Test_Pol_TripleAxis/README.md | 2 +- .../Tests_polarization/Test_V_cavity_SNAG_double_side/README.md | 2 +- .../Tests_polarization/Test_V_cavity_SNAG_single_side/README.md | 2 +- .../examples/Tests_polarization/Test_pol_ideal/README.md | 2 +- mcstas-comps/examples/Tests_samples/GISANS_tests/README.md | 2 +- .../examples/Tests_samples/Samples_Incoherent/README.md | 2 +- .../examples/Tests_samples/Samples_Incoherent_off/README.md | 2 +- .../examples/Tests_samples/Samples_Isotropic_Sqw/README.md | 2 +- mcstas-comps/examples/Tests_samples/Samples_Phonon/README.md | 2 +- mcstas-comps/examples/Tests_samples/Samples_vanadium/README.md | 2 +- mcstas-comps/examples/Tests_samples/Test_Incoherent/README.md | 2 +- .../examples/Tests_samples/Test_Incoherent_MS/README.md | 2 +- .../examples/Tests_samples/Test_Magnon_bcc_2D/README.md | 2 +- .../examples/Tests_samples/Test_Magnon_bcc_TAS/README.md | 2 +- mcstas-comps/examples/Tests_samples/Test_PowderN/README.md | 2 +- mcstas-comps/examples/Tests_samples/Test_PowderN_Res/README.md | 2 +- .../examples/Tests_samples/Test_PowderN_concentric/README.md | 2 +- mcstas-comps/examples/Tests_samples/Test_Powders/README.md | 2 +- mcstas-comps/examples/Tests_samples/Test_SANS/README.md | 2 +- mcstas-comps/examples/Tests_samples/Test_SX/README.md | 2 +- .../Tests_samples/Test_Single_crystal_inelastic/README.md | 2 +- mcstas-comps/examples/Tests_samples/Test_Sqw/README.md | 2 +- mcstas-comps/examples/Tests_samples/Test_Sqw_monitor/README.md | 2 +- .../examples/Tests_samples/Test_TOFRes_sample/README.md | 2 +- mcstas-comps/examples/Tests_samples/Test_TasReso/README.md | 2 +- .../Tests_samples/Test_single_magnetic_crystal/README.md | 2 +- .../examples/Tests_samples/Unittest_SANS_benchmark2/README.md | 2 +- .../examples/Tests_sources/Test_Source_custom/README.md | 2 +- mcstas-comps/examples/Tests_sources/Test_Source_quasi/README.md | 2 +- mcstas-comps/examples/Tests_union/Conditional_test/README.md | 2 +- .../examples/Tests_union/External_component_test/README.md | 2 +- mcstas-comps/examples/Tests_union/Geometry_test/README.md | 2 +- mcstas-comps/examples/Tests_union/Hidden_Cylinder/README.md | 2 +- .../examples/Tests_union/IncoherentPhonon_test/README.md | 2 +- mcstas-comps/examples/Tests_union/Logger_test/README.md | 2 +- mcstas-comps/examples/Tests_union/Many_meshes/README.md | 2 +- mcstas-comps/examples/Tests_union/Test_absorption/README.md | 2 +- .../examples/Tests_union/Test_absorption_image/README.md | 2 +- mcstas-comps/examples/Tests_union/Test_box/README.md | 2 +- mcstas-comps/examples/Tests_union/Test_mask/README.md | 2 +- mcstas-comps/examples/Tests_union/Test_powder/README.md | 2 +- mcstas-comps/examples/Tests_union/Test_texture/README.md | 2 +- .../Tests_union/Unit_test_abs_logger_1D_space/README.md | 2 +- .../Tests_union/Unit_test_abs_logger_1D_space_event/README.md | 2 +- .../Tests_union/Unit_test_abs_logger_1D_space_tof/README.md | 2 +- .../Unit_test_abs_logger_1D_space_tof_to_lambda/README.md | 2 +- .../Tests_union/Unit_test_abs_logger_2D_space/README.md | 2 +- .../examples/Tests_union/Unit_test_abs_logger_event/README.md | 2 +- .../examples/Tests_union/Unit_test_abs_logger_nD/README.md | 2 +- .../examples/Tests_union/Unit_test_conditional_PSD/README.md | 2 +- .../Tests_union/Unit_test_conditional_standard/README.md | 2 +- mcstas-comps/examples/Tests_union/Unit_test_logger_1D/README.md | 2 +- .../examples/Tests_union/Unit_test_logger_2DQ/README.md | 2 +- .../examples/Tests_union/Unit_test_logger_2D_kf/README.md | 2 +- .../examples/Tests_union/Unit_test_logger_2D_kf_time/README.md | 2 +- .../examples/Tests_union/Unit_test_logger_2D_space/README.md | 2 +- .../Tests_union/Unit_test_logger_2D_space_time/README.md | 2 +- .../examples/Tests_union/Unit_test_logger_3D_space/README.md | 2 +- .../examples/Tests_union/Unit_test_loggers_base/README.md | 2 +- mcstas-comps/examples/Tools/Histogrammer/README.md | 2 +- mcstas-comps/examples/Tools/MCPL2Mantid_flat/README.md | 2 +- mcstas-comps/examples/Tools/MCPL2hist/README.md | 2 +- mcstas-comps/examples/Tools/MCPL_filter_energy/README.md | 2 +- mcstas-comps/examples/Tools/MCPL_filter_radius/README.md | 2 +- mcstas-comps/examples/Tools/MCPL_filter_wavelength/README.md | 2 +- mcstas-comps/examples/Tools/vinput2mcpl/README.md | 2 +- mcstas-comps/examples/Union_demos/Bispectral/README.md | 2 +- mcstas-comps/examples/Union_demos/Demonstration/README.md | 2 +- mcstas-comps/examples/Union_demos/External_component/README.md | 2 +- mcstas-comps/examples/Union_demos/Laue_camera/README.md | 2 +- mcstas-comps/examples/Union_demos/Manual_example/README.md | 2 +- .../examples/Union_demos/Sample_picture_replica/README.md | 2 +- mcstas-comps/examples/Union_demos/Tagging_demo/README.md | 2 +- mcstas-comps/examples/Union_demos/Time_of_flight/README.md | 2 +- .../Union_sample_environments/SE_usage_example/README.md | 2 +- .../Union_sample_environments/cryostat_example/README.md | 2 +- .../examples/Union_validation/Incoherent_validation/README.md | 2 +- .../examples/Union_validation/Mirror_validation/README.md | 2 +- .../examples/Union_validation/Powder_validation/README.md | 2 +- .../Union_validation/Single_crystal_validation/README.md | 2 +- .../examples/elearning/Radiography_absorbing_edge/README.md | 2 +- mcstas-comps/examples/elearning/Reflectometer/README.md | 2 +- mcstas-comps/examples/elearning/SANSsimple/README.md | 2 +- mcstas-comps/examples/elearning/SANSsimpleSpheres/README.md | 2 +- .../examples/elearning/SimplePowderDiffractometer/README.md | 2 +- 289 files changed, 289 insertions(+), 289 deletions(-) diff --git a/mcstas-comps/examples/BNL/BNL_H8/README.md b/mcstas-comps/examples/BNL/BNL_H8/README.md index a9e14409c..2fa23bc73 100644 --- a/mcstas-comps/examples/BNL/BNL_H8/README.md +++ b/mcstas-comps/examples/BNL/BNL_H8/README.md @@ -31,7 +31,7 @@ Parameters in **boldface** are required; the others are optional. ## Links - [Source code](BNL_H8.instr) for `BNL_H8.instr`. -- [Additional information](BNL_H8.md) +- [Additional information](BNL_H8.md) (only if available!) - Neutron News 13 (No. 4), 24-29 (2002). --- diff --git a/mcstas-comps/examples/BNL/BNL_H8_simple/README.md b/mcstas-comps/examples/BNL/BNL_H8_simple/README.md index 0f69501cb..0d9e1e61d 100644 --- a/mcstas-comps/examples/BNL/BNL_H8_simple/README.md +++ b/mcstas-comps/examples/BNL/BNL_H8_simple/README.md @@ -31,7 +31,7 @@ Parameters in **boldface** are required; the others are optional. ## Links - [Source code](BNL_H8_simple.instr) for `BNL_H8_simple.instr`. -- [Additional information](BNL_H8_simple.md) +- [Additional information](BNL_H8_simple.md) (only if available!) - Neutron News 13 (No. 4), 24-29 (2002). --- diff --git a/mcstas-comps/examples/BNL/h8_test_legacy/README.md b/mcstas-comps/examples/BNL/h8_test_legacy/README.md index 08de985c4..808099ef2 100644 --- a/mcstas-comps/examples/BNL/h8_test_legacy/README.md +++ b/mcstas-comps/examples/BNL/h8_test_legacy/README.md @@ -37,7 +37,7 @@ Parameters in **boldface** are required; the others are optional. ## Links - [Source code](h8_test_legacy.instr) for `h8_test_legacy.instr`. -- [Additional information](h8_test_legacy.md) +- [Additional information](h8_test_legacy.md) (only if available!) - Neutron News 13 (No. 4), 24-29 (2002). --- diff --git a/mcstas-comps/examples/DTU/Test_FZP_simple/README.md b/mcstas-comps/examples/DTU/Test_FZP_simple/README.md index 0a94e4b74..2df2b4bdc 100644 --- a/mcstas-comps/examples/DTU/Test_FZP_simple/README.md +++ b/mcstas-comps/examples/DTU/Test_FZP_simple/README.md @@ -28,7 +28,7 @@ Parameters in **boldface** are required; the others are optional. ## Links - [Source code](Test_FZP_simple.instr) for `Test_FZP_simple.instr`. -- [Additional information](Test_FZP_simple.md) +- [Additional information](Test_FZP_simple.md) (only if available!) - --- diff --git a/mcstas-comps/examples/DTU/Vin_test/README.md b/mcstas-comps/examples/DTU/Vin_test/README.md index 3d73c890c..b8ccf6d00 100644 --- a/mcstas-comps/examples/DTU/Vin_test/README.md +++ b/mcstas-comps/examples/DTU/Vin_test/README.md @@ -26,7 +26,7 @@ Parameters in **boldface** are required; the others are optional. ## Links - [Source code](Vin_test.instr) for `Vin_test.instr`. -- [Additional information](Vin_test.md) +- [Additional information](Vin_test.md) (only if available!) - A reference/HTML link for more information --- diff --git a/mcstas-comps/examples/DTU/Vout_test/README.md b/mcstas-comps/examples/DTU/Vout_test/README.md index 97c169a56..156e9b057 100644 --- a/mcstas-comps/examples/DTU/Vout_test/README.md +++ b/mcstas-comps/examples/DTU/Vout_test/README.md @@ -26,7 +26,7 @@ Parameters in **boldface** are required; the others are optional. ## Links - [Source code](Vout_test.instr) for `Vout_test.instr`. -- [Additional information](Vout_test.md) +- [Additional information](Vout_test.md) (only if available!) - A reference/HTML link for more information --- diff --git a/mcstas-comps/examples/ESS/ESS_BEER_MCPL/README.md b/mcstas-comps/examples/ESS/ESS_BEER_MCPL/README.md index e4542c555..62b5cd3bc 100644 --- a/mcstas-comps/examples/ESS/ESS_BEER_MCPL/README.md +++ b/mcstas-comps/examples/ESS/ESS_BEER_MCPL/README.md @@ -76,7 +76,7 @@ Parameters in **boldface** are required; the others are optional. ## Links - [Source code](ESS_BEER_MCPL.instr) for `ESS_BEER_MCPL.instr`. -- [Additional information](ESS_BEER_MCPL.md) +- [Additional information](ESS_BEER_MCPL.md) (only if available!) --- diff --git a/mcstas-comps/examples/ESS/ESS_IN5_reprate/README.md b/mcstas-comps/examples/ESS/ESS_IN5_reprate/README.md index 6858692ec..0a384f3e0 100644 --- a/mcstas-comps/examples/ESS/ESS_IN5_reprate/README.md +++ b/mcstas-comps/examples/ESS/ESS_IN5_reprate/README.md @@ -72,7 +72,7 @@ Parameters in **boldface** are required; the others are optional. ## Links - [Source code](ESS_IN5_reprate.instr) for `ESS_IN5_reprate.instr`. -- [Additional information](ESS_IN5_reprate.md) +- [Additional information](ESS_IN5_reprate.md) (only if available!) - The ESS-Rencurel website. - The IN5@ILL Yellow Pages diff --git a/mcstas-comps/examples/ESS/ESS_Testbeamline_HZB_V20/README.md b/mcstas-comps/examples/ESS/ESS_Testbeamline_HZB_V20/README.md index ba7c3b861..cc46ad0c8 100644 --- a/mcstas-comps/examples/ESS/ESS_Testbeamline_HZB_V20/README.md +++ b/mcstas-comps/examples/ESS/ESS_Testbeamline_HZB_V20/README.md @@ -51,7 +51,7 @@ Parameters in **boldface** are required; the others are optional. ## Links - [Source code](ESS_Testbeamline_HZB_V20.instr) for `ESS_Testbeamline_HZB_V20.instr`. -- [Additional information](ESS_Testbeamline_HZB_V20.md) +- [Additional information](ESS_Testbeamline_HZB_V20.md) (only if available!) - V20 page at the HZB website - V20 info section at the ESS website diff --git a/mcstas-comps/examples/ESS/ESS_butterfly_Guide_curved_test/README.md b/mcstas-comps/examples/ESS/ESS_butterfly_Guide_curved_test/README.md index 786c907b5..58f850a3e 100644 --- a/mcstas-comps/examples/ESS/ESS_butterfly_Guide_curved_test/README.md +++ b/mcstas-comps/examples/ESS/ESS_butterfly_Guide_curved_test/README.md @@ -44,7 +44,7 @@ Parameters in **boldface** are required; the others are optional. ## Links - [Source code](ESS_butterfly_Guide_curved_test.instr) for `ESS_butterfly_Guide_curved_test.instr`. -- [Additional information](ESS_butterfly_Guide_curved_test.md) +- [Additional information](ESS_butterfly_Guide_curved_test.md) (only if available!) - - Benchmarking website available at http://ess_butterfly.mcstas.org diff --git a/mcstas-comps/examples/ESS/ESS_butterfly_MCPL_test/README.md b/mcstas-comps/examples/ESS/ESS_butterfly_MCPL_test/README.md index af00a2da9..6d8630268 100644 --- a/mcstas-comps/examples/ESS/ESS_butterfly_MCPL_test/README.md +++ b/mcstas-comps/examples/ESS/ESS_butterfly_MCPL_test/README.md @@ -47,7 +47,7 @@ Parameters in **boldface** are required; the others are optional. ## Links - [Source code](ESS_butterfly_MCPL_test.instr) for `ESS_butterfly_MCPL_test.instr`. -- [Additional information](ESS_butterfly_MCPL_test.md) +- [Additional information](ESS_butterfly_MCPL_test.md) (only if available!) - - Benchmarking website available at http://ess_butterfly.mcstas.org diff --git a/mcstas-comps/examples/ESS/ESS_butterfly_test/README.md b/mcstas-comps/examples/ESS/ESS_butterfly_test/README.md index c2aa95683..a0b80e1d4 100644 --- a/mcstas-comps/examples/ESS/ESS_butterfly_test/README.md +++ b/mcstas-comps/examples/ESS/ESS_butterfly_test/README.md @@ -38,7 +38,7 @@ Parameters in **boldface** are required; the others are optional. ## Links - [Source code](ESS_butterfly_test.instr) for `ESS_butterfly_test.instr`. -- [Additional information](ESS_butterfly_test.md) +- [Additional information](ESS_butterfly_test.md) (only if available!) - - Benchmarking website available at http://ess_butterfly.mcstas.org diff --git a/mcstas-comps/examples/ESS/ESS_butterfly_tfocus_NOFOCUS_test/README.md b/mcstas-comps/examples/ESS/ESS_butterfly_tfocus_NOFOCUS_test/README.md index af1914633..e3bbf2cb6 100644 --- a/mcstas-comps/examples/ESS/ESS_butterfly_tfocus_NOFOCUS_test/README.md +++ b/mcstas-comps/examples/ESS/ESS_butterfly_tfocus_NOFOCUS_test/README.md @@ -41,7 +41,7 @@ Parameters in **boldface** are required; the others are optional. ## Links - [Source code](ESS_butterfly_tfocus_NOFOCUS_test.instr) for `ESS_butterfly_tfocus_NOFOCUS_test.instr`. -- [Additional information](ESS_butterfly_tfocus_NOFOCUS_test.md) +- [Additional information](ESS_butterfly_tfocus_NOFOCUS_test.md) (only if available!) - - Benchmarking website available at http://ess_butterfly.mcstas.org diff --git a/mcstas-comps/examples/ESS/ESS_butterfly_tfocus_test/README.md b/mcstas-comps/examples/ESS/ESS_butterfly_tfocus_test/README.md index 828b4e9d8..93f034c51 100644 --- a/mcstas-comps/examples/ESS/ESS_butterfly_tfocus_test/README.md +++ b/mcstas-comps/examples/ESS/ESS_butterfly_tfocus_test/README.md @@ -41,7 +41,7 @@ Parameters in **boldface** are required; the others are optional. ## Links - [Source code](ESS_butterfly_tfocus_test.instr) for `ESS_butterfly_tfocus_test.instr`. -- [Additional information](ESS_butterfly_tfocus_test.md) +- [Additional information](ESS_butterfly_tfocus_test.md) (only if available!) - - Benchmarking website available at http://ess_butterfly.mcstas.org diff --git a/mcstas-comps/examples/ESS/ESS_mcpl2hist/README.md b/mcstas-comps/examples/ESS/ESS_mcpl2hist/README.md index e74455c7e..2fcbdc1d0 100644 --- a/mcstas-comps/examples/ESS/ESS_mcpl2hist/README.md +++ b/mcstas-comps/examples/ESS/ESS_mcpl2hist/README.md @@ -33,7 +33,7 @@ Parameters in **boldface** are required; the others are optional. ## Links - [Source code](ESS_mcpl2hist.instr) for `ESS_mcpl2hist.instr`. -- [Additional information](ESS_mcpl2hist.md) +- [Additional information](ESS_mcpl2hist.md) (only if available!) - - Benchmarking website available at http://ess_butterfly.mcstas.org diff --git a/mcstas-comps/examples/FZ_Juelich/FZJ_BenchmarkSfin2/README.md b/mcstas-comps/examples/FZ_Juelich/FZJ_BenchmarkSfin2/README.md index db0eca926..cfaad3295 100644 --- a/mcstas-comps/examples/FZ_Juelich/FZJ_BenchmarkSfin2/README.md +++ b/mcstas-comps/examples/FZ_Juelich/FZJ_BenchmarkSfin2/README.md @@ -48,7 +48,7 @@ Parameters in **boldface** are required; the others are optional. ## Links - [Source code](FZJ_BenchmarkSfin2.instr) for `FZJ_BenchmarkSfin2.instr`. -- [Additional information](FZJ_BenchmarkSfin2.md) +- [Additional information](FZJ_BenchmarkSfin2.md) (only if available!) --- diff --git a/mcstas-comps/examples/FZ_Juelich/FZJ_KWS2_Lens/README.md b/mcstas-comps/examples/FZ_Juelich/FZJ_KWS2_Lens/README.md index 0e30be3ed..2ecf9f387 100644 --- a/mcstas-comps/examples/FZ_Juelich/FZJ_KWS2_Lens/README.md +++ b/mcstas-comps/examples/FZ_Juelich/FZJ_KWS2_Lens/README.md @@ -35,7 +35,7 @@ Parameters in **boldface** are required; the others are optional. ## Links - [Source code](FZJ_KWS2_Lens.instr) for `FZJ_KWS2_Lens.instr`. -- [Additional information](FZJ_KWS2_Lens.md) +- [Additional information](FZJ_KWS2_Lens.md) (only if available!) - The Lens_simple component --- diff --git a/mcstas-comps/examples/FZ_Juelich/FZJ_SANS_KWS2_AnySample/README.md b/mcstas-comps/examples/FZ_Juelich/FZJ_SANS_KWS2_AnySample/README.md index 7914d3558..a61783f0b 100644 --- a/mcstas-comps/examples/FZ_Juelich/FZJ_SANS_KWS2_AnySample/README.md +++ b/mcstas-comps/examples/FZ_Juelich/FZJ_SANS_KWS2_AnySample/README.md @@ -33,7 +33,7 @@ Parameters in **boldface** are required; the others are optional. ## Links - [Source code](FZJ_SANS_KWS2_AnySample.instr) for `FZJ_SANS_KWS2_AnySample.instr`. -- [Additional information](FZJ_SANS_KWS2_AnySample.md) +- [Additional information](FZJ_SANS_KWS2_AnySample.md) (only if available!) --- diff --git a/mcstas-comps/examples/HZB/HZB_FLEX/README.md b/mcstas-comps/examples/HZB/HZB_FLEX/README.md index 72cc57230..7bdcf5c61 100644 --- a/mcstas-comps/examples/HZB/HZB_FLEX/README.md +++ b/mcstas-comps/examples/HZB/HZB_FLEX/README.md @@ -35,7 +35,7 @@ Parameters in **boldface** are required; the others are optional. ## Links - [Source code](HZB_FLEX.instr) for `HZB_FLEX.instr`. -- [Additional information](HZB_FLEX.md) +- [Additional information](HZB_FLEX.md) (only if available!) --- diff --git a/mcstas-comps/examples/HZB/HZB_NEAT/README.md b/mcstas-comps/examples/HZB/HZB_NEAT/README.md index b4639b967..5d8565e77 100644 --- a/mcstas-comps/examples/HZB/HZB_NEAT/README.md +++ b/mcstas-comps/examples/HZB/HZB_NEAT/README.md @@ -49,7 +49,7 @@ Parameters in **boldface** are required; the others are optional. ## Links - [Source code](HZB_NEAT.instr) for `HZB_NEAT.instr`. -- [Additional information](HZB_NEAT.md) +- [Additional information](HZB_NEAT.md) (only if available!) - NEAT at HZB/BENSC --- diff --git a/mcstas-comps/examples/HighNESS/WOFSANS/README.md b/mcstas-comps/examples/HighNESS/WOFSANS/README.md index 13f488550..6f374df7c 100644 --- a/mcstas-comps/examples/HighNESS/WOFSANS/README.md +++ b/mcstas-comps/examples/HighNESS/WOFSANS/README.md @@ -47,7 +47,7 @@ Parameters in **boldface** are required; the others are optional. ## Links - [Source code](WOFSANS.instr) for `WOFSANS.instr`. -- [Additional information](WOFSANS.md) +- [Additional information](WOFSANS.md) (only if available!) - V. Santoro et. al. Nuc. Sci. Eng. 2023 https://doi.org/10.1080/00295639.2023.2204184 - https://highnessproject.eu - This work was supported by the HighNESS project and is funded by European Commission (H2020-951782). diff --git a/mcstas-comps/examples/ILL/ILL_BRISP/README.md b/mcstas-comps/examples/ILL/ILL_BRISP/README.md index de88a8705..e68a7d329 100644 --- a/mcstas-comps/examples/ILL/ILL_BRISP/README.md +++ b/mcstas-comps/examples/ILL/ILL_BRISP/README.md @@ -87,7 +87,7 @@ Parameters in **boldface** are required; the others are optional. ## Links - [Source code](ILL_BRISP.instr) for `ILL_BRISP.instr`. -- [Additional information](ILL_BRISP.md) +- [Additional information](ILL_BRISP.md) (only if available!) - The BRISP spectrometer at the ILL BRISP --- diff --git a/mcstas-comps/examples/ILL/ILL_D2B/README.md b/mcstas-comps/examples/ILL/ILL_D2B/README.md index 5c2874af8..2c5d8f5db 100644 --- a/mcstas-comps/examples/ILL/ILL_D2B/README.md +++ b/mcstas-comps/examples/ILL/ILL_D2B/README.md @@ -65,7 +65,7 @@ Parameters in **boldface** are required; the others are optional. ## Links - [Source code](ILL_D2B.instr) for `ILL_D2B.instr`. -- [Additional information](ILL_D2B.md) +- [Additional information](ILL_D2B.md) (only if available!) - G. Caglioti, A. Paoletti, F.P. Ricci, Nucl. Instr. and. Meth. 3 (1958) 223 - L.D. Cussen, Nucl. Instr. and. Meth. A 554 (2005) 406 - M. Morhac, NIM A 600 (2009) 478 diff --git a/mcstas-comps/examples/ILL/ILL_D2B_noenv/README.md b/mcstas-comps/examples/ILL/ILL_D2B_noenv/README.md index 86e2296bd..b3089d3b7 100644 --- a/mcstas-comps/examples/ILL/ILL_D2B_noenv/README.md +++ b/mcstas-comps/examples/ILL/ILL_D2B_noenv/README.md @@ -65,7 +65,7 @@ Parameters in **boldface** are required; the others are optional. ## Links - [Source code](ILL_D2B_noenv.instr) for `ILL_D2B_noenv.instr`. -- [Additional information](ILL_D2B_noenv.md) +- [Additional information](ILL_D2B_noenv.md) (only if available!) - G. Caglioti, A. Paoletti, F.P. Ricci, Nucl. Instr. and. Meth. 3 (1958) 223 - L.D. Cussen, Nucl. Instr. and. Meth. A 554 (2005) 406 - M. Morhac, NIM A 600 (2009) 478 diff --git a/mcstas-comps/examples/ILL/ILL_D4/README.md b/mcstas-comps/examples/ILL/ILL_D4/README.md index 41e0535ce..2f324722b 100644 --- a/mcstas-comps/examples/ILL/ILL_D4/README.md +++ b/mcstas-comps/examples/ILL/ILL_D4/README.md @@ -44,7 +44,7 @@ Parameters in **boldface** are required; the others are optional. ## Links - [Source code](ILL_D4.instr) for `ILL_D4.instr`. -- [Additional information](ILL_D4.md) +- [Additional information](ILL_D4.md) (only if available!) - The D4 diffractometer at the ILL --- diff --git a/mcstas-comps/examples/ILL/ILL_H10_IN8/README.md b/mcstas-comps/examples/ILL/ILL_H10_IN8/README.md index e58ccc5ca..be36e0fa5 100644 --- a/mcstas-comps/examples/ILL/ILL_H10_IN8/README.md +++ b/mcstas-comps/examples/ILL/ILL_H10_IN8/README.md @@ -76,7 +76,7 @@ Parameters in **boldface** are required; the others are optional. ## Links - [Source code](ILL_H10_IN8.instr) for `ILL_H10_IN8.instr`. -- [Additional information](ILL_H10_IN8.md) +- [Additional information](ILL_H10_IN8.md) (only if available!) - Rescal for Matlab at http://www.ill.eu/instruments-support/computing-for-science/cs-software/all-software/matlab-ill/ - Restrax at http://omega.ujf.cas.cz/restrax/ diff --git a/mcstas-comps/examples/ILL/ILL_H113/README.md b/mcstas-comps/examples/ILL/ILL_H113/README.md index 88a5ae7d5..51b4785e3 100644 --- a/mcstas-comps/examples/ILL/ILL_H113/README.md +++ b/mcstas-comps/examples/ILL/ILL_H113/README.md @@ -29,7 +29,7 @@ Parameters in **boldface** are required; the others are optional. ## Links - [Source code](ILL_H113.instr) for `ILL_H113.instr`. -- [Additional information](ILL_H113.md) +- [Additional information](ILL_H113.md) (only if available!) - The PF1b beam line at the ILL --- diff --git a/mcstas-comps/examples/ILL/ILL_H13_IN20/README.md b/mcstas-comps/examples/ILL/ILL_H13_IN20/README.md index bdd19910f..f03b2bdbc 100644 --- a/mcstas-comps/examples/ILL/ILL_H13_IN20/README.md +++ b/mcstas-comps/examples/ILL/ILL_H13_IN20/README.md @@ -75,7 +75,7 @@ Parameters in **boldface** are required; the others are optional. ## Links - [Source code](ILL_H13_IN20.instr) for `ILL_H13_IN20.instr`. -- [Additional information](ILL_H13_IN20.md) +- [Additional information](ILL_H13_IN20.md) (only if available!) - Rescal for Matlab at http://www.ill.eu/instruments-support/computing-for-science/cs-software/all-software/matlab-ill/ - Restrax at http://omega.ujf.cas.cz/restrax/ diff --git a/mcstas-comps/examples/ILL/ILL_H142/README.md b/mcstas-comps/examples/ILL/ILL_H142/README.md index c4015a81f..e992ec293 100644 --- a/mcstas-comps/examples/ILL/ILL_H142/README.md +++ b/mcstas-comps/examples/ILL/ILL_H142/README.md @@ -30,7 +30,7 @@ Parameters in **boldface** are required; the others are optional. ## Links - [Source code](ILL_H142.instr) for `ILL_H142.instr`. -- [Additional information](ILL_H142.md) +- [Additional information](ILL_H142.md) (only if available!) - The IN12 TAS at the ILL --- diff --git a/mcstas-comps/examples/ILL/ILL_H142_D33/README.md b/mcstas-comps/examples/ILL/ILL_H142_D33/README.md index 4d5892fb5..70cd69eda 100644 --- a/mcstas-comps/examples/ILL/ILL_H142_D33/README.md +++ b/mcstas-comps/examples/ILL/ILL_H142_D33/README.md @@ -42,7 +42,7 @@ Parameters in **boldface** are required; the others are optional. ## Links - [Source code](ILL_H142_D33.instr) for `ILL_H142_D33.instr`. -- [Additional information](ILL_H142_D33.md) +- [Additional information](ILL_H142_D33.md) (only if available!) --- diff --git a/mcstas-comps/examples/ILL/ILL_H142_IN12/README.md b/mcstas-comps/examples/ILL/ILL_H142_IN12/README.md index 7c1a353a2..9f681bae7 100644 --- a/mcstas-comps/examples/ILL/ILL_H142_IN12/README.md +++ b/mcstas-comps/examples/ILL/ILL_H142_IN12/README.md @@ -44,7 +44,7 @@ Parameters in **boldface** are required; the others are optional. ## Links - [Source code](ILL_H142_IN12.instr) for `ILL_H142_IN12.instr`. -- [Additional information](ILL_H142_IN12.md) +- [Additional information](ILL_H142_IN12.md) (only if available!) - The IN12 TAS at the ILL --- diff --git a/mcstas-comps/examples/ILL/ILL_H142_simple/README.md b/mcstas-comps/examples/ILL/ILL_H142_simple/README.md index b8f1ddaa6..b7bb0d0d4 100644 --- a/mcstas-comps/examples/ILL/ILL_H142_simple/README.md +++ b/mcstas-comps/examples/ILL/ILL_H142_simple/README.md @@ -30,7 +30,7 @@ Parameters in **boldface** are required; the others are optional. ## Links - [Source code](ILL_H142_simple.instr) for `ILL_H142_simple.instr`. -- [Additional information](ILL_H142_simple.md) +- [Additional information](ILL_H142_simple.md) (only if available!) - The IN12 TAS at the ILL --- diff --git a/mcstas-comps/examples/ILL/ILL_H143_LADI/README.md b/mcstas-comps/examples/ILL/ILL_H143_LADI/README.md index fbfc1e9b7..e4bcef1fa 100644 --- a/mcstas-comps/examples/ILL/ILL_H143_LADI/README.md +++ b/mcstas-comps/examples/ILL/ILL_H143_LADI/README.md @@ -54,7 +54,7 @@ Parameters in **boldface** are required; the others are optional. ## Links - [Source code](ILL_H143_LADI.instr) for `ILL_H143_LADI.instr`. -- [Additional information](ILL_H143_LADI.md) +- [Additional information](ILL_H143_LADI.md) (only if available!) --- diff --git a/mcstas-comps/examples/ILL/ILL_H15/README.md b/mcstas-comps/examples/ILL/ILL_H15/README.md index 58c5124f8..a3f466380 100644 --- a/mcstas-comps/examples/ILL/ILL_H15/README.md +++ b/mcstas-comps/examples/ILL/ILL_H15/README.md @@ -29,7 +29,7 @@ Parameters in **boldface** are required; the others are optional. ## Links - [Source code](ILL_H15.instr) for `ILL_H15.instr`. -- [Additional information](ILL_H15.md) +- [Additional information](ILL_H15.md) (only if available!) - The IN6 TOF at the ILL --- diff --git a/mcstas-comps/examples/ILL/ILL_H15_D11/README.md b/mcstas-comps/examples/ILL/ILL_H15_D11/README.md index 4dbe7c093..6812abb26 100644 --- a/mcstas-comps/examples/ILL/ILL_H15_D11/README.md +++ b/mcstas-comps/examples/ILL/ILL_H15_D11/README.md @@ -52,7 +52,7 @@ Parameters in **boldface** are required; the others are optional. ## Links - [Source code](ILL_H15_D11.instr) for `ILL_H15_D11.instr`. -- [Additional information](ILL_H15_D11.md) +- [Additional information](ILL_H15_D11.md) (only if available!) --- diff --git a/mcstas-comps/examples/ILL/ILL_H15_IN6/README.md b/mcstas-comps/examples/ILL/ILL_H15_IN6/README.md index 904564ba3..5403757be 100644 --- a/mcstas-comps/examples/ILL/ILL_H15_IN6/README.md +++ b/mcstas-comps/examples/ILL/ILL_H15_IN6/README.md @@ -56,7 +56,7 @@ Parameters in **boldface** are required; the others are optional. ## Links - [Source code](ILL_H15_IN6.instr) for `ILL_H15_IN6.instr`. -- [Additional information](ILL_H15_IN6.md) +- [Additional information](ILL_H15_IN6.md) (only if available!) - The IN6@ILL Yellow Pages - R.Scherm et al, "Another Time of Flight Spectrometer", ILL Report 76S235, 1976 - R.Scherm, "A high-resolution spectrometer ...", report Jul-295-NP, Kernforschungsanlage Julich, 1965 diff --git a/mcstas-comps/examples/ILL/ILL_H15_SAM/README.md b/mcstas-comps/examples/ILL/ILL_H15_SAM/README.md index ac8abbc5c..479e69928 100644 --- a/mcstas-comps/examples/ILL/ILL_H15_SAM/README.md +++ b/mcstas-comps/examples/ILL/ILL_H15_SAM/README.md @@ -64,7 +64,7 @@ Parameters in **boldface** are required; the others are optional. ## Links - [Source code](ILL_H15_SAM.instr) for `ILL_H15_SAM.instr`. -- [Additional information](ILL_H15_SAM.md) +- [Additional information](ILL_H15_SAM.md) (only if available!) - --- diff --git a/mcstas-comps/examples/ILL/ILL_H16/README.md b/mcstas-comps/examples/ILL/ILL_H16/README.md index 9b12ae7e1..ad1402c02 100644 --- a/mcstas-comps/examples/ILL/ILL_H16/README.md +++ b/mcstas-comps/examples/ILL/ILL_H16/README.md @@ -28,7 +28,7 @@ Parameters in **boldface** are required; the others are optional. ## Links - [Source code](ILL_H16.instr) for `ILL_H16.instr`. -- [Additional information](ILL_H16.md) +- [Additional information](ILL_H16.md) (only if available!) --- diff --git a/mcstas-comps/examples/ILL/ILL_H16_IN5/README.md b/mcstas-comps/examples/ILL/ILL_H16_IN5/README.md index ed8152d23..2ca44a00b 100644 --- a/mcstas-comps/examples/ILL/ILL_H16_IN5/README.md +++ b/mcstas-comps/examples/ILL/ILL_H16_IN5/README.md @@ -30,7 +30,7 @@ Parameters in **boldface** are required; the others are optional. ## Links - [Source code](ILL_H16_IN5.instr) for `ILL_H16_IN5.instr`. -- [Additional information](ILL_H16_IN5.md) +- [Additional information](ILL_H16_IN5.md) (only if available!) - The IN5@ILL cold time of flight instrument --- diff --git a/mcstas-comps/examples/ILL/ILL_H22/README.md b/mcstas-comps/examples/ILL/ILL_H22/README.md index ca056dcbb..2ac74fdfd 100644 --- a/mcstas-comps/examples/ILL/ILL_H22/README.md +++ b/mcstas-comps/examples/ILL/ILL_H22/README.md @@ -29,7 +29,7 @@ Parameters in **boldface** are required; the others are optional. ## Links - [Source code](ILL_H22.instr) for `ILL_H22.instr`. -- [Additional information](ILL_H22.md) +- [Additional information](ILL_H22.md) (only if available!) --- diff --git a/mcstas-comps/examples/ILL/ILL_H22_D1A/README.md b/mcstas-comps/examples/ILL/ILL_H22_D1A/README.md index a83b1d44a..502fe98d9 100644 --- a/mcstas-comps/examples/ILL/ILL_H22_D1A/README.md +++ b/mcstas-comps/examples/ILL/ILL_H22_D1A/README.md @@ -58,7 +58,7 @@ Parameters in **boldface** are required; the others are optional. ## Links - [Source code](ILL_H22_D1A.instr) for `ILL_H22_D1A.instr`. -- [Additional information](ILL_H22_D1A.md) +- [Additional information](ILL_H22_D1A.md) (only if available!) --- diff --git a/mcstas-comps/examples/ILL/ILL_H22_D1A_noenv/README.md b/mcstas-comps/examples/ILL/ILL_H22_D1A_noenv/README.md index 4842e5033..8219ac1df 100644 --- a/mcstas-comps/examples/ILL/ILL_H22_D1A_noenv/README.md +++ b/mcstas-comps/examples/ILL/ILL_H22_D1A_noenv/README.md @@ -58,7 +58,7 @@ Parameters in **boldface** are required; the others are optional. ## Links - [Source code](ILL_H22_D1A_noenv.instr) for `ILL_H22_D1A_noenv.instr`. -- [Additional information](ILL_H22_D1A_noenv.md) +- [Additional information](ILL_H22_D1A_noenv.md) (only if available!) --- diff --git a/mcstas-comps/examples/ILL/ILL_H22_D1B/README.md b/mcstas-comps/examples/ILL/ILL_H22_D1B/README.md index 70ba52ee2..a31796fe1 100644 --- a/mcstas-comps/examples/ILL/ILL_H22_D1B/README.md +++ b/mcstas-comps/examples/ILL/ILL_H22_D1B/README.md @@ -68,7 +68,7 @@ Parameters in **boldface** are required; the others are optional. ## Links - [Source code](ILL_H22_D1B.instr) for `ILL_H22_D1B.instr`. -- [Additional information](ILL_H22_D1B.md) +- [Additional information](ILL_H22_D1B.md) (only if available!) --- diff --git a/mcstas-comps/examples/ILL/ILL_H22_D1B_noenv/README.md b/mcstas-comps/examples/ILL/ILL_H22_D1B_noenv/README.md index 154a64cf5..1888565e1 100644 --- a/mcstas-comps/examples/ILL/ILL_H22_D1B_noenv/README.md +++ b/mcstas-comps/examples/ILL/ILL_H22_D1B_noenv/README.md @@ -68,7 +68,7 @@ Parameters in **boldface** are required; the others are optional. ## Links - [Source code](ILL_H22_D1B_noenv.instr) for `ILL_H22_D1B_noenv.instr`. -- [Additional information](ILL_H22_D1B_noenv.md) +- [Additional information](ILL_H22_D1B_noenv.md) (only if available!) --- diff --git a/mcstas-comps/examples/ILL/ILL_H22_VIVALDI/README.md b/mcstas-comps/examples/ILL/ILL_H22_VIVALDI/README.md index e61ead3a9..8e3e1f514 100644 --- a/mcstas-comps/examples/ILL/ILL_H22_VIVALDI/README.md +++ b/mcstas-comps/examples/ILL/ILL_H22_VIVALDI/README.md @@ -43,7 +43,7 @@ Parameters in **boldface** are required; the others are optional. ## Links - [Source code](ILL_H22_VIVALDI.instr) for `ILL_H22_VIVALDI.instr`. -- [Additional information](ILL_H22_VIVALDI.md) +- [Additional information](ILL_H22_VIVALDI.md) (only if available!) --- diff --git a/mcstas-comps/examples/ILL/ILL_H24/README.md b/mcstas-comps/examples/ILL/ILL_H24/README.md index 9cb8a953b..fb0f56ae7 100644 --- a/mcstas-comps/examples/ILL/ILL_H24/README.md +++ b/mcstas-comps/examples/ILL/ILL_H24/README.md @@ -29,7 +29,7 @@ Parameters in **boldface** are required; the others are optional. ## Links - [Source code](ILL_H24.instr) for `ILL_H24.instr`. -- [Additional information](ILL_H24.md) +- [Additional information](ILL_H24.md) (only if available!) --- diff --git a/mcstas-comps/examples/ILL/ILL_H25/README.md b/mcstas-comps/examples/ILL/ILL_H25/README.md index 2f88473ad..9904c4843 100644 --- a/mcstas-comps/examples/ILL/ILL_H25/README.md +++ b/mcstas-comps/examples/ILL/ILL_H25/README.md @@ -29,7 +29,7 @@ Parameters in **boldface** are required; the others are optional. ## Links - [Source code](ILL_H25.instr) for `ILL_H25.instr`. -- [Additional information](ILL_H25.md) +- [Additional information](ILL_H25.md) (only if available!) --- diff --git a/mcstas-comps/examples/ILL/ILL_H25_IN22/README.md b/mcstas-comps/examples/ILL/ILL_H25_IN22/README.md index 787ac08be..b4a6656c9 100644 --- a/mcstas-comps/examples/ILL/ILL_H25_IN22/README.md +++ b/mcstas-comps/examples/ILL/ILL_H25_IN22/README.md @@ -49,7 +49,7 @@ Parameters in **boldface** are required; the others are optional. ## Links - [Source code](ILL_H25_IN22.instr) for `ILL_H25_IN22.instr`. -- [Additional information](ILL_H25_IN22.md) +- [Additional information](ILL_H25_IN22.md) (only if available!) - The IN22 TAS at the ILL --- diff --git a/mcstas-comps/examples/ILL/ILL_H5/README.md b/mcstas-comps/examples/ILL/ILL_H5/README.md index 8364b7b31..b8e337622 100644 --- a/mcstas-comps/examples/ILL/ILL_H5/README.md +++ b/mcstas-comps/examples/ILL/ILL_H5/README.md @@ -44,7 +44,7 @@ Parameters in **boldface** are required; the others are optional. ## Links - [Source code](ILL_H5.instr) for `ILL_H5.instr`. -- [Additional information](ILL_H5.md) +- [Additional information](ILL_H5.md) (only if available!) --- diff --git a/mcstas-comps/examples/ILL/ILL_H512_D22/README.md b/mcstas-comps/examples/ILL/ILL_H512_D22/README.md index 2705a1eb3..b2020e9e8 100644 --- a/mcstas-comps/examples/ILL/ILL_H512_D22/README.md +++ b/mcstas-comps/examples/ILL/ILL_H512_D22/README.md @@ -34,7 +34,7 @@ Parameters in **boldface** are required; the others are optional. ## Links - [Source code](ILL_H512_D22.instr) for `ILL_H512_D22.instr`. -- [Additional information](ILL_H512_D22.md) +- [Additional information](ILL_H512_D22.md) (only if available!) --- diff --git a/mcstas-comps/examples/ILL/ILL_H53/README.md b/mcstas-comps/examples/ILL/ILL_H53/README.md index b97f36c47..614c38e80 100644 --- a/mcstas-comps/examples/ILL/ILL_H53/README.md +++ b/mcstas-comps/examples/ILL/ILL_H53/README.md @@ -29,7 +29,7 @@ Parameters in **boldface** are required; the others are optional. ## Links - [Source code](ILL_H53.instr) for `ILL_H53.instr`. -- [Additional information](ILL_H53.md) +- [Additional information](ILL_H53.md) (only if available!) --- diff --git a/mcstas-comps/examples/ILL/ILL_H53_D16/README.md b/mcstas-comps/examples/ILL/ILL_H53_D16/README.md index 0fce70dc0..fafe9333e 100644 --- a/mcstas-comps/examples/ILL/ILL_H53_D16/README.md +++ b/mcstas-comps/examples/ILL/ILL_H53_D16/README.md @@ -46,7 +46,7 @@ Parameters in **boldface** are required; the others are optional. ## Links - [Source code](ILL_H53_D16.instr) for `ILL_H53_D16.instr`. -- [Additional information](ILL_H53_D16.md) +- [Additional information](ILL_H53_D16.md) (only if available!) - The D16 diffractometer at the ILL --- diff --git a/mcstas-comps/examples/ILL/ILL_H53_IN14/README.md b/mcstas-comps/examples/ILL/ILL_H53_IN14/README.md index 912a6cb9b..e34f99d9c 100644 --- a/mcstas-comps/examples/ILL/ILL_H53_IN14/README.md +++ b/mcstas-comps/examples/ILL/ILL_H53_IN14/README.md @@ -64,7 +64,7 @@ Parameters in **boldface** are required; the others are optional. ## Links - [Source code](ILL_H53_IN14.instr) for `ILL_H53_IN14.instr`. -- [Additional information](ILL_H53_IN14.md) +- [Additional information](ILL_H53_IN14.md) (only if available!) - The IN14 TAS at the ILL --- diff --git a/mcstas-comps/examples/ILL/ILL_H5_new/README.md b/mcstas-comps/examples/ILL/ILL_H5_new/README.md index 8d8894797..39b8f1f90 100644 --- a/mcstas-comps/examples/ILL/ILL_H5_new/README.md +++ b/mcstas-comps/examples/ILL/ILL_H5_new/README.md @@ -64,7 +64,7 @@ Parameters in **boldface** are required; the others are optional. ## Links - [Source code](ILL_H5_new.instr) for `ILL_H5_new.instr`. -- [Additional information](ILL_H5_new.md) +- [Additional information](ILL_H5_new.md) (only if available!) - The NoteDPT11 at the ILL - The DPT/SMAE 11/070 WASP design report - The DPT/SMAE 10/271 H5 design report diff --git a/mcstas-comps/examples/ILL/ILL_H8_IN1/README.md b/mcstas-comps/examples/ILL/ILL_H8_IN1/README.md index 2d59e0dc4..9b1965b68 100644 --- a/mcstas-comps/examples/ILL/ILL_H8_IN1/README.md +++ b/mcstas-comps/examples/ILL/ILL_H8_IN1/README.md @@ -79,7 +79,7 @@ Parameters in **boldface** are required; the others are optional. ## Links - [Source code](ILL_H8_IN1.instr) for `ILL_H8_IN1.instr`. -- [Additional information](ILL_H8_IN1.md) +- [Additional information](ILL_H8_IN1.md) (only if available!) - Rescal for Matlab at http://www.ill.eu/instruments-support/computing-for-science/cs-software/all-software/matlab-ill/ - Restrax at http://omega.ujf.cas.cz/restrax/ diff --git a/mcstas-comps/examples/ILL/ILL_IN13/README.md b/mcstas-comps/examples/ILL/ILL_IN13/README.md index 4145f62ee..1f6c8806a 100644 --- a/mcstas-comps/examples/ILL/ILL_IN13/README.md +++ b/mcstas-comps/examples/ILL/ILL_IN13/README.md @@ -85,7 +85,7 @@ Parameters in **boldface** are required; the others are optional. ## Links - [Source code](ILL_IN13.instr) for `ILL_IN13.instr`. -- [Additional information](ILL_IN13.md) +- [Additional information](ILL_IN13.md) (only if available!) - The IN3 TAS at the ILL --- diff --git a/mcstas-comps/examples/ILL/ILL_IN4/README.md b/mcstas-comps/examples/ILL/ILL_IN4/README.md index 228aab9dc..90e906635 100644 --- a/mcstas-comps/examples/ILL/ILL_IN4/README.md +++ b/mcstas-comps/examples/ILL/ILL_IN4/README.md @@ -85,7 +85,7 @@ Parameters in **boldface** are required; the others are optional. ## Links - [Source code](ILL_IN4.instr) for `ILL_IN4.instr`. -- [Additional information](ILL_IN4.md) +- [Additional information](ILL_IN4.md) (only if available!) - H. Mutka, Nucl. Instr. and Meth. A 338 (1994) 144 - http://www.ill.eu/fr/instruments-support/instruments-groups/instruments/in4c diff --git a/mcstas-comps/examples/ILL/ILL_IN5/README.md b/mcstas-comps/examples/ILL/ILL_IN5/README.md index cebc62045..6b5a4bf13 100644 --- a/mcstas-comps/examples/ILL/ILL_IN5/README.md +++ b/mcstas-comps/examples/ILL/ILL_IN5/README.md @@ -39,7 +39,7 @@ Parameters in **boldface** are required; the others are optional. ## Links - [Source code](ILL_IN5.instr) for `ILL_IN5.instr`. -- [Additional information](ILL_IN5.md) +- [Additional information](ILL_IN5.md) (only if available!) - The IN5@ILL cold time of flight instrument --- diff --git a/mcstas-comps/examples/ILL/ILL_IN5_Spots/README.md b/mcstas-comps/examples/ILL/ILL_IN5_Spots/README.md index aab302654..78d87db7f 100644 --- a/mcstas-comps/examples/ILL/ILL_IN5_Spots/README.md +++ b/mcstas-comps/examples/ILL/ILL_IN5_Spots/README.md @@ -45,7 +45,7 @@ Parameters in **boldface** are required; the others are optional. ## Links - [Source code](ILL_IN5_Spots.instr) for `ILL_IN5_Spots.instr`. -- [Additional information](ILL_IN5_Spots.md) +- [Additional information](ILL_IN5_Spots.md) (only if available!) - The IN5@ILL cold time of flight instrument --- diff --git a/mcstas-comps/examples/ILL/ILL_IN6/README.md b/mcstas-comps/examples/ILL/ILL_IN6/README.md index 329ecbcdb..4929ee1a5 100644 --- a/mcstas-comps/examples/ILL/ILL_IN6/README.md +++ b/mcstas-comps/examples/ILL/ILL_IN6/README.md @@ -68,7 +68,7 @@ Parameters in **boldface** are required; the others are optional. ## Links - [Source code](ILL_IN6.instr) for `ILL_IN6.instr`. -- [Additional information](ILL_IN6.md) +- [Additional information](ILL_IN6.md) (only if available!) - The IN6@ILL Yellow Pages - R.Scherm et al, "Another Time of Flight Spectrometer", ILL Report 76S235, 1976 - R.Scherm, "A high-resolution spectrometer ...", report Jul-295-NP, Kernforschungsanlage Julich, 1965 diff --git a/mcstas-comps/examples/ILL/ILL_Lagrange/README.md b/mcstas-comps/examples/ILL/ILL_Lagrange/README.md index 2378c7ce7..28fcb55a9 100644 --- a/mcstas-comps/examples/ILL/ILL_Lagrange/README.md +++ b/mcstas-comps/examples/ILL/ILL_Lagrange/README.md @@ -49,7 +49,7 @@ Parameters in **boldface** are required; the others are optional. ## Links - [Source code](ILL_Lagrange.instr) for `ILL_Lagrange.instr`. -- [Additional information](ILL_Lagrange.md) +- [Additional information](ILL_Lagrange.md) (only if available!) - The D4 diffractometer at the ILL --- diff --git a/mcstas-comps/examples/ILL/ILL_SALSA/README.md b/mcstas-comps/examples/ILL/ILL_SALSA/README.md index ba0fb558a..1a5384e93 100644 --- a/mcstas-comps/examples/ILL/ILL_SALSA/README.md +++ b/mcstas-comps/examples/ILL/ILL_SALSA/README.md @@ -57,7 +57,7 @@ Parameters in **boldface** are required; the others are optional. ## Links - [Source code](ILL_SALSA.instr) for `ILL_SALSA.instr`. -- [Additional information](ILL_SALSA.md) +- [Additional information](ILL_SALSA.md) (only if available!) --- diff --git a/mcstas-comps/examples/ISIS/ISIS_CRISP/README.md b/mcstas-comps/examples/ISIS/ISIS_CRISP/README.md index 9ce236f2b..746006fd9 100644 --- a/mcstas-comps/examples/ISIS/ISIS_CRISP/README.md +++ b/mcstas-comps/examples/ISIS/ISIS_CRISP/README.md @@ -37,7 +37,7 @@ Parameters in **boldface** are required; the others are optional. ## Links - [Source code](ISIS_CRISP.instr) for `ISIS_CRISP.instr`. -- [Additional information](ISIS_CRISP.md) +- [Additional information](ISIS_CRISP.md) (only if available!) --- diff --git a/mcstas-comps/examples/ISIS/ISIS_GEM/README.md b/mcstas-comps/examples/ISIS/ISIS_GEM/README.md index d9d69d1c7..ea7ff0dae 100644 --- a/mcstas-comps/examples/ISIS/ISIS_GEM/README.md +++ b/mcstas-comps/examples/ISIS/ISIS_GEM/README.md @@ -35,7 +35,7 @@ Parameters in **boldface** are required; the others are optional. ## Links - [Source code](ISIS_GEM.instr) for `ISIS_GEM.instr`. -- [Additional information](ISIS_GEM.md) +- [Additional information](ISIS_GEM.md) (only if available!) - The ESS Instrument workshops website. - The GEM instrument at ISIS diff --git a/mcstas-comps/examples/ISIS/ISIS_HET/README.md b/mcstas-comps/examples/ISIS/ISIS_HET/README.md index 90e9db0bb..0b277fe30 100644 --- a/mcstas-comps/examples/ISIS/ISIS_HET/README.md +++ b/mcstas-comps/examples/ISIS/ISIS_HET/README.md @@ -33,7 +33,7 @@ Parameters in **boldface** are required; the others are optional. ## Links - [Source code](ISIS_HET.instr) for `ISIS_HET.instr`. -- [Additional information](ISIS_HET.md) +- [Additional information](ISIS_HET.md) (only if available!) --- diff --git a/mcstas-comps/examples/ISIS/ISIS_IMAT/README.md b/mcstas-comps/examples/ISIS/ISIS_IMAT/README.md index 87b62d016..0349aa321 100644 --- a/mcstas-comps/examples/ISIS/ISIS_IMAT/README.md +++ b/mcstas-comps/examples/ISIS/ISIS_IMAT/README.md @@ -40,7 +40,7 @@ Parameters in **boldface** are required; the others are optional. ## Links - [Source code](ISIS_IMAT.instr) for `ISIS_IMAT.instr`. -- [Additional information](ISIS_IMAT.md) +- [Additional information](ISIS_IMAT.md) (only if available!) - --- diff --git a/mcstas-comps/examples/ISIS/ISIS_LET/README.md b/mcstas-comps/examples/ISIS/ISIS_LET/README.md index 6a5ff6142..167f1f535 100644 --- a/mcstas-comps/examples/ISIS/ISIS_LET/README.md +++ b/mcstas-comps/examples/ISIS/ISIS_LET/README.md @@ -37,7 +37,7 @@ Parameters in **boldface** are required; the others are optional. ## Links - [Source code](ISIS_LET.instr) for `ISIS_LET.instr`. -- [Additional information](ISIS_LET.md) +- [Additional information](ISIS_LET.md) (only if available!) --- diff --git a/mcstas-comps/examples/ISIS/ISIS_MERLIN/README.md b/mcstas-comps/examples/ISIS/ISIS_MERLIN/README.md index 2a8d12882..86809868e 100644 --- a/mcstas-comps/examples/ISIS/ISIS_MERLIN/README.md +++ b/mcstas-comps/examples/ISIS/ISIS_MERLIN/README.md @@ -41,7 +41,7 @@ Parameters in **boldface** are required; the others are optional. ## Links - [Source code](ISIS_MERLIN.instr) for `ISIS_MERLIN.instr`. -- [Additional information](ISIS_MERLIN.md) +- [Additional information](ISIS_MERLIN.md) (only if available!) - http://www.isis.stfc.ac.uk/instruments/merlin --- diff --git a/mcstas-comps/examples/ISIS/ISIS_OSIRIS/README.md b/mcstas-comps/examples/ISIS/ISIS_OSIRIS/README.md index 409647324..27f8d9626 100644 --- a/mcstas-comps/examples/ISIS/ISIS_OSIRIS/README.md +++ b/mcstas-comps/examples/ISIS/ISIS_OSIRIS/README.md @@ -39,7 +39,7 @@ Parameters in **boldface** are required; the others are optional. ## Links - [Source code](ISIS_OSIRIS.instr) for `ISIS_OSIRIS.instr`. -- [Additional information](ISIS_OSIRIS.md) +- [Additional information](ISIS_OSIRIS.md) (only if available!) --- diff --git a/mcstas-comps/examples/ISIS/ISIS_Prisma2/README.md b/mcstas-comps/examples/ISIS/ISIS_Prisma2/README.md index 1533ef428..daa53dd1f 100644 --- a/mcstas-comps/examples/ISIS/ISIS_Prisma2/README.md +++ b/mcstas-comps/examples/ISIS/ISIS_Prisma2/README.md @@ -42,7 +42,7 @@ Parameters in **boldface** are required; the others are optional. ## Links - [Source code](ISIS_Prisma2.instr) for `ISIS_Prisma2.instr`. -- [Additional information](ISIS_Prisma2.md) +- [Additional information](ISIS_Prisma2.md) (only if available!) - The McStas User manual - PRISMA diff --git a/mcstas-comps/examples/ISIS/ISIS_SANS2d/README.md b/mcstas-comps/examples/ISIS/ISIS_SANS2d/README.md index f589108bc..06b8a756a 100644 --- a/mcstas-comps/examples/ISIS/ISIS_SANS2d/README.md +++ b/mcstas-comps/examples/ISIS/ISIS_SANS2d/README.md @@ -48,7 +48,7 @@ Parameters in **boldface** are required; the others are optional. ## Links - [Source code](ISIS_SANS2d.instr) for `ISIS_SANS2d.instr`. -- [Additional information](ISIS_SANS2d.md) +- [Additional information](ISIS_SANS2d.md) (only if available!) --- diff --git a/mcstas-comps/examples/ISIS/ISIS_TOSCA_preupgrade/README.md b/mcstas-comps/examples/ISIS/ISIS_TOSCA_preupgrade/README.md index 5547097b8..321686d7f 100644 --- a/mcstas-comps/examples/ISIS/ISIS_TOSCA_preupgrade/README.md +++ b/mcstas-comps/examples/ISIS/ISIS_TOSCA_preupgrade/README.md @@ -41,7 +41,7 @@ Parameters in **boldface** are required; the others are optional. ## Links - [Source code](ISIS_TOSCA_preupgrade.instr) for `ISIS_TOSCA_preupgrade.instr`. -- [Additional information](ISIS_TOSCA_preupgrade.md) +- [Additional information](ISIS_TOSCA_preupgrade.md) (only if available!) - TOSCA instrument webpage - MDANSE 2018 school webpage diff --git a/mcstas-comps/examples/ISIS/ISIS_TS1_Brilliance/README.md b/mcstas-comps/examples/ISIS/ISIS_TS1_Brilliance/README.md index e09335b90..47a119ece 100644 --- a/mcstas-comps/examples/ISIS/ISIS_TS1_Brilliance/README.md +++ b/mcstas-comps/examples/ISIS/ISIS_TS1_Brilliance/README.md @@ -30,7 +30,7 @@ Parameters in **boldface** are required; the others are optional. ## Links - [Source code](ISIS_TS1_Brilliance.instr) for `ISIS_TS1_Brilliance.instr`. -- [Additional information](ISIS_TS1_Brilliance.md) +- [Additional information](ISIS_TS1_Brilliance.md) (only if available!) --- diff --git a/mcstas-comps/examples/ISIS/ISIS_TS2_Brilliance/README.md b/mcstas-comps/examples/ISIS/ISIS_TS2_Brilliance/README.md index 9dadd3d0e..ef0ba82de 100644 --- a/mcstas-comps/examples/ISIS/ISIS_TS2_Brilliance/README.md +++ b/mcstas-comps/examples/ISIS/ISIS_TS2_Brilliance/README.md @@ -30,7 +30,7 @@ Parameters in **boldface** are required; the others are optional. ## Links - [Source code](ISIS_TS2_Brilliance.instr) for `ISIS_TS2_Brilliance.instr`. -- [Additional information](ISIS_TS2_Brilliance.md) +- [Additional information](ISIS_TS2_Brilliance.md) (only if available!) --- diff --git a/mcstas-comps/examples/ISIS/ISIS_test/README.md b/mcstas-comps/examples/ISIS/ISIS_test/README.md index 41cdf244e..ff44a9737 100644 --- a/mcstas-comps/examples/ISIS/ISIS_test/README.md +++ b/mcstas-comps/examples/ISIS/ISIS_test/README.md @@ -27,7 +27,7 @@ Parameters in **boldface** are required; the others are optional. ## Links - [Source code](ISIS_test.instr) for `ISIS_test.instr`. -- [Additional information](ISIS_test.md) +- [Additional information](ISIS_test.md) (only if available!) - Written by D. Champion ISIS, Feb 2004 --- diff --git a/mcstas-comps/examples/ISIS/ViewModISIStest/README.md b/mcstas-comps/examples/ISIS/ViewModISIStest/README.md index 1bed04b8e..d45aa73b3 100644 --- a/mcstas-comps/examples/ISIS/ViewModISIStest/README.md +++ b/mcstas-comps/examples/ISIS/ViewModISIStest/README.md @@ -28,7 +28,7 @@ Parameters in **boldface** are required; the others are optional. ## Links - [Source code](ViewModISIStest.instr) for `ViewModISIStest.instr`. -- [Additional information](ViewModISIStest.md) +- [Additional information](ViewModISIStest.md) (only if available!) - Written by D. Champion ISIS, Feb 2004 --- diff --git a/mcstas-comps/examples/LLB/LLB_6T2/README.md b/mcstas-comps/examples/LLB/LLB_6T2/README.md index 8bb57e885..36dbbcd51 100644 --- a/mcstas-comps/examples/LLB/LLB_6T2/README.md +++ b/mcstas-comps/examples/LLB/LLB_6T2/README.md @@ -38,7 +38,7 @@ Parameters in **boldface** are required; the others are optional. ## Links - [Source code](LLB_6T2.instr) for `LLB_6T2.instr`. -- [Additional information](LLB_6T2.md) +- [Additional information](LLB_6T2.md) (only if available!) --- diff --git a/mcstas-comps/examples/Mantid/ILL_H16_IN5_Mantid/README.md b/mcstas-comps/examples/Mantid/ILL_H16_IN5_Mantid/README.md index 4e996716b..fd1def33c 100644 --- a/mcstas-comps/examples/Mantid/ILL_H16_IN5_Mantid/README.md +++ b/mcstas-comps/examples/Mantid/ILL_H16_IN5_Mantid/README.md @@ -49,7 +49,7 @@ Parameters in **boldface** are required; the others are optional. ## Links - [Source code](ILL_H16_IN5_Mantid.instr) for `ILL_H16_IN5_Mantid.instr`. -- [Additional information](ILL_H16_IN5_Mantid.md) +- [Additional information](ILL_H16_IN5_Mantid.md) (only if available!) - The IN5@ILL cold time of flight instrument --- diff --git a/mcstas-comps/examples/Mantid/ILL_H16_Mantid/README.md b/mcstas-comps/examples/Mantid/ILL_H16_Mantid/README.md index ca1ba5fc5..f063fdaf7 100644 --- a/mcstas-comps/examples/Mantid/ILL_H16_Mantid/README.md +++ b/mcstas-comps/examples/Mantid/ILL_H16_Mantid/README.md @@ -31,7 +31,7 @@ Parameters in **boldface** are required; the others are optional. ## Links - [Source code](ILL_H16_Mantid.instr) for `ILL_H16_Mantid.instr`. -- [Additional information](ILL_H16_Mantid.md) +- [Additional information](ILL_H16_Mantid.md) (only if available!) --- diff --git a/mcstas-comps/examples/Mantid/ILL_IN5_Mantid/README.md b/mcstas-comps/examples/Mantid/ILL_IN5_Mantid/README.md index 8edb37c9a..dee11d618 100644 --- a/mcstas-comps/examples/Mantid/ILL_IN5_Mantid/README.md +++ b/mcstas-comps/examples/Mantid/ILL_IN5_Mantid/README.md @@ -40,7 +40,7 @@ Parameters in **boldface** are required; the others are optional. ## Links - [Source code](ILL_IN5_Mantid.instr) for `ILL_IN5_Mantid.instr`. -- [Additional information](ILL_IN5_Mantid.md) +- [Additional information](ILL_IN5_Mantid.md) (only if available!) - The IN5@ILL cold time of flight instrument --- diff --git a/mcstas-comps/examples/Mantid/ISIS_SANS2d_Mantid/README.md b/mcstas-comps/examples/Mantid/ISIS_SANS2d_Mantid/README.md index 3339f356e..806916798 100644 --- a/mcstas-comps/examples/Mantid/ISIS_SANS2d_Mantid/README.md +++ b/mcstas-comps/examples/Mantid/ISIS_SANS2d_Mantid/README.md @@ -49,7 +49,7 @@ Parameters in **boldface** are required; the others are optional. ## Links - [Source code](ISIS_SANS2d_Mantid.instr) for `ISIS_SANS2d_Mantid.instr`. -- [Additional information](ISIS_SANS2d_Mantid.md) +- [Additional information](ISIS_SANS2d_Mantid.md) (only if available!) --- diff --git a/mcstas-comps/examples/Mantid/ISIS_TOSCA_preupgrade_Mantid/README.md b/mcstas-comps/examples/Mantid/ISIS_TOSCA_preupgrade_Mantid/README.md index 7c87b434e..afe27b7c1 100644 --- a/mcstas-comps/examples/Mantid/ISIS_TOSCA_preupgrade_Mantid/README.md +++ b/mcstas-comps/examples/Mantid/ISIS_TOSCA_preupgrade_Mantid/README.md @@ -47,7 +47,7 @@ Parameters in **boldface** are required; the others are optional. ## Links - [Source code](ISIS_TOSCA_preupgrade_Mantid.instr) for `ISIS_TOSCA_preupgrade_Mantid.instr`. -- [Additional information](ISIS_TOSCA_preupgrade_Mantid.md) +- [Additional information](ISIS_TOSCA_preupgrade_Mantid.md) (only if available!) - TOSCA instrument webpage - MDANSE 2018 school webpage diff --git a/mcstas-comps/examples/Mantid/SNS_ARCS_Mantid/README.md b/mcstas-comps/examples/Mantid/SNS_ARCS_Mantid/README.md index bf8896f66..913463bf5 100644 --- a/mcstas-comps/examples/Mantid/SNS_ARCS_Mantid/README.md +++ b/mcstas-comps/examples/Mantid/SNS_ARCS_Mantid/README.md @@ -45,7 +45,7 @@ Parameters in **boldface** are required; the others are optional. ## Links - [Source code](SNS_ARCS_Mantid.instr) for `SNS_ARCS_Mantid.instr`. -- [Additional information](SNS_ARCS_Mantid.md) +- [Additional information](SNS_ARCS_Mantid.md) (only if available!) -
    Granroth, G. E. and Abernathy, D. L., "Performance Comparisons of Four Direct Geometry Spectrometers Planned for Spallation Neutron Source", Proceedings of ICANS-XVI, 289 (2003). -
    D. L. Abernathy, M. B. Stone, M. J. Loguillo, M. S. Lucas, O. Delaire, X.Tang, J. Y. Y. Lin, and B. Fultz,"Design and operation of the wide angular-range chopper spectrometer ARCS at the Spallation Neutron Source", Review of Scientific Instruments, 83 , 015114 (2012) diff --git a/mcstas-comps/examples/Mantid/Tools_ONION/README.md b/mcstas-comps/examples/Mantid/Tools_ONION/README.md index a0242685e..49a484372 100644 --- a/mcstas-comps/examples/Mantid/Tools_ONION/README.md +++ b/mcstas-comps/examples/Mantid/Tools_ONION/README.md @@ -35,7 +35,7 @@ Parameters in **boldface** are required; the others are optional. ## Links - [Source code](Tools_ONION.instr) for `Tools_ONION.instr`. -- [Additional information](Tools_ONION.md) +- [Additional information](Tools_ONION.md) (only if available!) - "Using an onion like neutron scattering instrument model to quickly optimize design parameters" - T. Huegle, Nuclear Instruments and Methods in Physics Research Section A, 2019 - Python script available at https://github.com/mccode-dev/McCode-contribution-support-docs/tree/master/McStas/2.6_Onion_tool_T_Huegle diff --git a/mcstas-comps/examples/Mantid/templateSANS2_Mantid/README.md b/mcstas-comps/examples/Mantid/templateSANS2_Mantid/README.md index 60733de26..5eb95250f 100644 --- a/mcstas-comps/examples/Mantid/templateSANS2_Mantid/README.md +++ b/mcstas-comps/examples/Mantid/templateSANS2_Mantid/README.md @@ -33,7 +33,7 @@ Parameters in **boldface** are required; the others are optional. ## Links - [Source code](templateSANS2_Mantid.instr) for `templateSANS2_Mantid.instr`. -- [Additional information](templateSANS2_Mantid.md) +- [Additional information](templateSANS2_Mantid.md) (only if available!) --- diff --git a/mcstas-comps/examples/Mantid/templateSANS_Mantid/README.md b/mcstas-comps/examples/Mantid/templateSANS_Mantid/README.md index b04fa3146..24bca486d 100644 --- a/mcstas-comps/examples/Mantid/templateSANS_Mantid/README.md +++ b/mcstas-comps/examples/Mantid/templateSANS_Mantid/README.md @@ -39,7 +39,7 @@ Parameters in **boldface** are required; the others are optional. ## Links - [Source code](templateSANS_Mantid.instr) for `templateSANS_Mantid.instr`. -- [Additional information](templateSANS_Mantid.md) +- [Additional information](templateSANS_Mantid.md) (only if available!) --- diff --git a/mcstas-comps/examples/Mantid/templateSasView_Mantid/README.md b/mcstas-comps/examples/Mantid/templateSasView_Mantid/README.md index b9e8f3aab..2fac86619 100644 --- a/mcstas-comps/examples/Mantid/templateSasView_Mantid/README.md +++ b/mcstas-comps/examples/Mantid/templateSasView_Mantid/README.md @@ -54,7 +54,7 @@ Parameters in **boldface** are required; the others are optional. ## Links - [Source code](templateSasView_Mantid.instr) for `templateSasView_Mantid.instr`. -- [Additional information](templateSasView_Mantid.md) +- [Additional information](templateSasView_Mantid.md) (only if available!) --- diff --git a/mcstas-comps/examples/Mantid/templateVanadiumMultipleScat_Mantid/README.md b/mcstas-comps/examples/Mantid/templateVanadiumMultipleScat_Mantid/README.md index fa9bda66c..ce0fbd49b 100644 --- a/mcstas-comps/examples/Mantid/templateVanadiumMultipleScat_Mantid/README.md +++ b/mcstas-comps/examples/Mantid/templateVanadiumMultipleScat_Mantid/README.md @@ -27,7 +27,7 @@ Parameters in **boldface** are required; the others are optional. ## Links - [Source code](templateVanadiumMultipleScat_Mantid.instr) for `templateVanadiumMultipleScat_Mantid.instr`. -- [Additional information](templateVanadiumMultipleScat_Mantid.md) +- [Additional information](templateVanadiumMultipleScat_Mantid.md) (only if available!) - A reference/HTML link for more information --- diff --git a/mcstas-comps/examples/NCrystal/NCrystal_example/README.md b/mcstas-comps/examples/NCrystal/NCrystal_example/README.md index 8bd3615a8..b4875c939 100644 --- a/mcstas-comps/examples/NCrystal/NCrystal_example/README.md +++ b/mcstas-comps/examples/NCrystal/NCrystal_example/README.md @@ -43,7 +43,7 @@ Parameters in **boldface** are required; the others are optional. ## Links - [Source code](NCrystal_example.instr) for `NCrystal_example.instr`. -- [Additional information](NCrystal_example.md) +- [Additional information](NCrystal_example.md) (only if available!) - https://github.com/mctools/ncrystal/wiki/ --- diff --git a/mcstas-comps/examples/NCrystal/Union_NCrystal_example/README.md b/mcstas-comps/examples/NCrystal/Union_NCrystal_example/README.md index 4e0f24c42..465a24b2e 100644 --- a/mcstas-comps/examples/NCrystal/Union_NCrystal_example/README.md +++ b/mcstas-comps/examples/NCrystal/Union_NCrystal_example/README.md @@ -28,7 +28,7 @@ Parameters in **boldface** are required; the others are optional. ## Links - [Source code](Union_NCrystal_example.instr) for `Union_NCrystal_example.instr`. -- [Additional information](Union_NCrystal_example.md) +- [Additional information](Union_NCrystal_example.md) (only if available!) - https://github.com/mctools/ncrystal/wiki/ --- diff --git a/mcstas-comps/examples/NCrystal/Union_NCrystal_mix_example/README.md b/mcstas-comps/examples/NCrystal/Union_NCrystal_mix_example/README.md index 58fb52221..058cf0e49 100644 --- a/mcstas-comps/examples/NCrystal/Union_NCrystal_mix_example/README.md +++ b/mcstas-comps/examples/NCrystal/Union_NCrystal_mix_example/README.md @@ -29,7 +29,7 @@ Parameters in **boldface** are required; the others are optional. ## Links - [Source code](Union_NCrystal_mix_example.instr) for `Union_NCrystal_mix_example.instr`. -- [Additional information](Union_NCrystal_mix_example.md) +- [Additional information](Union_NCrystal_mix_example.md) (only if available!) - https://github.com/mctools/ncrystal/wiki/ --- diff --git a/mcstas-comps/examples/Necsa/SAFARI_MPISI/README.md b/mcstas-comps/examples/Necsa/SAFARI_MPISI/README.md index 33fc6735f..18b902d31 100644 --- a/mcstas-comps/examples/Necsa/SAFARI_MPISI/README.md +++ b/mcstas-comps/examples/Necsa/SAFARI_MPISI/README.md @@ -57,7 +57,7 @@ Parameters in **boldface** are required; the others are optional. ## Links - [Source code](SAFARI_MPISI.instr) for `SAFARI_MPISI.instr`. -- [Additional information](SAFARI_MPISI.md) +- [Additional information](SAFARI_MPISI.md) (only if available!) - The South African Nuclear Energy Corporation website --- diff --git a/mcstas-comps/examples/Necsa/SAFARI_PITSI/README.md b/mcstas-comps/examples/Necsa/SAFARI_PITSI/README.md index db123bed0..8bd928cc6 100644 --- a/mcstas-comps/examples/Necsa/SAFARI_PITSI/README.md +++ b/mcstas-comps/examples/Necsa/SAFARI_PITSI/README.md @@ -54,7 +54,7 @@ Parameters in **boldface** are required; the others are optional. ## Links - [Source code](SAFARI_PITSI.instr) for `SAFARI_PITSI.instr`. -- [Additional information](SAFARI_PITSI.md) +- [Additional information](SAFARI_PITSI.md) (only if available!) - The South African Nuclear Energy Corporation website --- diff --git a/mcstas-comps/examples/PSI/PSI_DMC/README.md b/mcstas-comps/examples/PSI/PSI_DMC/README.md index 4275a0180..af5af1693 100644 --- a/mcstas-comps/examples/PSI/PSI_DMC/README.md +++ b/mcstas-comps/examples/PSI/PSI_DMC/README.md @@ -40,7 +40,7 @@ Parameters in **boldface** are required; the others are optional. ## Links - [Source code](PSI_DMC.instr) for `PSI_DMC.instr`. -- [Additional information](PSI_DMC.md) +- [Additional information](PSI_DMC.md) (only if available!) - The PSI Monte-Carlo website. - P Willendrup, U Filges, L Keller, E Farhi, K Lefmann: Validation of a realistic powder sample using data from DMC at PSI, ICNS 2005 (Physica B, 386, (2006), 1032.) diff --git a/mcstas-comps/examples/PSI/PSI_DMC_simple/README.md b/mcstas-comps/examples/PSI/PSI_DMC_simple/README.md index 3ed9bcfc4..ec271b2d5 100644 --- a/mcstas-comps/examples/PSI/PSI_DMC_simple/README.md +++ b/mcstas-comps/examples/PSI/PSI_DMC_simple/README.md @@ -39,7 +39,7 @@ Parameters in **boldface** are required; the others are optional. ## Links - [Source code](PSI_DMC_simple.instr) for `PSI_DMC_simple.instr`. -- [Additional information](PSI_DMC_simple.md) +- [Additional information](PSI_DMC_simple.md) (only if available!) - The PSI Monte-Carlo website. - P Willendrup, U Filges, L Keller, E Farhi, K Lefmann: Validation of a realistic powder sample using data from DMC at PSI, ICNS 2005 (Physica B, 386, (2006), 1032.) diff --git a/mcstas-comps/examples/PSI/PSI_Focus/README.md b/mcstas-comps/examples/PSI/PSI_Focus/README.md index 7660cc4bb..df210fa58 100644 --- a/mcstas-comps/examples/PSI/PSI_Focus/README.md +++ b/mcstas-comps/examples/PSI/PSI_Focus/README.md @@ -28,7 +28,7 @@ Parameters in **boldface** are required; the others are optional. ## Links - [Source code](PSI_Focus.instr) for `PSI_Focus.instr`. -- [Additional information](PSI_Focus.md) +- [Additional information](PSI_Focus.md) (only if available!) - Written by U.Filges PSI, Jan 2004 --- diff --git a/mcstas-comps/examples/PSI/PSI_source/README.md b/mcstas-comps/examples/PSI/PSI_source/README.md index e472541a5..8b176a4ac 100644 --- a/mcstas-comps/examples/PSI/PSI_source/README.md +++ b/mcstas-comps/examples/PSI/PSI_source/README.md @@ -39,7 +39,7 @@ Parameters in **boldface** are required; the others are optional. ## Links - [Source code](PSI_source.instr) for `PSI_source.instr`. -- [Additional information](PSI_source.md) +- [Additional information](PSI_source.md) (only if available!) - The PSI Monte-Carlo website. - P Willendrup, U Filges, L Keller, E Farhi, K Lefmann: Validation of a realistic powder sample using data from DMC at PSI, ICNS 2005 (Physica B, 386, (2006), 1032.) diff --git a/mcstas-comps/examples/PSI/RITA-II/README.md b/mcstas-comps/examples/PSI/RITA-II/README.md index a03246de0..f0eed7b99 100644 --- a/mcstas-comps/examples/PSI/RITA-II/README.md +++ b/mcstas-comps/examples/PSI/RITA-II/README.md @@ -144,7 +144,7 @@ Parameters in **boldface** are required; the others are optional. ## Links - [Source code](RITA-II.instr) for `RITA-II.instr`. -- [Additional information](RITA-II.md) +- [Additional information](RITA-II.md) (only if available!) - Rescal for Matlab at http://www.ill.fr/tas/matlab - Restrax at http://omega.ujf.cas.cz/restrax/ diff --git a/mcstas-comps/examples/Risoe/TAS1_C1/README.md b/mcstas-comps/examples/Risoe/TAS1_C1/README.md index e127380af..77873ba4b 100644 --- a/mcstas-comps/examples/Risoe/TAS1_C1/README.md +++ b/mcstas-comps/examples/Risoe/TAS1_C1/README.md @@ -35,7 +35,7 @@ Parameters in **boldface** are required; the others are optional. ## Links - [Source code](TAS1_C1.instr) for `TAS1_C1.instr`. -- [Additional information](TAS1_C1.md) +- [Additional information](TAS1_C1.md) (only if available!) - The McStas User manual - A. Abrahamsen, N. B. Christensen, and E. Lauridsen. McStas simulations of the TAS1 spectrometer. Student's report, Niels Bohr Institute, University of Copenhagen, 1998. diff --git a/mcstas-comps/examples/Risoe/TAS1_C1_Tilt/README.md b/mcstas-comps/examples/Risoe/TAS1_C1_Tilt/README.md index 7abec73ff..c2e93d1f2 100644 --- a/mcstas-comps/examples/Risoe/TAS1_C1_Tilt/README.md +++ b/mcstas-comps/examples/Risoe/TAS1_C1_Tilt/README.md @@ -36,7 +36,7 @@ Parameters in **boldface** are required; the others are optional. ## Links - [Source code](TAS1_C1_Tilt.instr) for `TAS1_C1_Tilt.instr`. -- [Additional information](TAS1_C1_Tilt.md) +- [Additional information](TAS1_C1_Tilt.md) (only if available!) - The McStas User manual - A. Abrahamsen, N. B. Christensen, and E. Lauridsen. McStas simulations of the TAS1 spectrometer. Student's report, Niels Bohr Institute, University of Copenhagen, 1998. diff --git a/mcstas-comps/examples/Risoe/TAS1_Diff_Powder/README.md b/mcstas-comps/examples/Risoe/TAS1_Diff_Powder/README.md index 8fd1cc4bf..4b9b8c779 100644 --- a/mcstas-comps/examples/Risoe/TAS1_Diff_Powder/README.md +++ b/mcstas-comps/examples/Risoe/TAS1_Diff_Powder/README.md @@ -41,7 +41,7 @@ Parameters in **boldface** are required; the others are optional. ## Links - [Source code](TAS1_Diff_Powder.instr) for `TAS1_Diff_Powder.instr`. -- [Additional information](TAS1_Diff_Powder.md) +- [Additional information](TAS1_Diff_Powder.md) (only if available!) - The McStas User manual - A. Abrahamsen, N. B. Christensen, and E. Lauridsen. McStas simulations of the TAS1 spectrometer. Student's report, Niels Bohr Institute, University of Copenhagen, 1998. diff --git a/mcstas-comps/examples/Risoe/TAS1_Diff_Slit/README.md b/mcstas-comps/examples/Risoe/TAS1_Diff_Slit/README.md index e85692b0f..1ae517301 100644 --- a/mcstas-comps/examples/Risoe/TAS1_Diff_Slit/README.md +++ b/mcstas-comps/examples/Risoe/TAS1_Diff_Slit/README.md @@ -40,7 +40,7 @@ Parameters in **boldface** are required; the others are optional. ## Links - [Source code](TAS1_Diff_Slit.instr) for `TAS1_Diff_Slit.instr`. -- [Additional information](TAS1_Diff_Slit.md) +- [Additional information](TAS1_Diff_Slit.md) (only if available!) - The McStas User manual - A. Abrahamsen, N. B. Christensen, and E. Lauridsen. McStas simulations of the TAS1 spectrometer. Student's report, Niels Bohr Institute, University of Copenhagen, 1998. diff --git a/mcstas-comps/examples/Risoe/TAS1_Diff_Vana/README.md b/mcstas-comps/examples/Risoe/TAS1_Diff_Vana/README.md index 6364eca5a..755cc7ece 100644 --- a/mcstas-comps/examples/Risoe/TAS1_Diff_Vana/README.md +++ b/mcstas-comps/examples/Risoe/TAS1_Diff_Vana/README.md @@ -41,7 +41,7 @@ Parameters in **boldface** are required; the others are optional. ## Links - [Source code](TAS1_Diff_Vana.instr) for `TAS1_Diff_Vana.instr`. -- [Additional information](TAS1_Diff_Vana.md) +- [Additional information](TAS1_Diff_Vana.md) (only if available!) - The McStas User manual - A. Abrahamsen, N. B. Christensen, and E. Lauridsen. McStas simulations of the TAS1 spectrometer. Student's report, Niels Bohr Institute, University of Copenhagen, 1998. diff --git a/mcstas-comps/examples/Risoe/TAS1_Powder/README.md b/mcstas-comps/examples/Risoe/TAS1_Powder/README.md index 73691318f..9348270bd 100644 --- a/mcstas-comps/examples/Risoe/TAS1_Powder/README.md +++ b/mcstas-comps/examples/Risoe/TAS1_Powder/README.md @@ -40,7 +40,7 @@ Parameters in **boldface** are required; the others are optional. ## Links - [Source code](TAS1_Powder.instr) for `TAS1_Powder.instr`. -- [Additional information](TAS1_Powder.md) +- [Additional information](TAS1_Powder.md) (only if available!) - The McStas User manual - A. Abrahamsen, N. B. Christensen, and E. Lauridsen. McStas simulations of the TAS1 spectrometer. Student's report, Niels Bohr Institute, University of Copenhagen, 1998. diff --git a/mcstas-comps/examples/Risoe/TAS1_Vana/README.md b/mcstas-comps/examples/Risoe/TAS1_Vana/README.md index 7680808d0..804820852 100644 --- a/mcstas-comps/examples/Risoe/TAS1_Vana/README.md +++ b/mcstas-comps/examples/Risoe/TAS1_Vana/README.md @@ -40,7 +40,7 @@ Parameters in **boldface** are required; the others are optional. ## Links - [Source code](TAS1_Vana.instr) for `TAS1_Vana.instr`. -- [Additional information](TAS1_Vana.md) +- [Additional information](TAS1_Vana.md) (only if available!) - The McStas User manual - A. Abrahamsen, N. B. Christensen, and E. Lauridsen. McStas simulations of the TAS1 spectrometer. Student's report, Niels Bohr Institute, University of Copenhagen, 1998. diff --git a/mcstas-comps/examples/SINE2020/McStas_Isotropic_Sqw/README.md b/mcstas-comps/examples/SINE2020/McStas_Isotropic_Sqw/README.md index 113211b72..f64b9a64b 100644 --- a/mcstas-comps/examples/SINE2020/McStas_Isotropic_Sqw/README.md +++ b/mcstas-comps/examples/SINE2020/McStas_Isotropic_Sqw/README.md @@ -52,7 +52,7 @@ Parameters in **boldface** are required; the others are optional. ## Links - [Source code](McStas_Isotropic_Sqw.instr) for `McStas_Isotropic_Sqw.instr`. -- [Additional information](McStas_Isotropic_Sqw.md) +- [Additional information](McStas_Isotropic_Sqw.md) (only if available!) - Website for the MCPL particle exchange format - Website for the SIMRES package - Website for WP8 in EU-SINE2020 diff --git a/mcstas-comps/examples/SINE2020/McStas_PowderN/README.md b/mcstas-comps/examples/SINE2020/McStas_PowderN/README.md index 6443d8753..3356ca0ff 100644 --- a/mcstas-comps/examples/SINE2020/McStas_PowderN/README.md +++ b/mcstas-comps/examples/SINE2020/McStas_PowderN/README.md @@ -49,7 +49,7 @@ Parameters in **boldface** are required; the others are optional. ## Links - [Source code](McStas_PowderN.instr) for `McStas_PowderN.instr`. -- [Additional information](McStas_PowderN.md) +- [Additional information](McStas_PowderN.md) (only if available!) - Website for the MCPL particle exchange format - Website for the SIMRES package - Website for WP8 in EU-SINE2020 diff --git a/mcstas-comps/examples/SINE2020/McStas_Single_crystal/README.md b/mcstas-comps/examples/SINE2020/McStas_Single_crystal/README.md index 26194fccb..38cd41511 100644 --- a/mcstas-comps/examples/SINE2020/McStas_Single_crystal/README.md +++ b/mcstas-comps/examples/SINE2020/McStas_Single_crystal/README.md @@ -49,7 +49,7 @@ Parameters in **boldface** are required; the others are optional. ## Links - [Source code](McStas_Single_crystal.instr) for `McStas_Single_crystal.instr`. -- [Additional information](McStas_Single_crystal.md) +- [Additional information](McStas_Single_crystal.md) (only if available!) - Website for the MCPL particle exchange format - Website for the SIMRES package - Website for WP8 in EU-SINE2020 diff --git a/mcstas-comps/examples/SNS/Gallmeier_SNS_decoupled_poisoned/README.md b/mcstas-comps/examples/SNS/Gallmeier_SNS_decoupled_poisoned/README.md index 040db61b3..2ab47ba59 100644 --- a/mcstas-comps/examples/SNS/Gallmeier_SNS_decoupled_poisoned/README.md +++ b/mcstas-comps/examples/SNS/Gallmeier_SNS_decoupled_poisoned/README.md @@ -28,7 +28,7 @@ Parameters in **boldface** are required; the others are optional. ## Links - [Source code](Gallmeier_SNS_decoupled_poisoned.instr) for `Gallmeier_SNS_decoupled_poisoned.instr`. -- [Additional information](Gallmeier_SNS_decoupled_poisoned.md) +- [Additional information](Gallmeier_SNS_decoupled_poisoned.md) (only if available!) --- diff --git a/mcstas-comps/examples/SNS/Granroth_SNS_decoupled_poisoned/README.md b/mcstas-comps/examples/SNS/Granroth_SNS_decoupled_poisoned/README.md index 20b6ac29a..e8c7994a0 100644 --- a/mcstas-comps/examples/SNS/Granroth_SNS_decoupled_poisoned/README.md +++ b/mcstas-comps/examples/SNS/Granroth_SNS_decoupled_poisoned/README.md @@ -28,7 +28,7 @@ Parameters in **boldface** are required; the others are optional. ## Links - [Source code](Granroth_SNS_decoupled_poisoned.instr) for `Granroth_SNS_decoupled_poisoned.instr`. -- [Additional information](Granroth_SNS_decoupled_poisoned.md) +- [Additional information](Granroth_SNS_decoupled_poisoned.md) (only if available!) --- diff --git a/mcstas-comps/examples/SNS/Mezei_SNS_decoupled_poisoned/README.md b/mcstas-comps/examples/SNS/Mezei_SNS_decoupled_poisoned/README.md index 845efd4f5..82e8ed797 100644 --- a/mcstas-comps/examples/SNS/Mezei_SNS_decoupled_poisoned/README.md +++ b/mcstas-comps/examples/SNS/Mezei_SNS_decoupled_poisoned/README.md @@ -29,7 +29,7 @@ Parameters in **boldface** are required; the others are optional. ## Links - [Source code](Mezei_SNS_decoupled_poisoned.instr) for `Mezei_SNS_decoupled_poisoned.instr`. -- [Additional information](Mezei_SNS_decoupled_poisoned.md) +- [Additional information](Mezei_SNS_decoupled_poisoned.md) (only if available!) --- diff --git a/mcstas-comps/examples/SNS/SNS_ARCS/README.md b/mcstas-comps/examples/SNS/SNS_ARCS/README.md index d3583c855..58978a607 100644 --- a/mcstas-comps/examples/SNS/SNS_ARCS/README.md +++ b/mcstas-comps/examples/SNS/SNS_ARCS/README.md @@ -45,7 +45,7 @@ Parameters in **boldface** are required; the others are optional. ## Links - [Source code](SNS_ARCS.instr) for `SNS_ARCS.instr`. -- [Additional information](SNS_ARCS.md) +- [Additional information](SNS_ARCS.md) (only if available!) -
    Granroth, G. E. and Abernathy, D. L., "Performance Comparisons of Four Direct Geometry Spectrometers Planned for Spallation Neutron Source", Proceedings of ICANS-XVI, 289 (2003). -
    D. L. Abernathy, M. B. Stone, M. J. Loguillo, M. S. Lucas, O. Delaire, X.Tang, J. Y. Y. Lin, and B. Fultz,"Design and operation of the wide angular-range chopper spectrometer ARCS at the Spallation Neutron Source", Review of Scientific Instruments, 83 , 015114 (2012) diff --git a/mcstas-comps/examples/SNS/SNS_BASIS/README.md b/mcstas-comps/examples/SNS/SNS_BASIS/README.md index 7d4d9cd89..0b5af5703 100644 --- a/mcstas-comps/examples/SNS/SNS_BASIS/README.md +++ b/mcstas-comps/examples/SNS/SNS_BASIS/README.md @@ -64,7 +64,7 @@ Parameters in **boldface** are required; the others are optional. ## Links - [Source code](SNS_BASIS.instr) for `SNS_BASIS.instr`. -- [Additional information](SNS_BASIS.md) +- [Additional information](SNS_BASIS.md) (only if available!) - A reference/HTML link for more information --- diff --git a/mcstas-comps/examples/SNS/SNS_analytic_test/README.md b/mcstas-comps/examples/SNS/SNS_analytic_test/README.md index b4ba4fa42..58962acc9 100644 --- a/mcstas-comps/examples/SNS/SNS_analytic_test/README.md +++ b/mcstas-comps/examples/SNS/SNS_analytic_test/README.md @@ -27,7 +27,7 @@ Parameters in **boldface** are required; the others are optional. ## Links - [Source code](SNS_analytic_test.instr) for `SNS_analytic_test.instr`. -- [Additional information](SNS_analytic_test.md) +- [Additional information](SNS_analytic_test.md) (only if available!) - Written by G. Granroth - SNS_source component - Source files diff --git a/mcstas-comps/examples/SNS/SNS_test/README.md b/mcstas-comps/examples/SNS/SNS_test/README.md index 7526691e2..0a26c723a 100644 --- a/mcstas-comps/examples/SNS/SNS_test/README.md +++ b/mcstas-comps/examples/SNS/SNS_test/README.md @@ -27,7 +27,7 @@ Parameters in **boldface** are required; the others are optional. ## Links - [Source code](SNS_test.instr) for `SNS_test.instr`. -- [Additional information](SNS_test.md) +- [Additional information](SNS_test.md) (only if available!) - Written by G. Granroth - SNS_source component - Source files diff --git a/mcstas-comps/examples/TRIGA/RTP_DIF/README.md b/mcstas-comps/examples/TRIGA/RTP_DIF/README.md index 091eb43c4..f475f80e7 100644 --- a/mcstas-comps/examples/TRIGA/RTP_DIF/README.md +++ b/mcstas-comps/examples/TRIGA/RTP_DIF/README.md @@ -30,7 +30,7 @@ Parameters in **boldface** are required; the others are optional. ## Links - [Source code](RTP_DIF.instr) for `RTP_DIF.instr`. -- [Additional information](RTP_DIF.md) +- [Additional information](RTP_DIF.md) (only if available!) - Nuclear Malaysia - M. Sufi et al., J. AppL Cryst. (1997). 30, 884-888 [doi:10.1107/S0021889897001738] diff --git a/mcstas-comps/examples/TRIGA/RTP_Laue/README.md b/mcstas-comps/examples/TRIGA/RTP_Laue/README.md index 373974181..6673ef11a 100644 --- a/mcstas-comps/examples/TRIGA/RTP_Laue/README.md +++ b/mcstas-comps/examples/TRIGA/RTP_Laue/README.md @@ -30,7 +30,7 @@ Parameters in **boldface** are required; the others are optional. ## Links - [Source code](RTP_Laue.instr) for `RTP_Laue.instr`. -- [Additional information](RTP_Laue.md) +- [Additional information](RTP_Laue.md) (only if available!) - Nuclear Malaysia - M. Sufi et al., J. AppL Cryst. (1997). 30, 884-888 [doi:10.1107/S0021889897001738] diff --git a/mcstas-comps/examples/TRIGA/RTP_NeutronRadiography/README.md b/mcstas-comps/examples/TRIGA/RTP_NeutronRadiography/README.md index a1afdf304..463cc9a0e 100644 --- a/mcstas-comps/examples/TRIGA/RTP_NeutronRadiography/README.md +++ b/mcstas-comps/examples/TRIGA/RTP_NeutronRadiography/README.md @@ -29,7 +29,7 @@ Parameters in **boldface** are required; the others are optional. ## Links - [Source code](RTP_NeutronRadiography.instr) for `RTP_NeutronRadiography.instr`. -- [Additional information](RTP_NeutronRadiography.md) +- [Additional information](RTP_NeutronRadiography.md) (only if available!) - Nuclear Malaysia - M. Sufi et al., J. AppL Cryst. (1997). 30, 884-888 [doi:10.1107/S0021889897001738] diff --git a/mcstas-comps/examples/TRIGA/RTP_SANS/README.md b/mcstas-comps/examples/TRIGA/RTP_SANS/README.md index ff555212b..8f8dfd0bd 100644 --- a/mcstas-comps/examples/TRIGA/RTP_SANS/README.md +++ b/mcstas-comps/examples/TRIGA/RTP_SANS/README.md @@ -43,7 +43,7 @@ Parameters in **boldface** are required; the others are optional. ## Links - [Source code](RTP_SANS.instr) for `RTP_SANS.instr`. -- [Additional information](RTP_SANS.md) +- [Additional information](RTP_SANS.md) (only if available!) - Nuclear Malaysia - M. Sufi et al., J. AppL Cryst. (1997). 30, 884-888 [doi:10.1107/S0021889897001738] diff --git a/mcstas-comps/examples/TUDelft/SEMSANS_Delft/README.md b/mcstas-comps/examples/TUDelft/SEMSANS_Delft/README.md index ba3bb58ed..6eeb37adc 100644 --- a/mcstas-comps/examples/TUDelft/SEMSANS_Delft/README.md +++ b/mcstas-comps/examples/TUDelft/SEMSANS_Delft/README.md @@ -40,7 +40,7 @@ Parameters in **boldface** are required; the others are optional. ## Links - [Source code](SEMSANS_Delft.instr) for `SEMSANS_Delft.instr`. -- [Additional information](SEMSANS_Delft.md) +- [Additional information](SEMSANS_Delft.md) (only if available!) - - https://doi.org/10.1107/S1600576720015496 diff --git a/mcstas-comps/examples/TUDelft/SEMSANS_instrument/README.md b/mcstas-comps/examples/TUDelft/SEMSANS_instrument/README.md index d953b10dc..0884a3015 100644 --- a/mcstas-comps/examples/TUDelft/SEMSANS_instrument/README.md +++ b/mcstas-comps/examples/TUDelft/SEMSANS_instrument/README.md @@ -63,7 +63,7 @@ Parameters in **boldface** are required; the others are optional. ## Links - [Source code](SEMSANS_instrument.instr) for `SEMSANS_instrument.instr`. -- [Additional information](SEMSANS_instrument.md) +- [Additional information](SEMSANS_instrument.md) (only if available!) --- diff --git a/mcstas-comps/examples/TUDelft/SESANS_Delft/README.md b/mcstas-comps/examples/TUDelft/SESANS_Delft/README.md index 48ca14da7..f75286f5e 100644 --- a/mcstas-comps/examples/TUDelft/SESANS_Delft/README.md +++ b/mcstas-comps/examples/TUDelft/SESANS_Delft/README.md @@ -39,7 +39,7 @@ Parameters in **boldface** are required; the others are optional. ## Links - [Source code](SESANS_Delft.instr) for `SESANS_Delft.instr`. -- [Additional information](SESANS_Delft.md) +- [Additional information](SESANS_Delft.md) (only if available!) - - https://doi.org/10.1107/S1600576720015496 diff --git a/mcstas-comps/examples/Templates/BTsimple/README.md b/mcstas-comps/examples/Templates/BTsimple/README.md index 03a3f0849..d5a508a80 100644 --- a/mcstas-comps/examples/Templates/BTsimple/README.md +++ b/mcstas-comps/examples/Templates/BTsimple/README.md @@ -36,7 +36,7 @@ Parameters in **boldface** are required; the others are optional. ## Links - [Source code](BTsimple.instr) for `BTsimple.instr`. -- [Additional information](BTsimple.md) +- [Additional information](BTsimple.md) (only if available!) --- diff --git a/mcstas-comps/examples/Templates/Demo_shape_primitives/README.md b/mcstas-comps/examples/Templates/Demo_shape_primitives/README.md index e0e5db6a3..400836bfb 100644 --- a/mcstas-comps/examples/Templates/Demo_shape_primitives/README.md +++ b/mcstas-comps/examples/Templates/Demo_shape_primitives/README.md @@ -26,7 +26,7 @@ Parameters in **boldface** are required; the others are optional. ## Links - [Source code](Demo_shape_primitives.instr) for `Demo_shape_primitives.instr`. -- [Additional information](Demo_shape_primitives.md) +- [Additional information](Demo_shape_primitives.md) (only if available!) --- diff --git a/mcstas-comps/examples/Templates/Demo_shape_primitives_simple/README.md b/mcstas-comps/examples/Templates/Demo_shape_primitives_simple/README.md index 0c44fa65e..5252dd7bc 100644 --- a/mcstas-comps/examples/Templates/Demo_shape_primitives_simple/README.md +++ b/mcstas-comps/examples/Templates/Demo_shape_primitives_simple/README.md @@ -26,7 +26,7 @@ Parameters in **boldface** are required; the others are optional. ## Links - [Source code](Demo_shape_primitives_simple.instr) for `Demo_shape_primitives_simple.instr`. -- [Additional information](Demo_shape_primitives_simple.md) +- [Additional information](Demo_shape_primitives_simple.md) (only if available!) --- diff --git a/mcstas-comps/examples/Templates/TOF_Reflectometer/README.md b/mcstas-comps/examples/Templates/TOF_Reflectometer/README.md index 193237cad..6fb474731 100644 --- a/mcstas-comps/examples/Templates/TOF_Reflectometer/README.md +++ b/mcstas-comps/examples/Templates/TOF_Reflectometer/README.md @@ -41,7 +41,7 @@ Parameters in **boldface** are required; the others are optional. ## Links - [Source code](TOF_Reflectometer.instr) for `TOF_Reflectometer.instr`. -- [Additional information](TOF_Reflectometer.md) +- [Additional information](TOF_Reflectometer.md) (only if available!) --- diff --git a/mcstas-comps/examples/Templates/Test_SasView_bcc_paracrystal_aniso/README.md b/mcstas-comps/examples/Templates/Test_SasView_bcc_paracrystal_aniso/README.md index 6395bfd53..5371e5e45 100644 --- a/mcstas-comps/examples/Templates/Test_SasView_bcc_paracrystal_aniso/README.md +++ b/mcstas-comps/examples/Templates/Test_SasView_bcc_paracrystal_aniso/README.md @@ -53,7 +53,7 @@ Parameters in **boldface** are required; the others are optional. ## Links - [Source code](Test_SasView_bcc_paracrystal_aniso.instr) for `Test_SasView_bcc_paracrystal_aniso.instr`. -- [Additional information](Test_SasView_bcc_paracrystal_aniso.md) +- [Additional information](Test_SasView_bcc_paracrystal_aniso.md) (only if available!) --- diff --git a/mcstas-comps/examples/Templates/Test_SasView_guinier/README.md b/mcstas-comps/examples/Templates/Test_SasView_guinier/README.md index a03eb058e..a0a29d989 100644 --- a/mcstas-comps/examples/Templates/Test_SasView_guinier/README.md +++ b/mcstas-comps/examples/Templates/Test_SasView_guinier/README.md @@ -43,7 +43,7 @@ Parameters in **boldface** are required; the others are optional. ## Links - [Source code](Test_SasView_guinier.instr) for `Test_SasView_guinier.instr`. -- [Additional information](Test_SasView_guinier.md) +- [Additional information](Test_SasView_guinier.md) (only if available!) --- diff --git a/mcstas-comps/examples/Templates/Tomography/README.md b/mcstas-comps/examples/Templates/Tomography/README.md index 4d4ae82ab..6e3012605 100644 --- a/mcstas-comps/examples/Templates/Tomography/README.md +++ b/mcstas-comps/examples/Templates/Tomography/README.md @@ -44,7 +44,7 @@ Parameters in **boldface** are required; the others are optional. ## Links - [Source code](Tomography.instr) for `Tomography.instr`. -- [Additional information](Tomography.md) +- [Additional information](Tomography.md) (only if available!) - http://shape.cs.princeton.edu/benchmark/documentation/off_format.html --- diff --git a/mcstas-comps/examples/Templates/mini/README.md b/mcstas-comps/examples/Templates/mini/README.md index 23e9dfaa9..d8173b8d2 100644 --- a/mcstas-comps/examples/Templates/mini/README.md +++ b/mcstas-comps/examples/Templates/mini/README.md @@ -26,7 +26,7 @@ Parameters in **boldface** are required; the others are optional. ## Links - [Source code](mini.instr) for `mini.instr`. -- [Additional information](mini.md) +- [Additional information](mini.md) (only if available!) - A reference/HTML link for more information --- diff --git a/mcstas-comps/examples/Templates/template/README.md b/mcstas-comps/examples/Templates/template/README.md index a3b759e4b..1fcc72f5d 100644 --- a/mcstas-comps/examples/Templates/template/README.md +++ b/mcstas-comps/examples/Templates/template/README.md @@ -35,7 +35,7 @@ Parameters in **boldface** are required; the others are optional. ## Links - [Source code](template.instr) for `template.instr`. -- [Additional information](template.md) +- [Additional information](template.md) (only if available!) - A reference/HTML link for more information --- diff --git a/mcstas-comps/examples/Templates/templateDIFF/README.md b/mcstas-comps/examples/Templates/templateDIFF/README.md index afcd746df..072f7807d 100644 --- a/mcstas-comps/examples/Templates/templateDIFF/README.md +++ b/mcstas-comps/examples/Templates/templateDIFF/README.md @@ -59,7 +59,7 @@ Parameters in **boldface** are required; the others are optional. ## Links - [Source code](templateDIFF.instr) for `templateDIFF.instr`. -- [Additional information](templateDIFF.md) +- [Additional information](templateDIFF.md) (only if available!) --- diff --git a/mcstas-comps/examples/Templates/templateLaue/README.md b/mcstas-comps/examples/Templates/templateLaue/README.md index cd3f0ddfc..c3d4ec017 100644 --- a/mcstas-comps/examples/Templates/templateLaue/README.md +++ b/mcstas-comps/examples/Templates/templateLaue/README.md @@ -27,7 +27,7 @@ Parameters in **boldface** are required; the others are optional. ## Links - [Source code](templateLaue.instr) for `templateLaue.instr`. -- [Additional information](templateLaue.md) +- [Additional information](templateLaue.md) (only if available!) --- diff --git a/mcstas-comps/examples/Templates/templateNMX/README.md b/mcstas-comps/examples/Templates/templateNMX/README.md index 1530d0229..95ba21c9e 100644 --- a/mcstas-comps/examples/Templates/templateNMX/README.md +++ b/mcstas-comps/examples/Templates/templateNMX/README.md @@ -29,7 +29,7 @@ Parameters in **boldface** are required; the others are optional. ## Links - [Source code](templateNMX.instr) for `templateNMX.instr`. -- [Additional information](templateNMX.md) +- [Additional information](templateNMX.md) (only if available!) --- diff --git a/mcstas-comps/examples/Templates/templateNMX_TOF/README.md b/mcstas-comps/examples/Templates/templateNMX_TOF/README.md index ae89d59e3..b51c60dc1 100644 --- a/mcstas-comps/examples/Templates/templateNMX_TOF/README.md +++ b/mcstas-comps/examples/Templates/templateNMX_TOF/README.md @@ -40,7 +40,7 @@ Parameters in **boldface** are required; the others are optional. ## Links - [Source code](templateNMX_TOF.instr) for `templateNMX_TOF.instr`. -- [Additional information](templateNMX_TOF.md) +- [Additional information](templateNMX_TOF.md) (only if available!) --- diff --git a/mcstas-comps/examples/Templates/templateSANS/README.md b/mcstas-comps/examples/Templates/templateSANS/README.md index 9ee951550..5bf131164 100644 --- a/mcstas-comps/examples/Templates/templateSANS/README.md +++ b/mcstas-comps/examples/Templates/templateSANS/README.md @@ -32,7 +32,7 @@ Parameters in **boldface** are required; the others are optional. ## Links - [Source code](templateSANS.instr) for `templateSANS.instr`. -- [Additional information](templateSANS.md) +- [Additional information](templateSANS.md) (only if available!) --- diff --git a/mcstas-comps/examples/Templates/templateSANS2/README.md b/mcstas-comps/examples/Templates/templateSANS2/README.md index 501b0713f..cd26dbf87 100644 --- a/mcstas-comps/examples/Templates/templateSANS2/README.md +++ b/mcstas-comps/examples/Templates/templateSANS2/README.md @@ -33,7 +33,7 @@ Parameters in **boldface** are required; the others are optional. ## Links - [Source code](templateSANS2.instr) for `templateSANS2.instr`. -- [Additional information](templateSANS2.md) +- [Additional information](templateSANS2.md) (only if available!) --- diff --git a/mcstas-comps/examples/Templates/templateSANS_MCPL/README.md b/mcstas-comps/examples/Templates/templateSANS_MCPL/README.md index 0abf7ae7c..208b4c2e6 100644 --- a/mcstas-comps/examples/Templates/templateSANS_MCPL/README.md +++ b/mcstas-comps/examples/Templates/templateSANS_MCPL/README.md @@ -35,7 +35,7 @@ Parameters in **boldface** are required; the others are optional. ## Links - [Source code](templateSANS_MCPL.instr) for `templateSANS_MCPL.instr`. -- [Additional information](templateSANS_MCPL.md) +- [Additional information](templateSANS_MCPL.md) (only if available!) --- diff --git a/mcstas-comps/examples/Templates/templateSasView/README.md b/mcstas-comps/examples/Templates/templateSasView/README.md index 13044a2c0..e3c1a61bd 100644 --- a/mcstas-comps/examples/Templates/templateSasView/README.md +++ b/mcstas-comps/examples/Templates/templateSasView/README.md @@ -42,7 +42,7 @@ Parameters in **boldface** are required; the others are optional. ## Links - [Source code](templateSasView.instr) for `templateSasView.instr`. -- [Additional information](templateSasView.md) +- [Additional information](templateSasView.md) (only if available!) --- diff --git a/mcstas-comps/examples/Templates/templateTAS/README.md b/mcstas-comps/examples/Templates/templateTAS/README.md index 233f0d309..65362191e 100644 --- a/mcstas-comps/examples/Templates/templateTAS/README.md +++ b/mcstas-comps/examples/Templates/templateTAS/README.md @@ -128,7 +128,7 @@ Parameters in **boldface** are required; the others are optional. ## Links - [Source code](templateTAS.instr) for `templateTAS.instr`. -- [Additional information](templateTAS.md) +- [Additional information](templateTAS.md) (only if available!) - Rescal for Matlab at http://www.ill.eu/instruments-support/computing-for-science/cs-software/all-software/matlab-ill/ - Restrax at http://omega.ujf.cas.cz/restrax/ diff --git a/mcstas-comps/examples/Templates/templateTOF/README.md b/mcstas-comps/examples/Templates/templateTOF/README.md index 82e66ff94..00a82426c 100644 --- a/mcstas-comps/examples/Templates/templateTOF/README.md +++ b/mcstas-comps/examples/Templates/templateTOF/README.md @@ -45,7 +45,7 @@ Parameters in **boldface** are required; the others are optional. ## Links - [Source code](templateTOF.instr) for `templateTOF.instr`. -- [Additional information](templateTOF.md) +- [Additional information](templateTOF.md) (only if available!) - The Isotropic_Sqw sample - The Samples_Isotropic_Sqw example instrument diff --git a/mcstas-comps/examples/Templates/template_simple/README.md b/mcstas-comps/examples/Templates/template_simple/README.md index 26a193906..268a448f3 100644 --- a/mcstas-comps/examples/Templates/template_simple/README.md +++ b/mcstas-comps/examples/Templates/template_simple/README.md @@ -28,7 +28,7 @@ Parameters in **boldface** are required; the others are optional. ## Links - [Source code](template_simple.instr) for `template_simple.instr`. -- [Additional information](template_simple.md) +- [Additional information](template_simple.md) (only if available!) - --- diff --git a/mcstas-comps/examples/Tests_MCPL_etc/Test_MCPL_input/README.md b/mcstas-comps/examples/Tests_MCPL_etc/Test_MCPL_input/README.md index 233e7e799..2ac415568 100644 --- a/mcstas-comps/examples/Tests_MCPL_etc/Test_MCPL_input/README.md +++ b/mcstas-comps/examples/Tests_MCPL_etc/Test_MCPL_input/README.md @@ -30,7 +30,7 @@ Parameters in **boldface** are required; the others are optional. ## Links - [Source code](Test_MCPL_input.instr) for `Test_MCPL_input.instr`. -- [Additional information](Test_MCPL_input.md) +- [Additional information](Test_MCPL_input.md) (only if available!) --- diff --git a/mcstas-comps/examples/Tests_MCPL_etc/Test_MCPL_input_once/README.md b/mcstas-comps/examples/Tests_MCPL_etc/Test_MCPL_input_once/README.md index a7444568a..ebc8c5641 100644 --- a/mcstas-comps/examples/Tests_MCPL_etc/Test_MCPL_input_once/README.md +++ b/mcstas-comps/examples/Tests_MCPL_etc/Test_MCPL_input_once/README.md @@ -31,7 +31,7 @@ Parameters in **boldface** are required; the others are optional. ## Links - [Source code](Test_MCPL_input_once.instr) for `Test_MCPL_input_once.instr`. -- [Additional information](Test_MCPL_input_once.md) +- [Additional information](Test_MCPL_input_once.md) (only if available!) --- diff --git a/mcstas-comps/examples/Tests_MCPL_etc/Test_MCPL_output/README.md b/mcstas-comps/examples/Tests_MCPL_etc/Test_MCPL_output/README.md index acc1e2c4a..78af2cadf 100644 --- a/mcstas-comps/examples/Tests_MCPL_etc/Test_MCPL_output/README.md +++ b/mcstas-comps/examples/Tests_MCPL_etc/Test_MCPL_output/README.md @@ -26,7 +26,7 @@ Parameters in **boldface** are required; the others are optional. ## Links - [Source code](Test_MCPL_output.instr) for `Test_MCPL_output.instr`. -- [Additional information](Test_MCPL_output.md) +- [Additional information](Test_MCPL_output.md) (only if available!) --- diff --git a/mcstas-comps/examples/Tests_RNG/Test_RNG_rand01/README.md b/mcstas-comps/examples/Tests_RNG/Test_RNG_rand01/README.md index db883bfa9..abf417ba3 100644 --- a/mcstas-comps/examples/Tests_RNG/Test_RNG_rand01/README.md +++ b/mcstas-comps/examples/Tests_RNG/Test_RNG_rand01/README.md @@ -33,7 +33,7 @@ Parameters in **boldface** are required; the others are optional. ## Links - [Source code](Test_RNG_rand01.instr) for `Test_RNG_rand01.instr`. -- [Additional information](Test_RNG_rand01.md) +- [Additional information](Test_RNG_rand01.md) (only if available!) - --- diff --git a/mcstas-comps/examples/Tests_RNG/Test_RNG_randnorm/README.md b/mcstas-comps/examples/Tests_RNG/Test_RNG_randnorm/README.md index 4f2a682a1..9079eccbf 100644 --- a/mcstas-comps/examples/Tests_RNG/Test_RNG_randnorm/README.md +++ b/mcstas-comps/examples/Tests_RNG/Test_RNG_randnorm/README.md @@ -33,7 +33,7 @@ Parameters in **boldface** are required; the others are optional. ## Links - [Source code](Test_RNG_randnorm.instr) for `Test_RNG_randnorm.instr`. -- [Additional information](Test_RNG_randnorm.md) +- [Additional information](Test_RNG_randnorm.md) (only if available!) - --- diff --git a/mcstas-comps/examples/Tests_RNG/Test_RNG_randpm1/README.md b/mcstas-comps/examples/Tests_RNG/Test_RNG_randpm1/README.md index 34ad029eb..b69d1df2f 100644 --- a/mcstas-comps/examples/Tests_RNG/Test_RNG_randpm1/README.md +++ b/mcstas-comps/examples/Tests_RNG/Test_RNG_randpm1/README.md @@ -33,7 +33,7 @@ Parameters in **boldface** are required; the others are optional. ## Links - [Source code](Test_RNG_randpm1.instr) for `Test_RNG_randpm1.instr`. -- [Additional information](Test_RNG_randpm1.md) +- [Additional information](Test_RNG_randpm1.md) (only if available!) - --- diff --git a/mcstas-comps/examples/Tests_RNG/Test_RNG_randtriangle/README.md b/mcstas-comps/examples/Tests_RNG/Test_RNG_randtriangle/README.md index 7a2b1818c..392cca561 100644 --- a/mcstas-comps/examples/Tests_RNG/Test_RNG_randtriangle/README.md +++ b/mcstas-comps/examples/Tests_RNG/Test_RNG_randtriangle/README.md @@ -33,7 +33,7 @@ Parameters in **boldface** are required; the others are optional. ## Links - [Source code](Test_RNG_randtriangle.instr) for `Test_RNG_randtriangle.instr`. -- [Additional information](Test_RNG_randtriangle.md) +- [Additional information](Test_RNG_randtriangle.md) (only if available!) - --- diff --git a/mcstas-comps/examples/Tests_RNG/Test_RNG_randvec_target_circle/README.md b/mcstas-comps/examples/Tests_RNG/Test_RNG_randvec_target_circle/README.md index 1b5f5ed6d..b95d5838b 100644 --- a/mcstas-comps/examples/Tests_RNG/Test_RNG_randvec_target_circle/README.md +++ b/mcstas-comps/examples/Tests_RNG/Test_RNG_randvec_target_circle/README.md @@ -34,7 +34,7 @@ Parameters in **boldface** are required; the others are optional. ## Links - [Source code](Test_RNG_randvec_target_circle.instr) for `Test_RNG_randvec_target_circle.instr`. -- [Additional information](Test_RNG_randvec_target_circle.md) +- [Additional information](Test_RNG_randvec_target_circle.md) (only if available!) - --- diff --git a/mcstas-comps/examples/Tests_RNG/Test_RNG_randvec_target_rect/README.md b/mcstas-comps/examples/Tests_RNG/Test_RNG_randvec_target_rect/README.md index 92c799ffc..0805d81e8 100644 --- a/mcstas-comps/examples/Tests_RNG/Test_RNG_randvec_target_rect/README.md +++ b/mcstas-comps/examples/Tests_RNG/Test_RNG_randvec_target_rect/README.md @@ -34,7 +34,7 @@ Parameters in **boldface** are required; the others are optional. ## Links - [Source code](Test_RNG_randvec_target_rect.instr) for `Test_RNG_randvec_target_rect.instr`. -- [Additional information](Test_RNG_randvec_target_rect.md) +- [Additional information](Test_RNG_randvec_target_rect.md) (only if available!) - --- diff --git a/mcstas-comps/examples/Tests_RNG/Test_RNG_randvec_target_rect_angular/README.md b/mcstas-comps/examples/Tests_RNG/Test_RNG_randvec_target_rect_angular/README.md index a019602e3..627b97d50 100644 --- a/mcstas-comps/examples/Tests_RNG/Test_RNG_randvec_target_rect_angular/README.md +++ b/mcstas-comps/examples/Tests_RNG/Test_RNG_randvec_target_rect_angular/README.md @@ -34,7 +34,7 @@ Parameters in **boldface** are required; the others are optional. ## Links - [Source code](Test_RNG_randvec_target_rect_angular.instr) for `Test_RNG_randvec_target_rect_angular.instr`. -- [Additional information](Test_RNG_randvec_target_rect_angular.md) +- [Additional information](Test_RNG_randvec_target_rect_angular.md) (only if available!) - --- diff --git a/mcstas-comps/examples/Tests_grammar/README.md b/mcstas-comps/examples/Tests_grammar/README.md index 596527e50..a81b23231 100644 --- a/mcstas-comps/examples/Tests_grammar/README.md +++ b/mcstas-comps/examples/Tests_grammar/README.md @@ -33,7 +33,7 @@ Parameters in **boldface** are required; the others are optional. ## Links - [Source code](Test_GROUP_restore.instr) for `Test_GROUP_restore.instr`. -- [Additional information](Test_GROUP_restore.md) +- [Additional information](Test_GROUP_restore.md) (only if available!) - A reference/HTML link for more information --- diff --git a/mcstas-comps/examples/Tests_grammar/Test_GROUP/README.md b/mcstas-comps/examples/Tests_grammar/Test_GROUP/README.md index a5c8238cf..6531c595a 100644 --- a/mcstas-comps/examples/Tests_grammar/Test_GROUP/README.md +++ b/mcstas-comps/examples/Tests_grammar/Test_GROUP/README.md @@ -27,7 +27,7 @@ Parameters in **boldface** are required; the others are optional. ## Links - [Source code](Test_GROUP.instr) for `Test_GROUP.instr`. -- [Additional information](Test_GROUP.md) +- [Additional information](Test_GROUP.md) (only if available!) --- diff --git a/mcstas-comps/examples/Tests_grammar/Test_Jump_Iterate/README.md b/mcstas-comps/examples/Tests_grammar/Test_Jump_Iterate/README.md index 30ee1a216..ef8764079 100644 --- a/mcstas-comps/examples/Tests_grammar/Test_Jump_Iterate/README.md +++ b/mcstas-comps/examples/Tests_grammar/Test_Jump_Iterate/README.md @@ -31,7 +31,7 @@ Parameters in **boldface** are required; the others are optional. ## Links - [Source code](Test_Jump_Iterate.instr) for `Test_Jump_Iterate.instr`. -- [Additional information](Test_Jump_Iterate.md) +- [Additional information](Test_Jump_Iterate.md) (only if available!) --- diff --git a/mcstas-comps/examples/Tests_grammar/Unittest_ALLOW_BACKPROP/README.md b/mcstas-comps/examples/Tests_grammar/Unittest_ALLOW_BACKPROP/README.md index 33d4f72e1..667f58905 100644 --- a/mcstas-comps/examples/Tests_grammar/Unittest_ALLOW_BACKPROP/README.md +++ b/mcstas-comps/examples/Tests_grammar/Unittest_ALLOW_BACKPROP/README.md @@ -32,7 +32,7 @@ Parameters in **boldface** are required; the others are optional. ## Links - [Source code](Unittest_ALLOW_BACKPROP.instr) for `Unittest_ALLOW_BACKPROP.instr`. -- [Additional information](Unittest_ALLOW_BACKPROP.md) +- [Additional information](Unittest_ALLOW_BACKPROP.md) (only if available!) - A reference/HTML link for more information --- diff --git a/mcstas-comps/examples/Tests_grammar/Unittest_JUMP_ITERATE/README.md b/mcstas-comps/examples/Tests_grammar/Unittest_JUMP_ITERATE/README.md index 50dcfeebf..8560ec392 100644 --- a/mcstas-comps/examples/Tests_grammar/Unittest_JUMP_ITERATE/README.md +++ b/mcstas-comps/examples/Tests_grammar/Unittest_JUMP_ITERATE/README.md @@ -31,7 +31,7 @@ Parameters in **boldface** are required; the others are optional. ## Links - [Source code](Unittest_JUMP_ITERATE.instr) for `Unittest_JUMP_ITERATE.instr`. -- [Additional information](Unittest_JUMP_ITERATE.md) +- [Additional information](Unittest_JUMP_ITERATE.md) (only if available!) - --- diff --git a/mcstas-comps/examples/Tests_grammar/Unittest_JUMP_WHEN/README.md b/mcstas-comps/examples/Tests_grammar/Unittest_JUMP_WHEN/README.md index e9a86f6de..cf95cc84d 100644 --- a/mcstas-comps/examples/Tests_grammar/Unittest_JUMP_WHEN/README.md +++ b/mcstas-comps/examples/Tests_grammar/Unittest_JUMP_WHEN/README.md @@ -31,7 +31,7 @@ Parameters in **boldface** are required; the others are optional. ## Links - [Source code](Unittest_JUMP_WHEN.instr) for `Unittest_JUMP_WHEN.instr`. -- [Additional information](Unittest_JUMP_WHEN.md) +- [Additional information](Unittest_JUMP_WHEN.md) (only if available!) - --- diff --git a/mcstas-comps/examples/Tests_grammar/Unittest_SPLIT/README.md b/mcstas-comps/examples/Tests_grammar/Unittest_SPLIT/README.md index e5deb847f..fdd25dd62 100644 --- a/mcstas-comps/examples/Tests_grammar/Unittest_SPLIT/README.md +++ b/mcstas-comps/examples/Tests_grammar/Unittest_SPLIT/README.md @@ -29,7 +29,7 @@ Parameters in **boldface** are required; the others are optional. ## Links - [Source code](Unittest_SPLIT.instr) for `Unittest_SPLIT.instr`. -- [Additional information](Unittest_SPLIT.md) +- [Additional information](Unittest_SPLIT.md) (only if available!) - --- diff --git a/mcstas-comps/examples/Tests_grammar/Unittest_SPLIT_sample/README.md b/mcstas-comps/examples/Tests_grammar/Unittest_SPLIT_sample/README.md index 81956f273..578f58e38 100644 --- a/mcstas-comps/examples/Tests_grammar/Unittest_SPLIT_sample/README.md +++ b/mcstas-comps/examples/Tests_grammar/Unittest_SPLIT_sample/README.md @@ -30,7 +30,7 @@ Parameters in **boldface** are required; the others are optional. ## Links - [Source code](Unittest_SPLIT_sample.instr) for `Unittest_SPLIT_sample.instr`. -- [Additional information](Unittest_SPLIT_sample.md) +- [Additional information](Unittest_SPLIT_sample.md) (only if available!) - --- diff --git a/mcstas-comps/examples/Tests_monitors/Test_Cyl_monitors/README.md b/mcstas-comps/examples/Tests_monitors/Test_Cyl_monitors/README.md index a7b9500e8..fb9a9e691 100644 --- a/mcstas-comps/examples/Tests_monitors/Test_Cyl_monitors/README.md +++ b/mcstas-comps/examples/Tests_monitors/Test_Cyl_monitors/README.md @@ -37,7 +37,7 @@ Parameters in **boldface** are required; the others are optional. ## Links - [Source code](Test_Cyl_monitors.instr) for `Test_Cyl_monitors.instr`. -- [Additional information](Test_Cyl_monitors.md) +- [Additional information](Test_Cyl_monitors.md) (only if available!) --- diff --git a/mcstas-comps/examples/Tests_monitors/Test_Monitor_nD/README.md b/mcstas-comps/examples/Tests_monitors/Test_Monitor_nD/README.md index 6c3233175..d413dc83d 100644 --- a/mcstas-comps/examples/Tests_monitors/Test_Monitor_nD/README.md +++ b/mcstas-comps/examples/Tests_monitors/Test_Monitor_nD/README.md @@ -32,7 +32,7 @@ Parameters in **boldface** are required; the others are optional. ## Links - [Source code](Test_Monitor_nD.instr) for `Test_Monitor_nD.instr`. -- [Additional information](Test_Monitor_nD.md) +- [Additional information](Test_Monitor_nD.md) (only if available!) --- diff --git a/mcstas-comps/examples/Tests_monitors/Test_TOF_PSDmonitor_toQ/README.md b/mcstas-comps/examples/Tests_monitors/Test_TOF_PSDmonitor_toQ/README.md index 0f89a7af4..02397c7c6 100644 --- a/mcstas-comps/examples/Tests_monitors/Test_TOF_PSDmonitor_toQ/README.md +++ b/mcstas-comps/examples/Tests_monitors/Test_TOF_PSDmonitor_toQ/README.md @@ -29,7 +29,7 @@ Parameters in **boldface** are required; the others are optional. ## Links - [Source code](Test_TOF_PSDmonitor_toQ.instr) for `Test_TOF_PSDmonitor_toQ.instr`. -- [Additional information](Test_TOF_PSDmonitor_toQ.md) +- [Additional information](Test_TOF_PSDmonitor_toQ.md) (only if available!) - --- diff --git a/mcstas-comps/examples/Tests_optics/Test_Al_windows/README.md b/mcstas-comps/examples/Tests_optics/Test_Al_windows/README.md index c11a207da..ac0ae8ae8 100644 --- a/mcstas-comps/examples/Tests_optics/Test_Al_windows/README.md +++ b/mcstas-comps/examples/Tests_optics/Test_Al_windows/README.md @@ -38,7 +38,7 @@ Parameters in **boldface** are required; the others are optional. ## Links - [Source code](Test_Al_windows.instr) for `Test_Al_windows.instr`. -- [Additional information](Test_Al_windows.md) +- [Additional information](Test_Al_windows.md) (only if available!) - --- diff --git a/mcstas-comps/examples/Tests_optics/Test_Collimator_Radial/README.md b/mcstas-comps/examples/Tests_optics/Test_Collimator_Radial/README.md index 4f097fc35..1da259fcf 100644 --- a/mcstas-comps/examples/Tests_optics/Test_Collimator_Radial/README.md +++ b/mcstas-comps/examples/Tests_optics/Test_Collimator_Radial/README.md @@ -30,7 +30,7 @@ Parameters in **boldface** are required; the others are optional. ## Links - [Source code](Test_Collimator_Radial.instr) for `Test_Collimator_Radial.instr`. -- [Additional information](Test_Collimator_Radial.md) +- [Additional information](Test_Collimator_Radial.md) (only if available!) --- diff --git a/mcstas-comps/examples/Tests_optics/Test_Conics_pairs/README.md b/mcstas-comps/examples/Tests_optics/Test_Conics_pairs/README.md index b7e5b47e2..16f26b120 100644 --- a/mcstas-comps/examples/Tests_optics/Test_Conics_pairs/README.md +++ b/mcstas-comps/examples/Tests_optics/Test_Conics_pairs/README.md @@ -36,7 +36,7 @@ Parameters in **boldface** are required; the others are optional. ## Links - [Source code](Test_Conics_pairs.instr) for `Test_Conics_pairs.instr`. -- [Additional information](Test_Conics_pairs.md) +- [Additional information](Test_Conics_pairs.md) (only if available!) - --- diff --git a/mcstas-comps/examples/Tests_optics/Test_DiskChoppers/README.md b/mcstas-comps/examples/Tests_optics/Test_DiskChoppers/README.md index 6030576c6..5db4f686c 100644 --- a/mcstas-comps/examples/Tests_optics/Test_DiskChoppers/README.md +++ b/mcstas-comps/examples/Tests_optics/Test_DiskChoppers/README.md @@ -29,7 +29,7 @@ Parameters in **boldface** are required; the others are optional. ## Links - [Source code](Test_DiskChoppers.instr) for `Test_DiskChoppers.instr`. -- [Additional information](Test_DiskChoppers.md) +- [Additional information](Test_DiskChoppers.md) (only if available!) --- diff --git a/mcstas-comps/examples/Tests_optics/Test_DiskChoppers2/README.md b/mcstas-comps/examples/Tests_optics/Test_DiskChoppers2/README.md index 1c8255b78..7d1a4fd9e 100644 --- a/mcstas-comps/examples/Tests_optics/Test_DiskChoppers2/README.md +++ b/mcstas-comps/examples/Tests_optics/Test_DiskChoppers2/README.md @@ -35,7 +35,7 @@ Parameters in **boldface** are required; the others are optional. ## Links - [Source code](Test_DiskChoppers2.instr) for `Test_DiskChoppers2.instr`. -- [Additional information](Test_DiskChoppers2.md) +- [Additional information](Test_DiskChoppers2.md) (only if available!) --- diff --git a/mcstas-comps/examples/Tests_optics/Test_Fermi/README.md b/mcstas-comps/examples/Tests_optics/Test_Fermi/README.md index 2ed7de66a..8b570ad45 100644 --- a/mcstas-comps/examples/Tests_optics/Test_Fermi/README.md +++ b/mcstas-comps/examples/Tests_optics/Test_Fermi/README.md @@ -40,7 +40,7 @@ Parameters in **boldface** are required; the others are optional. ## Links - [Source code](Test_Fermi.instr) for `Test_Fermi.instr`. -- [Additional information](Test_Fermi.md) +- [Additional information](Test_Fermi.md) (only if available!) --- diff --git a/mcstas-comps/examples/Tests_optics/Test_FocalisationMirrors/README.md b/mcstas-comps/examples/Tests_optics/Test_FocalisationMirrors/README.md index 2671925df..6f3273fc4 100644 --- a/mcstas-comps/examples/Tests_optics/Test_FocalisationMirrors/README.md +++ b/mcstas-comps/examples/Tests_optics/Test_FocalisationMirrors/README.md @@ -38,7 +38,7 @@ Parameters in **boldface** are required; the others are optional. ## Links - [Source code](Test_FocalisationMirrors.instr) for `Test_FocalisationMirrors.instr`. -- [Additional information](Test_FocalisationMirrors.md) +- [Additional information](Test_FocalisationMirrors.md) (only if available!) --- diff --git a/mcstas-comps/examples/Tests_optics/Test_Guides/README.md b/mcstas-comps/examples/Tests_optics/Test_Guides/README.md index 13746c671..7866a5f68 100644 --- a/mcstas-comps/examples/Tests_optics/Test_Guides/README.md +++ b/mcstas-comps/examples/Tests_optics/Test_Guides/README.md @@ -28,7 +28,7 @@ Parameters in **boldface** are required; the others are optional. ## Links - [Source code](Test_Guides.instr) for `Test_Guides.instr`. -- [Additional information](Test_Guides.md) +- [Additional information](Test_Guides.md) (only if available!) --- diff --git a/mcstas-comps/examples/Tests_optics/Test_Guides_Curved/README.md b/mcstas-comps/examples/Tests_optics/Test_Guides_Curved/README.md index 6c6800f11..c7d0664cf 100644 --- a/mcstas-comps/examples/Tests_optics/Test_Guides_Curved/README.md +++ b/mcstas-comps/examples/Tests_optics/Test_Guides_Curved/README.md @@ -29,7 +29,7 @@ Parameters in **boldface** are required; the others are optional. ## Links - [Source code](Test_Guides_Curved.instr) for `Test_Guides_Curved.instr`. -- [Additional information](Test_Guides_Curved.md) +- [Additional information](Test_Guides_Curved.md) (only if available!) --- diff --git a/mcstas-comps/examples/Tests_optics/Test_Lens/README.md b/mcstas-comps/examples/Tests_optics/Test_Lens/README.md index f9a8c3e06..75c4920ca 100644 --- a/mcstas-comps/examples/Tests_optics/Test_Lens/README.md +++ b/mcstas-comps/examples/Tests_optics/Test_Lens/README.md @@ -29,7 +29,7 @@ Parameters in **boldface** are required; the others are optional. ## Links - [Source code](Test_Lens.instr) for `Test_Lens.instr`. -- [Additional information](Test_Lens.md) +- [Additional information](Test_Lens.md) (only if available!) --- diff --git a/mcstas-comps/examples/Tests_optics/Test_Monochromator_bent/README.md b/mcstas-comps/examples/Tests_optics/Test_Monochromator_bent/README.md index fb1ae02db..004fb1f77 100644 --- a/mcstas-comps/examples/Tests_optics/Test_Monochromator_bent/README.md +++ b/mcstas-comps/examples/Tests_optics/Test_Monochromator_bent/README.md @@ -27,7 +27,7 @@ Parameters in **boldface** are required; the others are optional. ## Links - [Source code](Test_Monochromator_bent.instr) for `Test_Monochromator_bent.instr`. -- [Additional information](Test_Monochromator_bent.md) +- [Additional information](Test_Monochromator_bent.md) (only if available!) --- diff --git a/mcstas-comps/examples/Tests_optics/Test_Monochromator_bent_complex/README.md b/mcstas-comps/examples/Tests_optics/Test_Monochromator_bent_complex/README.md index 45ea6ec71..040010abf 100644 --- a/mcstas-comps/examples/Tests_optics/Test_Monochromator_bent_complex/README.md +++ b/mcstas-comps/examples/Tests_optics/Test_Monochromator_bent_complex/README.md @@ -37,7 +37,7 @@ Parameters in **boldface** are required; the others are optional. ## Links - [Source code](Test_Monochromator_bent_complex.instr) for `Test_Monochromator_bent_complex.instr`. -- [Additional information](Test_Monochromator_bent_complex.md) +- [Additional information](Test_Monochromator_bent_complex.md) (only if available!) --- diff --git a/mcstas-comps/examples/Tests_optics/Test_Monochromators/README.md b/mcstas-comps/examples/Tests_optics/Test_Monochromators/README.md index c70f18fa8..4e31ab5f2 100644 --- a/mcstas-comps/examples/Tests_optics/Test_Monochromators/README.md +++ b/mcstas-comps/examples/Tests_optics/Test_Monochromators/README.md @@ -51,7 +51,7 @@ Parameters in **boldface** are required; the others are optional. ## Links - [Source code](Test_Monochromators.instr) for `Test_Monochromators.instr`. -- [Additional information](Test_Monochromators.md) +- [Additional information](Test_Monochromators.md) (only if available!) --- diff --git a/mcstas-comps/examples/Tests_optics/Test_NMO/README.md b/mcstas-comps/examples/Tests_optics/Test_NMO/README.md index 792c3b915..47bf80333 100644 --- a/mcstas-comps/examples/Tests_optics/Test_NMO/README.md +++ b/mcstas-comps/examples/Tests_optics/Test_NMO/README.md @@ -47,7 +47,7 @@ Parameters in **boldface** are required; the others are optional. ## Links - [Source code](Test_NMO.instr) for `Test_NMO.instr`. -- [Additional information](Test_NMO.md) +- [Additional information](Test_NMO.md) (only if available!) - P Böni presentation at PSI NFO workshop - Christoph Herb et al., Nucl. Instrum. Meth. A 1040, 1671564 (1-18) 2022. diff --git a/mcstas-comps/examples/Tests_optics/Test_PSD_Detector/README.md b/mcstas-comps/examples/Tests_optics/Test_PSD_Detector/README.md index 4569c72f8..2342400e0 100644 --- a/mcstas-comps/examples/Tests_optics/Test_PSD_Detector/README.md +++ b/mcstas-comps/examples/Tests_optics/Test_PSD_Detector/README.md @@ -27,7 +27,7 @@ Parameters in **boldface** are required; the others are optional. ## Links - [Source code](Test_PSD_Detector.instr) for `Test_PSD_Detector.instr`. -- [Additional information](Test_PSD_Detector.md) +- [Additional information](Test_PSD_Detector.md) (only if available!) - The PSD_Detector component --- diff --git a/mcstas-comps/examples/Tests_optics/Test_Pol_Bender_Vs_Guide_Curved/README.md b/mcstas-comps/examples/Tests_optics/Test_Pol_Bender_Vs_Guide_Curved/README.md index 82ca57886..eef704e71 100644 --- a/mcstas-comps/examples/Tests_optics/Test_Pol_Bender_Vs_Guide_Curved/README.md +++ b/mcstas-comps/examples/Tests_optics/Test_Pol_Bender_Vs_Guide_Curved/README.md @@ -30,7 +30,7 @@ Parameters in **boldface** are required; the others are optional. ## Links - [Source code](Test_Pol_Bender_Vs_Guide_Curved.instr) for `Test_Pol_Bender_Vs_Guide_Curved.instr`. -- [Additional information](Test_Pol_Bender_Vs_Guide_Curved.md) +- [Additional information](Test_Pol_Bender_Vs_Guide_Curved.md) (only if available!) - A reference/HTML link for more information --- diff --git a/mcstas-comps/examples/Tests_optics/Test_Rotator/README.md b/mcstas-comps/examples/Tests_optics/Test_Rotator/README.md index d12498069..a3d03f61e 100644 --- a/mcstas-comps/examples/Tests_optics/Test_Rotator/README.md +++ b/mcstas-comps/examples/Tests_optics/Test_Rotator/README.md @@ -30,7 +30,7 @@ Parameters in **boldface** are required; the others are optional. ## Links - [Source code](Test_Rotator.instr) for `Test_Rotator.instr`. -- [Additional information](Test_Rotator.md) +- [Additional information](Test_Rotator.md) (only if available!) - A reference/HTML link for more information --- diff --git a/mcstas-comps/examples/Tests_optics/Test_Selectors/README.md b/mcstas-comps/examples/Tests_optics/Test_Selectors/README.md index 70e784d00..47bdc74ca 100644 --- a/mcstas-comps/examples/Tests_optics/Test_Selectors/README.md +++ b/mcstas-comps/examples/Tests_optics/Test_Selectors/README.md @@ -30,7 +30,7 @@ Parameters in **boldface** are required; the others are optional. ## Links - [Source code](Test_Selectors.instr) for `Test_Selectors.instr`. -- [Additional information](Test_Selectors.md) +- [Additional information](Test_Selectors.md) (only if available!) --- diff --git a/mcstas-comps/examples/Tests_optics/Test_Source_pulsed/README.md b/mcstas-comps/examples/Tests_optics/Test_Source_pulsed/README.md index 5e5d29c07..731ac76f3 100644 --- a/mcstas-comps/examples/Tests_optics/Test_Source_pulsed/README.md +++ b/mcstas-comps/examples/Tests_optics/Test_Source_pulsed/README.md @@ -28,7 +28,7 @@ Parameters in **boldface** are required; the others are optional. ## Links - [Source code](Test_Source_pulsed.instr) for `Test_Source_pulsed.instr`. -- [Additional information](Test_Source_pulsed.md) +- [Additional information](Test_Source_pulsed.md) (only if available!) --- diff --git a/mcstas-comps/examples/Tests_optics/Test_Sources/README.md b/mcstas-comps/examples/Tests_optics/Test_Sources/README.md index b77c33ed1..eb616a44b 100644 --- a/mcstas-comps/examples/Tests_optics/Test_Sources/README.md +++ b/mcstas-comps/examples/Tests_optics/Test_Sources/README.md @@ -35,7 +35,7 @@ Parameters in **boldface** are required; the others are optional. ## Links - [Source code](Test_Sources.instr) for `Test_Sources.instr`. -- [Additional information](Test_Sources.md) +- [Additional information](Test_Sources.md) (only if available!) --- diff --git a/mcstas-comps/examples/Tests_optics/Test_StatisticalChopper/README.md b/mcstas-comps/examples/Tests_optics/Test_StatisticalChopper/README.md index 1cb4d905a..c54850ac2 100644 --- a/mcstas-comps/examples/Tests_optics/Test_StatisticalChopper/README.md +++ b/mcstas-comps/examples/Tests_optics/Test_StatisticalChopper/README.md @@ -27,7 +27,7 @@ Parameters in **boldface** are required; the others are optional. ## Links - [Source code](Test_StatisticalChopper.instr) for `Test_StatisticalChopper.instr`. -- [Additional information](Test_StatisticalChopper.md) +- [Additional information](Test_StatisticalChopper.md) (only if available!) - R. Von Jan and R. Scherm. The statistical chopper for neutron time-of-flight spectroscopy. Nuclear Instruments and Methods, 80 (1970) 69-76. --- diff --git a/mcstas-comps/examples/Tests_optics/Test_Vertical_Bender/README.md b/mcstas-comps/examples/Tests_optics/Test_Vertical_Bender/README.md index d20b26a71..11637507e 100644 --- a/mcstas-comps/examples/Tests_optics/Test_Vertical_Bender/README.md +++ b/mcstas-comps/examples/Tests_optics/Test_Vertical_Bender/README.md @@ -33,7 +33,7 @@ Parameters in **boldface** are required; the others are optional. ## Links - [Source code](Test_Vertical_Bender.instr) for `Test_Vertical_Bender.instr`. -- [Additional information](Test_Vertical_Bender.md) +- [Additional information](Test_Vertical_Bender.md) (only if available!) - --- diff --git a/mcstas-comps/examples/Tests_optics/Test_filters/README.md b/mcstas-comps/examples/Tests_optics/Test_filters/README.md index 04f1d1d48..4770ab27f 100644 --- a/mcstas-comps/examples/Tests_optics/Test_filters/README.md +++ b/mcstas-comps/examples/Tests_optics/Test_filters/README.md @@ -33,7 +33,7 @@ Parameters in **boldface** are required; the others are optional. ## Links - [Source code](Test_filters.instr) for `Test_filters.instr`. -- [Additional information](Test_filters.md) +- [Additional information](Test_filters.md) (only if available!) - Acta Cryst. (1978). A34, 61-65 - Rev. Sci. Instrum. 59, 380-381 (1988) - Test instrument written by P Willendrup ESS, March 2026 diff --git a/mcstas-comps/examples/Tests_optics/Test_focus/README.md b/mcstas-comps/examples/Tests_optics/Test_focus/README.md index f05a88fd5..dada1125f 100644 --- a/mcstas-comps/examples/Tests_optics/Test_focus/README.md +++ b/mcstas-comps/examples/Tests_optics/Test_focus/README.md @@ -36,7 +36,7 @@ Parameters in **boldface** are required; the others are optional. ## Links - [Source code](Test_focus.instr) for `Test_focus.instr`. -- [Additional information](Test_focus.md) +- [Additional information](Test_focus.md) (only if available!) --- diff --git a/mcstas-comps/examples/Tests_other/test_File/README.md b/mcstas-comps/examples/Tests_other/test_File/README.md index eee3af792..7a6bad34a 100644 --- a/mcstas-comps/examples/Tests_other/test_File/README.md +++ b/mcstas-comps/examples/Tests_other/test_File/README.md @@ -26,7 +26,7 @@ Parameters in **boldface** are required; the others are optional. ## Links - [Source code](test_File.instr) for `test_File.instr`. -- [Additional information](test_File.md) +- [Additional information](test_File.md) (only if available!) - From https://github.com/g5t/mccode-file --- diff --git a/mcstas-comps/examples/Tests_polarization/He3_spin_filter/README.md b/mcstas-comps/examples/Tests_polarization/He3_spin_filter/README.md index 8fda1981d..3844d8af3 100644 --- a/mcstas-comps/examples/Tests_polarization/He3_spin_filter/README.md +++ b/mcstas-comps/examples/Tests_polarization/He3_spin_filter/README.md @@ -34,7 +34,7 @@ Parameters in **boldface** are required; the others are optional. ## Links - [Source code](He3_spin_filter.instr) for `He3_spin_filter.instr`. -- [Additional information](He3_spin_filter.md) +- [Additional information](He3_spin_filter.md) (only if available!) - --- diff --git a/mcstas-comps/examples/Tests_polarization/SE_example/README.md b/mcstas-comps/examples/Tests_polarization/SE_example/README.md index 416e020e6..5f50e1273 100644 --- a/mcstas-comps/examples/Tests_polarization/SE_example/README.md +++ b/mcstas-comps/examples/Tests_polarization/SE_example/README.md @@ -38,7 +38,7 @@ Parameters in **boldface** are required; the others are optional. ## Links - [Source code](SE_example.instr) for `SE_example.instr`. -- [Additional information](SE_example.md) +- [Additional information](SE_example.md) (only if available!) - Requires mcstas 1.12b (or beta). PolLambda_monitor has been modified to work (nL->nlam) --- diff --git a/mcstas-comps/examples/Tests_polarization/SE_example2/README.md b/mcstas-comps/examples/Tests_polarization/SE_example2/README.md index b87633be6..34c3697a2 100644 --- a/mcstas-comps/examples/Tests_polarization/SE_example2/README.md +++ b/mcstas-comps/examples/Tests_polarization/SE_example2/README.md @@ -38,7 +38,7 @@ Parameters in **boldface** are required; the others are optional. ## Links - [Source code](SE_example2.instr) for `SE_example2.instr`. -- [Additional information](SE_example2.md) +- [Additional information](SE_example2.md) (only if available!) - Requires mcstas 1.12b (or beta). PolLambda_monitor has been modified to work (nL->nlam) --- diff --git a/mcstas-comps/examples/Tests_polarization/Supermirror_thin_substrate/README.md b/mcstas-comps/examples/Tests_polarization/Supermirror_thin_substrate/README.md index f00209d1f..bae38918d 100644 --- a/mcstas-comps/examples/Tests_polarization/Supermirror_thin_substrate/README.md +++ b/mcstas-comps/examples/Tests_polarization/Supermirror_thin_substrate/README.md @@ -47,7 +47,7 @@ Parameters in **boldface** are required; the others are optional. ## Links - [Source code](Supermirror_thin_substrate.instr) for `Supermirror_thin_substrate.instr`. -- [Additional information](Supermirror_thin_substrate.md) +- [Additional information](Supermirror_thin_substrate.md) (only if available!) - A reference/HTML link for more information --- diff --git a/mcstas-comps/examples/Tests_polarization/Test_Magnetic_Constant/README.md b/mcstas-comps/examples/Tests_polarization/Test_Magnetic_Constant/README.md index 496ec0ded..a0726a38a 100644 --- a/mcstas-comps/examples/Tests_polarization/Test_Magnetic_Constant/README.md +++ b/mcstas-comps/examples/Tests_polarization/Test_Magnetic_Constant/README.md @@ -32,7 +32,7 @@ Parameters in **boldface** are required; the others are optional. ## Links - [Source code](Test_Magnetic_Constant.instr) for `Test_Magnetic_Constant.instr`. -- [Additional information](Test_Magnetic_Constant.md) +- [Additional information](Test_Magnetic_Constant.md) (only if available!) --- diff --git a/mcstas-comps/examples/Tests_polarization/Test_Magnetic_Majorana/README.md b/mcstas-comps/examples/Tests_polarization/Test_Magnetic_Majorana/README.md index 236e1809b..29121b2d9 100644 --- a/mcstas-comps/examples/Tests_polarization/Test_Magnetic_Majorana/README.md +++ b/mcstas-comps/examples/Tests_polarization/Test_Magnetic_Majorana/README.md @@ -35,7 +35,7 @@ Parameters in **boldface** are required; the others are optional. ## Links - [Source code](Test_Magnetic_Majorana.instr) for `Test_Magnetic_Majorana.instr`. -- [Additional information](Test_Magnetic_Majorana.md) +- [Additional information](Test_Magnetic_Majorana.md) (only if available!) --- diff --git a/mcstas-comps/examples/Tests_polarization/Test_Magnetic_Rotation/README.md b/mcstas-comps/examples/Tests_polarization/Test_Magnetic_Rotation/README.md index 880711c8d..d75a3bf2a 100644 --- a/mcstas-comps/examples/Tests_polarization/Test_Magnetic_Rotation/README.md +++ b/mcstas-comps/examples/Tests_polarization/Test_Magnetic_Rotation/README.md @@ -31,7 +31,7 @@ Parameters in **boldface** are required; the others are optional. ## Links - [Source code](Test_Magnetic_Rotation.instr) for `Test_Magnetic_Rotation.instr`. -- [Additional information](Test_Magnetic_Rotation.md) +- [Additional information](Test_Magnetic_Rotation.md) (only if available!) --- diff --git a/mcstas-comps/examples/Tests_polarization/Test_Pol_Bender/README.md b/mcstas-comps/examples/Tests_polarization/Test_Pol_Bender/README.md index f21a142f5..3cae231d0 100644 --- a/mcstas-comps/examples/Tests_polarization/Test_Pol_Bender/README.md +++ b/mcstas-comps/examples/Tests_polarization/Test_Pol_Bender/README.md @@ -32,7 +32,7 @@ Parameters in **boldface** are required; the others are optional. ## Links - [Source code](Test_Pol_Bender.instr) for `Test_Pol_Bender.instr`. -- [Additional information](Test_Pol_Bender.md) +- [Additional information](Test_Pol_Bender.md) (only if available!) --- diff --git a/mcstas-comps/examples/Tests_polarization/Test_Pol_FieldBox/README.md b/mcstas-comps/examples/Tests_polarization/Test_Pol_FieldBox/README.md index f5b4de5f6..fcbd5f02e 100644 --- a/mcstas-comps/examples/Tests_polarization/Test_Pol_FieldBox/README.md +++ b/mcstas-comps/examples/Tests_polarization/Test_Pol_FieldBox/README.md @@ -29,7 +29,7 @@ Parameters in **boldface** are required; the others are optional. ## Links - [Source code](Test_Pol_FieldBox.instr) for `Test_Pol_FieldBox.instr`. -- [Additional information](Test_Pol_FieldBox.md) +- [Additional information](Test_Pol_FieldBox.md) (only if available!) --- diff --git a/mcstas-comps/examples/Tests_polarization/Test_Pol_Guide_Vmirror/README.md b/mcstas-comps/examples/Tests_polarization/Test_Pol_Guide_Vmirror/README.md index c2510caa7..8afff02d8 100644 --- a/mcstas-comps/examples/Tests_polarization/Test_Pol_Guide_Vmirror/README.md +++ b/mcstas-comps/examples/Tests_polarization/Test_Pol_Guide_Vmirror/README.md @@ -27,7 +27,7 @@ Parameters in **boldface** are required; the others are optional. ## Links - [Source code](Test_Pol_Guide_Vmirror.instr) for `Test_Pol_Guide_Vmirror.instr`. -- [Additional information](Test_Pol_Guide_Vmirror.md) +- [Additional information](Test_Pol_Guide_Vmirror.md) (only if available!) --- diff --git a/mcstas-comps/examples/Tests_polarization/Test_Pol_Guide_mirror/README.md b/mcstas-comps/examples/Tests_polarization/Test_Pol_Guide_mirror/README.md index 88f94be89..42b9c2126 100644 --- a/mcstas-comps/examples/Tests_polarization/Test_Pol_Guide_mirror/README.md +++ b/mcstas-comps/examples/Tests_polarization/Test_Pol_Guide_mirror/README.md @@ -28,7 +28,7 @@ Parameters in **boldface** are required; the others are optional. ## Links - [Source code](Test_Pol_Guide_mirror.instr) for `Test_Pol_Guide_mirror.instr`. -- [Additional information](Test_Pol_Guide_mirror.md) +- [Additional information](Test_Pol_Guide_mirror.md) (only if available!) --- diff --git a/mcstas-comps/examples/Tests_polarization/Test_Pol_MSF/README.md b/mcstas-comps/examples/Tests_polarization/Test_Pol_MSF/README.md index bf3017ee0..bc8f7abde 100644 --- a/mcstas-comps/examples/Tests_polarization/Test_Pol_MSF/README.md +++ b/mcstas-comps/examples/Tests_polarization/Test_Pol_MSF/README.md @@ -27,7 +27,7 @@ Parameters in **boldface** are required; the others are optional. ## Links - [Source code](Test_Pol_MSF.instr) for `Test_Pol_MSF.instr`. -- [Additional information](Test_Pol_MSF.md) +- [Additional information](Test_Pol_MSF.md) (only if available!) --- diff --git a/mcstas-comps/examples/Tests_polarization/Test_Pol_Mirror/README.md b/mcstas-comps/examples/Tests_polarization/Test_Pol_Mirror/README.md index f4831e2d7..8d9bdf5d0 100644 --- a/mcstas-comps/examples/Tests_polarization/Test_Pol_Mirror/README.md +++ b/mcstas-comps/examples/Tests_polarization/Test_Pol_Mirror/README.md @@ -32,7 +32,7 @@ Parameters in **boldface** are required; the others are optional. ## Links - [Source code](Test_Pol_Mirror.instr) for `Test_Pol_Mirror.instr`. -- [Additional information](Test_Pol_Mirror.md) +- [Additional information](Test_Pol_Mirror.md) (only if available!) --- diff --git a/mcstas-comps/examples/Tests_polarization/Test_Pol_SF_ideal/README.md b/mcstas-comps/examples/Tests_polarization/Test_Pol_SF_ideal/README.md index 4dd433145..3ee0f3fb8 100644 --- a/mcstas-comps/examples/Tests_polarization/Test_Pol_SF_ideal/README.md +++ b/mcstas-comps/examples/Tests_polarization/Test_Pol_SF_ideal/README.md @@ -30,7 +30,7 @@ Parameters in **boldface** are required; the others are optional. ## Links - [Source code](Test_Pol_SF_ideal.instr) for `Test_Pol_SF_ideal.instr`. -- [Additional information](Test_Pol_SF_ideal.md) +- [Additional information](Test_Pol_SF_ideal.md) (only if available!) --- diff --git a/mcstas-comps/examples/Tests_polarization/Test_Pol_Set/README.md b/mcstas-comps/examples/Tests_polarization/Test_Pol_Set/README.md index 2547636b0..60ca62d72 100644 --- a/mcstas-comps/examples/Tests_polarization/Test_Pol_Set/README.md +++ b/mcstas-comps/examples/Tests_polarization/Test_Pol_Set/README.md @@ -28,7 +28,7 @@ Parameters in **boldface** are required; the others are optional. ## Links - [Source code](Test_Pol_Set.instr) for `Test_Pol_Set.instr`. -- [Additional information](Test_Pol_Set.md) +- [Additional information](Test_Pol_Set.md) (only if available!) --- diff --git a/mcstas-comps/examples/Tests_polarization/Test_Pol_Tabled/README.md b/mcstas-comps/examples/Tests_polarization/Test_Pol_Tabled/README.md index 989ee50a5..7b49c5e57 100644 --- a/mcstas-comps/examples/Tests_polarization/Test_Pol_Tabled/README.md +++ b/mcstas-comps/examples/Tests_polarization/Test_Pol_Tabled/README.md @@ -30,7 +30,7 @@ Parameters in **boldface** are required; the others are optional. ## Links - [Source code](Test_Pol_Tabled.instr) for `Test_Pol_Tabled.instr`. -- [Additional information](Test_Pol_Tabled.md) +- [Additional information](Test_Pol_Tabled.md) (only if available!) - A reference/HTML link for more information --- diff --git a/mcstas-comps/examples/Tests_polarization/Test_Pol_TripleAxis/README.md b/mcstas-comps/examples/Tests_polarization/Test_Pol_TripleAxis/README.md index 8f5c1f2e2..50a88601c 100644 --- a/mcstas-comps/examples/Tests_polarization/Test_Pol_TripleAxis/README.md +++ b/mcstas-comps/examples/Tests_polarization/Test_Pol_TripleAxis/README.md @@ -37,7 +37,7 @@ Parameters in **boldface** are required; the others are optional. ## Links - [Source code](Test_Pol_TripleAxis.instr) for `Test_Pol_TripleAxis.instr`. -- [Additional information](Test_Pol_TripleAxis.md) +- [Additional information](Test_Pol_TripleAxis.md) (only if available!) --- diff --git a/mcstas-comps/examples/Tests_polarization/Test_V_cavity_SNAG_double_side/README.md b/mcstas-comps/examples/Tests_polarization/Test_V_cavity_SNAG_double_side/README.md index d72eac7f5..477d7e376 100644 --- a/mcstas-comps/examples/Tests_polarization/Test_V_cavity_SNAG_double_side/README.md +++ b/mcstas-comps/examples/Tests_polarization/Test_V_cavity_SNAG_double_side/README.md @@ -39,7 +39,7 @@ Parameters in **boldface** are required; the others are optional. ## Links - [Source code](Test_V_cavity_SNAG_double_side.instr) for `Test_V_cavity_SNAG_double_side.instr`. -- [Additional information](Test_V_cavity_SNAG_double_side.md) +- [Additional information](Test_V_cavity_SNAG_double_side.md) (only if available!) - P. Böni, W. Münzer and A. Ostermann: Physica B: Condensed Matter Volume 404, Issue 17, 1 September 2009, Pages 2620-2623 --- diff --git a/mcstas-comps/examples/Tests_polarization/Test_V_cavity_SNAG_single_side/README.md b/mcstas-comps/examples/Tests_polarization/Test_V_cavity_SNAG_single_side/README.md index c9e3679e1..463d6178b 100644 --- a/mcstas-comps/examples/Tests_polarization/Test_V_cavity_SNAG_single_side/README.md +++ b/mcstas-comps/examples/Tests_polarization/Test_V_cavity_SNAG_single_side/README.md @@ -39,7 +39,7 @@ Parameters in **boldface** are required; the others are optional. ## Links - [Source code](Test_V_cavity_SNAG_single_side.instr) for `Test_V_cavity_SNAG_single_side.instr`. -- [Additional information](Test_V_cavity_SNAG_single_side.md) +- [Additional information](Test_V_cavity_SNAG_single_side.md) (only if available!) - P. Böni, W. Münzer and A. Ostermann: Physica B: Condensed Matter Volume 404, Issue 17, 1 September 2009, Pages 2620-2623 --- diff --git a/mcstas-comps/examples/Tests_polarization/Test_pol_ideal/README.md b/mcstas-comps/examples/Tests_polarization/Test_pol_ideal/README.md index 137701040..60504ca04 100644 --- a/mcstas-comps/examples/Tests_polarization/Test_pol_ideal/README.md +++ b/mcstas-comps/examples/Tests_polarization/Test_pol_ideal/README.md @@ -26,7 +26,7 @@ Parameters in **boldface** are required; the others are optional. ## Links - [Source code](Test_pol_ideal.instr) for `Test_pol_ideal.instr`. -- [Additional information](Test_pol_ideal.md) +- [Additional information](Test_pol_ideal.md) (only if available!) --- diff --git a/mcstas-comps/examples/Tests_samples/GISANS_tests/README.md b/mcstas-comps/examples/Tests_samples/GISANS_tests/README.md index e02ec5e0d..f243cb20d 100644 --- a/mcstas-comps/examples/Tests_samples/GISANS_tests/README.md +++ b/mcstas-comps/examples/Tests_samples/GISANS_tests/README.md @@ -30,7 +30,7 @@ Parameters in **boldface** are required; the others are optional. ## Links - [Source code](GISANS_tests.instr) for `GISANS_tests.instr`. -- [Additional information](GISANS_tests.md) +- [Additional information](GISANS_tests.md) (only if available!) --- diff --git a/mcstas-comps/examples/Tests_samples/Samples_Incoherent/README.md b/mcstas-comps/examples/Tests_samples/Samples_Incoherent/README.md index 52b75e161..aa97f3d9c 100644 --- a/mcstas-comps/examples/Tests_samples/Samples_Incoherent/README.md +++ b/mcstas-comps/examples/Tests_samples/Samples_Incoherent/README.md @@ -69,7 +69,7 @@ Parameters in **boldface** are required; the others are optional. ## Links - [Source code](Samples_Incoherent.instr) for `Samples_Incoherent.instr`. -- [Additional information](Samples_Incoherent.md) +- [Additional information](Samples_Incoherent.md) (only if available!) - Validation of Single_crystal is now in progress! --- diff --git a/mcstas-comps/examples/Tests_samples/Samples_Incoherent_off/README.md b/mcstas-comps/examples/Tests_samples/Samples_Incoherent_off/README.md index c6e1d9689..90c47162d 100644 --- a/mcstas-comps/examples/Tests_samples/Samples_Incoherent_off/README.md +++ b/mcstas-comps/examples/Tests_samples/Samples_Incoherent_off/README.md @@ -28,7 +28,7 @@ Parameters in **boldface** are required; the others are optional. ## Links - [Source code](Samples_Incoherent_off.instr) for `Samples_Incoherent_off.instr`. -- [Additional information](Samples_Incoherent_off.md) +- [Additional information](Samples_Incoherent_off.md) (only if available!) - http://shape.cs.princeton.edu/benchmark/documentation/off_format.html --- diff --git a/mcstas-comps/examples/Tests_samples/Samples_Isotropic_Sqw/README.md b/mcstas-comps/examples/Tests_samples/Samples_Isotropic_Sqw/README.md index da9d52632..7da9d2674 100644 --- a/mcstas-comps/examples/Tests_samples/Samples_Isotropic_Sqw/README.md +++ b/mcstas-comps/examples/Tests_samples/Samples_Isotropic_Sqw/README.md @@ -30,7 +30,7 @@ Parameters in **boldface** are required; the others are optional. ## Links - [Source code](Samples_Isotropic_Sqw.instr) for `Samples_Isotropic_Sqw.instr`. -- [Additional information](Samples_Isotropic_Sqw.md) +- [Additional information](Samples_Isotropic_Sqw.md) (only if available!) - The Isotropic_Sqw sample --- diff --git a/mcstas-comps/examples/Tests_samples/Samples_Phonon/README.md b/mcstas-comps/examples/Tests_samples/Samples_Phonon/README.md index 638c63857..a4802ff8c 100644 --- a/mcstas-comps/examples/Tests_samples/Samples_Phonon/README.md +++ b/mcstas-comps/examples/Tests_samples/Samples_Phonon/README.md @@ -35,7 +35,7 @@ Parameters in **boldface** are required; the others are optional. ## Links - [Source code](Samples_Phonon.instr) for `Samples_Phonon.instr`. -- [Additional information](Samples_Phonon.md) +- [Additional information](Samples_Phonon.md) (only if available!) --- diff --git a/mcstas-comps/examples/Tests_samples/Samples_vanadium/README.md b/mcstas-comps/examples/Tests_samples/Samples_vanadium/README.md index 244b38bfa..259c48a65 100644 --- a/mcstas-comps/examples/Tests_samples/Samples_vanadium/README.md +++ b/mcstas-comps/examples/Tests_samples/Samples_vanadium/README.md @@ -27,7 +27,7 @@ Parameters in **boldface** are required; the others are optional. ## Links - [Source code](Samples_vanadium.instr) for `Samples_vanadium.instr`. -- [Additional information](Samples_vanadium.md) +- [Additional information](Samples_vanadium.md) (only if available!) - The McStas User manual - The McStas tutorial diff --git a/mcstas-comps/examples/Tests_samples/Test_Incoherent/README.md b/mcstas-comps/examples/Tests_samples/Test_Incoherent/README.md index 5ee0ab564..5a1a22328 100644 --- a/mcstas-comps/examples/Tests_samples/Test_Incoherent/README.md +++ b/mcstas-comps/examples/Tests_samples/Test_Incoherent/README.md @@ -27,7 +27,7 @@ Parameters in **boldface** are required; the others are optional. ## Links - [Source code](Test_Incoherent.instr) for `Test_Incoherent.instr`. -- [Additional information](Test_Incoherent.md) +- [Additional information](Test_Incoherent.md) (only if available!) --- diff --git a/mcstas-comps/examples/Tests_samples/Test_Incoherent_MS/README.md b/mcstas-comps/examples/Tests_samples/Test_Incoherent_MS/README.md index 347646d91..bb5c51f9b 100644 --- a/mcstas-comps/examples/Tests_samples/Test_Incoherent_MS/README.md +++ b/mcstas-comps/examples/Tests_samples/Test_Incoherent_MS/README.md @@ -59,7 +59,7 @@ Parameters in **boldface** are required; the others are optional. ## Links - [Source code](Test_Incoherent_MS.instr) for `Test_Incoherent_MS.instr`. -- [Additional information](Test_Incoherent_MS.md) +- [Additional information](Test_Incoherent_MS.md) (only if available!) - A reference/HTML link for more information --- diff --git a/mcstas-comps/examples/Tests_samples/Test_Magnon_bcc_2D/README.md b/mcstas-comps/examples/Tests_samples/Test_Magnon_bcc_2D/README.md index 1af12ef90..3f2073b1a 100644 --- a/mcstas-comps/examples/Tests_samples/Test_Magnon_bcc_2D/README.md +++ b/mcstas-comps/examples/Tests_samples/Test_Magnon_bcc_2D/README.md @@ -35,7 +35,7 @@ Parameters in **boldface** are required; the others are optional. ## Links - [Source code](Test_Magnon_bcc_2D.instr) for `Test_Magnon_bcc_2D.instr`. -- [Additional information](Test_Magnon_bcc_2D.md) +- [Additional information](Test_Magnon_bcc_2D.md) (only if available!) --- diff --git a/mcstas-comps/examples/Tests_samples/Test_Magnon_bcc_TAS/README.md b/mcstas-comps/examples/Tests_samples/Test_Magnon_bcc_TAS/README.md index a77405f93..ee7179703 100644 --- a/mcstas-comps/examples/Tests_samples/Test_Magnon_bcc_TAS/README.md +++ b/mcstas-comps/examples/Tests_samples/Test_Magnon_bcc_TAS/README.md @@ -36,7 +36,7 @@ Parameters in **boldface** are required; the others are optional. ## Links - [Source code](Test_Magnon_bcc_TAS.instr) for `Test_Magnon_bcc_TAS.instr`. -- [Additional information](Test_Magnon_bcc_TAS.md) +- [Additional information](Test_Magnon_bcc_TAS.md) (only if available!) - --- diff --git a/mcstas-comps/examples/Tests_samples/Test_PowderN/README.md b/mcstas-comps/examples/Tests_samples/Test_PowderN/README.md index ca5c64e98..c252260ad 100644 --- a/mcstas-comps/examples/Tests_samples/Test_PowderN/README.md +++ b/mcstas-comps/examples/Tests_samples/Test_PowderN/README.md @@ -34,7 +34,7 @@ Parameters in **boldface** are required; the others are optional. ## Links - [Source code](Test_PowderN.instr) for `Test_PowderN.instr`. -- [Additional information](Test_PowderN.md) +- [Additional information](Test_PowderN.md) (only if available!) --- diff --git a/mcstas-comps/examples/Tests_samples/Test_PowderN_Res/README.md b/mcstas-comps/examples/Tests_samples/Test_PowderN_Res/README.md index 6e2f18048..bfc15904d 100644 --- a/mcstas-comps/examples/Tests_samples/Test_PowderN_Res/README.md +++ b/mcstas-comps/examples/Tests_samples/Test_PowderN_Res/README.md @@ -39,7 +39,7 @@ Parameters in **boldface** are required; the others are optional. ## Links - [Source code](Test_PowderN_Res.instr) for `Test_PowderN_Res.instr`. -- [Additional information](Test_PowderN_Res.md) +- [Additional information](Test_PowderN_Res.md) (only if available!) - A reference/HTML link for more information --- diff --git a/mcstas-comps/examples/Tests_samples/Test_PowderN_concentric/README.md b/mcstas-comps/examples/Tests_samples/Test_PowderN_concentric/README.md index 88d534af3..3a68b9452 100644 --- a/mcstas-comps/examples/Tests_samples/Test_PowderN_concentric/README.md +++ b/mcstas-comps/examples/Tests_samples/Test_PowderN_concentric/README.md @@ -30,7 +30,7 @@ Parameters in **boldface** are required; the others are optional. ## Links - [Source code](Test_PowderN_concentric.instr) for `Test_PowderN_concentric.instr`. -- [Additional information](Test_PowderN_concentric.md) +- [Additional information](Test_PowderN_concentric.md) (only if available!) --- diff --git a/mcstas-comps/examples/Tests_samples/Test_Powders/README.md b/mcstas-comps/examples/Tests_samples/Test_Powders/README.md index 39e142291..2dd3879b3 100644 --- a/mcstas-comps/examples/Tests_samples/Test_Powders/README.md +++ b/mcstas-comps/examples/Tests_samples/Test_Powders/README.md @@ -34,7 +34,7 @@ Parameters in **boldface** are required; the others are optional. ## Links - [Source code](Test_Powders.instr) for `Test_Powders.instr`. -- [Additional information](Test_Powders.md) +- [Additional information](Test_Powders.md) (only if available!) --- diff --git a/mcstas-comps/examples/Tests_samples/Test_SANS/README.md b/mcstas-comps/examples/Tests_samples/Test_SANS/README.md index cf0a444ce..2d3a9f6d4 100644 --- a/mcstas-comps/examples/Tests_samples/Test_SANS/README.md +++ b/mcstas-comps/examples/Tests_samples/Test_SANS/README.md @@ -48,7 +48,7 @@ Parameters in **boldface** are required; the others are optional. ## Links - [Source code](Test_SANS.instr) for `Test_SANS.instr`. -- [Additional information](Test_SANS.md) +- [Additional information](Test_SANS.md) (only if available!) --- diff --git a/mcstas-comps/examples/Tests_samples/Test_SX/README.md b/mcstas-comps/examples/Tests_samples/Test_SX/README.md index 94d1f45c5..a3110fd29 100644 --- a/mcstas-comps/examples/Tests_samples/Test_SX/README.md +++ b/mcstas-comps/examples/Tests_samples/Test_SX/README.md @@ -36,7 +36,7 @@ Parameters in **boldface** are required; the others are optional. ## Links - [Source code](Test_SX.instr) for `Test_SX.instr`. -- [Additional information](Test_SX.md) +- [Additional information](Test_SX.md) (only if available!) --- diff --git a/mcstas-comps/examples/Tests_samples/Test_Single_crystal_inelastic/README.md b/mcstas-comps/examples/Tests_samples/Test_Single_crystal_inelastic/README.md index f6e6b36dd..497ac1a3a 100644 --- a/mcstas-comps/examples/Tests_samples/Test_Single_crystal_inelastic/README.md +++ b/mcstas-comps/examples/Tests_samples/Test_Single_crystal_inelastic/README.md @@ -42,7 +42,7 @@ Parameters in **boldface** are required; the others are optional. ## Links - [Source code](Test_Single_crystal_inelastic.instr) for `Test_Single_crystal_inelastic.instr`. -- [Additional information](Test_Single_crystal_inelastic.md) +- [Additional information](Test_Single_crystal_inelastic.md) (only if available!) - Duc Le (2015) - duc.le@stfc.ac.uk --- diff --git a/mcstas-comps/examples/Tests_samples/Test_Sqw/README.md b/mcstas-comps/examples/Tests_samples/Test_Sqw/README.md index f780df067..8fad9b847 100644 --- a/mcstas-comps/examples/Tests_samples/Test_Sqw/README.md +++ b/mcstas-comps/examples/Tests_samples/Test_Sqw/README.md @@ -30,7 +30,7 @@ Parameters in **boldface** are required; the others are optional. ## Links - [Source code](Test_Sqw.instr) for `Test_Sqw.instr`. -- [Additional information](Test_Sqw.md) +- [Additional information](Test_Sqw.md) (only if available!) --- diff --git a/mcstas-comps/examples/Tests_samples/Test_Sqw_monitor/README.md b/mcstas-comps/examples/Tests_samples/Test_Sqw_monitor/README.md index 8092ba547..b49682c51 100644 --- a/mcstas-comps/examples/Tests_samples/Test_Sqw_monitor/README.md +++ b/mcstas-comps/examples/Tests_samples/Test_Sqw_monitor/README.md @@ -106,7 +106,7 @@ Parameters in **boldface** are required; the others are optional. ## Links - [Source code](Test_Sqw_monitor.instr) for `Test_Sqw_monitor.instr`. -- [Additional information](Test_Sqw_monitor.md) +- [Additional information](Test_Sqw_monitor.md) (only if available!) - The Isotropic_Sqw sample - The PowderN sample - The Samples_Isotropic_Sqw example instrument diff --git a/mcstas-comps/examples/Tests_samples/Test_TOFRes_sample/README.md b/mcstas-comps/examples/Tests_samples/Test_TOFRes_sample/README.md index d6d485db8..cd5388a31 100644 --- a/mcstas-comps/examples/Tests_samples/Test_TOFRes_sample/README.md +++ b/mcstas-comps/examples/Tests_samples/Test_TOFRes_sample/README.md @@ -36,7 +36,7 @@ Parameters in **boldface** are required; the others are optional. ## Links - [Source code](Test_TOFRes_sample.instr) for `Test_TOFRes_sample.instr`. -- [Additional information](Test_TOFRes_sample.md) +- [Additional information](Test_TOFRes_sample.md) (only if available!) --- diff --git a/mcstas-comps/examples/Tests_samples/Test_TasReso/README.md b/mcstas-comps/examples/Tests_samples/Test_TasReso/README.md index 79d26b412..4b78fafb0 100644 --- a/mcstas-comps/examples/Tests_samples/Test_TasReso/README.md +++ b/mcstas-comps/examples/Tests_samples/Test_TasReso/README.md @@ -53,7 +53,7 @@ Parameters in **boldface** are required; the others are optional. ## Links - [Source code](Test_TasReso.instr) for `Test_TasReso.instr`. -- [Additional information](Test_TasReso.md) +- [Additional information](Test_TasReso.md) (only if available!) --- diff --git a/mcstas-comps/examples/Tests_samples/Test_single_magnetic_crystal/README.md b/mcstas-comps/examples/Tests_samples/Test_single_magnetic_crystal/README.md index bcac61c5c..784aab270 100644 --- a/mcstas-comps/examples/Tests_samples/Test_single_magnetic_crystal/README.md +++ b/mcstas-comps/examples/Tests_samples/Test_single_magnetic_crystal/README.md @@ -37,7 +37,7 @@ Parameters in **boldface** are required; the others are optional. ## Links - [Source code](Test_single_magnetic_crystal.instr) for `Test_single_magnetic_crystal.instr`. -- [Additional information](Test_single_magnetic_crystal.md) +- [Additional information](Test_single_magnetic_crystal.md) (only if available!) - A reference/HTML link for more information --- diff --git a/mcstas-comps/examples/Tests_samples/Unittest_SANS_benchmark2/README.md b/mcstas-comps/examples/Tests_samples/Unittest_SANS_benchmark2/README.md index 6583db744..42ee76a8a 100644 --- a/mcstas-comps/examples/Tests_samples/Unittest_SANS_benchmark2/README.md +++ b/mcstas-comps/examples/Tests_samples/Unittest_SANS_benchmark2/README.md @@ -33,7 +33,7 @@ Parameters in **boldface** are required; the others are optional. ## Links - [Source code](Unittest_SANS_benchmark2.instr) for `Unittest_SANS_benchmark2.instr`. -- [Additional information](Unittest_SANS_benchmark2.md) +- [Additional information](Unittest_SANS_benchmark2.md) (only if available!) --- diff --git a/mcstas-comps/examples/Tests_sources/Test_Source_custom/README.md b/mcstas-comps/examples/Tests_sources/Test_Source_custom/README.md index 4ba040841..f3baf8295 100644 --- a/mcstas-comps/examples/Tests_sources/Test_Source_custom/README.md +++ b/mcstas-comps/examples/Tests_sources/Test_Source_custom/README.md @@ -26,7 +26,7 @@ Parameters in **boldface** are required; the others are optional. ## Links - [Source code](test_Source_custom.instr) for `test_Source_custom.instr`. -- [Additional information](test_Source_custom.md) +- [Additional information](test_Source_custom.md) (only if available!) --- diff --git a/mcstas-comps/examples/Tests_sources/Test_Source_quasi/README.md b/mcstas-comps/examples/Tests_sources/Test_Source_quasi/README.md index 6197d05ea..26c95792d 100644 --- a/mcstas-comps/examples/Tests_sources/Test_Source_quasi/README.md +++ b/mcstas-comps/examples/Tests_sources/Test_Source_quasi/README.md @@ -26,7 +26,7 @@ Parameters in **boldface** are required; the others are optional. ## Links - [Source code](Test_Source_quasi.instr) for `Test_Source_quasi.instr`. -- [Additional information](Test_Source_quasi.md) +- [Additional information](Test_Source_quasi.md) (only if available!) --- diff --git a/mcstas-comps/examples/Tests_union/Conditional_test/README.md b/mcstas-comps/examples/Tests_union/Conditional_test/README.md index 601e50f3a..8d6e7c51f 100644 --- a/mcstas-comps/examples/Tests_union/Conditional_test/README.md +++ b/mcstas-comps/examples/Tests_union/Conditional_test/README.md @@ -26,7 +26,7 @@ Parameters in **boldface** are required; the others are optional. ## Links - [Source code](Conditional_test.instr) for `Conditional_test.instr`. -- [Additional information](Conditional_test.md) +- [Additional information](Conditional_test.md) (only if available!) --- diff --git a/mcstas-comps/examples/Tests_union/External_component_test/README.md b/mcstas-comps/examples/Tests_union/External_component_test/README.md index 07b97359c..3c44501c1 100644 --- a/mcstas-comps/examples/Tests_union/External_component_test/README.md +++ b/mcstas-comps/examples/Tests_union/External_component_test/README.md @@ -26,7 +26,7 @@ Parameters in **boldface** are required; the others are optional. ## Links - [Source code](External_component_test.instr) for `External_component_test.instr`. -- [Additional information](External_component_test.md) +- [Additional information](External_component_test.md) (only if available!) --- diff --git a/mcstas-comps/examples/Tests_union/Geometry_test/README.md b/mcstas-comps/examples/Tests_union/Geometry_test/README.md index c0ce8503d..9abe28b04 100644 --- a/mcstas-comps/examples/Tests_union/Geometry_test/README.md +++ b/mcstas-comps/examples/Tests_union/Geometry_test/README.md @@ -26,7 +26,7 @@ Parameters in **boldface** are required; the others are optional. ## Links - [Source code](Geometry_test.instr) for `Geometry_test.instr`. -- [Additional information](Geometry_test.md) +- [Additional information](Geometry_test.md) (only if available!) --- diff --git a/mcstas-comps/examples/Tests_union/Hidden_Cylinder/README.md b/mcstas-comps/examples/Tests_union/Hidden_Cylinder/README.md index 87b4790ac..17b5c9884 100644 --- a/mcstas-comps/examples/Tests_union/Hidden_Cylinder/README.md +++ b/mcstas-comps/examples/Tests_union/Hidden_Cylinder/README.md @@ -35,7 +35,7 @@ Parameters in **boldface** are required; the others are optional. ## Links - [Source code](Hidden_Cylinder.instr) for `Hidden_Cylinder.instr`. -- [Additional information](Hidden_Cylinder.md) +- [Additional information](Hidden_Cylinder.md) (only if available!) --- diff --git a/mcstas-comps/examples/Tests_union/IncoherentPhonon_test/README.md b/mcstas-comps/examples/Tests_union/IncoherentPhonon_test/README.md index e5bb580de..e88996979 100644 --- a/mcstas-comps/examples/Tests_union/IncoherentPhonon_test/README.md +++ b/mcstas-comps/examples/Tests_union/IncoherentPhonon_test/README.md @@ -50,7 +50,7 @@ Parameters in **boldface** are required; the others are optional. ## Links - [Source code](IncoherentPhonon_test.instr) for `IncoherentPhonon_test.instr`. -- [Additional information](IncoherentPhonon_test.md) +- [Additional information](IncoherentPhonon_test.md) (only if available!) --- diff --git a/mcstas-comps/examples/Tests_union/Logger_test/README.md b/mcstas-comps/examples/Tests_union/Logger_test/README.md index 2368a0040..061405347 100644 --- a/mcstas-comps/examples/Tests_union/Logger_test/README.md +++ b/mcstas-comps/examples/Tests_union/Logger_test/README.md @@ -27,7 +27,7 @@ Parameters in **boldface** are required; the others are optional. ## Links - [Source code](Logger_test.instr) for `Logger_test.instr`. -- [Additional information](Logger_test.md) +- [Additional information](Logger_test.md) (only if available!) --- diff --git a/mcstas-comps/examples/Tests_union/Many_meshes/README.md b/mcstas-comps/examples/Tests_union/Many_meshes/README.md index dfa80e0ba..b5b3dd408 100644 --- a/mcstas-comps/examples/Tests_union/Many_meshes/README.md +++ b/mcstas-comps/examples/Tests_union/Many_meshes/README.md @@ -34,7 +34,7 @@ Parameters in **boldface** are required; the others are optional. ## Links - [Source code](Many_meshes.instr) for `Many_meshes.instr`. -- [Additional information](Many_meshes.md) +- [Additional information](Many_meshes.md) (only if available!) --- diff --git a/mcstas-comps/examples/Tests_union/Test_absorption/README.md b/mcstas-comps/examples/Tests_union/Test_absorption/README.md index af8ce1ca6..55f04e4ee 100644 --- a/mcstas-comps/examples/Tests_union/Test_absorption/README.md +++ b/mcstas-comps/examples/Tests_union/Test_absorption/README.md @@ -27,7 +27,7 @@ Parameters in **boldface** are required; the others are optional. ## Links - [Source code](Test_absorption.instr) for `Test_absorption.instr`. -- [Additional information](Test_absorption.md) +- [Additional information](Test_absorption.md) (only if available!) --- diff --git a/mcstas-comps/examples/Tests_union/Test_absorption_image/README.md b/mcstas-comps/examples/Tests_union/Test_absorption_image/README.md index f16ae562e..3935ff876 100644 --- a/mcstas-comps/examples/Tests_union/Test_absorption_image/README.md +++ b/mcstas-comps/examples/Tests_union/Test_absorption_image/README.md @@ -27,7 +27,7 @@ Parameters in **boldface** are required; the others are optional. ## Links - [Source code](Test_absorption_image.instr) for `Test_absorption_image.instr`. -- [Additional information](Test_absorption_image.md) +- [Additional information](Test_absorption_image.md) (only if available!) --- diff --git a/mcstas-comps/examples/Tests_union/Test_box/README.md b/mcstas-comps/examples/Tests_union/Test_box/README.md index 2184e5867..e98263443 100644 --- a/mcstas-comps/examples/Tests_union/Test_box/README.md +++ b/mcstas-comps/examples/Tests_union/Test_box/README.md @@ -28,7 +28,7 @@ Parameters in **boldface** are required; the others are optional. ## Links - [Source code](Test_box.instr) for `Test_box.instr`. -- [Additional information](Test_box.md) +- [Additional information](Test_box.md) (only if available!) --- diff --git a/mcstas-comps/examples/Tests_union/Test_mask/README.md b/mcstas-comps/examples/Tests_union/Test_mask/README.md index f9733c1b3..4303079ba 100644 --- a/mcstas-comps/examples/Tests_union/Test_mask/README.md +++ b/mcstas-comps/examples/Tests_union/Test_mask/README.md @@ -26,7 +26,7 @@ Parameters in **boldface** are required; the others are optional. ## Links - [Source code](Test_mask.instr) for `Test_mask.instr`. -- [Additional information](Test_mask.md) +- [Additional information](Test_mask.md) (only if available!) --- diff --git a/mcstas-comps/examples/Tests_union/Test_powder/README.md b/mcstas-comps/examples/Tests_union/Test_powder/README.md index 344166c6e..0ae830012 100644 --- a/mcstas-comps/examples/Tests_union/Test_powder/README.md +++ b/mcstas-comps/examples/Tests_union/Test_powder/README.md @@ -25,7 +25,7 @@ Parameters in **boldface** are required; the others are optional. ## Links - [Source code](Test_powder.instr) for `Test_powder.instr`. -- [Additional information](Test_powder.md) +- [Additional information](Test_powder.md) (only if available!) --- diff --git a/mcstas-comps/examples/Tests_union/Test_texture/README.md b/mcstas-comps/examples/Tests_union/Test_texture/README.md index 1684a6037..11fb60d32 100644 --- a/mcstas-comps/examples/Tests_union/Test_texture/README.md +++ b/mcstas-comps/examples/Tests_union/Test_texture/README.md @@ -31,7 +31,7 @@ Parameters in **boldface** are required; the others are optional. ## Links - [Source code](Test_texture.instr) for `Test_texture.instr`. -- [Additional information](Test_texture.md) +- [Additional information](Test_texture.md) (only if available!) --- diff --git a/mcstas-comps/examples/Tests_union/Unit_test_abs_logger_1D_space/README.md b/mcstas-comps/examples/Tests_union/Unit_test_abs_logger_1D_space/README.md index d6b87e2ce..b77649893 100644 --- a/mcstas-comps/examples/Tests_union/Unit_test_abs_logger_1D_space/README.md +++ b/mcstas-comps/examples/Tests_union/Unit_test_abs_logger_1D_space/README.md @@ -27,7 +27,7 @@ Parameters in **boldface** are required; the others are optional. ## Links - [Source code](Unit_test_abs_logger_1D_space.instr) for `Unit_test_abs_logger_1D_space.instr`. -- [Additional information](Unit_test_abs_logger_1D_space.md) +- [Additional information](Unit_test_abs_logger_1D_space.md) (only if available!) --- diff --git a/mcstas-comps/examples/Tests_union/Unit_test_abs_logger_1D_space_event/README.md b/mcstas-comps/examples/Tests_union/Unit_test_abs_logger_1D_space_event/README.md index 94486113c..6d6e1c1d6 100644 --- a/mcstas-comps/examples/Tests_union/Unit_test_abs_logger_1D_space_event/README.md +++ b/mcstas-comps/examples/Tests_union/Unit_test_abs_logger_1D_space_event/README.md @@ -25,7 +25,7 @@ Parameters in **boldface** are required; the others are optional. ## Links - [Source code](Unit_test_abs_logger_1D_space_event.instr) for `Unit_test_abs_logger_1D_space_event.instr`. -- [Additional information](Unit_test_abs_logger_1D_space_event.md) +- [Additional information](Unit_test_abs_logger_1D_space_event.md) (only if available!) --- diff --git a/mcstas-comps/examples/Tests_union/Unit_test_abs_logger_1D_space_tof/README.md b/mcstas-comps/examples/Tests_union/Unit_test_abs_logger_1D_space_tof/README.md index 5180d766e..c6887abf9 100644 --- a/mcstas-comps/examples/Tests_union/Unit_test_abs_logger_1D_space_tof/README.md +++ b/mcstas-comps/examples/Tests_union/Unit_test_abs_logger_1D_space_tof/README.md @@ -26,7 +26,7 @@ Parameters in **boldface** are required; the others are optional. ## Links - [Source code](Unit_test_abs_logger_1D_space_tof.instr) for `Unit_test_abs_logger_1D_space_tof.instr`. -- [Additional information](Unit_test_abs_logger_1D_space_tof.md) +- [Additional information](Unit_test_abs_logger_1D_space_tof.md) (only if available!) --- diff --git a/mcstas-comps/examples/Tests_union/Unit_test_abs_logger_1D_space_tof_to_lambda/README.md b/mcstas-comps/examples/Tests_union/Unit_test_abs_logger_1D_space_tof_to_lambda/README.md index dae64b063..dccd73072 100644 --- a/mcstas-comps/examples/Tests_union/Unit_test_abs_logger_1D_space_tof_to_lambda/README.md +++ b/mcstas-comps/examples/Tests_union/Unit_test_abs_logger_1D_space_tof_to_lambda/README.md @@ -33,7 +33,7 @@ Parameters in **boldface** are required; the others are optional. ## Links - [Source code](Unit_test_abs_logger_1D_space_tof_to_lambda.instr) for `Unit_test_abs_logger_1D_space_tof_to_lambda.instr`. -- [Additional information](Unit_test_abs_logger_1D_space_tof_to_lambda.md) +- [Additional information](Unit_test_abs_logger_1D_space_tof_to_lambda.md) (only if available!) --- diff --git a/mcstas-comps/examples/Tests_union/Unit_test_abs_logger_2D_space/README.md b/mcstas-comps/examples/Tests_union/Unit_test_abs_logger_2D_space/README.md index b275298a8..ed85d3037 100644 --- a/mcstas-comps/examples/Tests_union/Unit_test_abs_logger_2D_space/README.md +++ b/mcstas-comps/examples/Tests_union/Unit_test_abs_logger_2D_space/README.md @@ -25,7 +25,7 @@ Parameters in **boldface** are required; the others are optional. ## Links - [Source code](Unit_test_abs_logger_2D_space.instr) for `Unit_test_abs_logger_2D_space.instr`. -- [Additional information](Unit_test_abs_logger_2D_space.md) +- [Additional information](Unit_test_abs_logger_2D_space.md) (only if available!) --- diff --git a/mcstas-comps/examples/Tests_union/Unit_test_abs_logger_event/README.md b/mcstas-comps/examples/Tests_union/Unit_test_abs_logger_event/README.md index ad1ce4e83..f1cb69a54 100644 --- a/mcstas-comps/examples/Tests_union/Unit_test_abs_logger_event/README.md +++ b/mcstas-comps/examples/Tests_union/Unit_test_abs_logger_event/README.md @@ -25,7 +25,7 @@ Parameters in **boldface** are required; the others are optional. ## Links - [Source code](Unit_test_abs_logger_event.instr) for `Unit_test_abs_logger_event.instr`. -- [Additional information](Unit_test_abs_logger_event.md) +- [Additional information](Unit_test_abs_logger_event.md) (only if available!) --- diff --git a/mcstas-comps/examples/Tests_union/Unit_test_abs_logger_nD/README.md b/mcstas-comps/examples/Tests_union/Unit_test_abs_logger_nD/README.md index 52eda28f3..69932486d 100644 --- a/mcstas-comps/examples/Tests_union/Unit_test_abs_logger_nD/README.md +++ b/mcstas-comps/examples/Tests_union/Unit_test_abs_logger_nD/README.md @@ -27,7 +27,7 @@ Parameters in **boldface** are required; the others are optional. ## Links - [Source code](Unit_test_abs_logger_nD.instr) for `Unit_test_abs_logger_nD.instr`. -- [Additional information](Unit_test_abs_logger_nD.md) +- [Additional information](Unit_test_abs_logger_nD.md) (only if available!) --- diff --git a/mcstas-comps/examples/Tests_union/Unit_test_conditional_PSD/README.md b/mcstas-comps/examples/Tests_union/Unit_test_conditional_PSD/README.md index f42b1a844..406875a07 100644 --- a/mcstas-comps/examples/Tests_union/Unit_test_conditional_PSD/README.md +++ b/mcstas-comps/examples/Tests_union/Unit_test_conditional_PSD/README.md @@ -27,7 +27,7 @@ Parameters in **boldface** are required; the others are optional. ## Links - [Source code](Unit_test_conditional_PSD.instr) for `Unit_test_conditional_PSD.instr`. -- [Additional information](Unit_test_conditional_PSD.md) +- [Additional information](Unit_test_conditional_PSD.md) (only if available!) --- diff --git a/mcstas-comps/examples/Tests_union/Unit_test_conditional_standard/README.md b/mcstas-comps/examples/Tests_union/Unit_test_conditional_standard/README.md index de154e349..b1cb25367 100644 --- a/mcstas-comps/examples/Tests_union/Unit_test_conditional_standard/README.md +++ b/mcstas-comps/examples/Tests_union/Unit_test_conditional_standard/README.md @@ -27,7 +27,7 @@ Parameters in **boldface** are required; the others are optional. ## Links - [Source code](Unit_test_conditional_standard.instr) for `Unit_test_conditional_standard.instr`. -- [Additional information](Unit_test_conditional_standard.md) +- [Additional information](Unit_test_conditional_standard.md) (only if available!) --- diff --git a/mcstas-comps/examples/Tests_union/Unit_test_logger_1D/README.md b/mcstas-comps/examples/Tests_union/Unit_test_logger_1D/README.md index 6675799b9..ecd50a353 100644 --- a/mcstas-comps/examples/Tests_union/Unit_test_logger_1D/README.md +++ b/mcstas-comps/examples/Tests_union/Unit_test_logger_1D/README.md @@ -25,7 +25,7 @@ Parameters in **boldface** are required; the others are optional. ## Links - [Source code](Unit_test_logger_1D.instr) for `Unit_test_logger_1D.instr`. -- [Additional information](Unit_test_logger_1D.md) +- [Additional information](Unit_test_logger_1D.md) (only if available!) --- diff --git a/mcstas-comps/examples/Tests_union/Unit_test_logger_2DQ/README.md b/mcstas-comps/examples/Tests_union/Unit_test_logger_2DQ/README.md index 9c14a11ef..85a7807bb 100644 --- a/mcstas-comps/examples/Tests_union/Unit_test_logger_2DQ/README.md +++ b/mcstas-comps/examples/Tests_union/Unit_test_logger_2DQ/README.md @@ -25,7 +25,7 @@ Parameters in **boldface** are required; the others are optional. ## Links - [Source code](Unit_test_logger_2DQ.instr) for `Unit_test_logger_2DQ.instr`. -- [Additional information](Unit_test_logger_2DQ.md) +- [Additional information](Unit_test_logger_2DQ.md) (only if available!) --- diff --git a/mcstas-comps/examples/Tests_union/Unit_test_logger_2D_kf/README.md b/mcstas-comps/examples/Tests_union/Unit_test_logger_2D_kf/README.md index fb97fe580..176bf9f40 100644 --- a/mcstas-comps/examples/Tests_union/Unit_test_logger_2D_kf/README.md +++ b/mcstas-comps/examples/Tests_union/Unit_test_logger_2D_kf/README.md @@ -25,7 +25,7 @@ Parameters in **boldface** are required; the others are optional. ## Links - [Source code](Unit_test_logger_2D_kf.instr) for `Unit_test_logger_2D_kf.instr`. -- [Additional information](Unit_test_logger_2D_kf.md) +- [Additional information](Unit_test_logger_2D_kf.md) (only if available!) --- diff --git a/mcstas-comps/examples/Tests_union/Unit_test_logger_2D_kf_time/README.md b/mcstas-comps/examples/Tests_union/Unit_test_logger_2D_kf_time/README.md index 99fc8a329..7738bf7fb 100644 --- a/mcstas-comps/examples/Tests_union/Unit_test_logger_2D_kf_time/README.md +++ b/mcstas-comps/examples/Tests_union/Unit_test_logger_2D_kf_time/README.md @@ -25,7 +25,7 @@ Parameters in **boldface** are required; the others are optional. ## Links - [Source code](Unit_test_logger_2D_kf_time.instr) for `Unit_test_logger_2D_kf_time.instr`. -- [Additional information](Unit_test_logger_2D_kf_time.md) +- [Additional information](Unit_test_logger_2D_kf_time.md) (only if available!) --- diff --git a/mcstas-comps/examples/Tests_union/Unit_test_logger_2D_space/README.md b/mcstas-comps/examples/Tests_union/Unit_test_logger_2D_space/README.md index 0811593de..fc48a5250 100644 --- a/mcstas-comps/examples/Tests_union/Unit_test_logger_2D_space/README.md +++ b/mcstas-comps/examples/Tests_union/Unit_test_logger_2D_space/README.md @@ -27,7 +27,7 @@ Parameters in **boldface** are required; the others are optional. ## Links - [Source code](Unit_test_logger_2D_space.instr) for `Unit_test_logger_2D_space.instr`. -- [Additional information](Unit_test_logger_2D_space.md) +- [Additional information](Unit_test_logger_2D_space.md) (only if available!) --- diff --git a/mcstas-comps/examples/Tests_union/Unit_test_logger_2D_space_time/README.md b/mcstas-comps/examples/Tests_union/Unit_test_logger_2D_space_time/README.md index 7d4680af6..475d1fd8f 100644 --- a/mcstas-comps/examples/Tests_union/Unit_test_logger_2D_space_time/README.md +++ b/mcstas-comps/examples/Tests_union/Unit_test_logger_2D_space_time/README.md @@ -25,7 +25,7 @@ Parameters in **boldface** are required; the others are optional. ## Links - [Source code](Unit_test_logger_2D_space_time.instr) for `Unit_test_logger_2D_space_time.instr`. -- [Additional information](Unit_test_logger_2D_space_time.md) +- [Additional information](Unit_test_logger_2D_space_time.md) (only if available!) --- diff --git a/mcstas-comps/examples/Tests_union/Unit_test_logger_3D_space/README.md b/mcstas-comps/examples/Tests_union/Unit_test_logger_3D_space/README.md index 6c5057222..0a3af6206 100644 --- a/mcstas-comps/examples/Tests_union/Unit_test_logger_3D_space/README.md +++ b/mcstas-comps/examples/Tests_union/Unit_test_logger_3D_space/README.md @@ -25,7 +25,7 @@ Parameters in **boldface** are required; the others are optional. ## Links - [Source code](Unit_test_logger_3D_space.instr) for `Unit_test_logger_3D_space.instr`. -- [Additional information](Unit_test_logger_3D_space.md) +- [Additional information](Unit_test_logger_3D_space.md) (only if available!) --- diff --git a/mcstas-comps/examples/Tests_union/Unit_test_loggers_base/README.md b/mcstas-comps/examples/Tests_union/Unit_test_loggers_base/README.md index 6015cd325..0010375b6 100644 --- a/mcstas-comps/examples/Tests_union/Unit_test_loggers_base/README.md +++ b/mcstas-comps/examples/Tests_union/Unit_test_loggers_base/README.md @@ -25,7 +25,7 @@ Parameters in **boldface** are required; the others are optional. ## Links - [Source code](Unit_test_loggers_base.instr) for `Unit_test_loggers_base.instr`. -- [Additional information](Unit_test_loggers_base.md) +- [Additional information](Unit_test_loggers_base.md) (only if available!) --- diff --git a/mcstas-comps/examples/Tools/Histogrammer/README.md b/mcstas-comps/examples/Tools/Histogrammer/README.md index db6c6ab9f..652926e2f 100644 --- a/mcstas-comps/examples/Tools/Histogrammer/README.md +++ b/mcstas-comps/examples/Tools/Histogrammer/README.md @@ -46,7 +46,7 @@ Parameters in **boldface** are required; the others are optional. ## Links - [Source code](Histogrammer.instr) for `Histogrammer.instr`. -- [Additional information](Histogrammer.md) +- [Additional information](Histogrammer.md) (only if available!) - Virtual_input component (McStas event file) - Vitess_input component (Vitess event file) - Virtual_mcnp_input component (MCNP PTRAC event file) diff --git a/mcstas-comps/examples/Tools/MCPL2Mantid_flat/README.md b/mcstas-comps/examples/Tools/MCPL2Mantid_flat/README.md index 67c43dd76..b8850dafd 100644 --- a/mcstas-comps/examples/Tools/MCPL2Mantid_flat/README.md +++ b/mcstas-comps/examples/Tools/MCPL2Mantid_flat/README.md @@ -50,7 +50,7 @@ Parameters in **boldface** are required; the others are optional. ## Links - [Source code](MCPL2Mantid_flat.instr) for `MCPL2Mantid_flat.instr`. -- [Additional information](MCPL2Mantid_flat.md) +- [Additional information](MCPL2Mantid_flat.md) (only if available!) - - MCPL website at https://mctools.github.io/mcpl/ diff --git a/mcstas-comps/examples/Tools/MCPL2hist/README.md b/mcstas-comps/examples/Tools/MCPL2hist/README.md index f50f9a5dc..d51d71a90 100644 --- a/mcstas-comps/examples/Tools/MCPL2hist/README.md +++ b/mcstas-comps/examples/Tools/MCPL2hist/README.md @@ -36,7 +36,7 @@ Parameters in **boldface** are required; the others are optional. ## Links - [Source code](MCPL2hist.instr) for `MCPL2hist.instr`. -- [Additional information](MCPL2hist.md) +- [Additional information](MCPL2hist.md) (only if available!) - - MCPL website at https://mctools.github.io/mcpl/ diff --git a/mcstas-comps/examples/Tools/MCPL_filter_energy/README.md b/mcstas-comps/examples/Tools/MCPL_filter_energy/README.md index 6ff49e6ca..49d3beb66 100644 --- a/mcstas-comps/examples/Tools/MCPL_filter_energy/README.md +++ b/mcstas-comps/examples/Tools/MCPL_filter_energy/README.md @@ -31,7 +31,7 @@ Parameters in **boldface** are required; the others are optional. ## Links - [Source code](MCPL_filter_energy.instr) for `MCPL_filter_energy.instr`. -- [Additional information](MCPL_filter_energy.md) +- [Additional information](MCPL_filter_energy.md) (only if available!) - - MCPL website at https://mctools.github.io/mcpl/ diff --git a/mcstas-comps/examples/Tools/MCPL_filter_radius/README.md b/mcstas-comps/examples/Tools/MCPL_filter_radius/README.md index 5d21a0ecb..a149342d0 100644 --- a/mcstas-comps/examples/Tools/MCPL_filter_radius/README.md +++ b/mcstas-comps/examples/Tools/MCPL_filter_radius/README.md @@ -28,7 +28,7 @@ Parameters in **boldface** are required; the others are optional. ## Links - [Source code](MCPL_filter_radius.instr) for `MCPL_filter_radius.instr`. -- [Additional information](MCPL_filter_radius.md) +- [Additional information](MCPL_filter_radius.md) (only if available!) - - MCPL website at https://mctools.github.io/mcpl/ diff --git a/mcstas-comps/examples/Tools/MCPL_filter_wavelength/README.md b/mcstas-comps/examples/Tools/MCPL_filter_wavelength/README.md index 4e5790264..ce9f8737e 100644 --- a/mcstas-comps/examples/Tools/MCPL_filter_wavelength/README.md +++ b/mcstas-comps/examples/Tools/MCPL_filter_wavelength/README.md @@ -31,7 +31,7 @@ Parameters in **boldface** are required; the others are optional. ## Links - [Source code](MCPL_filter_wavelength.instr) for `MCPL_filter_wavelength.instr`. -- [Additional information](MCPL_filter_wavelength.md) +- [Additional information](MCPL_filter_wavelength.md) (only if available!) - - MCPL website at https://mctools.github.io/mcpl/ diff --git a/mcstas-comps/examples/Tools/vinput2mcpl/README.md b/mcstas-comps/examples/Tools/vinput2mcpl/README.md index 60631ccce..2ab9216ac 100644 --- a/mcstas-comps/examples/Tools/vinput2mcpl/README.md +++ b/mcstas-comps/examples/Tools/vinput2mcpl/README.md @@ -29,7 +29,7 @@ Parameters in **boldface** are required; the others are optional. ## Links - [Source code](vinput2mcpl.instr) for `vinput2mcpl.instr`. -- [Additional information](vinput2mcpl.md) +- [Additional information](vinput2mcpl.md) (only if available!) - --- diff --git a/mcstas-comps/examples/Union_demos/Bispectral/README.md b/mcstas-comps/examples/Union_demos/Bispectral/README.md index bd712ab3c..ebd62cd6e 100644 --- a/mcstas-comps/examples/Union_demos/Bispectral/README.md +++ b/mcstas-comps/examples/Union_demos/Bispectral/README.md @@ -30,7 +30,7 @@ Parameters in **boldface** are required; the others are optional. ## Links - [Source code](Bispectral.instr) for `Bispectral.instr`. -- [Additional information](Bispectral.md) +- [Additional information](Bispectral.md) (only if available!) - A reference/HTML link for more information --- diff --git a/mcstas-comps/examples/Union_demos/Demonstration/README.md b/mcstas-comps/examples/Union_demos/Demonstration/README.md index 10bd48a8b..383a4a718 100644 --- a/mcstas-comps/examples/Union_demos/Demonstration/README.md +++ b/mcstas-comps/examples/Union_demos/Demonstration/README.md @@ -33,7 +33,7 @@ Parameters in **boldface** are required; the others are optional. ## Links - [Source code](Demonstration.instr) for `Demonstration.instr`. -- [Additional information](Demonstration.md) +- [Additional information](Demonstration.md) (only if available!) --- diff --git a/mcstas-comps/examples/Union_demos/External_component/README.md b/mcstas-comps/examples/Union_demos/External_component/README.md index be74c769f..4c389b55f 100644 --- a/mcstas-comps/examples/Union_demos/External_component/README.md +++ b/mcstas-comps/examples/Union_demos/External_component/README.md @@ -29,7 +29,7 @@ Parameters in **boldface** are required; the others are optional. ## Links - [Source code](External_component.instr) for `External_component.instr`. -- [Additional information](External_component.md) +- [Additional information](External_component.md) (only if available!) --- diff --git a/mcstas-comps/examples/Union_demos/Laue_camera/README.md b/mcstas-comps/examples/Union_demos/Laue_camera/README.md index 72f475a13..50d2b7679 100644 --- a/mcstas-comps/examples/Union_demos/Laue_camera/README.md +++ b/mcstas-comps/examples/Union_demos/Laue_camera/README.md @@ -39,7 +39,7 @@ Parameters in **boldface** are required; the others are optional. ## Links - [Source code](Laue_camera.instr) for `Laue_camera.instr`. -- [Additional information](Laue_camera.md) +- [Additional information](Laue_camera.md) (only if available!) --- diff --git a/mcstas-comps/examples/Union_demos/Manual_example/README.md b/mcstas-comps/examples/Union_demos/Manual_example/README.md index 03106fce1..8563d0334 100644 --- a/mcstas-comps/examples/Union_demos/Manual_example/README.md +++ b/mcstas-comps/examples/Union_demos/Manual_example/README.md @@ -27,7 +27,7 @@ Parameters in **boldface** are required; the others are optional. ## Links - [Source code](Manual_example.instr) for `Manual_example.instr`. -- [Additional information](Manual_example.md) +- [Additional information](Manual_example.md) (only if available!) --- diff --git a/mcstas-comps/examples/Union_demos/Sample_picture_replica/README.md b/mcstas-comps/examples/Union_demos/Sample_picture_replica/README.md index 589e710c2..6425363ea 100644 --- a/mcstas-comps/examples/Union_demos/Sample_picture_replica/README.md +++ b/mcstas-comps/examples/Union_demos/Sample_picture_replica/README.md @@ -27,7 +27,7 @@ Parameters in **boldface** are required; the others are optional. ## Links - [Source code](Sample_picture_replica.instr) for `Sample_picture_replica.instr`. -- [Additional information](Sample_picture_replica.md) +- [Additional information](Sample_picture_replica.md) (only if available!) --- diff --git a/mcstas-comps/examples/Union_demos/Tagging_demo/README.md b/mcstas-comps/examples/Union_demos/Tagging_demo/README.md index 09d0ffd5d..a3b9880f6 100644 --- a/mcstas-comps/examples/Union_demos/Tagging_demo/README.md +++ b/mcstas-comps/examples/Union_demos/Tagging_demo/README.md @@ -38,7 +38,7 @@ Parameters in **boldface** are required; the others are optional. ## Links - [Source code](Tagging_demo.instr) for `Tagging_demo.instr`. -- [Additional information](Tagging_demo.md) +- [Additional information](Tagging_demo.md) (only if available!) --- diff --git a/mcstas-comps/examples/Union_demos/Time_of_flight/README.md b/mcstas-comps/examples/Union_demos/Time_of_flight/README.md index 2468b5230..b698742f8 100644 --- a/mcstas-comps/examples/Union_demos/Time_of_flight/README.md +++ b/mcstas-comps/examples/Union_demos/Time_of_flight/README.md @@ -28,7 +28,7 @@ Parameters in **boldface** are required; the others are optional. ## Links - [Source code](Time_of_flight.instr) for `Time_of_flight.instr`. -- [Additional information](Time_of_flight.md) +- [Additional information](Time_of_flight.md) (only if available!) --- diff --git a/mcstas-comps/examples/Union_sample_environments/SE_usage_example/README.md b/mcstas-comps/examples/Union_sample_environments/SE_usage_example/README.md index 1a5555b7f..158f5e5a2 100644 --- a/mcstas-comps/examples/Union_sample_environments/SE_usage_example/README.md +++ b/mcstas-comps/examples/Union_sample_environments/SE_usage_example/README.md @@ -28,7 +28,7 @@ Parameters in **boldface** are required; the others are optional. ## Links - [Source code](SE_usage_example.instr) for `SE_usage_example.instr`. -- [Additional information](SE_usage_example.md) +- [Additional information](SE_usage_example.md) (only if available!) --- diff --git a/mcstas-comps/examples/Union_sample_environments/cryostat_example/README.md b/mcstas-comps/examples/Union_sample_environments/cryostat_example/README.md index 1015bfe7d..48ecc54e0 100644 --- a/mcstas-comps/examples/Union_sample_environments/cryostat_example/README.md +++ b/mcstas-comps/examples/Union_sample_environments/cryostat_example/README.md @@ -34,7 +34,7 @@ Parameters in **boldface** are required; the others are optional. ## Links - [Source code](cryostat_example.instr) for `cryostat_example.instr`. -- [Additional information](cryostat_example.md) +- [Additional information](cryostat_example.md) (only if available!) --- diff --git a/mcstas-comps/examples/Union_validation/Incoherent_validation/README.md b/mcstas-comps/examples/Union_validation/Incoherent_validation/README.md index 90c5c678d..f814fe01c 100644 --- a/mcstas-comps/examples/Union_validation/Incoherent_validation/README.md +++ b/mcstas-comps/examples/Union_validation/Incoherent_validation/README.md @@ -33,7 +33,7 @@ Parameters in **boldface** are required; the others are optional. ## Links - [Source code](Incoherent_validation.instr) for `Incoherent_validation.instr`. -- [Additional information](Incoherent_validation.md) +- [Additional information](Incoherent_validation.md) (only if available!) --- diff --git a/mcstas-comps/examples/Union_validation/Mirror_validation/README.md b/mcstas-comps/examples/Union_validation/Mirror_validation/README.md index 94b62d6c6..ff6efee0f 100644 --- a/mcstas-comps/examples/Union_validation/Mirror_validation/README.md +++ b/mcstas-comps/examples/Union_validation/Mirror_validation/README.md @@ -42,7 +42,7 @@ Parameters in **boldface** are required; the others are optional. ## Links - [Source code](Mirror_validation.instr) for `Mirror_validation.instr`. -- [Additional information](Mirror_validation.md) +- [Additional information](Mirror_validation.md) (only if available!) - A reference/HTML link for more information --- diff --git a/mcstas-comps/examples/Union_validation/Powder_validation/README.md b/mcstas-comps/examples/Union_validation/Powder_validation/README.md index fb9a81456..2f6de0705 100644 --- a/mcstas-comps/examples/Union_validation/Powder_validation/README.md +++ b/mcstas-comps/examples/Union_validation/Powder_validation/README.md @@ -39,7 +39,7 @@ Parameters in **boldface** are required; the others are optional. ## Links - [Source code](Powder_validation.instr) for `Powder_validation.instr`. -- [Additional information](Powder_validation.md) +- [Additional information](Powder_validation.md) (only if available!) --- diff --git a/mcstas-comps/examples/Union_validation/Single_crystal_validation/README.md b/mcstas-comps/examples/Union_validation/Single_crystal_validation/README.md index 289cb0275..7d148ccfc 100644 --- a/mcstas-comps/examples/Union_validation/Single_crystal_validation/README.md +++ b/mcstas-comps/examples/Union_validation/Single_crystal_validation/README.md @@ -47,7 +47,7 @@ Parameters in **boldface** are required; the others are optional. ## Links - [Source code](Single_crystal_validation.instr) for `Single_crystal_validation.instr`. -- [Additional information](Single_crystal_validation.md) +- [Additional information](Single_crystal_validation.md) (only if available!) --- diff --git a/mcstas-comps/examples/elearning/Radiography_absorbing_edge/README.md b/mcstas-comps/examples/elearning/Radiography_absorbing_edge/README.md index 3e1c69344..9fd5796df 100644 --- a/mcstas-comps/examples/elearning/Radiography_absorbing_edge/README.md +++ b/mcstas-comps/examples/elearning/Radiography_absorbing_edge/README.md @@ -35,7 +35,7 @@ Parameters in **boldface** are required; the others are optional. ## Links - [Source code](Radiography_absorbing_edge.instr) for `Radiography_absorbing_edge.instr`. -- [Additional information](Radiography_absorbing_edge.md) +- [Additional information](Radiography_absorbing_edge.md) (only if available!) - http://vnt.nmi3.org/mcstas-web --- diff --git a/mcstas-comps/examples/elearning/Reflectometer/README.md b/mcstas-comps/examples/elearning/Reflectometer/README.md index 88f0e9f7b..e0ca64b47 100644 --- a/mcstas-comps/examples/elearning/Reflectometer/README.md +++ b/mcstas-comps/examples/elearning/Reflectometer/README.md @@ -49,7 +49,7 @@ Parameters in **boldface** are required; the others are optional. ## Links - [Source code](Reflectometer.instr) for `Reflectometer.instr`. -- [Additional information](Reflectometer.md) +- [Additional information](Reflectometer.md) (only if available!) --- diff --git a/mcstas-comps/examples/elearning/SANSsimple/README.md b/mcstas-comps/examples/elearning/SANSsimple/README.md index dbd559905..9b1aa6aa6 100644 --- a/mcstas-comps/examples/elearning/SANSsimple/README.md +++ b/mcstas-comps/examples/elearning/SANSsimple/README.md @@ -41,7 +41,7 @@ Parameters in **boldface** are required; the others are optional. ## Links - [Source code](SANSsimple.instr) for `SANSsimple.instr`. -- [Additional information](SANSsimple.md) +- [Additional information](SANSsimple.md) (only if available!) - A reference/HTML link for more information --- diff --git a/mcstas-comps/examples/elearning/SANSsimpleSpheres/README.md b/mcstas-comps/examples/elearning/SANSsimpleSpheres/README.md index 89a4960e1..2b9fa7751 100644 --- a/mcstas-comps/examples/elearning/SANSsimpleSpheres/README.md +++ b/mcstas-comps/examples/elearning/SANSsimpleSpheres/README.md @@ -39,7 +39,7 @@ Parameters in **boldface** are required; the others are optional. ## Links - [Source code](SANSsimpleSpheres.instr) for `SANSsimpleSpheres.instr`. -- [Additional information](SANSsimpleSpheres.md) +- [Additional information](SANSsimpleSpheres.md) (only if available!) - https://sim.e-neutrons.org/instrument/intro-ns/SANSsimple --- diff --git a/mcstas-comps/examples/elearning/SimplePowderDiffractometer/README.md b/mcstas-comps/examples/elearning/SimplePowderDiffractometer/README.md index caf9f6870..f5792be3a 100644 --- a/mcstas-comps/examples/elearning/SimplePowderDiffractometer/README.md +++ b/mcstas-comps/examples/elearning/SimplePowderDiffractometer/README.md @@ -34,7 +34,7 @@ Parameters in **boldface** are required; the others are optional. ## Links - [Source code](SimplePowderDiffractometer.instr) for `SimplePowderDiffractometer.instr`. -- [Additional information](SimplePowderDiffractometer.md) +- [Additional information](SimplePowderDiffractometer.md) (only if available!) - http://vnt.nmi3.org/mcstas-web ---

    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

  • We expect to release an MCNP-event-based source model later in 2016, and possibly also new set of brilliance +functions for ESS_butterfly.comp. These are expected to include more realistic brilliances in terms of variation +across sectors and potentially also performance losses due to engineering reality. + +Engineering reality +An ad-hoc method for future implementation of "engineering reality" is included, use the +"c_performance/t_performance" parameters to down-scale performance uniformly across all wavelengths. + +References: +

    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

    4z9rRP@dbWPn%M+$7_a)Xx!o>C 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