Ich habe eine funktionierende Matlab/Oktave m Datei, aber wenn ich die M Datei in eine Funktion umwandle und laufe bekomme ich einen Fehler in der Funktion 'Funktionsname' undefiniert nahe Zeile 7 Spalte 16.Permutationsfunktion in Matlab/Oktave
Siehe workng M-Datei unter:
clear all, clc,clf,tic
fs=360;
t=linspace(0,2*pi,fs);
y=sinc(t*1);
sigarray=y;
fs=length(sigarray);
aa_sig_combined_L=zeros(1,length(fs)); %need to reset or will get noise at the end
a_L=zeros(1,length(sigarray));
cycle_permute_lt = @(sigarray, k) [sigarray(mod((1:end)+k-1, end)+1)];
array_phase_shift_div_num=360/mod(180,360) %keep at 360 to get correct deg angles
array_phase_shift=round(fs/array_phase_shift_div_num) %will keep within 360 degs
for ii=0:1:fs
a_L=cycle_permute_lt(sigarray, ii+array_phase_shift);
aa_sig_combined_L = aa_sig_combined_L + a_L;
end;
array_shifted=aa_sig_combined_L;
subplot(2,1,1),plot(t,y),
title('original')
subplot(2,1,2),plot(t,aa_sig_combined_L)
str_title='aa_sig_combined_L';
title(str_title,'Interpreter','none') %turns of latex interperter so I can use underscores my way
Siehe M-Datei und Funktion unter dem erstellt funktioniert nicht, wenn
zugegriffenclear all, clc,clf,tic
fs=360;
t=linspace(0,2*pi,fs);
y=sinc(t*1);
sigarray=y;
[array_shifted]=rtpsa(y,180)
Funktion unter:
function [array_shifted]=rtpsa(sigarray,deg_to_shift)
fs=length(sigarray)
aa_sig_combined_L=zeros(1,length(fs)); %need to reset or will get noise at the end
a_L=zeros(1,length(sigarray));
cycle_permute_lt = @(sigarray, k) [sigarray(mod((1:end)+k-1, end)+1)];
array_phase_shift_div_num=360/mod(deg_to_shift,360) %keep at 360 to get correct deg angles
array_phase_shift=round(fs/array_phase_shift_div_num) %will keep within 360 degs
for ii=0:1:fs
a_L=cycle_permute_lt(sigarray, ii+array_phase_shift);
aa_sig_combined_L = aa_sig_combined_L + a_L;
end;
array_shifted=aa_sig_combined_L;
end;
Ich verwende Oktave Version 3.2.4 und Ubuntu 10.04 Linux
vielleicht sollten Sie den Titel dieses Beitrags zu '‚Funktionsname‘in octave' undefined ändern, wie die Natur dieses Problem nichts mit der permute Funktion zu tun hat. – zeffii