数学模型与数学建模概述、软件介绍(Matlab介绍、Matlab数组与函数、Matlab绘图、Matlab编程、Lingo介绍)

学习网址:【MOOC---郑州轻工业大学---数学建模与实验】

https://www.icourse163.org/spoc/learn/ZZULI-1452737171?tid=1453250459#/learn/content

MOOC上的视频与课件非常详细(可以直接下载),本博客只是博主的一些笔记。

讲师 matlab版本:2014a(建议下载。)

博主 matlab版本:2018b(部分程序,运行有误,不建议下载!)

目   录

第一章-数学模型与数学建模概述

数学与数学模型

参考书籍

什么是数学建模?

数学建模竞赛介绍

美国大学生数学建模竞赛 

中国大学生数学建模竞赛

大学生数学建模竞赛的形式

数学竞赛准备

大学生数学建模竞赛赛事

第二章-软件介绍

2.1-Matlab介绍

Matlab软件界面

用于命令行编辑的控制键和方向键

变量命名规则

工作区

新建文件、保存文件

帮助系统

​2.2-Matlab数组与函数

矩阵的创建

矩阵的剪裁与拼接

数组的运算

矩阵的运算

函数

矩阵函数

2.3-Matlab绘图

基本绘图命令【plot()】

显示绘图工具和停靠图形

数组运算​

图形标题【title()】

坐标轴控制

在一个图上画几条曲线

在同一页面中画多个图形

极坐标图形

参数方程图形

空间曲线绘制

空间曲面绘制

画出z=xy图形

等高线图

2.4-Matlab编程

迭代公式

2.5-Lingo介绍

注册流程

灵敏度分析 

运行窗口状态


第一章-数学模型与数学建模概述

数学与数学模型

参考书籍

什么是数学建模?

数学建模竞赛介绍

美国大学生数学建模竞赛 

中国大学生数学建模竞赛

大学生数学建模竞赛的形式

数学竞赛准备

大学生数学建模竞赛赛事

第二章-软件介绍

2.1-Matlab介绍

Matlab软件界面

用于命令行编辑的控制键和方向键

变量命名规则

工作区

新建文件、保存文件

帮助系统


2.2-Matlab数组与函数

矩阵的创建

矩阵的剪裁与拼接

数组的运算

矩阵的运算

函数

矩阵函数

2.3-Matlab绘图

基本绘图命令【plot()】

显示绘图工具和停靠图形

数组运算

图形标题【title()】

坐标轴控制

在一个图上画几条曲线

在同一页面中画多个图形

极坐标图形

参数方程图形

空间曲线绘制

空间曲面绘制

画出z=xy图形

等高线图

% x = -30:0.5:30; y = x;
% [X, Y] = meshgrid(x,y);
% R = sqrt(X.^2*Y.^2)*eps;
% Z = sin(R)/R;
% mesh(X,Y,Z);
% figure;
% contour(X,Y,Z,10);
% 
% 文件名example.m
% x=4;y=6;z=2;
% items=x+y+z
% cost=x*25+y*22+z*99
% average_cost=cost/items
% 
% 矩阵的创建
% A = [1 2 3; 4 5 6]

% x=-10:0.1:10;
% y= x.^2+3*x+5; %x是向量,点乘
% plot(x,y,'b--*'); %b:蓝色、--:虚线、*:星号标记

% 例1:我们想画一个y=sinx的图像。
% x=1:0.1:20;
% y=sin(x);
% plot(x,y,'r-o');

% 例2:我们画一个y=x^2+3x+5的图像。
% x=-10:0.1:10;
% y= x.^2+3*x+5;
% plot(x,y,'b--*');

% 例3:我们画一个y=(3x+2)/(x^2+3x+5)的图像。
% x=-10:0.1:10;
% y=(3*x+2)./(x.^2+3*x+5);
% plot(x,y, 'g--+');

% 例4:我们画一个y=tan(x)的图像。
% x=0:0.01:pi/2;
% y= tan(x);
% plot(x,y,'g-');

