使用Matlab(R2018b)画复杂函数的图形(网格图meshgrid)及等高线contour
生活随笔
收集整理的這篇文章主要介紹了
使用Matlab(R2018b)画复杂函数的图形(网格图meshgrid)及等高线contour
小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.
1、函數(shù)
這里使用2D Michalewicz 函數(shù),其表達(dá)式為:
2、畫圖
2.1 編寫2D Michalewicz 函數(shù)
f=@(x,y)(-sin(x).*(sin(x.^2/3.1415926)).^(2*m)...-sin(y).*(sin(2*y.^2/3.1415926)).^(2*m));上述代碼使用到了Anonymous Functions, 相關(guān)變量的數(shù)據(jù)類型為function_handle.
仔細(xì)一看,代碼比數(shù)學(xué)表達(dá)式多了幾個(gè)點(diǎn),這里點(diǎn)的作用是把矩陣?yán)锏拿恳粋€(gè)數(shù)字進(jìn)行處理,而不是對矩陣相乘。
因?yàn)楫媹D時(shí),代入函數(shù)自變量x,y 中的數(shù)據(jù)格式為矩陣,下文將會(huì)詳細(xì)介紹這一點(diǎn)。
2.1 生成網(wǎng)格矩陣
range=[0 4 0 4]; Ngrid=100; dx=(range(2)-range(1))/Ngrid; dy=(range(4)-range(3))/Ngrid; xgrid=range(1):dx:range(2); ygrid=range(3):dy:range(4); [x,y]=meshgrid(xgrid,ygrid);meshgrid函數(shù)生成網(wǎng)格矩陣,x,y 均為矩陣
2.3 畫圖
z=f(x,y); figure(1); surfc(x,y,z);把矩陣x,y代入f函數(shù)中,畫出圖形。
2.4 畫等高線
contour(x,y,z,20);?
3、圖形
?
創(chuàng)作挑戰(zhàn)賽新人創(chuàng)作獎(jiǎng)勵(lì)來咯,堅(jiān)持創(chuàng)作打卡瓜分現(xiàn)金大獎(jiǎng)總結(jié)
以上是生活随笔為你收集整理的使用Matlab(R2018b)画复杂函数的图形(网格图meshgrid)及等高线contour的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 利用scipy包计算表格线的峰值,还原表
- 下一篇: 图像处理 --- 二、数字图像处理基础