0

次のコード行があります

arg1 = ( x<=a ).*(log(x)) + ( x>a).*(log(2*a-x));
num = sinh(arg1);
den = const + cosh(arg1);
re = num./den + const2;
re1 = ;

ただしre、log は 0 で爆発するため、x=0 では定義されていません。ただし、re には const3 として定義される 0 での制限値があります。

re1x=0 のときはasconst3が、x>0 のときは re が欲しい。ピースワイズを次のように使用してみました

re1:= piecewise([x = 0, const3],[ x>0, re]);

しかし、これはうまくいきません。re1エラー「型の入力引数の関数またはメソッドが定義されていませんchar

望ましい結果を得るにはどうすればよいですか?

4

2 に答える 2

0

論理インデックスを使用するだけです。

re1 = re;
re1(x == 0) = const3;

そして、おそらく「不可能」ですが、私の経験では、これも行うのが良い考えであることがわかります。

re1(x >= 2*a) = const3;
于 2013-06-19T07:36:59.157 に答える