1. 分别用三点和四点Gauss-Chebyshev公式计算积分

并与准确积分值2arctan4比较误差。若用同样的三点和四点Gauss-Legendre公式计算,也给出误差比较结果。

2*atan(4)

ans =

2.6516

Gauss-Chebyshev:

function I = gausscheby(f,a,b,n)

syms t;

t= findsym(sym(f));

ta = (b-a)/2;

tb = (a+b)/2;

switch n

case 3

I=pi/n*ta*(subs(sym(f),t,ta*cos(pi/(2*n))+tb)*sqrt(1-cos(pi/(2*n))^2)+...

subs(sym(f),t,ta*cos(3*pi/(2*n))+tb)*sqrt(1-cos(3*pi/(2*n))^2)+...

subs(sym(f),t,ta*cos(5*pi/(2*n))+tb)*sqrt(1-cos(5*pi/(2*n))^2));

case 4

I=pi/n*ta*(subs(sym(f),t,ta*cos(pi/(2*n))+tb)*sqrt(1-cos(pi/(2*n))^2)+...

subs(sym(f),t,ta*cos(3*pi/(2*n))+tb)*sqrt(1-cos(3*pi/(2*n))^2)+...

subs(sym(f),t,ta*cos(5*pi/(2*n))+tb)*sqrt(1-cos(5*pi/(2*n))^2)+...

subs(sym(f),t,ta*cos(7*pi/(2*n))+tb)*sqrt(1-cos(7*pi/(2*n))^2));

end

I=simplify(I);

I=vpa(I,6);

syms x

f=1/(1+x^2);

a=-4;b=4;

n=3;

y=gausscheby(f,a,b,n)

y =

4.511

N=4:

y =

1.90041

Gauss-Legendre:

function I = IntGaussLegen(f,a,b,n)

syms t;

t= findsym(sym(f));

ta = (b-a)/2;

tb = (a+b)/2;

switch n

case 0,

I=2*ta*subs(sym(f),t,tb);

case 1,

I=ta*(subs(sym(f),t,ta*0.5773503+tb)+...

subs(sym(f),t,-ta*0.5773503+tb));

case 2,

I=ta*(0.55555556*subs(sym(f),t,ta*0.7745967+tb)+...

0.55555556*subs(sym(f),t,-ta*0.7745967+tb)+...

0.88888889*subs(sym(f),t,tb));

case 3,

I=ta*(0.3478548*subs(sym(f),t,ta*0.8611363+tb)+...

0.3478548*subs(sym(f),t,-ta*0.8611363+tb)+...

0.6521452*subs(sym(f),t,ta*0.3398810+tb) +...

0.6521452*subs(sym(f),t,-ta*0.3398810+tb));

case 4,

I=ta*(0.2369269*subs(sym(f),t,ta*0.9061793+tb)+...

0.2369269*subs(sym(f),t,-ta*0.9061793+tb)+...

0.4786287*subs(sym(f),t,ta*0.5384693+tb) +...

0.4786287*subs(sym(f),t,-ta*0.5384693+tb)+...

0.5688889*subs(sym(f),t,tb));

case 5,

I=ta*(0.1713245*subs(sym(f),t,ta*0.9324695+tb)+...

0.1713245*subs(sym(f),t,-ta*0.9324695+tb)+...

0.3607616*subs(sym(f),t,ta*0.6612094+tb)+...

0.3607616*subs(sym(f),t,-ta*0.6612094+tb)+...

0.4679139*subs(sym(f),t,ta*0.2386292+tb)+...

0.4679139*subs(sym(f),t,-ta*0.2386292+tb));

end

I=simplify(I);

I=vpa(I,6);

y =

2.04798

N=4:

y =

3.08862

2. 分别用三点和四点Gauss-Lagurre公式计算积分

function I = GaussLagurre(f,n)

syms t;

t= findsym(sym(f));

switch n

case 2

I=0.7110930*subs(sym(f),t,0.4157746)+...

0.2785177*subs(sym(f),t,2.2942804)+...

0.0103893*subs(sym(f),t,6.2899451);

case 3

I=0.6031541*subs(sym(f),t,0.3225477)+...

0.3574187*subs(sym(f),t,1.7457611)+...

0.0388879*subs(sym(f),t,4.5366203) +...

0.0005393*subs(sym(f),t,9.3950710);

end

I=simplify(I);

I=vpa(I,6);

syms x

f=exp(-10*x)*sin(x);

f=f./exp(-x);

a=0;b=inf;

n=2;

y= GaussLagurre(f,n)

y =

0.00680897

N=4:

y =

0.0104892

3. 设,分别取,,用以下三个公式计算,

列表比较三个公式的计算误差,从误差可以得出什么结论?

function [df1,df2,df3,w1,w2,w3]=MidPoint(func,a)

if (nargin == 3 && h == 0.0)

disp('h不能为0');

return;

