> % Cripple Pachebel's Canon on Matlab% Have funfs = 44100; % sample ratedt = 1/fs;T16 = 0
125;t16 = [0:dt:T16];[temp k] = size(t16);t4 = linspace(0,4*T16,4*k);t8 = linspace(0,2*T16,2*k);[temp i] = size(t4);[temp j] = size(t8);% Modification functionsmod4 = sin(pi*t4/t4(end));mod8 = sin(pi*t8/t8(end));mod16 = sin(pi*t16/t16(end));f0 = 2*146
8; % reference frequencyScaleTable = [2/3 3/4 5/6 15/16
1 9/8 5/4 4/3 3/2 5/3 9/5 15/8
2 9/4 5/2 8/3 3 10/3 15/4 4
1/2 9/16 5/8];% 1/4 notesdo0f = mod4
*cos(2*pi*ScaleTable(21)*f0*t4);re0f = mod4
*cos(2*pi*ScaleTable(22)*f0*t4);mi0f = mod4
*cos(2*pi*ScaleTable(23)*f0*t4); fa0f = mod4
*cos(2*pi*ScaleTable(1)*f0*t4);so0f = mod4
*cos(2*pi*ScaleTable(2)*f0*t4);la0f = mod4
*cos(2*pi*ScaleTable(3)*f0*t4);ti0f = mod4
*cos(2*pi*ScaleTable(4)*f0