被积函数算法
A. 求助一个二重积分的MATLAB算法
思路和一维数值积分一样,分割,求和,取极限。你把二维平面分割成n个方块,以方块中一点被积函数值为高算出小方块的体积,再把所有加起来,当n很大时便可近似解。
B. 二重积分 这道题上面的算法为什么不对
这个图形是上下对称的,所以求上面的面积再乘以2就是了
角度的变化范围去0到 π/6
然后当角度取定时,r的取值是2/√3cosθ
被积函数是1,rdrdθ相当于直角坐标系的dxdy,所以极坐标计算时被积函数上要乘一个r。
C. 二重积分一共有多少种计算方法,分别是什
二重积分一共一般有三种计算方法:变限求积分,直角坐标化极坐标,作图构思取最简单的微元。
先确定积分区域,把二重积分的计算转化为二次积分的计算。但二次积分的计算相当于每次只计算一个变元的定积分, 利用对称性。 积分区域是关于坐标轴对称的。 被积函数也时关于坐标轴对称的。
当f(x,y)在区域D上可积时,其积分值与分割方法无关,可选用平行于坐标轴的两组直线来分割D,这时每个小区域的面积Δσ=Δx·Δy,因此在直角坐标系下,面积元素dσ=dxdy。可以看出二重积分的值是被积函数和积分区域共同确定的。
(3)被积函数算法扩展阅读:
当被积函数大于零时,二重积分是柱体的体积。
当被积函数小于零时,二重积分是柱体体积负值。
在空间直角坐标系中,二重积分是各部分区域上柱体体积的代数和,在xoy平面上方的取正,在xoy平面下方的取负。某些特殊的被积函数f(x,y)的所表示的曲面和D底面所为围的曲顶柱体的体积公式已知,可以用二重积分的几何意义的来计算。
D. 双重积分怎么计算的,有例题,希望能解释一下算法谢谢(如图中的题)
把二重积分化成二次积分,也就是把其中一个变量当成常量比如Y,然后只对一个变量积分,得到一个只含Y的被积函数,再对Y积分就行了。
x,y并不成函数关系,要是积分区域是由比如说1<=x<=2,y=f(x),y=g(x),所围成的话,那么就要先对y积分其中上下限就是f(x),g(x),要看谁的图形在上谁就是上限,这时候的x就当做一个常数来看待(只含有x的项可以像提出常数一样提到积分号外面来)。
这个第一次积分得到一个关于x的函数(这个结果是第二次积分的表达式),然后再对x积分,这时候上下限就是2和1。这样就得到积分值了。
(4)被积函数算法扩展阅读:
当被积函数大于零时,二重积分是柱体的体积。
当被积函数小于零时,二重积分是柱体体积负值。
在空间直角坐标系中,二重积分是各部分区域上柱体体积的代数和,在xoy平面上方的取正,在xoy平面下方的取负。某些特殊的被积函数f(x,y)的所表示的曲面和D底面所为围的曲顶柱体的体积公式已知,可以用二重积分的几何意义的来计算。
E. 什么是定积分几何意义是什么如何计算定积分
定积分
数学定义:如果函数f(x)在区间[a,b]上连续,用分点xi将区间[a,b]分为n个小区间,在每个小区间[xi-1,xi]上任取一点ri(i=1,2,3„,n),作和式f(r1)+...+f(rn),当n趋于无穷大时,上述和式无限趋近于某个常数A,这个常数叫做y=f(x)在区间上的定积分.记作/abf(x)dx即/abf(x)dx=limn>00[f(r1)+...+f(rn)],这里,a与b叫做积分下限与积分上限,区间[a,b]叫做积分区间,函数f(x)叫做被积函数,x叫做积分变量,f(x)dx叫做被积式.
几何定义:可以理解为在Oxy坐标平面上,由曲线y=f(x)与直线x=a,x=b以及x轴围成的曲边梯形的面积值(一种确定的实数值)
常用算法
(1)f(x)∈C([a,b]);
(2)x=ψ(t)在[α,β]上单值、可导;
(3)当α≤t≤β时,a≤ψ(t)≤b,且ψ(α)=a,ψ(β)=b,
则∫ _a^b(f(x) dx )=∫ _α^β(f(ψ(t))ψ′(t)dt)
分部积分法
设u=u(x),v=(x)均在区间[a,b]上可导,且u′,v′∈R([a,b]),则有分部积分公式
∫ _a^b(uv′dx)=uv│_a^b-∫ _a^b(u′vdx)
F. 积分法的算法
求积分的方法;大多指求不定积分(或原函数)。按照不定积分的定义,每一个微分式dF(x)=ƒ(x)dx都对应着一个积分式:
积分法在这里是运用微分运算的基本法则及基本公式把积分号下的微分式改变形式,成为一个原函数的微分。例如
通常将被积分的初等函数ƒ(x)按其结构形式,分成若干类型(基本初等函数的简单变形,有理分式,三角函数的有理式,一些根式等)来说明相应的计算过程。当原函数不是初等函数因而不能表示成基本初等函数的有限的分析表达式时,便说积分“积不出来”。例如积分
都“积不出来”。但可以认为这些积分式本身定义了新的超越函数。
G. 高中定积分的计算方法
∫(2,4)(-3)dx=(-3x)|(2,4)=(-3*4)-(-3*2)=-6
∫[0,1]x∧2dx=(1/3x^3)|(0,1)=1/3-0=1/3
计算定积分时,应该运用牛顿-莱布尼茨公式:如果函数f(x)在区间(a,b)上连续,并且存在原函数F(x),则
(7)被积函数算法扩展阅读
定积分是积分的一种,是函数f(x)在区间[a,b]上的积分和的极限。
这里应注意定积分与不定积分之间的关系:若定积分存在,则它是一个具体的数值(曲边梯形的面积),而不定积分是一个函数表达式,它们仅仅在数学上有一个计算关系(牛顿-莱布尼茨公式),其它一点关系都没有。
一个函数,可以存在不定积分,而不存在定积分,也可以存在定积分,而不存在不定积分。一个连续函数,一定存在定积分和不定积分;若只有有限个间断点,则定积分存在;若有跳跃间断点,则原函数一定不存在,即不定积分一定不存在。
H. 二重积分一共有多少种计算方法,分别是什么求归纳
二重积分一共一般有三种计算方法:变限求积分,直角坐标化极坐标,作图构思取最简单的微元。
当f(x,y)在区域D上可积时,其积分值与分割方法无关,可选用平行于坐标轴的两组直线来分割D,这时每个小区域的面积Δσ=Δx·Δy,因此在直角坐标系下,面积元素dσ=dxdy。可以看出二重积分的值是被积函数和积分区域共同确定的。
(8)被积函数算法扩展阅读:
对任意取定的x0∈[a,b],过点(x0,0,0)作垂直于x轴的平面x=x0,该平面与曲顶柱体相交所得截面为区间,z=f(x0,y)为曲边的曲边梯形,由于x0的任意性。
其中y是积分变量在积分过程中视x为常数。上述曲顶柱体可看成平行截面面积S(x)从a到b求定积分的体积。
I. 龙贝格算法 被积函数(sinx)/根号下1-0.25*(sinx)*(sinx) c++程序代码
#include<cstdlib>
#include<iostream>
#include<iomanip>
#include<vector>
#include<cmath>
#definePI3.14159265358979323846
usingnamespacestd;
doublefx(doublex);
typedefstruct
{
double(*pfn)(double);
doublebegin;
doubleend;
doubleeps;
boolsuccess;
doubleretval;
}RombergParam;
doubleRomberg(RombergParam&rp,boolshowdetail=false,intmax_iter=50);
intmain(intargc,char*argv[])
{
RombergParamrp={fx,0,PI/2,1e-5};
cout<<setprecision(12);
Romberg(rp,true);
if(rp.success)
cout<<"I[f]="<<rp.retval<<endl;
else
cout<<"overflow!"<<endl;
return0;
}
inlinedoublefx(doublex) //rad
{
returnsin(x)/sqrt(1-.25*sin(x)*sin(x));;
}
doubleRomberg(RombergParam&rp,boolshowdetail,intmax_iter)
{
intp_2=2;
doublemem[2][4]={0};
//;
mem[0][0]=(rp.end-rp.begin)/2*(rp.pfn(rp.begin)+rp.pfn(rp.end));
if(showdetail)
cout<<mem[0][0]<<endl;
for(inti=1;i<4;++i)
{
introw=i%2;
doublesum=0;
for(intj=1;j<=p_2/2;++j)
sum+=rp.pfn(rp.begin+(2*j-1)*(rp.end-rp.begin)/p_2);
mem[row][0]=.5*mem[row?0:1][0]+(rp.end-rp.begin)*sum/p_2;
for(intj=1;j<=i;++j)
{
mem[row][j]=mem[row][j-1]+
1./(pow(4.0,j)-1)*(mem[row][j-1]-mem[row?0:1][j-1]);
}
if(showdetail)
{
for(intk=0;k<=i;++k)
cout<<mem[row][k]<<' ';
cout<<endl;
}
p_2*=2;
}
for(inti=4;i<max_iter;++i)
{
introw=i%2;
doublesum=0;
for(intj=1;j<=p_2/2;++j)
sum+=rp.pfn(rp.begin+(2*j-1)*(rp.end-rp.begin)/p_2);
mem[row][0]=.5*mem[row?0:1][0]+(rp.end-rp.begin)*sum/p_2;
for(intj=1;j<4;++j)
{
mem[row][j]=mem[row][j-1]+
1./(pow(4.0,j)-1)*(mem[row][j-1]-mem[row?0:1][j-1]);
}
if(showdetail)
{
for(intk=0;k<4;++k)
cout<<mem[row][k]<<' ';
cout<<endl;
}
p_2*=2;
if(fabs((mem[row][3]-mem[row?0:1][3]))<rp.eps)
{
rp.success=true;
rp.retval=mem[row][3];
returnrp.retval;
}
}
//igreaterthanmax_iterindicatenoanswer
//error!!
rp.success=false;
rp.retval=-1;
returnrp.retval;
}
J. 龙贝格算法求积 被积函数为 sin(2cosx)*(sinx)*(sinx) 写C++程序代码,求大神解
#include<iostream>
#include<cmath>
usingnamespacestd;
doublef(doublex)
{
returnsin(2*cos(x))*sin(x)*sin(x);
}
doubleT(doublen,doublea,doubleb)
{
doublesum=0;
for(inti=0;2*i+1<=n;i++)
{
sum+=f(a+double(2*i+1)/n);
}
if(n==1)return0.5*(f(a)+f(b));
return0.5*T(n/2,a,b)+sum*(1.0/n);
}
voidRomberg(doublea,doubleb,doublee)
{
doubleOld[10]={0.0},New[10]={0.0};
doubleh=b-a;
New[0]=h*(f(a)+f(b))/2.0;
intj;
for(inti=1;;i++)
{
for(j=0;j<i;j++)Old[j]=New[j];
New[0]=T(pow(2,i),a,b);
for(j=1;j<=i;j++)
New[j]=(pow(4,j)*New[j-1]/(pow(4,j)-1)-Old[j-1]/(pow(4,j)-1));
if(fabs(New[i]-Old[i-1])<e){
cout<<New[i];
break;
}
}
}
intmain()
{
doublea,b;
doublee;
cout<<"请输入积分的下、上限:";
cin>>a>>b;
cout<<"输入你要的精度:";
cin>>e;
Romberg(a,b,e);
}