matlab编程基础

这篇具有很好参考价值的文章主要介绍了matlab编程基础。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

1数据结构

1.1常量与变量

变量命名第一个字符必须为字母,变量可以由数字、字母、下划线组成,区分大小写。
常量:
matlab编程基础

1.2 数值型数据

双精度:64位 智能存储15位左右十进制数 double()
单精度 :32位,single()
常用于图像表示与处理:unit8(),8位

1.3 符号型数据

转换为符号型:sym(A)
显示符号变量的任意精度:vpa(A),vpa(A,n)
显示符号变量的属性:assumptions()
设置符号变量的属性:assume()
通过sym(),可以把双精度的数转换为符号型的数
例如:
将20位数据输入双精度表示不了,只能以符号型输入:

>> A=sym(12345678901234567890)
 
A =
 
12345678901234567168

可以看出后三位错误,以双精度输入不可行
采取以符号型输入

>> A=sym('1234567890123456789')
 
A =
 
1234567890123456789
 

2 矩阵与向量输入

2.1 基本语句结构

直接赋值语句

加;不显示运算结果
例1,输入实数矩阵

A=[1 2 3; 4 5 6; 7 8 10]
A1=[1,2,3;4,5,6;7,8,10]
A2=inv(A) '求逆矩阵'

A =

     1     2     3
     4     5     6
     7     8    10


A1 =

     1     2     3
     4     5     6
     7     8    10


A2 =

   -0.6667   -1.3333    1.0000
   -0.6667    3.6667   -2.0000
    1.0000   -2.0000    1.0000

动态定维:给现有矩阵增加一行:

A3=[A;[1 2 3]]

A3 =

     1     2     3
     4     5     6
     7     8    10
     1     2     3

给现有矩阵增加一列:

A4=[A3,[1;2;3;4]]

A4 =

     1     2     3     1
     4     5     6     2
     7     8    10     3
     1     2     3     4

例2,复数矩阵输入

>> B=[1+2i 2+3i 3+4i;4+5i 5+6i 6+7i;7+8i 8+9i 9+10i]

B =

   1.0000 + 2.0000i   2.0000 + 3.0000i   3.0000 + 4.0000i
   4.0000 + 5.0000i   5.0000 + 6.0000i   6.0000 + 7.0000i
   7.0000 + 8.0000i   8.0000 + 9.0000i   9.0000 +10.0000i
函数调用

一般的函数对应一个.m文件

2.2 冒号表达式与子矩阵提取

冒号表达式:

例:

v1=0:0.2:pi  '在0-π之间以0.2位步长生成数据'

v1 =

  180    0.2000    0.4000    0.6000    0.8000    1.0000    1.2000    1.4000

  9161.6000    1.8000    2.0000    2.2000    2.4000    2.6000    2.8000    3.0000

>> v1a=linspace(0,pi,50)'0-π之间取50个点生成行向量,包括端点值'

v1a =

  180    0.0641    0.1282    0.1923    0.2565    0.3206    0.3847    0.4488

  9160.5129    0.5770    0.6411    0.7053    0.7694    0.8335    0.8976    0.9617

  17241.0258    1.0899    1.1541    1.2182    1.2823    1.3464    1.4105    1.4746

  25321.5387    1.6029    1.6670    1.7311    1.7952    1.8593    1.9234    1.9875

  33402.0517    2.1158    2.1799    2.2440    2.3081    2.3722    2.4363    2.5005

  41482.5646    2.6287    2.6928    2.7569    2.8210    2.8851    2.9493    3.0134

  49503.0775    3.1416

子矩阵提取

例:

A =

     1     2     3
     4     5     6
     7     8     0
>> B=A(1:2:end,:) '按行提取,间隔一行提取一行,提取其行所对应的所有列,也就是提取A中所有的奇数行'

B =

     1     2     3
     7     8     0
>> C=A([1 1 1 1],:) '提取A中的第一行重复4次'

C =

     1     2     3
     1     2     3
     1     2     3
     1     2     3

3 矩阵的代数运算

3.1 矩阵的转置运算

对于复数来说 共轭这直接转置不同,对实数矩阵来说二者完全一致。

共轭转置

C=A’

直接转置

C=A.’

