Skip to content

Commit

Permalink
Automatic update of developer site
Browse files Browse the repository at this point in the history
  • Loading branch information
mantid-builder committed Feb 26, 2024
1 parent 303036f commit 72d3d38
Show file tree
Hide file tree
Showing 26 changed files with 135 additions and 135 deletions.
2 changes: 1 addition & 1 deletion Architecture.html
Original file line number Diff line number Diff line change
Expand Up @@ -230,7 +230,7 @@ <h3><a class="toc-backref" href="#id11" role="doc-backlink">mantidqt</a><a class
multiple interfaces/applications when displaying <code class="docutils literal notranslate"><span class="pre">mantid</span></code> features to users.</p>
<p>The package contains basic widgets, such as the aforementioned <code class="docutils literal notranslate"><span class="pre">filefinder</span></code>,
but also more advanced widgets such as
<a class="reference external" href="https://docs.mantidproject.org/nightly/workbench/sliceviewer.html#sliceviewer" title="(in MantidProject v6.8)"><span class="xref std std-ref">slice viewer</span></a> and
<a class="reference external" href="https://docs.mantidproject.org/nightly/workbench/sliceviewer.html#sliceviewer" title="(in MantidProject v6.9)"><span class="xref std std-ref">slice viewer</span></a> and
the OpenGL-based <a class="reference internal" href="InstrumentViewer.html#instrumentviewer"><span class="std std-ref">instrument viewer</span></a>,
which combine many features of the framework together to provide advanced
visualization to users.</p>
Expand Down
2 changes: 1 addition & 1 deletion CondaPackageManager.html
Original file line number Diff line number Diff line change
Expand Up @@ -185,7 +185,7 @@ <h2><a class="toc-backref" href="#id4" role="doc-backlink">Pip package policy</a
<p>The other solution we considered was installing our pip dependencies downstream within our DAaaS workspace
configuration repository. We decided against this because it feels like bad practise to have a formalised
way of installing dependencies of a software in a way which is completely detached. The prevailing message is
this: please only use Conda packages. We provide <a class="reference external" href="https://docs.mantidproject.org/nightly/concepts/PipInstall.html#pip-install-ref" title="(in MantidProject v6.8)"><span class="xref std std-ref">pip install instructions</span></a> for users if
this: please only use Conda packages. We provide <a class="reference external" href="https://docs.mantidproject.org/nightly/concepts/PipInstall.html#pip-install-ref" title="(in MantidProject v6.9)"><span class="xref std std-ref">pip install instructions</span></a> for users if
they would like to take the risk.</p>
</section>
</section>
Expand Down
2 changes: 1 addition & 1 deletion DataFilesForTesting.html
Original file line number Diff line number Diff line change
Expand Up @@ -207,7 +207,7 @@ <h2><a class="toc-backref" href="#id7" role="doc-backlink">Using Existing Data</
<li><p><a class="reference external" href="https://github.com/mantidproject/mantid/tree/main/Testing/Data">…/Testing/Data/</a>
for <a class="reference internal" href="RunningTheUnitTests.html#runningtheunittests"><span class="std std-ref">unit test</span></a>, <a class="reference internal" href="Standards/DocumentationGuideForDevs.html#documentationguidefordevs"><span class="std std-ref">doc test</span></a>, and <a class="reference internal" href="SystemTests.html#systemtests"><span class="std std-ref">system test</span></a> data</p></li>
<li><p><a class="reference external" href="https://github.com/mantidproject/mantid/tree/main/instrument/unit_testing">…/instrument/unit_testing</a>
for test <a class="reference external" href="https://docs.mantidproject.org/nightly/concepts/InstrumentDefinitionFile.html#instrumentdefinitionfile" title="(in MantidProject v6.8)"><span class="xref std std-ref">IDF</span></a> files</p></li>
for test <a class="reference external" href="https://docs.mantidproject.org/nightly/concepts/InstrumentDefinitionFile.html#instrumentdefinitionfile" title="(in MantidProject v6.9)"><span class="xref std std-ref">IDF</span></a> files</p></li>
</ul>
<p>For system testings, there is one more location developers use to dump reference
data files:</p>
Expand Down
6 changes: 3 additions & 3 deletions EventWorkspaceDev.html
Original file line number Diff line number Diff line change
Expand Up @@ -112,7 +112,7 @@ <h3>Navigation</h3>
</ul>
</nav>
<p>The following information will be useful to you if you want to write an
<a class="reference external" href="https://docs.mantidproject.org/nightly/concepts/Algorithm.html#algorithm" title="(in MantidProject v6.8)"><span>Algorithm</span></a> that is <a class="reference external" href="https://docs.mantidproject.org/nightly/concepts/EventWorkspace.html#eventworkspace" title="(in MantidProject v6.8)"><span class="xref std std-ref">Event Workspace</span></a> aware.</p>
<a class="reference external" href="https://docs.mantidproject.org/nightly/concepts/Algorithm.html#algorithm" title="(in MantidProject v6.9)"><span>Algorithm</span></a> that is <a class="reference external" href="https://docs.mantidproject.org/nightly/concepts/EventWorkspace.html#eventworkspace" title="(in MantidProject v6.9)"><span class="xref std std-ref">Event Workspace</span></a> aware.</p>
<section id="individual-neutron-event-data-tofevent">
<h2><a class="toc-backref" href="#id1" role="doc-backlink">Individual Neutron Event Data (TofEvent)</a><a class="headerlink" href="#individual-neutron-event-data-tofevent" title="Link to this heading"></a></h2>
<p>The <a class="reference external" href="https://github.com/mantidproject/mantid/blob/main/Framework/Types/inc/MantidTypes/Event/TofEvent.h">TofEvent</a> class holds information for each neutron detection event
Expand Down Expand Up @@ -165,9 +165,9 @@ <h2><a class="toc-backref" href="#id4" role="doc-backlink">A note about workspac
<section id="workspace2d-compatibility">
<h2><a class="toc-backref" href="#id5" role="doc-backlink">Workspace2D compatibility</a><a class="headerlink" href="#workspace2d-compatibility" title="Link to this heading"></a></h2>
<p>Event Workspace is designed to be able to be read (but not written to)
like a <a class="reference external" href="https://docs.mantidproject.org/nightly/concepts/MatrixWorkspace.html#matrixworkspace" title="(in MantidProject v6.8)"><span class="xref std std-ref">MatrixWorkspace</span></a>. By default, if an algorithm
like a <a class="reference external" href="https://docs.mantidproject.org/nightly/concepts/MatrixWorkspace.html#matrixworkspace" title="(in MantidProject v6.9)"><span class="xref std std-ref">MatrixWorkspace</span></a>. By default, if an algorithm
performs an operation and outputs a new workspace, the
WorkspaceFactory will create a <a class="reference external" href="https://docs.mantidproject.org/nightly/concepts/Workspace2D.html#workspace2d" title="(in MantidProject v6.8)"><span>Workspace2D</span></a> <em>copy</em>
WorkspaceFactory will create a <a class="reference external" href="https://docs.mantidproject.org/nightly/concepts/Workspace2D.html#workspace2d" title="(in MantidProject v6.9)"><span>Workspace2D</span></a> <em>copy</em>
of your Event Workspace’s histogram representation. If you attempt to
change an Event Workspace’s Y or E data in place, you will get an <code class="docutils literal notranslate"><span class="pre">NotImplementedError</span></code> raised, since that is not possible.</p>
</section>
Expand Down
6 changes: 3 additions & 3 deletions ISISReflectometryInterface.html
Original file line number Diff line number Diff line change
Expand Up @@ -105,7 +105,7 @@ <h3>Navigation</h3>
<section id="overview">
<h2>Overview<a class="headerlink" href="#overview" title="Link to this heading"></a></h2>
<p>The <a class="reference external" href="https://docs.mantidproject.org/nightly/interfaces/ISIS%20Reflectometry.html">ISIS Reflectometry Interface</a> provides a way for users to easily run a reduction on a <em>batch</em> of runs. A batch of runs is entered into a table, which is actually a tree structure with two levels - this allows sets of runs to be grouped so that their outputs are post-processed (stitched) together. Various default settings can be specified on the tabs. A tab is also provided to make exporting the results for a set of workspaces easy.</p>
<p>The reduction for each row is done via <a class="reference external" href="https://docs.mantidproject.org/nightly/algorithms/ReflectometryISISLoadAndProcess-v1.html#algm-reflectometryisisloadandprocess" title="(in MantidProject v6.8)"><span>ReflectometryISISLoadAndProcess v1</span></a> (which includes any pre-processing). Post-processing for a group is done via <a class="reference external" href="https://docs.mantidproject.org/nightly/algorithms/Stitch1DMany-v1.html#algm-stitch1dmany" title="(in MantidProject v6.8)"><span>Stitch1DMany v1</span></a>.</p>
<p>The reduction for each row is done via <a class="reference external" href="https://docs.mantidproject.org/nightly/algorithms/ReflectometryISISLoadAndProcess-v1.html#algm-reflectometryisisloadandprocess" title="(in MantidProject v6.9)"><span>ReflectometryISISLoadAndProcess v1</span></a> (which includes any pre-processing). Post-processing for a group is done via <a class="reference external" href="https://docs.mantidproject.org/nightly/algorithms/Stitch1DMany-v1.html#algm-stitch1dmany" title="(in MantidProject v6.9)"><span>Stitch1DMany v1</span></a>.</p>
<p>The GUI provides a lot of other functionality as well. Because it is quite complex, it is important to keep to the established guidelines, in particular sticking to the MVP design pattern, to avoid the code becoming difficult to work with.</p>
</section>
<section id="structure">
Expand Down Expand Up @@ -146,7 +146,7 @@ <h3><code class="code docutils literal notranslate"><span class="pre">TestHelper
</section>
<section id="reduction-back-end">
<h2>Reduction back-end<a class="headerlink" href="#reduction-back-end" title="Link to this heading"></a></h2>
<p>The back-end is primarily a set of algorithms, with the entry points from the GUI being <a class="reference external" href="https://docs.mantidproject.org/nightly/algorithms/ReflectometryISISLoadAndProcess-v1.html#algm-reflectometryisisloadandprocess" title="(in MantidProject v6.8)"><span>ReflectometryISISLoadAndProcess v1</span></a> (for reducing a row) and <a class="reference external" href="https://docs.mantidproject.org/nightly/algorithms/Stitch1DMany-v1.html#algm-stitch1dmany" title="(in MantidProject v6.8)"><span>Stitch1DMany v1</span></a> (for post-processing a group). Any additional processing should be added to these algorithms, or a new wrapper algorithm could be added if appropriate (this might be necessary in future if post-processing will involve more than just stitching).</p>
<p>The back-end is primarily a set of algorithms, with the entry points from the GUI being <a class="reference external" href="https://docs.mantidproject.org/nightly/algorithms/ReflectometryISISLoadAndProcess-v1.html#algm-reflectometryisisloadandprocess" title="(in MantidProject v6.9)"><span>ReflectometryISISLoadAndProcess v1</span></a> (for reducing a row) and <a class="reference external" href="https://docs.mantidproject.org/nightly/algorithms/Stitch1DMany-v1.html#algm-stitch1dmany" title="(in MantidProject v6.9)"><span>Stitch1DMany v1</span></a> (for post-processing a group). Any additional processing should be added to these algorithms, or a new wrapper algorithm could be added if appropriate (this might be necessary in future if post-processing will involve more than just stitching).</p>
<p>The <code class="code docutils literal notranslate"><span class="pre">BatchPresenter</span></code> is the main coordinator for executing a reduction. It uses the <code class="code docutils literal notranslate"><span class="pre">BatchJobManager</span></code>, which converts the reduction configuration to a format appropriate for the algorithms. The conversion functions are in files called <code class="code docutils literal notranslate"><span class="pre">RowProcessingAlgorithm</span></code> and <code class="code docutils literal notranslate"><span class="pre">GroupProcessingAlgorithm</span></code>, and any algorithm-specific code should be kept to these files.</p>
<p>Unfortunately the whole batch cannot be farmed off to a single algorithm because we need to update the GUI after each row completes, and we must be able to interrupt processing so that we can cancel a large batch operation. We also need to know whether rows completed successfully before we can set up the group post-processing algorithms. Some queue management is therefore done by the <code class="code docutils literal notranslate"><span class="pre">BatchPresenter</span></code>, with the help of the <code class="code docutils literal notranslate"><span class="pre">BatchAlgorithmRunner</span></code>.</p>
</section>
Expand Down Expand Up @@ -185,7 +185,7 @@ <h3>Keep the reduction configuration up to date<a class="headerlink" href="#keep
<section id="perform-all-processing-in-algorithms">
<h3>Perform all processing in algorithms<a class="headerlink" href="#perform-all-processing-in-algorithms" title="Link to this heading"></a></h3>
<p>When adding new functionality, where possible this should be done by extending the algorithms rather than by adding logic to the GUI. The aim is that there is a single algorithm that will be run for each entry in the table (albeit a different algorithm for Rows and Groups).</p>
<p>Consider adding new wrapper algorithms if appropriate. <a class="reference external" href="https://docs.mantidproject.org/nightly/algorithms/ReflectometryISISLoadAndProcess-v1.html#algm-reflectometryisisloadandprocess" title="(in MantidProject v6.8)"><span>ReflectometryISISLoadAndProcess v1</span></a> is an algorithm that has been added specifically for this purpose and can usually be extended or modified quite easily because it is designed for use with this GUI. The post-processing algorithm, <a class="reference external" href="https://docs.mantidproject.org/nightly/algorithms/Stitch1DMany-v1.html#algm-stitch1dmany" title="(in MantidProject v6.8)"><span>Stitch1DMany v1</span></a>, is more generic so it is likely in future that we would want to add a wrapper for this algorithm rather than changing it directly.</p>
<p>Consider adding new wrapper algorithms if appropriate. <a class="reference external" href="https://docs.mantidproject.org/nightly/algorithms/ReflectometryISISLoadAndProcess-v1.html#algm-reflectometryisisloadandprocess" title="(in MantidProject v6.9)"><span>ReflectometryISISLoadAndProcess v1</span></a> is an algorithm that has been added specifically for this purpose and can usually be extended or modified quite easily because it is designed for use with this GUI. The post-processing algorithm, <a class="reference external" href="https://docs.mantidproject.org/nightly/algorithms/Stitch1DMany-v1.html#algm-stitch1dmany" title="(in MantidProject v6.9)"><span>Stitch1DMany v1</span></a>, is more generic so it is likely in future that we would want to add a wrapper for this algorithm rather than changing it directly.</p>
</section>
</section>
<section id="design-pattern-examples">
Expand Down
Loading

0 comments on commit 72d3d38

Please sign in to comment.