% 4.给图形一个标题给每个图形指定一个合适的标题以利于阅读,这时可以使用命令
% title('图形名’)
% x=-10:0.1:10;
% y=(3*x+2)./(x.^2+3*x+5);
% plot(x,y, 'g--+ ');
% title('(3x+2)/(x^2+3x+5)的图形')

% 9.在同一页面中画多个图形
% 例子6,
% x=linspace(0,2*pi,30);y=sin(x);z=cos(x);
% u=2*sin(x).*cos(x);v=sin(x)./cos(x);
% subplot(2,2,1),plot(x,y),title('sin(x)') %两行两列,第1个位置
% subplot(2,2,2),plot(x,z),title('cos(x)') %两行两列,第2个位置
% subplot(2,2,3),plot(x,u),title('2sin(x)cos(x)')
% subplot(2,2,4),plot(x,v),title('sin(x)/cos(x)')

% 10.极坐标图形
% 例:画出=sin的图形。
% theta = 0:0.01*pi:2*pi %从0到2*pi,等分
% rho = sin(theta) %rho、theta两个向量
% polar(theta,rho,'*') %极坐标作图 自变量、因变量;*表示 默认蓝色
% xlabel('\theta') %横坐标
% ylabel('\rho')   %纵坐标

% 11,参数方程的图形
% 例:画出x=2*t, y=t^3-1/(1+t^2)的图形。
% t=-4:0.1:4
% x=2*t
% y=t.^3-1./(1+t.^2)
% plot(x,y,'-*')

% 12,隐函数作图命令:ezplot,使用方法:ezplot(fun,[xmin xmax],[ymin ymax]);
% fun:函数主体;自变量取值范围;因变量取值范围
% fh=@(x,y) sqrt(x.^2+y.^2-16) %定义函数fh,自变量x,因变量y
%函数名为fh,函数为(x^2+y^2-16)^(1/2)=0,这个是隐函数形式,通俗点说就是x,y在同一边,另一边为0   y,x在两边的是显函数
% ezplot(fh) %隐函数作图命令
% axis equal %axis square 当前坐标系图形设置为方形,axis equal 将横轴纵轴的定标系数设成相同值 ,即单位长度相同

% 1,空间曲线的绘制
% 基本命令:
% plot3(x,y,z,'color-linestylemarker');%三个向量,构成一个点;颜色---(实线、虚线、点画线)---标记
% 其用法和plot一致。
% 例7:作螺旋线x=sint,y=cost,z=t;
% t=0:pi/50:10*pi
% plot3(sin(t),cos(t),t);
% 注意:曲线的参数方程比较容易实现。

% 2,绘制空间曲面
% 基本命令:mesh(X,Y,Z);
% 例8:作出下面的曲面
% x=-30:0.5:30; y=x;
% [X,Y]=meshgrid(x,y); %给x、y画布做一个画布,画布范围:从左到右、从上到下[-30,30]
% R=sqrt(X.^2+Y.^2)+eps;
% Z=sin(R) ./ R;
% mesh(X, Y, Z);

% 例子9,画出z=xy的图形。
% x=-4:0.1:4;
% y=x;
% [X,Y]=meshgrid(x,y); %画布 [-4, 4]
% Z=X.*Y;
% mesh(X,Y,Z);


% 3,产生等高线图
% 空间图形看起来有时不是很直观,等高线图是比较常用的一种。等
% 高线图的命令是
% contour(X,Y,Z,n);
% 其中,n表示等高线的条数。
% x=linspace(-2*pi,2*pi)
% y=linspace(0,4*pi)
% [X,Y]=meshgrid(x,y) %将x、y固定到画布上
% Z=sin(X)+cos(Y);
% mesh(X,Y,Z); %绘制空间曲面
% figure %建立图形 系统自动从1,2,3,4...来建立图形,数字代表第几幅图形
% contour(X,Y,Z) %产生等高线图,n未取值,默认值,不同颜色代表不同高度



% 2.4

% 调用格式如下:一个这样的例子。定义一个函数f=100(y-x2)
% 2-(1-x)2
% function f=fun(x)   x是二维向量,第一个分量是x(1)、第二个分量是x(2)
% f=100*(x(2)-x(1)^2)^2-(1-x(1))^2;
% 调用格式:
% x=[2 3]; f=fun(x)
% function [m,s]=f2(x) %输出的是2个or2个以上函数体,需要用[]括起来
%     n=length(x);
%     m=sum(x)/n;
%     s=sqrt(sum((x-m).^2/n));
% end
% 调用格式:
% values=[12.7,45.4,98.9,26,6,53.1]; [ave,stdev]=f2(values)

% y=zeros(100,1); % 100行1列的空数组 所有元素取0
% for i=1:100
%     y(i)=fun(i);
% end

% 例:求 的newton迭代公式
% function ff=mysqrt(x)
% y0=1; %从1开始迭代
% y1=0.5*(y0+x/y0);
% while abs(y1-y0)>0.00001 %大于误差限
% y0=y1; %赋值运算
% y1=0.5*(y0+x/y0);
% end


2.4-Matlab编程

迭代公式

% 2.4

% 调用格式如下:一个这样的例子。定义一个函数f=100(y-x2)
% 2-(1-x)2
% function f=fun(x)   x是二维向量,第一个分量是x(1)、第二个分量是x(2)
% f=100*(x(2)-x(1)^2)^2-(1-x(1))^2;
% 调用格式:
% x=[2 3]; f=fun(x)
% function [m,s]=f2(x) %输出的是2个or2个以上函数体,需要用[]括起来
%     n=length(x);
%     m=sum(x)/n;
%     s=sqrt(sum((x-m).^2/n));
% end
% 调用格式:
% values=[12.7,45.4,98.9,26,6,53.1]; [ave,stdev]=f2(values)

% y=zeros(100,1); % 100行1列的空数组 所有元素取0
% for i=1:100
%     y(i)=fun(i);
% end

% 例:求 的newton迭代公式
% function ff=mysqrt(x)
% y0=1; %从1开始迭代
% y1=0.5*(y0+x/y0);
% while abs(y1-y0)>0.00001 %大于误差限
% y0=y1; %赋值运算
% y1=0.5*(y0+x/y0);
% end

2.5-Lingo介绍

注册流程

灵敏度分析 

model:
max=72*x1+64*x2;
[milk] x1+x2<60;
[time] 12*x1+8*x2<480;
[cpot] 3*x1<100;
end

 

运行窗口状态

猜你喜欢

转载自blog.csdn.net/weixin_44949135/article/details/105832126