This document is posted to help you gain knowledge. Please leave a comment to let me know what you think about it! Share it to your friends and learn new things together.
55308301 : MAJOR : MATHEMATICS STUDY KEY WORD : TRIPLE INTEGRALS, MATLAB GUI, RECTANGULAR COORDINATES, CYLINDRICAL COORDINATE AND SPHERICAL COORDINATE KANALA CHAROENSUK : MATLAB GUI FOR TEACHING AND LEARNING IN VECTOR CALCULUS : TRIPLE INTEGRALS. THESIS ADVISOR : Ph.D.NAIRAT KANYAMEE. 83 pp. In this thesis, we present a computer assisted package for teaching and learning in triple integrals by using MATLAB GUI and PowerPoint. We construct a MATLAB GUI to display surfaces in three-dimensional space and to show a discretization of the domain in order to explain the triple integrals in rectangular coordinate, cylindrical coordinate and spherical coordinate and to evaluate the triple integrals. We also provide definitions and concepts of triple integrals in PowerPoint for teaching in a classroom and for students to revise after the class. In addition, we did a statistical analysis to evaluate the effectiveness and satisfaction of students who used our GUI and PowerPoint. The sample is taken from students who were enrolled in Vector Calculus class in the second semester of 2013 academic year at Silpakorn University. The result shows that the mean score of the group assisted with teaching and learning package is significantly higher than that without using the package. Students are highly satisfied with the package. The topic with the greatest satisfaction are the interesting of GUI and the helpfulness of the package to make them understand the definitions of triple integrals better.
Department of Mathematics Graduate School, Silpakorn University Student's signature ........................................ Academic Year 2013 Thesis Advisor's signature ........................................
[1] อ านวย เดยศร. (2544). นวตกรรมและเทคโนโลยการศกษา. [2] วสทธ ววฒนวศวกร. (2532). สอการเรยนการสอนเอกสารประกอบการบรรยาย. [3] อรน ลมตศร. (2542). หลกสตรการเรยนการสอนในระดบประถมศกษา. [4] ณฐวตร หาญมงธรรม และสมบรณ นามโต. (2550). การพฒนา GUI ของโปรแกรม MATLAB ส าหรบระบบควบคมเงเสน. [5] กนตธร านประศาสน และโศรฎา แขงการ. (2551). การใ MATLAB ส าหรบงานทางวศวกรรม. [6] แกวกาญจน เฮงทองเลศ และอมรรตน อมออน. (2556). MATLAB GUI ส าหรบรายวาแคลคลส เวกเตอร. [7] ผศ.ดร.พรย สาตรวาหา. (2550).แคลคลส 3. [8] กฤษมนต วฒนาณรงค. (2553). An integrated powerpoint maple based teaching learning model for multivariate integral calculus. International Electronic Journal of Mathe-matics Education. [9] กดานนท มลทอง. (2556). เทคโนโลยและการสอสารเพอการศกษา. [10] ธนญฐอร หาวสด. (2556). โครงการต ารา คณะวทยาศาสตร มหาวทยาลยศลปากร คณตศาสตร ส าหรบวศวกรรม. [11] Refaat Yousef Al Ashi, and Ahmed~Al Ameri. (1999). Introduction to Graphical User Interface (GUI) MATLAB 6.5. [12] B. Wiwatanapataphee, S. Noinang, Y. H. Wu, and B. Nuntadilok. (2010). An integrated powerpoint maple based teaching learning model for multivariate integral calculus. International Electronic Journal of Mathematics Education. [13] Teresa Fernandez Pareja, and Hazim H. Tahir. (2010). MATLAB Package and Science Subjects for Undergraduate Studies. [14] Mark D. Schlatter. (1999). Using Matlab in a Multivariable Calculus Course. [15] J. Stewart. (2008). Calculus Early Transcendentals. 6th ed. [16] Paul von Dohlen. (2011). Coding and GUI Use in the Teaching of Undergraduate Numerical Analysis.
56
ภาคผนวก
ภาคผนวก ก โปรแกรม MATLAB
โปรแกรม MATLAB ของ MATLAB GUI ส าหรบการแสดงชนสวนยอยของปรพนธในระบบพกดฉาก ของป ม plot mm=str2num(get(handles.edit7,'String')); nn=str2num(get(handles.edit8,'String')); ll=str2num(get(handles.edit9,'String')); a=str2num(get(handles.edit1,'String')); b=str2num(get(handles.edit2,'String')); c=str2num(get(handles.edit3,'String')); d=str2num(get(handles.edit4,'String')); e=str2num(get(handles.edit5,'String')); f=str2num(get(handles.edit6,'String')); x=linspace(a,b,mm+1); y=linspace(c,d,nn+1); z=linspace(e,f,ll+1); for k=1:length(z) for j=1:length(y) plot3(x,y(j)*ones(length(x),1),z(k)*ones(length(x),1),'r') hold on end end for k=1:length(z) for i=1:length(x) plot3(x(i)*ones(length(y),1),y,z(k)*ones(length(y),1),'g') hold on end end for j=1:length(y) for i=1:length(x) plot3(x(i)*ones(length(z),1),y(j)*ones(length(z),1),z,'b')
57
hold on end end axis([a b c d e f]) p=ceil(0.5*(1+mm)); q=ceil(0.5*(1+nn)); r=ceil(0.5*(1+ll)); x1=[x(p) x(p) x(p-1) x(p-1)]; y1=[y(q-1) y(q-1) y(q-1) y(q-1)]; z1=[z(r-1) z(r) z(r) z(r-1)]; fill3(x1,y1,z1,'r') hold on x2=[x(p-1) x(p-1) x(p-1) x(p-1)]; y2=[y(q-1) y(q-1) y(q) y(q)]; z2=[z(r-1) z(r) z(r) z(r-1)]; fill3(x2,y2,z2,'c') hold on x3=[x(p-1) x(p-1) x(p) x(p)]; y3=[y(q) y(q) y(q) y(q)]; z3=[z(r-1) z(r) z(r) z(r-1)]; fill3(x3,y3,z3,'b') hold on x4=[x(p) x(p) x(p) x(p)]; y4=[y(q-1) y(q-1) y(q) y(q)]; z4=[z(r-1) z(r) z(r) z(r-1)]; fill3(x4,y4,z4,'r') hold on x5=[x(p-1) x(p-1) x(p) x(p)]; y5=[y(q-1) y(q) y(q) y(q-1)];
y=r*sin(theta(j)) plot3(x,y,z(k)*ones(length(r),1),'r') hold on end end axis([-r(end) r(end) -r(end) r(end) e f]) for k=1:length(z) for i=1:length(r) x=r(i)*cos(theta) y=r(i)*sin(theta) plot3(x,y,z(k)*ones(length(theta),1),'b') hold on end end axis([-r(end) r(end) -r(end) r(end) e f]) for j=1:length(theta) for i=1:length(r) xx=r(i)*cos(theta(j)) yy=r(i)*sin(theta(j)) plot3(xx*ones(length(z),1),yy*ones(length(z),1),z,'k') hold on end end axis([-r(end) r(end) -r(end) r(end) e f]) p=ceil(0.5*(1+mm)); q=ceil(0.5*(1+nn)); s=ceil(0.5*(1+ll)); c=linspace(z(s-1),z(s),10); theta1=linspace(theta(q-1),theta(q),10);
60
[c,theta1] = meshgrid(c,theta1); x1=r(p-1)*cos(theta1); y1=r(p-1)*sin(theta1); mesh(x1,y1,c); hold on x1=r(p)*cos(theta1); y1=r(p)*sin(theta1); mesh(x1,y1,c); x1=[r(p-1)*cos(theta(q)) r(p)*cos(theta(q)) r(p)*cos(theta(q)) r(p-1)*cos(theta(q))]; y1=[r(p-1)*sin(theta(q)) r(p)*sin(theta(q)) r(p)*sin(theta(q)) r(p-1)*sin(theta(q))]; z1=[z(s-1) z(s-1) z(s) z(s)]; fill3(x1,y1,z1,'r') hold on x1=[r(p-1)*cos(theta(q-1)) r(p)*cos(theta(q-1)) r(p)*cos(theta(q-1)) r(p-1)*cos(theta(q-1))]; y1=[r(p-1)*sin(theta(q-1)) r(p)*sin(theta(q-1)) r(p)*sin(theta(q-1)) r(p-1)*sin(theta(q-1))]; z1=[z(s) z(s) z(s-1) z(s-1)]; fill3(x1,y1,z1,'r') r1=linspace(r(p-1),r(p),10); theta1=linspace(theta(q-1),theta(q),10); [r1,theta1]= meshgrid(r1,theta1); zz1=z(s-1)*ones(length(r1)); xx1=r1.*cos(theta1); yy1=r1.vsin(theta1); mesh(xx1,yy1,zz1); hold on zz1=z(s)*ones(length(r1)); xx1=r1.*cos(theta1); yy1=r1.*sin(theta1); mesh(xx1,yy1,zz1);
61
rotate3d on xlabel('X');ylabel('Y');zlabel('Z') โปรแกรม MATLAB ของ MATLAB GUI ส าหรบการแสดงชนสวนยอยของปรพนธในระบบพกดทรงกลม ของปม plot mm=str2num(get(handles.edit7,'String')); nn=str2num(get(handles.edit8,'String')); ll=str2num(get(handles.edit9,'String')); a=str2num(get(handles.edit1,'String')); b=str2num(get(handles.edit2,'String')); c=str2num(get(handles.edit3,'String')); d=str2num(get(handles.edit4,'String')); e=str2num(get(handles.edit5,'String')); f=str2num(get(handles.edit6,'String')); g=(c*pi)/180; h=(d*pi)/180; p=(e*pi)/180; q=(f*pi)/180; rho=linspace(a,b,mm+1) theta=linspace(g,h,nn+1) phi=linspace(p,q,ll+1) for j=1:length(phi) for i=1:length(rho) x=rho(i)*sin(phi(j))*cos(theta); y=rho(i)*sin(phi(j))*sin(theta); zz=rho(i)*cos(phi(j)); plot3(x,y,zz*ones(length(theta),1),'r') hold on end
62
end axis([-rho(end) rho(end) -rho(end) rho(end) -rho(end) rho(end)]) for i=1:length(rho) for k=1:length(theta) x=rho(i)*sin(phi)*cos(theta(k)); y=rho(i)*sin(phi)*sin(theta(k)); z=rho(i)*cos(phi); plot3(x,y,z,'b') hold on end end axis([-rho(end) rho(end) -rho(end) rho(end) -rho(end) rho(end)]) for j=1:length(phi) for k=1:length(theta) x=rho*sin(phi(j))*cos(theta(k)); y=rho*sin(phi(j))*sin(theta(k)); z=rho*cos(phi(j)); plot3(x,y,z,'k') hold on end end axis([-rho(end) rho(end) -rho(end) rho(end) -rho(end) rho(end)]) u=ceil(0.5*(1+mm)); v=ceil(0.5*(1+nn)); s=ceil(0.5*(1+ll)); theta1=linspace(theta(v-1),theta(v),10); phi1=linspace(phi(s-1),phi(s),5); [theta1,phi1]= meshgrid(theta1,phi1); x1=rho(u-1)*sin(phi1).*cos(theta1);
63
y1=rho(u-1)*sin(phi1).*sin(theta1); z1=rho(u-1)*cos(phi1); mesh(x1,y1,z1); hold on x1=rho(u)*sin(phi1).*cos(theta1); y1=rho(u)*sin(phi1).*sin(theta1); z1=rho(u)*cos(phi1); mesh(x1,y1,z1); rho1=linspace(rho(u-1),rho(u),5); phi1=linspace(phi(s-1),phi(s),5); [rho1,phi1]=meshgrid(rho1,phi1); x1=rho1.*sin(phi1).*cos(theta(v-1)); y1=rho1.*sin(phi1).*sin(theta(v-1)); z1=rho1.*cos(phi1); mesh(x1,y1,z1); hold on x1=rho1.*sin(phi1).*cos(theta(v)); y1=rho1.*sin(phi1).*sin(theta(v)); z1=rho1.*cos(phi1); mesh(x1,y1,z1); rho1=linspace(rho(u-1),rho(u),10); theta1=linspace(theta(v-1),theta(v),10); [rho1,theta1]=meshgrid(rho1,theta1); x1=rho1.*sin(phi(s-1)).*cos(theta1); y1=rho1.*sin(phi(s-1)).*sin(theta1); z1=rho1.*cos(phi(s-1)); mesh(x1,y1,z1); hold on x1=rho1.*sin(phi(s)).*cos(theta1);
64
y1=rho1.*sin(phi(s)).*sin(theta1); z1=rho1.*cos(phi(s)); mesh(x1,y1,z1); colormap Jet rotate3d on xlabel('X');ylabel('Y');zlabel('Z') โปรแกรม MATLAB ของ MATLAB GUI ส าหรบพนผว ของปม plot1 syms x y z f1=get(handles.edit1,'String'); a=str2num(get(handles.edit4,'String')); b=str2num(get(handles.edit5,'String')); c=str2num(get(handles.edit6,'String')); d=str2num(get(handles.edit7,'String')); e=str2num(get(handles.edit8,'String')); f=str2num(get(handles.edit9,'String')); [X,Y,Z]=meshgrid(a:0.1:b,c:0.1:d,e:0.1:f); [m,n,l]=size(X); F1=zeros(m,n,l); for k=1:l F1(:,:,k)=subs(f1,{x y z},{X(:,:,k) Y(:,:,k) Z(:,:,k)}); isosurface(X,Y,Z,F1,0); alpha(0.5) hold on axis on rotate3d on grid on xlabel('X');ylabel('Y');zlabel('Z') hold off hold on
65
โปรแกรม MATLAB ของ MATLAB GUI ส าหรบพนผว ของปม plot2 syms x y z f2=get(handles.edit2,'String'); a=str2num(get(handles.edit4,'String')); b=str2num(get(handles.edit5,'String')); c=str2num(get(handles.edit6,'String')); d=str2num(get(handles.edit7,'String')); e=str2num(get(handles.edit8,'String')); f=str2num(get(handles.edit9,'String')); [X,Y,Z]=meshgrid(a:0.1:b,c:0.1:d,e:0.1:f); [m,n,l]=size(X); F2=zeros(m,n,l); for k=1:l F2(:,:,k)=subs(f2,{x y z},{X(:,:,k) Y(:,:,k) Z(:,:,k)}); isosurface(X,Y,Z,F1,0); colormap(winter) alpha(0.5) hold on axis on rotate3d on grid on xlabel('X');ylabel('Y');zlabel('Z') hold off hold on โปรแกรม MATLAB ของ MATLAB GUI ส าหรบพนผว ของปม plot3 syms x y z f3=get(handles.edit3,'String'); a=str2num(get(handles.edit4,'String'));
66
b=str2num(get(handles.edit5,'String')); c=str2num(get(handles.edit6,'String')); d=str2num(get(handles.edit7,'String')); e=str2num(get(handles.edit8,'String')); f=str2num(get(handles.edit9,'String')); [X,Y,Z]=meshgrid(a:0.1:b,c:0.1:d,e:0.1:f); [m,n,l]=size(X); F3=zeros(m,n,l); for k=1:l F3(:,:,k)=subs(f2,{x y z},{X(:,:,k) Y(:,:,k) Z(:,:,k)}); isosurface(X,Y,Z,F1,0); alpha(0.5) hold on axis on rotate3d on grid on xlabel('X');ylabel('Y');zlabel('Z') hold off hold on โปรแกรม MATLAB ของ MATLAB GUI ส าหรบการหาคาปรพนธสามชนในระบบพกดฉาก ของปม Evaluate the integral syms x y z f1=get(handles.edit10,'String'); a=str2num(get(handles.edit11,'String')); b=str2num(get(handles.edit12,'String')); c=str2num(get(handles.edit13,'String')); d=str2num(get(handles.edit14,'String')); e=str2num(get(handles.edit15,'String'));
67
f=str2num(get(handles.edit16,'String')); A=(get(handles.edit21,'String')); B=(get(handles.edit22,'String')); C=(get(handles.edit23,'String')); if A == x if B == y F=int(int(int(f1,x,a,b),y,c,d),z,e,f); elseif B == z F=int(int(int(f1,x,a,b),z,e,f),y,c,d); end end if A == y if B == x F=int(int(int(f1,y,c,d),x,a,b),z,e,f); elseif B == z F=int(int(int(f1,y,c,d),z,e,f),x,a,b); end end if A == z if B == x F=int(int(int(f1,z,e,f),x,a,b),y,c,d); elseif B == y F=int(int(int(f1,z,e,f),y,c,d),x,a,b) end end s=vpa(F,5) set(handles.edit19,'String',char(s));
68
โปรแกรม MATLAB ของ MATLAB GUI ส าหรบการหาคาปรพนธสามชนในระบบพกดทรงกระบอก ของปม Evaluate the integral syms r t z x y f2 F2 h ff2 f2=get(handles.edit50,'String'); if f2 == r*cos(t) || f2 == r*sin(t) F2=f2; else F2=subs(f2,[x,y,r,t,z],[r*cos(t),r*sin(t),r,t,z]); end a=(get(handles.edit37,'String')); b=(get(handles.edit32,'String')); c=(get(handles.edit33,'String')); d=(get(handles.edit34,'String')); e=(get(handles.edit35,'String')); f=(get(handles.edit36,'String')); A1=get(handles.edit28,'String'); B1=get(handles.edit29,'String'); C1=get(handles.edit30,'String'); FF2=F2*r; if A1 == r if B1 == t h=int(int(int(FF2,r,a,b),t,c,d),z,e,f); elseif B1 == z h=int(int(int(FF2,r,a,b),z,e,f),t,c,d); end end if A1 == t if B1 == r h=int(int(int(FF2,t,c,d),r,a,b),z,e,f);
69
elseif B1 == z h=int(int(int(FF2,t,c,d),z,e,f),r,a,b); end end if A1 == z if B1 == r h=int(int(int(FF2,z,e,f),r,a,b),t,c,d); elseif B1 == t h=int(int(int(FF2,z,e,f),t,c,d),r,a,b); end end s=vpa(h,5) set(handles.edit31,'String',char(s)); โปรแกรม MATLAB ของ MATLAB GUI ส าหรบการหาคาปรพนธสามชนในระบบพกดทรงกลม ของปม Evaluate the integral syms t rho phi x y z f3 F3 F k ff3 f3=get(handles.edit49,'String'); if f3==rho*sin(phi)*cos(t) || f3== rho*sin(phi)*sin(t) F3=f3; else F3=subs(f3,[x,y,z,rho,phi,t],[rho*sin(phi)*cos(t),rho*sin(phi)*sin(t),rho*cos(phi),rho,phi,t]); end a=(get(handles.edit48,'String')); b=(get(handles.edit43,'String')); c=(get(handles.edit44,'String')); d=(get(handles.edit45,'String')); e=(get(handles.edit46,'String')); f=(get(handles.edit47,'String'));
70
A2=get(handles.edit39,'String'); B2=get(handles.edit40,'String'); C2=get(handles.edit41,'String'); FF3=F3*rho^2*sin(phi) if A2 == rho if B2 == phi k=int(int(int(FF3,rho,a,b),phi,c,d),t,e,f); elseif B2 == t k=int(int(int(FF3,rho,a,b),t,e,f),phi,c,d); end end if A2 == phi if B2 == rho k=int(int(int(FF3,phi,c,d),rho,a,b),t,e,f); elseif B2 == t k=int(int(int(FF3,phi,c,d),t,e,f),rho,a,b); end end if A2 == t if B2 == rho k=int(int(int(FF3,t,e,f),rho,a,b),phi,c,d); elseif B2 == phi k=int(int(int(FF3,t,e,f),phi,c,d),rho,a,b); end end s1=vpa(k,5) set(handles.edit42,'String',char(s1));