100元报酬寻计算机或数学专业高人做一道高数四次积分小题目
由于本人遇到一道高数题,感觉有些困难,是关于一道四次定积分的小题目,求一位数学专业的高人解答,或一位计算机专业的高人用C语言编写程序运行出结果,100元报酬.快者半小时即可做出.有意者联系本人电话13215510735.QQ:464654229
∫0 2π∫0 2π∫0 0.004∫0 0.004 [-r2r3(0.008+x)]/{[ r2的平方+ r3的平方-2*r2r3cos(α-β) + (0.008+x)的平方] 3/2次方} dr2dr3dαdβ,其中r2,r3,α,β为积分变量,x为常数。
这本来就是一道实际应用题,结果跟距离x相关.能把程序编写出来,输入对应x,能运行出关于x的结果就行.这道题其实是计算中心正对的距离为x的两个圆柱形永磁磁铁的吸力的,磁力随着x而变化.
我仿造别人的三重积分写了个四重积分,你用在你的程序中看看,这个程序需要再修改一下,在matlab中运行.
function Q = dblquad3(intfcn,xmin,xmax,ymin,ymax,zmin,zmax,tol,quadf1,quadf2,varargin)
if nargin < 7, error(’Requires at least five inputs’); end
if nargin < 8 | isempty(tol), tol = 1.e-6; end
if nargin < 9 | isempty(quadf1), quadf1=@quad; end
if nargin < 10 | isempty(quadf2), quadf2=@dblquad; end
intfcn = fcnchk(intfcn);
trace = [];
Q = feval(quadf1,@innerintegral1,zmin,zmax,tol,trace,intfcn, ...
xmin,xmax,ymin,ymax,tol,quadf2,varargin{:);
%---------------------------------------------------------------------------
function Q = innerintegral1(z,intfcn,xmin,xmax,ymin,ymax,tol,quadf2,varargin)
Q = zeros(size(z));
for i = 1:length(z)
Q(i) = feval(quadf2,intfcn, xmin,xmax,ymin,ymax,tol,@quad,z(i),varargin{:);
end
function Q = dblquad4(intfcn,xmin,xmax,ymin,ymax,zmin,zmax,rmin,rmax,tol,quadf3,quadf4,varargin)
if nargin < 9, error(’Requires at least five inputs’); end
if nargin < 10 | isempty(tol), tol = 1.e-6; end
if nargin < 11 | isempty(quadf3),quadf3=@quad; end
if nargin < 12 | isempty(quadf4),quadf4=@dblquad3; end
intfcn = fcnchk(intfcn);
trace = [];
Q = feval(quadf3,@innerintegral2,rmin,rmax,tol,trace,intfcn, ...
xmin,xmax,ymin,ymax,zmin,zmax,tol,quadf4,varargin{:);
%---------------------------------------------------------------------------
function Q = innerintegral2(r,intfcn,xmin,xmax,ymin,ymax,zmin,zmax,tol,quadf4,varargin)
Q = zeros(size(r));
for i = 1:length(r);
Q(i) = feval(quadf4,intfcn,xmin,xmax,ymin,ymax,zmin,zmax,tol,@quad,@dblquad,r(i),varargin{:);
end;
这是一个四重积分的MATLAB程序模型,希望有人能把这个模型看懂,对照我那道题加以适当修改,就能编写出来.或者直接用VC++编写也行.