end

for k=1:6

h=1/10^k;

y0=subs(sym(func), findsym(sym(func)),a);

y1 = subs(sym(func), findsym(sym(func)),a+h);

y2 = subs(sym(func), findsym(sym(func)),a-h);

df1(k) = (y1-y0)/h;

df2(k) = (y1-y2)/(2*h);

y3=subs(sym(func), findsym(sym(func)),a+2*h);

y4=subs(sym(func), findsym(sym(func)),a-2*h);

df3(k)=(y4-8*y2+8*y1-y3)/(12*h);

w1(k)=1/a-df1(k);

w2(k)=1/a-df2(k);

w3(k)=1/a-df3(k);

end

df1=simplify(df1); df1=vpa(df1,6);

df2=simplify(df2); df2=vpa(df2,6);

df3=simplify(df3); df3=vpa(df3,6);

w1=simplify(w1); w1=vpa(w1,6);

w2=simplify(w2); w2=vpa(w2,6);

w3=simplify(w3); w3=vpa(w3,6);

syms x

f=log(x);

a=0.7;

[y1,y2,y3,w1,w2,w3]=MidPoint(f,a)

y1 =

[ 1.33531, 1.41846, 1.42755, 1.42847, 1.42856, 1.42857]

y2 =

[ 1.43841, 1.42867, 1.42857, 1.42857, 1.42857, 1.42857]

y3 =

[ 1.42806, 1.42857, 1.42857, 1.42857, 1.42857, 1.42857]

w1 =

[ 0.0932575, 0.0101079, 0.00101944, 0.000102031, 0.0000102043, 0.00000101738]

w2 =

[ -0.00983893, -0.0000971936, -9.71814e-7, -9.72193e-9, 1.92131e-10, -3.02526e-9]

w3 =

[ 0.000513166, 4.76342e-8, 8.04334e-12, -1.10191e-10, 3.37991e-10, -4.5859e-9]

matlab中各种高斯相关函数

matlab中各种高斯相关函数 matlab, 高斯函数, 高斯分布 最常见的是产生服从一维标准正态分布的随机数 n=100;  x=randn(1,n)  实现服从任意一维高斯分布的随机数 u=10 ...

RBF高斯径向基核函数【转】

XVec表示X向量.||XVec||表示向量长度.r表示两点距离.r^2表示r的平方.k(XVec,YVec) = exp(-1/(2*sigma^2)*(r^2))= exp(-gamma*r^2) ...

python实现直方图均衡化,理想高通滤波与高斯低通滤波

写在前面 HIT大三上学期视听觉信号处理课程中视觉部分的实验二,经过和学长们实验的对比发现每一级实验要求都不一样,因此这里标明了是2019年秋季学期的视觉实验二. 由于时间紧张,代码没有进行任何优化, ...

Matlab 高斯_拉普拉斯滤波器处理医学图像

前言:本程序是我去年实现论文算法时所做.主要功能为标记切割肝脏区域.时间有点久,很多细节已经模糊加上代码做了很多注释,因此在博客中不再详述. NOTE: 程序分几大段功能模块,仔细阅读,对解决医学图像 ...

Matlab实现加性高斯白噪声信道(AWGN)下的digital调制格式识别分类

