999精品在线视频,手机成人午夜在线视频,久久不卡国产精品无码,中日无码在线观看,成人av手机在线观看,日韩精品亚洲一区中文字幕,亚洲av无码人妻,四虎国产在线观看 ?

MATLAB中隱函數繪圖方法探究

2015-03-25 11:34:12楊海勇
科技資訊 2014年31期

楊海勇

摘 要:MATLAB作為一種功能強大的仿真軟件,在科學計算和工程繪圖方面也有廣泛的應用。針對隱函數求解不便并且圖形難以手工繪制的問題,該文研究用MATLAB軟件繪制二維隱函數曲線和三維隱函數曲面的方法:利用軟件提供的ezplot函數可以直接繪制二維隱函數曲線,并討論了二維隱函數帶變量使用的情況;采用等值面計算函數isosurface和面元渲染函數patch可以分步實現三維隱函數曲面的繪圖。根據上述方法給出一些具體應用實例和繪圖結果。實踐表明,MATLAB軟件能有效解決比較復雜的隱函數繪圖問題。

關鍵詞:MATLAB 二維隱函數 三維隱函數 繪圖

中圖分類號:TP31 文獻標識碼:A 文章編號:1672-3791(2014)11(a)-0011-02

MATLAB是當今流行世界的仿真軟件,更是一種效率高、功能強的工程數學軟件,它具有出色的圖形處理能力,在科學計算和工程繪圖方面有大量的應用。

對于一些多元函數特別是隱函數類的數學問題,其求解和圖形繪制工作僅僅依靠人工是難以實現的,而MATLAB軟件正是解決這類復雜數學問題的一種很好的工具。

MATLAB軟件包含了一系列種類齊全的繪圖函數,例如二維圖形中基本的plot函數、三維曲面的mesh函數。在隱函數繪圖方面,軟件提供了ezplot函數可以直接繪制二維隱函數曲線,但在解決三維隱函數曲面的圖形繪制方面,卻仍然是一個難題,因為軟件里并沒有提供能直接繪制三維隱函數曲面的函數,需要我們尋找其他方法解決這一問題。

該文主要探討利用MATLAB軟件繪制二維隱函數曲線和三維隱函數曲面的方法,并給出具體應用實例。

1 二維隱函數繪圖

二維隱函數是指滿足方程f(x,y)=0的x,y之間的關系式,由于隱函數求解不便,很多都無法求出x、y之間的關系,也就不能寫成y=f(x)的形式,因此基本的二維繪圖命令plot(x,y)是不能應用的。對于這類隱函數的圖形繪制問題,MATLAB提供了函數ezplot( )可以直接繪制隱函數f(x,y)=0的曲線。

1.1 函數ezplot基本格式及繪圖應用

對于隱函數f=f(x,y),ezplot的基本調用格式是:ezplot(f),這是在默認區間-2pi

也可以人工指定區間范圍:xmin

例如要繪制隱函數

的曲線,可以采用下列兩種語句:

執行后得出如圖1所示的繪圖結果,這是一種心形線。

1.2 隱函數帶變量使用的情況

隱函數帶變量的情況也很常見,例如隱函數。

根據實際需要可將a事先具體賦值,但使用中應注意,繪圖語句不能簡單采用前面基本格式的形式,例如a=2;ezplot('x^2+y^2+a*x-a*sqrt(x^2+y^2)'),這樣并不能執行繪圖。因為函數包括單引號時,相當于是符號表達式,變量a的值作為一個參數,不能傳進函數,導致ezplot()不能正常繪圖。

要把參數a的值傳進函數,就不能用單引號括起函數,因此正確的做法是先利用syms函數定義多個變量,再用ezplot()對隱函數畫圖,應注意函數不帶單引號。繪圖語句如下,繪圖結果和前面圖1完全相同。

1.3 帶有多個變量的隱函數組的繪圖

已有方程組f(x,y)=x+y^2=a,g(x,y)=x^2-y=b,(a,b均為常數),可以方便地解決這類帶有多個變量的隱函數組的繪圖問題。以a=3,b=-3這種情況為例,給出繪圖的語句和繪圖結果圖2。

其中hold on語句的作用是將當前已有圖形保持,并允許添加新繪制的圖形。title( )的作用是給圖形加題頭。

2 三維隱函數繪圖

三維隱函數是指在滿足方程f(x,y,z)=0的條件下,z關于x、y的關系式,即z=g(x,y),這里g(x,y)的顯式表達式無法求取,不能采用普通的繪圖函數來繪制其曲線。下面主要探討采用等值面計算函數isosurface()和面元渲染函數patch( )來分步實現三維隱函數曲面的繪圖方法。

2.1 三維隱函數分步繪圖步驟

首先對要使用的兩個重要的圖形函數做一些簡要介紹。

isosurface的調用格式:[f,v] = isosurface(x,y,z,val,isovalue),它是等值面計算函數,其作用是返回由isovalue指定的某個等值面的表面(Faces)和頂點(Vertices)數據,并存放在結構體f、v中。對于畫隱函數v=f(x,y,z)=0的三維圖形,則isovalue=0。

