怎麼用matlab程式設計求 1 sqrt 2 piexp t 2 2 在 inf到x上的積分吶?求大神幫忙

2021-04-18 21:23:51 字數 2645 閱讀 6030

1樓:匿名使用者

是這樣嗎:

syms x

int((1/sqrt(2*pi))*exp(-t^2/2),-inf,x)

如何用matlab求exp(x^2)在1到2 的積分?

2樓:計算天下

由於無法求得exp(x^2)的原函式,我們只能用數值演算法來求解,可以用復化梯形公式、romberg公式、gauss公式等,有好多種。我用matlab編了一個用gauss公式求解積分的函式。

function s=gaussintegrate()

%運用gauss求積公式計算數值積分

%f為被積函式,rho為權函式,二者均為符號函式

x=sym('x');

f=exp(x^2);

rho=1;

%a,b分別為求積區間的左界和右界

a=1;

b=2;

%n表示求積結點的個數,是一正整數

n=8;

%本程式利用線性變換將區間[a,b]變換到[-1.1],

%同時令g=f*rho為被積函式,然後利用

%古典的gauss求積公式進行計算,此時直交多項式即為legendre多項式

if n<=0||n~=floor(n)

error('錯誤,n必須是一個非負整數!');

end;

if a>b

error('錯誤,區間的左界a一定不大於右界b!');

end;

%計算n次legendre多項式

syms x;

p=1/(2^n*factorial(n))*diff((x^2-1)^n,n);

w=roots(sym2poly(p));

%計算數值積分

a=zeros(1,n);

s=0;

for k=1:n

a(k)=2/((1-w(k)^2)*(subs(diff(p),w(k))^2));

t=a+(b-a)/2*(w(k)+1);

g=(b-a)/2*subs(f*rho,t);

s=s+a(k)*g;

end;

--------------------------------

我取了8個結點,計算精度就已經達到了小數點後8位,效率還是很高的。

注意:由於matlab呼叫maple的符號計算工具箱,第一次執行時會載入一小會,耐心等待。

以後再執行速度就很快了。

3樓:我要那個妾

syms x

y = exp(x^2);

vpa(int(y,x,1,2)) %int的部分因為無法表達出來,所以matlab用erfi這個誤差函式來代替。vpa是將這個符號數,轉換成有限精度的浮點數。預設字長32。

4樓:我行我素

可按下面計算:

>> syms x

>> a=int(exp(x^2),1,2)a =

-(pi^(1/2)*(erfi(1) - erfi(2)))/2>> vpa(a)

ans =

14.989976019600048615932355867311

5樓:魯凌菁

syms x

isym=vpa(int(exp(x^2),x,0,1))

6樓:行者張強

x ='exp(x^2)';

int(x,1,2)

如果對你有用,請採納最佳!!

用matlab解個方程,新手,y=sin(x-pi/2+a)/sin(a-asin(sqrt(y^2-1)*sin(a)-cos(a))),其中a是常量,

7樓:匿名使用者

用matlab2010無法根據上面式子解出用x和a表示的y:

>> solve('y=sin(x-pi/2+a)/sin(a-asin(sqrt(y^2-1)*sin(a)-cos(a)))','y')

warning: explicit solution could not be found.

> in solve at 81

ans =[ empty sym ]

但是,可以解出用y和a表示的x:

>> solve('y=sin(x-pi/2+a)/sin(a-asin(sqrt(y^2-1)*sin(a)-cos(a)))','x')

ans =

pi/2 - a + asin(y*sin(a + asin(cos(a) - sin(a)*(y^2 - 1)^(1/2))))

(3*pi)/2 - a - asin(y*sin(a + asin(cos(a) - sin(a)*(y^2 - 1)^(1/2))))

用matlab繪製空間曲線:曲線由z=sqrt(1-x^2-y^2),(x-1/2)^2+y^2=1/4確定

8樓:劉賀

試試看:

clear all;clc;

t=0:pi/40:2*pi;

x=1/2+cos(t)/2;

y=sin(t)/2;

z=sqrt(1-x.^2-y.^2);

plot3(x,y,z);grid on;

「求1到10的階乘之和」用vb怎麼程式設計序

先寫一個求階乘的函式 private function factorial byval n as integer as long dim i as integer,l as longl 1 for i 1 to n l l i next factorial l end function 新增一個按鈕...

用MATLAB求函式的導數怎麼輸入

用matlab求函 數的復導數 可以diff 制 函式來bai 求解。即 1 求函式y ln ln lnx 的一階導du數 syms x y log log log x dy diff y,1 dy 1 x log log x log x 計算zhi結果 2 求函式y x 4 exp x sin x...

如何用matlab求傅立葉變換,怎麼用matlab做傅立葉變換

123456789101112fs 100 n 128 取樣頻率和資料點數n 0 n 1 t n fs 時間序列x 0.5 sin 2 pi 15 t 2 sin 2 pi 40 t 訊號y fft x,n 對訊號進行快速fourier變換mag abs y 求得fourier變換後的振幅f n f...