r6300v2做网站,南宁企业网站seo,vip视频解析网站怎么做,网站开发高级工程师专业目录
12.1 数列 12.1.1 数列求和
1. 累计求和函数sum()
2. 忽略NaN累计求和函数 nansum()
3. 求此元素位置之前的元素和函数cumsum()
4. 求梯形累计和函数cumtrapz()
12.1.2 数列求积
1. 元素连续相乘函数 prod()
2. 求累计积函数 cumprod()
3. 阶乘函数 ffactorial(n…
目录
12.1 数列 12.1.1 数列求和
1. 累计求和函数sum()
2. 忽略NaN累计求和函数 nansum()
3. 求此元素位置之前的元素和函数cumsum()
4. 求梯形累计和函数cumtrapz()
12.1.2 数列求积
1. 元素连续相乘函数 prod()
2. 求累计积函数 cumprod()
3. 阶乘函数 ffactorial(n) n!n为非负整数值
4. 伽马函数 gamma()
12.2 极限和导数
12.2.1 极限
12.2.2 导数 12.3 级数求和
12.3.1 有限项级数求和
12.3.2 无穷级数求和
参考资料 12.1 数列 12.1.1 数列求和
1. 累计求和函数sum() 调用格式 说明 Ssum(A) 1A为向量返回所有元素和结果是一个数值 2A为矩阵返回每一列所有元素和结果为数值个数等于列数的行向量 3A为n维阵列相当于n个矩阵则返回n个矩阵累和按列 Ssum(A,dim) 1对于向量求和运算dim1不求和返回原数列dim2求和 2对于矩阵求和运算dim1对列求和结果组成行向量dim2对行求和结果则称列向量 Ssum(A,vecdim) 根据向量vecdim中指定的维度对A的元素进行求和 Ssum(A,’all’) 计算A的所有元素的值包括行列与维度的和结果是单个数值 Ssum(…,outtype) 可以设置特殊格式的累计和值输出类型outtype包含’defalult’、’double’、’native’ Ssum(…,nanflag) 若向量或矩阵中包含NaN在此格式下nanflag可以设置是否计算NaNnanflag参数设置为’includenan’表示计算设置为’omitnan’表示忽略
2. 忽略NaN累计求和函数 nansum() 调用格式 说明 Snansum(A) 累计和中不包括NaN … … nansum(A)与sum(A,omitnan)可以通用前者步骤更简洁
3. 求此元素位置之前的元素和函数cumsum() 函数cumsum()求解的是新定义的累计和即每个位置的新元素值不包括当前项的元素之和。 略详见MA1.269-270
4. 求梯形累计和函数cumtrapz() 略详见MA1.270-273
12.1.2 数列求积
1. 元素连续相乘函数 prod() 调用格式 说明 Bprod(A) 1A为向量返回所有元素和结果是一个数值 2A为矩阵返回每一列所有元素积结果为数值个数等于列数的行向量 Bprod(A,dim) 1对于向量求和运算dim1不求积返回原数列dim2求积 2对于矩阵求和运算dim1对列求积结果组成行向量dim2对行求积结果则称列向量 Bprod(A,vecdim) 根据向量vecdim中指定的维度对A的元素进行求积其中不包括NaN Bprod(A,’all’) 计算A的所有元素的乘积 Bprod(…, type) 可以设置特殊格式的累计和值输出类型outtype包含’defalult’、’double’、’native’
2. 求累计积函数 cumprod() 略详见MA1.274
3. 阶乘函数 ffactorial(n) n!n为非负整数值
4. 伽马函数 gamma() 伽马函数Gamma Function也叫欧拉第二积分是阶乘函数在实数与复数上扩展的一类函数一般情况下阶乘是定义在正整数和0大于等于0的范围里的小数没有阶乘这里将函数gamma()定义为非整数的阶乘作为阶乘的延拓是定义在复数范围内的亚纯函数通常写作Γ(x) 在实数域上伽马函数定义为 在复数域上伽马函数定义为 同时gamma()也适用于正整数factorial()同用法 补充不完全伽马函数gammainc()其中
12.2 极限和导数 在工程计算中经常会研究某一函数随自变量的变化趋势与相应的变化率也就是要研究函数的极限和导数问题。
12.2.1 极限 极限是数学分析最基本的概念和出发点在工程实际中其计算往往比较繁琐。在MATLAB中运用limit命令可以解决。调用格式 调用格式 说明 limit(f,x,a) 或 limit(f,a) 求解 limit(f) 求解 limit(f,x,a,’right’) 求解 limit(f,x,a,’left’) 求解 示例1 clearsyms x;fsin(x)/x;limit(f)
ans 1 示例2 syms nlimit((11/n)^n,inf)
ans exp(1)示例3 syms xlimit(log(1x)/x,x,0,right)
ans 1示例4计算注意此处是二元函数的极限 syms x y %定义符号变量x yf(exp(x)exp(y))/(cos(x)-sin(y)); %定义符号表达式limit(limit(f,x,0),y,0) %先求x趋近于0时的符号表达式f的极限值再求y趋近于0的极限值
ans 2
12.2.2 导数 导数是数学分析的基础内容之一在工程运用中用来描述各种各样的变化率。可以根据导数的定义利用limit命令求解同时MATLAB也提供了专门的函数求导命令diff。调用格式 调用格式 说明 Ydiff(X) 计算沿大小不等于1的第一个数组维度的X相邻元素之间的差分 Ydiff(X,n) 通过递归应用diff(X)运算n次求n阶导数 Ydiff(X,n,dim) 求沿dim指定的维度计算的第n个差分 示例1 clearsyms x f2^xx^(1/2)*log(x);diff(f) %求表达式f的一阶导数
ans log(x)/(2*x^(1/2)) 2^x*log(2) 1/x^(1/2)示例2 syms xf(1-cos(x))/(3*x^2);diff(f,1) %求表达式f的一阶导数
ans sin(x)/(3*x^2) (2*(cos(x) - 1))/(3*x^3)diff(f,2) %求表达式f的二阶导数
ans cos(x)/(3*x^2) - (4*sin(x))/(3*x^3) - (2*(cos(x) - 1))/x^4 diff(f,3) %求表达式f的三阶导数
ans (6*sin(x))/x^4 - sin(x)/(3*x^2) - (2*cos(x))/x^3 (8*(cos(x) - 1))/x^5示例3 syms xlimit(log(1x)/x,x,0,right)
ans 1示例4 计算对x、y的1阶、2阶偏导数
clear
syms x y %定义符号变量x y
flog(exp(2*(xy^2))(x^2y)sin(1x^2)); %定义符号表达式
fxdiff(f,x) %计算f对x的1阶导数
fx (2*x 2*exp(2*y^2 2*x) 2*x*cos(x^2 1))/(y sin(x^2 1) exp(2*y^2 2*x) x^2)
fydiff(f,y) %计算f对y的一阶导数
fy (4*y*exp(2*y^2 2*x) 1)/(y sin(x^2 1) exp(2*y^2 2*x) x^2)
fxydiff(fx,y) %对x求导后再对y求导
fxy (8*y*exp(2*y^2 2*x))/(y sin(x^2 1) exp(2*y^2 2*x) x^2) - ((4*y*exp(2*y^2 2*x) 1)*(2*x 2*exp(2*y^2 2*x) 2*x*cos(x^2 1)))/(y sin(x^2 1) exp(2*y^2 2*x) x^2)^2
fyxdiff(fy,x) %对y求导后再对x求导
fyx (8*y*exp(2*y^2 2*x))/(y sin(x^2 1) exp(2*y^2 2*x) x^2) - ((4*y*exp(2*y^2 2*x) 1)*(2*x 2*exp(2*y^2 2*x) 2*x*cos(x^2 1)))/(y sin(x^2 1) exp(2*y^2 2*x) x^2)^2
fxxdiff(fx,x) %再次对x求导等价于求二阶导
fxx (2*cos(x^2 1) 4*exp(2*y^2 2*x) - 4*x^2*sin(x^2 1) 2)/(y sin(x^2 1) exp(2*y^2 2*x) x^2) - (2*x 2*exp(2*y^2 2*x) 2*x*cos(x^2 1))^2/(y sin(x^2 1) exp(2*y^2 2*x) x^2)^2
fyydiff(fy,y) %再次对y求导等价于求二阶导
fyy (4*exp(2*y^2 2*x) 16*y^2*exp(2*y^2 2*x))/(y sin(x^2 1) exp(2*y^2 2*x) x^2) - (4*y*exp(2*y^2 2*x) 1)^2/(y sin(x^2 1) exp(2*y^2 2*x) x^2)^2
fxxdiff(f,x,2) %略
fyydiff(f,y,2) %略12.3 级数求和 级数是数学分析的重要内容无论对于数学理论本身还是在科学技术的应用中都是一个有力的工具。
12.3.1 有限项级数求和 求级数命令symsum调用格式 调用格式 说明 Fsymsum(f,k) 返回级数f关于指数k的有限项和 Fsymsum(f,k,a,b) 返回级数f关于指数从a到b的有限项和 示例1 syms a b n %定义符号变量sa^nb*n; %定义符号表达式symsyn(s,n,0,n) %计算级数关于指数n从0到n共n1项的有限项和
ans piecewise(a 1, n (b*n)/2 (b*n^2)/2 1, a ~ 1, -(b*n b*n^2 - 2*a*a^n - a*b*n - a*b*n^2 2)/(2*(a - 1)))示例2 syms n xssin(n*x);symsum(s,n,0,n)
ans piecewise(in(x/(2*pi), integer), 0, ~in(x/(2*pi), integer), (exp(-x*(n 1)*1i)*(exp(x*(n 1)*1i) - exp(x*(n 1)*2i) - exp(x*1i) exp(x*(n 1)*1i)*exp(x*1i))*1i)/(2*(exp(x*1i) - 1)))示例3计算级数的前n1项n从0开始并求前11项的和
syms n
s2*sin(2*n)4*cos(4*n)2^n;
sum_nsymsum(s)
sum_n (exp(-2i)^n*1i)/(exp(-2i) - 1) - (exp(2i)^n*1i)/(exp(2i) - 1) (2*exp(-4i)^n)/(exp(-4i) - 1) (2*exp(4i)^n)/(exp(4i) - 1) 2^n
sum10symsum(s,0,10)
sum10 4*cos(4) 4*cos(8) 4*cos(12) 4*cos(16) 4*cos(20) 4*cos(24) 4*cos(28) 4*cos(32) 4*cos(36) 4*cos(40) 2*sin(2) 2*sin(4) 2*sin(6) 2*sin(8) 2*sin(10) 2*sin(12) 2*sin(14) 2*sin(16) 2*sin(18) 2*sin(20) 2051vpa(sum10) %控制级数前1项和的精度ans 2048.2771219312785147716264587939注若不知道级数s中的变量是哪个采用symvar命令Csymvar(expr)搜索表达式expr查找除i、j、pi、inf、nan、eps和公共函数之外的标识符。这些标识符是表达式中变量的名称。
12.3.2 无穷级数求和 MATLAB中的symsum命令该可以求无穷级数此时只需将命令参数中的求和区间改为无穷即可。示例如下 syms n s11/n;v1symsum(s1,n,1,inf) %计算级数s1关于指数n从1到∞的和
v1 Inf 实际上该级数发散 s21/n^3; v2symsum(s2,n,1,inf)
v2 zeta(3) vpa(v2) %控制v2的精度
ans 1.2020569031595942853997381615114zeta3表示zeta函数在3处的值其中函数zeta()的定义是 MATLAB并不是可以计算出所有的级数求和结果求不出时答案会给出求和形式 计算级数 syms ns1(-1)^n*sin(n)/(n^21);v1symsum(s1,n,1,inf)
v1 symsum(((-1)^n*sin(n))/(n^2 1), n, 1, Inf)
参考资料
[1] 天工在线. MATLAB2020从入门到精通·实战案例版[M]. 北京: 中国水利水电出版社, 2020.