在以下代码中,我需要 mydata 数组中的 1万样本。我不知道我从 mydata 中得到了什么。我是否必须增加 t 的范围才能实现这一目标。如何将 mydata 中的数据用于另一个.m文件以进行进一步处理。
t = [ 1 : 1 : 500]; % Time Samples
f1=10000; % Input Signal Frequency
f2=20000;
f3=30000;
f4=f2+f3;
f5=f1+f3;
f6=f4+f2;
f7=f1+f6;
f8=45000;
f9=55000;
f10=35000;
mydata=[1:100000];
Fs = 100000; % Sampling Frequency
for i=1:100000
if(i<=10000)
mydata = sin(2*pi*f1/Fs*t);
elseif((i>10000)&&(i<=20000))
mydata=sin(2*pi*f2/Fs*t);
elseif((i>20000)&&(i<=30000))
mydata=sin(2*pi*f3/Fs*t);
elseif((i>30000)&&(i<=40000))
mydata=sin(2*pi*f4/Fs*t);
elseif((i>40000)&&(i<=50000))
mydata=sin(2*pi*f5/Fs*t);
elseif((i>50000)&&(i<=60000))
mydata=sin(2*pi*f6/Fs*t);
elseif((i>60000)&&(i<=70000))
mydata=sin(2*pi*f7/Fs*t);
elseif((i>70000)&&(i<=80000))
mydata=sin(2*pi*f8/Fs*t);
elseif((i>80000)&&(i<=90000))
mydata=sin(2*pi*f9/Fs*t);
elseif((i>90000)&&(i<=100000))
mydata=sin(2*pi*f10/Fs*t);
end
end
stem(mydata)
答案 0 :(得分:2)
你的代码做得不多;你知道吗,对吗? 如果我们不知道/了解你想要什么,我们就无法帮助..
以及其他任何人:1万卢比= 100 000(http://en.wikipedia.org/wiki/Lakh)
编辑:您是否正在尝试生成包含来自不同正弦波的固定点数的100000个样本数组?又名:
[sin(1.0*pi*[0:10]) sin(2.0*pi*[0:10] sin(1.5*pi*[0:10] (etc) ]
edit2:您重复了之前的问题(已经回答过):How can I generate a sine wave with different frequencies using matlab?
答案 1 :(得分:0)
我无法理解你想用mydata做什么,请更具体一点,因为你的代码错了,我无法想象你想要创造什么。
对于将数据用于其他脚本的问题,一个简单的方法就是将mydata写入光盘,
在您的脚本上执行操作:
save path_for_mydata/file_name.mat mydata
另一个剧本:
load path_formydata/file_name.mat
另一种方法是创建一个函数,并将其作为参数传递。
最后,您可以运行第一个脚本,然后运行命令行上的第二个脚本,或者调用这两个脚本的第三个脚本,第一个脚本中的参数将保存在瞬态内存中,而第二个脚本运行