% canonical_loop(n) makes a loop of n RNA bases with canonical base pairs function [Pi] = canonical_loop(n) Pair = ['AU'; 'UA'; 'CG'; 'GC']; % canonical base pairs Freq = [1 1 1 1]/4; % base pair frequencies Loop = ['AAAG'; 'GGGA']; % possible loop ends L = length(Loop(:,1)); % number of possible loops Pi = Loop(rando(ones(L,1)/L),:); % start with a random loop end for i=1:round(n/2), b = rando(Freq); Pi = [Pair(b,1) Pi Pair(b,2)]; % add this pair to front and back of Pi end