From dac8dc4f73c315d373649eeefb37bd4e5c6362da Mon Sep 17 00:00:00 2001 From: ian Date: Thu, 3 Mar 2016 20:19:37 -0800 Subject: [PATCH 1/3] updated multiplication experiment --- multiplication/config.json | 1 + multiplication/experiment.js | 45 ++++++++++++++++++++++++------------ 2 files changed, 31 insertions(+), 15 deletions(-) diff --git a/multiplication/config.json b/multiplication/config.json index 9679b2de0..333544ec3 100644 --- a/multiplication/config.json +++ b/multiplication/config.json @@ -9,6 +9,7 @@ "static/js/jspsych/poldrack_plugins/jspsych-poldrack-instructions.js", "static/js/jspsych/poldrack_plugins/jspsych-attention-check.js", "static/js/jspsych/poldrack_plugins/jspsych-single-stim-button.js", + "static/js/jspsych/plugins/jspsych-call-function.js", "experiment.js", "static/css/jspsych.css", "static/css/default_style.css" diff --git a/multiplication/experiment.js b/multiplication/experiment.js index 07b219e8e..5c83f489e 100644 --- a/multiplication/experiment.js +++ b/multiplication/experiment.js @@ -28,11 +28,11 @@ var randomDraw = function(lst) { var getStim = function() { response = 0 - num1 = Math.floor(Math.random() * 99) + 1 - num2 = Math.floor(Math.random() * 99) + 1 + num1 = Math.floor(Math.random() * 89) + 10 + num2 = Math.floor(Math.random() * 89) + 10 answer = num1 * num2 var text = '
' + num1 + ' * ' + num2 + - ' =


' + ' =

' return text } var submit = function() { @@ -52,14 +52,15 @@ var num1 = '' var num2 = '' var answer = 0 var response = 0 -var response_time = 180000 +var response_time = 60000 var lstep = 5000 var sstep = 1000 var n_large_steps = 50 var n_small_steps = 50 var p = 0.5 // The probability of a correct response for the staircase -var fatigue_time = 45 - +var fatigue_start = 0 +var timelimit = 20 //time for fatigue block +var elapsed = 0 /* ************************************ */ /* Set up jsPsych blocks */ /* ************************************ */ @@ -77,7 +78,6 @@ var feedback_instruct_block = { timing_response: 6000 }; /// This ensures that the subject does not read through the instructions too quickly. If they do it too quickly, then we will go over the loop again. -var instruction_trials = [] var instructions_block = { type: 'poldrack-instructions', data: { @@ -95,11 +95,9 @@ var instructions_block = { }, 1010) } }; -instruction_trials.push(feedback_instruct_block) -instruction_trials.push(instructions_block) var instruction_node = { - timeline: instruction_trials, + timeline: [feedback_instruct_block, instructions_block], /* This function defines stopping criteria */ loop_function: function(data) { for (i = 0; i < data.length; i++) { @@ -220,17 +218,34 @@ var fatigue_block = { } } +var fatigue_node = { + timeline: [fatigue_block], + loop_function: function() { + elapsed = (new Date() - fatigue_start) / 60000 + if (elapsed < timelimit) { + return true; + } else { + return false; + } + } +} +var start_clock_block = { + type: 'call-function', + func: function() { + fatigue_start = new Date() + } +} /* create experiment definition array */ var multiplication_experiment = [] multiplication_experiment.push(instruction_node) -for (var i = 0; i < 2; i++) { //n_large_steps +for (var i = 0; i < n_large_steps; i++) { multiplication_experiment.push(largeStep_block) } -for (var i = 0; i < 2; i++) { //n_small_steps +for (var i = 0; i < n_small_steps; i++) { multiplication_experiment.push(smallStep_block) } -for (var i = 0; i < 2; i++) { //Math.floor(180000 * fatigue_time / response_time) - multiplication_experiment.push(fatigue_block) -} \ No newline at end of file +multiplication_experiment.push(start_clock_block) +multiplication_experiment.push(fatigue_node) +multiplication_experiment.push(end_block) From 7f78dcec4abc32e8f7ff3021a581ebd40614354a Mon Sep 17 00:00:00 2001 From: ian Date: Fri, 4 Mar 2016 13:37:16 -0800 Subject: [PATCH 2/3] updated circle --- circle.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/circle.yml b/circle.yml index 35bec2609..1b7decdde 100644 --- a/circle.yml +++ b/circle.yml @@ -59,7 +59,7 @@ test: - $HOME/miniconda2/bin/python -c "from expfactory.tests import circle_ci_test; circle_ci_test('mindful_attention_awareness','web','.');" - $HOME/miniconda2/bin/python -c "from expfactory.tests import circle_ci_test; circle_ci_test('motor_selective_stop_signal','web','.');" - $HOME/miniconda2/bin/python -c "from expfactory.tests import circle_ci_test; circle_ci_test('mpq_control','web','.');" - - $HOME/miniconda2/bin/python -c "from expfactory.tests import circle_ci_test; circle_ci_test('multiplication','web',pause_time=2000);" + - $HOME/miniconda2/bin/python -c "from expfactory.tests import circle_ci_test; circle_ci_test(experiment_tags='multiplication',web_folder='web',pause_time=2000);" - $HOME/miniconda2/bin/python -c "from expfactory.tests import circle_ci_test; circle_ci_test('multisource','web','.');" - $HOME/miniconda2/bin/python -c "from expfactory.tests import circle_ci_test; circle_ci_test('n_back','web','.');" - $HOME/miniconda2/bin/python -c "from expfactory.tests import circle_ci_test; circle_ci_test('number_letter','web','.');" From 55d380afb9dd2bd4bea445be09fbe588941f09e8 Mon Sep 17 00:00:00 2001 From: ian Date: Fri, 4 Mar 2016 14:15:26 -0800 Subject: [PATCH 3/3] modified circle --- circle.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/circle.yml b/circle.yml index 1b7decdde..20aeb3859 100644 --- a/circle.yml +++ b/circle.yml @@ -59,7 +59,7 @@ test: - $HOME/miniconda2/bin/python -c "from expfactory.tests import circle_ci_test; circle_ci_test('mindful_attention_awareness','web','.');" - $HOME/miniconda2/bin/python -c "from expfactory.tests import circle_ci_test; circle_ci_test('motor_selective_stop_signal','web','.');" - $HOME/miniconda2/bin/python -c "from expfactory.tests import circle_ci_test; circle_ci_test('mpq_control','web','.');" - - $HOME/miniconda2/bin/python -c "from expfactory.tests import circle_ci_test; circle_ci_test(experiment_tags='multiplication',web_folder='web',pause_time=2000);" + - $HOME/miniconda2/bin/python -c "from expfactory.tests import circle_ci_test; circle_ci_test('multiplication','web','.',pause_time=2000);" - $HOME/miniconda2/bin/python -c "from expfactory.tests import circle_ci_test; circle_ci_test('multisource','web','.');" - $HOME/miniconda2/bin/python -c "from expfactory.tests import circle_ci_test; circle_ci_test('n_back','web','.');" - $HOME/miniconda2/bin/python -c "from expfactory.tests import circle_ci_test; circle_ci_test('number_letter','web','.');"