Matlab实现加性高斯白噪声信道(AWGN)下的digital调制格式识别分类 内容大纲 加性高斯白噪声信道(AWGN)下的digital调制格式识别分类 (1. PSK; 2. QPSK; 3.8 ...

[转] Matlab中给信号加高斯白噪声的方法

MATLAB中产生高斯白噪声非常方便,可以直接应用两个函数,一个是WGN,另一个是AWGN.WGN用于产生高斯白噪声,AWGN则用于在某一信号中加入高斯白噪声. 1. WGN:产生高斯白噪声 y = ...

用matlab给图像加高斯噪声和椒盐噪声(不调用imnoise函数)

图像画面中的噪声,大致可以分为两类:高斯噪声和椒盐噪声.在这里,我们先看下图像中两种噪声各自的特征. 椒盐噪声:噪声幅值基本相同,但出现位置随机. 高斯噪声:图像中每一点都存在噪声,但幅值是随机分布的 ...

基于MATLAB的中值滤波均值滤波以及高斯滤波的实现

基于MATLAB的中值滤波均值滤波以及高斯滤波的实现 作者:lee神 1.   背景知识 中值滤波法是一种非线性平滑技术,它将每一像素点的灰度值设置为该点某邻域窗口内的所有像素点灰度值的中值. 中值滤 ...

Matlab绘制三维曲面(以二维高斯函数为例)

matlab中求积函数,高斯求积公式 matlab相关推荐

  1. matlab中simple函数怎么用,matlab里simple函数

    值 realmin:系统所能表示的最小数值 nargin: 函数的输出引数个数 ---MATLAB 中基本绘图函数有: plot: x 轴和 y 轴均为线性刻度 数刻度 semilogx: x 轴为对 ...

  2. matlab中linprog函数不能用,matlab中linprog函数

    §15. 利用 Matlab 求解线性规划问题 线性规划是一种优化方法,Matlab 优化工具箱中有现成函数 linprog 对如 下式描述的 LP 问题求解: % min f'x % s.t ... ...

  3. matlab中求积函数,MATLAB软件及高斯勒让德求积公式MATLAB软件及高斯勒让德求积公式.doc...

    MATLAB软件及高斯勒让德求积公式MATLAB软件及高斯勒让德求积公式 数 值 分 析 课 程 实 验 报 告 2012-2013学年度 第二学期 系别:数学与计算机科学学院 实验课程数值分析班 级 ...

  4. matlab中bwmorph函数的作用,Matlab中的bwmorph函数解释

    Matlab中的bwmorph函数解释 bwmorph:对二值图像的形态学操作. BW2 = bwmorph(BW,operation) BW2 =bwmorph(BW,operation,n) BW ...

  5. matlab中fval函数,收集整理Matlab中的linprog函数使用说明 | 学步园

    linprog函数是用来求解线性规划问题,其中,f,x,b,beq,lb,ub为向量,A,Aeq为矩阵. a).x=linprog(f,A,b) 功能:求解最小化问题:min f*x,条件:A*x≤ ...

  6. matlab中dither 函数,(转)matlab里一些简单的函数

    matlab之基本绘图函数 clear:清空内存中的变量: figure:强制生成一个新的个绘图窗口: syms x y t :声明变量: fplot(函数表达式,绘图区间): plot(横坐标向量, ...

  7. matlab中ss函数_[转载]matlab ss函数 tf函数

    ss 指定状态空间模型或者将线性时不变系统转成状态空间 语法 ss sys = ss(a,b,c,d) sys = ss(a,b,c,d,Ts) sys = ss(d) sys = ss(a,b,c, ...

  8. matlab中fmincon函数应用实例,matlab中fmincon函数的使用

    一个朋友出了一个人工智能的教程,风格有特色,内容很全面,你想找的人工智能相关的基础知识里面应该都能找到. 内容讲解傻瓜化,通俗易懂,适合高中基础的小白入门.有点像看小说一样.点这里可以跳转到教程. f ...

  9. matlab中nabisect函数,数值分析在MATLAB中的实现(M函数文件)

    学习数值分析过程中编写的各章中涉及的方法的M函数相互交流,如有错误请多指教部分内容如下:(na--numerical analysis)数据建模:nalagr--拉格朗日插值naspline--三阶样 ...

  10. matlab中ga函数的用法,MATLAB中自带遗传算法函数GA的用法

    ga 用遗传算法寻找函数的最优解 语法规则 x = ga(fitnessfcn,nvars) x = ga(fitnessfcn,nvars,A,b) x = ga(fitnessfcn,nvars, ...

最新文章

  1. golang中的shell
  2. svn提示out of date的解决方法
  3. linux内核调用( )为进程创建虚存区_Linux内核分析-总结篇(九)
  4. 【caffe-MATLAB】自己编译faster-rcnn的MATLAB版本
  5. uAdmin the Golang Web framework
  6. pythone函数基础(11)读,写,修改EXCEL
  7. 你为什么喜欢VIM?
  8. mysql自动获取时间列_mysql自动获取时间日期的方法
  9. ie6使用绝对定位position:absolute,box不显示
  10. android 之 TabHost
  11. 172.阶乘后的零 (力扣leetcode) 博主可答疑该问题
  12. 互联网下载.deb安装包
  13. ovm安装过程及中断处理
  14. 揭开python的神秘面纱
  15. debussy和modelsim联合仿真配置
  16. 超低功耗MCU的选择方法
  17. 中国谋略第一书:《素书》全文解析
  18. mysql 建表 title create table_mysql中create命令建表sql语句
  19. 邮箱服务RBL黑名单申诉
  20. 詹姆斯高斯林_詹姆斯·高斯林(James Gosling):Oracle的表现“令人惊讶的是” 用Java

热门文章

  1. 最小二乘法节点定位(1)——小知识:非线性方程线性化
  2. 非线性微分方程线性化
  3. 如何用计算机制作海报,怎么用word制作海报_如何做宣传海报word
  4. 【python】使用python绘制地图时手动添加比例尺
  5. Spring AOP术语:连接点和切点的区别。
  6. 小程序中点击二维码图片预览、长按转发、保存、识别图中二维码
  7. PHP8.0尝鲜系列(一):Windows 10安装PHP8.0
  8. win10 启动后无法正常显示桌面/黑屏
  9. “特困生”卷出睡眠市场,疯狂氪金能不能氪出“好故事”?
  10. 管理理论模型:PEST、5W2H、时间管理、生命周期、逻辑树、金字塔、SMART原则