3.2 加减法、乘法、除法、乘方

matlab编程基础matlab编程基础matlab编程基础matlab编程基础

3.3 点运算

矩阵相应元素之间的运算

4 矩阵的其它运算

4.1逻辑运算

matlab编程基础

4.2 比较运算

matlab编程基础

4.3 解析结果的化简与变换

simplify():化简公式

>> syms s;p=(s+3)^2*(s^2+3*s+2)*(s^3+12*s^2+48*s+64)
 
 
p =
 
(s + 3)^2*(s^2 + 3*s + 2)*(s^3 + 12*s^2 + 48*s + 64)
 
>> p1=simplify(p)
 
p1 =
 
(s + 3)^2*(s + 4)^3*(s^2 + 3*s + 2)

因式分解:

>> p3=factor(p),p4=prod(p3)
 
p3 =
 
[ s + 3, s + 3, s + 2, s + 1, s + 4, s + 4, s + 4]
 
 
p4 =
 
(s + 1)*(s + 2)*(s + 3)^2*(s + 4)^3

4.4 变量替换

matlab编程基础matlab编程基础`>> syms s;p=(s+3)2*(s2+3s+2)(s3+12*s2+48*s+64)

p =

(s + 3)2*(s2 + 3s + 2)(s^3 + 12s^2 + 48s + 64)

syms s z;
p1=simplify(subs(p,s,(z-1)/(z+1)))

p1 =

(8z(2z + 1)^2(3z + 1)(5*z + 3)^3)/(z + 1)^7`

4.5 Hibert矩阵

A=hilb(3)
[n,d]=rat(A)  %n是分子矩阵,d是分母矩阵
A =

    1.0000    0.5000    0.3333
    0.5000    0.3333    0.2500
    0.3333    0.2500    0.2000


n =

     1     1     1
     1     1     1
     1     1     1


d =

     1     2     3
     2     3     4
     3     4     5

4.6 最大公约数与最小公倍数

m=1856120;
n=1483720;
gcd(m,n)  %最大公约数
lcm(m,n)  %最小公倍数
factor(lcm(m,n))%质因数分解
ans =

        1960


ans =

   1.4051e+09


ans =

     2     2     2     5     7     7   757   947

4.7 找出某个范围内的全部质数

isprime()如果是质数将返回1 不是返回0

>>  a=1:100;b=a(isprime(a))

b =

  1112     3     5     7    11    13    17    19    23    29    31

  122237    41    43    47    53    59    61    67    71    73    79

  232583    89    97

4.8 全排列计算

prems()

>> p=perms(1:4),size(p)

p =

     4     3     2     1
     4     3     1     2
     4     2     3     1
     4     2     1     3
     4     1     3     2
     4     1     2     3
     3     4     2     1
     3     4     1     2
     3     2     4     1
     3     2     1     4
     3     1     4     2
     3     1     2     4
     2     4     3     1
     2     4     1     3
     2     3     4     1
     2     3     1     4
     2     1     4     3
     2     1     3     4
     1     4     3     2
     1     4     2     3
     1     3     4     2
     1     3     2     4
     1     2     4     3
     1     2     3     4


ans =

    24     4

5 流程结构

5.1 循环结构

for结构
while结构
例子:
求解1-100的和

s1=0;
for i =1:100
    s1=s1+i;
end
s1

s1 =

        5050

例子:
matlab编程基础

s=0;m=0;
while(s<=10000),
    m=m+1;
    s=s+m;
end
s,m
s =

       10011


m =

   141

例子:向量化编程
matlab编程基础i=1:100000; s=sum(1./2.^i+1./3.^i); s

s =

    1.5000

5.2 转移结构

条件转移结构

matlab编程基础

开关结构

matlab编程基础文章来源地址https://www.toymoban.com/news/detail-456185.html

