After creating a spatial frequency tuning calculator instance called spatial_freq_tuning_calc, I ran the following on the command line to get responses according to the Movshon 2005 fit function that includes a constant (in this case -1): r = vis.frequency.movshon2005_func(logspace(-2,log10(60),100),[ 10 5 12 1 -1]);
Then I ran the generate_mock_docs method: [docs, doc_output, doc_expected_output] = spatial_freq_tuning_calc.generate_mock_docs('standard',1,'generate_expected_docs',1);
Then I plotted the responses recorded in docs and compared them to r: figure;semilogx(logspace(-2,log10(60),100),docs{1, 1}{1, 6}.document_properties.stimulus_response_scalar.responses.response_real(1:100));hold on;semilogx(logspace(-2,log10(60),100),r,'--')
The function ndi.mock.fun.stimulus_response seems to be constraining the responses it records in docs, such that they can never go below 0.
Yes, right now it can only produce positive values. The way to do this would be to introduce spontaneous activity. I will assign myself to this. In the meantime, you can proceed with the other calculators. Good find!
After creating a spatial frequency tuning calculator instance called
spatial_freq_tuning_calc
, I ran the following on the command line to get responses according to the Movshon 2005 fit function that includes a constant (in this case -1):r = vis.frequency.movshon2005_func(logspace(-2,log10(60),100),[ 10 5 12 1 -1]);
Then I ran the generate_mock_docs method:[docs, doc_output, doc_expected_output] = spatial_freq_tuning_calc.generate_mock_docs('standard',1,'generate_expected_docs',1);
Then I plotted the responses recorded in docs and compared them to r:figure;semilogx(logspace(-2,log10(60),100),docs{1, 1}{1, 6}.document_properties.stimulus_response_scalar.responses.response_real(1:100));hold on;semilogx(logspace(-2,log10(60),100),r,'--')
The function ndi.mock.fun.stimulus_response seems to be constraining the responses it records in docs, such that they can never go below 0.