日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

MATLAB基础教程(9)——高级积分运算、二重积分

發布時間:2025/3/15 编程问答 22 豆豆
生活随笔 收集整理的這篇文章主要介紹了 MATLAB基础教程(9)——高级积分运算、二重积分 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

目錄

復習定積分(單變量)

二重積分

今日小結


復習定積分(單變量)

在之前,先復習一下之前學習的內容。使用matlab求解定積分的步驟大概如下:

  • 定義符號變量(syms關鍵字)
  • 定義內聯函數(inline函數)
  • 使用matlab內置函數進行計算定積分或者不定積分(使用int函數,具體求解定積分還是不定積分,根據參數的數量決定)
  • 我們都知道:定積分是求解一個圖形與坐標軸圍成的面積。而今天我們需要深入理解一下:定積分是求解兩條曲線之間圍成的面積,如果只有一個公式,比如x,我們可以理解成 x-0,y=x 這個函數減去了 y=0這個常數函數,或者說,上面函數與x軸圍成的面積減去了下面函數與x軸圍成的面積(并且這個面積在x軸上方是正的,下方是負的),這樣我們就可以推廣,假設我們現在有兩條曲線,一個是sinx,一個是?,我們求在0-pi的范圍內,兩個圖形圍成的面積,容易知道,兩個圖形大概是這樣圍起來的:

    PS: 上圖的代碼和講解如下

    %% 目標圖像clc;clear all; % 清除原先的東西x = 0:0.01:pi; % x的范圍是0-pi,以0.01為一個小分割點細分出一個范圍y1 = sin(x); % sinxy2 = exp(x); % e^xfigure; % 弄一個figure的框體hold on; % 保持這個窗體,保證后面的內容都畫在了上面,hold off解除subplot(221); % 開辟子窗體,221:共2行2列,里面的第一個fill(x,y1,'r'); % 畫圖并填充顏色,變量是x,函數是y1,顏色是r,紅色title('y=sinx');% 設置標題,必需先fill,才能添加標題,否則會失敗subplot(222); % 開辟子窗體,222,共2行2列,里面第二個fill(x,y2,'b'); % b 藍色title('y=e^x');subplot(223); % 開辟子窗體,223,共2行2列,里面第三個fill([x, fliplr(x)],[y1,fliplr(y2)],'g');% 兩個函數直接填充顏色,每一個方括號代表一個函數的內容title('兩個函數中間的部分');hold off;

    OK,那么我們就可以很容易的使用int()函數算出這樣一個定積分,代碼如下:

    %% 對上面的函數進行計算定積分syms x;f = 'exp(x) - sin(x)';res_int = int(f, x, 0, pi);disp(res_int);

    上面左邊是我手算結果,右邊是matlab計算結果,可見我算的還是很準的哈哈哈哈哈哈哈。


    二重積分

    上面復習了定積分的計算和一般概念,下面我們看二重積分,先了解下二重積分是什么吧:

    二重積分的一個概念是求體積(還有其他的,比如薄片質量等,在這里先不談,先說體積的問題),那么明確概念其實就不難了,定積分求面積、二重積分求體積,那么這個體積是哪里的體積呢?

    如圖,粉紅色的是z=f(x,y)的函數圖像,下面是地面的陰影部分,紅色的是邊界,這個體積就是粉色的頂部與底面陰影之間的一個曲頂柱體的體積,那這個體積怎么求呢?

    在定積分中,我們把整個面積分成了無數個小面積,計算后累加,同樣的,在二重積分中,我們也采取同樣的方法,我們把這個柱體切成一個一個的小柱體,就像圖中的那個黃色柱體一樣,假設我們把整個底面分成了無數份,每一份的底面積都無限接近于0,假設這個底面積是d?,那么這個地方的高就是f(x,y),所以這個小柱體的體積就是 f(x,y)d?,我們只需要將這些小體積全部加起來,就能得到整個曲頂柱體的體積公式了:

    ??

    并且我們很容易發現,積分的區間其實就是底面,被積函數是曲面的公式。公式中各個符號在下圖中體現:

    現在,計算一個例子給大家看,假設底面如圖所示(灰色陰影部分):

    先積分x(Y型)時區域可表示為:Dx = {(x,y)|0<=y<=1, y<=x<=1}。

    先積分y(X型)時區域可表示為:Dy =?{(x,y)|0<=y<=x, 0<=x<=1}。

    下面我們以X型為例,使用matlab計算曲面為 f(x,y) = xcos(y)的曲頂柱體的體積:

    詳細的代碼以及注釋見下方:

    %% 計算二重積分clear all;f = @(x,y)x.*cos(y); % 定義一個函數句柄,兩個變量分別是x,y% 這樣定義函數句柄時,需要在所有的運算前加一個.(表示對應元素各自計算,不按照矩陣的規則)ymax = @(x) x; % 根據0<=y<=x處,右方的y=x反解出y,res = integral2(f,0,1,0,ymax);% 計算二重積分的函數% integral2(fun, xmin, xmax, ymin, ymax)disp(res);

    最后,讓我們欣賞一下這個曲面的形狀吧:

    代碼如下:

    %% 看一看這個曲面吧[x,y] = meshgrid(0:0.001:1, 0:0.001:1);% 設置x和y的區間,以及細分程度z = (x.*cos(y)); % 使用一個z來代表這個函數mesh(x,y,z) % 畫出二維曲面圖像title('x*cos(y)')

    那么,今天就先到這里吧,三重積分留到下次在講解,謝謝觀看!


    今日小結

    今天我們學到了如下的知識:

  • 復習了之前學習的定積分、不定積分的內容
  • 學習了二重積分的概念,以及應用的大概場景:求曲頂柱體體積,平面薄片質量(底面換位薄片,被積函數即薄片面密度的函數)等。
  • 學會了如何在一個figure里面繪制多個圖像
  • 學會了如何在matlab中繪制圖像、對目標區域填充顏色并命名標題
  • 學會了怎么使用matlab的integral2計算二重積分
  • 學會了怎么在matlab中聲明(定義)一個函數句柄,或者說創建一個多元函數,以及怎么反解一個函數中某個變量(y = @(x) x? ,此處函數是y=x),其實說白了,反解函數就是定義函數句柄。
  • 學會了怎么在matlab中繪制二維曲面的圖像。
  • 總結

    以上是生活随笔為你收集整理的MATLAB基础教程(9)——高级积分运算、二重积分的全部內容,希望文章能夠幫你解決所遇到的問題。

    如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。