function [h p]=circleOfFifths()
% circleofFifths <Plot the circle of 5ths(o)/4ths(*)/equal(^)>
% Usage:: [h]=CircleOfFifths(null)
%

% revision history:
% 06/06/02 Mark D. Shattuck <mds> circleofFifths.m

%% Main
c5=3.^(0:12);
p5=sort(c5./2.^floor(log2(c5)));
p4=sort(2.^-floor(log2(1./c5))./c5);
pe=2.^((0:12)/12);
pR=(19/18).^(0:12);
h=plot(sin(2*pi*log2([p5;p4;pe;pR]))',cos(2*pi*log2([p5;p4;pe;pR]))','o-'); 
axis('equal'); 
text(1.15*sin(2*pi*log2(pe(1:end-1))),1.15*cos(2*pi*log2(pe(1:end-1))),{'C','C+','D','D+','E','F','F+','G','G+','A','A+','B'},'horizontalAlignment','center'); axis(1.25*[-1 1 -1 1]); 
set(h(1),'marker','o'); % 5ths exact
set(h(2),'marker','*'); % 4ths exact
set(h(3),'marker','^'); % equal tempered
set(h(4),'marker','square'); % equal tempered
set(h,'markersize',10);
p=[p5;p4;pe;pR];



