0

方程式は次のとおりです。

ここに画像の説明を入力してください

ここで、、aおよびbは定数であり、両方とも等しい0.0130

これは私が使用しているコードです:

% Solving the equation for zero.
f = @(theta) ((a+b).*theta)./((theta.^2)-(a.*b)) - tan(theta);  % Notice the dots (.)

% Now plot it to get an idea of where the zeros are.
theta = 0:1:100;
for i=1:length(theta)
    hold on
    plot(theta(i),f(theta(i)),'-o')  % Look for the zeros
end

% Now find the roots.
cnt = 1;
for ii = [0,2,50]  % This vector has the guesses.
    rt(cnt) = fzero(f,ii); % Pass each guess to FZERO.
    cnt = cnt + 1;
end

これは私が得るエラーです:

??? Operands to the || and && operators must be convertible to
logical scalar values.

Error in ==> fzero at 323
    elseif ~isfinite(fx) || ~isreal(fx)

Error in ==> HW4 at 52
    rt(cnt) = fzero(f,ii); % Pass each guess to FZERO.

\thetaの最初の解を取得したいと思います。ありがとう。

4

1 に答える 1

0

このコードはエラーなしで機能します(aとbの代わりに値0.0130を記述しました)。コードで他の変数名を使用していないこと、またはいくつかの変数をクリアしていないことを確認してください...

于 2012-10-30T22:54:06.430 に答える