編集するデータを取り​込むことはできたので​すが,そのあとのコマ​ンド入力の方法や操作​が分からなくて困って​います.

2 ビュー (過去 30 日間)
富田
富田 2025 年 9 月 17 日
回答済み: Kojiro Saito 2025 年 9 月 17 日
>> T = 0.002; % サンプル周期
L = 1001; % 信号のポイント数(時間じゃないので注意!)
t = (0:L-1)*T; % 時間ベクトル
Y = fft(sum);
P2 = abs(Y/L);
P1 = P2(1:L/2+1);
P1(2:end-1) = 2*P1(2:end-1);
Fs = 1/T;
F = Fs*(0:(L/2))/L;
plot(F,P1);
次を使用中のエラー: sum
入力引数が不足しています。

回答 (1 件)

Kojiro Saito
Kojiro Saito 2025 年 9 月 17 日
sum は足し算をおこなう関数なのでsum(t) などのように「足し算したい配列」を入れる必要があります。
ただ、fft で信号をフーリエ変換したいのかなと思いますので、fft のドキュメントにある例のように、信号データを入力に入れる必要があります。sum で何かの信号を足し算をしたかったのかなと思いますが、下記のサンプルでは50Hz の信号S にフーリエ変換をする例をお示しします。
T = 0.002; % サンプル周期
L = 1001; % 信号のポイント数(時間じゃないので注意!)
t = (0:L-1)*T; % 時間ベクトル
S = sin(2*pi*50*t); % 50Hzの信号
Y = fft(S);
P2 = abs(Y/L);
P1 = P2(1:L/2+1);
Warning: Integer operands are required for colon operator when used as index.
P1(2:end-1) = 2*P1(2:end-1);
Fs = 1/T;
F = Fs*(0:(L/2))/L;
plot(F,P1);

カテゴリ

Help Center および File Exchangeフーリエ解析とフィルター処理 についてさらに検索

タグ

製品

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!