patch是面元渲染函數,對曲面進行修飾。它的調用格式包括:

patch(x,y,z,c)以三維坐標(x,y,z)為頂點,構造三維曲面,c是RGB顏色向量。

patch(f,v)通過包含Faces、Vertices兩個域的結構體f、v來構造三維曲面,f和v可以由等值面函數isosurface計算而得。

對于三元顯函數v=f(x,y,z)來說,當v=0時的等值面就是z=g(x,y)的三維曲面。isosurface函數可以計算v=0的等值面,返回結果包括表面和頂點數據,并存放于結構體f、v中,再輸入給patch函數,能構造三維曲面,還可以根據需要設置顏色、亮度、三維視角等。

根據上述方案可以歸納出三維隱函數的分步繪圖步驟。

(1)用meshgrid函數產生網格點,同時可確定坐標范圍。

(2)引用隱函數表達式計算格點函數值val。

(3)調用[f,v]=isosurface(x,y,z,val,0)計算隱函數等值面并返回到f、v。

(4)調用patch('Faces',f,'Vertices',v,'facecolor','none','EdgeColor','flat')對曲面修飾。

2.2 三維隱函數繪圖應用舉例

以心形圖函數

為例,按照上述繪圖步驟,給出程序語句和三維心形圖的繪圖結果圖3。

3 結語

該文介紹了利用MATLAB軟件中的繪圖函數ezplot()直接繪制二維隱函數曲線的方法,以及采用等值面計算函數isosurface()和面元渲染函數patch( )分步實現三維隱函數曲面的繪圖方法。實踐表明,上述方法效率高、容易實現,能有效解決比較復雜的隱函數繪圖問題。

參考文獻

[1] 李國勇,程永強.計算機仿真技術與CAD[M].北京:電子工業出版社,2012.

[2] 薛定宇,陳陽泉.基于MATLAB/Simulink的系統仿真技術與應用[M].北京:清華大學出版社,2011.

[3] 陳艷男,徐愛軍,保進烽.MATLAB在高等數學課程中的應用[J].科技信息,2010(14):39-40.

[4] 張志涌.精通MATLAB6[M].5版.北京:北京航空航天大學出版社,2003.

主站蜘蛛池模板: AV不卡在线永久免费观看| 伊人激情久久综合中文字幕| 亚洲黄网视频| a级毛片免费在线观看| 伊人久久综在合线亚洲2019| 欧洲熟妇精品视频| 免费AV在线播放观看18禁强制| 国产精品亚洲一区二区三区z | 亚洲成av人无码综合在线观看| 亚洲国产精品无码AV| 国产电话自拍伊人| 成人一区在线| 国产区免费| 在线日韩日本国产亚洲| 91在线高清视频| 99久久性生片| 国产午夜在线观看视频| 久久久久中文字幕精品视频| 国产精品福利尤物youwu| 久久女人网| 欧美日本在线一区二区三区| 欧美色图久久| 色哟哟国产精品一区二区| 四虎永久在线视频| 亚洲va在线观看| 国产网站一区二区三区| 国产亚洲成AⅤ人片在线观看| 毛片免费视频| 四虎永久免费网站| 热这里只有精品国产热门精品| 成人免费一级片| 国产黄色免费看| 亚洲综合精品香蕉久久网| 亚洲男人天堂久久| 欧美亚洲欧美| 天天色天天综合| 日韩在线欧美在线| 欧美成人综合视频| 亚洲人在线| 精品国产三级在线观看| 久久国产亚洲欧美日韩精品| 欧美另类精品一区二区三区| 国产香蕉国产精品偷在线观看| 特级做a爰片毛片免费69| 99热这里只有精品免费| 女人一级毛片| 综合五月天网| 欧美亚洲一区二区三区导航| 永久成人无码激情视频免费| 久久综合丝袜长腿丝袜| 免费在线观看av| 亚洲最大综合网| 亚洲精品另类| 日韩小视频网站hq| 日本免费福利视频| 国产原创演绎剧情有字幕的| 人妻无码一区二区视频| 日韩欧美视频第一区在线观看 | 99re在线观看视频| 免费xxxxx在线观看网站| 波多野结衣无码AV在线| 久久精品国产精品一区二区| 免费va国产在线观看| 亚洲综合精品香蕉久久网| 亚洲国产成人精品无码区性色| 亚洲色欲色欲www在线观看| 亚洲第一在线播放| 国产人免费人成免费视频| 中文字幕在线看| 91精品国产一区自在线拍| 无码内射中文字幕岛国片| 福利在线不卡一区| 国产在线欧美| 97精品伊人久久大香线蕉| 狠狠亚洲五月天| 欧美色图第一页| 日韩毛片免费观看| 大香网伊人久久综合网2020| 国产福利不卡视频| 岛国精品一区免费视频在线观看| 久久精品只有这里有| 日本人妻丰满熟妇区|