MatLab学习笔记一

对于复杂的数值计算问题,可以利用计算机进行问题求解,即利用计算机运算速度快、计算机精度高的特点,通过重复执行简单的操作,完成复杂的计算。

科学计算(Scientific Computing)是利用计算机处理数值问题的方法。既有数学理论上的抽象性和严谨性,又有程序设计技术上的实用性和实践性。


科学计算与MATLAB语言的关系

数值问题——>求解算法——>程序实现——>结果分析


MATLAB语言的主要功能

①数值计算②符号计算③图形绘制④程序流程控制⑤工具箱


MatLab编程基础

一、M文件编辑器

1、创建M文件的方法

(1)在MatLab命令行运行窗口运行指令edit;

(2)单击MatLab主页中的新建脚本

(3)选择MatLab主页上的新建脚本图标

(4)右键当前文件夹框空白处,选择“新建”,点击脚本;

(5)使用快捷键CTRL+N;

2、打开已有的M文件

(1)在命令行运行窗口运行指令edit filename;

(2)使用文件夹窗口点击打开;

3、保存M文件

(1)使用菜单栏的保存按钮

(2)使用快捷键CTRL+S;

4、文件的执行

(1)在编辑器打开M文件,然后点击菜单栏的运行

(2)在命令行窗口输入M文件的文件名,注意:不包括后缀名;


二、控制流

1、if语句和switch语句的比较

if语句switch语句
比较复杂,特别是嵌套使用的if语句可读性强,易于理解
当比较字符串时要借助strcmp函数可直接比较不同长度的字符串
可检测相等和不相等仅检测相等

2、循环结构

(1)for循环结构

语法:

for index = values
    statements
end

案例:

s = 10;
H = zeros(s)
for c = 1:s
    for r = 1:s
        H(r,c) = 1/(r+c-1);
    end
end

(2)while循环结构

语法:

while expression
    statements
end

案例:

求出Fibonacci数列中第一个大于9999的元素

function [i,z] = fibonacci()
a(1) = 1;
a(2) = 1;
i = 2;
while a(i) < 10000
    a(i+1) = a(i) + a(i-1)
    i = i+1;
end
z = a(i)
end

三、控制流的其他指令

1、return指令

        在函数中使用renturn指令,将强制终止函数的执行,并把控制权转回主函数或命令行窗口。

2、pause指令

        类似其他编程语言的sleep,可以控制文件的暂停于恢复。它的语法格式:

        pause:暂停执行文件,等待用户按任意键继续。

        pause(n):在继续执行文件之前,暂停n秒。

3、continue指令

        在嵌套循环中,continue把控制传给下一个for或while循环所嵌套的迭代。

        用例:

clc;clear;
fid = fopen('magic.m', 'r');
count = 0;
while ~feof(fid)
    line = fgetl(fid);
    if isempty(line) || strncmp(line, '%', 1) || ~ischar(line)
        continue
    end
    count = count +1;
end
count
fclose(fid);

4、break指令

        当执行循环过程中(如迭代求解),有时候不需要等到最后一个循环执行结束就可以得到我们想要的结果,这时候后面的循环就是冗余的。我们通过break语句来直接结束当前循环结构。

        用例:

        求随机序列之和,直到下一随机数大于上限为止。然后,使用break语句退出循环。

clc;clear;
limit = 0.8;
s = 0;
while j
    tmp = rand;
    if tmp > limit
        break
    end
    s = s + tmp;
end

五、函数

1、函数的一般结构

        函数声明行:位于函数文件的首行,以MatLab关键字function开头,定义函数名及函数的输入/输出变量。

        H1行:紧随函数声明行之后的以“%”开头的第一行注释行,通常描述函数的功能。

        帮助文本区:H1行及气候的连续注释行,通常包括函数输入/输出变量的含义调用说明。

        编写和修改记录:文本区后的注释,记录了编写及修改M文件的所有的作者、日期及版本号。

        函数主体。

        函数定义名和文件保存名一致。当两者不一致时,Matlab将忽视文件首行的函数定义名,而以文件保存名为准。

示例:

function spir_len = spirallength(d, n, lcolor)
% CIRCLE plot a cirale of radius as r in the provided color and calculate its area
% d: 螺旋的旋距
% n: 螺旋的圈数
% lcolor: 画图线的颜色
% spir_len: 螺旋的周长
% spirallength(d, n): 利用蓝色以预设参数的螺旋线
% spirallength(d, n, lcolor): 利用lcolor颜色以预设参数的螺旋线
% spir_len = spirallength(d, n): 计算螺旋线的周长,并用蓝色填充螺旋线
% spir_len = spirallength(d, n, lcolor): 计算螺旋线的周长,并用lcolor颜色填充螺旋线
if nargin > 3
    error('输入变量过多!');
elseif nargin == 2
    lcolor = 'b';
end
j = sqrt(-1);
phi = 0: pi/1000 : n*2*pi;
amp = 0: d/2000 : n*d;
spir = amp .* exp(j*phi);
if nargout == 1
    spir_len = sum(abs(diff(spir)));
    fill(real(spir), imag(spir), lcolor)
elseif nargout == 0
    plot(spir, lcolor)
else
    error('输出变量过多!');
end
axis('square')

 

  • 0
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
学习MATLAB时,编写学习笔记是一种很好的方法,可以帮助您记录重要的概念、语法和技巧,以及解决问题的步骤。以下是一些关于编写MATLAB学习笔记的建议: 1. 组织结构:使用清晰的标题和分节来组织您的学习笔记。将不同的主题分成单独的部分,并使用子标题来进一步细分内容。 2. 内容概要:在每个部分或子标题下,写下该主题的概要。这样可以帮助您回顾和理解该主题的关键点。 3. 示例代码和输出:对于每个主题,包括一些示例代码和相应的输出结果。这有助于您理解和演示具体的MATLAB语法和功能。 4. 问题与解答:如果您在学习过程中遇到了一些困惑或问题,将其记录下来,并在笔记中提出并解答这些问题。这样可以帮助您深入思考并加深对该主题的理解。 5. 笔记补充:除了基本概念和语法外,您还可以添加一些额外的笔记,如最佳实践、编程技巧、常见错误等。这些额外的笔记可以提供更多的实用信息和提示。 6. 参考资料:在您的学习笔记中,包括引用的参考资料,如教程、文档、书籍或网站链接。这样,您可以随时回顾并深入研究相关的主题。 7. 总结和复习:在学习笔记的结尾,添加一个总结部分,回顾和总结您学到的重点和关键概念。此外,定期复习您的学习笔记也是加深理解和记忆的好方法。 以上是关于编写MATLAB学习笔记的一些建议。希望这对您有所帮助,并祝您在MATLAB学习过程中取得成功!如果有任何其他问题,请随时提问。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值