## Preparation of class about the genetic code

Replication of the calculation in HaigHurst91:

cd geneticcode

>> MS0=NaN(10^5,1);
MS_bases=NaN(10^5,3);
for c=1:10^5
codigo_perm=permutacodigo(codigo);
[MS0(c),MS_bases(c,1:3)]=codigo2MS(codigo_perm.codon2aa,codigo.aa_prop(:,1));
if mod(c,10000)==0
fprintf(‘%g,’,c)
end
end
10000,20000,30000,40000,50000,60000,70000,80000,90000,100000,>>
>> [MS0_real,MS_bases_real]=codigo2MS(codigo.codon2aa,codigo.aa_prop(:,1));
>> hist(MS0,100)
>> hold on
>> ejes=axis;
>> plot(MS0_real*[1 1],ejes(3:4),’k’)

Global MS:

First base:

hist(MS_bases(:,1),100)
>> ejes=axis;
>> hold on
>> plot(MS_bases_real(1)*[1 1],ejes(3:4),’k’)

Second base:

hist(MS_bases(:,2),100)
ejes=axis;
hold on
plot(MS_bases_real(2)*[1 1],ejes(3:4),’k’)

Third base:

>> hist(MS_bases(:,3),100)
ejes=axis;
hold on
plot(MS_bases_real(3)*[1 1],ejes(3:4),’k’)

Proportion of single-point mutations that lead to synonymous codons (permutations do not maintain family boxes):

MS0_nobox=NaN(10^4,1);
MS_bases_nobox=NaN(10^4,3);
prop_syn=NaN(10^4,1);
for c=1:10^4
codigo_perm=permutacodigo_noboxes(codigo);
[MS0_nobox(c),MS_bases_nobox(c,1:3),prop_syn(c)]=codigo2MS(codigo_perm.codon2aa,codigo.aa_prop(:,1));
if mod(c,10000)==0
fprintf(‘%g,’,c)
end
end
hist(prop_syn,50)
hold on
ejes=axis;
plot(prop_syn_real*[1 1],ejes(3:4),’k’)
>> set(gca,’FontSize’,15)
>> xlabel(‘Proportion of synonymous single-point mutations’,’FontSize’,15)
>> ylabel(‘Number of cases’,’FontSize’,15)