1、计算向量、矩阵差分 x=1:5 x diff(x)1 1 1 1 1 y=1:12 z=matrix(y,3,4,T) z diff(z) ,1 ,2 ,3 ,41, 4 4 4 42, 4 4 4 4 diff(x,diff=2)1 0 0 0#求一元函数导数f=expression(5*x)/(1+x2)D(f,x)f=expression(2*x2)D(f,x)#求二元函数偏导数及梯度f=deriv(zx2+y2+x*y,c(x,y),func=T, hessian=F)ff(1,2)例1梯形积分trape=function(fun,a,b,tol=1e-6)N=1;h=b-aT=h/2
2、*(fun(a)+fun(b)repeath=h/2;x=a+(2*1:N-1)*hI=T/2+h*sum(fun(x)if(abs(I-T)tol) breakN=2*N;T=IIsource(trape.R)f=function(x) exp(-x2)trape(f,-1,1)高精度积分f=function(x) exp(-x2)integrate(f,-1,1)例2简单二重积分library(cubature)f-function(x)1-x1/4-x2/3adaptIntegrate(f, c(-2, -1), c(2, 1), maxEval=10000)例3直接求和计算n=5;h=
3、seq(0.1,0.9,by=0.2)fun=function(h)(2-(exp(2*h)+exp(-2*h)/5)r=fun(h)rw=pi*1/n*sum(r2)w转化为定积分f=function(h)(2-(exp(2*h)+exp(-2*h)/5)2I=pi*integrate(f,0,1)as.character(I)I=as.numeric(I1)w=I*piw例4R-5b-0.1g-9.81z1-0.5-Rz2-Rn-100h-(z2-z1)/n#z=z1:h:z2f-function(z)(R2-z2)/(b2*sqrt(2*g*(z+R)I=integrate(f,z1,z2)Ias.character(I)I=as.numeric(I1)t=I/60/60t