function [matrix, matrixInfo] = pam40cdi
%PAM40CDI substitution matrix in 1/10 Bit Units, 
%   Expected score = -21.3, Entropy = 2.26 bits
%   Lowest score = -74, Highest score = 64
%
%   Order:
%   A  R  N  D  C  Q  E  G  H  I  L  K  M  F  P  S  T  W  Y  V  B  Z  X  *
%
%   [MATRIX,MATRIXINFO] = PAM40CDI returns a structure of information about
%   the matrix with fields Name, Scale, Entropy, ExpectedScore, LowestScore,
%   HighestScore and Order.

% Source:  ftp://ftp.ncbi.nih.gov/blast/matrices/
%   $Revision: 1.5 $ 

matrix = [...
   28 -30 -14 -13 -28 -17  -8  -5 -31 -19 -27 -29 -20 -37  -4   1   0 -59 -34  -8 -14 -12 -13 -74;...
  -30  41 -23 -43 -35  -5 -38 -41  -4 -23 -38   5 -17 -42 -15 -12 -27  -6 -45 -33 -30 -15 -23 -74;...
  -14 -23  36  10 -47 -14  -7 -12   4 -22 -31  -2 -37 -38 -24   2  -6 -36 -19 -33  28 -10 -14 -74;...
  -13 -43  10  37 -62  -8  15 -13 -15 -32 -54 -18 -47 -64 -33 -14 -19 -67 -49 -35  29   8 -23 -74;...
  -28 -35 -47 -62  47 -61 -62 -41 -33 -27 -66 -62 -59 -56 -35 -11 -34 -70 -16 -25 -53 -62 -39 -74;...
  -17  -5 -14  -8 -61  40   8 -30   7 -33 -21 -10 -16 -57 -11 -22 -23 -56 -51 -29 -10  30 -19 -74;...
   -8 -38  -7  15 -62   8  36 -17 -20 -24 -41 -18 -30 -62 -23 -18 -25 -74 -38 -28   8  29 -20 -74;...
   -5 -41 -12 -13 -41 -30 -17  31 -38 -46 -47 -31 -37 -41 -26  -5 -24 -67 -60 -24 -12 -21 -22 -74;...
  -31  -4   4 -15 -33   7 -20 -38  44 -39 -26 -25 -44 -25 -17 -25 -31 -32 -13 -28  -3  -2 -21 -74;...
  -19 -23 -22 -32 -27 -33 -24 -46 -39  40  -3 -26   0  -8 -37 -29  -9 -60 -26  12 -26 -27 -20 -74;...
  -27 -38 -31 -54 -66 -21 -41 -47 -26  -3  33 -36   6  -9 -31 -36 -29 -26 -29  -8 -39 -29 -26 -74;...
  -29   5  -2 -18 -62 -10 -18 -31 -25 -26 -36  32  -5 -61 -28 -16 -12 -51 -42 -39  -9 -14 -22 -74;...
  -20 -17 -37 -47 -59 -16 -30 -37 -44   0   6  -5  54 -16 -35 -23 -16 -55 -48  -3 -41 -22 -21 -74;...
  -37 -42 -38 -64 -56 -57 -62 -41 -25  -8  -9 -61 -16  43 -44 -28 -38 -18  12 -33 -47 -60 -34 -74;...
   -4 -15 -24 -33 -35 -11 -23 -26 -17 -37 -31 -28 -35 -44  39  -5 -17 -60 -59 -24 -28 -16 -21 -74;...
    1 -12   2 -14 -11 -22 -18  -5 -25 -29 -36 -16 -23 -28  -5  30   4 -22 -30 -26  -5 -19 -12 -74;...
    0 -27  -6 -19 -34 -23 -25 -24 -31  -9 -29 -12 -16 -38 -17   4  34 -56 -28 -10 -12 -24 -15 -74;...
  -59  -6 -36 -67 -70 -56 -74 -67 -32 -60 -26 -51 -55 -18 -60 -22 -56  64 -21 -68 -45 -63 -47 -74;...
  -34 -45 -19 -49 -16 -51 -38 -60 -13 -26 -29 -42 -48  12 -59 -30 -28 -21  48 -32 -28 -42 -33 -74;...
   -8 -33 -33 -35 -25 -29 -28 -24 -28  12  -8 -39  -3 -33 -24 -26 -10 -68 -32  34 -34 -28 -19 -74;...
  -14 -30  28  29 -53 -10   8 -12  -3 -26 -39  -9 -41 -47 -28  -5 -12 -45 -28 -34  29   3 -19 -74;...
  -12 -15 -10   8 -62  30  29 -21  -2 -27 -29 -14 -22 -60 -16 -19 -24 -63 -42 -28   3  30 -20 -74;...
  -13 -23 -14 -23 -39 -19 -20 -22 -21 -20 -26 -22 -21 -34 -21 -12 -15 -47 -33 -19 -19 -20 -21 -74;...
  -74 -74 -74 -74 -74 -74 -74 -74 -74 -74 -74 -74 -74 -74 -74 -74 -74 -74 -74 -74 -74 -74 -74   1;...
    ];

if nargout >1
    matrixInfo.Name = 'PAM40CDI';
    matrixInfo.Scale = 0.1;
    matrixInfo.Entropy = 2.26 ;
    matrixInfo.ExpectedScore = -21.3;
    matrixInfo.LowestScore = -74;
    matrixInfo.HighestScore = 64;
    matrixInfo.Order = 'ARNDCQEGHILKMFPSTWYVBZX*';
end

