function Y = ConeResponse(X) wl_r = 700; wl_g = 510; wl_b = 440; wl = [wl_r; wl_g; wl_b]; mu_s = 445; mu_m = 545; mu_l = 575; sig_s = 20; sig_m = 40; sig_l = 45; s = gauss(wl,mu_s,sig_s)/gauss(mu_s,mu_s,sig_s); m = gauss(wl,mu_m,sig_m)/gauss(mu_m,mu_m,sig_m); l = gauss(wl,mu_l,sig_l)/gauss(mu_l,mu_l,sig_l); S = X'*s; M = X'*m; L = X'*l; Y = [L, M, S]'; % % close all % hold on % plot(lam,s,'b') % plot(lam,m,'g') % plot(lam,l,'r') % hold off