用mathematica软件编写牛顿-科特斯公式遇到的问题,请高手指教,谢谢!
NC[f_,{x_,a_,b_},n_]:=Module[{Z=b-a,C},C=Product[(t-j)/(k-j),{j,0,n,1}];Z*Sum[1/n*Q*(...
NC[f_, {x_, a_, b_}, n_] :=
Module[{Z = b - a, C},
C = Product[(t - j)/(k - j), {j, 0, n, 1}];
Z*Sum[1/n*Q*(f /. x ->k), {k, 0, n}]]
-------------------------上面函数中C表达式有问题,不知道如何表达-------------------------
C式中,分母的j是不能等于k的,但是写成函数语言时却不知道如何表达,求高手指教。
---------PS:我尝试把函数分段写了,也不行,如图--------------
语言如下:
NC[f_, {x_, a_, b_}, n_] :=
Module[{Z = b - a, W, Q, M},
Q = Product[(t - j)/(k - j), {j, 0, k - 1, 1}];
W = Product[(t - j)/(k - j), {j, k + 1, n, 1}];
M = Integrate[Q*W, {t, 0, n}];
Z*Sum[1/n*Q*(f /. x-> k), {k, 0, n}]] 展开
Module[{Z = b - a, C},
C = Product[(t - j)/(k - j), {j, 0, n, 1}];
Z*Sum[1/n*Q*(f /. x ->k), {k, 0, n}]]
-------------------------上面函数中C表达式有问题,不知道如何表达-------------------------
C式中,分母的j是不能等于k的,但是写成函数语言时却不知道如何表达,求高手指教。
---------PS:我尝试把函数分段写了,也不行,如图--------------
语言如下:
NC[f_, {x_, a_, b_}, n_] :=
Module[{Z = b - a, W, Q, M},
Q = Product[(t - j)/(k - j), {j, 0, k - 1, 1}];
W = Product[(t - j)/(k - j), {j, k + 1, n, 1}];
M = Integrate[Q*W, {t, 0, n}];
Z*Sum[1/n*Q*(f /. x-> k), {k, 0, n}]] 展开
展开全部
http://wenku.baidu.com/view/dbd46b48f7ec4afe04a1df10.html
这里的第二页和第三页就是你的公式吧,怎么感觉有点区别啊?你这函数最后要输出啥啊?另,Newton-Cotes算法在mathematica里是有内建函数的:
<< NumericalDifferentialEquationAnalysis`
NewtonCotesWeights[n,a,b]
NewtonCotesError[n,f,a,b]
具体请参看:
NumericalDifferentialEquationAnalysis/tutorial/\
NumericalDifferentialEquationAnalysis
(把上面一串放到软件帮助页面的地址栏里回车。)
这里的第二页和第三页就是你的公式吧,怎么感觉有点区别啊?你这函数最后要输出啥啊?另,Newton-Cotes算法在mathematica里是有内建函数的:
<< NumericalDifferentialEquationAnalysis`
NewtonCotesWeights[n,a,b]
NewtonCotesError[n,f,a,b]
具体请参看:
NumericalDifferentialEquationAnalysis/tutorial/\
NumericalDifferentialEquationAnalysis
(把上面一串放到软件帮助页面的地址栏里回车。)
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询