Why do I get an error when I use the GAMMAINC function with complex input in MATLAB 7.8 (R2009a)?

2 次查看(过去 30 天)
I am trying to use the GAMMAINC function with complex input but receive an error. In MATLAB 7.7 (R2008b) I received a different output.
Reproduction steps:The GAMMAINC command behaves differently in MATLAB 7.7 (R2008b) and MATLAB 7.8 (R2009a):
In MATLAB 7.8 (R2009a) when running the following code:
gammainc(2+5i,2)
I receive the following error:
ERROR: ??? Error using ==> gammainc
Inputs must be real, full, and double or
single.
In MATLAB 7.7 (R2008b) I got the following results:
ans =
1

采纳的回答

MathWorks Support Team
编辑:MathWorks Support Team 2021-10-18
This is the expected behavior in MATLAB 7.8 (R2009a).
As per the documentation for the GAMMAINC function in MATLAB 7.8 (R2009a) , the function is not intended to work with complex inputs. The fact that that worked in MATLAB 7.7 (R2008b) was unintentional. In the latest version of MATLAB, hard error checking has been added and the error message is intended.
In earlier versions if you were getting answers that were satisfactory, a workaround would be to make a local copy of the code from the earlier version. However, note that this is not supported.

更多回答(1 个)

Karan Gill
Karan Gill 2016-4-28
编辑:MathWorks Support Team 2021-11-4
If you have the Symbolic Math Toolbox, use igamma.
>> igamma(1,1+1i) ans = 0.1988 - 0.3096i

类别

Help CenterFile Exchange 中查找有关 Matrix Indexing 的更多信息

标签

尚未输入任何标签。

产品


版本

R2009a

Community Treasure Hunt

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

Start Hunting!

Translated by