MATLAB Fun​ction ブロック​の使い方について

以下のFunctionをMATLABFunctionとして実装したいと考えています。
このとき計算の結果をyとして出力したいと思うのですが出力yの値が反映されずエラーが出てしまいます。
どのようにすれば解決しますか
エラー内容
関数または変数 'y' が未定義です。ローカル変数への 1 番目の代入は、そのクラスを特定します。
function y = A (u,a,b)
al = u; % input signal [V]
s = a; % bit
F = b; % [V]
L_v = F/2;
for m=1:1:s
if m == 1
Vth = 0;
y(1) = ( sign(al) + 1 ) / 2;
end
if m ~= 1
y(m) = ( sign (al - m ) + 1 ) / 2 ;
end
end

 Akzeptierte Antwort

Hiroumi Mita
Hiroumi Mita am 22 Jun. 2018

1 Stimme

yの配列を確保するため、次のようにソースを変更してもらい、 あとは状況に応じ出てくるエラーをつぶしてください。
function y = A (u,a,b)
al = u; % input signal [V]
s = a; % bit
F = b; % [V]
L_v = F/2;
y=zeros(s,1);%配列確保<-ココ!!
for m=1:1:s
if m == 1
Vth = 0;
y(1) = ( sign(al) + 1 ) / 2;
end
if m ~= 1
y(m) = ( sign (al - m ) + 1 ) / 2 ;
end
end

1 Kommentar

O.E
O.E am 24 Jun. 2018
解決いたしました。ありがとうございます。

Melden Sie sich an, um zu kommentieren.

Weitere Antworten (0)

Kategorien

Mehr zu Author Block Algorithms finden Sie in Hilfe-Center und File Exchange

Gefragt:

O.E
am 22 Jun. 2018

Kommentiert:

O.E
am 24 Jun. 2018

Community Treasure Hunt

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

Start Hunting!