特定のしきい値 d/2 内で ds 間隔の x 値を選択するコードのセクションがあります。これは最も効率的な方法ではないかもしれませんが、私がここで持ち出している時折のバグを除けば、問題なく動作するので、この方法論はそのままにしておきたいと思います。ただし、MATLAB は、このコードによって作成されたベクトルから上のエンドポイントを切り落としているようです。私の推測では、ある種の丸め誤差があり、上限に達していません。d と ds の値が異なる (ただし大きさは同じ) 場合でも問題なく動作します。
d=250e-9;
ds=1e-9;
xlim=0;
while xlim < ((d/2)-ds)
xlim = xlim + ds;
end;
disp(xlim);
xlim は 1.25e-7 として返されます。それで、
xrel = -xlim:ds:xlim
これは、-1.25e-7 で始まり 1.24e-7 で終わる xrel を表示します。ちなみに、正確に 250 の値があります (後のコードでは、これは奇数値であると見なしています)。回避策に関するアイデアはありますか?ありがとう!