# Pink on LCD screens, how is it possible? [closed]

On the LCD screens a flash makes 2 strips of color, 2 strips of white light, and a rainbow colored strip. This latest has weirdly a pink color in it. How is it possible? The pink color is not part of the rainbow.

• Welcome to Physics SE. What is your question?
– user130529
Jan 26, 2017 at 16:57
• It would be helpful to state the model of your phone. Does this behaviour persist if you use a CD as a grating to diffract the light from your phone's flash/flashlight? Jan 26, 2017 at 17:01
• It happens with both of iphone 6 and galaxy s6 and the tv is samsung uhd smart tv
– Kush
Jan 26, 2017 at 17:06
• Just found you can also see little nit pink on iphone 6 screen glare
– Kush
Jan 26, 2017 at 17:10
• Duplicate? physics.stackexchange.com/q/167892 Jan 26, 2017 at 17:16

When white light is diffracted by a grating, every color gets its own spatial frequency. As soon as you are more than a small distance from the optical axis (where you have a white maximum), you will start to see the effect of multiple colors overlapping. This is further exacerbated by having an extended source - imperfectly collimated light will "smear" the light more.

The result of all this is that you will see not simply the colors of the rainbow, but mixed colors. This is actually something that can be computed with a few lines of code. You can then convert the wavelength intensities to RGB values using conversion utilities available online (for example, see spectrumRGB.m). The result (a bit of a hack... someone might want to do this more carefully):

But while this shows what the RGB components may look like, it doesn't really tell you what your eyes would see. But this next plot does...:

As you can see - the "pink" color you see can be arrived at with this simple calculation. Matlab code that I used for this:

% white light diffraction exercise
% assume diffraction pattern of the form I = cos^2( k x / lambda)
N = 400;
% for lambda = 400 nm, assume 4 complete cycles
lambda_0 = 400;
k = lambda_0/2;
I = zeros(3,N);
x = linspace(0,8*pi, N);

for lambda = 400:800
rgb = spectrumRGB(lambda);
I0 = cos(k*x/lambda).^2;
I = I + rgb(:) * I0;
end

%%
I = I / max(I(:));

figure
image('cdata', repmat(reshape(I', [N 1 3]),[1 10 1]))
axis off

%%
figure
plot(I(1,:),'r')
hold on
plot(I(2,:),'g')
plot(I(3,:),'b')
title 'RGB values of diffracted white light'
xlabel 'angle (arb units)'
ylabel 'intensity (arb units)'