<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="en">
	<id>http://tsgdoc.socsci.ru.nl/index.php?action=history&amp;feed=atom&amp;title=BrainStreamExampleSpellerPart3</id>
	<title>BrainStreamExampleSpellerPart3 - Revision history</title>
	<link rel="self" type="application/atom+xml" href="http://tsgdoc.socsci.ru.nl/index.php?action=history&amp;feed=atom&amp;title=BrainStreamExampleSpellerPart3"/>
	<link rel="alternate" type="text/html" href="http://tsgdoc.socsci.ru.nl/index.php?title=BrainStreamExampleSpellerPart3&amp;action=history"/>
	<updated>2026-06-15T03:22:24Z</updated>
	<subtitle>Revision history for this page on the wiki</subtitle>
	<generator>MediaWiki 1.35.4</generator>
	<entry>
		<id>http://tsgdoc.socsci.ru.nl/index.php?title=BrainStreamExampleSpellerPart3&amp;diff=4631&amp;oldid=prev</id>
		<title>Wiki-admin at 13:19, 4 October 2018</title>
		<link rel="alternate" type="text/html" href="http://tsgdoc.socsci.ru.nl/index.php?title=BrainStreamExampleSpellerPart3&amp;diff=4631&amp;oldid=prev"/>
		<updated>2018-10-04T13:19:48Z</updated>

		<summary type="html">&lt;p&gt;&lt;/p&gt;
&lt;table class=&quot;diff diff-contentalign-left diff-editfont-monospace&quot; data-mw=&quot;interface&quot;&gt;
				&lt;col class=&quot;diff-marker&quot; /&gt;
				&lt;col class=&quot;diff-content&quot; /&gt;
				&lt;col class=&quot;diff-marker&quot; /&gt;
				&lt;col class=&quot;diff-content&quot; /&gt;
				&lt;tr class=&quot;diff-title&quot; lang=&quot;en&quot;&gt;
				&lt;td colspan=&quot;2&quot; style=&quot;background-color: #fff; color: #202122; text-align: center;&quot;&gt;← Older revision&lt;/td&gt;
				&lt;td colspan=&quot;2&quot; style=&quot;background-color: #fff; color: #202122; text-align: center;&quot;&gt;Revision as of 13:19, 4 October 2018&lt;/td&gt;
				&lt;/tr&gt;&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot; id=&quot;mw-diff-left-l32&quot; &gt;Line 32:&lt;/td&gt;
&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot;&gt;Line 32:&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt; &lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;Now that we have specified the client in the block file, we can direct the execution of any action to this client. We can do this by specifying the name of the client in the 'client' column of the Actions table:&lt;/div&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt; &lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;Now that we have specified the client in the block file, we can direct the execution of any action to this client. We can do this by specifying the name of the client in the 'client' column of the Actions table:&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt; &lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt; &lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt;−&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;[[File:&lt;del class=&quot;diffchange diffchange-inline&quot;&gt;DocsSectionsExampleSpellerPart3_stim1&lt;/del&gt;.png|668px|266x]]&lt;/div&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt;+&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;[[File:&lt;ins class=&quot;diffchange diffchange-inline&quot;&gt;DocsSectionsExampleSpellerPart3_Stim1&lt;/ins&gt;.png|668px|266x]]&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt; &lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt; &lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt; &lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;''Figure 3'':&amp;lt;em&amp;gt; Actions sheet of the speller_train table&amp;lt;/em&amp;gt;&lt;/div&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt; &lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;''Figure 3'':&amp;lt;em&amp;gt; Actions sheet of the speller_train table&amp;lt;/em&amp;gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt; &lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt; &lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt;−&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;[[File:&lt;del class=&quot;diffchange diffchange-inline&quot;&gt;DocsSectionsExampleSpellerPart3_stim2_2&lt;/del&gt;.png|529px|406x]]&lt;/div&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt;+&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;[[File:&lt;ins class=&quot;diffchange diffchange-inline&quot;&gt;DocsSectionsExampleSpellerPart3_Stim2_2&lt;/ins&gt;.png|529px|406x]]&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt; &lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt; &lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt; &lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;''Figure 4: Actions sheet of the speller_common table''&lt;/div&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt; &lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;''Figure 4: Actions sheet of the speller_common table''&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;/table&gt;</summary>
		<author><name>Wiki-admin</name></author>
	</entry>
	<entry>
		<id>http://tsgdoc.socsci.ru.nl/index.php?title=BrainStreamExampleSpellerPart3&amp;diff=4630&amp;oldid=prev</id>
		<title>Wiki-admin: Created page with &quot;= Example 2: Visual speller = __TOC__ = Part 3 =  &amp;lt;- Go back to Part 2 - Continue with Part 4 -&amp;gt;  I...&quot;</title>
		<link rel="alternate" type="text/html" href="http://tsgdoc.socsci.ru.nl/index.php?title=BrainStreamExampleSpellerPart3&amp;diff=4630&amp;oldid=prev"/>
		<updated>2018-10-04T13:18:51Z</updated>

		<summary type="html">&lt;p&gt;Created page with &amp;quot;= Example 2: Visual speller = __TOC__ = Part 3 =  &lt;a href=&quot;/index.php/BrainStreamExampleSpellerPart2&quot; title=&quot;BrainStreamExampleSpellerPart2&quot;&gt;&amp;lt;- Go back to Part 2&lt;/a&gt; - &lt;a href=&quot;/index.php/BrainStreamExampleSpellerPart4&quot; title=&quot;BrainStreamExampleSpellerPart4&quot;&gt;Continue with Part 4 -&amp;gt;&lt;/a&gt;  I...&amp;quot;&lt;/p&gt;
