function lang_ref
%
% MATLAB function from:
% "Elements of Modern X-ray Physics" by Jens Als-Nielsen and Des McMorrow
%
% Calculates: Reflectivity from a lanngmuir layer
% Data: Langmuir Vol. 10 (1994) 826

axes('position',[0.15 0.20 0.60 0.75])

Q=0:0.01:1;             % wavevector transfer in 1/Angs

%----- (a) pH

rho_hw=2.28;            % density of head group, rho_head/rho_water
rho_tw=1.08;            % density of tail group, rho_tail/rho_water
l_h=6.2;                % length of head  in Angs
l_t=22.0;               % length of tail  in Angs
sigma=1.36;             % roughness in Angs
Qc=0.0217;              % critical Q for water in 1/Angs
mc=0.75;                % monolayer coverage

phi1=Q*(l_h/2+l_t); phi2=Q*(l_h/2);
phi=exp(-Q.^2*sigma^2/2).*(rho_tw*exp(-i*phi1)+...
    (rho_hw-rho_tw)*exp(-i*phi2)-(rho_hw-1)*exp(i*phi2));
R=mc*abs(phi).^2; 
line(Q/Qc,R,'linewidth',1.5)   

data_a=[0.90 1.11;1.20 1.19;1.50 1.35;1.58 1.41;1.88 1.51;2.09 1.60;2.35 1.73;...
2.48 1.82;2.65 1.97;2.86 2.09;3.25 2.17;3.89 2.40;4.27 2.43;4.61 2.33;4.91 2.19;...
5.25 2.03;5.51 1.87;5.94 1.52;6.28 1.25;6.45 1.04;6.79 0.82;7.18 0.58;7.35 0.46;...
7.65 0.31;8.12 0.17;8.54 0.12;9.06 0.19;9.44 0.34;9.70 0.52;10.12 0.92;10.51 1.36;...
10.72 1.81;11.15 2.43;11.53 3.03;11.83 3.38;12.22 3.92;12.52 4.49;12.77 4.97;...
13.20 5.23;13.58 5.66;13.88 5.61;14.18 5.73;14.48 6.02;14.82 5.96;15.04 5.89;...
15.55 5.80;15.89 5.43;16.23 5.00;16.62 4.53;16.96 4.00;17.26 3.65;17.60 3.14;...
17.86 2.78;18.28 2.48;18.54 1.90;18.92 1.86;19.18 1.68;19.57 1.39];
line(data_a(:,1),data_a(:,2),'Marker','square','MarkerSize',8,'linestyle','none')

%----- (b) pH

rho_hw=3.35;            % density of head group, rho_head/rho_water
rho_tw=1.01;            % density of tail group, rho_tail/rho_water
l_h=2.7;                % length of head  in Angs
l_t=23.4;               % length of tail  in Angs
sigma=2.74;             % roughness in Angs
Qc=0.0217;              % critical Q for water in 1/Angs
mc=0.75;                % monolayer coverage

phi1=Q*(l_h/2+l_t); phi2=Q*(l_h/2);
phi=exp(-Q.^2*sigma^2/2).*(rho_tw*exp(-i*phi1)+...
    (rho_hw-rho_tw)*exp(-i*phi2)-(rho_hw-1)*exp(i*phi2));
R=mc*abs(phi).^2; 
line(Q/Qc,R,'linewidth',1.5)   

data_b=[1.03 1.03;1.24 1.17;1.46 1.27;1.88 1.41;2.40 1.54;2.65 1.63;2.95 1.70;...
3.34 1.71;3.64 1.76;4.15 1.76;4.41 1.66;4.67 1.62;5.18 1.47;5.52 1.31;5.69 1.12;...
6.12 1.00;6.51 0.81;6.89 0.60;7.28 0.46;7.49 0.34;7.79 0.23;8.26 0.11;8.56 0.06;...
8.82 0.12;9.25 0.19;9.54 0.34;9.76 0.50;10.10 0.69;10.40 0.90;10.87 1.19;...
11.13 1.44;11.56 1.70;11.94 1.98;12.20 2.13;12.71 2.51;12.93 2.70;13.40 2.62;...
13.57 2.73;14.12 2.79;14.34 2.75;14.81 2.79;15.19 2.86;15.54 2.71;15.88 2.62;...
16.22 2.46;16.69 2.32;17.08 1.78;17.38 1.57;17.76 1.16;18.15 1.36;18.49 0.87;...
18.96 0.79;19.18 1.09;19.56 0.81];
line(data_b(:,1),data_b(:,2),'Marker','diamond',...
   'MarkerSize',8,'MarkerFaceColor','b','linestyle','none')

axis([0 20 0 7])
set(gca,'FontName','Times','FontSize',36,'Xtick',[5 10 15 20 ])
xlabel('Q/Q_c'); ylabel('{\it R}/{\it R_F}','position',[-2.5 3.5 0])
box on; grid on
text(13.5,2.0,'(b)','FontName','Times','FontSize',24)
text(13.5,5.,'(a)','FontName','Times','FontSize',24)
