作业帮 > 综合 > 作业

谁能提供复变量伽马函数的一些函数值?

来源:学生作业帮 编辑:神马作文网作业帮 分类:综合作业 时间:2024/11/16 23:11:18
谁能提供复变量伽马函数的一些函数值?
谁能利用计算软件提供复变量伽马函数Γ(x+yi)的一些函数值?范围是:0<y≤1≤x<2,
(1)最低精度要求:x=1、1.1、1.2、1.3、1.4、1.5、1.6、1.7、1.8、1.9;y=0.1、0.2、0.3、0.4、0.5、0.6、0.7、0.8、0.9、1
(2)提供高精度函数值者,本人再加分.
谁能提供复变量伽马函数的一些函数值?
matlab中定义了gamma(x)函数,但x为实数;于是我用了下面的程序计算复数形式的gamma函数:
clear;clc
x=[1.1:0.1:2];y=0.1:0.1:1;%起点终点和步长可以自己改
[X,Y]=meshgrid(x,y);
syms t;
f=t.^(X+Y*i-1)*exp(-t) %定义积分函数
ga=int(f,t,0,inf) %积分
vpa(f,6) %查看结果
结果在x=1.1时会出现错误,当x=1.1时,积分函数为:
t^(i/10 + 1)/exp(t)
t^(i/5 + 1)/exp(t)
t^((3*i)/10 + 1)/exp(t)
t^((2*i)/5 + 1)/exp(t)
t^(i/2 + 1)/exp(t)
t^((3*i)/5 + 1)/exp(t)
t^((7*i)/10 + 1)/exp(t)
t^((4*i)/5 + 1)/exp(t)
t^((9*i)/10 + 1)/exp(t)
t^(i + 1)/exp(t)
即其中的实部分本应为0.1,这里却为1;这是产生错误的原因,从而用下面的试算x=1.1的情况:
b=0.1+Y(:,1)*i
b =
0.1000 + 0.1000i
0.1000 + 0.2000i
0.1000 + 0.3000i
0.1000 + 0.4000i
0.1000 + 0.5000i
0.1000 + 0.6000i
0.1000 + 0.7000i
0.1000 + 0.8000i
0.1000 + 0.9000i
0.1000 + 1.0000i
>> c=t.^b*exp(-t)
c =
t^(i/10 + 1/10)/exp(t) %这里的实部正确,为0.1=1/10;
t^(i/5 + 1/10)/exp(t)
t^((3*i)/10 + 1/10)/exp(t)
t^((2*i)/5 + 1/10)/exp(t)
t^(i/2 + 1/10)/exp(t)
t^((3*i)/5 + 1/10)/exp(t)
t^((7*i)/10 + 1/10)/exp(t)
t^((4*i)/5 + 1/10)/exp(t)
t^((9*i)/10 + 1/10)/exp(t)
t^(i + 1/10)/exp(t)
>> int(c,t,0,inf) %对x=1.1时积分
ans =
gamma(i/10 + 11/10)
gamma(i/5 + 11/10)
gamma((3*i)/10 + 11/10)
gamma((2*i)/5 + 11/10)
gamma(i/2 + 11/10)
gamma((3*i)/5 + 11/10)
gamma((7*i)/10 + 11/10)
gamma((4*i)/5 + 11/10)
gamma((9*i)/10 + 11/10)
gamma(i + 11/10)
>> vpa(ans,6) %查看积分结果
ans =
0.943739-0.0397233*i
0.921608-0.0760291*i
0.886905-0.106088*i
0.842395-0.128064*i
0.791143-0.141237*i
0.736052-0.145883*i
0.679561-0.143*i
0.623529-0.13399*i
0.569237-0.1204*i
0.517481-0.103723*i
这个结果是正确的了.这个结果与最上方的程序之间产生矛盾,为什么会这样我也没有搞懂.