File: ComputeGammaExtP.m

package info (click to toggle)
psychtoolbox-3 3.0.9%2Bsvn2579.dfsg1-1
  • links: PTS, VCS
  • area: main
  • in suites: wheezy
  • size: 63,408 kB
  • sloc: ansic: 73,310; cpp: 11,139; objc: 3,129; sh: 1,669; python: 382; php: 272; makefile: 172; java: 113
file content (37 lines) | stat: -rwxr-xr-x 904 bytes parent folder | download | duplicates (4)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
function output = ComputeGammaExpP(x,input)
% output = ComputeGammaExpP(x,input)
%
% Compute the gamma table using an extended power function.
% See Brainard, Pelli, & Robson (2001).
%
% Largest value in input must be the maximum device
% setting.  This is wise during measurements in 
% any case.
%
% 9/21/93  dhb,ccc  Added checks for parameter bounds.
% 10/3/93  dhb,jms  Normalize output to max of 1.
%                   Better be sure that last value is max setting.
% 8/7/00   dhb      Rewrote equation this uses completely.

thePow = x(1);
theOffset = x(2);

maxInput = max(input);
minPow = 1e-5;
if (thePow < minPow)
  thePow = minPow;
end
if (theOffset < 0)
	theOffset = 0;
end
if (theOffset > maxInput)
	theOffset = maxInput;
end

output = zeros(size(input));
index = find(input > theOffset);
if (~isempty(index))
	output(index) = ((input(index)-theOffset)/(maxInput-theOffset)).^thePow;
end