Why this ERROR is coming

1 回表示 (過去 30 日間)
MINATI
MINATI 2019 年 4 月 30 日
コメント済み: Torsten 2019 年 4 月 30 日
M=1;Kp=100;
P2=M+(1/Kp);P3=P2+1i*w;
U7=exp(y*sqrt(P3)).*(1-erf(y/(2*sqrt(t))+ sqrt(P3*t)));
Error using erf (error function)
Input must be real and full.
Error in
U7=exp(y*sqrt(P3)).*(1-erf(y/(2*sqrt(t))+ sqrt(P3*t)));
  8 件のコメント
Walter Roberson
Walter Roberson 2019 年 4 月 30 日
There is a way you can get around the restriction. If you use the symbolic toolbox, then the erf() function for it accepts complex inputs. To use the symbolic toolbox, at least part of the expression needs to be symbolic. For example if instead of sqrt(P3*t) you used sym(sqrt(P3*t)) then that would be enough. The result of the erf would be symbolic, so you would probably want to double() it.
Torsten
Torsten 2019 年 4 月 30 日
Or maybe another alternative:
https://de.mathworks.com/matlabcentral/fileexchange/18312-error-function-of-complex-numbers

サインインしてコメントする。

回答 (0 件)

カテゴリ

Help Center および File ExchangeAssumptions についてさらに検索

Community Treasure Hunt

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

Start Hunting!

Translated by