matlab程序设计——数学软件i
授课人:艾斯卡尔。
课时:周学时:2+2,共18周。
授课班级:2008级应数班。
授课地点:数学学院2#
课程类型:本课程是新大重点课程。
电子教案说明:电子教案以word为工作界面,采用notebook技术与matlab相连接,集教学与演示为一体;同时采用vba技术与外部程序连接,以作辅助教学之用。本电子教案由授课人共同编制。
教学指导思想:在保证讲授必备的基础知识的前提下,着重培养学生的动手能力,贯穿“在使用中学习,学了能用”的思想。在教学中增加实用技术和开发范例,使大量的学生具有良好的编程能力,为毕业**的写作打下基础;使优秀的学生在一些应用方向上具有专业的开发水平。
本课程教学要求。
1. 授课方式:本课程用电子教案授课+上机实习。
2. 习题:课程备有习题,大作业和开发专题。习题和大作业学生必须完成,开发专题由学生选作。
3. 学习方式:听课+读书+上机练习。
4. 考试成绩:平时成绩(30%)+期末成绩(70%)
5. 学习平时成绩:包括作业(40%)、考勤(30%)、大作业(30%)
本课程结构说明。
第一章 matlab简介与工作环境。
第二章 matlab初步。
第三章 matlab的图形处理。
第四章 matlab的程序设计。
第五章 matlab的gui程序设计。
主要参考书目。
1. 张志勇,徐彦琴等,matlab教程,北京航天航空大学出版社,2023年。
2. 周金平,王冉等,matlab6实践与提高,中国电力出版社,2023年。
3. 郝红伟,matlab6实例教程,中国电力出版社,2023年。
4. 著(张航黄攀译),精通matlab6,清华大学出版社,2023年。
起源与现状。
1. matlab=matrix laboratory
2. matlab是clever moler博士用fortran 开发的符号科学计算语言(80年后又和john little用c改写了matlab的内核)。
3. 2023年由mathworks 公司将matlab产品推向市场。
4. mathworks公司的**是:各种关于matlab的开发与应用信息都可在该**中查到。
5. matlab已成为科学研究,工程计算,应用开发的重要工具。国外已将它作为理工科大学的必修课程,国内的大学也开始开设这门课程。
6. 除了matlab以外,数学专业软件还有:mathematics, maple,sas 等。matlab是其中最优秀的一个。
作用与特点。
1. matlab主要用于工程计算,算法研究,符号运算,建模与**,原形开发,数据分析及科学与工程绘图,应用程序设计及图形界面设计和线性代数,计算方法,高等数学等高校数学课程的教学辅助工具。
2. matlab主要有以下特点:
matlab采用数学符号的形式以矩阵,数组为对象进行运算。
matlab以解释方式运行(也可实现编译)。
窗口式的可视化工作界面。
可扩展,与高级语言有接口。它可以借用编译器(matcom)将matlab下的m-文件转换为可被visual basic,excel以及delphi调用的dll(动态链接库)文件,或者是独立的可执行文件。
matlab也有局限性,一般它不能脱离matlab集成环境工作;而且编写界面的功能比较弱;尚没有外部对象接口。这些方面都有待于改进。
基本组成。
1. matlab的主程序。
2. matlab资源库(工具箱)
3. simulink**系统。
matlab在我院。
我院开设matlab课程已有三四年的时间了,现在是新大的一个重点建设课程。
我院开设的数值分析、偏微分方程数值解等课程的实验都需要用到matlab软件,还有21世纪“微积分”课程中的实验内容也都可以用matlab来实现。
我院(校)matlab的研发还在起步阶段。
matlab浏览。
一。 三维视图可视效果的控制
1. 三维图形从不同的角度观察有不同的效果。matlab针对这一情况设置了控制函数:
view()(观点规范),campos()(camera position),hidden(),shading()。
view(az,el) az=方位角(azimuth), el=俯视角(elevition)。举例如下:
x,y]=meshgrid(-8:0.5:8);r=sqrt(x.^2+y.^4)+eps;z=sin(r)./r;
subplot(2,2,1)
surf(x,y,z)
xlabel('x轴','fontweight','bold')
ylabel('y轴','fontweight','bold')
zlabel('z轴','fontweight','bold')
title('\fontname缺省视角')
subplot(2,2,2)
surf(x,y,z)
xlabel('x轴','fontweight','bold')
ylabel('y轴','fontweight','bold')
zlabel('z轴','fontweight','bold')
title('\fontname方位角90度,仰角0度')
view(45,0)
subplot(2,2,3)
surf(x,y,z)
xlabel('x轴','fontweight','bold')
ylabel('y轴','fontweight','bold')
zlabel('z轴','fontweight','bold')
title('\fontname方位角-37.5度,仰角80度')
view(-37.5,80)
subplot(2,2,4)
surf(x,y,z)
xlabel('x轴','fontweight','bold')
ylabel('y轴','fontweight','bold')
zlabel('z轴','fontweight','bold')
title('\fontname方位角0度,仰角90度')
view(0,90)
2. matlab作图与tex
利用随机函数给出十个顶点的位置,给出这十个顶点的关联矩阵,依此关联矩阵做出这十个顶点的图。并对这个图的顶点标号。
作图。x=randn(1,10);y=randn(1,10);xy=[x' y'];
a=randn(10,10);a=abs(a)>1;
gplot(a,xy,'-ro')
s=char('\fontsize\bf\alpha','fontsize\bf\beta','fontsize\bf\gamma','fontsize\bf\delta','fontsize\bf\epsilon','fontsize\bf\theta','fontsize\bf\varsigma','fontsize\bf\omega','fontsize\bf\upsilon','fontsize\bf\eta');
x1=x+0.05;
text(x1,y,s)
title('a graph of vertices 10 ',fontsize',10,'fontweight','bold','fontangle','italic')
对以上图形实现旋转。
x1=cos(135).*x-sin(135).*y;
y1=sin(135).*x+cos(135).*y;
xyz=[x1' y1'];
gplot(a,xyz,'-ro');
s=char('\fontsize\bf\alpha','fontsize\bf\beta','fontsize\bf\gamma','fontsize\bf\delta','fontsize\bf\epsilon','fontsize\bf\theta','fontsize\bf\varsigma','fontsize\bf\omega','fontsize\bf\upsilon','fontsize\bf\eta');
t1=x1+0.05;
text(t1,y1,s)
title('a graph of vertices 10 ',fontsize',10,'fontweight','bold','fontangle','italic')
二。 matlab中的符号计算。
1. 解线性方程组。
a=sym([1 1/2 1/2 -1;1 1 -1 1;1 -1/4 -1 1;-8 -1 1 1])
b=sym([0;10;0;1])
x=a\b
2. 图示微分方程的通解和奇解的关系。
y=dsolve('y=x*dy-(dy)^2','x')
clf,hold on, ezplot(y(2),[6,6,-4,8],1)
cc=get(gca,'children');
set(cc,'color','r','linewidth',5)
for k=-2:0.5:2; ezplot(subs(y(1),'c1',k),[6,6,-4,8],1);end
hold off, title('\fontname fontsize 通解和奇解')
三。 matlab的动画制作。
1. 制作红色小球沿螺线运动。
在m-file窗口编程序(**如下:
function f=movingball(k,ki)
t1=(0:1000)/1000*10*pi; x1=cos(t1); y1=sin(t1); z1=-t1;
t2=(0:10)/10; x2=x1(end)*(1-t2);y2=y1(end)*(1-t2);z2=z1(end)*ones(size(x2));
t3=t2; z3=(1-t3)*z1(end); x3=zeros(size(z3));y3=x3;
t4=t2; x4=t4; y4=zeros(size(x4));z4=y4;
x=[x1,x2,x3,x4]; y=[y1,y2,y3,y4]; z=[z1,z2,z3,z4];
matlab
实验。四 调幅信号通过带通滤波器。一 实验目的。1 掌握如何使用matlab进行系统的时域和频域分析2 掌握如何使用matlab进行系统的稳定性分析。二 实验内容和要求1 实验内容。1 练习matlab7.0或以上版本。2 练习掌握matlab进行系统的时频域分析和稳定性分析2 实验要求 每位学生独...
matlab
第1章矩阵及其基本运算。matlab,即 矩阵实验室 它是以矩阵为基本运算单元。因此,本书从最基本的运算单元出发,介绍matlab的命令及其用法。1 实数值矩阵输入。matlab的强大功能之一体现在能直接处理向量或矩阵。当然首要任务是输入待处理的向量或矩阵。不管是任何矩阵 向量 我们可以直接按行方式...
MatLab
matlab 数学建模 第三讲 matlab程序设计。一 m文件。我们前面所介绍在matlab所做的运算,是适合于所要计算的算式不太长或是想以交谈式方式做运算,如果要计算的算式很长有数十行或是须要一再执行的算式,则那样的方式就行不通了。matlab提供了所谓的 m file 的方式,可让使用者自行将...