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

MATLAB软件及高斯勒让德求积公式MATLAB软件及高斯勒让德求积公式

数 值 分 析 课 程 实 验 报 告

2012—2013学年度 第二学期

系别:数学与计算机科学学院

实验课程数值分析班 级10级数学与应用数学2班学 号05姓 名杜宁峰指导教师陈耀庚实验题目学习编写高斯-勒让德计算程序日 期2013 年 3月 27日实验原理MATLAB软件及高斯勒让德求积公式实验内容及具体步骤:

一、试验环境

计算机 MATLAB软件

二、实验目的

1利用MATLAB软件编写高斯-勒让德求积公式程序.

三、实验内容

1.建立function函数,在学习了高斯勒让德求积公式的基础上,结合MATLAB

软件编写程序。

2.结合课本122页表4-7检验程序。

四、试验步骤

1程序(1)

function g= GuassLegendre (a,b,n,m)

% a,b·?±eê??y·?μ?é????T£?

% n+1?a?úμ???êy£?

% mê?μ÷ó?f1.m?Dμú????±??yoˉêy£?

[A,x]=Guass1(n)

g=0;

for i=1:n+1

y(i)=(b-a)/2*x(i)+(a+b)/2;

f(i)=f1(m,y(i));

g=g+(b-a)/2*f(i)*A(i);

end

2程序(2)

function f=f1(i,x)

g(1)=sqrt(x);

if x==0

g(2)=1;

else

g(2)=sin(x)/x;

end

g(3)=4/(1+x^2);

f=g(i);

程序(3)

function [A,x]=Guass1(N)

i=N+1;

f=((sym('t'))^2-1)^i;

f=diff(f,i);

t=solve(f);

for j=1:i

for k=1:i

X(j,k)=t(k)^(j-1);

end

if mod(j,2)==0

B(j)=0;

else

B(j)=2/j;

end

end

X=inv(X);

for j=1:i

A(j)=0;

x(j)=0;

for k=1:i

A(j)=A(j)+X(j,k)*B(k);

x(j)=x(j)+t(j);

end

x(j)=x(j)/k;

end

五、运行结果

[A,x]=Guass1(2)

A =

0.8889 0.5556 0.5556

x =

0 0.7746 -0.7746

>>

>> [A,x]=Guass1(1)

A =

1 1

x =

0.5774 -0.5774

>> [A,x]=Guass1(4)

A =

0.5689 0.2369 0.4786 0.2369 0.4786

x =

0 0.9062 0.5385 -0.9062 -0.5385

>> [A,x]=Guass1(5)

  • 0
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值