&lt;p&gt;&lt;b&gt;New page&lt;/b&gt;&lt;/p&gt;&lt;div&gt;= Example 2: Visual speller =&lt;br /&gt;
__TOC__&lt;br /&gt;
= Part 3 =&lt;br /&gt;
&lt;br /&gt;
[[BrainStreamExampleSpellerPart2|&amp;amp;lt;- Go back to Part 2]] - [[BrainStreamExampleSpellerPart4|Continue with Part 4 -&amp;amp;gt;]]&lt;br /&gt;
&lt;br /&gt;
In the previous parts of this visual speller example, all actions were executed by the BrainStream Matlab session. In this section, we will describe how to enable [[BrainStreamParallelMode|parallel processing]]. All actions related to stimulus presentation will be handled by a [[BrainStreamParallelMode#SecClients|client]].&lt;br /&gt;
&lt;br /&gt;
Below, the new flowcharts of the experiment are shown. Actions indicated in orange are executed at the BrainStream Matlab session, whereas actions indicated in blue are executed at the client.&lt;br /&gt;
&lt;br /&gt;
[[File:DocsSectionsExampleSpellerPart3_Flowchart_main_4.png|672px|331x]]&lt;br /&gt;
&lt;br /&gt;
''Figure 1: Main flowchart. In the stimulus presentation import-table, actions are defined for the BrainStream Matlab session as well as the client (see Figure 2).''&lt;br /&gt;
&lt;br /&gt;
At the start of the experiment, the speller is intialized on the client. The client then sends a marker to BrainStream to trigger the initTrain function. The advantage of this construction is that you are always sure that the stimulus client is correctly initialized before the actual experiment starts.&lt;br /&gt;
&lt;br /&gt;
[[File:DocsSectionsExampleSpellerPart3_Flowchart_plugin_3.png|745px|315x]]&lt;br /&gt;
&lt;br /&gt;
''Figure 2: Import-table flowchart''&lt;br /&gt;
&lt;br /&gt;
In the import-table flowchart you can see why it is advantageous to use parallel processing: if the action of updating the codebook (at the BrainStream session) is delayed or takes more than 0.07 seconds, the duration of the stimulus (at the client) is not affected.&lt;br /&gt;
&lt;br /&gt;
In order to build this experiment, we first need to indicate that we want to use parallel processing and define the client. This can be done in the block file speller_common.blk:&lt;br /&gt;
&amp;lt;pre&amp;gt;[RunMode]&lt;br /&gt;
Parallel=1;&lt;br /&gt;
&lt;br /&gt;
[Clients]&lt;br /&gt;
stim = 'localhost';&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Thus, the name of the client is 'stim'. Furthermore, 'stim' is an [[BrainStreamParallelMode#SecClients|internal client]] of type 'localhost'. This means that in order to run the experiment, we must start a second Matlab session manually and connect this session to the BrainStream session by typing the command &amp;lt;tt&amp;gt;connect_brainstream_client('localhost')&amp;lt;/tt&amp;gt; in the client's command window.&lt;br /&gt;
&lt;br /&gt;
Now that we have specified the client in the block file, we can direct the execution of any action to this client. We can do this by specifying the name of the client in the 'client' column of the Actions table:&lt;br /&gt;
&lt;br /&gt;
[[File:DocsSectionsExampleSpellerPart3_stim1.png|668px|266x]]&lt;br /&gt;
&lt;br /&gt;
''Figure 3'':&amp;lt;em&amp;gt; Actions sheet of the speller_train table&amp;lt;/em&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[File:DocsSectionsExampleSpellerPart3_stim2_2.png|529px|406x]]&lt;br /&gt;
&lt;br /&gt;
''Figure 4: Actions sheet of the speller_common table''&lt;br /&gt;
== Evaluation ==&lt;br /&gt;
&lt;br /&gt;
---&lt;br /&gt;
&lt;br /&gt;
[[BrainStreamExampleSpellerPart2|&amp;amp;lt;- Go back to Part 2]] - [[BrainStreamExampleSpellerPart4|Continue with Part 4 -&amp;amp;gt;]]&lt;/div&gt;</summary>
		<author><name>Wiki-admin</name></author>
	</entry>
</feed>