if ((nargin < 6) | (nargin > 8)) help findintconvo error ('Incorrect number of input arguments.'); end
NumEvenTimes = length(ts_even); NumFrames = length(midftimes); fstart = midftimes - (flengths / 2); TableSize = length (k2_lookup); integrand = zeros (NumFrames, 1); if (nargin >= 6); int1 = zeros (1, TableSize); end; if (nargin >= 7); int2 = zeros (1, TableSize); end; if (nargin == 8); int3 = zeros (1, TableSize); end; % if w1 is empty, assume that it should be all ones if isempty (w1) w1 = ones (size(NumFrames)); end
for i = 1:TableSize fprintf('.') exp_fun = exp(-k2_lookup(i) * ts_even); convo = nconv(Ca_even, exp_fun, ts_even(2) - ts_even(1)); integrand = nframeint (ts_even, convo(1:length(ts_even)),... fstart, flengths); % w1 given? if (nargin >= 6) int1 (i) = ntrapz(midftimes, (w1 .* integrand)); end % w2 given? if (nargin >= 7) int2 (i) = ntrapz(midftimes, (w2 .* integrand)); end % w3 given? if (nargin == 8) int3 (i) = ntrapz(midftimes, (w3 .* integrand)); end end