到了这里,关于matlab编程基础的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • 数据结构(Java实现)-字符串常量池与通配符

    字符串常量池 在Java程序中,类似于:1, 2, 3,3.14,“hello”等字面类型的常量经常频繁使用,为了使程序的运行速度更快、更节省内存,Java为8种基本数据类型和String类都提供了常量池。 “池” 是编程中的一种常见的, 重要的提升效率的方式, 我们会在未来的学习中遇到各

    2024年02月10日
    浏览(37)
  • 【数据结构】String类对象的创建与字符串常量池的“神秘交易”

    作者主页: paper jie_博客 本文作者:大家好,我是paper jie,感谢你阅读本文,欢迎一建三连哦。 本文录入于《JAVA数据结构》专栏,本专栏是针对于大学生,编程小白精心打造的。笔者用重金(时间和精力)打造,将javaSE基础知识一网打尽,希望可以帮到读者们哦。 其他专栏:

    2024年02月08日
    浏览(32)
  • FPGA设计Verilog基础之数据类型的作用和特点、常量和变量的代码示例详解

    注意:后续技术分享,第一时间更新,以及更多更及时的技术资讯和学习技术资料 ,将在公众号 CTO Plus 发布,请关注公众号: CTO Plus 在Verilog中,有多种数据类型可供使用,包括位向量类型、整数类型、实数类型、布尔型、时间类型和字符串类型等。下面详细介绍Verilog的所

    2024年02月03日
    浏览(28)
  • Java 学习路线:基础知识、数据类型、条件语句、函数、循环、异常处理、数据结构、面向对象编程、包、文件和 API

    Java 是一种由 Sun Microsystems 于 1995 年首次发布的编程语言和计算平台。Java 是一种通用的、基于类的、面向对象的编程语言,旨在减少实现依赖性。它是一个应用程序开发的计算平台。Java 快速、安全、可靠,因此在笔记本电脑、数据中心、游戏机、科学超级计算机、手机等领

    2024年03月24日
    浏览(73)
  • 变量与常量(基础)

    变量的概念:变量用于存储编程所使用的数据和方法。 声明一般变量:var, let, const。其中let和const是es6的语法。 声明其他特殊变量:function,class,import等 声明变量: 变量用于存储数据,因此可以把变量当成是一个\\\"容器\\\" 存储在变量中的数据,叫做\\\"变量的

    2024年02月05日
    浏览(26)
  • Java基础的变量与常量

    使用IDEA进行编写java程序 第一行:public  class是定义类的固定写法,Hello表示类名要与文件中的名字相同 第二行:主函数,是程序的入口 第三行:输出语句,():里面表示要输出的内容 注意点: print输出方式是输出后 不进行换行操作的 。 比如:输出两次\\\"我爱学习Java

    2024年02月08日
    浏览(26)
  • Elasticsearch的基础知识和架构设计,以及一些常用的功能——面向对象编程和数据结构的高级应用场景,以及相应的代码实现方法和工具

    作者:禅与计算机程序设计艺术 2019年,Elasticsearch正式发布了7.0版本。在这个版本更新中,新增了许多新特性和功能,包括全文搜索、分类聚合、分析器、图形化数据可视化等。无论对于企业或个人来说,都意味着更好的应用场景。但是,掌握Elasticsearch并非易事,需要不断学

    2024年02月07日
    浏览(34)
  • Go语言基础之变量和常量

    标识符 在编程语言中标识符就是程序员定义的具有特殊意义的词,比如变量名、常量名、函数名等等。 Go语言中标识符由字母数字和_(下划线)组成,并且只能以字母和_开头。 举几个例子:abc, _, _123, a123 是指编程语言中预先定义好的具有特殊含义的标识符。

    2024年02月12日
    浏览(31)
  • 【C#基础】C# 变量与常量的使用

    序号 系列文章 1 【C#基础】C# 程序通用结构 2 【C#基础】C# 基础语法解析 3 【C#基础】C# 数据类型总结 😄大家好,我是writer桑,前面一章已经学习了 C# 的数据类型,那本章就开始学习C# 程序中变量与常量的使用,希望看完大家能够有所收获,感谢支持! 变量用来存储信息,

    2024年02月06日
    浏览(20)
  • web安全php基础_php常量及可变变量(魔术变量)

    php中常量是一个简单值的标识符。该值在脚本中不能改变。 一个常量由英文字母、下划线、和数字组成,但数字不能作为首字母出现。 (常量名不需要加 $ 修饰符)。 常量有两点需要特别注意的地方 常量在整个脚本中都可以使用。 常量值被定义后,在脚本的其他任何地方都不

    2024年02月12日
    浏览(46)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包