潘金蘭 潘秋霞 劉美杏
摘 ?要:高等數(shù)學(xué)是一門內(nèi)容多、概念抽象、理論嚴(yán)密的課程,是學(xué)生學(xué)習(xí)專業(yè)課的基礎(chǔ)。傳統(tǒng)的教學(xué)模式主要以教師為主講,理論學(xué)習(xí)與習(xí)題相結(jié)合,讓學(xué)生在理解中掌握課程內(nèi)容。文章在傳統(tǒng)教學(xué)模式的基礎(chǔ)上,利用MATLAB軟件在繪圖上的優(yōu)勢(shì),通過數(shù)據(jù)的靜態(tài)和動(dòng)態(tài)可視化形式,為高等數(shù)學(xué)課程搭建實(shí)驗(yàn)平臺(tái),把抽象的邏輯跳躍轉(zhuǎn)變?yōu)榫唧w的形象思維,為學(xué)習(xí)高等數(shù)學(xué)的學(xué)生開辟一條更有效率的捷徑,提高學(xué)生實(shí)際動(dòng)手能力和綜合解決問題能力。
關(guān)鍵詞:MATLAB;高等數(shù)學(xué);可視化
中圖分類號(hào):TP39;G434 ? 文獻(xiàn)標(biāo)識(shí)碼:A ? 文章編號(hào):2096-4706(2023)16-0181-05
Visualization Application of MATLAB in Advanced Mathematics Course Teaching
PAN Jinlan1, PAN Qiuxia2, LIU Meixing1
(1.School of Mathematics and Statistics, Yulin Normal University, Yulin ?537000, China;
2.Guangxi Minzu University, Nanning ?530006, China)
Abstract: Advanced mathematics is a course with many contents, abstract concepts and strict theory, which is the basis for students to learn professional courses. The traditional teaching model mainly focuses on teachers and combines theoretical learning with exercises to enable students to master the course content in their understanding. On the basis of traditional teaching mode, this paper makes use of the advantages of MATLAB software in drawing, builds an experimental platform for advanced mathematics course through static and dynamic visualization of data, transforms abstract logic jump into concrete image thinking, opens up a more efficient shortcut for students learning advanced mathematics, and improves students' practical ability and comprehensive problem-solving ability.
Keywords: MATLAB; advanced mathematics; visualization
0 ?引 ?言
高等數(shù)學(xué)是一門研究空間形式和數(shù)量關(guān)系的學(xué)科[1],理工科類各專業(yè)的學(xué)生,都要學(xué)習(xí)高等數(shù)學(xué)這門課程,為后繼學(xué)習(xí)其他課程奠定必要的數(shù)學(xué)基礎(chǔ),學(xué)好高等數(shù)學(xué)這門課對(duì)學(xué)生今后的發(fā)展至關(guān)重要。對(duì)于地方高等院校的學(xué)生而言,由于數(shù)學(xué)的抽象性和嚴(yán)謹(jǐn)性,學(xué)生學(xué)習(xí)高等數(shù)學(xué)這門課程的難度較大。因此,探討如何在教學(xué)過程中將高等數(shù)學(xué)的知識(shí),以通俗易懂的方式進(jìn)行教學(xué),具有十分重要的現(xiàn)實(shí)意義。
MATLAB是一種國(guó)際公認(rèn)的最優(yōu)秀的數(shù)學(xué)應(yīng)用軟件之一,它具有算法開發(fā)、數(shù)值計(jì)算、數(shù)據(jù)分析以及數(shù)據(jù)可視化等功能,該軟件的特點(diǎn)是簡(jiǎn)單易學(xué)、編程效率高、界面友好、功能強(qiáng)大、擴(kuò)展性強(qiáng)[2-4],十分利于學(xué)生的學(xué)習(xí)。將MATLAB軟件應(yīng)用于高等數(shù)學(xué)的教學(xué)中,可以很好地將理論教學(xué)、實(shí)驗(yàn)演示于一體,使一些抽象的概念能用可視化的圖形表示出來[5,6],為學(xué)生營(yíng)造想象空間,培養(yǎng)學(xué)生的發(fā)散思維,激發(fā)學(xué)生學(xué)習(xí)的興趣,從而提高高等數(shù)學(xué)課堂教學(xué)效果[7]。本文利用MATLAB的圖形可視化功能,對(duì)圖形進(jìn)行靜態(tài)與動(dòng)態(tài)的可視化設(shè)計(jì)來介紹MATLAB在高等數(shù)學(xué)課程教學(xué)中的可視化應(yīng)用。
1 ?數(shù)據(jù)的靜態(tài)可視化
MATLAB的一個(gè)強(qiáng)大功能就是繪圖功能,可以繪制出復(fù)雜函數(shù)的圖形,使得高等數(shù)學(xué)課堂教學(xué)中的抽象問題變得直觀、形象[8],有利于學(xué)生的理解,有助于培養(yǎng)學(xué)生的觀察能力、應(yīng)用意識(shí)和探索精神。
1.1 ?案例1:求函數(shù)f (x,y) = x3 - y3 + 3x2 + 3y2 - 9x的極值
解:1)利用diff命令求f (x,y)關(guān)于x,y的偏導(dǎo)數(shù):
syms x y f
f = x^3-y^3+3*x^2+3*y^2-9*x;
fx = diff(f,x)
fy = diff(f,y)
運(yùn)行結(jié)果如下:
fx = 3*x^2 + 6*x - 9
fy = - 3*y^2 + 6*y
即fx (x, y) = 3x2 + 6x - 9,fy (x, y) = -3y2 + 6y。
2)利用solve命令求一切駐點(diǎn):
[xi,yi] = solve(fx,fy)
運(yùn)行結(jié)果如下:
求出的駐點(diǎn)為(1 , 0),(-3 , 0),(1 , 2),(-3 , 2).
3)求二階偏導(dǎo)數(shù):
syms x y f
f = x^3-y^3+3*x^2+3*y^2-9*x;
A = diff(f,x,2)
B = diff(fx,y)
C = diff(f,y,2)
運(yùn)行結(jié)果如下:
A = 6x + 6,B = 0,C = -6y + 6
4)根據(jù)極值存在的充分條件,判定駐點(diǎn)是否為極值點(diǎn):
for i=1:length(xi)
x=xi(i);y=yi(i);
A = 6*x + 6;B =0;C = 6-6*y;
P = A*C-B^2
if P>0 & A<0
jz = '極大值'
fd = x^3-y^3+3*x^2+3*y^2-9*x
elseif P>0 & A>0
jz = '極小值'
fd = x^3-y^3+3*x^2+3*y^2-9*x
elseif P<0
jz = '沒有極值'
end
end
運(yùn)行結(jié)果如下:
函數(shù)在點(diǎn)(1 , 0)處有極小值f (1, 0) = -5;在點(diǎn)(-3, 0)和(1, 2)處沒有極值;在點(diǎn)(-3, 2)處有極大值 f (-3, 2) = 31。
為了能更直觀地感受函數(shù)在點(diǎn)(1, 0)處有極小值,在點(diǎn)(-3, 2)處有極大值,而在點(diǎn)(-3, 0)和(1, 2)處沒有極值,接下來,利用MATLAB繪制該空間曲面圖。
5)利用MATLAB實(shí)現(xiàn)可視化:
figure()
ezmesh(f)
xlabel('x軸'); ylabel('y軸') ; zlabel('z軸');
text( 1,0,-5,'\bullet' ,'color','r') ; text( -3,2,31,'\bullet',
'color','r' ) ;
text( -3,0,27,'\bullet' ,'color','r') ; text( 1,2,-1,'\bullet',
'color','r' ) ;
text( 1,0,-5,'( 1,0,-5)') ; text( -3,2,31,'(-3,2,31)') ;
text( -3,0,27,'(-3,0,27)' ) ; text( 1,2,-1,'(1,2,-1)' ) ;
繪制的圖形如圖1所示。
從圖1可以很直觀地看出,函數(shù)在點(diǎn)(1, 0)處有極小值-5,在點(diǎn)(-3, 2)處有極大值31,而在點(diǎn)(-3, 0)和(1, 2)處沒有極值。
1.2 ?案例2:求兩個(gè)底圓半徑都等于1的直交圓柱面所圍成的立體的體積
解:設(shè)這兩個(gè)圓柱面的方程分別為x2 + y2 = 1及x2 + z2 = 1
1)對(duì)兩個(gè)圓柱面直交圖形進(jìn)行可視化:
m=60; z=(-m:2:m)/m; r=ones(size(z)); theta=(0:m)/
m*2*pi;
x1=r'*cos(theta); y1=r'*sin(theta); z1=z'*ones(1,m+1);
x=(-m:2:m)/m; x2=x'*ones(1,m+1); y2=r'*cos(theta); z2=r'*sin(theta);
surf(x1,y1,z1)
axis equal
hold on
surf(x2,y2,z2)
axis equal
xlabel('x軸'); ylabel('y軸'); zlabel('z軸')
view(137,17)
hold off
繪制的圖形如圖2所示。
從圖2看到兩個(gè)底圓半徑都等于1的直交圓柱面所圍成的立體圖形形狀,然后可以快速判斷出該立體圖形是關(guān)于坐標(biāo)平面對(duì)稱的,要求該立體圖形的體積,只要求出它在第一卦限部分(圖3)的體積V1,然后乘8就可以了。
2)繪制第一卦限圖形:
利用MATLAB繪制第一卦限部分的圖形,只需將上述繪制兩個(gè)圓柱體的相交圖形的部分代碼做一下變動(dòng)即可:
z=(0:m)/m; x1=r'*abs(cos(theta)); y1=r'*abs(sin(theta));
x=(0:m)/m;y2=r'*abs(cos(theta)); z2=r'*abs(sin(theta));
繪制的圖形如圖3所示。
3)判斷積分區(qū)域:
所求立體在第一卦限部分可以看成是一個(gè)曲頂柱體,它的底為
如圖4所示。繪制積分區(qū)域D的代碼如下:
x=0:0.01:1;
y=sqrt(1-x.^2);
plot(x,y)
area(x,y,'facecolor',[0.5,0.5,0.5])
xlabel('x軸');ylabel('y軸');
text( 0.4,0.4,'D')
text( 0.75,0.7,'y=sqrt(1-x^2)')
它的頂是柱面 。于是:
圖4 ?積分區(qū)域
4)求立體的體積。接下來,用MATLAB計(jì)算二重積分V1的值,進(jìn)而計(jì)算出所求立體的體積:
syms x y
f1='sqrt(1-x^2)';
V1=int(int(f1,y,0,sqrt(1-x^2)),x,0,1)
V=8*V1
運(yùn)算結(jié)果如下:
所求立體在第一卦限部分的體積為V1 = 2 / 3
從而所求立體的體積為V = 16 / 3。
2 ?數(shù)據(jù)的動(dòng)態(tài)可視化
在高等數(shù)學(xué)授課過程中,結(jié)合MATLAB生成的動(dòng)畫演示,可以讓學(xué)生產(chǎn)生視覺沖擊,以加深對(duì)數(shù)學(xué)概念的理解[9]。
案例3:兩個(gè)重要極限
兩個(gè)重要極限是高等數(shù)學(xué)的一個(gè)重要內(nèi)容,學(xué)習(xí)這兩個(gè)重要極限 (sin x / x) = 1,(1 + 1 / x)x = e時(shí),同學(xué)們理解起來有一定的難度,那么可以借助MATLAB編程計(jì)算和繪圖,輔助概念的理解[10]。
MATLAB軟件編程如下:
1)計(jì)算兩個(gè)重要極限的值:
syms x
f1=sin(x)/x; f2=(1+1/x)^x;
z1=limit(f1,x,0)
z2=limit(f2,x,inf)
運(yùn)行結(jié)果如下:
z1 = 1
z2 = exp(1)
計(jì)算結(jié)果與兩個(gè)重要極限的結(jié)果一致。
2)繪制第一個(gè)重要極限動(dòng)態(tài)圖:
axis([-5,5,-0.4,1.2])
grid on; hold on; xlabel('x軸'); ylabel('y軸') ;
for x1= -5:0.02:0
y1=sin(x1)./x1;
plot(x1,y1,'b.')
pause(0.1)
end
hold on
plot(0,1,'r*')
for x2=5:-0.02:0
y2=sin(x2)./x2;
plot(x2,y2,'b.')
pause(0.1)
end
運(yùn)行結(jié)果圖如圖5所示。
從圖5的動(dòng)態(tài)圖可以很形象地看出,當(dāng)x從0的左邊無限接近于0時(shí),sin x / x無限接近于1;當(dāng)x從0的右邊無限接近于0時(shí),sin x / x也是無限接近于1。這與輸出結(jié)果當(dāng)x→0時(shí),sin x / x的極限為1相符。
3)繪制第二個(gè)重要極限動(dòng)態(tài)圖:
axis([-200,200,2,4])
plot(xlim,[exp(1),exp(1)],'r--')
grid on;hold on;xlabel('x軸');ylabel('y軸');
for x3=-2:-1:-200
y3=(1+1/x3)^x3;
plot(x3,y3,'b.')
pause(0.1)
end
hold on
for x4=1:200
y4=(1+1/x4)^x4;
plot(x4,y4,'b.')
pause(0.1)
end
運(yùn)行結(jié)果圖如圖6所示。
從圖6的動(dòng)態(tài)圖可以很形象地看出,當(dāng)x取實(shí)數(shù)而趨于+∞或-∞時(shí),函數(shù)(1 + 1 / x)x都無限接近e。這與輸出結(jié)果當(dāng)x→∞時(shí),(1 + 1 / x)x的極限為e相符。
3 ?結(jié) ?論
在高等數(shù)學(xué)課程教學(xué)中,傳統(tǒng)的教學(xué)較為注重理論性,學(xué)生對(duì)抽象的知識(shí)不易理解,空間想象力較為薄弱。基于MATLAB軟件的可視化功能,對(duì)圖形進(jìn)行靜態(tài)與動(dòng)態(tài)的可視化設(shè)計(jì),幫助高等數(shù)學(xué)課程教學(xué),提高課堂效率,營(yíng)造學(xué)生的想象空間,培養(yǎng)學(xué)生的發(fā)散思維、數(shù)學(xué)觀察能力和分析能力,加深對(duì)知識(shí)的理解與掌握。
參考文獻(xiàn):
[1] 同濟(jì)大學(xué)數(shù)學(xué)系.高等數(shù)學(xué):第7版 [M].北京:高等教育出版社,2014.
[2] 薛長(zhǎng)虹,于凱.MATLAB數(shù)學(xué)實(shí)驗(yàn) [M].成都:西南交通大學(xué)出版社,2014.
[3] 段琪.MATLAB在高等數(shù)學(xué)教學(xué)中的應(yīng)用 [J].智庫時(shí)代,2019(36):186+195.
[4] 楊雯抒,黃可坤.基于Matlab的高等數(shù)學(xué)問題的實(shí)驗(yàn)教學(xué) [J].教育教學(xué)論壇,2017(17):279-280.
[5] 王祝園,王娟.Matlab在高等數(shù)學(xué)課程教學(xué)中的應(yīng)用 [J].長(zhǎng)春大學(xué)學(xué)報(bào),2021,31(6):95-101.
[6] 張鳳,郭洪杰,劉強(qiáng).MATLAB在高等數(shù)學(xué)教學(xué)中的可視化應(yīng)用 [J].科技風(fēng),2022(15):109-112.
[7] 馬國(guó)棟,簡(jiǎn)金寶,江羨珍.基于MATLAB提高高等數(shù)學(xué)教學(xué)效果研究 [J].玉林師范學(xué)院學(xué)報(bào),2014,35(2):28-30.
[8] 衛(wèi)軍超,丁嘉昕,常在斌.MATLAB軟件與高等數(shù)學(xué)課程深度融合 [J].科技與創(chuàng)新,2019(7):5-7.
[9] 馬小霞.基于MATLAB的《高等數(shù)學(xué)》可視化教學(xué)研究 [J].焦作大學(xué)學(xué)報(bào),2019,33(1):96-97.
[10] 徐亞娟.基于MATLAB的高職高等數(shù)學(xué)教學(xué)研究與實(shí)踐 [J].海峽科技與產(chǎn)業(yè),2017(12):164-165+168.
作者簡(jiǎn)介:潘金蘭(1991—),女,漢族,廣西賀州人,助教,碩士研究生,研究方向:優(yōu)化建模、自然災(zāi)害風(fēng)險(xiǎn)分析;通訊作者:潘秋霞(1989—),女,漢族,廣西賀州人,科員,碩士研究生,研究方向:機(jī)器學(xué)習(xí)、大數(shù)據(jù)、計(jì)算機(jī)應(yīng)用;劉美杏(1987—),女,漢族,廣西玉林人,講師,博士研究生,研究方向:最優(yōu)化理論與方法。